Source Code
Latest 25 from a total of 989 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| 0xc02aaa39 | 18557387 | 836 days ago | IN | 0.00100133 ETH | 0.00607781 | ||||
| 0x1f1f26c9 | 18557175 | 836 days ago | IN | 0 ETH | 0.00456007 | ||||
| 0xc02aaa39 | 18556984 | 836 days ago | IN | 0.0001004 ETH | 0.00413087 | ||||
| 0xc02aaa39 | 18538507 | 838 days ago | IN | 0.00000082 ETH | 0.00572705 | ||||
| 0xc02aaa39 | 18538490 | 838 days ago | IN | 0.00000013 ETH | 0.00622432 | ||||
| 0xc02aaa39 | 18529582 | 839 days ago | IN | 0.00057959 ETH | 0.01051247 | ||||
| 0x7df18e4e | 18336936 | 866 days ago | IN | 0 ETH | 0.00162735 | ||||
| 0xc02aaa39 | 18335206 | 867 days ago | IN | 0.005 ETH | 0.00335828 | ||||
| 0xc02aaa39 | 18332562 | 867 days ago | IN | 0.003 ETH | 0.00101698 | ||||
| 0x7df18e4e | 18327729 | 868 days ago | IN | 0 ETH | 0.00238134 | ||||
| 0xc02aaa39 | 18325377 | 868 days ago | IN | 0.006 ETH | 0.00173315 | ||||
| 0xc02aaa39 | 18320334 | 869 days ago | IN | 0.005 ETH | 0.00195227 | ||||
| 0xc02aaa39 | 18320196 | 869 days ago | IN | 0.005 ETH | 0.00181558 | ||||
| 0xc02aaa39 | 18314008 | 870 days ago | IN | 0.005 ETH | 0.00310628 | ||||
| Recover | 18313164 | 870 days ago | IN | 0 ETH | 0.00027729 | ||||
| 0x7df18e4e | 18308317 | 870 days ago | IN | 0 ETH | 0.00145842 | ||||
| 0xc02aaa39 | 18304437 | 871 days ago | IN | 0.006 ETH | 0.00167246 | ||||
| 0xc02aaa39 | 18302872 | 871 days ago | IN | 0.00899999 ETH | 0.00095904 | ||||
| 0xc02aaa39 | 18302819 | 871 days ago | IN | 0.007 ETH | 0.00084057 | ||||
| 0xf0438090 | 18302802 | 871 days ago | IN | 0 ETH | 0.00101449 | ||||
| 0x6186a538 | 18302646 | 871 days ago | IN | 0 ETH | 0.00092357 | ||||
| 0x88bbb792 | 18302643 | 871 days ago | IN | 0 ETH | 0.00127912 | ||||
| 0xc02aaa39 | 18302530 | 871 days ago | IN | 0.00899999 ETH | 0.0015888 | ||||
| 0xc02aaa39 | 18302359 | 871 days ago | IN | 0.01 ETH | 0.0014223 | ||||
| 0x6186a538 | 18302255 | 871 days ago | IN | 0 ETH | 0.00093937 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| Deposit | 18557387 | 836 days ago | 0.00099257 ETH | ||||
| Transfer | 18557175 | 836 days ago | 0.00007536 ETH | ||||
| Transfer | 18557175 | 836 days ago | 0.00007603 ETH | ||||
| Deposit | 18556984 | 836 days ago | 0.00009952 ETH | ||||
| Deposit | 18538507 | 838 days ago | 0.00000081 ETH | ||||
| Deposit | 18538490 | 838 days ago | 0.00000012 ETH | ||||
| Deposit | 18529582 | 839 days ago | 0.00057452 ETH | ||||
| Transfer | 18336936 | 866 days ago | 0.00729887 ETH | ||||
| Transfer | 18336936 | 866 days ago | 0.0073633 ETH | ||||
| Deposit | 18335206 | 867 days ago | 0.00495625 ETH | ||||
| Deposit | 18332562 | 867 days ago | 0.00297375 ETH | ||||
| Transfer | 18327729 | 868 days ago | 0.09068723 ETH | ||||
| Transfer | 18327729 | 868 days ago | 0.09148774 ETH | ||||
| Deposit | 18325377 | 868 days ago | 0.0059475 ETH | ||||
| Deposit | 18320334 | 869 days ago | 0.00495625 ETH | ||||
| Deposit | 18320196 | 869 days ago | 0.00495625 ETH | ||||
| Deposit | 18314008 | 870 days ago | 0.00495625 ETH | ||||
| Transfer | 18313164 | 870 days ago | 0.029268 ETH | ||||
| Transfer | 18308317 | 870 days ago | 0.00591391 ETH | ||||
| Transfer | 18308317 | 870 days ago | 0.00596611 ETH | ||||
| Deposit | 18304437 | 871 days ago | 0.0059475 ETH | ||||
| Deposit | 18302872 | 871 days ago | 0.00892125 ETH | ||||
| Deposit | 18302819 | 871 days ago | 0.00693875 ETH | ||||
| Transfer | 18302802 | 871 days ago | 0.00513583 ETH | ||||
| Transfer | 18302802 | 871 days ago | 0.00518116 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
MeowlRouter
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity ^0.8.19;
import {IERC20} from "./interfaces/IERC20.sol";
import {SafeTransfer} from "./lib/SafeTransfer.sol";
import {IWETH} from "./interfaces/IWETH.sol";
interface IUniswapV2Pair {
function getReserves()
external
view
returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
function swap(
uint amount0Out,
uint amount1Out,
address to,
bytes calldata data
) external;
}
// &&&&&&&&&%%%&%#(((/,,,**,,,**,,,*******/*,,/%%%%%%#.,%%%%%%%%%%%%%%%% ./(#%%%%/. #%%/***,,*,*,,,,**,
// %&&&&&&&&&%%%/((((*,,,,,,,**/.,,,*****/%%#. ,**,,%%%%%%%%%%%%%%%%%%#. #%%%%%#*,,,,,,*,,,,,*
// ,.,,*(%&&%%/*/((((,,,,,,,,**((%%,,**, .#%%/*%%%%%%%,*%%%%%%%%%%%%%%%%#% .. #%%%%%,*,*,,**,*,**,
// ..,.,,.,,.,.*((((,,,,,,,****(#%%%%%,*%%%%%. .(%%%%%#,#%%%%%%%%%%%%%%%%, &@# . * (%%%%***,*,,*,*,,,,
// .,.,,..,.,.,/(((,,,,,*****/#%%%%%%%%%%%%%, ,%%%%%%%%%%%%%%%%%% . . / *#%%#***,*,*,**,,**
// ,,.,,,,.,,.,/((,,,****/#%%%%%%%%%%%%%%, , .... #%%%%%%%%&&%%%%%, / ... ,(%%%%/****,****,*#%#
// .,,.,.,.,.,,/(##%%%%%%%%%%%%%%%%%%%%% , /, ....... %%%%%%%%&&%%%%%% /* . , @%%%%/*******/(##%##
// ,..,,..,.,,%%%%%%%%%%%%%%%%%%%%%%%%%(#@..(/ ..... /, %%%%%%%%&&&%%%%%(.*//// @%%%%%/****(#%%%%%%#/
// ,,,..,.,,,.%%%%%%%%%%%%%%%%%%%%%%%%%%%%@../(* @ .,%%%%%%%%%%%%%%%%%%%%/ ./(%%%%%/*/(#%%%%%%%#**/
// .,,,,,,,,,,*,#%%%%%%%%%%%%%%%%%%%%%%%%%%&@, ,*/(/,. #%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%#(#%%%%%%%#//*///
// ,,.,,.,,,,,,,,,,#%%%%%%%%%%%%%%%%%%%%%%%%%%( .#%%%%%%%%%%%%#%&&&%%%%%%%%%%%%%%%*%%%#%%%#(**(**//*
// .,,,,..,*..,.,,,,...*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%,(%#%%%(*/*///*//#%
contract MeowlRouter {
using SafeTransfer for IERC20;
using SafeTransfer for IWETH;
address internal immutable feeAddress;
// MAINNET: 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
// BASE: 0x4200000000000000000000000000000000000006
address internal constant WETH9 =
0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
uint32 internal constant FEE_NUMERATOR = 875;
uint32 internal constant FEE_DENOMINATOR = 100000;
event Swap(
address tokenIn,
address tokenOut,
uint actualAmountIn,
uint actualAmountOut,
uint feeAmount
);
constructor() {
feeAddress = msg.sender;
}
receive() external payable {}
// *** Receive profits from contract *** //
function recover(address token) public {
require(msg.sender == feeAddress, "shoo");
if (token == address(0)) {
SafeTransfer.safeTransferETH(msg.sender, address(this).balance);
return;
} else {
IERC20(token).safeTransfer(
msg.sender,
IERC20(token).balanceOf(address(this))
);
}
}
/*
Payload structure
- tokenIn: address - Address of the token you're swapping
- tokenOut: address - Address of the token you want
- pair: address - Univ2 pair
- minAmountOut: uint128 - Min amount out
- amountIn?: uint128 - Amount you're giving via swap
*/
fallback() external payable {
address tokenIn;
address tokenOut;
address pair;
uint minAmountOut;
uint amountIn;
address receiver;
uint feeAmount;
assembly {
// bytes20
tokenIn := shr(96, calldataload(0))
// bytes20
tokenOut := shr(96, calldataload(20))
// bytes20
pair := shr(96, calldataload(40))
// uint128
minAmountOut := shr(128, calldataload(60))
}
if (address(tokenIn) == WETH9 && msg.value > 0) {
feeAmount = (msg.value * FEE_NUMERATOR) / FEE_DENOMINATOR;
amountIn = msg.value - feeAmount;
IWETH weth = IWETH(WETH9);
weth.deposit{value: amountIn}();
weth.safeTransfer(pair, amountIn);
receiver = msg.sender;
} else {
assembly {
// uint128
amountIn := shr(128, calldataload(76))
}
IERC20(tokenIn).safeTransferFrom(msg.sender, pair, amountIn);
receiver = address(this);
}
// Prepare variables for calculating expected amount out
uint reserveIn;
uint reserveOut;
{
(uint reserve0, uint reserve1, ) = IUniswapV2Pair(pair)
.getReserves();
// sort reserves
if (tokenIn < tokenOut) {
// Token0 is equal to inputToken
// Token1 is equal to outputToken
reserveIn = reserve0;
reserveOut = reserve1;
} else {
// Token0 is equal to outputToken
// Token1 is equal to inputToken
reserveIn = reserve1;
reserveOut = reserve0;
}
}
// Find the actual amountIn sent to pair (accounts for tax if any) and amountOut
uint actualAmountIn = IERC20(tokenIn).balanceOf(address(pair)) -
reserveIn;
uint amountOut = _getAmountOut(actualAmountIn, reserveIn, reserveOut);
// Prepare swap variables and call pair.swap()
(uint amount0Out, uint amount1Out) = tokenIn < tokenOut
? (uint(0), amountOut)
: (amountOut, uint(0));
uint balBefore = IERC20(tokenOut).balanceOf(address(receiver));
IUniswapV2Pair(pair).swap(
amount0Out,
amount1Out,
receiver,
new bytes(0)
);
uint actualAmountOut = IERC20(tokenOut).balanceOf(address(receiver)) -
balBefore;
require(actualAmountOut >= minAmountOut, "Too little received");
if (receiver == address(this)) {
// Only support native ETH out because we can't differentiate
if (tokenOut == WETH9) {
IWETH(WETH9).withdraw(amountOut);
feeAmount = (actualAmountOut * FEE_NUMERATOR) / FEE_DENOMINATOR;
SafeTransfer.safeTransferETH(msg.sender, amountOut - feeAmount);
} else {
feeAmount = (actualAmountOut * FEE_NUMERATOR) / FEE_DENOMINATOR;
IERC20(tokenOut).safeTransfer(
msg.sender,
actualAmountOut - feeAmount
);
}
}
emit Swap(
tokenIn,
tokenOut,
actualAmountIn,
actualAmountOut,
feeAmount
);
}
function _getAmountOut(
uint amountIn,
uint reserveIn,
uint reserveOut
) internal pure returns (uint amountOut) {
require(amountIn > 0, "UniswapV2Library: INSUFFICIENT_INPUT_AMOUNT");
require(
reserveIn > 0 && reserveOut > 0,
"UniswapV2Library: INSUFFICIENT_LIQUIDITY"
);
uint amountInWithFee = amountIn * 997;
uint numerator = amountInWithFee * reserveOut;
uint denominator = reserveIn * 1000 + amountInWithFee;
amountOut = numerator / denominator;
}
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
interface IERC20 {
event Approval(address, address, uint256);
event Transfer(address, address, uint256);
function name() external view returns (string memory);
function decimals() external view returns (uint8);
function transferFrom(address, address, uint256) external returns (bool);
function allowance(address, address) external view returns (uint256);
function approve(address, uint256) external returns (bool);
function transfer(address, uint256) external returns (bool);
function balanceOf(address) external view returns (uint256);
}// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "./IERC20.sol";
interface IWETH is IERC20 {
function withdraw(uint256 amount) external;
function deposit() external payable;
}// SPDX-License-Identifier: MIT
pragma solidity >=0.8.0;
import "../interfaces/IERC20.sol";
library SafeTransfer {
function safeTransferFrom(
IERC20 token,
address from,
address to,
uint256 value
) internal {
(bool s, ) = address(token).call(
abi.encodeWithSelector(
IERC20.transferFrom.selector,
from,
to,
value
)
);
require(s, "safeTransferFrom failed");
}
function safeTransfer(IERC20 token, address to, uint256 value) internal {
(bool s, ) = address(token).call(
abi.encodeWithSelector(IERC20.transfer.selector, to, value)
);
require(s, "safeTransfer failed");
}
function safeApprove(IERC20 token, address to, uint256 value) internal {
(bool s, ) = address(token).call(
abi.encodeWithSelector(IERC20.approve.selector, to, value)
);
require(s, "safeApprove failed");
}
function safeTransferETH(address to, uint256 amount) internal {
bool success;
/// @solidity memory-safe-assembly
assembly {
// Transfer the ETH and store if it succeeded or not.
success := call(gas(), to, amount, 0, 0, 0, 0)
}
require(success, "ETH_TRANSFER_FAILED");
}
}{
"viaIR": true,
"optimizer": {
"enabled": true,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"tokenIn","type":"address"},{"indexed":false,"internalType":"address","name":"tokenOut","type":"address"},{"indexed":false,"internalType":"uint256","name":"actualAmountIn","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"actualAmountOut","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"feeAmount","type":"uint256"}],"name":"Swap","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"recover","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
60a080604052346100235733608052610b99908161002982396080518161097f0152f35b600080fdfe608060405260043610156108db575b36156108d9576000803560601c90808073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28414806108d0575b1561080f57509050620186a061005034610a52565b049061005c8234610a69565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc23b1561054657604051630d0e30db60e41b81526000816004818573c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af18015610803576107ef575b5060008091604051602081019163a9059cbb60e01b835260283560601c60248301526044820152604481526100e181610936565b51908273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1610103610a8a565b50156107b45733905b604051630240bc6b60e21b815290606082600481602835841c5afa9182156107a7578190829361074b575b5060143560601c8610926001600160701b03908116929116831561074657915b6040516370a0823160e01b815260283560601c60048201526020816024818b5afa801561073b5784908490610705575b6101919250610a69565b9384156106ac5783158015806106a3575b1561064d576103e591828702918783048403610639578284868a020204851483151715610623576103e880880297880414171561060f57818601861161060f57818601156105f957156105ea57848101868402830204845b6040516370a0823160e01b81526001600160a01b038a1660048201529160208360248160143560601c5afa9283156105df5787936105ab575b50604051906020820182811067ffffffffffffffff8211176105955760405287825260283560601c3b156105915760405163022c0d9f60e01b8152600481019390935260248301526001600160a01b038a166044830152608060648301528051608483018190528791839190835b82811061057657505081818460a4809484010152601f801991011681010301818360283560601c5af180156105535790869161055e575b50506040516370a0823160e01b81526001600160a01b03891660048201529060208260248160143560601c5afa801561055357869061051a575b61031c9250610a69565b96603c3560801c88106104df576001600160a01b03163014610383575b7f9734819749a91fc3be03ea83205f924ee08479bd3f0da48efc91d94d050cac1e60a08a8a8a8a60405193845260143560601c6020850152604084015260608301526080820152a1005b90919293965073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260143560601c146000146104875773c02aaa39b223fe8d0a0e5c4f27ead9083c756cc23b1561048357604051632e1a7d4d60e01b815296019184020204600485018190529381816024818373c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1801561047857610461575b5050918160a09361045561044f620186a06104477f9734819749a91fc3be03ea83205f924ee08479bd3f0da48efc91d94d050cac1e9997610a52565b048095610a69565b33610b18565b91938193953880610339565b61046b8291610922565b610475578061040b565b80fd5b6040513d84823e3d90fd5b8380fd5b5050505060a0925081620186a06104bf7f9734819749a91fc3be03ea83205f924ee08479bd3f0da48efc91d94d050cac1e9694610a52565b04916104da6104ce8484610a69565b3360143560601c610aca565b610455565b60405162461bcd60e51b8152602060048201526013602482015272151bdbc81b1a5d1d1b19481c9958d95a5d9959606a1b6044820152606490fd5b506020823d60201161054b575b8161053460209383610952565b810103126105465761031c9151610312565b600080fd5b3d9150610527565b6040513d88823e3d90fd5b61056790610922565b6105725784386102d8565b8480fd5b602081830181015160a488840101528b9550869450016102a1565b8780fd5b634e487b7160e01b600052604160045260246000fd5b9092506020813d6020116105d7575b816105c760209383610952565b8101031261054657519138610233565b3d91506105ba565b6040513d89823e3d90fd5b838582018785028402046101fa565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b85526011600452602485fd5b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b86526011600452602486fd5b60405162461bcd60e51b815260206004820152602860248201527f556e697377617056324c6962726172793a20494e53554646494349454e545f4c604482015267495155494449545960c01b6064820152608490fd5b508215156101a2565b60405162461bcd60e51b815260206004820152602b60248201527f556e697377617056324c6962726172793a20494e53554646494349454e545f4960448201526a1394155517d05353d5539560aa1b6064820152608490fd5b50506020813d602011610733575b8161072060209383610952565b8101031261054657836101919151610187565b3d9150610713565b6040513d85823e3d90fd5b610157565b9250506060823d60601161079f575b8161076760609383610952565b810103126104755761077882610a76565b604061078660208501610a76565b93015163ffffffff81160361079b5738610137565b5080fd5b3d915061075a565b50604051903d90823e3d90fd5b60405162461bcd60e51b81526020600482015260136024820152721cd85999551c985b9cd9995c8819985a5b1959606a1b6044820152606490fd5b6107fa919250610922565b600090816100ad565b6040513d6000823e3d90fd5b60405160208101906323b872dd60e01b825233602482015260283560601c6044820152604c3560801c60648201526064815260a0810181811067ffffffffffffffff8211176108bc5760405251829182875af161086a610a8a565b501561087757309061010c565b60405162461bcd60e51b815260206004820152601760248201527f736166655472616e7366657246726f6d206661696c65640000000000000000006044820152606490fd5b634e487b7160e01b84526041600452602484fd5b5034151561003b565b005b6000803560e01c630cd865ec146108f2575061000e565b34610475576020366003190112610475576004356001600160a01b038116810361079b5761091f90610974565b80f35b67ffffffffffffffff811161059557604052565b6080810190811067ffffffffffffffff82111761059557604052565b90601f8019910116810190811067ffffffffffffffff82111761059557604052565b6001600160a01b03907f000000000000000000000000000000000000000000000000000000000000000082163303610a275716806109b957506109b74733610b18565b565b6040516370a0823160e01b81523060048201529190602083602481845afa928315610803576000936109f4575b50916109b791923390610aca565b6020813d8211610a1f575b81610a0c60209383610952565b81010312610483575192506109b76109e6565b3d91506109ff565b606460405162461bcd60e51b815260206004820152600460248201526373686f6f60e01b6044820152fd5b9061036b9182810292818404149015171561062357565b9190820391821161062357565b51906001600160701b038216820361054657565b3d15610ac5573d9067ffffffffffffffff82116105955760405191610ab9601f8201601f191660200184610952565b82523d6000602084013e565b606090565b600092838093604051602081019363a9059cbb60e01b855260018060a01b038093166024830152604482015260448152610b0381610936565b5193165af1610b10610a8a565b50156107b457565b600080809381935af115610b2857565b60405162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b6044820152606490fdfea26469706673582212209b4ded51910420bf9b8d0626888ff87745f156d6946e4c5b7a7b0852a00cd5db64736f6c63430008130033
Deployed Bytecode
0x608060405260043610156108db575b36156108d9576000803560601c90808073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28414806108d0575b1561080f57509050620186a061005034610a52565b049061005c8234610a69565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc23b1561054657604051630d0e30db60e41b81526000816004818573c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af18015610803576107ef575b5060008091604051602081019163a9059cbb60e01b835260283560601c60248301526044820152604481526100e181610936565b51908273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1610103610a8a565b50156107b45733905b604051630240bc6b60e21b815290606082600481602835841c5afa9182156107a7578190829361074b575b5060143560601c8610926001600160701b03908116929116831561074657915b6040516370a0823160e01b815260283560601c60048201526020816024818b5afa801561073b5784908490610705575b6101919250610a69565b9384156106ac5783158015806106a3575b1561064d576103e591828702918783048403610639578284868a020204851483151715610623576103e880880297880414171561060f57818601861161060f57818601156105f957156105ea57848101868402830204845b6040516370a0823160e01b81526001600160a01b038a1660048201529160208360248160143560601c5afa9283156105df5787936105ab575b50604051906020820182811067ffffffffffffffff8211176105955760405287825260283560601c3b156105915760405163022c0d9f60e01b8152600481019390935260248301526001600160a01b038a166044830152608060648301528051608483018190528791839190835b82811061057657505081818460a4809484010152601f801991011681010301818360283560601c5af180156105535790869161055e575b50506040516370a0823160e01b81526001600160a01b03891660048201529060208260248160143560601c5afa801561055357869061051a575b61031c9250610a69565b96603c3560801c88106104df576001600160a01b03163014610383575b7f9734819749a91fc3be03ea83205f924ee08479bd3f0da48efc91d94d050cac1e60a08a8a8a8a60405193845260143560601c6020850152604084015260608301526080820152a1005b90919293965073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260143560601c146000146104875773c02aaa39b223fe8d0a0e5c4f27ead9083c756cc23b1561048357604051632e1a7d4d60e01b815296019184020204600485018190529381816024818373c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25af1801561047857610461575b5050918160a09361045561044f620186a06104477f9734819749a91fc3be03ea83205f924ee08479bd3f0da48efc91d94d050cac1e9997610a52565b048095610a69565b33610b18565b91938193953880610339565b61046b8291610922565b610475578061040b565b80fd5b6040513d84823e3d90fd5b8380fd5b5050505060a0925081620186a06104bf7f9734819749a91fc3be03ea83205f924ee08479bd3f0da48efc91d94d050cac1e9694610a52565b04916104da6104ce8484610a69565b3360143560601c610aca565b610455565b60405162461bcd60e51b8152602060048201526013602482015272151bdbc81b1a5d1d1b19481c9958d95a5d9959606a1b6044820152606490fd5b506020823d60201161054b575b8161053460209383610952565b810103126105465761031c9151610312565b600080fd5b3d9150610527565b6040513d88823e3d90fd5b61056790610922565b6105725784386102d8565b8480fd5b602081830181015160a488840101528b9550869450016102a1565b8780fd5b634e487b7160e01b600052604160045260246000fd5b9092506020813d6020116105d7575b816105c760209383610952565b8101031261054657519138610233565b3d91506105ba565b6040513d89823e3d90fd5b838582018785028402046101fa565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b85526011600452602485fd5b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b86526011600452602486fd5b60405162461bcd60e51b815260206004820152602860248201527f556e697377617056324c6962726172793a20494e53554646494349454e545f4c604482015267495155494449545960c01b6064820152608490fd5b508215156101a2565b60405162461bcd60e51b815260206004820152602b60248201527f556e697377617056324c6962726172793a20494e53554646494349454e545f4960448201526a1394155517d05353d5539560aa1b6064820152608490fd5b50506020813d602011610733575b8161072060209383610952565b8101031261054657836101919151610187565b3d9150610713565b6040513d85823e3d90fd5b610157565b9250506060823d60601161079f575b8161076760609383610952565b810103126104755761077882610a76565b604061078660208501610a76565b93015163ffffffff81160361079b5738610137565b5080fd5b3d915061075a565b50604051903d90823e3d90fd5b60405162461bcd60e51b81526020600482015260136024820152721cd85999551c985b9cd9995c8819985a5b1959606a1b6044820152606490fd5b6107fa919250610922565b600090816100ad565b6040513d6000823e3d90fd5b60405160208101906323b872dd60e01b825233602482015260283560601c6044820152604c3560801c60648201526064815260a0810181811067ffffffffffffffff8211176108bc5760405251829182875af161086a610a8a565b501561087757309061010c565b60405162461bcd60e51b815260206004820152601760248201527f736166655472616e7366657246726f6d206661696c65640000000000000000006044820152606490fd5b634e487b7160e01b84526041600452602484fd5b5034151561003b565b005b6000803560e01c630cd865ec146108f2575061000e565b34610475576020366003190112610475576004356001600160a01b038116810361079b5761091f90610974565b80f35b67ffffffffffffffff811161059557604052565b6080810190811067ffffffffffffffff82111761059557604052565b90601f8019910116810190811067ffffffffffffffff82111761059557604052565b6001600160a01b03907f0000000000000000000000001bb0303f9e28031a5ffd9ffaa37c6adcae9f5bbb82163303610a275716806109b957506109b74733610b18565b565b6040516370a0823160e01b81523060048201529190602083602481845afa928315610803576000936109f4575b50916109b791923390610aca565b6020813d8211610a1f575b81610a0c60209383610952565b81010312610483575192506109b76109e6565b3d91506109ff565b606460405162461bcd60e51b815260206004820152600460248201526373686f6f60e01b6044820152fd5b9061036b9182810292818404149015171561062357565b9190820391821161062357565b51906001600160701b038216820361054657565b3d15610ac5573d9067ffffffffffffffff82116105955760405191610ab9601f8201601f191660200184610952565b82523d6000602084013e565b606090565b600092838093604051602081019363a9059cbb60e01b855260018060a01b038093166024830152604482015260448152610b0381610936565b5193165af1610b10610a8a565b50156107b457565b600080809381935af115610b2857565b60405162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b6044820152606490fdfea26469706673582212209b4ded51910420bf9b8d0626888ff87745f156d6946e4c5b7a7b0852a00cd5db64736f6c63430008130033
Loading...
Loading
Loading...
Loading
Net Worth in USD
$2.33
Net Worth in ETH
0.001129
Token Allocations
ETH
100.00%
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| ETH | 100.00% | $2,067.48 | 0.00112901 | $2.33 |
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.