ETH Price: $3,454.38 (-1.50%)
Gas: 4 Gwei

Contract

0xAB22A68398FdE9A7C9877fbdf9AB0c779270846d
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
0x6080604097592452020-03-28 9:44:331579 days ago1585388673IN
 Create: SimpleMultiSig
0 ETH0.0101455810

Advanced mode:
Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SimpleMultiSig

Compiler Version
v0.5.13+commit.5b0b510c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-03-28
*/

pragma solidity ^0.5.13;

contract SimpleMultiSig {

// EIP712 Precomputed hashes:
// keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract,bytes32 salt)")
bytes32 constant EIP712DOMAINTYPE_HASH = 0xd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac56472;

// keccak256("Simple MultiSig")
bytes32 constant NAME_HASH = 0xb7a0bfa1b79f2443f4d73ebb9259cddbcd510b18be6fc4da7d1aa7b1786e73e6;

// keccak256("1")
bytes32 constant VERSION_HASH = 0xc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc6;

// keccak256("MultiSigTransaction(address destination,uint256 value,bytes data,uint256 nonce,address executor,uint256 gasLimit)")
bytes32 constant TXTYPE_HASH = 0x3ee892349ae4bbe61dce18f95115b5dc02daf49204cc602458cd4c1f540d56d7;

bytes32 constant SALT = 0x251543af6a222378665a76fe38dbceae4871a070b7fdaf5c6c30cf758dc33cc0;

  event Execute(address[] _confirmAddrs, address _destination, uint _value, bytes data);
  event Deposit(address indexed _from,uint _value);

  // debug events
  // event DbgExecuteParam(bytes32 sperator, bytes32 txInputHash, bytes32 totalHash, bytes txInput);
  // event DbgRecover(address _recovered);

  uint public nonce;                 // (only) mutable state
  uint public threshold;             // immutable state
  mapping (address => bool) isOwner; // immutable state
  address[] public ownersArr;        // immutable state

  bytes32 DOMAIN_SEPARATOR;          // hash for EIP712, computed from contract address

  // Note that owners_ must be strictly increasing, in order to prevent duplicates
  constructor(uint threshold_, address[] memory owners_, uint chainId) public {
    require(owners_.length <= 10 && threshold_ <= owners_.length && threshold_ > 0, "0<threshold<owners.length");

    address lastAdd = address(0);
    for (uint i = 0; i < owners_.length; i++) {
      require(owners_[i] > lastAdd, "repeated owner or not sorted");
      isOwner[owners_[i]] = true;
      lastAdd = owners_[i];
    }
    ownersArr = owners_;
    threshold = threshold_;

    DOMAIN_SEPARATOR = keccak256(abi.encode(EIP712DOMAINTYPE_HASH,
                                            NAME_HASH,
                                            VERSION_HASH,
                                            chainId,
                                            this,
                                            SALT));
  }

  // Note that address recovered from signatures must be strictly increasing, in order to prevent duplicates
  function execute(uint8[] memory sigV, bytes32[] memory sigR, bytes32[] memory sigS,
    address destination, uint value, bytes memory data, address executor, uint gasLimit) public {

    require(sigR.length == threshold, "R len not equal to threshold");
    require(sigR.length == sigS.length && sigR.length == sigV.length, "length of r/s/v not match");
    require(executor == msg.sender || executor == address(0), "wrong executor");

    // EIP712 scheme: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-712.md
    bytes32 txInputHash = keccak256(abi.encode(TXTYPE_HASH, destination, value, keccak256(data), nonce, executor, gasLimit));
    bytes32 totalHash = keccak256(abi.encodePacked("\x19\x01", DOMAIN_SEPARATOR, txInputHash));

    // emit DbgExecuteParam(DOMAIN_SEPARATOR, txInputHash, totalHash, abi.encode(TXTYPE_HASH, destination, value, keccak256(data), nonce, executor, gasLimit));

    address lastAdd = address(0); // cannot have address(0) as an owner
    address[] memory confirmAddrs = new address[](threshold);
    for (uint i = 0; i < threshold; i++) {
      address recovered = ecrecover(totalHash, sigV[i], sigR[i], sigS[i]);
      require(recovered > lastAdd && isOwner[recovered], "Verify sig failed");
      // emit DbgRecover(recovered);
      confirmAddrs[i] = recovered;
      lastAdd = recovered;
    }

    // If we make it here all signatures are accounted for.
    // The address.call() syntax is no longer recommended, see:
    // https://github.com/ethereum/solidity/issues/2884
    nonce = nonce + 1;
    bool success = false;
    assembly { success := call(gasLimit, destination, value, add(data, 0x20), mload(data), 0, 0) }
    require(success, "not_success");
    emit Execute(confirmAddrs, destination, value, data);
  }

  function getVersion() external pure returns (string memory) {
    return "1"; //
  }

  function getOwersLength() external view returns (int8) {
    return int8(ownersArr.length); //owners.length <= 10 (see constructor), so type convert is ok
  }

  function () external payable {
    emit Deposit(msg.sender, msg.value);
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"threshold_","type":"uint256"},{"internalType":"address[]","name":"owners_","type":"address[]"},{"internalType":"uint256","name":"chainId","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"_confirmAddrs","type":"address[]"},{"indexed":false,"internalType":"address","name":"_destination","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"Execute","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":false,"inputs":[{"internalType":"uint8[]","name":"sigV","type":"uint8[]"},{"internalType":"bytes32[]","name":"sigR","type":"bytes32[]"},{"internalType":"bytes32[]","name":"sigS","type":"bytes32[]"},{"internalType":"address","name":"destination","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"gasLimit","type":"uint256"}],"name":"execute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOwersLength","outputs":[{"internalType":"int8","name":"","type":"int8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getVersion","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"ownersArr","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"threshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]

60806040523480156200001157600080fd5b50604051620011df380380620011df833981810160405260608110156200003757600080fd5b8101908080519060200190929190805160405193929190846401000000008211156200006257600080fd5b838201915060208201858111156200007957600080fd5b82518660208202830111640100000000821117156200009757600080fd5b8083526020830192505050908051906020019060200280838360005b83811015620000d0578082015181840152602081019050620000b3565b5050505090500160405260200180519060200190929190505050600a825111158015620000fe575081518311155b80156200010b5750600083115b6200017e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f303c7468726573686f6c643c6f776e6572732e6c656e6774680000000000000081525060200191505060405180910390fd5b600080905060008090505b8351811015620002da578173ffffffffffffffffffffffffffffffffffffffff16848281518110620001b757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161162000249576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7265706561746564206f776e6572206f72206e6f7420736f727465640000000081525060200191505060405180910390fd5b6001600260008684815181106200025c57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550838181518110620002c257fe5b60200260200101519150808060010191505062000189565b508260039080519060200190620002f392919062000412565b50836001819055507fd87cd6ef79d4e2b95e15ce8abf732db51ec771f1ca2edccf22a46c729ac5647260001b7fb7a0bfa1b79f2443f4d73ebb9259cddbcd510b18be6fc4da7d1aa7b1786e73e660001b7fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660001b84307f251543af6a222378665a76fe38dbceae4871a070b7fdaf5c6c30cf758dc33cc060001b604051602001808781526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200196505050505050506040516020818303038152906040528051906020012060048190555050505050620004e7565b8280548282559060005260206000209081019282156200048e579160200282015b828111156200048d5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019062000433565b5b5090506200049d9190620004a1565b5090565b620004e491905b80821115620004e057600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101620004a8565b5090565b90565b610ce880620004f76000396000f3fe6080604052600436106100555760003560e01c80630d8e6e2c146100a557806342cde4e814610135578063a0ab965314610160578063aa5df9e214610439578063affed0e0146104b4578063ca7541ee146104df575b3373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2005b3480156100b157600080fd5b506100ba610510565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fa5780820151818401526020810190506100df565b50505050905090810190601f1680156101275780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014157600080fd5b5061014a61054d565b6040518082815260200191505060405180910390f35b34801561016c57600080fd5b50610437600480360361010081101561018457600080fd5b81019080803590602001906401000000008111156101a157600080fd5b8201836020820111156101b357600080fd5b803590602001918460208302840111640100000000831117156101d557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561023557600080fd5b82018360208201111561024757600080fd5b8035906020019184602083028401116401000000008311171561026957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156102c957600080fd5b8201836020820111156102db57600080fd5b803590602001918460208302840111640100000000831117156102fd57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019064010000000081111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111640100000000831117156103bb57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610553565b005b34801561044557600080fd5b506104726004803603602081101561045c57600080fd5b8101908080359060200190929190505050610c64565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104c057600080fd5b506104c9610ca0565b6040518082815260200191505060405180910390f35b3480156104eb57600080fd5b506104f4610ca6565b604051808260000b60000b815260200191505060405180910390f35b60606040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250905090565b60015481565b6001548751146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f52206c656e206e6f7420657175616c20746f207468726573686f6c640000000081525060200191505060405180910390fd5b855187511480156105dd575087518751145b61064f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f6c656e677468206f6620722f732f76206e6f74206d617463680000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614806106b55750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b610727576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f77726f6e67206578656375746f7200000000000000000000000000000000000081525060200191505060405180910390fd5b60007f3ee892349ae4bbe61dce18f95115b5dc02daf49204cc602458cd4c1f540d56d760001b868686805190602001206000548787604051602001808881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200197505050505050505060405160208183030381529060405280519060200120905060006004548260405160200180807f1901000000000000000000000000000000000000000000000000000000000000815250600201838152602001828152602001925050506040516020818303038152906040528051906020012090506000809050606060015460405190808252806020026020018201604052801561089b5781602001602082028038833980820191505090505b50905060008090505b600154811015610aa05760006001858f84815181106108bf57fe5b60200260200101518f85815181106108d357fe5b60200260200101518f86815181106108e757fe5b602002602001015160405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610946573d6000803e3d6000fd5b5050506020604051035190508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161180156109d65750600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b610a48576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f56657269667920736967206661696c656400000000000000000000000000000081525060200191505060405180910390fd5b80838381518110610a5557fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508093505080806001019150506108a4565b506001600054016000819055506000809050600080895160208b018c8e8bf1905080610b34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f6e6f745f7375636365737300000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f07f4110a9f6788eae6a0b088d9aca06ec3cd9e2c6eae12a1d393d6d041d18c30828b8b8b60405180806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001838103835287818151815260200191508051906020019060200280838360005b83811015610bd8578082015181840152602081019050610bbd565b50505050905001838103825284818151815260200191508051906020019080838360005b83811015610c17578082015181840152602081019050610bfc565b50505050905090810190601f168015610c445780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050505050505050505050565b60038181548110610c7157fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60005481565b600060038054905090509056fea265627a7a723158208a338c23a8dcb57ab0a9aef014ea47599ddc7af766dd538f7bb535b2a2f2318764736f6c634300050d003200000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000040000000000000000000000005b13592c8da41424a8c9fa44cf9f1d650c88ff220000000000000000000000006ad9ecaa8ad12dbc5609ddc26fed29a56d1167c9000000000000000000000000f1648230e7e4e424fd74aca03927dc9c74cbe1d8000000000000000000000000f3a343a8df046536837ee5d72beee70bed1d324d

Deployed Bytecode

0x6080604052600436106100555760003560e01c80630d8e6e2c146100a557806342cde4e814610135578063a0ab965314610160578063aa5df9e214610439578063affed0e0146104b4578063ca7541ee146104df575b3373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a2005b3480156100b157600080fd5b506100ba610510565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100fa5780820151818401526020810190506100df565b50505050905090810190601f1680156101275780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561014157600080fd5b5061014a61054d565b6040518082815260200191505060405180910390f35b34801561016c57600080fd5b50610437600480360361010081101561018457600080fd5b81019080803590602001906401000000008111156101a157600080fd5b8201836020820111156101b357600080fd5b803590602001918460208302840111640100000000831117156101d557600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019064010000000081111561023557600080fd5b82018360208201111561024757600080fd5b8035906020019184602083028401116401000000008311171561026957600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803590602001906401000000008111156102c957600080fd5b8201836020820111156102db57600080fd5b803590602001918460208302840111640100000000831117156102fd57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019064010000000081111561038757600080fd5b82018360208201111561039957600080fd5b803590602001918460018302840111640100000000831117156103bb57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610553565b005b34801561044557600080fd5b506104726004803603602081101561045c57600080fd5b8101908080359060200190929190505050610c64565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104c057600080fd5b506104c9610ca0565b6040518082815260200191505060405180910390f35b3480156104eb57600080fd5b506104f4610ca6565b604051808260000b60000b815260200191505060405180910390f35b60606040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250905090565b60015481565b6001548751146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f52206c656e206e6f7420657175616c20746f207468726573686f6c640000000081525060200191505060405180910390fd5b855187511480156105dd575087518751145b61064f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f6c656e677468206f6620722f732f76206e6f74206d617463680000000000000081525060200191505060405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614806106b55750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b610727576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f77726f6e67206578656375746f7200000000000000000000000000000000000081525060200191505060405180910390fd5b60007f3ee892349ae4bbe61dce18f95115b5dc02daf49204cc602458cd4c1f540d56d760001b868686805190602001206000548787604051602001808881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200197505050505050505060405160208183030381529060405280519060200120905060006004548260405160200180807f1901000000000000000000000000000000000000000000000000000000000000815250600201838152602001828152602001925050506040516020818303038152906040528051906020012090506000809050606060015460405190808252806020026020018201604052801561089b5781602001602082028038833980820191505090505b50905060008090505b600154811015610aa05760006001858f84815181106108bf57fe5b60200260200101518f85815181106108d357fe5b60200260200101518f86815181106108e757fe5b602002602001015160405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610946573d6000803e3d6000fd5b5050506020604051035190508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161180156109d65750600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b610a48576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f56657269667920736967206661696c656400000000000000000000000000000081525060200191505060405180910390fd5b80838381518110610a5557fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508093505080806001019150506108a4565b506001600054016000819055506000809050600080895160208b018c8e8bf1905080610b34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f6e6f745f7375636365737300000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f07f4110a9f6788eae6a0b088d9aca06ec3cd9e2c6eae12a1d393d6d041d18c30828b8b8b60405180806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200180602001838103835287818151815260200191508051906020019060200280838360005b83811015610bd8578082015181840152602081019050610bbd565b50505050905001838103825284818151815260200191508051906020019080838360005b83811015610c17578082015181840152602081019050610bfc565b50505050905090810190601f168015610c445780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a150505050505050505050505050565b60038181548110610c7157fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60005481565b600060038054905090509056fea265627a7a723158208a338c23a8dcb57ab0a9aef014ea47599ddc7af766dd538f7bb535b2a2f2318764736f6c634300050d0032

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000040000000000000000000000005b13592c8da41424a8c9fa44cf9f1d650c88ff220000000000000000000000006ad9ecaa8ad12dbc5609ddc26fed29a56d1167c9000000000000000000000000f1648230e7e4e424fd74aca03927dc9c74cbe1d8000000000000000000000000f3a343a8df046536837ee5d72beee70bed1d324d

-----Decoded View---------------
Arg [0] : threshold_ (uint256): 3
Arg [1] : owners_ (address[]): 0x5b13592C8da41424a8c9FA44Cf9f1d650c88ff22,0x6aD9ecAa8Ad12DBC5609DdC26FED29A56d1167c9,0xF1648230e7e4E424fd74ACa03927DC9C74CBe1D8,0xf3a343A8DF046536837Ee5D72beee70BeD1D324d
Arg [2] : chainId (uint256): 1

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [4] : 0000000000000000000000005b13592c8da41424a8c9fa44cf9f1d650c88ff22
Arg [5] : 0000000000000000000000006ad9ecaa8ad12dbc5609ddc26fed29a56d1167c9
Arg [6] : 000000000000000000000000f1648230e7e4e424fd74aca03927dc9c74cbe1d8
Arg [7] : 000000000000000000000000f3a343a8df046536837ee5d72beee70bed1d324d


Deployed Bytecode Sourcemap

28:4671:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4668:10;4660:30;;;4680:9;4660:30;;;;;;;;;;;;;;;;;;28:4671;4361:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4361:86:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4361:86:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1272:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1272:21:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2558:1797;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2558:1797:0;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;2558:1797:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2558:1797:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2558:1797:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;2558:1797:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;2558:1797:0;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2558:1797:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2558:1797:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;2558:1797:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;2558:1797:0;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2558:1797:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2558:1797:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;2558:1797:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;2558:1797:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2558:1797:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2558:1797:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;2558:1797:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;2558:1797:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1386:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1386:26:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1386:26:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1210:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1210:17:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4453:160;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4453:160:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4361:86;4406:13;4428:10;;;;;;;;;;;;;;;;;;;4361:86;:::o;1272:21::-;;;;:::o;2558:1797::-;2771:9;;2756:4;:11;:24;2748:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2843:4;:11;2828:4;:11;:26;:56;;;;;2873:4;:11;2858:4;:11;:26;2828:56;2820:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2941:10;2929:22;;:8;:22;;;:48;;;;2975:1;2955:22;;:8;:22;;;2929:48;2921:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3089:19;730:66;3132:11;;3145;3158:5;3175:4;3165:15;;;;;;3182:5;;3189:8;3199;3121:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3121:87:0;;;3111:98;;;;;;3089:120;;3216:17;3275:16;;3293:11;3246:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3246:59:0;;;3236:70;;;;;;3216:90;;3478:15;3504:1;3478:28;;3551:29;3597:9;;3583:24;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;3583:24:0;;;;3551:56;;3619:6;3628:1;3619:10;;3614:303;3635:9;;3631:1;:13;3614:303;;;3660:17;3680:47;3690:9;3701:4;3706:1;3701:7;;;;;;;;;;;;;;3710:4;3715:1;3710:7;;;;;;;;;;;;;;3719:4;3724:1;3719:7;;;;;;;;;;;;;;3680:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3680:47:0;;;;;;;;3660:67;;3756:7;3744:19;;:9;:19;;;:41;;;;;3767:7;:18;3775:9;3767:18;;;;;;;;;;;;;;;;;;;;;;;;;3744:41;3736:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3872:9;3854:12;3867:1;3854:15;;;;;;;;;;;;;:27;;;;;;;;;;;3900:9;3890:19;;3614:303;3646:3;;;;;;;3614:303;;;;4124:1;4116:5;;:9;4108:5;:17;;;;4132:12;4147:5;4132:20;;4249:1;4246;4239:4;4233:11;4226:4;4220;4216:15;4209:5;4196:11;4186:8;4181:70;4170:81;;4267:7;4259:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4302:47;4310:12;4324:11;4337:5;4344:4;4302:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4302:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4302:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2558:1797;;;;;;;;;;;;;:::o;1386:26::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1210:17::-;;;;:::o;4453:160::-;4502:4;4527:9;:16;;;;4515:29;;4453:160;:::o

Swarm Source

bzzr://8a338c23a8dcb57ab0a9aef014ea47599ddc7af766dd538f7bb535b2a2f23187

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.