UNPKG

mev-inspect

Version:

A JS port of 'mev-inspect-py' optimised for ease of use.

856 lines 28.7 kB
import poolAbi from '../../abi/curveV1.js'; import { getFactories } from '../directory.js'; function isValidSwap(event, address, chain) { return (isValidPool(address, chain) && (event.name === 'TokenExchange' || event.name === 'TokenExchangeUnderlying')); } function isValidDeposit(event, address, chain) { return isValidPool(address, chain) && event.name === 'AddLiquidity'; } function isValidWithdrawal(event, address, chain) { return (isValidPool(address, chain) && (event.name === 'RemoveLiquidity' || event.name === 'RemoveLiquidityImbalance')); } function getPoolCalls() { return []; } function processPoolCalls(_results, address) { const pool = pools.find((pool) => pool.address === address.toLowerCase()); if (!pool) { return null; } const factory = getFactories(pool.chainId, 'CurveV1')[0]; if (!factory) { return null; } return { factoryAddress: factory.address, assets: pool.assets, }; } function parseSwap(pool, event) { const { values, transactionFrom, transactionHash: hash, transactionIndex, gasUsed, logIndex, address, blockHash, blockNumber, } = event; const buyer = values.buyer.toLowerCase(); const sold_id = values.sold_id; const tokens_sold = values.tokens_sold; const bought_id = values.bought_id; const tokens_bought = values.tokens_bought; const curvePool = pools.find((curvePool) => curvePool.address === pool.address); if (!curvePool) { return null; } const assets = event.name === 'TokenExchange' ? pool.assets : curvePool.metapoolAssets || curvePool.underlyingAssets || curvePool.assets; const from = buyer; const to = buyer; const assetOut = assets[bought_id]; const amountOut = tokens_bought; const assetIn = assets[sold_id]; const amountIn = tokens_sold; return { contract: { address, protocol: { abi: 'CurveV1', factory: pool.factory, }, }, block: { hash: blockHash, number: blockNumber, }, transaction: { from: transactionFrom.toLowerCase(), hash, index: transactionIndex, gasUsed, }, event: { address: address.toLowerCase(), logIndex, }, from, to, assetIn: { type: 'erc20', address: assetIn, }, amountIn, assetOut: { type: 'erc20', address: assetOut, }, amountOut, metadata: {}, }; } function parseDeposit(pool, event) { const { values, transactionFrom, transactionHash: hash, transactionIndex, gasUsed, logIndex, address, blockHash, blockNumber, } = event; const { assets } = pool; const depositor = values.provider.toLowerCase(); const amounts = values.token_amounts; return { contract: { address: pool.address, protocol: { abi: 'CurveV1', factory: pool.factory, }, }, block: { hash: blockHash, number: blockNumber, }, transaction: { from: transactionFrom.toLowerCase(), hash, index: transactionIndex, gasUsed, }, event: { address: address.toLowerCase(), logIndex, }, depositor, assets: assets.map((asset) => { return { type: 'erc20', address: asset, }; }), amounts, metadata: {}, }; } function parseWithdrawal(pool, event) { const { values, transactionFrom, transactionHash: hash, transactionIndex, gasUsed, logIndex, address, blockHash, blockNumber, } = event; const { assets } = pool; const withdrawer = values.provider.toLowerCase(); const amounts = values.token_amounts; return { contract: { address: pool.address, protocol: { abi: 'CurveV1', factory: pool.factory, }, }, block: { hash: blockHash, number: blockNumber, }, transaction: { from: transactionFrom.toLowerCase(), hash, index: transactionIndex, gasUsed, }, event: { address: address.toLowerCase(), logIndex, }, withdrawer, assets: assets.map((asset) => { return { type: 'erc20', address: asset, }; }), amounts, metadata: {}, }; } function isValidPool(address, chain) { return pools.some((pool) => pool.chainId === chain && pool.address === address.toLowerCase()); } const pools = [ // Ethereum { chainId: 1, address: '0x2e60cf74d81ac34eb21eeff58db4d385920ef419', assets: [ '0x5d3a536e4d6dbd6114cc1ead35777bab948e3643', '0x39aa39c021dfbae8fac545936693ac917d5e7563', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', ], }, { chainId: 1, address: '0x52ea46506b9cc5ef470c5bf89f17dc28bb35d85c', assets: [ '0x5d3a536e4d6dbd6114cc1ead35777bab948e3643', '0x39aa39c021dfbae8fac545936693ac917d5e7563', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x45f783cce6b7ff23b2ab2d70e416cdb7d6055f51', assets: [ '0x16de59092dae5ccf4a1e6439d611fd0653f0bd01', '0xd6ad7a6750a7593e092a9b218d66c0a814a3436e', '0x83f798e925bcd4017eb265844fddabb448f1707d', '0x73a052500105205d34daf004eab301916da8190f', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', '0x0000000000085d4780b73119b644ae5ecd22b376', ], }, { chainId: 1, address: '0xa2b47e3d5c44877cca798226b7b8118f9bfb7a56', assets: [ '0x5d3a536e4d6dbd6114cc1ead35777bab948e3643', '0x39aa39c021dfbae8fac545936693ac917d5e7563', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', ], }, { chainId: 1, address: '0x79a8c46dea5ada233abaffd40f3a0a2b1e5a4f27', assets: [ '0xc2cb1040220768554cf699b0d863a3cd4324ce32', '0x26ea744e5b887e5205727f55dfbe8685e3b21951', '0xe6354ed5bc4b393a5aad09f21c46e101e692d447', '0x04bc0ab673d88ae9dbc9da2380cb6b79c4bca9ae', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', '0x4fabb145d64652a948d72533023f6e7a623c7c53', ], }, { chainId: 1, address: '0xa5407eae9ba41422680e2e00537571bcc53efbfd', assets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', '0x57ab1ec28d129707052df4df418d58a2d46d5f51', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', '0x57ab1ec28d129707052df4df418d58a2d46d5f51', ], }, { chainId: 1, address: '0x06364f10b501e868329afbc005b3492902d6c763', assets: [ '0x99d1fa417f94dcd62bfe781a1213c092a47041bc', '0x9777d7e2b60bb01759d0e2f8be2095df444cb07e', '0x1be5d71f2da660bfdee8012ddc58d024448a0a59', '0x8e870d67f660d95d5be530380d0ec0bd388289e1', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', '0x8e870d67f660d95d5be530380d0ec0bd388289e1', ], }, { chainId: 1, address: '0x93054188d876f558f4a66b2ef1d97d16edf0895b', assets: [ '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', ], }, { chainId: 1, address: '0x7fc77b5c7614e1533320ea6ddc2eb61fa00a9714', assets: [ '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', '0xfe18be6b3bd88a2d2a7f928d00292e7a9963cfc6', ], }, { chainId: 1, address: '0x4ca9b3063ec5866a4b82e437059d2c43d1be596f', assets: [ '0x0316eb71485b0ab14103307bf65a021042c6d380', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', ], }, { chainId: 1, address: '0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7', assets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x4f062658eaaf2c1ccf8c8e36d6824cdf41167956', assets: [ '0x056fd409e1d7a124bd7017459dfea2f387b6d5cd', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x056fd409e1d7a124bd7017459dfea2f387b6d5cd', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x3ef6a01a0f81d6046290f3e2a8c5b843e738e604', assets: [ '0xdf574c24545e5ffecb9a659c229253d4111d87e1', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0xdf574c24545e5ffecb9a659c229253d4111d87e1', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x3e01dd8a5e1fb3481f0f589056b428fc308af0fb', assets: [ '0x1c48f86ae57291f7686349f12601910bd8d470bb', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x1c48f86ae57291f7686349f12601910bd8d470bb', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x0f9cb53ebe405d49a0bbdbd291a65ff571bc83e1', assets: [ '0x674c6ad92fd080e4004b2312b45f796a192d27a0', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x674c6ad92fd080e4004b2312b45f796a192d27a0', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xe7a24ef0c5e95ffb0f6684b813a78f2a3ad7d171', assets: [ '0x0e2ec54fc0b509f445631bf4b91ab8168230c752', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x0e2ec54fc0b509f445631bf4b91ab8168230c752', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x8474ddbe98f5aa3179b3b3f5942d724afcdec9f6', assets: [ '0xe2f2a5c287993345a840db3b0845fbc70f5935a5', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0xe2f2a5c287993345a840db3b0845fbc70f5935a5', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xc18cc39da8b11da8c3541c598ee022258f9744da', assets: [ '0x196f4727526ea7fb1e17b2071b3d8eaa38486988', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x196f4727526ea7fb1e17b2071b3d8eaa38486988', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xc25099792e9349c7dd09759744ea681c7de2cb66', assets: [ '0x8daebade922df735c38c80c7ebd708af50815faa', '0x075b1bb99792c9e1041ba13afef80c91a1e70fb3', ], metapoolAssets: [ '0x8daebade922df735c38c80c7ebd708af50815faa', '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', '0xfe18be6b3bd88a2d2a7f928d00292e7a9963cfc6', ], }, { chainId: 1, address: '0x8038c01a0390a8c547446a0b2c18fc9aefecc10c', assets: [ '0x5bc25f649fc4e26069ddf4cf4010f9f706c23831', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x5bc25f649fc4e26069ddf4cf4010f9f706c23831', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x7f55dde206dbad629c080068923b36fe9d6bdbef', assets: [ '0x5228a22e72ccc52d415ecfd199f99d0665e7733b', '0x075b1bb99792c9e1041ba13afef80c91a1e70fb3', ], metapoolAssets: [ '0x5228a22e72ccc52d415ecfd199f99d0665e7733b', '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', '0xfe18be6b3bd88a2d2a7f928d00292e7a9963cfc6', ], }, { chainId: 1, address: '0x071c661b4deefb59e2a3ddb20db036821eee8f4b', assets: [ '0x9be89d2a4cd102d8fecc6bf9da793be995c22541', '0x075b1bb99792c9e1041ba13afef80c91a1e70fb3', ], metapoolAssets: [ '0x9be89d2a4cd102d8fecc6bf9da793be995c22541', '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', '0xfe18be6b3bd88a2d2a7f928d00292e7a9963cfc6', ], }, { chainId: 1, address: '0xd81da8d904b52208541bade1bd6595d8a251f8dd', assets: [ '0x8064d9ae6cdf087b1bcd5bdf3531bd5d8c537a68', '0x075b1bb99792c9e1041ba13afef80c91a1e70fb3', ], metapoolAssets: [ '0x8064d9ae6cdf087b1bcd5bdf3531bd5d8c537a68', '0xeb4c2781e4eba804ce9a9803c67d0893436bb27d', '0x2260fac5e5542a773aa44fbcfedf7c193bc2c599', '0xfe18be6b3bd88a2d2a7f928d00292e7a9963cfc6', ], }, { chainId: 1, address: '0x890f4e345b1daed0367a877a1612f86a1f86985f', assets: [ '0xa47c8bf37f92abed4a126bda807a7b7498661acd', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0xa47c8bf37f92abed4a126bda807a7b7498661acd', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x0ce6a5ff5217e38315f87032cf90686c96627caa', assets: [ '0xdb25f211ab05b1c97d595516f45794528a807ad8', '0xd71ecff9342a5ced620049e616c5035f1db98620', ], }, { chainId: 1, address: '0xc5424b857f758e906013f3555dad202e4bdb4567', assets: [ '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2', '0x5e74c9036fb86bd7ecdcb084a0673efc32ea31cb', ], }, { chainId: 1, address: '0xdebf20617708857ebe4f679508e7b7863a8a8eee', assets: [ '0x028171bca77440897b824ca71d1c56cac55b68a3', '0xbcca60bb61934080951369a648fb03df4f96263c', '0x3ed3b47dd13ec9a98b44e6204a523e766b225811', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xdc24316b9ae028f1497c275eb9192a3ea0f67022', assets: [ '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2', '0xae7ab96520de3a18e5e111b5eaab095312d7fe84', ], }, { chainId: 1, address: '0xeb16ae0052ed37f479f7fe63849198df1765a733', assets: [ '0x028171bca77440897b824ca71d1c56cac55b68a3', '0x6c5024cd4f8a59110119c56f8933403a539555eb', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0x57ab1ec28d129707052df4df418d58a2d46d5f51', ], }, { chainId: 1, address: '0xa96a65c051bf88b4095ee1f2451c2a9d43f53ae2', assets: [ '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2', '0xe95a203b1a91a908f9b9ce46459d101078c2c3cb', ], }, { chainId: 1, address: '0x2dded6da1bf5dbdf597c45fcfaa3194e53ecfeaf', assets: [ '0x8e595470ed749b85c6f7669de83eae304c2ec68f', '0x76eb2fe28b36b3ee97f3adae0c69606eedb2a37c', '0x48759f220ed983db51fa7a8c0d2aab8f3ce4166a', ], underlyingAssets: [ '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xf178c0b5bb7e7abf4e12a4838c7b7c5ba2c623c0', assets: [ '0x514910771af9ca656af840dff83e8264ecf986ca', '0xbbc455cb4f1b9e4bfc4b73970d360c8f032efee6', ], }, { chainId: 1, address: '0x42d7025938bec20b69cbae5a77421082407f053a', assets: [ '0x1456688345527be1f37e9e627da0837d6f08c925', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x1456688345527be1f37e9e627da0837d6f08c925', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x43b4fdfd4ff969587185cdb6f0bd875c5fc83f8c', assets: [ '0xbc6da0fe9ad5f3b0d58160288917aa56653660e9', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0xbc6da0fe9ad5f3b0d58160288917aa56653660e9', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xd632f22692fac7611d2aa1c0d552930d43caed3b', assets: [ '0x853d955acef822db058eb8505911ed77f175b99e', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x853d955acef822db058eb8505911ed77f175b99e', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xecd5e75afb02efa118af914515d6521aabd189f1', assets: [ '0x0000000000085d4780b73119b644ae5ecd22b376', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x0000000000085d4780b73119b644ae5ecd22b376', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xed279fdd11ca84beef15af5d39bb4d4bee23f0ca', assets: [ '0x5f98805a4e8be255a32880fdec7f6728c6568ba0', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x5f98805a4e8be255a32880fdec7f6728c6568ba0', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x4807862aa8b2bf68830e4c8dc86d0e9a998e085a', assets: [ '0x4fabb145d64652a948d72533023f6e7a623c7c53', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x4fabb145d64652a948d72533023f6e7a623c7c53', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xf9440930043eb3997fc70e1339dbb11f341de7a8', assets: [ '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2', '0x9559aaa82d9649c7a7b220e7c461d2e74c9a3593', ], }, { chainId: 1, address: '0x5a6a4d54456819380173272a5e8e9b9904bdf41b', assets: [ '0x99d8a9c45b2eca8864373a26d1459e3dff1e17f3', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x99d8a9c45b2eca8864373a26d1459e3dff1e17f3', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0xfd5db7463a3ab53fd211b4af195c5bccc1a03890', assets: [ '0xc581b735a1688071a1746c968e0798d642ede491', '0xd71ecff9342a5ced620049e616c5035f1db98620', ], }, { chainId: 1, address: '0x618788357d0ebd8a37e763adab3bc575d54c2c7d', assets: [ '0x03ab458634910aad20ef5f1c8ee96f1d6ac54919', '0x6c3f90f043a72fa612cbac8115ee7e52bde6e490', ], metapoolAssets: [ '0x03ab458634910aad20ef5f1c8ee96f1d6ac54919', '0x6b175474e89094c44da98b954eedeac495271d0f', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x1005f7406f32a61bd760cfa14accd2737913d546', assets: [ '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', ], }, { chainId: 1, address: '0x4e0915c88bc70750d68c481540f081fefaf22273', assets: [ '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', '0xdac17f958d2ee523a2206206994597c13d831ec7', '0xa693b19d2931d498c5b318df961919bb4aee87a5', '0x853d955acef822db058eb8505911ed77f175b99e', ], }, { chainId: 1, address: '0xdcef968d416a41cdac0ed8702fac8128a64241a2', assets: [ '0x853d955acef822db058eb8505911ed77f175b99e', '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48', ], }, // Optimism { chainId: 10, address: '0x1337bedc9d22ecbe766df105c9623922a27963ec', assets: [ '0xda10009cbd5d07dd0cecc66161fc93d7c9000da1', '0x7f5c764cbc14f9669b88837ca1490cca17c31607', '0x94b008aa00579c1307b0ef2c499ad98a8ce58e58', ], }, // Polygon { chainId: 137, address: '0x445fe580ef8d70ff569ab36e80c647af338db351', assets: [ '0x27f8d03b3a2196956ed754badc28d73be8830a6e', '0x1a13f4ca1d028320a707d99520abfefca3998b7f', '0x60d55f02a771d515e077c9c2403a1ef324885cec', ], underlyingAssets: [ '0x8f3cf7ad23cd3cadbd9735aff958023239c6a063', '0x2791bca1f2de4661ed88a30c99a7a9449aa84174', '0xc2132d05d31c914a87c6611c10748aeb04b58e8f', ], }, { chainId: 137, address: '0xc2d95eef97ec6c17551d45e77b590dc1f9117c67', assets: [ '0x5c2ed810328349100a66b82b78a1791b101c9d61', '0xdbf31df14b66535af65aac99c32e9ea844e14501', ], underlyingAssets: [ '0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6', '0xdbf31df14b66535af65aac99c32e9ea844e14501', ], }, // Arbitrum { chainId: 42161, address: '0x7f90122bf0700f9e7e1f688fe926940e8839f353', assets: [ '0xff970a61a04b1ca14834a43f5de4533ebddb5cc8', '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9', ], }, { chainId: 42161, address: '0x3e01dd8a5e1fb3481f0f589056b428fc308af0fb', assets: [ '0x2f2a2543b76a4166549f7aab2e75bef0aefc5b0f', '0xdbf31df14b66535af65aac99c32e9ea844e14501', ], }, // Avalanche { chainId: 43114, address: '0x7f90122bf0700f9e7e1f688fe926940e8839f353', assets: [ '0x47afa96cdc9fab46904a55a6ad4bf6660b53c38a', '0x46a51127c3ce23fb7ab1de06226147f446e4a857', '0x532e6537fea298397212f09a61e03311686f548e', ], underlyingAssets: [ '0xd586e7f844cea2f87f50152665bcbc2c279d8d70', '0xa7d7079b0fead91f3e65f86e8915cb59c1a4c664', '0xc7198437980c041c805a1edcba50c1ce5db95118', ], }, { chainId: 43114, address: '0x16a7da911a4dd1d83f3ff066fe28f3c792c50d90', assets: [ '0x686bef2417b6dc32c50a3cbfbcc3bb60e1e9a15d', '0xdbf31df14b66535af65aac99c32e9ea844e14501', ], underlyingAssets: [ '0x50b7545627a5162f82a992c33b87adc75187b218', '0xdbf31df14b66535af65aac99c32e9ea844e14501', ], }, { chainId: 43114, address: '0xd2acae14ae2ee0f6557ac6c6d0e407a92c36214b', assets: [ '0x82e64f49ed5ec1bc6e43dad4fc8af9bb3a2312ee', '0x625e7708f30ca75bfd92586e17077590c60eb4cd', '0x6ab707aca953edaefbc4fd23ba73294241490620', ], underlyingAssets: [ '0xd586e7f844cea2f87f50152665bcbc2c279d8d70', '0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e', '0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7', ], }, ]; const CLASSIFIER = { swap: { type: 'swap', protocol: 'CurveV1', abi: poolAbi, isValid: isValidSwap, parse: parseSwap, pool: { getCalls: getPoolCalls, processCalls: processPoolCalls, }, }, liquidityDeposit: { type: 'liquidity_deposit', protocol: 'CurveV1', abi: poolAbi, isValid: isValidDeposit, parse: parseDeposit, pool: { getCalls: getPoolCalls, processCalls: processPoolCalls, }, }, liquidityWithdrawal: { type: 'liquidity_withdrawal', protocol: 'CurveV1', abi: poolAbi, isValid: isValidWithdrawal, parse: parseWithdrawal, pool: { getCalls: getPoolCalls, processCalls: processPoolCalls, }, }, }; export default CLASSIFIER; //# sourceMappingURL=curveV1.js.map