Overview
APE Balance
0 APE
APE Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0x60806040 | 5017350 | 20 hrs ago | IN | 0 APE | 0.0189498 |
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Source Code Verified (Exact Match)
Contract Name:
MintpadFactory
Compiler Version
v0.8.28+commit.7893614a
Optimization Enabled:
Yes with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.28; import "@openzeppelin/contracts/proxy/Clones.sol"; import "../utils/OperatedOwnable.sol"; import "../utils/Versioning.sol"; contract MintpadFactory is OperatedOwnable, Versioning { // Event emitted when a clone is created event CloneCreated(address cloneAddress); // Set the owner of the contract constructor( address owner, address operator ) OperatedOwnable(owner, operator) { _setVersion("1.0.0"); } // Create a clone of the implementation contract function clone( address _implementation, bytes memory _initData ) external onlyOperator returns (address cloneAddress) { // Clone the implementation contract cloneAddress = Clones.clone(_implementation); // Initialize the clone (bool success, ) = cloneAddress.call(_initData); require(success, "MintpadFactory: failed to initialize clone"); // Emit an event emit CloneCreated(cloneAddress); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (proxy/Clones.sol) pragma solidity ^0.8.0; /** * @dev https://eips.ethereum.org/EIPS/eip-1167[EIP 1167] is a standard for * deploying minimal proxy contracts, also known as "clones". * * > To simply and cheaply clone contract functionality in an immutable way, this standard specifies * > a minimal bytecode implementation that delegates all calls to a known, fixed address. * * The library includes functions to deploy a proxy using either `create` (traditional deployment) or `create2` * (salted deterministic deployment). It also includes functions to predict the addresses of clones deployed using the * deterministic method. * * _Available since v3.4._ */ library Clones { /** * @dev Deploys and returns the address of a clone that mimics the behaviour of `implementation`. * * This function uses the create opcode, which should never revert. */ function clone(address implementation) internal returns (address instance) { /// @solidity memory-safe-assembly assembly { // Cleans the upper 96 bits of the `implementation` word, then packs the first 3 bytes // of the `implementation` address with the bytecode before the address. mstore(0x00, or(shr(0xe8, shl(0x60, implementation)), 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000)) // Packs the remaining 17 bytes of `implementation` with the bytecode after the address. mstore(0x20, or(shl(0x78, implementation), 0x5af43d82803e903d91602b57fd5bf3)) instance := create(0, 0x09, 0x37) } require(instance != address(0), "ERC1167: create failed"); } /** * @dev Deploys and returns the address of a clone that mimics the behaviour of `implementation`. * * This function uses the create2 opcode and a `salt` to deterministically deploy * the clone. Using the same `implementation` and `salt` multiple time will revert, since * the clones cannot be deployed twice at the same address. */ function cloneDeterministic(address implementation, bytes32 salt) internal returns (address instance) { /// @solidity memory-safe-assembly assembly { // Cleans the upper 96 bits of the `implementation` word, then packs the first 3 bytes // of the `implementation` address with the bytecode before the address. mstore(0x00, or(shr(0xe8, shl(0x60, implementation)), 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000)) // Packs the remaining 17 bytes of `implementation` with the bytecode after the address. mstore(0x20, or(shl(0x78, implementation), 0x5af43d82803e903d91602b57fd5bf3)) instance := create2(0, 0x09, 0x37, salt) } require(instance != address(0), "ERC1167: create2 failed"); } /** * @dev Computes the address of a clone deployed using {Clones-cloneDeterministic}. */ function predictDeterministicAddress( address implementation, bytes32 salt, address deployer ) internal pure returns (address predicted) { /// @solidity memory-safe-assembly assembly { let ptr := mload(0x40) mstore(add(ptr, 0x38), deployer) mstore(add(ptr, 0x24), 0x5af43d82803e903d91602b57fd5bf3ff) mstore(add(ptr, 0x14), implementation) mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73) mstore(add(ptr, 0x58), salt) mstore(add(ptr, 0x78), keccak256(add(ptr, 0x0c), 0x37)) predicted := keccak256(add(ptr, 0x43), 0x55) } } /** * @dev Computes the address of a clone deployed using {Clones-cloneDeterministic}. */ function predictDeterministicAddress( address implementation, bytes32 salt ) internal view returns (address predicted) { return predictDeterministicAddress(implementation, salt, address(this)); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } function _contextSuffixLength() internal view virtual returns (uint256) { return 0; } }
// SPDX-License-Identifier: MIT pragma solidity 0.8.28; import "@openzeppelin/contracts/access/Ownable.sol"; contract OperatedOwnable is Ownable { // Mapping to store multiple operators mapping(address => bool) private _operators; // Events to track operator changes event OperatorAdded(address indexed operator); event OperatorRemoved(address indexed operator); event OperatorTransferred( address indexed previousOperator, address indexed newOperator ); // Modifier to restrict access to only operators modifier onlyOperator() { require( isOperator(msg.sender), "OperatorManager: caller is not an operator" ); _; } // Constructor to set the owner and operator constructor(address owner, address operator) { require( operator != address(0), "OperatorManager: operator is the zero address" ); _operators[operator] = true; _transferOwnership(owner); // Transfer ownership to the specified owner } // Function to check if an address is an operator function isOperator(address account) public view returns (bool) { return _operators[account]; } // Function to allow the owner to add a new operator function addOperator(address operator) public onlyOwner { require( operator != address(0), "OperatorManager: operator is the zero address" ); require( !_operators[operator], "OperatorManager: operator already exists" ); _operators[operator] = true; emit OperatorAdded(operator); } // Function to allow the owner to remove an operator function removeOperator(address operator) public onlyOwner { require( _operators[operator], "OperatorManager: operator does not exist" ); _operators[operator] = false; emit OperatorRemoved(operator); } // Function to renounce operator status (called by the operator themselves) function renounceOperator() public onlyOperator { _operators[msg.sender] = false; emit OperatorRemoved(msg.sender); } // Function to transfer the operator role by the current operator function transferOperator(address newOperator) public onlyOperator { require( newOperator != address(0), "OperatorManager: new operator is the zero address" ); emit OperatorTransferred(msg.sender, newOperator); _operators[msg.sender] = false; _operators[newOperator] = true; } }
// SPDX-License-Identifier: MIT pragma solidity 0.8.28; abstract contract Versioning { // The version of the contract string public version; constructor() {} // Set the version of the contract function _setVersion(string memory _version) internal { version = _version; } }
{ "optimizer": { "enabled": true, "runs": 200 }, "evmVersion": "paris", "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"cloneAddress","type":"address"}],"name":"CloneCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"OperatorAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"OperatorRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOperator","type":"address"},{"indexed":true,"internalType":"address","name":"newOperator","type":"address"}],"name":"OperatorTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"addOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_implementation","type":"address"},{"internalType":"bytes","name":"_initData","type":"bytes"}],"name":"clone","outputs":[{"internalType":"address","name":"cloneAddress","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"removeOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOperator","type":"address"}],"name":"transferOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051610e22380380610e2283398101604081905261002f91610183565b818161003a33610107565b6001600160a01b0381166100aa5760405162461bcd60e51b815260206004820152602d60248201527f4f70657261746f724d616e616765723a206f70657261746f722069732074686560448201526c207a65726f206164647265737360981b606482015260840160405180910390fd5b6001600160a01b0381166000908152600160208190526040909120805460ff191690911790556100d982610107565b50506040805180820190915260058152640312e302e360dc1b602082015261010090610157565b5050610313565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60026101638282610255565b5050565b80516001600160a01b038116811461017e57600080fd5b919050565b6000806040838503121561019657600080fd5b61019f83610167565b91506101ad60208401610167565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806101e057607f821691505b60208210810361020057634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111561025057806000526020600020601f840160051c8101602085101561022d5750805b601f840160051c820191505b8181101561024d5760008155600101610239565b50505b505050565b81516001600160401b0381111561026e5761026e6101b6565b6102828161027c84546101cc565b84610206565b6020601f8211600181146102b6576000831561029e5750848201515b600019600385901b1c1916600184901b17845561024d565b600084815260208120601f198516915b828110156102e657878501518255602094850194600190920191016102c6565b50848210156103045786840151600019600387901b60f8161c191681555b50505050600190811b01905550565b610b00806103226000396000f3fe608060405234801561001057600080fd5b506004361061009e5760003560e01c8063715018a611610066578063715018a6146101415780638da5cb5b146101495780639870d7fe1461015a578063ac8a584a1461016d578063f2fde38b1461018057600080fd5b80630fbe133c146100a357806329605e77146100d35780632ab6f8db146100e857806354fd4d50146100f05780636d70f7ae14610105575b600080fd5b6100b66100b13660046108e7565b610193565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e66100e13660046109b1565b6102d9565b005b6100e66103e6565b6100f8610454565b6040516100ca91906109f7565b6101316101133660046109b1565b6001600160a01b031660009081526001602052604090205460ff1690565b60405190151581526020016100ca565b6100e66104e2565b6000546001600160a01b03166100b6565b6100e66101683660046109b1565b6104f6565b6100e661017b3660046109b1565b610633565b6100e661018e3660046109b1565b6106fd565b3360009081526001602052604081205460ff166101cb5760405162461bcd60e51b81526004016101c290610a2a565b60405180910390fd5b6101d483610776565b90506000816001600160a01b0316836040516101f09190610a74565b6000604051808303816000865af19150503d806000811461022d576040519150601f19603f3d011682016040523d82523d6000602084013e610232565b606091505b50509050806102965760405162461bcd60e51b815260206004820152602a60248201527f4d696e74706164466163746f72793a206661696c656420746f20696e697469616044820152696c697a6520636c6f6e6560b01b60648201526084016101c2565b6040516001600160a01b03831681527fbe2f3d28fdeb5839123d65fd47ec2f5915c715d2b527b9e229123706fdecfc859060200160405180910390a15092915050565b3360009081526001602052604090205460ff166103085760405162461bcd60e51b81526004016101c290610a2a565b6001600160a01b0381166103785760405162461bcd60e51b815260206004820152603160248201527f4f70657261746f724d616e616765723a206e6577206f70657261746f7220697360448201527020746865207a65726f206164647265737360781b60648201526084016101c2565b6040516001600160a01b0382169033907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a3336000908152600160208190526040808320805460ff199081169091556001600160a01b039490941683529091208054909216179055565b3360009081526001602052604090205460ff166104155760405162461bcd60e51b81526004016101c290610a2a565b33600081815260016020526040808220805460ff19169055517f80c0b871b97b595b16a7741c1b06fed0c6f6f558639f18ccbce50724325dc40d9190a2565b6002805461046190610a90565b80601f016020809104026020016040519081016040528092919081815260200182805461048d90610a90565b80156104da5780601f106104af576101008083540402835291602001916104da565b820191906000526020600020905b8154815290600101906020018083116104bd57829003601f168201915b505050505081565b6104ea610810565b6104f4600061086a565b565b6104fe610810565b6001600160a01b03811661056a5760405162461bcd60e51b815260206004820152602d60248201527f4f70657261746f724d616e616765723a206f70657261746f722069732074686560448201526c207a65726f206164647265737360981b60648201526084016101c2565b6001600160a01b03811660009081526001602052604090205460ff16156105e45760405162461bcd60e51b815260206004820152602860248201527f4f70657261746f724d616e616765723a206f70657261746f7220616c72656164604482015267792065786973747360c01b60648201526084016101c2565b6001600160a01b0381166000818152600160208190526040808320805460ff1916909217909155517fac6fa858e9350a46cec16539926e0fde25b7629f84b5a72bffaae4df888ae86d9190a250565b61063b610810565b6001600160a01b03811660009081526001602052604090205460ff166106b45760405162461bcd60e51b815260206004820152602860248201527f4f70657261746f724d616e616765723a206f70657261746f7220646f6573206e6044820152671bdd08195e1a5cdd60c21b60648201526084016101c2565b6001600160a01b038116600081815260016020526040808220805460ff19169055517f80c0b871b97b595b16a7741c1b06fed0c6f6f558639f18ccbce50724325dc40d9190a250565b610705610810565b6001600160a01b03811661076a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101c2565b6107738161086a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b03811661080b5760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016101c2565b919050565b6000546001600160a01b031633146104f45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c2565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461080b57600080fd5b634e487b7160e01b600052604160045260246000fd5b600080604083850312156108fa57600080fd5b610903836108ba565b9150602083013567ffffffffffffffff81111561091f57600080fd5b8301601f8101851361093057600080fd5b803567ffffffffffffffff81111561094a5761094a6108d1565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610979576109796108d1565b60405281815282820160200187101561099157600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312156109c357600080fd5b6109cc826108ba565b9392505050565b60005b838110156109ee5781810151838201526020016109d6565b50506000910152565b6020815260008251806020840152610a168160408501602087016109d3565b601f01601f19169190910160400192915050565b6020808252602a908201527f4f70657261746f724d616e616765723a2063616c6c6572206973206e6f742061604082015269371037b832b930ba37b960b11b606082015260800190565b60008251610a868184602087016109d3565b9190910192915050565b600181811c90821680610aa457607f821691505b602082108103610ac457634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212200192f7ec3f194da9ccf1a263b74f7372aa9cc8c4dd1f16eb796214dadcee164d64736f6c634300081c0033000000000000000000000000eca86f60212d55c64e82e906881ed375d237f025000000000000000000000000eca86f60212d55c64e82e906881ed375d237f025
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061009e5760003560e01c8063715018a611610066578063715018a6146101415780638da5cb5b146101495780639870d7fe1461015a578063ac8a584a1461016d578063f2fde38b1461018057600080fd5b80630fbe133c146100a357806329605e77146100d35780632ab6f8db146100e857806354fd4d50146100f05780636d70f7ae14610105575b600080fd5b6100b66100b13660046108e7565b610193565b6040516001600160a01b0390911681526020015b60405180910390f35b6100e66100e13660046109b1565b6102d9565b005b6100e66103e6565b6100f8610454565b6040516100ca91906109f7565b6101316101133660046109b1565b6001600160a01b031660009081526001602052604090205460ff1690565b60405190151581526020016100ca565b6100e66104e2565b6000546001600160a01b03166100b6565b6100e66101683660046109b1565b6104f6565b6100e661017b3660046109b1565b610633565b6100e661018e3660046109b1565b6106fd565b3360009081526001602052604081205460ff166101cb5760405162461bcd60e51b81526004016101c290610a2a565b60405180910390fd5b6101d483610776565b90506000816001600160a01b0316836040516101f09190610a74565b6000604051808303816000865af19150503d806000811461022d576040519150601f19603f3d011682016040523d82523d6000602084013e610232565b606091505b50509050806102965760405162461bcd60e51b815260206004820152602a60248201527f4d696e74706164466163746f72793a206661696c656420746f20696e697469616044820152696c697a6520636c6f6e6560b01b60648201526084016101c2565b6040516001600160a01b03831681527fbe2f3d28fdeb5839123d65fd47ec2f5915c715d2b527b9e229123706fdecfc859060200160405180910390a15092915050565b3360009081526001602052604090205460ff166103085760405162461bcd60e51b81526004016101c290610a2a565b6001600160a01b0381166103785760405162461bcd60e51b815260206004820152603160248201527f4f70657261746f724d616e616765723a206e6577206f70657261746f7220697360448201527020746865207a65726f206164647265737360781b60648201526084016101c2565b6040516001600160a01b0382169033907f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed90600090a3336000908152600160208190526040808320805460ff199081169091556001600160a01b039490941683529091208054909216179055565b3360009081526001602052604090205460ff166104155760405162461bcd60e51b81526004016101c290610a2a565b33600081815260016020526040808220805460ff19169055517f80c0b871b97b595b16a7741c1b06fed0c6f6f558639f18ccbce50724325dc40d9190a2565b6002805461046190610a90565b80601f016020809104026020016040519081016040528092919081815260200182805461048d90610a90565b80156104da5780601f106104af576101008083540402835291602001916104da565b820191906000526020600020905b8154815290600101906020018083116104bd57829003601f168201915b505050505081565b6104ea610810565b6104f4600061086a565b565b6104fe610810565b6001600160a01b03811661056a5760405162461bcd60e51b815260206004820152602d60248201527f4f70657261746f724d616e616765723a206f70657261746f722069732074686560448201526c207a65726f206164647265737360981b60648201526084016101c2565b6001600160a01b03811660009081526001602052604090205460ff16156105e45760405162461bcd60e51b815260206004820152602860248201527f4f70657261746f724d616e616765723a206f70657261746f7220616c72656164604482015267792065786973747360c01b60648201526084016101c2565b6001600160a01b0381166000818152600160208190526040808320805460ff1916909217909155517fac6fa858e9350a46cec16539926e0fde25b7629f84b5a72bffaae4df888ae86d9190a250565b61063b610810565b6001600160a01b03811660009081526001602052604090205460ff166106b45760405162461bcd60e51b815260206004820152602860248201527f4f70657261746f724d616e616765723a206f70657261746f7220646f6573206e6044820152671bdd08195e1a5cdd60c21b60648201526084016101c2565b6001600160a01b038116600081815260016020526040808220805460ff19169055517f80c0b871b97b595b16a7741c1b06fed0c6f6f558639f18ccbce50724325dc40d9190a250565b610705610810565b6001600160a01b03811661076a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016101c2565b6107738161086a565b50565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008260601b60e81c176000526e5af43d82803e903d91602b57fd5bf38260781b17602052603760096000f090506001600160a01b03811661080b5760405162461bcd60e51b8152602060048201526016602482015275115490cc4c4d8dce8818dc99585d194819985a5b195960521b60448201526064016101c2565b919050565b6000546001600160a01b031633146104f45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016101c2565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b038116811461080b57600080fd5b634e487b7160e01b600052604160045260246000fd5b600080604083850312156108fa57600080fd5b610903836108ba565b9150602083013567ffffffffffffffff81111561091f57600080fd5b8301601f8101851361093057600080fd5b803567ffffffffffffffff81111561094a5761094a6108d1565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610979576109796108d1565b60405281815282820160200187101561099157600080fd5b816020840160208301376000602083830101528093505050509250929050565b6000602082840312156109c357600080fd5b6109cc826108ba565b9392505050565b60005b838110156109ee5781810151838201526020016109d6565b50506000910152565b6020815260008251806020840152610a168160408501602087016109d3565b601f01601f19169190910160400192915050565b6020808252602a908201527f4f70657261746f724d616e616765723a2063616c6c6572206973206e6f742061604082015269371037b832b930ba37b960b11b606082015260800190565b60008251610a868184602087016109d3565b9190910192915050565b600181811c90821680610aa457607f821691505b602082108103610ac457634e487b7160e01b600052602260045260246000fd5b5091905056fea26469706673582212200192f7ec3f194da9ccf1a263b74f7372aa9cc8c4dd1f16eb796214dadcee164d64736f6c634300081c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000eca86f60212d55c64e82e906881ed375d237f025000000000000000000000000eca86f60212d55c64e82e906881ed375d237f025
-----Decoded View---------------
Arg [0] : owner (address): 0xecA86f60212d55C64E82e906881eD375d237f025
Arg [1] : operator (address): 0xecA86f60212d55C64E82e906881eD375d237f025
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000eca86f60212d55c64e82e906881ed375d237f025
Arg [1] : 000000000000000000000000eca86f60212d55c64e82e906881ed375d237f025
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ 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.