Overview
S Balance
0 S
S Value
-More Info
Private Name Tags
ContractCreator
Loading...
Loading
This contract contains unverified libraries: NFTDescriptor
Contract Source Code Verified (Exact Match)
Contract Name:
UniswapInterfaceMulticall
Compiler Version
v0.8.28+commit.7893614a
Optimization Enabled:
Yes with 100 runs
Other Settings:
cancun EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.26; pragma abicoder v2; /// @notice A fork of Multicall2 specifically tailored for the Uniswap Interface contract UniswapInterfaceMulticall { struct Call { address target; uint256 gasLimit; bytes callData; } struct Result { bool success; uint256 gasUsed; bytes returnData; } function getCurrentBlockTimestamp() public view returns (uint256 timestamp) { timestamp = block.timestamp; } function getEthBalance(address addr) public view returns (uint256 balance) { balance = addr.balance; } function multicall(Call[] memory calls) public returns (uint256 blockNumber, Result[] memory returnData) { blockNumber = block.number; returnData = new Result[](calls.length); for (uint256 i = 0; i < calls.length; i++) { (address target, uint256 gasLimit, bytes memory callData) = ( calls[i].target, calls[i].gasLimit, calls[i].callData ); uint256 gasLeftBefore = gasleft(); (bool success, bytes memory ret) = target.call{gas: gasLimit}(callData); uint256 gasUsed = gasLeftBefore - gasleft(); returnData[i] = Result(success, gasUsed, ret); } } }
{ "remappings": [ "@openzeppelin-contracts-upgradeable-5.1.0/=dependencies/@openzeppelin-contracts-upgradeable-5.1.0/", "@openzeppelin/contracts/=dependencies/@openzeppelin-contracts-5.1.0/", "forge-std/=dependencies/forge-std-1.9.4/src/", "permit2/=lib/permit2/", "@openzeppelin-3.4.2/=node_modules/@openzeppelin-3.4.2/", "@openzeppelin-contracts-5.1.0/=dependencies/@openzeppelin-contracts-5.1.0/", "@uniswap/=node_modules/@uniswap/", "base64-sol/=node_modules/base64-sol/", "eth-gas-reporter/=node_modules/eth-gas-reporter/", "forge-std-1.9.4/=dependencies/forge-std-1.9.4/src/", "hardhat/=node_modules/hardhat/", "solmate/=node_modules/solmate/" ], "optimizer": { "enabled": true, "runs": 100 }, "metadata": { "useLiteralContent": false, "bytecodeHash": "ipfs", "appendCBOR": true }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "cancun", "viaIR": true, "libraries": { "contracts/CL/periphery/libraries/NFTDescriptor.sol": { "NFTDescriptor": "0x7E93dc6d4B98D8e1BeA2b5C160d7dd636f579B23" } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"name":"getCurrentBlockTimestamp","outputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"getEthBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"target","type":"address"},{"internalType":"uint256","name":"gasLimit","type":"uint256"},{"internalType":"bytes","name":"callData","type":"bytes"}],"internalType":"struct UniswapInterfaceMulticall.Call[]","name":"calls","type":"tuple[]"}],"name":"multicall","outputs":[{"internalType":"uint256","name":"blockNumber","type":"uint256"},{"components":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"uint256","name":"gasUsed","type":"uint256"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"internalType":"struct UniswapInterfaceMulticall.Result[]","name":"returnData","type":"tuple[]"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60808060405234601557610441908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c9081630f28c97d14610341575080631749e1e31461007157634d2301cc1461003d575f80fd5b3461006d57602036600319011261006d576004356001600160a01b038116810361006d5760209031604051908152f35b5f80fd5b3461006d57602036600319011261006d576004356001600160401b03811161006d573660238201121561006d5780600401356100b46100af826103b1565b61038c565b916024602084848152019260051b8201019036821161006d5760248101925b828410610292578480516100e96100af826103b1565b908082526100f9601f19916103b1565b015f5b81811061026c5750505f5b82518110156101cb576001600160a01b0361012282856103e3565b515116905f80602061013484886103e3565b510151604061014385896103e3565b51015190825a9660208451940192f13d156101c4573d6101656100af826103c8565b9081523d5f602083013e5b5a84039384116101b057600193610185610359565b92151583526020830152604082015261019e82856103e3565b526101a981846103e3565b5001610107565b634e487b7160e01b5f52601160045260245ffd5b6060610170565b506040518091604082014383526040602084015281518091526060830190602060608260051b8601019301915f905b82821061020957505050500390f35b9193600191939550602060808192605f198a82030186528260408a5180511515845282810151838501520151606060408401528051918291826060860152018484015e5f838284010152601f8019910116010196019201920185949391926101fa565b602090610277610359565b5f81525f8382015260606040820152828286010152016100fc565b83356001600160401b03811161006d578201906060602319833603011261006d576102bb610359565b9160248101356001600160a01b038116810361006d5783526044810135602084015260648101356001600160401b03811161006d5760249101019036601f8301121561006d578135926103106100af856103c8565b848152366020868601011161006d575f602086819782809801838601378301015260408201528152019301926100d3565b3461006d575f36600319011261006d57602090428152f35b60405190606082018281106001600160401b0382111761037857604052565b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f191682016001600160401b0381118382101761037857604052565b6001600160401b0381116103785760051b60200190565b6001600160401b03811161037857601f01601f191660200190565b80518210156103f75760209160051b010190565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220589b67ff000da9c64c504edcfe134f553edc47ec5372937322c4bb9d7dd2d8a164736f6c634300081c0033
Deployed Bytecode
0x6080806040526004361015610012575f80fd5b5f3560e01c9081630f28c97d14610341575080631749e1e31461007157634d2301cc1461003d575f80fd5b3461006d57602036600319011261006d576004356001600160a01b038116810361006d5760209031604051908152f35b5f80fd5b3461006d57602036600319011261006d576004356001600160401b03811161006d573660238201121561006d5780600401356100b46100af826103b1565b61038c565b916024602084848152019260051b8201019036821161006d5760248101925b828410610292578480516100e96100af826103b1565b908082526100f9601f19916103b1565b015f5b81811061026c5750505f5b82518110156101cb576001600160a01b0361012282856103e3565b515116905f80602061013484886103e3565b510151604061014385896103e3565b51015190825a9660208451940192f13d156101c4573d6101656100af826103c8565b9081523d5f602083013e5b5a84039384116101b057600193610185610359565b92151583526020830152604082015261019e82856103e3565b526101a981846103e3565b5001610107565b634e487b7160e01b5f52601160045260245ffd5b6060610170565b506040518091604082014383526040602084015281518091526060830190602060608260051b8601019301915f905b82821061020957505050500390f35b9193600191939550602060808192605f198a82030186528260408a5180511515845282810151838501520151606060408401528051918291826060860152018484015e5f838284010152601f8019910116010196019201920185949391926101fa565b602090610277610359565b5f81525f8382015260606040820152828286010152016100fc565b83356001600160401b03811161006d578201906060602319833603011261006d576102bb610359565b9160248101356001600160a01b038116810361006d5783526044810135602084015260648101356001600160401b03811161006d5760249101019036601f8301121561006d578135926103106100af856103c8565b848152366020868601011161006d575f602086819782809801838601378301015260408201528152019301926100d3565b3461006d575f36600319011261006d57602090428152f35b60405190606082018281106001600160401b0382111761037857604052565b634e487b7160e01b5f52604160045260245ffd5b6040519190601f01601f191682016001600160401b0381118382101761037857604052565b6001600160401b0381116103785760051b60200190565b6001600160401b03811161037857601f01601f191660200190565b80518210156103f75760209160051b010190565b634e487b7160e01b5f52603260045260245ffdfea2646970667358221220589b67ff000da9c64c504edcfe134f553edc47ec5372937322c4bb9d7dd2d8a164736f6c634300081c0033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.