Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 1 from a total of 1 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
0x60806040 | 13398726 | 997 days ago | IN | Create: CollectorPool | 0 ETH | 0.14323755 |
Loading...
Loading
Contract Name:
CollectorPool
Compiler Version
v0.8.9+commit.e5eed63a
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "./Ownable.sol"; import "./ReentrancyGuard.sol"; import "./IOre.sol"; contract CollectorPool is Ownable, ReentrancyGuard { // Ore token contract interface IOre public ore; // Determines if collectors can deposit ore to be burnt bool private _openForBurning; // Keeps track fo the currently active launch counter uint256 private _currentLaunch; // Keeps track of whitelisted fund sources mapping (address => bool) public fundAddresses; // Keeps track of when an address last claimed their shares from the pool mapping (address => uint256) private _lastClaimedByAddress; // Keeps track of the total burnt ore by an address for each launch mapping (address => mapping (uint256 => uint256)) private _burntOreByAddress; // Keeps track of the total burnt ore in each launch mapping (uint256 => uint256) private _totalBurntOreByLaunch; // Keeps track of the total funds received in each launch mapping (uint256 => uint256) private _totalFundsByLaunch; constructor(address _ore) { ore = IOre(_ore); } function currentLaunch() external view returns (uint256) { return _currentLaunch; } function openForBurning() external view returns (bool) { return _openForBurning; } function setBurningState(bool _state) external onlyOwner { require(_openForBurning != _state, "Invalid State"); _openForBurning = _state; } function setCurrentLaunch(uint256 _launch) external onlyOwner { require(_currentLaunch < _launch, "Invalud Launch Number"); _currentLaunch = _launch; } function setFundAddress(address _address, bool _state) external onlyOwner { require(_address != address(0), "Invalid Address"); if (fundAddresses[_address] != _state) { fundAddresses[_address] = _state; } } function lastClaimedByAddress(address _address) external view returns (uint256) { return _lastClaimedByAddress[_address]; } function burntOreByAddress(address _address, uint256 _launch) external view returns (uint256) { return _burntOreByAddress[_address][_launch]; } function totalBurntOreByLaunch(uint256 _launch) external view returns (uint256) { return _totalBurntOreByLaunch[_launch]; } // Deposits ore to be burned function burnOre(uint256 _amount) external nonReentrant { require(_openForBurning, "Not Open For Burning"); require(_amount > 0, "Invalid Ore Amount"); require(ore.balanceOf(msg.sender) >= _amount, "Insufficient Ore"); ore.burn(msg.sender, _amount); _burntOreByAddress[msg.sender][_currentLaunch] += _amount; _totalBurntOreByLaunch[_currentLaunch] += _amount; } // Calculates and returns the total amount of claimable funds for the specified account function totalClaimableByAccount(address _account) public view returns (uint256, uint256) { uint256 totalClaimable = 0; uint256 lastClaimed = _lastClaimedByAddress[_account]; uint256 lastAvailableClaim = 0; for (uint256 i = lastClaimed + 1; i <= _currentLaunch ; i++) { if (_totalBurntOreByLaunch[i] == 0 || _totalFundsByLaunch[i] == 0) { continue; } lastAvailableClaim = i; uint256 claimable = (_burntOreByAddress[_account][i] * _totalFundsByLaunch[i]) / _totalBurntOreByLaunch[i]; if (claimable > 0) { totalClaimable += claimable; } } return (totalClaimable, lastAvailableClaim); } // Can be called by collectors for claiming funds from the ore burning mechanism function claim() external nonReentrant { uint256 totalClaimable; uint256 lastAvailableClaim; (totalClaimable, lastAvailableClaim) = totalClaimableByAccount(msg.sender); require(totalClaimable > 0, "Insufficient Claimable Funds"); _lastClaimedByAddress[msg.sender] = lastAvailableClaim; payable(msg.sender).transfer(totalClaimable); } // Handles funds received for the pool receive() external payable { // Make sure enough funds are sent, and the source is whitelisted require(msg.value > 0, "Insufficient Funds"); require(fundAddresses[msg.sender], "Invalid Fund Address"); // Update the total received funds for the currently open launch _totalFundsByLaunch[_currentLaunch] += msg.value; } }
// SPDX-License-Identifier: MIT 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; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface IOre { function balanceOf(address owner) external view returns (uint256); function mint(address account, uint256 amount) external; function burn(address account, uint256 amount) external; }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "./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() { _setOwner(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _setOwner(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"); _setOwner(newOwner); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev Contract module that helps prevent reentrant calls to a function. * * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier * available, which can be applied to functions to make sure there are no nested * (reentrant) calls to them. * * Note that because there is a single `nonReentrant` guard, functions marked as * `nonReentrant` may not call one another. This can be worked around by making * those functions `private`, and then adding `external` `nonReentrant` entry * points to them. * * TIP: If you would like to learn more about reentrancy and alternative ways * to protect against it, check out our blog post * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul]. */ abstract contract ReentrancyGuard { // Booleans are more expensive than uint256 or any type that takes up a full // word because each write operation emits an extra SLOAD to first read the // slot's contents, replace the bits taken up by the boolean, and then write // back. This is the compiler's defense against contract upgrades and // pointer aliasing, and it cannot be disabled. // The values being non-zero value makes deployment a bit more expensive, // but in exchange the refund on every call to nonReentrant will be lower in // amount. Since refunds are capped to a percentage of the total // transaction's gas, it is best to keep them low in cases like this one, to // increase the likelihood of the full refund coming into effect. uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor() { _status = _NOT_ENTERED; } /** * @dev Prevents a contract from calling itself, directly or indirectly. * Calling a `nonReentrant` function from another `nonReentrant` * function is not supported. It is possible to prevent this from happening * by making the `nonReentrant` function external, and make it call a * `private` function that does the actual work. */ modifier nonReentrant() { // On the first call to nonReentrant, _notEntered will be true require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; _; // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_ore","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"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":"uint256","name":"_amount","type":"uint256"}],"name":"burnOre","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"_launch","type":"uint256"}],"name":"burntOreByAddress","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"currentLaunch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"fundAddresses","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"lastClaimedByAddress","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openForBurning","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ore","outputs":[{"internalType":"contract IOre","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_state","type":"bool"}],"name":"setBurningState","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_launch","type":"uint256"}],"name":"setCurrentLaunch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_state","type":"bool"}],"name":"setFundAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_launch","type":"uint256"}],"name":"totalBurntOreByLaunch","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"totalClaimableByAccount","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051610fff380380610fff83398101604081905261002f916100b1565b61003833610061565b60018055600280546001600160a01b0319166001600160a01b03929092169190911790556100e1565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100c357600080fd5b81516001600160a01b03811681146100da57600080fd5b9392505050565b610f0f806100f06000396000f3fe6080604052600436106100f75760003560e01c80638688b76b1161008a578063de7f4d4711610059578063de7f4d47146103c0578063e51dfd50146103ed578063e96a6c8b1461041d578063f2fde38b1461043d57600080fd5b80638688b76b1461031f5780638c16300d1461033f5780638da5cb5b14610377578063b2898e961461039557600080fd5b8063528f3e23116100c6578063528f3e231461027f57806354ff108f146102b5578063715018a6146102d557806371d54156146102ea57600080fd5b80630d9fc462146101dd5780633a463297146102335780634c21baf8146102555780634e71d92d1461026a57600080fd5b366101d857600034116101515760405162461bcd60e51b815260206004820152601260248201527f496e73756666696369656e742046756e6473000000000000000000000000000060448201526064015b60405180910390fd5b3360009081526004602052604090205460ff166101b05760405162461bcd60e51b815260206004820152601460248201527f496e76616c69642046756e6420416464726573730000000000000000000000006044820152606401610148565b600354600090815260086020526040812080543492906101d1908490610d6d565b9091555050005b600080fd5b3480156101e957600080fd5b506102206101f8366004610da1565b6001600160a01b03919091166000908152600660209081526040808320938352929052205490565b6040519081526020015b60405180910390f35b34801561023f57600080fd5b5061025361024e366004610dcb565b61045d565b005b34801561026157600080fd5b50600354610220565b34801561027657600080fd5b5061025361050d565b34801561028b57600080fd5b5061022061029a366004610de4565b6001600160a01b031660009081526005602052604090205490565b3480156102c157600080fd5b506102536102d0366004610dcb565b610607565b3480156102e157600080fd5b506102536108c6565b3480156102f657600080fd5b5061030a610305366004610de4565b61092c565b6040805192835260208301919091520161022a565b34801561032b57600080fd5b5061025361033a366004610e16565b610a1a565b34801561034b57600080fd5b5060025461035f906001600160a01b031681565b6040516001600160a01b03909116815260200161022a565b34801561038357600080fd5b506000546001600160a01b031661035f565b3480156103a157600080fd5b50600254600160a01b900460ff165b604051901515815260200161022a565b3480156103cc57600080fd5b506102206103db366004610dcb565b60009081526007602052604090205490565b3480156103f957600080fd5b506103b0610408366004610de4565b60046020526000908152604090205460ff1681565b34801561042957600080fd5b50610253610438366004610e31565b610b0e565b34801561044957600080fd5b50610253610458366004610de4565b610c0d565b6000546001600160a01b031633146104b75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b80600354106105085760405162461bcd60e51b815260206004820152601560248201527f496e76616c7564204c61756e6368204e756d62657200000000000000000000006044820152606401610148565b600355565b600260015414156105605760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610148565b60026001556000806105713361092c565b9092509050816105c35760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e7420436c61696d61626c652046756e6473000000006044820152606401610148565b336000818152600560205260408082208490555184156108fc0291859190818181858888f193505050501580156105fe573d6000803e3d6000fd5b50506001805550565b6002600154141561065a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610148565b6002600181905554600160a01b900460ff166106b85760405162461bcd60e51b815260206004820152601460248201527f4e6f74204f70656e20466f72204275726e696e670000000000000000000000006044820152606401610148565b600081116107085760405162461bcd60e51b815260206004820152601260248201527f496e76616c6964204f726520416d6f756e7400000000000000000000000000006044820152606401610148565b6002546040517f70a0823100000000000000000000000000000000000000000000000000000000815233600482015282916001600160a01b0316906370a082319060240160206040518083038186803b15801561076457600080fd5b505afa158015610778573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079c9190610e64565b10156107ea5760405162461bcd60e51b815260206004820152601060248201527f496e73756666696369656e74204f7265000000000000000000000000000000006044820152606401610148565b6002546040517f9dc29fac000000000000000000000000000000000000000000000000000000008152336004820152602481018390526001600160a01b0390911690639dc29fac90604401600060405180830381600087803b15801561084f57600080fd5b505af1158015610863573d6000803e3d6000fd5b5050336000908152600660209081526040808320600354845290915281208054859450909250610894908490610d6d565b9091555050600354600090815260076020526040812080548392906108ba908490610d6d565b90915550506001805550565b6000546001600160a01b031633146109205760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b61092a6000610cef565b565b6001600160a01b038116600090815260056020526040812054819081908180610956836001610d6d565b90505b6003548111610a0d5760008181526007602052604090205415806109895750600081815260086020526040902054155b15610993576109fb565b60008181526007602090815260408083205460088352818420546001600160a01b038c1685526006845282852086865290935290832054939450849390916109da91610e7d565b6109e49190610e9c565b905080156109f9576109f68186610d6d565b94505b505b80610a0581610ebe565b915050610959565b5091959194509092505050565b6000546001600160a01b03163314610a745760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b60025460ff600160a01b9091041615158115151415610ad55760405162461bcd60e51b815260206004820152600d60248201527f496e76616c6964205374617465000000000000000000000000000000000000006044820152606401610148565b60028054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b6000546001600160a01b03163314610b685760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b6001600160a01b038216610bbe5760405162461bcd60e51b815260206004820152600f60248201527f496e76616c6964204164647265737300000000000000000000000000000000006044820152606401610148565b6001600160a01b03821660009081526004602052604090205460ff16151581151514610c09576001600160a01b0382166000908152600460205260409020805460ff19168215151790555b5050565b6000546001600160a01b03163314610c675760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b6001600160a01b038116610ce35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610148565b610cec81610cef565b50565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610d8057610d80610d57565b500190565b80356001600160a01b0381168114610d9c57600080fd5b919050565b60008060408385031215610db457600080fd5b610dbd83610d85565b946020939093013593505050565b600060208284031215610ddd57600080fd5b5035919050565b600060208284031215610df657600080fd5b610dff82610d85565b9392505050565b80358015158114610d9c57600080fd5b600060208284031215610e2857600080fd5b610dff82610e06565b60008060408385031215610e4457600080fd5b610e4d83610d85565b9150610e5b60208401610e06565b90509250929050565b600060208284031215610e7657600080fd5b5051919050565b6000816000190483118215151615610e9757610e97610d57565b500290565b600082610eb957634e487b7160e01b600052601260045260246000fd5b500490565b6000600019821415610ed257610ed2610d57565b506001019056fea2646970667358221220d4eab5c9b88fba07fc22705582152b2c1997f365dfeb3e7921514e10b2e0d23664736f6c63430008090033000000000000000000000000c40107e23c285d9cc9759f7c656805d6e5c88a3c
Deployed Bytecode
0x6080604052600436106100f75760003560e01c80638688b76b1161008a578063de7f4d4711610059578063de7f4d47146103c0578063e51dfd50146103ed578063e96a6c8b1461041d578063f2fde38b1461043d57600080fd5b80638688b76b1461031f5780638c16300d1461033f5780638da5cb5b14610377578063b2898e961461039557600080fd5b8063528f3e23116100c6578063528f3e231461027f57806354ff108f146102b5578063715018a6146102d557806371d54156146102ea57600080fd5b80630d9fc462146101dd5780633a463297146102335780634c21baf8146102555780634e71d92d1461026a57600080fd5b366101d857600034116101515760405162461bcd60e51b815260206004820152601260248201527f496e73756666696369656e742046756e6473000000000000000000000000000060448201526064015b60405180910390fd5b3360009081526004602052604090205460ff166101b05760405162461bcd60e51b815260206004820152601460248201527f496e76616c69642046756e6420416464726573730000000000000000000000006044820152606401610148565b600354600090815260086020526040812080543492906101d1908490610d6d565b9091555050005b600080fd5b3480156101e957600080fd5b506102206101f8366004610da1565b6001600160a01b03919091166000908152600660209081526040808320938352929052205490565b6040519081526020015b60405180910390f35b34801561023f57600080fd5b5061025361024e366004610dcb565b61045d565b005b34801561026157600080fd5b50600354610220565b34801561027657600080fd5b5061025361050d565b34801561028b57600080fd5b5061022061029a366004610de4565b6001600160a01b031660009081526005602052604090205490565b3480156102c157600080fd5b506102536102d0366004610dcb565b610607565b3480156102e157600080fd5b506102536108c6565b3480156102f657600080fd5b5061030a610305366004610de4565b61092c565b6040805192835260208301919091520161022a565b34801561032b57600080fd5b5061025361033a366004610e16565b610a1a565b34801561034b57600080fd5b5060025461035f906001600160a01b031681565b6040516001600160a01b03909116815260200161022a565b34801561038357600080fd5b506000546001600160a01b031661035f565b3480156103a157600080fd5b50600254600160a01b900460ff165b604051901515815260200161022a565b3480156103cc57600080fd5b506102206103db366004610dcb565b60009081526007602052604090205490565b3480156103f957600080fd5b506103b0610408366004610de4565b60046020526000908152604090205460ff1681565b34801561042957600080fd5b50610253610438366004610e31565b610b0e565b34801561044957600080fd5b50610253610458366004610de4565b610c0d565b6000546001600160a01b031633146104b75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b80600354106105085760405162461bcd60e51b815260206004820152601560248201527f496e76616c7564204c61756e6368204e756d62657200000000000000000000006044820152606401610148565b600355565b600260015414156105605760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610148565b60026001556000806105713361092c565b9092509050816105c35760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e7420436c61696d61626c652046756e6473000000006044820152606401610148565b336000818152600560205260408082208490555184156108fc0291859190818181858888f193505050501580156105fe573d6000803e3d6000fd5b50506001805550565b6002600154141561065a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610148565b6002600181905554600160a01b900460ff166106b85760405162461bcd60e51b815260206004820152601460248201527f4e6f74204f70656e20466f72204275726e696e670000000000000000000000006044820152606401610148565b600081116107085760405162461bcd60e51b815260206004820152601260248201527f496e76616c6964204f726520416d6f756e7400000000000000000000000000006044820152606401610148565b6002546040517f70a0823100000000000000000000000000000000000000000000000000000000815233600482015282916001600160a01b0316906370a082319060240160206040518083038186803b15801561076457600080fd5b505afa158015610778573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061079c9190610e64565b10156107ea5760405162461bcd60e51b815260206004820152601060248201527f496e73756666696369656e74204f7265000000000000000000000000000000006044820152606401610148565b6002546040517f9dc29fac000000000000000000000000000000000000000000000000000000008152336004820152602481018390526001600160a01b0390911690639dc29fac90604401600060405180830381600087803b15801561084f57600080fd5b505af1158015610863573d6000803e3d6000fd5b5050336000908152600660209081526040808320600354845290915281208054859450909250610894908490610d6d565b9091555050600354600090815260076020526040812080548392906108ba908490610d6d565b90915550506001805550565b6000546001600160a01b031633146109205760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b61092a6000610cef565b565b6001600160a01b038116600090815260056020526040812054819081908180610956836001610d6d565b90505b6003548111610a0d5760008181526007602052604090205415806109895750600081815260086020526040902054155b15610993576109fb565b60008181526007602090815260408083205460088352818420546001600160a01b038c1685526006845282852086865290935290832054939450849390916109da91610e7d565b6109e49190610e9c565b905080156109f9576109f68186610d6d565b94505b505b80610a0581610ebe565b915050610959565b5091959194509092505050565b6000546001600160a01b03163314610a745760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b60025460ff600160a01b9091041615158115151415610ad55760405162461bcd60e51b815260206004820152600d60248201527f496e76616c6964205374617465000000000000000000000000000000000000006044820152606401610148565b60028054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b6000546001600160a01b03163314610b685760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b6001600160a01b038216610bbe5760405162461bcd60e51b815260206004820152600f60248201527f496e76616c6964204164647265737300000000000000000000000000000000006044820152606401610148565b6001600160a01b03821660009081526004602052604090205460ff16151581151514610c09576001600160a01b0382166000908152600460205260409020805460ff19168215151790555b5050565b6000546001600160a01b03163314610c675760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610148565b6001600160a01b038116610ce35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610148565b610cec81610cef565b50565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610d8057610d80610d57565b500190565b80356001600160a01b0381168114610d9c57600080fd5b919050565b60008060408385031215610db457600080fd5b610dbd83610d85565b946020939093013593505050565b600060208284031215610ddd57600080fd5b5035919050565b600060208284031215610df657600080fd5b610dff82610d85565b9392505050565b80358015158114610d9c57600080fd5b600060208284031215610e2857600080fd5b610dff82610e06565b60008060408385031215610e4457600080fd5b610e4d83610d85565b9150610e5b60208401610e06565b90509250929050565b600060208284031215610e7657600080fd5b5051919050565b6000816000190483118215151615610e9757610e97610d57565b500290565b600082610eb957634e487b7160e01b600052601260045260246000fd5b500490565b6000600019821415610ed257610ed2610d57565b506001019056fea2646970667358221220d4eab5c9b88fba07fc22705582152b2c1997f365dfeb3e7921514e10b2e0d23664736f6c63430008090033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000c40107e23c285d9cc9759f7c656805d6e5c88a3c
-----Decoded View---------------
Arg [0] : _ore (address): 0xc40107e23c285d9CC9759f7C656805D6E5c88A3C
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000c40107e23c285d9cc9759f7c656805d6e5c88a3c
Deployed Bytecode Sourcemap
137:4136:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4054:1;4042:9;:13;4034:44;;;;-1:-1:-1;;;4034:44:0;;216:2:5;4034:44:0;;;198:21:5;255:2;235:18;;;228:30;294:20;274:18;;;267:48;332:18;;4034:44:0;;;;;;;;;4106:10;4092:25;;;;:13;:25;;;;;;;;4084:58;;;;-1:-1:-1;;;4084:58:0;;563:2:5;4084:58:0;;;545:21:5;602:2;582:18;;;575:30;641:22;621:18;;;614:50;681:18;;4084:58:0;361:344:5;4084:58:0;4238:14;;4218:35;;;;:19;:35;;;;;:48;;4257:9;;4218:35;:48;;4257:9;;4218:48;:::i;:::-;;;;-1:-1:-1;;137:4136:0;;;;;1973:149;;;;;;;;;;-1:-1:-1;1973:149:0;;;;;:::i;:::-;-1:-1:-1;;;;;2080:28:0;;;;2058:7;2080:28;;;:18;:28;;;;;;;;:37;;;;;;;;;1973:149;;;;1638:25:5;;;1626:2;1611:18;1973:149:0;;;;;;;;1444:161;;;;;;;;;;-1:-1:-1;1444:161:0;;;;;:::i;:::-;;:::i;:::-;;1106:89;;;;;;;;;;-1:-1:-1;1176:14:0;;1106:89;;3525:361;;;;;;;;;;;;;:::i;1840:129::-;;;;;;;;;;-1:-1:-1;1840:129:0;;;;;:::i;:::-;-1:-1:-1;;;;;1933:31:0;1911:7;1933:31;;;:21;:31;;;;;;;1840:129;2290:389;;;;;;;;;;-1:-1:-1;2290:389:0;;;;;:::i;:::-;;:::i;1598:92:3:-;;;;;;;;;;;;;:::i;2773:665:0:-;;;;;;;;;;-1:-1:-1;2773:665:0;;;;;:::i;:::-;;:::i;:::-;;;;2224:25:5;;;2280:2;2265:18;;2258:34;;;;2197:18;2773:665:0;2050:248:5;1291:149:0;;;;;;;;;;-1:-1:-1;1291:149:0;;;;;:::i;:::-;;:::i;226:15::-;;;;;;;;;;-1:-1:-1;226:15:0;;;;-1:-1:-1;;;;;226:15:0;;;;;;-1:-1:-1;;;;;2829:55:5;;;2811:74;;2799:2;2784:18;226:15:0;2653:238:5;966:85:3;;;;;;;;;;-1:-1:-1;1012:7:3;1038:6;-1:-1:-1;;;;;1038:6:3;966:85;;1199:88:0;;;;;;;;;;-1:-1:-1;1267:15:0;;-1:-1:-1;;;1267:15:0;;;;1199:88;;;3292:14:5;;3285:22;3267:41;;3255:2;3240:18;1199:88:0;3127:187:5;2126:129:0;;;;;;;;;;-1:-1:-1;2126:129:0;;;;;:::i;:::-;2197:7;2219:31;;;:22;:31;;;;;;;2126:129;472:46;;;;;;;;;;-1:-1:-1;472:46:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;1609:227;;;;;;;;;;-1:-1:-1;1609:227:0;;;;;:::i;:::-;;:::i;1839:189:3:-;;;;;;;;;;-1:-1:-1;1839:189:3;;;;;:::i;:::-;;:::i;1444:161:0:-;1012:7:3;1038:6;-1:-1:-1;;;;;1038:6:3;666:10:1;1178:23:3;1170:68;;;;-1:-1:-1;;;1170:68:3;;3780:2:5;1170:68:3;;;3762:21:5;;;3799:18;;;3792:30;3858:34;3838:18;;;3831:62;3910:18;;1170:68:3;3578:356:5;1170:68:3;1537:7:0::1;1520:14;;:24;1512:58;;;::::0;-1:-1:-1;;;1512:58:0;;4141:2:5;1512:58:0::1;::::0;::::1;4123:21:5::0;4180:2;4160:18;;;4153:30;4219:23;4199:18;;;4192:51;4260:18;;1512:58:0::1;3939:345:5::0;1512:58:0::1;1576:14;:24:::0;1444:161::o;3525:361::-;1680:1:4;2259:7;;:19;;2251:63;;;;-1:-1:-1;;;2251:63:4;;4491:2:5;2251:63:4;;;4473:21:5;4530:2;4510:18;;;4503:30;4569:33;4549:18;;;4542:61;4620:18;;2251:63:4;4289:355:5;2251:63:4;1680:1;2389:7;:18;3570:22:0::1;::::0;3669:35:::1;3693:10;3669:23;:35::i;:::-;3630:74:::0;;-1:-1:-1;3630:74:0;-1:-1:-1;3719:18:0;3711:59:::1;;;::::0;-1:-1:-1;;;3711:59:0;;4851:2:5;3711:59:0::1;::::0;::::1;4833:21:5::0;4890:2;4870:18;;;4863:30;4929;4909:18;;;4902:58;4977:18;;3711:59:0::1;4649:352:5::0;3711:59:0::1;3798:10;3776:33;::::0;;;:21:::1;:33;::::0;;;;;:54;;;3837:44;;::::1;;;::::0;3866:14;;3837:44;;3776:33;3837:44;3866:14;3798:10;3837:44;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;1637:1:4;2562:22;;-1:-1:-1;3525:361:0:o;2290:389::-;1680:1:4;2259:7;;:19;;2251:63;;;;-1:-1:-1;;;2251:63:4;;4491:2:5;2251:63:4;;;4473:21:5;4530:2;4510:18;;;4503:30;4569:33;4549:18;;;4542:61;4620:18;;2251:63:4;4289:355:5;2251:63:4;1680:1;2389:7;:18;;;2360:15:0;-1:-1:-1;;;2360:15:0;::::1;;;2352:48;;;::::0;-1:-1:-1;;;2352:48:0;;5208:2:5;2352:48:0::1;::::0;::::1;5190:21:5::0;5247:2;5227:18;;;5220:30;5286:22;5266:18;;;5259:50;5326:18;;2352:48:0::1;5006:344:5::0;2352:48:0::1;2424:1;2414:7;:11;2406:42;;;::::0;-1:-1:-1;;;2406:42:0;;5557:2:5;2406:42:0::1;::::0;::::1;5539:21:5::0;5596:2;5576:18;;;5569:30;5635:20;5615:18;;;5608:48;5673:18;;2406:42:0::1;5355:342:5::0;2406:42:0::1;2462:3;::::0;:25:::1;::::0;;;;2476:10:::1;2462:25;::::0;::::1;2811:74:5::0;2491:7:0;;-1:-1:-1;;;;;2462:3:0::1;::::0;:13:::1;::::0;2784:18:5;;2462:25:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:36;;2454:65;;;::::0;-1:-1:-1;;;2454:65:0;;6093:2:5;2454:65:0::1;::::0;::::1;6075:21:5::0;6132:2;6112:18;;;6105:30;6171:18;6151;;;6144:46;6207:18;;2454:65:0::1;5891:340:5::0;2454:65:0::1;2526:3;::::0;:29:::1;::::0;;;;2535:10:::1;2526:29;::::0;::::1;6410:74:5::0;6500:18;;;6493:34;;;-1:-1:-1;;;;;2526:3:0;;::::1;::::0;:8:::1;::::0;6383:18:5;;2526:29:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;2581:10:0::1;2562:30;::::0;;;:18:::1;:30;::::0;;;;;;;2593:14:::1;::::0;2562:46;;;;;;;:57;;2612:7;;-1:-1:-1;2562:46:0;;-1:-1:-1;2562:57:0::1;::::0;2612:7;;2562:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;2648:14:0::1;::::0;2625:38:::1;::::0;;;:22:::1;:38;::::0;;;;:49;;2667:7;;2625:38;:49:::1;::::0;2667:7;;2625:49:::1;:::i;:::-;::::0;;;-1:-1:-1;;1637:1:4;2562:22;;-1:-1:-1;2290:389:0:o;1598:92:3:-;1012:7;1038:6;-1:-1:-1;;;;;1038:6:3;666:10:1;1178:23:3;1170:68;;;;-1:-1:-1;;;1170:68:3;;3780:2:5;1170:68:3;;;3762:21:5;;;3799:18;;;3792:30;3858:34;3838:18;;;3831:62;3910:18;;1170:68:3;3578:356:5;1170:68:3;1662:21:::1;1680:1;1662:9;:21::i;:::-;1598:92::o:0;2773:665:0:-;-1:-1:-1;;;;;2923:31:0;;2845:7;2923:31;;;:21;:31;;;;;;2845:7;;;;;;3013:15;2923:31;3027:1;3013:15;:::i;:::-;3001:27;;2996:388;3035:14;;3030:1;:19;2996:388;;3069:25;;;;:22;:25;;;;;;:30;;:61;;-1:-1:-1;3103:22:0;;;;:19;:22;;;;;;:27;3069:61;3065:94;;;3142:8;;3065:94;3198:17;3279:25;;;:22;:25;;;;;;;;;3253:19;:22;;;;;;-1:-1:-1;;;;;3219:28:0;;;;:18;:28;;;;;:31;;;;;;;;;;3188:1;;-1:-1:-1;3188:1:0;;3279:25;;3219:56;;;:::i;:::-;3218:86;;;;:::i;:::-;3198:106;-1:-1:-1;3317:13:0;;3313:65;;3342:27;3360:9;3342:27;;:::i;:::-;;;3313:65;3057:327;2996:388;3052:3;;;;:::i;:::-;;;;2996:388;;;-1:-1:-1;3398:14:0;;3414:18;;-1:-1:-1;2773:665:0;;-1:-1:-1;;;2773:665:0:o;1291:149::-;1012:7:3;1038:6;-1:-1:-1;;;;;1038:6:3;666:10:1;1178:23:3;1170:68;;;;-1:-1:-1;;;1170:68:3;;3780:2:5;1170:68:3;;;3762:21:5;;;3799:18;;;3792:30;3858:34;3838:18;;;3831:62;3910:18;;1170:68:3;3578:356:5;1170:68:3;1362:15:0::1;::::0;::::1;-1:-1:-1::0;;;1362:15:0;;::::1;;:25;;::::0;::::1;;;;1354:51;;;::::0;-1:-1:-1;;;1354:51:0;;7332:2:5;1354:51:0::1;::::0;::::1;7314:21:5::0;7371:2;7351:18;;;7344:30;7410:15;7390:18;;;7383:43;7443:18;;1354:51:0::1;7130:337:5::0;1354:51:0::1;1411:15;:24:::0;;;::::1;;-1:-1:-1::0;;;1411:24:0::1;::::0;;;::::1;::::0;;;::::1;::::0;;1291:149::o;1609:227::-;1012:7:3;1038:6;-1:-1:-1;;;;;1038:6:3;666:10:1;1178:23:3;1170:68;;;;-1:-1:-1;;;1170:68:3;;3780:2:5;1170:68:3;;;3762:21:5;;;3799:18;;;3792:30;3858:34;3838:18;;;3831:62;3910:18;;1170:68:3;3578:356:5;1170:68:3;-1:-1:-1;;;;;1697:22:0;::::1;1689:50;;;::::0;-1:-1:-1;;;1689:50:0;;7674:2:5;1689:50:0::1;::::0;::::1;7656:21:5::0;7713:2;7693:18;;;7686:30;7752:17;7732:18;;;7725:45;7787:18;;1689:50:0::1;7472:339:5::0;1689:50:0::1;-1:-1:-1::0;;;;;1750:23:0;::::1;;::::0;;;:13:::1;:23;::::0;;;;;::::1;;:33;;::::0;::::1;;;1746:86;;-1:-1:-1::0;;;;;1793:23:0;::::1;;::::0;;;:13:::1;:23;::::0;;;;:32;;-1:-1:-1;;1793:32:0::1;::::0;::::1;;;::::0;;1746:86:::1;1609:227:::0;;:::o;1839:189:3:-;1012:7;1038:6;-1:-1:-1;;;;;1038:6:3;666:10:1;1178:23:3;1170:68;;;;-1:-1:-1;;;1170:68:3;;3780:2:5;1170:68:3;;;3762:21:5;;;3799:18;;;3792:30;3858:34;3838:18;;;3831:62;3910:18;;1170:68:3;3578:356:5;1170:68:3;-1:-1:-1;;;;;1927:22:3;::::1;1919:73;;;::::0;-1:-1:-1;;;1919:73:3;;8018:2:5;1919:73:3::1;::::0;::::1;8000:21:5::0;8057:2;8037:18;;;8030:30;8096:34;8076:18;;;8069:62;8167:8;8147:18;;;8140:36;8193:19;;1919:73:3::1;7816:402:5::0;1919:73:3::1;2002:19;2012:8;2002:9;:19::i;:::-;1839:189:::0;:::o;2034:169::-;2089:16;2108:6;;-1:-1:-1;;;;;2124:17:3;;;;;;;;;;2156:40;;2108:6;;;;;;;2156:40;;2089:16;2156:40;2079:124;2034:169;:::o;710:184:5:-;-1:-1:-1;;;759:1:5;752:88;859:4;856:1;849:15;883:4;880:1;873:15;899:128;939:3;970:1;966:6;963:1;960:13;957:39;;;976:18;;:::i;:::-;-1:-1:-1;1012:9:5;;899:128::o;1032:196::-;1100:20;;-1:-1:-1;;;;;1149:54:5;;1139:65;;1129:93;;1218:1;1215;1208:12;1129:93;1032:196;;;:::o;1233:254::-;1301:6;1309;1362:2;1350:9;1341:7;1337:23;1333:32;1330:52;;;1378:1;1375;1368:12;1330:52;1401:29;1420:9;1401:29;:::i;:::-;1391:39;1477:2;1462:18;;;;1449:32;;-1:-1:-1;;;1233:254:5:o;1674:180::-;1733:6;1786:2;1774:9;1765:7;1761:23;1757:32;1754:52;;;1802:1;1799;1792:12;1754:52;-1:-1:-1;1825:23:5;;1674:180;-1:-1:-1;1674:180:5:o;1859:186::-;1918:6;1971:2;1959:9;1950:7;1946:23;1942:32;1939:52;;;1987:1;1984;1977:12;1939:52;2010:29;2029:9;2010:29;:::i;:::-;2000:39;1859:186;-1:-1:-1;;;1859:186:5:o;2303:160::-;2368:20;;2424:13;;2417:21;2407:32;;2397:60;;2453:1;2450;2443:12;2468:180;2524:6;2577:2;2565:9;2556:7;2552:23;2548:32;2545:52;;;2593:1;2590;2583:12;2545:52;2616:26;2632:9;2616:26;:::i;3319:254::-;3384:6;3392;3445:2;3433:9;3424:7;3420:23;3416:32;3413:52;;;3461:1;3458;3451:12;3413:52;3484:29;3503:9;3484:29;:::i;:::-;3474:39;;3532:35;3563:2;3552:9;3548:18;3532:35;:::i;:::-;3522:45;;3319:254;;;;;:::o;5702:184::-;5772:6;5825:2;5813:9;5804:7;5800:23;5796:32;5793:52;;;5841:1;5838;5831:12;5793:52;-1:-1:-1;5864:16:5;;5702:184;-1:-1:-1;5702:184:5:o;6538:168::-;6578:7;6644:1;6640;6636:6;6632:14;6629:1;6626:21;6621:1;6614:9;6607:17;6603:45;6600:71;;;6651:18;;:::i;:::-;-1:-1:-1;6691:9:5;;6538:168::o;6711:274::-;6751:1;6777;6767:189;;-1:-1:-1;;;6809:1:5;6802:88;6913:4;6910:1;6903:15;6941:4;6938:1;6931:15;6767:189;-1:-1:-1;6970:9:5;;6711:274::o;6990:135::-;7029:3;-1:-1:-1;;7050:17:5;;7047:43;;;7070:18;;:::i;:::-;-1:-1:-1;7117:1:5;7106:13;;6990:135::o
Swarm Source
ipfs://d4eab5c9b88fba07fc22705582152b2c1997f365dfeb3e7921514e10b2e0d236
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 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.