Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 44 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Execute | 13737791 | 1544 days ago | IN | 0 ETH | 0.00766475 | ||||
| Execute | 12244987 | 1776 days ago | IN | 0 ETH | 0.00874965 | ||||
| Execute | 12199476 | 1783 days ago | IN | 0 ETH | 0.01013846 | ||||
| Execute | 11133928 | 1947 days ago | IN | 0 ETH | 0.00723426 | ||||
| Execute | 11116246 | 1950 days ago | IN | 0 ETH | 0.00723186 | ||||
| Execute | 11114731 | 1950 days ago | IN | 0 ETH | 0.00659772 | ||||
| Execute | 11068988 | 1957 days ago | IN | 0 ETH | 0.00502782 | ||||
| Execute | 11022517 | 1964 days ago | IN | 0 ETH | 0.01660547 | ||||
| Execute | 11022497 | 1964 days ago | IN | 0 ETH | 0.01660728 | ||||
| Execute | 11022470 | 1964 days ago | IN | 0 ETH | 0.0166103 | ||||
| Execute | 10972298 | 1972 days ago | IN | 0 ETH | 0.00586523 | ||||
| Execute | 10972295 | 1972 days ago | IN | 0 ETH | 0.00586663 | ||||
| Execute | 10972285 | 1972 days ago | IN | 0 ETH | 0.00586495 | ||||
| Execute | 10938253 | 1977 days ago | IN | 0 ETH | 0.00855259 | ||||
| Execute | 10882269 | 1986 days ago | IN | 0 ETH | 0.02680502 | ||||
| Execute | 10594998 | 2030 days ago | IN | 0 ETH | 0.00610883 | ||||
| Execute | 10549251 | 2037 days ago | IN | 0 ETH | 0.00660906 | ||||
| Execute | 10471598 | 2049 days ago | IN | 0 ETH | 0.00867333 | ||||
| Execute | 10425645 | 2056 days ago | IN | 0 ETH | 0.0025392 | ||||
| Execute | 10425645 | 2056 days ago | IN | 0 ETH | 0.00335475 | ||||
| Execute | 10324003 | 2072 days ago | IN | 0 ETH | 0.00440191 | ||||
| Execute | 10278320 | 2079 days ago | IN | 0 ETH | 0.00335651 | ||||
| Execute | 9667219 | 2174 days ago | IN | 0 ETH | 0.00092948 | ||||
| Execute | 9666807 | 2174 days ago | IN | 0 ETH | 0.00122035 | ||||
| Execute | 9621291 | 2181 days ago | IN | 0 ETH | 0.00092916 |
Latest 1 internal transaction
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| - | 8933148 | 2294 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
DharmaUpgradeMultisig
Compiler Version
v0.5.11+commit.c082d0b4
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2019-11-14
*/
pragma solidity 0.5.11; // optimization disabled, evm version: petersburg
/**
* @title DharmaUpgradeMultisig
* @author 0age (derived from Christian Lundkvist's Simple Multisig)
* @notice This contract is a multisig that will control upgrades to the Dharma
* Smart Wallet and the Dharma Key Ring via the Dharma Upgrade Beacon Controller
* Manager. it is based on Christian Lundkvist's Simple Multisig (found at
* https://github.com/christianlundkvist/simple-multisig). The address of the
* Dharma Upgrade Beacon Controller Manager is hard-coded as the only allowable
* call destination, and any changes in ownership or signature threshold will
* require deploying a new multisig and transferring ownership of the upgrade
* beacon controller manager.
*/
contract DharmaUpgradeMultisig {
// The nonce is the only mutable state, and is incremented on every call.
uint256 private _nonce;
// Maintain a mapping and a convenience array of owners.
mapping(address => bool) private _isOwner;
address[] private _owners;
// This multisig can only call the Upgrade Beacon Controller Manager contract.
address private constant _DESTINATION = address(
0x00000000008A10a98969A000D1C0AbA90F858D6a
);
// The threshold is an exact number of valid signatures that must be supplied.
uint256 private constant _THRESHOLD = 3;
// Note: Owners must be strictly increasing in order to prevent duplicates.
constructor(address[] memory owners) public {
require(owners.length <= 10, "Cannot have more than 10 owners.");
require(_THRESHOLD <= owners.length, "Threshold cannot exceed total owners.");
address lastAddress = address(0);
for (uint256 i = 0; i < owners.length; i++) {
require(
owners[i] > lastAddress, "Owner addresses must be strictly increasing."
);
_isOwner[owners[i]] = true;
lastAddress = owners[i];
}
_owners = owners;
}
function getNextHash(
bytes calldata data,
address executor,
uint256 gasLimit
) external view returns (bytes32 hash) {
hash = _getHash(data, executor, gasLimit, _nonce);
}
function getHash(
bytes calldata data,
address executor,
uint256 gasLimit,
uint256 nonce
) external view returns (bytes32 hash) {
hash = _getHash(data, executor, gasLimit, nonce);
}
function getNonce() external view returns (uint256 nonce) {
nonce = _nonce;
}
function getOwners() external view returns (address[] memory owners) {
owners = _owners;
}
function isOwner(address account) external view returns (bool owner) {
owner = _isOwner[account];
}
function getThreshold() external pure returns (uint256 threshold) {
threshold = _THRESHOLD;
}
function getDestination() external pure returns (address destination) {
destination = _DESTINATION;
}
// Note: addresses recovered from signatures must be strictly increasing.
function execute(
bytes calldata data,
address executor,
uint256 gasLimit,
bytes calldata signatures
) external returns (bool success, bytes memory returnData) {
require(
executor == msg.sender || executor == address(0),
"Must call from the executor account if one is specified."
);
// Derive the message hash and wrap in the eth signed messsage hash.
bytes32 hash = _toEthSignedMessageHash(
_getHash(data, executor, gasLimit, _nonce)
);
// Recover each signer from the provided signatures.
address[] memory signers = _recoverGroup(hash, signatures);
require(signers.length == _THRESHOLD, "Total signers must equal threshold.");
// Verify that each signatory is an owner and is strictly increasing.
address lastAddress = address(0); // cannot have address(0) as an owner
for (uint256 i = 0; i < signers.length; i++) {
require(
_isOwner[signers[i]], "Signature does not correspond to an owner."
);
require(
signers[i] > lastAddress, "Signer addresses must be strictly increasing."
);
lastAddress = signers[i];
}
// Increment the nonce and execute the transaction.
_nonce++;
(success, returnData) = _DESTINATION.call.gas(gasLimit)(data);
}
function _getHash(
bytes memory data,
address executor,
uint256 gasLimit,
uint256 nonce
) internal view returns (bytes32 hash) {
// Note: this is the data used to create a personal signed message hash.
hash = keccak256(
abi.encodePacked(address(this), nonce, executor, gasLimit, data)
);
}
/**
* @dev Returns each address that signed a hashed message (`hash`) from a
* collection of `signatures`.
*
* The `ecrecover` EVM opcode allows for malleable (non-unique) signatures:
* this function rejects them by requiring the `s` value to be in the lower
* half order, and the `v` value to be either 27 or 28.
*
* NOTE: This call _does not revert_ if a signature is invalid, or if the
* signer is otherwise unable to be retrieved. In those scenarios, the zero
* address is returned for that signature.
*
* IMPORTANT: `hash` _must_ be the result of a hash operation for the
* verification to be secure: it is possible to craft signatures that recover
* to arbitrary addresses for non-hashed data.
*/
function _recoverGroup(
bytes32 hash,
bytes memory signatures
) internal pure returns (address[] memory signers) {
// Ensure that the signatures length is a multiple of 65.
if (signatures.length % 65 != 0) {
return new address[](0);
}
// Create an appropriately-sized array of addresses for each signer.
signers = new address[](signatures.length / 65);
// Get each signature location and divide into r, s and v variables.
bytes32 signatureLocation;
bytes32 r;
bytes32 s;
uint8 v;
for (uint256 i = 0; i < signers.length; i++) {
assembly {
signatureLocation := add(signatures, mul(i, 65))
r := mload(add(signatureLocation, 32))
s := mload(add(signatureLocation, 64))
v := byte(0, mload(add(signatureLocation, 96)))
}
// EIP-2 still allows signature malleability for ecrecover(). Remove
// this possibility and make the signature unique.
if (uint256(s) > 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0) {
continue;
}
if (v != 27 && v != 28) {
continue;
}
// If signature is valid & not malleable, add signer address.
signers[i] = ecrecover(hash, v, r, s);
}
}
function _toEthSignedMessageHash(bytes32 hash) internal pure returns (bytes32) {
return keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", hash));
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"gasLimit","type":"uint256"},{"internalType":"uint256","name":"nonce","type":"uint256"}],"name":"getHash","outputs":[{"internalType":"bytes32","name":"hash","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getDestination","outputs":[{"internalType":"address","name":"destination","type":"address"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"owner","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"gasLimit","type":"uint256"}],"name":"getNextHash","outputs":[{"internalType":"bytes32","name":"hash","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOwners","outputs":[{"internalType":"address[]","name":"owners","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getNonce","outputs":[{"internalType":"uint256","name":"nonce","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getThreshold","outputs":[{"internalType":"uint256","name":"threshold","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"uint256","name":"gasLimit","type":"uint256"},{"internalType":"bytes","name":"signatures","type":"bytes"}],"name":"execute","outputs":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"returnData","type":"bytes"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"owners","type":"address[]"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]Contract Creation Code
60806040523480156200001157600080fd5b50604051620012d3380380620012d3833981810160405260208110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b838201915060208201858111156200006f57600080fd5b82518660208202830111640100000000821117156200008d57600080fd5b8083526020830192505050908051906020019060200280838360005b83811015620000c6578082015181840152602081019050620000a9565b50505050905001604052505050600a815111156200014c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f43616e6e6f742068617665206d6f7265207468616e203130206f776e6572732e81525060200191505060405180910390fd5b805160031115620001a9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180620012826025913960400191505060405180910390fd5b600080905060008090505b8251811015620002e8578173ffffffffffffffffffffffffffffffffffffffff16838281518110620001e257fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161162000258576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180620012a7602c913960400191505060405180910390fd5b60018060008584815181106200026a57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550828181518110620002d057fe5b602002602001015191508080600101915050620001b4565b508160029080519060200190620003019291906200030a565b505050620003df565b82805482825590600052602060002090810192821562000386579160200282015b82811115620003855782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550916020019190600101906200032b565b5b50905062000395919062000399565b5090565b620003dc91905b80821115620003d857600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101620003a0565b5090565b90565b610e9380620003ef6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a0e67e2b1161005b578063a0e67e2b146102ab578063d087d2881461030a578063e75235b814610328578063eeb4bafe1461034657610088565b8063084490b91461008d57806316ad95421461014e5780632f54bf6e146101985780633a6cd7f2146101f4575b600080fd5b610138600480360360808110156100a357600080fd5b81019080803590602001906401000000008111156100c057600080fd5b8201836020820111156100d257600080fd5b803590602001918460018302840111640100000000831117156100f457600080fd5b9091929391929390803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506104c2565b6040518082815260200191505060405180910390f35b61015661051f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101da600480360360208110156101ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610536565b604051808215151515815260200191505060405180910390f35b6102956004803603606081101561020a57600080fd5b810190808035906020019064010000000081111561022757600080fd5b82018360208201111561023957600080fd5b8035906020019184600183028401116401000000008311171561025b57600080fd5b9091929391929390803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061058c565b6040518082815260200191505060405180910390f35b6102b36105ea565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156102f65780820151818401526020810190506102db565b505050509050019250505060405180910390f35b610312610678565b6040518082815260200191505060405180910390f35b610330610681565b6040518082815260200191505060405180910390f35b61043c6004803603608081101561035c57600080fd5b810190808035906020019064010000000081111561037957600080fd5b82018360208201111561038b57600080fd5b803590602001918460018302840111640100000000831117156103ad57600080fd5b9091929391929390803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001906401000000008111156103f857600080fd5b82018360208201111561040a57600080fd5b8035906020019184600183028401116401000000008311171561042c57600080fd5b909192939192939050505061068a565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561048657808201518184015260208101905061046b565b50505050905090810190601f1680156104b35780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b600061051486868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050858585610a80565b905095945050505050565b60006e8a10a98969a000d1c0aba90f858d6a905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60006105e085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508484600054610a80565b9050949350505050565b6060600280548060200260200160405190810160405280929190818152602001828054801561066e57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610624575b5050505050905090565b60008054905090565b60006003905090565b600060603373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614806106f45750600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b610749576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526038815260200180610e276038913960400191505060405180910390fd5b60006107a56107a08a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508989600054610a80565b610b7c565b905060606107f78287878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610bd4565b90506003815114610853576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180610dad6023913960400191505060405180910390fd5b600080905060008090505b82518110156109d6576001600084838151811061087757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661091c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180610dfd602a913960400191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1683828151811061093f57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16116109b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180610dd0602d913960400191505060405180910390fd5b8281815181106109bf57fe5b60200260200101519150808060010191505061085e565b5060008081548092919060010191905055506e8a10a98969a000d1c0aba90f858d6a73ffffffffffffffffffffffffffffffffffffffff16888c8c60405180838380828437808301925050509250505060006040518083038160008787f1925050503d8060008114610a64576040519150601f19603f3d011682016040523d82523d6000602084013e610a69565b606091505b508095508196505050505050965096945050505050565b60003082858588604051602001808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140183815260200182805190602001908083835b60208310610b335780518252602082019150602081019050602083039250610b10565b6001836020036101000a03801982511681845116808217855250505050505090500195505050505050604051602081830303815290604052805190602001209050949350505050565b60008160405160200180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c01828152602001915050604051602081830303815290604052805190602001209050919050565b606060006041835181610be357fe5b0614610c21576000604051908082528060200260200182016040528015610c195781602001602082028038833980820191505090505b509050610da6565b6041825181610c2c57fe5b04604051908082528060200260200182016040528015610c5b5781602001602082028038833980820191505090505b50905060008060008060008090505b8551811015610da05760418102870194506020850151935060408501519250606085015160001a91507f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115610cc357610d93565b601b8260ff1614158015610cdb5750601c8260ff1614155b15610ce557610d93565b60018883868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610d42573d6000803e3d6000fd5b50505060206040510351868281518110610d5857fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b8080600101915050610c6a565b50505050505b9291505056fe546f74616c207369676e657273206d75737420657175616c207468726573686f6c642e5369676e657220616464726573736573206d757374206265207374726963746c7920696e6372656173696e672e5369676e617475726520646f6573206e6f7420636f72726573706f6e6420746f20616e206f776e65722e4d7573742063616c6c2066726f6d20746865206578656375746f72206163636f756e74206966206f6e65206973207370656369666965642ea265627a7a7231582016708ccf3d3fe847a31bdde4013bb18f0d71bda5e25122fac0e197ba0d5cdca664736f6c634300050b00325468726573686f6c642063616e6e6f742065786365656420746f74616c206f776e6572732e4f776e657220616464726573736573206d757374206265207374726963746c7920696e6372656173696e672e0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000500000000000000000000000097659dab3885339dca94a1ffa319cfb2f1b18d8c000000000000000000000000a7e36e02a59c5ddd85c1a30177091db9790a2b29000000000000000000000000c1fb35ed6440c5a99ec6372a20541f92812a4b30000000000000000000000000e1ee55f4c4959bd680aa397c29bf3e957f744044000000000000000000000000f70f7983f765f72c05f725f506d3f1197704e128
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a0e67e2b1161005b578063a0e67e2b146102ab578063d087d2881461030a578063e75235b814610328578063eeb4bafe1461034657610088565b8063084490b91461008d57806316ad95421461014e5780632f54bf6e146101985780633a6cd7f2146101f4575b600080fd5b610138600480360360808110156100a357600080fd5b81019080803590602001906401000000008111156100c057600080fd5b8201836020820111156100d257600080fd5b803590602001918460018302840111640100000000831117156100f457600080fd5b9091929391929390803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506104c2565b6040518082815260200191505060405180910390f35b61015661051f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6101da600480360360208110156101ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610536565b604051808215151515815260200191505060405180910390f35b6102956004803603606081101561020a57600080fd5b810190808035906020019064010000000081111561022757600080fd5b82018360208201111561023957600080fd5b8035906020019184600183028401116401000000008311171561025b57600080fd5b9091929391929390803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061058c565b6040518082815260200191505060405180910390f35b6102b36105ea565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156102f65780820151818401526020810190506102db565b505050509050019250505060405180910390f35b610312610678565b6040518082815260200191505060405180910390f35b610330610681565b6040518082815260200191505060405180910390f35b61043c6004803603608081101561035c57600080fd5b810190808035906020019064010000000081111561037957600080fd5b82018360208201111561038b57600080fd5b803590602001918460018302840111640100000000831117156103ad57600080fd5b9091929391929390803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001906401000000008111156103f857600080fd5b82018360208201111561040a57600080fd5b8035906020019184600183028401116401000000008311171561042c57600080fd5b909192939192939050505061068a565b604051808315151515815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561048657808201518184015260208101905061046b565b50505050905090810190601f1680156104b35780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b600061051486868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050858585610a80565b905095945050505050565b60006e8a10a98969a000d1c0aba90f858d6a905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60006105e085858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508484600054610a80565b9050949350505050565b6060600280548060200260200160405190810160405280929190818152602001828054801561066e57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610624575b5050505050905090565b60008054905090565b60006003905090565b600060603373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614806106f45750600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b610749576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526038815260200180610e276038913960400191505060405180910390fd5b60006107a56107a08a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508989600054610a80565b610b7c565b905060606107f78287878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050610bd4565b90506003815114610853576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180610dad6023913960400191505060405180910390fd5b600080905060008090505b82518110156109d6576001600084838151811061087757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661091c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180610dfd602a913960400191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1683828151811061093f57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16116109b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180610dd0602d913960400191505060405180910390fd5b8281815181106109bf57fe5b60200260200101519150808060010191505061085e565b5060008081548092919060010191905055506e8a10a98969a000d1c0aba90f858d6a73ffffffffffffffffffffffffffffffffffffffff16888c8c60405180838380828437808301925050509250505060006040518083038160008787f1925050503d8060008114610a64576040519150601f19603f3d011682016040523d82523d6000602084013e610a69565b606091505b508095508196505050505050965096945050505050565b60003082858588604051602001808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b81526014018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b815260140183815260200182805190602001908083835b60208310610b335780518252602082019150602081019050602083039250610b10565b6001836020036101000a03801982511681845116808217855250505050505090500195505050505050604051602081830303815290604052805190602001209050949350505050565b60008160405160200180807f19457468657265756d205369676e6564204d6573736167653a0a333200000000815250601c01828152602001915050604051602081830303815290604052805190602001209050919050565b606060006041835181610be357fe5b0614610c21576000604051908082528060200260200182016040528015610c195781602001602082028038833980820191505090505b509050610da6565b6041825181610c2c57fe5b04604051908082528060200260200182016040528015610c5b5781602001602082028038833980820191505090505b50905060008060008060008090505b8551811015610da05760418102870194506020850151935060408501519250606085015160001a91507f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115610cc357610d93565b601b8260ff1614158015610cdb5750601c8260ff1614155b15610ce557610d93565b60018883868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015610d42573d6000803e3d6000fd5b50505060206040510351868281518110610d5857fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b8080600101915050610c6a565b50505050505b9291505056fe546f74616c207369676e657273206d75737420657175616c207468726573686f6c642e5369676e657220616464726573736573206d757374206265207374726963746c7920696e6372656173696e672e5369676e617475726520646f6573206e6f7420636f72726573706f6e6420746f20616e206f776e65722e4d7573742063616c6c2066726f6d20746865206578656375746f72206163636f756e74206966206f6e65206973207370656369666965642ea265627a7a7231582016708ccf3d3fe847a31bdde4013bb18f0d71bda5e25122fac0e197ba0d5cdca664736f6c634300050b0032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000500000000000000000000000097659dab3885339dca94a1ffa319cfb2f1b18d8c000000000000000000000000a7e36e02a59c5ddd85c1a30177091db9790a2b29000000000000000000000000c1fb35ed6440c5a99ec6372a20541f92812a4b30000000000000000000000000e1ee55f4c4959bd680aa397c29bf3e957f744044000000000000000000000000f70f7983f765f72c05f725f506d3f1197704e128
-----Decoded View---------------
Arg [0] : owners (address[]): 0x97659DAB3885339dCa94A1Ffa319CFB2f1B18d8c,0xA7E36e02a59c5Ddd85c1A30177091dB9790a2b29,0xC1fB35ED6440C5A99EC6372A20541F92812A4b30,0xe1Ee55F4c4959bD680AA397C29bf3e957F744044,0xF70F7983f765F72c05F725F506D3F1197704e128
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000020
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000005
Arg [2] : 00000000000000000000000097659dab3885339dca94a1ffa319cfb2f1b18d8c
Arg [3] : 000000000000000000000000a7e36e02a59c5ddd85c1a30177091db9790a2b29
Arg [4] : 000000000000000000000000c1fb35ed6440c5a99ec6372a20541f92812a4b30
Arg [5] : 000000000000000000000000e1ee55f4c4959bd680aa397c29bf3e957f744044
Arg [6] : 000000000000000000000000f70f7983f765f72c05f725f506d3f1197704e128
Deployed Bytecode Sourcemap
780:6121:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;780:6121:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2167:212;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;2167:212:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2167:212:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2167:212: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;2167:212:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2800:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2580:107;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2580:107:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1964:197;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1964:197:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;1964:197:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1964:197: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;1964:197:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2476:98;;;:::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;2476:98:0;;;;;;;;;;;;;;;;;2385:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2693:101;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2992:1322;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;2992:1322:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2992:1322:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2992:1322: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;2992:1322:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2992:1322:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2992:1322: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;2992:1322: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;2992:1322:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2167:212;2304:12;2332:41;2341:4;;2332:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;2332:41:0;;;;;;2347:8;2357;2367:5;2332:8;:41::i;:::-;2325:48;;2167:212;;;;;;;:::o;2800:109::-;2849:19;1196:42;2877:26;;2800:109;:::o;2580:107::-;2637:10;2664:8;:17;2673:7;2664:17;;;;;;;;;;;;;;;;;;;;;;;;;2656:25;;2580:107;;;:::o;1964:197::-;2085:12;2113:42;2122:4;;2113:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;2113:42:0;;;;;;2128:8;2138;2148:6;;2113:8;:42::i;:::-;2106:49;;1964:197;;;;;;:::o;2476:98::-;2520:23;2561:7;2552:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2476:98;:::o;2385:85::-;2428:13;2458:6;;2450:14;;2385:85;:::o;2693:101::-;2740:17;1370:1;2766:22;;2693:101;:::o;2992:1322::-;3136:12;3150:23;3210:10;3198:22;;:8;:22;;;:48;;;;3244:1;3224:22;;:8;:22;;;3198:48;3182:138;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3403:12;3418:81;3450:42;3459:4;;3450:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;3450:42:0;;;;;;3465:8;3475;3485:6;;3450:8;:42::i;:::-;3418:23;:81::i;:::-;3403:96;;3566:24;3593:31;3607:4;3613:10;;3593:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;3593:31:0;;;;;;:13;:31::i;:::-;3566:58;;1370:1;3641:7;:14;:28;3633:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3793:19;3823:1;3793:32;;3875:9;3887:1;3875:13;;3870:297;3894:7;:14;3890:1;:18;3870:297;;;3942:8;:20;3951:7;3959:1;3951:10;;;;;;;;;;;;;;3942:20;;;;;;;;;;;;;;;;;;;;;;;;;3924:93;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4057:11;4044:24;;:7;4052:1;4044:10;;;;;;;;;;;;;;:24;;;4026:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4149:7;4157:1;4149:10;;;;;;;;;;;;;;4135:24;;3910:3;;;;;;;3870:297;;;;4232:6;;:8;;;;;;;;;;;;;1196:42;4271:17;;4293:8;4303:4;;4271:37;;;;;30:3:-1;22:6;14;1:33;57:3;49:6;45:16;35:26;;4271:37:0;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;4247:61:0;;;;;;;;2992:1322;;;;;;;;;;;;:::o;4320:337::-;4456:12;4605:4;4612:5;4619:8;4629;4639:4;4580:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4580:64:0;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4580:64:0;;;4562:89;;;;;;4555:96;;4320:337;;;;;;:::o;6730:168::-;6800:7;6886:4;6833:58;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;6833:58:0;;;6823:69;;;;;;6816:76;;6730:168;;;:::o;5429:1295::-;5529:24;5655:1;5649:2;5629:10;:17;:22;;;;;;:27;5625:73;;5688:1;5674:16;;;;;;;;;;;;;;;;;;;;;;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;5674:16:0;;;;5667:23;;;;5625:73;5824:2;5804:10;:17;:22;;;;;;5790:37;;;;;;;;;;;;;;;;;;;;;;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;5790:37:0;;;;5780:47;;5910:25;5942:9;5958;5974:7;5995:9;6007:1;5995:13;;5990:729;6014:7;:14;6010:1;:18;5990:729;;;6108:2;6105:1;6101:10;6089;6085:27;6064:48;;6156:2;6137:17;6133:26;6127:33;6122:38;;6204:2;6185:17;6181:26;6175:33;6170:38;;6260:2;6241:17;6237:26;6231:33;6228:1;6223:42;6218:47;;6435:66;6430:1;6422:10;;:79;6418:114;;;6514:8;;6418:114;6551:2;6546:1;:7;;;;:18;;;;;6562:2;6557:1;:7;;;;6546:18;6542:53;;;6577:8;;6542:53;6687:24;6697:4;6703:1;6706;6709;6687:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6687:24:0;;;;;;;;6674:7;6682:1;6674:10;;;;;;;;;;;;;:37;;;;;;;;;;;5990:729;6030:3;;;;;;;5990:729;;;;5429:1295;;;;;;;;;:::o
Swarm Source
bzzr://16708ccf3d3fe847a31bdde4013bb18f0d71bda5e25122fac0e197ba0d5cdca6
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.