Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 9 from a total of 9 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Ownership | 6938919 | 2148 days ago | IN | 0 ETH | 0.00049082 | ||||
Claim Ownership | 6927942 | 2150 days ago | IN | 0 ETH | 0.0008949 | ||||
Add Merchant | 6782395 | 2174 days ago | IN | 0 ETH | 0.00091224 | ||||
Add Merchant | 6782386 | 2174 days ago | IN | 0 ETH | 0.00091224 | ||||
Set Custodian | 6782373 | 2174 days ago | IN | 0 ETH | 0.00044917 | ||||
Transfer Ownersh... | 6782298 | 2174 days ago | IN | 0 ETH | 0.00043788 | ||||
Claim Ownership | 6766419 | 2177 days ago | IN | 0 ETH | 0.00019368 | ||||
Transfer Ownersh... | 6766302 | 2177 days ago | IN | 0 ETH | 0.00043788 | ||||
0x60806040 | 6766288 | 2177 days ago | IN | 0 ETH | 0.00888001 |
Advanced mode: Intended for advanced users or developers and will display all Internal Transactions including zero value transfers. Name tag integration is not available in advanced view.
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | ||||
---|---|---|---|---|---|---|---|
21083565 | 9 days ago | 0 ETH | |||||
21077912 | 10 days ago | 0 ETH | |||||
21075714 | 10 days ago | 0 ETH | |||||
21072749 | 11 days ago | 0 ETH | |||||
21072746 | 11 days ago | 0 ETH | |||||
21070331 | 11 days ago | 0 ETH | |||||
21034729 | 16 days ago | 0 ETH | |||||
21034729 | 16 days ago | 0 ETH | |||||
21020985 | 18 days ago | 0 ETH | |||||
21016511 | 19 days ago | 0 ETH | |||||
21000580 | 21 days ago | 0 ETH | |||||
20994310 | 22 days ago | 0 ETH | |||||
20993399 | 22 days ago | 0 ETH | |||||
20993378 | 22 days ago | 0 ETH | |||||
20993181 | 22 days ago | 0 ETH | |||||
20989157 | 23 days ago | 0 ETH | |||||
20986571 | 23 days ago | 0 ETH | |||||
20986343 | 23 days ago | 0 ETH | |||||
20984919 | 23 days ago | 0 ETH | |||||
20984777 | 23 days ago | 0 ETH | |||||
20984642 | 23 days ago | 0 ETH | |||||
20982815 | 23 days ago | 0 ETH | |||||
20982815 | 23 days ago | 0 ETH | |||||
20982419 | 24 days ago | 0 ETH | |||||
20982213 | 24 days ago | 0 ETH |
Loading...
Loading
Contract Name:
Members
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-11-24 */ pragma solidity 0.4.24; // File: openzeppelin-solidity/contracts/ownership/Ownable.sol /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipRenounced(address indexed previousOwner); event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to relinquish control of the contract. * @notice Renouncing to ownership will leave the contract without an owner. * It will not be possible to call the functions with the `onlyOwner` * modifier anymore. */ function renounceOwnership() public onlyOwner { emit OwnershipRenounced(owner); owner = address(0); } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function transferOwnership(address _newOwner) public onlyOwner { _transferOwnership(_newOwner); } /** * @dev Transfers control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function _transferOwnership(address _newOwner) internal { require(_newOwner != address(0)); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } } // File: openzeppelin-solidity/contracts/ownership/Claimable.sol /** * @title Claimable * @dev Extension for the Ownable contract, where the ownership needs to be claimed. * This allows the new owner to accept the transfer. */ contract Claimable is Ownable { address public pendingOwner; /** * @dev Modifier throws if called by any account other than the pendingOwner. */ modifier onlyPendingOwner() { require(msg.sender == pendingOwner); _; } /** * @dev Allows the current owner to set the pendingOwner address. * @param newOwner The address to transfer ownership to. */ function transferOwnership(address newOwner) public onlyOwner { pendingOwner = newOwner; } /** * @dev Allows the pendingOwner address to finalize the transfer. */ function claimOwnership() public onlyPendingOwner { emit OwnershipTransferred(owner, pendingOwner); owner = pendingOwner; pendingOwner = address(0); } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * See https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { function totalSupply() public view returns (uint256); function balanceOf(address _who) public view returns (uint256); function transfer(address _to, uint256 _value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address _owner, address _spender) public view returns (uint256); function transferFrom(address _from, address _to, uint256 _value) public returns (bool); function approve(address _spender, uint256 _value) public returns (bool); event Approval( address indexed owner, address indexed spender, uint256 value ); } // File: openzeppelin-solidity/contracts/token/ERC20/SafeERC20.sol /** * @title SafeERC20 * @dev Wrappers around ERC20 operations that throw on failure. * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract, * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. */ library SafeERC20 { function safeTransfer( ERC20Basic _token, address _to, uint256 _value ) internal { require(_token.transfer(_to, _value)); } function safeTransferFrom( ERC20 _token, address _from, address _to, uint256 _value ) internal { require(_token.transferFrom(_from, _to, _value)); } function safeApprove( ERC20 _token, address _spender, uint256 _value ) internal { require(_token.approve(_spender, _value)); } } // File: openzeppelin-solidity/contracts/ownership/CanReclaimToken.sol /** * @title Contracts that should be able to recover tokens * @author SylTi * @dev This allow a contract to recover any ERC20 token received in a contract by transferring the balance to the contract owner. * This will prevent any accidental loss of tokens. */ contract CanReclaimToken is Ownable { using SafeERC20 for ERC20Basic; /** * @dev Reclaim all ERC20Basic compatible tokens * @param _token ERC20Basic The address of the token contract */ function reclaimToken(ERC20Basic _token) external onlyOwner { uint256 balance = _token.balanceOf(this); _token.safeTransfer(owner, balance); } } // File: contracts/utils/OwnableContract.sol // empty block is used as this contract just inherits others. contract OwnableContract is CanReclaimToken, Claimable { } /* solhint-disable-line no-empty-blocks */ // File: contracts/utils/IndexedMapping.sol library IndexedMapping { struct Data { mapping(address=>bool) valueExists; mapping(address=>uint) valueIndex; address[] valueList; } function add(Data storage self, address val) internal returns (bool) { if (exists(self, val)) return false; self.valueExists[val] = true; self.valueIndex[val] = self.valueList.push(val) - 1; return true; } function remove(Data storage self, address val) internal returns (bool) { uint index; address lastVal; if (!exists(self, val)) return false; index = self.valueIndex[val]; lastVal = self.valueList[self.valueList.length - 1]; // replace value with last value self.valueList[index] = lastVal; self.valueIndex[lastVal] = index; self.valueList.length--; // remove value delete self.valueExists[val]; delete self.valueIndex[val]; return true; } function exists(Data storage self, address val) internal view returns (bool) { return self.valueExists[val]; } function getValue(Data storage self, uint index) internal view returns (address) { return self.valueList[index]; } function getValueList(Data storage self) internal view returns (address[]) { return self.valueList; } } // File: contracts/factory/MembersInterface.sol interface MembersInterface { function setCustodian(address _custodian) external returns (bool); function addMerchant(address merchant) external returns (bool); function removeMerchant(address merchant) external returns (bool); function isCustodian(address addr) external view returns (bool); function isMerchant(address addr) external view returns (bool); } // File: contracts/factory/Members.sol contract Members is MembersInterface, OwnableContract { address public custodian; using IndexedMapping for IndexedMapping.Data; IndexedMapping.Data internal merchants; constructor(address _owner) public { require(_owner != address(0), "invalid _owner address"); owner = _owner; } event CustodianSet(address indexed custodian); function setCustodian(address _custodian) external onlyOwner returns (bool) { require(_custodian != address(0), "invalid custodian address"); custodian = _custodian; emit CustodianSet(_custodian); return true; } event MerchantAdd(address indexed merchant); function addMerchant(address merchant) external onlyOwner returns (bool) { require(merchant != address(0), "invalid merchant address"); require(merchants.add(merchant), "merchant add failed"); emit MerchantAdd(merchant); return true; } event MerchantRemove(address indexed merchant); function removeMerchant(address merchant) external onlyOwner returns (bool) { require(merchant != address(0), "invalid merchant address"); require(merchants.remove(merchant), "merchant remove failed"); emit MerchantRemove(merchant); return true; } function isCustodian(address addr) external view returns (bool) { return (addr == custodian); } function isMerchant(address addr) external view returns (bool) { return merchants.exists(addr); } function getMerchant(uint index) external view returns (address) { return merchants.getValue(index); } function getMerchants() external view returns (address[]) { return merchants.getValueList(); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"merchant","type":"address"}],"name":"removeMerchant","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"}],"name":"reclaimToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isMerchant","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"isCustodian","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"custodian","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_custodian","type":"address"}],"name":"setCustodian","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"claimOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"index","type":"uint256"}],"name":"getMerchant","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"merchant","type":"address"}],"name":"addMerchant","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getMerchants","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pendingOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_owner","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"custodian","type":"address"}],"name":"CustodianSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"merchant","type":"address"}],"name":"MerchantAdd","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"merchant","type":"address"}],"name":"MerchantRemove","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051602080610ca5833981016040525160008054600160a060020a03191633179055600160a060020a03811615156100ab57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f696e76616c6964205f6f776e6572206164647265737300000000000000000000604482015290519081900360640190fd5b60008054600160a060020a03909216600160a060020a0319909216919091179055610bca806100db6000396000f3006080604052600436106100cf5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663133adab681146100d457806317ffc320146101095780631a2f71671461012c57806335c80c8c1461014d578063375b74c31461016e578063403f37311461019f5780634e71e0c8146101c05780635d32798a146101d5578063715018a6146101ed5780638da5cb5b14610202578063bf76c0ef14610217578063e2d1800f14610238578063e30c39781461029d578063f2fde38b146102b2575b600080fd5b3480156100e057600080fd5b506100f5600160a060020a03600435166102d3565b604080519115158252519081900360200190f35b34801561011557600080fd5b5061012a600160a060020a03600435166103ee565b005b34801561013857600080fd5b506100f5600160a060020a03600435166104ba565b34801561015957600080fd5b506100f5600160a060020a03600435166104d3565b34801561017a57600080fd5b506101836104e7565b60408051600160a060020a039092168252519081900360200190f35b3480156101ab57600080fd5b506100f5600160a060020a03600435166104f6565b3480156101cc57600080fd5b5061012a6105ca565b3480156101e157600080fd5b50610183600435610652565b3480156101f957600080fd5b5061012a610665565b34801561020e57600080fd5b506101836106d1565b34801561022357600080fd5b506100f5600160a060020a03600435166106e0565b34801561024457600080fd5b5061024d6107fb565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015610289578181015183820152602001610271565b505050509050019250505060405180910390f35b3480156102a957600080fd5b5061018361080d565b3480156102be57600080fd5b5061012a600160a060020a036004351661081c565b60008054600160a060020a031633146102eb57600080fd5b600160a060020a038216151561034b576040805160e560020a62461bcd02815260206004820152601860248201527f696e76616c6964206d65726368616e7420616464726573730000000000000000604482015290519081900360640190fd5b61035c60038363ffffffff61086216565b15156103b2576040805160e560020a62461bcd02815260206004820152601660248201527f6d65726368616e742072656d6f7665206661696c656400000000000000000000604482015290519081900360640190fd5b604051600160a060020a038316907f992dc0f9ccd9e3a061bd113c6caf19dceacce1f3e2ec016588b03ade3649d00490600090a2506001919050565b60008054600160a060020a0316331461040657600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b15801561046757600080fd5b505af115801561047b573d6000803e3d6000fd5b505050506040513d602081101561049157600080fd5b50516000549091506104b690600160a060020a0384811691168363ffffffff61097616565b5050565b60006104cd60038363ffffffff610a2e16565b92915050565b600254600160a060020a0390811691161490565b600254600160a060020a031681565b60008054600160a060020a0316331461050e57600080fd5b600160a060020a038216151561056e576040805160e560020a62461bcd02815260206004820152601960248201527f696e76616c696420637573746f6469616e206164647265737300000000000000604482015290519081900360640190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384169081179091556040517fb88c20a211c5d7677ba2a26c317d8ae6b25aa492016dc8ceca2469761d063d8090600090a2506001919050565b600154600160a060020a031633146105e157600080fd5b60015460008054604051600160a060020a0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60006104cd60038363ffffffff610a4d16565b600054600160a060020a0316331461067c57600080fd5b60008054604051600160a060020a03909116917ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482091a26000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600054600160a060020a031681565b60008054600160a060020a031633146106f857600080fd5b600160a060020a0382161515610758576040805160e560020a62461bcd02815260206004820152601860248201527f696e76616c6964206d65726368616e7420616464726573730000000000000000604482015290519081900360640190fd5b61076960038363ffffffff610a7c16565b15156107bf576040805160e560020a62461bcd02815260206004820152601360248201527f6d65726368616e7420616464206661696c656400000000000000000000000000604482015290519081900360640190fd5b604051600160a060020a038316907fc596bdf76682c6315371c70f872bf03746834f9dd5d02793d07de0d5e8f4015590600090a2506001919050565b60606108076003610afb565b90505b90565b600154600160a060020a031681565b600054600160a060020a0316331461083357600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008060006108718585610a2e565b1515610880576000925061096e565b600160a060020a03841660009081526001860160205260409020546002860180549193509060001981019081106108b357fe5b600091825260209091200154600286018054600160a060020a0390921692508291849081106108de57fe5b6000918252602080832091909101805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03948516179055918316815260018701909152604090208290556002850180549061093b906000198301610b61565b50600160a060020a038416600090815260208681526040808320805460ff19169055600180890190925282209190915592505b505092915050565b82600160a060020a031663a9059cbb83836040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b1580156109f257600080fd5b505af1158015610a06573d6000803e3d6000fd5b505050506040513d6020811015610a1c57600080fd5b50511515610a2957600080fd5b505050565b600160a060020a03166000908152602091909152604090205460ff1690565b60008260020182815481101515610a6057fe5b600091825260209091200154600160a060020a03169392505050565b6000610a888383610a2e565b15610a95575060006104cd565b50600160a060020a0316600081815260208381526040808320805460ff1916600190811790915560028601805480830182559085528385208101805473ffffffffffffffffffffffffffffffffffffffff19168717905594845294850190915290205590565b606081600201805480602002602001604051908101604052809291908181526020018280548015610b5557602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610b37575b50505050509050919050565b815481835581811115610a2957600083815260209020610a2991810190830161080a91905b80821115610b9a5760008155600101610b86565b50905600a165627a7a7230582033456616b5216df619b7f682177f328d3eaee7dd2d0311229e961a367dcf3cc200290000000000000000000000008b41783ad99fcbeb8d575fa7a7b5a04fa0b8d80b
Deployed Bytecode
0x6080604052600436106100cf5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663133adab681146100d457806317ffc320146101095780631a2f71671461012c57806335c80c8c1461014d578063375b74c31461016e578063403f37311461019f5780634e71e0c8146101c05780635d32798a146101d5578063715018a6146101ed5780638da5cb5b14610202578063bf76c0ef14610217578063e2d1800f14610238578063e30c39781461029d578063f2fde38b146102b2575b600080fd5b3480156100e057600080fd5b506100f5600160a060020a03600435166102d3565b604080519115158252519081900360200190f35b34801561011557600080fd5b5061012a600160a060020a03600435166103ee565b005b34801561013857600080fd5b506100f5600160a060020a03600435166104ba565b34801561015957600080fd5b506100f5600160a060020a03600435166104d3565b34801561017a57600080fd5b506101836104e7565b60408051600160a060020a039092168252519081900360200190f35b3480156101ab57600080fd5b506100f5600160a060020a03600435166104f6565b3480156101cc57600080fd5b5061012a6105ca565b3480156101e157600080fd5b50610183600435610652565b3480156101f957600080fd5b5061012a610665565b34801561020e57600080fd5b506101836106d1565b34801561022357600080fd5b506100f5600160a060020a03600435166106e0565b34801561024457600080fd5b5061024d6107fb565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015610289578181015183820152602001610271565b505050509050019250505060405180910390f35b3480156102a957600080fd5b5061018361080d565b3480156102be57600080fd5b5061012a600160a060020a036004351661081c565b60008054600160a060020a031633146102eb57600080fd5b600160a060020a038216151561034b576040805160e560020a62461bcd02815260206004820152601860248201527f696e76616c6964206d65726368616e7420616464726573730000000000000000604482015290519081900360640190fd5b61035c60038363ffffffff61086216565b15156103b2576040805160e560020a62461bcd02815260206004820152601660248201527f6d65726368616e742072656d6f7665206661696c656400000000000000000000604482015290519081900360640190fd5b604051600160a060020a038316907f992dc0f9ccd9e3a061bd113c6caf19dceacce1f3e2ec016588b03ade3649d00490600090a2506001919050565b60008054600160a060020a0316331461040657600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a038416916370a082319160248083019260209291908290030181600087803b15801561046757600080fd5b505af115801561047b573d6000803e3d6000fd5b505050506040513d602081101561049157600080fd5b50516000549091506104b690600160a060020a0384811691168363ffffffff61097616565b5050565b60006104cd60038363ffffffff610a2e16565b92915050565b600254600160a060020a0390811691161490565b600254600160a060020a031681565b60008054600160a060020a0316331461050e57600080fd5b600160a060020a038216151561056e576040805160e560020a62461bcd02815260206004820152601960248201527f696e76616c696420637573746f6469616e206164647265737300000000000000604482015290519081900360640190fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384169081179091556040517fb88c20a211c5d7677ba2a26c317d8ae6b25aa492016dc8ceca2469761d063d8090600090a2506001919050565b600154600160a060020a031633146105e157600080fd5b60015460008054604051600160a060020a0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60006104cd60038363ffffffff610a4d16565b600054600160a060020a0316331461067c57600080fd5b60008054604051600160a060020a03909116917ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482091a26000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600054600160a060020a031681565b60008054600160a060020a031633146106f857600080fd5b600160a060020a0382161515610758576040805160e560020a62461bcd02815260206004820152601860248201527f696e76616c6964206d65726368616e7420616464726573730000000000000000604482015290519081900360640190fd5b61076960038363ffffffff610a7c16565b15156107bf576040805160e560020a62461bcd02815260206004820152601360248201527f6d65726368616e7420616464206661696c656400000000000000000000000000604482015290519081900360640190fd5b604051600160a060020a038316907fc596bdf76682c6315371c70f872bf03746834f9dd5d02793d07de0d5e8f4015590600090a2506001919050565b60606108076003610afb565b90505b90565b600154600160a060020a031681565b600054600160a060020a0316331461083357600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008060006108718585610a2e565b1515610880576000925061096e565b600160a060020a03841660009081526001860160205260409020546002860180549193509060001981019081106108b357fe5b600091825260209091200154600286018054600160a060020a0390921692508291849081106108de57fe5b6000918252602080832091909101805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03948516179055918316815260018701909152604090208290556002850180549061093b906000198301610b61565b50600160a060020a038416600090815260208681526040808320805460ff19169055600180890190925282209190915592505b505092915050565b82600160a060020a031663a9059cbb83836040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b1580156109f257600080fd5b505af1158015610a06573d6000803e3d6000fd5b505050506040513d6020811015610a1c57600080fd5b50511515610a2957600080fd5b505050565b600160a060020a03166000908152602091909152604090205460ff1690565b60008260020182815481101515610a6057fe5b600091825260209091200154600160a060020a03169392505050565b6000610a888383610a2e565b15610a95575060006104cd565b50600160a060020a0316600081815260208381526040808320805460ff1916600190811790915560028601805480830182559085528385208101805473ffffffffffffffffffffffffffffffffffffffff19168717905594845294850190915290205590565b606081600201805480602002602001604051908101604052809291908181526020018280548015610b5557602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610b37575b50505050509050919050565b815481835581811115610a2957600083815260209020610a2991810190830161080a91905b80821115610b9a5760008155600101610b86565b50905600a165627a7a7230582033456616b5216df619b7f682177f328d3eaee7dd2d0311229e961a367dcf3cc20029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008b41783ad99fcbeb8d575fa7a7b5a04fa0b8d80b
-----Decoded View---------------
Arg [0] : _owner (address): 0x8b41783AD99FCBeB8d575fA7A7b5a04fA0b8d80b
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000008b41783ad99fcbeb8d575fa7a7b5a04fa0b8d80b
Swarm Source
bzzr://33456616b5216df619b7f682177f328d3eaee7dd2d0311229e961a367dcf3cc2
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.