More Info
Private Name Tags
ContractCreator
Latest 8 from a total of 8 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Collect Fees | 18583490 | 350 days ago | IN | 0 ETH | 0.01011577 | ||||
Change Fee Perce... | 18583481 | 350 days ago | IN | 0 ETH | 0.00162517 | ||||
Change Fee Thres... | 18583435 | 350 days ago | IN | 0 ETH | 0.00079348 | ||||
Change Fee Perce... | 18583418 | 350 days ago | IN | 0 ETH | 0.00088346 | ||||
Transfer Ownersh... | 18404304 | 375 days ago | IN | 0 ETH | 0.0001898 | ||||
Transfer Ownersh... | 17285728 | 532 days ago | IN | 0 ETH | 0.0013538 | ||||
Change Fee Thres... | 16994180 | 573 days ago | IN | 0 ETH | 0.00063401 | ||||
0x61010060 | 16736396 | 609 days ago | IN | 0 ETH | 0.03693967 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
PoolFeeHandler
Compiler Version
v0.8.4+commit.c7e474f2
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-03-01 */ // File: @uniswap/v2-periphery/contracts/interfaces/IUniswapV2Router01.sol pragma solidity >=0.6.2; interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); } // File: @uniswap/v2-periphery/contracts/interfaces/IUniswapV2Router02.sol pragma solidity >=0.6.2; interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } // File: @openzeppelin/[email protected]/token/ERC20/IERC20.sol // OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @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 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 `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount ) external returns (bool); } // File: @openzeppelin/[email protected]/token/ERC20/extensions/IERC20Metadata.sol // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol) pragma solidity ^0.8.0; /** * @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); } // File: @openzeppelin/[email protected]/utils/Context.sol // OpenZeppelin Contracts v4.4.1 (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; } } // File: @openzeppelin/[email protected]/token/ERC20/ERC20.sol // OpenZeppelin Contracts (last updated v4.7.0) (token/ERC20/ERC20.sol) pragma solidity ^0.8.0; /** * @dev Implementation of the {IERC20} interface. * * This implementation is agnostic to the way tokens are created. This means * that a supply mechanism has to be added in a derived contract using {_mint}. * For a generic mechanism see {ERC20PresetMinterPauser}. * * TIP: For a detailed writeup see our guide * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How * to implement supply mechanisms]. * * We have followed general OpenZeppelin Contracts guidelines: functions revert * instead returning `false` on failure. This behavior is nonetheless * conventional and does not conflict with the expectations of ERC20 * applications. * * Additionally, an {Approval} event is emitted on calls to {transferFrom}. * This allows applications to reconstruct the allowance for all accounts just * by listening to said events. Other implementations of the EIP may not emit * these events, as it isn't required by the specification. * * Finally, the non-standard {decreaseAllowance} and {increaseAllowance} * functions have been added to mitigate the well-known issues around setting * allowances. See {IERC20-approve}. */ contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; /** * @dev Sets the values for {name} and {symbol}. * * The default value of {decimals} is 18. To select a different value for * {decimals} you should overload it. * * All two of these values are immutable: they can only be set once during * construction. */ constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } /** * @dev Returns the name of the token. */ function name() public view virtual override returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view virtual override returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5.05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. This is the value {ERC20} uses, unless this function is * overridden; * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IERC20-balanceOf} and {IERC20-transfer}. */ function decimals() public view virtual override returns (uint8) { return 18; } /** * @dev See {IERC20-totalSupply}. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } /** * @dev See {IERC20-balanceOf}. */ function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev See {IERC20-transfer}. * * Requirements: * * - `to` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _transfer(owner, to, amount); return true; } /** * @dev See {IERC20-allowance}. */ function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {IERC20-approve}. * * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on * `transferFrom`. This is semantically equivalent to an infinite approval. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } /** * @dev See {IERC20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {ERC20}. * * NOTE: Does not update the allowance if the current allowance * is the maximum `uint256`. * * Requirements: * * - `from` and `to` cannot be the zero address. * - `from` must have a balance of at least `amount`. * - the caller must have allowance for ``from``'s tokens of at least * `amount`. */ function transferFrom( address from, address to, uint256 amount ) public virtual override returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, amount); _transfer(from, to, amount); return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, allowance(owner, spender) + addedValue); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { address owner = _msgSender(); uint256 currentAllowance = allowance(owner, spender); require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(owner, spender, currentAllowance - subtractedValue); } return true; } /** * @dev Moves `amount` of tokens from `from` to `to`. * * This internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `from` must have a balance of at least `amount`. */ function _transfer( address from, address to, uint256 amount ) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(from, to, amount); uint256 fromBalance = _balances[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[from] = fromBalance - amount; } _balances[to] += amount; emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } /** @dev Creates `amount` tokens and assigns them to `account`, increasing * the total supply. * * Emits a {Transfer} event with `from` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. */ function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } /** * @dev Destroys `amount` tokens from `account`, reducing the * total supply. * * Emits a {Transfer} event with `to` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. * - `account` must have at least `amount` tokens. */ function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } /** * @dev Updates `owner` s allowance for `spender` based on spent `amount`. * * Does not update the allowance amount in case of infinite allowance. * Revert if not enough allowance is available. * * Might emit an {Approval} event. */ function _spendAllowance( address owner, address spender, uint256 amount ) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } /** * @dev Hook that is called before any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * will be transferred to `to`. * - when `from` is zero, `amount` tokens will be minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens will be burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} /** * @dev Hook that is called after any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * has been transferred to `to`. * - when `from` is zero, `amount` tokens have been minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens have been burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } // File: @openzeppelin/[email protected]/access/Ownable.sol // OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol) pragma solidity ^0.8.0; /** * @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 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 { _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); } } // File: poolFeeHandler.sol pragma solidity 0.8.4; interface IStaking { function addFees(uint256 feeAmount) external; } contract PoolFeeHandler is Ownable { uint256 public _platformFee = 500000000000000000; uint256 public _stakingPoolFee = 500000000000000000; address public _platformWalletAddress = 0x79FD86538966541681cb7E8aCf5eF4767736a142; address public immutable _stakingPoolAddress; address private immutable wethAddress; uint256 public _feeThreshold = 1000000000000000000; uint256 public lastStakingPayoutTime = block.timestamp; address public immutable _sigilTokenAddress; IUniswapV2Router02 public immutable uniswapV2Router; constructor(address sigilTokenAddress_, address stakingPoolAddress_){ _sigilTokenAddress = sigilTokenAddress_; _stakingPoolAddress = stakingPoolAddress_; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; wethAddress = _uniswapV2Router.WETH(); } function changeFeeThreshold(uint256 newFeeThreshold) public onlyOwner { _feeThreshold = newFeeThreshold; } function changeFeePercentages(uint256 stakersPercentage, uint256 platformPercentage) public onlyOwner { _platformFee = platformPercentage; _stakingPoolFee = stakersPercentage; } function collectFees(uint256 feeAmount) public { IERC20 wethContract = IERC20(wethAddress); require(wethContract.allowance(msg.sender, address(this)) >= feeAmount, "Allowance is not sufficient!"); require(wethContract.balanceOf(msg.sender) >= feeAmount, "Balance is not sufficient!"); wethContract.transferFrom(msg.sender, address(this), feeAmount); if(wethContract.balanceOf(address(this)) >= _feeThreshold){ uint256 platformCut = _platformFee * _feeThreshold / 10**18; uint256 stakersCut = _stakingPoolFee * _feeThreshold / 10**18; wethContract.transfer(_platformWalletAddress, platformCut); wethContract.approve(address(uniswapV2Router), stakersCut); address[] memory path = new address[](2); path[0] = wethAddress; path[1] = _sigilTokenAddress; uniswapV2Router.swapExactTokensForTokensSupportingFeeOnTransferTokens( stakersCut, 0, path, address(this), block.timestamp ); if(block.timestamp > lastStakingPayoutTime + 43200){ //43200 uint256 sigilToPay = IERC20(_sigilTokenAddress).balanceOf(address(this)); IERC20(_sigilTokenAddress).approve(_stakingPoolAddress, sigilToPay); IStaking(_stakingPoolAddress).addFees(sigilToPay); lastStakingPayoutTime = block.timestamp; } } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"sigilTokenAddress_","type":"address"},{"internalType":"address","name":"stakingPoolAddress_","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":[],"name":"_feeThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_platformFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_platformWalletAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sigilTokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_stakingPoolAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_stakingPoolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"stakersPercentage","type":"uint256"},{"internalType":"uint256","name":"platformPercentage","type":"uint256"}],"name":"changeFeePercentages","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFeeThreshold","type":"uint256"}],"name":"changeFeeThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"name":"collectFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lastStakingPayoutTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
6101006040526706f05b59d3b200006001556706f05b59d3b200006002557379fd86538966541681cb7e8acf5ef4767736a142600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550670de0b6b3a7640000600455426005553480156200008f57600080fd5b5060405162001a3338038062001a338339818101604052810190620000b5919062000363565b620000d5620000c96200025460201b60201c565b6200025c60201b60201c565b8173ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250506000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001da57600080fd5b505afa158015620001ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000215919062000337565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b81525050505050620003f2565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000815190506200033181620003d8565b92915050565b6000602082840312156200034a57600080fd5b60006200035a8482850162000320565b91505092915050565b600080604083850312156200037757600080fd5b6000620003878582860162000320565b92505060206200039a8582860162000320565b9150509250929050565b6000620003b182620003b8565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b620003e381620003a4565b8114620003ef57600080fd5b50565b60805160601c60a05160601c60c05160601c60e05160601c6115c3620004706000396000818161027f0152818161070a015261093a0152600081816108a5015281816109e701528181610a920152610c220152600081816103140152610810015260008181610ace01528181610b600152610c4601526115c36000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063b17acdcd1161008c578063ed132ccf11610066578063ed132ccf14610201578063ed537cf71461021f578063f2fde38b1461023d578063fd5e2d7314610259576100ea565b8063b17acdcd146101a9578063bb244e40146101c5578063c14d95c1146101e3576100ea565b8063715018a6116100c8578063715018a6146101475780637a2e4bfd1461015157806381f092381461016f5780638da5cb5b1461018b576100ea565b80630d99b898146100ef5780631694505e1461010d5780635f5597861461012b575b600080fd5b6100f7610277565b6040516101049190611202565b60405180910390f35b61011561027d565b6040516101229190611167565b60405180910390f35b61014560048036038101906101409190610ee8565b6102a1565b005b61014f6102b3565b005b6101596102c7565b6040516101669190611202565b60405180910390f35b61018960048036038101906101849190610f3a565b6102cd565b005b6101936102e7565b6040516101a091906110c3565b60405180910390f35b6101c360048036038101906101be9190610ee8565b610310565b005b6101cd610bfa565b6040516101da91906110c3565b60405180910390f35b6101eb610c20565b6040516101f891906110c3565b60405180910390f35b610209610c44565b60405161021691906110c3565b60405180910390f35b610227610c68565b6040516102349190611202565b60405180910390f35b61025760048036038101906102529190610e96565b610c6e565b005b610261610cf2565b60405161026e9190611202565b60405180910390f35b60025481565b7f000000000000000000000000000000000000000000000000000000000000000081565b6102a9610cf8565b8060048190555050565b6102bb610cf8565b6102c56000610d76565b565b60045481565b6102d5610cf8565b80600181905550816002819055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f00000000000000000000000000000000000000000000000000000000000000009050818173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b81526004016103719291906110de565b60206040518083038186803b15801561038957600080fd5b505afa15801561039d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c19190610f11565b1015610402576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103f9906111e2565b60405180910390fd5b818173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b815260040161043c91906110c3565b60206040518083038186803b15801561045457600080fd5b505afa158015610468573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048c9190610f11565b10156104cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c4906111a2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b815260040161050a93929190611107565b602060405180830381600087803b15801561052457600080fd5b505af1158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610ebf565b506004548173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161059991906110c3565b60206040518083038186803b1580156105b157600080fd5b505afa1580156105c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e99190610f11565b10610bf6576000670de0b6b3a76400006004546001546106099190611348565b6106139190611317565b90506000670de0b6b3a76400006004546002546106309190611348565b61063a9190611317565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b815260040161069992919061113e565b602060405180830381600087803b1580156106b357600080fd5b505af11580156106c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106eb9190610ebf565b508273ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f0000000000000000000000000000000000000000000000000000000000000000836040518363ffffffff1660e01b815260040161074792919061113e565b602060405180830381600087803b15801561076157600080fd5b505af1158015610775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107999190610ebf565b506000600267ffffffffffffffff8111156107dd577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405190808252806020026020018201604052801561080b5781602001602082028036833780820191505090505b5090507f000000000000000000000000000000000000000000000000000000000000000081600081518110610869577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000000000000000000000000000000000000000000000816001815181106108fe577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635c11d7958360008430426040518663ffffffff1660e01b815260040161099a95949392919061121d565b600060405180830381600087803b1580156109b457600080fd5b505af11580156109c8573d6000803e3d6000fd5b5050505061a8c06005546109dc91906112c1565b421115610bf25760007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610a3e91906110c3565b60206040518083038186803b158015610a5657600080fd5b505afa158015610a6a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8e9190610f11565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f0000000000000000000000000000000000000000000000000000000000000000836040518363ffffffff1660e01b8152600401610b0b92919061113e565b602060405180830381600087803b158015610b2557600080fd5b505af1158015610b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5d9190610ebf565b507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663107e9cf1826040518263ffffffff1660e01b8152600401610bb79190611202565b600060405180830381600087803b158015610bd157600080fd5b505af1158015610be5573d6000803e3d6000fd5b5050505042600581905550505b5050505b5050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b60055481565b610c76610cf8565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdd90611182565b60405180910390fd5b610cef81610d76565b50565b60015481565b610d00610e3a565b73ffffffffffffffffffffffffffffffffffffffff16610d1e6102e7565b73ffffffffffffffffffffffffffffffffffffffff1614610d74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6b906111c2565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600081359050610e5181611548565b92915050565b600081519050610e668161155f565b92915050565b600081359050610e7b81611576565b92915050565b600081519050610e9081611576565b92915050565b600060208284031215610ea857600080fd5b6000610eb684828501610e42565b91505092915050565b600060208284031215610ed157600080fd5b6000610edf84828501610e57565b91505092915050565b600060208284031215610efa57600080fd5b6000610f0884828501610e6c565b91505092915050565b600060208284031215610f2357600080fd5b6000610f3184828501610e81565b91505092915050565b60008060408385031215610f4d57600080fd5b6000610f5b85828601610e6c565b9250506020610f6c85828601610e6c565b9150509250929050565b6000610f828383610f8e565b60208301905092915050565b610f97816113a2565b82525050565b610fa6816113a2565b82525050565b6000610fb782611287565b610fc1818561129f565b9350610fcc83611277565b8060005b83811015610ffd578151610fe48882610f76565b9750610fef83611292565b925050600181019050610fd0565b5085935050505092915050565b611013816113ea565b82525050565b6110228161140e565b82525050565b60006110356026836112b0565b91506110408261147e565b604082019050919050565b6000611058601a836112b0565b9150611063826114cd565b602082019050919050565b600061107b6020836112b0565b9150611086826114f6565b602082019050919050565b600061109e601c836112b0565b91506110a98261151f565b602082019050919050565b6110bd816113e0565b82525050565b60006020820190506110d86000830184610f9d565b92915050565b60006040820190506110f36000830185610f9d565b6111006020830184610f9d565b9392505050565b600060608201905061111c6000830186610f9d565b6111296020830185610f9d565b61113660408301846110b4565b949350505050565b60006040820190506111536000830185610f9d565b61116060208301846110b4565b9392505050565b600060208201905061117c600083018461100a565b92915050565b6000602082019050818103600083015261119b81611028565b9050919050565b600060208201905081810360008301526111bb8161104b565b9050919050565b600060208201905081810360008301526111db8161106e565b9050919050565b600060208201905081810360008301526111fb81611091565b9050919050565b600060208201905061121760008301846110b4565b92915050565b600060a08201905061123260008301886110b4565b61123f6020830187611019565b81810360408301526112518186610fac565b90506112606060830185610f9d565b61126d60808301846110b4565b9695505050505050565b6000819050602082019050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006112cc826113e0565b91506112d7836113e0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561130c5761130b611420565b5b828201905092915050565b6000611322826113e0565b915061132d836113e0565b92508261133d5761133c61144f565b5b828204905092915050565b6000611353826113e0565b915061135e836113e0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561139757611396611420565b5b828202905092915050565b60006113ad826113c0565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006113f5826113fc565b9050919050565b6000611407826113c0565b9050919050565b6000611419826113e0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f42616c616e6365206973206e6f742073756666696369656e7421000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f416c6c6f77616e6365206973206e6f742073756666696369656e742100000000600082015250565b611551816113a2565b811461155c57600080fd5b50565b611568816113b4565b811461157357600080fd5b50565b61157f816113e0565b811461158a57600080fd5b5056fea2646970667358221220125fd901f472016ec3b42c20543f3f39e498a68d4df5404be5cbd591433173ad64736f6c63430008040033000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e400000000000000000000000069116ca6b231530c6970d7fd107e6d1b0299fb95
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c8063b17acdcd1161008c578063ed132ccf11610066578063ed132ccf14610201578063ed537cf71461021f578063f2fde38b1461023d578063fd5e2d7314610259576100ea565b8063b17acdcd146101a9578063bb244e40146101c5578063c14d95c1146101e3576100ea565b8063715018a6116100c8578063715018a6146101475780637a2e4bfd1461015157806381f092381461016f5780638da5cb5b1461018b576100ea565b80630d99b898146100ef5780631694505e1461010d5780635f5597861461012b575b600080fd5b6100f7610277565b6040516101049190611202565b60405180910390f35b61011561027d565b6040516101229190611167565b60405180910390f35b61014560048036038101906101409190610ee8565b6102a1565b005b61014f6102b3565b005b6101596102c7565b6040516101669190611202565b60405180910390f35b61018960048036038101906101849190610f3a565b6102cd565b005b6101936102e7565b6040516101a091906110c3565b60405180910390f35b6101c360048036038101906101be9190610ee8565b610310565b005b6101cd610bfa565b6040516101da91906110c3565b60405180910390f35b6101eb610c20565b6040516101f891906110c3565b60405180910390f35b610209610c44565b60405161021691906110c3565b60405180910390f35b610227610c68565b6040516102349190611202565b60405180910390f35b61025760048036038101906102529190610e96565b610c6e565b005b610261610cf2565b60405161026e9190611202565b60405180910390f35b60025481565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6102a9610cf8565b8060048190555050565b6102bb610cf8565b6102c56000610d76565b565b60045481565b6102d5610cf8565b80600181905550816002819055505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc29050818173ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e33306040518363ffffffff1660e01b81526004016103719291906110de565b60206040518083038186803b15801561038957600080fd5b505afa15801561039d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c19190610f11565b1015610402576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103f9906111e2565b60405180910390fd5b818173ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b815260040161043c91906110c3565b60206040518083038186803b15801561045457600080fd5b505afa158015610468573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061048c9190610f11565b10156104cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104c4906111a2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff1660e01b815260040161050a93929190611107565b602060405180830381600087803b15801561052457600080fd5b505af1158015610538573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055c9190610ebf565b506004548173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161059991906110c3565b60206040518083038186803b1580156105b157600080fd5b505afa1580156105c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e99190610f11565b10610bf6576000670de0b6b3a76400006004546001546106099190611348565b6106139190611317565b90506000670de0b6b3a76400006004546002546106309190611348565b61063a9190611317565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b815260040161069992919061113e565b602060405180830381600087803b1580156106b357600080fd5b505af11580156106c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106eb9190610ebf565b508273ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d836040518363ffffffff1660e01b815260040161074792919061113e565b602060405180830381600087803b15801561076157600080fd5b505af1158015610775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107999190610ebf565b506000600267ffffffffffffffff8111156107dd577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405190808252806020026020018201604052801561080b5781602001602082028036833780820191505090505b5090507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600081518110610869577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e4816001815181106108fe577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff16635c11d7958360008430426040518663ffffffff1660e01b815260040161099a95949392919061121d565b600060405180830381600087803b1580156109b457600080fd5b505af11580156109c8573d6000803e3d6000fd5b5050505061a8c06005546109dc91906112c1565b421115610bf25760007f000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610a3e91906110c3565b60206040518083038186803b158015610a5657600080fd5b505afa158015610a6a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a8e9190610f11565b90507f000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e473ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f00000000000000000000000069116ca6b231530c6970d7fd107e6d1b0299fb95836040518363ffffffff1660e01b8152600401610b0b92919061113e565b602060405180830381600087803b158015610b2557600080fd5b505af1158015610b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5d9190610ebf565b507f00000000000000000000000069116ca6b231530c6970d7fd107e6d1b0299fb9573ffffffffffffffffffffffffffffffffffffffff1663107e9cf1826040518263ffffffff1660e01b8152600401610bb79190611202565b600060405180830381600087803b158015610bd157600080fd5b505af1158015610be5573d6000803e3d6000fd5b5050505042600581905550505b5050505b5050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e481565b7f00000000000000000000000069116ca6b231530c6970d7fd107e6d1b0299fb9581565b60055481565b610c76610cf8565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdd90611182565b60405180910390fd5b610cef81610d76565b50565b60015481565b610d00610e3a565b73ffffffffffffffffffffffffffffffffffffffff16610d1e6102e7565b73ffffffffffffffffffffffffffffffffffffffff1614610d74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6b906111c2565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b600081359050610e5181611548565b92915050565b600081519050610e668161155f565b92915050565b600081359050610e7b81611576565b92915050565b600081519050610e9081611576565b92915050565b600060208284031215610ea857600080fd5b6000610eb684828501610e42565b91505092915050565b600060208284031215610ed157600080fd5b6000610edf84828501610e57565b91505092915050565b600060208284031215610efa57600080fd5b6000610f0884828501610e6c565b91505092915050565b600060208284031215610f2357600080fd5b6000610f3184828501610e81565b91505092915050565b60008060408385031215610f4d57600080fd5b6000610f5b85828601610e6c565b9250506020610f6c85828601610e6c565b9150509250929050565b6000610f828383610f8e565b60208301905092915050565b610f97816113a2565b82525050565b610fa6816113a2565b82525050565b6000610fb782611287565b610fc1818561129f565b9350610fcc83611277565b8060005b83811015610ffd578151610fe48882610f76565b9750610fef83611292565b925050600181019050610fd0565b5085935050505092915050565b611013816113ea565b82525050565b6110228161140e565b82525050565b60006110356026836112b0565b91506110408261147e565b604082019050919050565b6000611058601a836112b0565b9150611063826114cd565b602082019050919050565b600061107b6020836112b0565b9150611086826114f6565b602082019050919050565b600061109e601c836112b0565b91506110a98261151f565b602082019050919050565b6110bd816113e0565b82525050565b60006020820190506110d86000830184610f9d565b92915050565b60006040820190506110f36000830185610f9d565b6111006020830184610f9d565b9392505050565b600060608201905061111c6000830186610f9d565b6111296020830185610f9d565b61113660408301846110b4565b949350505050565b60006040820190506111536000830185610f9d565b61116060208301846110b4565b9392505050565b600060208201905061117c600083018461100a565b92915050565b6000602082019050818103600083015261119b81611028565b9050919050565b600060208201905081810360008301526111bb8161104b565b9050919050565b600060208201905081810360008301526111db8161106e565b9050919050565b600060208201905081810360008301526111fb81611091565b9050919050565b600060208201905061121760008301846110b4565b92915050565b600060a08201905061123260008301886110b4565b61123f6020830187611019565b81810360408301526112518186610fac565b90506112606060830185610f9d565b61126d60808301846110b4565b9695505050505050565b6000819050602082019050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006112cc826113e0565b91506112d7836113e0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561130c5761130b611420565b5b828201905092915050565b6000611322826113e0565b915061132d836113e0565b92508261133d5761133c61144f565b5b828204905092915050565b6000611353826113e0565b915061135e836113e0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561139757611396611420565b5b828202905092915050565b60006113ad826113c0565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006113f5826113fc565b9050919050565b6000611407826113c0565b9050919050565b6000611419826113e0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f42616c616e6365206973206e6f742073756666696369656e7421000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f416c6c6f77616e6365206973206e6f742073756666696369656e742100000000600082015250565b611551816113a2565b811461155c57600080fd5b50565b611568816113b4565b811461157357600080fd5b50565b61157f816113e0565b811461158a57600080fd5b5056fea2646970667358221220125fd901f472016ec3b42c20543f3f39e498a68d4df5404be5cbd591433173ad64736f6c63430008040033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e400000000000000000000000069116ca6b231530c6970d7fd107e6d1b0299fb95
-----Decoded View---------------
Arg [0] : sigilTokenAddress_ (address): 0xF029Fd6b5ED35C825Dd02B7A02952C30002840E4
Arg [1] : stakingPoolAddress_ (address): 0x69116ca6B231530c6970d7Fd107e6d1B0299fb95
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000f029fd6b5ed35c825dd02b7a02952c30002840e4
Arg [1] : 00000000000000000000000069116ca6b231530c6970d7fd107e6d1b0299fb95
Deployed Bytecode Sourcemap
25387:2857:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25490:51;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25903;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26363:120;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24427:103;;;:::i;:::-;;25733:50;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26491:200;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;23779:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26699:1540;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;25548:82;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25853:43;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25637:44;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25790:54;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24685:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;25435:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25490:51;;;;:::o;25903:::-;;;:::o;26363:120::-;23665:13;:11;:13::i;:::-;26460:15:::1;26444:13;:31;;;;26363:120:::0;:::o;24427:103::-;23665:13;:11;:13::i;:::-;24492:30:::1;24519:1;24492:18;:30::i;:::-;24427:103::o:0;25733:50::-;;;;:::o;26491:200::-;23665:13;:11;:13::i;:::-;26619:18:::1;26604:12;:33;;;;26666:17;26648:15;:35;;;;26491:200:::0;;:::o;23779:87::-;23825:7;23852:6;;;;;;;;;;;23845:13;;23779:87;:::o;26699:1540::-;26757:19;26786:11;26757:41;;26870:9;26817:12;:22;;;26840:10;26860:4;26817:49;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:62;;26809:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;26969:9;26931:12;:22;;;26954:10;26931:34;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:47;;26923:86;;;;;;;;;;;;:::i;:::-;;;;;;;;;27020:12;:25;;;27046:10;27066:4;27073:9;27020:63;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27140:13;;27099:12;:22;;;27130:4;27099:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:54;27096:1135;;27169:19;27222:6;27206:13;;27191:12;;:28;;;;:::i;:::-;:37;;;;:::i;:::-;27169:59;;27243:18;27298:6;27282:13;;27264:15;;:31;;;;:::i;:::-;:40;;;;:::i;:::-;27243:61;;27321:12;:21;;;27343:22;;;;;;;;;;;27367:11;27321:58;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27394:12;:20;;;27423:15;27441:10;27394:58;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27469:21;27507:1;27493:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27469:40;;27534:11;27524:4;27529:1;27524:7;;;;;;;;;;;;;;;;;;;;;:21;;;;;;;;;;;27570:18;27560:4;27565:1;27560:7;;;;;;;;;;;;;;;;;;;;;:28;;;;;;;;;;;27605:15;:69;;;27693:10;27722:1;27742:4;27773;27797:15;27605:222;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27887:5;27863:21;;:29;;;;:::i;:::-;27845:15;:47;27842:378;;;27920:18;27948;27941:36;;;27986:4;27941:51;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;27920:72;;28018:18;28011:34;;;28046:19;28067:10;28011:67;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28106:19;28097:37;;;28135:10;28097:49;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28189:15;28165:21;:39;;;;27842:378;;27096:1135;;;;26699:1540;;:::o;25548:82::-;;;;;;;;;;;;;:::o;25853:43::-;;;:::o;25637:44::-;;;:::o;25790:54::-;;;;:::o;24685:201::-;23665:13;:11;:13::i;:::-;24794:1:::1;24774:22;;:8;:22;;;;24766:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;24850:28;24869:8;24850:18;:28::i;:::-;24685:201:::0;:::o;25435:48::-;;;;:::o;23944:132::-;24019:12;:10;:12::i;:::-;24008:23;;:7;:5;:7::i;:::-;:23;;;24000:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;23944:132::o;25046:191::-;25120:16;25139:6;;;;;;;;;;;25120:25;;25165:8;25156:6;;:17;;;;;;;;;;;;;;;;;;25220:8;25189:40;;25210:8;25189:40;;;;;;;;;;;;25046:191;;:::o;9386:98::-;9439:7;9466:10;9459:17;;9386:98;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:137::-;206:5;237:6;231:13;222:22;;253:30;277:5;253:30;:::i;:::-;212:77;;;;:::o;295:139::-;341:5;379:6;366:20;357:29;;395:33;422:5;395:33;:::i;:::-;347:87;;;;:::o;440:143::-;497:5;528:6;522:13;513:22;;544:33;571:5;544:33;:::i;:::-;503:80;;;;:::o;589:262::-;648:6;697:2;685:9;676:7;672:23;668:32;665:2;;;713:1;710;703:12;665:2;756:1;781:53;826:7;817:6;806:9;802:22;781:53;:::i;:::-;771:63;;727:117;655:196;;;;:::o;857:278::-;924:6;973:2;961:9;952:7;948:23;944:32;941:2;;;989:1;986;979:12;941:2;1032:1;1057:61;1110:7;1101:6;1090:9;1086:22;1057:61;:::i;:::-;1047:71;;1003:125;931:204;;;;:::o;1141:262::-;1200:6;1249:2;1237:9;1228:7;1224:23;1220:32;1217:2;;;1265:1;1262;1255:12;1217:2;1308:1;1333:53;1378:7;1369:6;1358:9;1354:22;1333:53;:::i;:::-;1323:63;;1279:117;1207:196;;;;:::o;1409:284::-;1479:6;1528:2;1516:9;1507:7;1503:23;1499:32;1496:2;;;1544:1;1541;1534:12;1496:2;1587:1;1612:64;1668:7;1659:6;1648:9;1644:22;1612:64;:::i;:::-;1602:74;;1558:128;1486:207;;;;:::o;1699:407::-;1767:6;1775;1824:2;1812:9;1803:7;1799:23;1795:32;1792:2;;;1840:1;1837;1830:12;1792:2;1883:1;1908:53;1953:7;1944:6;1933:9;1929:22;1908:53;:::i;:::-;1898:63;;1854:117;2010:2;2036:53;2081:7;2072:6;2061:9;2057:22;2036:53;:::i;:::-;2026:63;;1981:118;1782:324;;;;;:::o;2112:179::-;2181:10;2202:46;2244:3;2236:6;2202:46;:::i;:::-;2280:4;2275:3;2271:14;2257:28;;2192:99;;;;:::o;2297:108::-;2374:24;2392:5;2374:24;:::i;:::-;2369:3;2362:37;2352:53;;:::o;2411:118::-;2498:24;2516:5;2498:24;:::i;:::-;2493:3;2486:37;2476:53;;:::o;2565:732::-;2684:3;2713:54;2761:5;2713:54;:::i;:::-;2783:86;2862:6;2857:3;2783:86;:::i;:::-;2776:93;;2893:56;2943:5;2893:56;:::i;:::-;2972:7;3003:1;2988:284;3013:6;3010:1;3007:13;2988:284;;;3089:6;3083:13;3116:63;3175:3;3160:13;3116:63;:::i;:::-;3109:70;;3202:60;3255:6;3202:60;:::i;:::-;3192:70;;3048:224;3035:1;3032;3028:9;3023:14;;2988:284;;;2992:14;3288:3;3281:10;;2689:608;;;;;;;:::o;3303:183::-;3416:63;3473:5;3416:63;:::i;:::-;3411:3;3404:76;3394:92;;:::o;3492:147::-;3587:45;3626:5;3587:45;:::i;:::-;3582:3;3575:58;3565:74;;:::o;3645:366::-;3787:3;3808:67;3872:2;3867:3;3808:67;:::i;:::-;3801:74;;3884:93;3973:3;3884:93;:::i;:::-;4002:2;3997:3;3993:12;3986:19;;3791:220;;;:::o;4017:366::-;4159:3;4180:67;4244:2;4239:3;4180:67;:::i;:::-;4173:74;;4256:93;4345:3;4256:93;:::i;:::-;4374:2;4369:3;4365:12;4358:19;;4163:220;;;:::o;4389:366::-;4531:3;4552:67;4616:2;4611:3;4552:67;:::i;:::-;4545:74;;4628:93;4717:3;4628:93;:::i;:::-;4746:2;4741:3;4737:12;4730:19;;4535:220;;;:::o;4761:366::-;4903:3;4924:67;4988:2;4983:3;4924:67;:::i;:::-;4917:74;;5000:93;5089:3;5000:93;:::i;:::-;5118:2;5113:3;5109:12;5102:19;;4907:220;;;:::o;5133:118::-;5220:24;5238:5;5220:24;:::i;:::-;5215:3;5208:37;5198:53;;:::o;5257:222::-;5350:4;5388:2;5377:9;5373:18;5365:26;;5401:71;5469:1;5458:9;5454:17;5445:6;5401:71;:::i;:::-;5355:124;;;;:::o;5485:332::-;5606:4;5644:2;5633:9;5629:18;5621:26;;5657:71;5725:1;5714:9;5710:17;5701:6;5657:71;:::i;:::-;5738:72;5806:2;5795:9;5791:18;5782:6;5738:72;:::i;:::-;5611:206;;;;;:::o;5823:442::-;5972:4;6010:2;5999:9;5995:18;5987:26;;6023:71;6091:1;6080:9;6076:17;6067:6;6023:71;:::i;:::-;6104:72;6172:2;6161:9;6157:18;6148:6;6104:72;:::i;:::-;6186;6254:2;6243:9;6239:18;6230:6;6186:72;:::i;:::-;5977:288;;;;;;:::o;6271:332::-;6392:4;6430:2;6419:9;6415:18;6407:26;;6443:71;6511:1;6500:9;6496:17;6487:6;6443:71;:::i;:::-;6524:72;6592:2;6581:9;6577:18;6568:6;6524:72;:::i;:::-;6397:206;;;;;:::o;6609:274::-;6728:4;6766:2;6755:9;6751:18;6743:26;;6779:97;6873:1;6862:9;6858:17;6849:6;6779:97;:::i;:::-;6733:150;;;;:::o;6889:419::-;7055:4;7093:2;7082:9;7078:18;7070:26;;7142:9;7136:4;7132:20;7128:1;7117:9;7113:17;7106:47;7170:131;7296:4;7170:131;:::i;:::-;7162:139;;7060:248;;;:::o;7314:419::-;7480:4;7518:2;7507:9;7503:18;7495:26;;7567:9;7561:4;7557:20;7553:1;7542:9;7538:17;7531:47;7595:131;7721:4;7595:131;:::i;:::-;7587:139;;7485:248;;;:::o;7739:419::-;7905:4;7943:2;7932:9;7928:18;7920:26;;7992:9;7986:4;7982:20;7978:1;7967:9;7963:17;7956:47;8020:131;8146:4;8020:131;:::i;:::-;8012:139;;7910:248;;;:::o;8164:419::-;8330:4;8368:2;8357:9;8353:18;8345:26;;8417:9;8411:4;8407:20;8403:1;8392:9;8388:17;8381:47;8445:131;8571:4;8445:131;:::i;:::-;8437:139;;8335:248;;;:::o;8589:222::-;8682:4;8720:2;8709:9;8705:18;8697:26;;8733:71;8801:1;8790:9;8786:17;8777:6;8733:71;:::i;:::-;8687:124;;;;:::o;8817:831::-;9080:4;9118:3;9107:9;9103:19;9095:27;;9132:71;9200:1;9189:9;9185:17;9176:6;9132:71;:::i;:::-;9213:80;9289:2;9278:9;9274:18;9265:6;9213:80;:::i;:::-;9340:9;9334:4;9330:20;9325:2;9314:9;9310:18;9303:48;9368:108;9471:4;9462:6;9368:108;:::i;:::-;9360:116;;9486:72;9554:2;9543:9;9539:18;9530:6;9486:72;:::i;:::-;9568:73;9636:3;9625:9;9621:19;9612:6;9568:73;:::i;:::-;9085:563;;;;;;;;:::o;9654:132::-;9721:4;9744:3;9736:11;;9774:4;9769:3;9765:14;9757:22;;9726:60;;;:::o;9792:114::-;9859:6;9893:5;9887:12;9877:22;;9866:40;;;:::o;9912:113::-;9982:4;10014;10009:3;10005:14;9997:22;;9987:38;;;:::o;10031:184::-;10130:11;10164:6;10159:3;10152:19;10204:4;10199:3;10195:14;10180:29;;10142:73;;;;:::o;10221:169::-;10305:11;10339:6;10334:3;10327:19;10379:4;10374:3;10370:14;10355:29;;10317:73;;;;:::o;10396:305::-;10436:3;10455:20;10473:1;10455:20;:::i;:::-;10450:25;;10489:20;10507:1;10489:20;:::i;:::-;10484:25;;10643:1;10575:66;10571:74;10568:1;10565:81;10562:2;;;10649:18;;:::i;:::-;10562:2;10693:1;10690;10686:9;10679:16;;10440:261;;;;:::o;10707:185::-;10747:1;10764:20;10782:1;10764:20;:::i;:::-;10759:25;;10798:20;10816:1;10798:20;:::i;:::-;10793:25;;10837:1;10827:2;;10842:18;;:::i;:::-;10827:2;10884:1;10881;10877:9;10872:14;;10749:143;;;;:::o;10898:348::-;10938:7;10961:20;10979:1;10961:20;:::i;:::-;10956:25;;10995:20;11013:1;10995:20;:::i;:::-;10990:25;;11183:1;11115:66;11111:74;11108:1;11105:81;11100:1;11093:9;11086:17;11082:105;11079:2;;;11190:18;;:::i;:::-;11079:2;11238:1;11235;11231:9;11220:20;;10946:300;;;;:::o;11252:96::-;11289:7;11318:24;11336:5;11318:24;:::i;:::-;11307:35;;11297:51;;;:::o;11354:90::-;11388:7;11431:5;11424:13;11417:21;11406:32;;11396:48;;;:::o;11450:126::-;11487:7;11527:42;11520:5;11516:54;11505:65;;11495:81;;;:::o;11582:77::-;11619:7;11648:5;11637:16;;11627:32;;;:::o;11665:178::-;11741:9;11774:63;11831:5;11774:63;:::i;:::-;11761:76;;11751:92;;;:::o;11849:139::-;11925:9;11958:24;11976:5;11958:24;:::i;:::-;11945:37;;11935:53;;;:::o;11994:121::-;12052:9;12085:24;12103:5;12085:24;:::i;:::-;12072:37;;12062:53;;;:::o;12121:180::-;12169:77;12166:1;12159:88;12266:4;12263:1;12256:15;12290:4;12287:1;12280:15;12307:180;12355:77;12352:1;12345:88;12452:4;12449:1;12442:15;12476:4;12473:1;12466:15;12493:225;12633:34;12629:1;12621:6;12617:14;12610:58;12702:8;12697:2;12689:6;12685:15;12678:33;12599:119;:::o;12724:176::-;12864:28;12860:1;12852:6;12848:14;12841:52;12830:70;:::o;12906:182::-;13046:34;13042:1;13034:6;13030:14;13023:58;13012:76;:::o;13094:178::-;13234:30;13230:1;13222:6;13218:14;13211:54;13200:72;:::o;13278:122::-;13351:24;13369:5;13351:24;:::i;:::-;13344:5;13341:35;13331:2;;13390:1;13387;13380:12;13331:2;13321:79;:::o;13406:116::-;13476:21;13491:5;13476:21;:::i;:::-;13469:5;13466:32;13456:2;;13512:1;13509;13502:12;13456:2;13446:76;:::o;13528:122::-;13601:24;13619:5;13601:24;:::i;:::-;13594:5;13591:35;13581:2;;13640:1;13637;13630:12;13581:2;13571:79;:::o
Swarm Source
ipfs://125fd901f472016ec3b42c20543f3f39e498a68d4df5404be5cbd591433173ad
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $2,554.47 | 0.0106 | $26.96 |
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.