More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
VegionBonus
Compiler Version
v0.8.0+commit.c7dfd78e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-08-05 */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; // CAUTION // This version of SafeMath should only be used with Solidity 0.8 or later, // because it relies on the compiler's built in overflow checks. /** * @dev Wrappers over Solidity's arithmetic operations. * * NOTE: `SafeMath` is no longer needed starting with Solidity 0.8. The compiler * now has built in overflow checking. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } /** * @dev Returns the substraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } /** * @dev Returns the multiplication of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } /** * @dev Returns the division of two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } /** * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag. * * _Available since v3.4._ */ function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } /** * @dev Returns the integer division of two unsigned integers, reverting on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return a % b; } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {trySub}. * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } /** * @dev Returns the integer division of two unsigned integers, reverting with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * reverting with custom message when dividing by zero. * * CAUTION: This function is deprecated because it requires allocating memory for the error * message unnecessarily. For custom revert reasons use {tryMod}. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } } /* * @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; } } /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval( address indexed owner, address indexed spender, uint256 value ); } /** * @dev Interface for the optional metadata functions from the ERC20 standard. * * _Available since v4.1._ */ interface IERC20Metadata is IERC20 { /** * @dev Returns the name of the token. */ function name() external view returns (string memory); /** * @dev Returns the symbol of the token. */ function symbol() external view returns (string memory); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); } /** * @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); } } contract VegionBonus is Context, Ownable { using SafeMath for uint256; address public farm; IERC20 public vt; mapping(address => uint8) public bonusPercent_100; mapping(address => address) public parents; constructor(address _farm, IERC20 _vt) { farm = _farm; vt = _vt; } function batchSetBonusPercent( address[] memory targets, uint8[] memory percents ) public onlyOwner { require(targets.length == percents.length, "length not equal"); for (uint256 i = 0; i < targets.length; i++) { if (targets[i] != address(0)) { bonusPercent_100[targets[i]] = percents[i]; } } } function setBonusPercent(address target, uint8 percent) public onlyOwner { require(target != address(0), "address cannot be zero"); bonusPercent_100[target] = percent; } function setParent(address target, address parent) public { require(target != address(0), "target cannot be zero"); require(parent != address(0), "target cannot be zero"); require( _msgSender() == owner() || _msgSender() == address(farm), "wrong caller" ); parents[target] = parent; } // Safe vt transfer function, just in case if rounding error causes pool to not have enough Vts. function safeVtTransfer(address _to, uint256 _amount) external { require( _msgSender() == owner() || _msgSender() == address(farm), "wrong caller" ); uint256 vtBal = vt.balanceOf(address(this)); if (_amount > vtBal) { vt.transfer(_to, vtBal); } else { vt.transfer(_to, _amount); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_farm","type":"address"},{"internalType":"contract IERC20","name":"_vt","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":"address[]","name":"targets","type":"address[]"},{"internalType":"uint8[]","name":"percents","type":"uint8[]"}],"name":"batchSetBonusPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bonusPercent_100","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"farm","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"parents","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"safeVtTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"uint8","name":"percent","type":"uint8"}],"name":"setBonusPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"address","name":"parent","type":"address"}],"name":"setParent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vt","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162001905380380620019058339818101604052810190620000379190620001db565b620000576200004b620000e160201b60201c565b620000e960201b60201c565b81600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000298565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050620001be8162000264565b92915050565b600081519050620001d5816200027e565b92915050565b60008060408385031215620001ef57600080fd5b6000620001ff85828601620001ad565b92505060206200021285828601620001c4565b9150509250929050565b6000620002298262000244565b9050919050565b60006200023d826200021c565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6200026f816200021c565b81146200027b57600080fd5b50565b620002898162000230565b81146200029557600080fd5b50565b61165d80620002a86000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c8063715018a611610071578063715018a61461016457806372be1c171461016e5780638da5cb5b1461018c5780639c5ef5a6146101aa578063b3204b8b146101c6578063f2fde38b146101e2576100a9565b80630288eda0146100ae57806309d4c816146100ca57806318b13fb2146100fa57806336e9332d1461012a578063480d5e1c14610148575b600080fd5b6100c860048036038101906100c39190610ffb565b6101fe565b005b6100e460048036038101906100df9190610f5a565b610346565b6040516100f191906113f6565b60405180910390f35b610114600480360381019061010f9190610f5a565b610366565b60405161012191906112d7565b60405180910390f35b610132610399565b60405161013f91906112d7565b60405180910390f35b610162600480360381019061015d9190611037565b6103bf565b005b61016c6105f0565b005b610176610678565b604051610183919061131b565b60405180910390f35b61019461069e565b6040516101a191906112d7565b60405180910390f35b6101c460048036038101906101bf9190610fbf565b6106c7565b005b6101e060048036038101906101db9190610f83565b6109c4565b005b6101fc60048036038101906101f79190610f5a565b610c01565b005b610206610cf9565b73ffffffffffffffffffffffffffffffffffffffff1661022461069e565b73ffffffffffffffffffffffffffffffffffffffff161461027a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027190611396565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156102ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102e1906113b6565b60405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055505050565b60036020528060005260406000206000915054906101000a900460ff1681565b60046020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6103c7610cf9565b73ffffffffffffffffffffffffffffffffffffffff166103e561069e565b73ffffffffffffffffffffffffffffffffffffffff161461043b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043290611396565b60405180910390fd5b805182511461047f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047690611376565b60405180910390fd5b60005b82518110156105eb57600073ffffffffffffffffffffffffffffffffffffffff168382815181106104dc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16146105d857818181518110610538577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516003600085848151811061057d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055505b80806105e390611524565b915050610482565b505050565b6105f8610cf9565b73ffffffffffffffffffffffffffffffffffffffff1661061661069e565b73ffffffffffffffffffffffffffffffffffffffff161461066c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066390611396565b60405180910390fd5b6106766000610d01565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6106cf61069e565b73ffffffffffffffffffffffffffffffffffffffff166106ed610cf9565b73ffffffffffffffffffffffffffffffffffffffff1614806107635750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661074b610cf9565b73ffffffffffffffffffffffffffffffffffffffff16145b6107a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610799906113d6565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016107ff91906112d7565b60206040518083038186803b15801561081757600080fd5b505afa15801561082b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084f91906110cc565b90508082111561090e57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84836040518363ffffffff1660e01b81526004016108b69291906112f2565b602060405180830381600087803b1580156108d057600080fd5b505af11580156108e4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090891906110a3565b506109bf565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b815260040161096b9291906112f2565b602060405180830381600087803b15801561098557600080fd5b505af1158015610999573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109bd91906110a3565b505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2b90611336565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610aa4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9b90611336565b60405180910390fd5b610aac61069e565b73ffffffffffffffffffffffffffffffffffffffff16610aca610cf9565b73ffffffffffffffffffffffffffffffffffffffff161480610b405750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b28610cf9565b73ffffffffffffffffffffffffffffffffffffffff16145b610b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b76906113d6565b60405180910390fd5b80600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b610c09610cf9565b73ffffffffffffffffffffffffffffffffffffffff16610c2761069e565b73ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7490611396565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce490611356565b60405180910390fd5b610cf681610d01565b50565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000610dd8610dd384611442565b611411565b90508083825260208201905082856020860282011115610df757600080fd5b60005b85811015610e275781610e0d8882610e9d565b845260208401935060208301925050600181019050610dfa565b5050509392505050565b6000610e44610e3f8461146e565b611411565b90508083825260208201905082856020860282011115610e6357600080fd5b60005b85811015610e935781610e798882610f45565b845260208401935060208301925050600181019050610e66565b5050509392505050565b600081359050610eac816115cb565b92915050565b600082601f830112610ec357600080fd5b8135610ed3848260208601610dc5565b91505092915050565b600082601f830112610eed57600080fd5b8135610efd848260208601610e31565b91505092915050565b600081519050610f15816115e2565b92915050565b600081359050610f2a816115f9565b92915050565b600081519050610f3f816115f9565b92915050565b600081359050610f5481611610565b92915050565b600060208284031215610f6c57600080fd5b6000610f7a84828501610e9d565b91505092915050565b60008060408385031215610f9657600080fd5b6000610fa485828601610e9d565b9250506020610fb585828601610e9d565b9150509250929050565b60008060408385031215610fd257600080fd5b6000610fe085828601610e9d565b9250506020610ff185828601610f1b565b9150509250929050565b6000806040838503121561100e57600080fd5b600061101c85828601610e9d565b925050602061102d85828601610f45565b9150509250929050565b6000806040838503121561104a57600080fd5b600083013567ffffffffffffffff81111561106457600080fd5b61107085828601610eb2565b925050602083013567ffffffffffffffff81111561108d57600080fd5b61109985828601610edc565b9150509250929050565b6000602082840312156110b557600080fd5b60006110c384828501610f06565b91505092915050565b6000602082840312156110de57600080fd5b60006110ec84828501610f30565b91505092915050565b6110fe816114ab565b82525050565b61110d81611500565b82525050565b600061112060158361149a565b91507f7461726765742063616e6e6f74206265207a65726f00000000000000000000006000830152602082019050919050565b600061116060268361149a565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006111c660108361149a565b91507f6c656e677468206e6f7420657175616c000000000000000000000000000000006000830152602082019050919050565b600061120660208361149a565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600061124660168361149a565b91507f616464726573732063616e6e6f74206265207a65726f000000000000000000006000830152602082019050919050565b6000611286600c8361149a565b91507f77726f6e672063616c6c657200000000000000000000000000000000000000006000830152602082019050919050565b6112c2816114e9565b82525050565b6112d1816114f3565b82525050565b60006020820190506112ec60008301846110f5565b92915050565b600060408201905061130760008301856110f5565b61131460208301846112b9565b9392505050565b60006020820190506113306000830184611104565b92915050565b6000602082019050818103600083015261134f81611113565b9050919050565b6000602082019050818103600083015261136f81611153565b9050919050565b6000602082019050818103600083015261138f816111b9565b9050919050565b600060208201905081810360008301526113af816111f9565b9050919050565b600060208201905081810360008301526113cf81611239565b9050919050565b600060208201905081810360008301526113ef81611279565b9050919050565b600060208201905061140b60008301846112c8565b92915050565b6000604051905081810181811067ffffffffffffffff821117156114385761143761159c565b5b8060405250919050565b600067ffffffffffffffff82111561145d5761145c61159c565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156114895761148861159c565b5b602082029050602081019050919050565b600082825260208201905092915050565b60006114b6826114c9565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061150b82611512565b9050919050565b600061151d826114c9565b9050919050565b600061152f826114e9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156115625761156161156d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6115d4816114ab565b81146115df57600080fd5b50565b6115eb816114bd565b81146115f657600080fd5b50565b611602816114e9565b811461160d57600080fd5b50565b611619816114f3565b811461162457600080fd5b5056fea264697066735822122008ba056bd357f478f0ea2143a08c0a69325e6e0d6dded82b345cdd6954eab0f464736f6c63430008000033000000000000000000000000db5404e25a7e81edfcd74531a198a3837686396a000000000000000000000000b622894b0328090ebcc2e0adadbe16895ea0a93d
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100a95760003560e01c8063715018a611610071578063715018a61461016457806372be1c171461016e5780638da5cb5b1461018c5780639c5ef5a6146101aa578063b3204b8b146101c6578063f2fde38b146101e2576100a9565b80630288eda0146100ae57806309d4c816146100ca57806318b13fb2146100fa57806336e9332d1461012a578063480d5e1c14610148575b600080fd5b6100c860048036038101906100c39190610ffb565b6101fe565b005b6100e460048036038101906100df9190610f5a565b610346565b6040516100f191906113f6565b60405180910390f35b610114600480360381019061010f9190610f5a565b610366565b60405161012191906112d7565b60405180910390f35b610132610399565b60405161013f91906112d7565b60405180910390f35b610162600480360381019061015d9190611037565b6103bf565b005b61016c6105f0565b005b610176610678565b604051610183919061131b565b60405180910390f35b61019461069e565b6040516101a191906112d7565b60405180910390f35b6101c460048036038101906101bf9190610fbf565b6106c7565b005b6101e060048036038101906101db9190610f83565b6109c4565b005b6101fc60048036038101906101f79190610f5a565b610c01565b005b610206610cf9565b73ffffffffffffffffffffffffffffffffffffffff1661022461069e565b73ffffffffffffffffffffffffffffffffffffffff161461027a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027190611396565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156102ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102e1906113b6565b60405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055505050565b60036020528060005260406000206000915054906101000a900460ff1681565b60046020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6103c7610cf9565b73ffffffffffffffffffffffffffffffffffffffff166103e561069e565b73ffffffffffffffffffffffffffffffffffffffff161461043b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043290611396565b60405180910390fd5b805182511461047f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161047690611376565b60405180910390fd5b60005b82518110156105eb57600073ffffffffffffffffffffffffffffffffffffffff168382815181106104dc577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16146105d857818181518110610538577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101516003600085848151811061057d577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055505b80806105e390611524565b915050610482565b505050565b6105f8610cf9565b73ffffffffffffffffffffffffffffffffffffffff1661061661069e565b73ffffffffffffffffffffffffffffffffffffffff161461066c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161066390611396565b60405180910390fd5b6106766000610d01565b565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6106cf61069e565b73ffffffffffffffffffffffffffffffffffffffff166106ed610cf9565b73ffffffffffffffffffffffffffffffffffffffff1614806107635750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661074b610cf9565b73ffffffffffffffffffffffffffffffffffffffff16145b6107a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610799906113d6565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016107ff91906112d7565b60206040518083038186803b15801561081757600080fd5b505afa15801561082b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061084f91906110cc565b90508082111561090e57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84836040518363ffffffff1660e01b81526004016108b69291906112f2565b602060405180830381600087803b1580156108d057600080fd5b505af11580156108e4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090891906110a3565b506109bf565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b815260040161096b9291906112f2565b602060405180830381600087803b15801561098557600080fd5b505af1158015610999573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109bd91906110a3565b505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610a34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a2b90611336565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610aa4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9b90611336565b60405180910390fd5b610aac61069e565b73ffffffffffffffffffffffffffffffffffffffff16610aca610cf9565b73ffffffffffffffffffffffffffffffffffffffff161480610b405750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b28610cf9565b73ffffffffffffffffffffffffffffffffffffffff16145b610b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b76906113d6565b60405180910390fd5b80600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b610c09610cf9565b73ffffffffffffffffffffffffffffffffffffffff16610c2761069e565b73ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7490611396565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce490611356565b60405180910390fd5b610cf681610d01565b50565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000610dd8610dd384611442565b611411565b90508083825260208201905082856020860282011115610df757600080fd5b60005b85811015610e275781610e0d8882610e9d565b845260208401935060208301925050600181019050610dfa565b5050509392505050565b6000610e44610e3f8461146e565b611411565b90508083825260208201905082856020860282011115610e6357600080fd5b60005b85811015610e935781610e798882610f45565b845260208401935060208301925050600181019050610e66565b5050509392505050565b600081359050610eac816115cb565b92915050565b600082601f830112610ec357600080fd5b8135610ed3848260208601610dc5565b91505092915050565b600082601f830112610eed57600080fd5b8135610efd848260208601610e31565b91505092915050565b600081519050610f15816115e2565b92915050565b600081359050610f2a816115f9565b92915050565b600081519050610f3f816115f9565b92915050565b600081359050610f5481611610565b92915050565b600060208284031215610f6c57600080fd5b6000610f7a84828501610e9d565b91505092915050565b60008060408385031215610f9657600080fd5b6000610fa485828601610e9d565b9250506020610fb585828601610e9d565b9150509250929050565b60008060408385031215610fd257600080fd5b6000610fe085828601610e9d565b9250506020610ff185828601610f1b565b9150509250929050565b6000806040838503121561100e57600080fd5b600061101c85828601610e9d565b925050602061102d85828601610f45565b9150509250929050565b6000806040838503121561104a57600080fd5b600083013567ffffffffffffffff81111561106457600080fd5b61107085828601610eb2565b925050602083013567ffffffffffffffff81111561108d57600080fd5b61109985828601610edc565b9150509250929050565b6000602082840312156110b557600080fd5b60006110c384828501610f06565b91505092915050565b6000602082840312156110de57600080fd5b60006110ec84828501610f30565b91505092915050565b6110fe816114ab565b82525050565b61110d81611500565b82525050565b600061112060158361149a565b91507f7461726765742063616e6e6f74206265207a65726f00000000000000000000006000830152602082019050919050565b600061116060268361149a565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006111c660108361149a565b91507f6c656e677468206e6f7420657175616c000000000000000000000000000000006000830152602082019050919050565b600061120660208361149a565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600061124660168361149a565b91507f616464726573732063616e6e6f74206265207a65726f000000000000000000006000830152602082019050919050565b6000611286600c8361149a565b91507f77726f6e672063616c6c657200000000000000000000000000000000000000006000830152602082019050919050565b6112c2816114e9565b82525050565b6112d1816114f3565b82525050565b60006020820190506112ec60008301846110f5565b92915050565b600060408201905061130760008301856110f5565b61131460208301846112b9565b9392505050565b60006020820190506113306000830184611104565b92915050565b6000602082019050818103600083015261134f81611113565b9050919050565b6000602082019050818103600083015261136f81611153565b9050919050565b6000602082019050818103600083015261138f816111b9565b9050919050565b600060208201905081810360008301526113af816111f9565b9050919050565b600060208201905081810360008301526113cf81611239565b9050919050565b600060208201905081810360008301526113ef81611279565b9050919050565b600060208201905061140b60008301846112c8565b92915050565b6000604051905081810181811067ffffffffffffffff821117156114385761143761159c565b5b8060405250919050565b600067ffffffffffffffff82111561145d5761145c61159c565b5b602082029050602081019050919050565b600067ffffffffffffffff8211156114895761148861159c565b5b602082029050602081019050919050565b600082825260208201905092915050565b60006114b6826114c9565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061150b82611512565b9050919050565b600061151d826114c9565b9050919050565b600061152f826114e9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156115625761156161156d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6115d4816114ab565b81146115df57600080fd5b50565b6115eb816114bd565b81146115f657600080fd5b50565b611602816114e9565b811461160d57600080fd5b50565b611619816114f3565b811461162457600080fd5b5056fea264697066735822122008ba056bd357f478f0ea2143a08c0a69325e6e0d6dded82b345cdd6954eab0f464736f6c63430008000033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000db5404e25a7e81edfcd74531a198a3837686396a000000000000000000000000b622894b0328090ebcc2e0adadbe16895ea0a93d
-----Decoded View---------------
Arg [0] : _farm (address): 0xDB5404E25A7E81edFcd74531a198A3837686396a
Arg [1] : _vt (address): 0xb622894B0328090EBcC2E0AdaDBE16895ea0A93D
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000db5404e25a7e81edfcd74531a198a3837686396a
Arg [1] : 000000000000000000000000b622894b0328090ebcc2e0adadbe16895ea0a93d
Deployed Bytecode Sourcemap
13465:1806:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14203:192;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13599:49;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13655:42;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13548:19;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13803:392;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12799:94;;;:::i;:::-;;13574:16;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12148:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14875:393;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14403:362;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13048:229;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14203:192;12379:12;:10;:12::i;:::-;12368:23;;:7;:5;:7::i;:::-;:23;;;12360:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14313:1:::1;14295:20;;:6;:20;;;;14287:55;;;;;;;;;;;;:::i;:::-;;;;;;;;;14380:7;14353:16;:24;14370:6;14353:24;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;14203:192:::0;;:::o;13599:49::-;;;;;;;;;;;;;;;;;;;;;;:::o;13655:42::-;;;;;;;;;;;;;;;;;;;;;;:::o;13548:19::-;;;;;;;;;;;;;:::o;13803:392::-;12379:12;:10;:12::i;:::-;12368:23;;:7;:5;:7::i;:::-;:23;;;12360:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13963:8:::1;:15;13945:7;:14;:33;13937:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;14015:9;14010:178;14034:7;:14;14030:1;:18;14010:178;;;14096:1;14074:24;;:7;14082:1;14074:10;;;;;;;;;;;;;;;;;;;;;;:24;;;14070:107;;14150:8;14159:1;14150:11;;;;;;;;;;;;;;;;;;;;;;14119:16;:28;14136:7;14144:1;14136:10;;;;;;;;;;;;;;;;;;;;;;14119:28;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;14070:107;14050:3;;;;;:::i;:::-;;;;14010:178;;;;13803:392:::0;;:::o;12799:94::-;12379:12;:10;:12::i;:::-;12368:23;;:7;:5;:7::i;:::-;:23;;;12360:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12864:21:::1;12882:1;12864:9;:21::i;:::-;12799:94::o:0;13574:16::-;;;;;;;;;;;;;:::o;12148:87::-;12194:7;12221:6;;;;;;;;;;;12214:13;;12148:87;:::o;14875:393::-;14987:7;:5;:7::i;:::-;14971:23;;:12;:10;:12::i;:::-;:23;;;:56;;;;15022:4;;;;;;;;;;;14998:29;;:12;:10;:12::i;:::-;:29;;;14971:56;14949:118;;;;;;;;;;;;:::i;:::-;;;;;;;;;15078:13;15094:2;;;;;;;;;;;:12;;;15115:4;15094:27;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15078:43;;15146:5;15136:7;:15;15132:129;;;15168:2;;;;;;;;;;;:11;;;15180:3;15185:5;15168:23;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;15132:129;;;15224:2;;;;;;;;;;;:11;;;15236:3;15241:7;15224:25;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;15132:129;14875:393;;;:::o;14403:362::-;14498:1;14480:20;;:6;:20;;;;14472:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;14563:1;14545:20;;:6;:20;;;;14537:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;14640:7;:5;:7::i;:::-;14624:23;;:12;:10;:12::i;:::-;:23;;;:56;;;;14675:4;;;;;;;;;;;14651:29;;:12;:10;:12::i;:::-;:29;;;14624:56;14602:118;;;;;;;;;;;;:::i;:::-;;;;;;;;;14751:6;14733:7;:15;14741:6;14733:15;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;14403:362;;:::o;13048:229::-;12379:12;:10;:12::i;:::-;12368:23;;:7;:5;:7::i;:::-;:23;;;12360:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;13171:1:::1;13151:22;;:8;:22;;;;13129:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;13250:19;13260:8;13250:9;:19::i;:::-;13048:229:::0;:::o;7627:98::-;7680:7;7707:10;7700:17;;7627:98;:::o;13285:173::-;13341:16;13360:6;;;;;;;;;;;13341:25;;13386:8;13377:6;;:17;;;;;;;;;;;;;;;;;;13441:8;13410:40;;13431:8;13410:40;;;;;;;;;;;;13285:173;;:::o;24:622:1:-;;145:80;160:64;217:6;160:64;:::i;:::-;145:80;:::i;:::-;136:89;;245:5;273:6;266:5;259:21;299:4;292:5;288:16;281:23;;324:6;374:3;366:4;358:6;354:17;349:3;345:27;342:36;339:2;;;391:1;388;381:12;339:2;419:1;404:236;429:6;426:1;423:13;404:236;;;496:3;524:37;557:3;545:10;524:37;:::i;:::-;519:3;512:50;591:4;586:3;582:14;575:21;;625:4;620:3;616:14;609:21;;464:176;451:1;448;444:9;439:14;;404:236;;;408:14;126:520;;;;;;;:::o;667:616::-;;786:78;801:62;856:6;801:62;:::i;:::-;786:78;:::i;:::-;777:87;;884:5;912:6;905:5;898:21;938:4;931:5;927:16;920:23;;963:6;1013:3;1005:4;997:6;993:17;988:3;984:27;981:36;978:2;;;1030:1;1027;1020:12;978:2;1058:1;1043:234;1068:6;1065:1;1062:13;1043:234;;;1135:3;1163:35;1194:3;1182:10;1163:35;:::i;:::-;1158:3;1151:48;1228:4;1223:3;1219:14;1212:21;;1262:4;1257:3;1253:14;1246:21;;1103:174;1090:1;1087;1083:9;1078:14;;1043:234;;;1047:14;767:516;;;;;;;:::o;1289:139::-;;1373:6;1360:20;1351:29;;1389:33;1416:5;1389:33;:::i;:::-;1341:87;;;;:::o;1451:303::-;;1571:3;1564:4;1556:6;1552:17;1548:27;1538:2;;1589:1;1586;1579:12;1538:2;1629:6;1616:20;1654:94;1744:3;1736:6;1729:4;1721:6;1717:17;1654:94;:::i;:::-;1645:103;;1528:226;;;;;:::o;1775:299::-;;1893:3;1886:4;1878:6;1874:17;1870:27;1860:2;;1911:1;1908;1901:12;1860:2;1951:6;1938:20;1976:92;2064:3;2056:6;2049:4;2041:6;2037:17;1976:92;:::i;:::-;1967:101;;1850:224;;;;;:::o;2080:137::-;;2165:6;2159:13;2150:22;;2181:30;2205:5;2181:30;:::i;:::-;2140:77;;;;:::o;2223:139::-;;2307:6;2294:20;2285:29;;2323:33;2350:5;2323:33;:::i;:::-;2275:87;;;;:::o;2368:143::-;;2456:6;2450:13;2441:22;;2472:33;2499:5;2472:33;:::i;:::-;2431:80;;;;:::o;2517:135::-;;2599:6;2586:20;2577:29;;2615:31;2640:5;2615:31;:::i;:::-;2567:85;;;;:::o;2658:262::-;;2766:2;2754:9;2745:7;2741:23;2737:32;2734:2;;;2782:1;2779;2772:12;2734:2;2825:1;2850:53;2895:7;2886:6;2875:9;2871:22;2850:53;:::i;:::-;2840:63;;2796:117;2724:196;;;;:::o;2926:407::-;;;3051:2;3039:9;3030:7;3026:23;3022:32;3019:2;;;3067:1;3064;3057:12;3019:2;3110:1;3135:53;3180:7;3171:6;3160:9;3156:22;3135:53;:::i;:::-;3125:63;;3081:117;3237:2;3263:53;3308:7;3299:6;3288:9;3284:22;3263:53;:::i;:::-;3253:63;;3208:118;3009:324;;;;;:::o;3339:407::-;;;3464:2;3452:9;3443:7;3439:23;3435:32;3432:2;;;3480:1;3477;3470:12;3432:2;3523:1;3548:53;3593:7;3584:6;3573:9;3569:22;3548:53;:::i;:::-;3538:63;;3494:117;3650:2;3676:53;3721:7;3712:6;3701:9;3697:22;3676:53;:::i;:::-;3666:63;;3621:118;3422:324;;;;;:::o;3752:403::-;;;3875:2;3863:9;3854:7;3850:23;3846:32;3843:2;;;3891:1;3888;3881:12;3843:2;3934:1;3959:53;4004:7;3995:6;3984:9;3980:22;3959:53;:::i;:::-;3949:63;;3905:117;4061:2;4087:51;4130:7;4121:6;4110:9;4106:22;4087:51;:::i;:::-;4077:61;;4032:116;3833:322;;;;;:::o;4161:689::-;;;4334:2;4322:9;4313:7;4309:23;4305:32;4302:2;;;4350:1;4347;4340:12;4302:2;4421:1;4410:9;4406:17;4393:31;4451:18;4443:6;4440:30;4437:2;;;4483:1;4480;4473:12;4437:2;4511:78;4581:7;4572:6;4561:9;4557:22;4511:78;:::i;:::-;4501:88;;4364:235;4666:2;4655:9;4651:18;4638:32;4697:18;4689:6;4686:30;4683:2;;;4729:1;4726;4719:12;4683:2;4757:76;4825:7;4816:6;4805:9;4801:22;4757:76;:::i;:::-;4747:86;;4609:234;4292:558;;;;;:::o;4856:278::-;;4972:2;4960:9;4951:7;4947:23;4943:32;4940:2;;;4988:1;4985;4978:12;4940:2;5031:1;5056:61;5109:7;5100:6;5089:9;5085:22;5056:61;:::i;:::-;5046:71;;5002:125;4930:204;;;;:::o;5140:284::-;;5259:2;5247:9;5238:7;5234:23;5230:32;5227:2;;;5275:1;5272;5265:12;5227:2;5318:1;5343:64;5399:7;5390:6;5379:9;5375:22;5343:64;:::i;:::-;5333:74;;5289:128;5217:207;;;;:::o;5430:118::-;5517:24;5535:5;5517:24;:::i;:::-;5512:3;5505:37;5495:53;;:::o;5554:159::-;5655:51;5700:5;5655:51;:::i;:::-;5650:3;5643:64;5633:80;;:::o;5719:319::-;;5882:67;5946:2;5941:3;5882:67;:::i;:::-;5875:74;;5979:23;5975:1;5970:3;5966:11;5959:44;6029:2;6024:3;6020:12;6013:19;;5865:173;;;:::o;6044:370::-;;6207:67;6271:2;6266:3;6207:67;:::i;:::-;6200:74;;6304:34;6300:1;6295:3;6291:11;6284:55;6370:8;6365:2;6360:3;6356:12;6349:30;6405:2;6400:3;6396:12;6389:19;;6190:224;;;:::o;6420:314::-;;6583:67;6647:2;6642:3;6583:67;:::i;:::-;6576:74;;6680:18;6676:1;6671:3;6667:11;6660:39;6725:2;6720:3;6716:12;6709:19;;6566:168;;;:::o;6740:330::-;;6903:67;6967:2;6962:3;6903:67;:::i;:::-;6896:74;;7000:34;6996:1;6991:3;6987:11;6980:55;7061:2;7056:3;7052:12;7045:19;;6886:184;;;:::o;7076:320::-;;7239:67;7303:2;7298:3;7239:67;:::i;:::-;7232:74;;7336:24;7332:1;7327:3;7323:11;7316:45;7387:2;7382:3;7378:12;7371:19;;7222:174;;;:::o;7402:310::-;;7565:67;7629:2;7624:3;7565:67;:::i;:::-;7558:74;;7662:14;7658:1;7653:3;7649:11;7642:35;7703:2;7698:3;7694:12;7687:19;;7548:164;;;:::o;7718:118::-;7805:24;7823:5;7805:24;:::i;:::-;7800:3;7793:37;7783:53;;:::o;7842:112::-;7925:22;7941:5;7925:22;:::i;:::-;7920:3;7913:35;7903:51;;:::o;7960:222::-;;8091:2;8080:9;8076:18;8068:26;;8104:71;8172:1;8161:9;8157:17;8148:6;8104:71;:::i;:::-;8058:124;;;;:::o;8188:332::-;;8347:2;8336:9;8332:18;8324:26;;8360:71;8428:1;8417:9;8413:17;8404:6;8360:71;:::i;:::-;8441:72;8509:2;8498:9;8494:18;8485:6;8441:72;:::i;:::-;8314:206;;;;;:::o;8526:250::-;;8671:2;8660:9;8656:18;8648:26;;8684:85;8766:1;8755:9;8751:17;8742:6;8684:85;:::i;:::-;8638:138;;;;:::o;8782:419::-;;8986:2;8975:9;8971:18;8963:26;;9035:9;9029:4;9025:20;9021:1;9010:9;9006:17;8999:47;9063:131;9189:4;9063:131;:::i;:::-;9055:139;;8953:248;;;:::o;9207:419::-;;9411:2;9400:9;9396:18;9388:26;;9460:9;9454:4;9450:20;9446:1;9435:9;9431:17;9424:47;9488:131;9614:4;9488:131;:::i;:::-;9480:139;;9378:248;;;:::o;9632:419::-;;9836:2;9825:9;9821:18;9813:26;;9885:9;9879:4;9875:20;9871:1;9860:9;9856:17;9849:47;9913:131;10039:4;9913:131;:::i;:::-;9905:139;;9803:248;;;:::o;10057:419::-;;10261:2;10250:9;10246:18;10238:26;;10310:9;10304:4;10300:20;10296:1;10285:9;10281:17;10274:47;10338:131;10464:4;10338:131;:::i;:::-;10330:139;;10228:248;;;:::o;10482:419::-;;10686:2;10675:9;10671:18;10663:26;;10735:9;10729:4;10725:20;10721:1;10710:9;10706:17;10699:47;10763:131;10889:4;10763:131;:::i;:::-;10755:139;;10653:248;;;:::o;10907:419::-;;11111:2;11100:9;11096:18;11088:26;;11160:9;11154:4;11150:20;11146:1;11135:9;11131:17;11124:47;11188:131;11314:4;11188:131;:::i;:::-;11180:139;;11078:248;;;:::o;11332:214::-;;11459:2;11448:9;11444:18;11436:26;;11472:67;11536:1;11525:9;11521:17;11512:6;11472:67;:::i;:::-;11426:120;;;;:::o;11552:283::-;;11618:2;11612:9;11602:19;;11660:4;11652:6;11648:17;11767:6;11755:10;11752:22;11731:18;11719:10;11716:34;11713:62;11710:2;;;11778:18;;:::i;:::-;11710:2;11818:10;11814:2;11807:22;11592:243;;;;:::o;11841:311::-;;12008:18;12000:6;11997:30;11994:2;;;12030:18;;:::i;:::-;11994:2;12080:4;12072:6;12068:17;12060:25;;12140:4;12134;12130:15;12122:23;;11923:229;;;:::o;12158:309::-;;12323:18;12315:6;12312:30;12309:2;;;12345:18;;:::i;:::-;12309:2;12395:4;12387:6;12383:17;12375:25;;12455:4;12449;12445:15;12437:23;;12238:229;;;:::o;12473:169::-;;12591:6;12586:3;12579:19;12631:4;12626:3;12622:14;12607:29;;12569:73;;;;:::o;12648:96::-;;12714:24;12732:5;12714:24;:::i;:::-;12703:35;;12693:51;;;:::o;12750:90::-;;12827:5;12820:13;12813:21;12802:32;;12792:48;;;:::o;12846:126::-;;12923:42;12916:5;12912:54;12901:65;;12891:81;;;:::o;12978:77::-;;13044:5;13033:16;;13023:32;;;:::o;13061:86::-;;13136:4;13129:5;13125:16;13114:27;;13104:43;;;:::o;13153:154::-;;13250:51;13295:5;13250:51;:::i;:::-;13237:64;;13227:80;;;:::o;13313:127::-;;13410:24;13428:5;13410:24;:::i;:::-;13397:37;;13387:53;;;:::o;13446:233::-;;13508:24;13526:5;13508:24;:::i;:::-;13499:33;;13554:66;13547:5;13544:77;13541:2;;;13624:18;;:::i;:::-;13541:2;13671:1;13664:5;13660:13;13653:20;;13489:190;;;:::o;13685:180::-;13733:77;13730:1;13723:88;13830:4;13827:1;13820:15;13854:4;13851:1;13844:15;13871:180;13919:77;13916:1;13909:88;14016:4;14013:1;14006:15;14040:4;14037:1;14030:15;14057:122;14130:24;14148:5;14130:24;:::i;:::-;14123:5;14120:35;14110:2;;14169:1;14166;14159:12;14110:2;14100:79;:::o;14185:116::-;14255:21;14270:5;14255:21;:::i;:::-;14248:5;14245:32;14235:2;;14291:1;14288;14281:12;14235:2;14225:76;:::o;14307:122::-;14380:24;14398:5;14380:24;:::i;:::-;14373:5;14370:35;14360:2;;14419:1;14416;14409:12;14360:2;14350:79;:::o;14435:118::-;14506:22;14522:5;14506:22;:::i;:::-;14499:5;14496:33;14486:2;;14543:1;14540;14533:12;14486:2;14476:77;:::o
Swarm Source
ipfs://08ba056bd357f478f0ea2143a08c0a69325e6e0d6dded82b345cdd6954eab0f4
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
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.