Overview
ETH Balance
0 ETH
Eth Value
$0.00Token Holdings
More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
InstaAccountV2
Compiler Version
v0.7.0+commit.9e61f92b
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.7.0; interface AccountImplementations { function getImplementation(bytes4 _sig) external view returns (address); } /** * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM * instruction `delegatecall`. */ contract InstaAccountV2 { AccountImplementations public immutable implementations; constructor(address _implementations) { implementations = AccountImplementations(_implementations); } /** * @dev Delegates the current call to `implementation`. * * This function does not return to its internall call site, it will return directly to the external caller. */ function _delegate(address implementation) internal { // solhint-disable-next-line no-inline-assembly assembly { // Copy msg.data. We take full control of memory in this inline assembly // block because it will not return to Solidity code. We overwrite the // Solidity scratch pad at memory position 0. calldatacopy(0, 0, calldatasize()) // Call the implementation. // out and outsize are 0 because we don't know the size yet. let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0) // Copy the returned data. returndatacopy(0, 0, returndatasize()) switch result // delegatecall returns 0 on error. case 0 { revert(0, returndatasize()) } default { return(0, returndatasize()) } } } /** * @dev Delegates the current call to the address returned by Implementations registry. * * This function does not return to its internall call site, it will return directly to the external caller. */ function _fallback(bytes4 _sig) internal { address _implementation = implementations.getImplementation(_sig); require(_implementation != address(0), "InstaAccountV2: Not able to find _implementation"); _delegate(_implementation); } /** * @dev Fallback function that delegates calls to the address returned by Implementations registry. */ fallback () external payable { _fallback(msg.sig); } /** * @dev Fallback function that delegates calls to the address returned by Implementations registry. */ receive () external payable { if (msg.sig != 0x00000000) { _fallback(msg.sig); } } }
{ "optimizer": { "enabled": false, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } }, "metadata": { "useLiteralContent": true }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_implementations","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementations","outputs":[{"internalType":"contract AccountImplementations","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a060405234801561001057600080fd5b506040516103c53803806103c58339818101604052602081101561003357600080fd5b81019080805190602001909291905050508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250505060805160601c61032761009e60003980610119528061027952506103276000f3fe6080604052600436106100225760003560e01c806330e9012c146100d4576100a5565b366100a557600060e01b6000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146100a3576100a26000357fffffffff0000000000000000000000000000000000000000000000000000000016610115565b5b005b6100d26000357fffffffff0000000000000000000000000000000000000000000000000000000016610115565b005b3480156100e057600080fd5b506100e9610277565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663dc9cc645836040518263ffffffff1660e01b815260040180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060206040518083038186803b1580156101a757600080fd5b505afa1580156101bb573d6000803e3d6000fd5b505050506040513d60208110156101d157600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561026a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806102c26030913960400191505060405180910390fd5b6102738161029b565b5050565b7f000000000000000000000000000000000000000000000000000000000000000081565b3660008037600080366000845af43d6000803e80600081146102bc573d6000f35b3d6000fdfe496e7374614163636f756e7456323a204e6f742061626c6520746f2066696e64205f696d706c656d656e746174696f6ea264697066735822122020496c07af3dcdde8ccb1e60af8d323f0f1a6f1f16b3006af2a14e27c22f855464736f6c63430007000033000000000000000000000000cba828153d3a85b30b5b912e1f2dacac5816ae9d
Deployed Bytecode
0x6080604052600436106100225760003560e01c806330e9012c146100d4576100a5565b366100a557600060e01b6000357fffffffff00000000000000000000000000000000000000000000000000000000167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146100a3576100a26000357fffffffff0000000000000000000000000000000000000000000000000000000016610115565b5b005b6100d26000357fffffffff0000000000000000000000000000000000000000000000000000000016610115565b005b3480156100e057600080fd5b506100e9610277565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60007f000000000000000000000000cba828153d3a85b30b5b912e1f2dacac5816ae9d73ffffffffffffffffffffffffffffffffffffffff1663dc9cc645836040518263ffffffff1660e01b815260040180827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060206040518083038186803b1580156101a757600080fd5b505afa1580156101bb573d6000803e3d6000fd5b505050506040513d60208110156101d157600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561026a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806102c26030913960400191505060405180910390fd5b6102738161029b565b5050565b7f000000000000000000000000cba828153d3a85b30b5b912e1f2dacac5816ae9d81565b3660008037600080366000845af43d6000803e80600081146102bc573d6000f35b3d6000fdfe496e7374614163636f756e7456323a204e6f742061626c6520746f2066696e64205f696d706c656d656e746174696f6ea264697066735822122020496c07af3dcdde8ccb1e60af8d323f0f1a6f1f16b3006af2a14e27c22f855464736f6c63430007000033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000cba828153d3a85b30b5b912e1f2dacac5816ae9d
-----Decoded View---------------
Arg [0] : _implementations (address): 0xCBA828153d3a85b30B5b912e1f2daCac5816aE9D
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000cba828153d3a85b30b5b912e1f2dacac5816ae9d
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
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.