Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 9 from a total of 9 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 13726183 | 1575 days ago | IN | 0 ETH | 0.00527176 | ||||
| Approve | 13719879 | 1576 days ago | IN | 0 ETH | 0.00569694 | ||||
| Transfer | 13296499 | 1643 days ago | IN | 0 ETH | 0.00324821 | ||||
| Transfer | 13282707 | 1645 days ago | IN | 0 ETH | 0.00362612 | ||||
| Transfer | 13263476 | 1648 days ago | IN | 0 ETH | 0.00168692 | ||||
| Approve | 13022651 | 1685 days ago | IN | 0 ETH | 0.0017498 | ||||
| Approve | 13021849 | 1685 days ago | IN | 0 ETH | 0.00219983 | ||||
| Mint | 12760185 | 1726 days ago | IN | 0 ETH | 0.00081894 | ||||
| Increase Allowan... | 12760166 | 1726 days ago | IN | 0 ETH | 0.00048825 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
PHQCOIN
Compiler Version
v0.4.24+commit.e67f0147
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2021-07-04
*/
pragma solidity ^0.4.24;
/**
* @title ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/20
*/
interface IERC20 {
function totalSupply() external view returns (uint256);
function balanceOf(address who) external view returns (uint256);
function allowance(address owner, address spender)
external view returns (uint256);
function transfer(address to, uint256 value) external returns (bool);
function approve(address spender, uint256 value)
external returns (bool);
function transferFrom(address from, address to, uint256 value)
external returns (bool);
event Transfer(
address indexed from,
address indexed to,
uint256 value
);
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
}
/**
* @title SafeMath
* @dev Math operations with safety checks that revert on error
*/
library SafeMath {
/**
* @dev Multiplies two numbers, reverts on overflow.
*/
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
// 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-solidity/pull/522
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b);
return c;
}
/**
* @dev Integer division of two numbers truncating the quotient, reverts on division by zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
require(b > 0); // Solidity only automatically asserts when dividing by 0
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
/**
* @dev Subtracts two numbers, reverts on overflow (i.e. if subtrahend is greater than minuend).
*/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
require(b <= a);
uint256 c = a - b;
return c;
}
/**
* @dev Adds two numbers, reverts on overflow.
*/
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a);
return c;
}
/**
* @dev Divides two numbers and returns the remainder (unsigned integer modulo),
* reverts when dividing by zero.
*/
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
require(b != 0);
return a % b;
}
}
/**
* @title Standard ERC20 token
*
* @dev Implementation of the basic standard token.
* https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md
* Originally based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol
*/
contract ERC20 is IERC20 {
using SafeMath for uint256;
mapping (address => uint256) private _balances;
mapping (address => mapping (address => uint256)) private _allowed;
uint256 private _totalSupply;
/**
* @dev Total number of tokens in existence
*/
function totalSupply() public view returns (uint256) {
return _totalSupply;
}
/**
* @dev Gets the balance of the specified address.
* @param owner The address to query the balance of.
* @return An uint256 representing the amount owned by the passed address.
*/
function balanceOf(address owner) public view returns (uint256) {
return _balances[owner];
}
/**
* @dev Function to check the amount of tokens that an owner allowed to a spender.
* @param owner address The address which owns the funds.
* @param spender address The address which will spend the funds.
* @return A uint256 specifying the amount of tokens still available for the spender.
*/
function allowance(
address owner,
address spender
)
public
view
returns (uint256)
{
return _allowed[owner][spender];
}
/**
* @dev Transfer token for a specified address
* @param to The address to transfer to.
* @param value The amount to be transferred.
*/
function transfer(address to, uint256 value) public returns (bool) {
_transfer(msg.sender, to, value);
return true;
}
/**
* @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
* 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
* @param spender The address which will spend the funds.
* @param value The amount of tokens to be spent.
*/
function approve(address spender, uint256 value) public returns (bool) {
require(spender != address(0));
_allowed[msg.sender][spender] = value;
emit Approval(msg.sender, spender, value);
return true;
}
/**
* @dev Transfer tokens from one address to another
* @param from address The address which you want to send tokens from
* @param to address The address which you want to transfer to
* @param value uint256 the amount of tokens to be transferred
*/
function transferFrom(
address from,
address to,
uint256 value
)
public
returns (bool)
{
require(value <= _allowed[from][msg.sender]);
_allowed[from][msg.sender] = _allowed[from][msg.sender].sub(value);
_transfer(from, to, value);
return true;
}
/**
* @dev Increase the amount of tokens that an owner allowed to a spender.
* approve should be called when allowed_[_spender] == 0. To increment
* allowed value is better to use this function to avoid 2 calls (and wait until
* the first transaction is mined)
* From MonolithDAO Token.sol
* @param spender The address which will spend the funds.
* @param addedValue The amount of tokens to increase the allowance by.
*/
function increaseAllowance(
address spender,
uint256 addedValue
)
public
returns (bool)
{
require(spender != address(0));
_allowed[msg.sender][spender] = (
_allowed[msg.sender][spender].add(addedValue));
emit Approval(msg.sender, spender, _allowed[msg.sender][spender]);
return true;
}
/**
* @dev Decrease the amount of tokens that an owner allowed to a spender.
* approve should be called when allowed_[_spender] == 0. To decrement
* allowed value is better to use this function to avoid 2 calls (and wait until
* the first transaction is mined)
* From MonolithDAO Token.sol
* @param spender The address which will spend the funds.
* @param subtractedValue The amount of tokens to decrease the allowance by.
*/
function decreaseAllowance(
address spender,
uint256 subtractedValue
)
public
returns (bool)
{
require(spender != address(0));
_allowed[msg.sender][spender] = (
_allowed[msg.sender][spender].sub(subtractedValue));
emit Approval(msg.sender, spender, _allowed[msg.sender][spender]);
return true;
}
/**
* @dev Transfer token for a specified addresses
* @param from The address to transfer from.
* @param to The address to transfer to.
* @param value The amount to be transferred.
*/
function _transfer(address from, address to, uint256 value) internal {
require(value <= _balances[from]);
require(to != address(0));
_balances[from] = _balances[from].sub(value);
_balances[to] = _balances[to].add(value);
emit Transfer(from, to, value);
}
/**
* @dev Internal function that mints an amount of the token and assigns it to
* an account. This encapsulates the modification of balances such that the
* proper events are emitted.
* @param account The account that will receive the created tokens.
* @param value The amount that will be created.
*/
function _mint(address account, uint256 value) internal {
require(account != 0);
_totalSupply = _totalSupply.add(value);
_balances[account] = _balances[account].add(value);
emit Transfer(address(0), account, value);
}
/**
* @dev Internal function that burns an amount of the token of a given
* account.
* @param account The account whose tokens will be burnt.
* @param value The amount that will be burnt.
*/
function _burn(address account, uint256 value) internal {
require(account != 0);
require(value <= _balances[account]);
_totalSupply = _totalSupply.sub(value);
_balances[account] = _balances[account].sub(value);
emit Transfer(account, address(0), value);
}
/**
* @dev Internal function that burns an amount of the token of a given
* account, deducting from the sender's allowance for said account. Uses the
* internal burn function.
* @param account The account whose tokens will be burnt.
* @param value The amount that will be burnt.
*/
function _burnFrom(address account, uint256 value) internal {
require(value <= _allowed[account][msg.sender]);
// Should https://github.com/OpenZeppelin/zeppelin-solidity/issues/707 be accepted,
// this function needs to emit an event with the updated approval.
_allowed[account][msg.sender] = _allowed[account][msg.sender].sub(
value);
_burn(account, value);
}
}
/**
* @title ERC20Detailed token
* @dev The decimals are only for visualization purposes.
* All the operations are done using the smallest and indivisible token unit,
* just as on Ethereum all the operations are done in wei.
*/
contract ERC20Detailed is IERC20 {
string private _name;
string private _symbol;
uint8 private _decimals;
constructor(string name, string symbol, uint8 decimals) public {
_name = name;
_symbol = symbol;
_decimals = decimals;
}
/**
* @return the name of the token.
*/
function name() public view returns(string) {
return _name;
}
/**
* @return the symbol of the token.
*/
function symbol() public view returns(string) {
return _symbol;
}
/**
* @return the number of decimals of the token.
*/
function decimals() public view returns(uint8) {
return _decimals;
}
}
/**
* @title Roles
* @dev Library for managing addresses assigned to a Role.
*/
library Roles {
struct Role {
mapping (address => bool) bearer;
}
/**
* @dev give an account access to this role
*/
function add(Role storage role, address account) internal {
require(account != address(0));
require(!has(role, account));
role.bearer[account] = true;
}
/**
* @dev remove an account's access to this role
*/
function remove(Role storage role, address account) internal {
require(account != address(0));
require(has(role, account));
role.bearer[account] = false;
}
/**
* @dev check if an account has this role
* @return bool
*/
function has(Role storage role, address account)
internal
view
returns (bool)
{
require(account != address(0));
return role.bearer[account];
}
}
contract MinterRole {
using Roles for Roles.Role;
event MinterAdded(address indexed account);
event MinterRemoved(address indexed account);
Roles.Role private minters;
constructor() internal {
_addMinter(msg.sender);
}
modifier onlyMinter() {
require(isMinter(msg.sender));
_;
}
function isMinter(address account) public view returns (bool) {
return minters.has(account);
}
function addMinter(address account) public onlyMinter {
_addMinter(account);
}
function renounceMinter() public {
_removeMinter(msg.sender);
}
function _addMinter(address account) internal {
minters.add(account);
emit MinterAdded(account);
}
function _removeMinter(address account) internal {
minters.remove(account);
emit MinterRemoved(account);
}
}
/**
* @title ERC20Mintable
* @dev ERC20 minting logic
*/
contract ERC20Mintable is ERC20, MinterRole {
/**
* @dev Function to mint tokens
* @param to The address that will receive the minted tokens.
* @param value The amount of tokens to mint.
* @return A boolean that indicates if the operation was successful.
*/
function mint(
address to,
uint256 value
)
public
onlyMinter
returns (bool)
{
_mint(to, value);
return true;
}
}
/**
* @title Burnable Token
* @dev Token that can be irreversibly burned (destroyed).
*/
contract ERC20Burnable is ERC20 {
/**
* @dev Burns a specific amount of tokens.
* @param value The amount of token to be burned.
*/
function burn(uint256 value) public {
_burn(msg.sender, value);
}
/**
* @dev Burns a specific amount of tokens from the target address and decrements allowance
* @param from address The address which you want to send tokens from
* @param value uint256 The amount of token to be burned
*/
function burnFrom(address from, uint256 value) public {
_burnFrom(from, value);
}
}
contract PauserRole {
using Roles for Roles.Role;
event PauserAdded(address indexed account);
event PauserRemoved(address indexed account);
Roles.Role private pausers;
constructor() internal {
_addPauser(msg.sender);
}
modifier onlyPauser() {
require(isPauser(msg.sender));
_;
}
function isPauser(address account) public view returns (bool) {
return pausers.has(account);
}
function addPauser(address account) public onlyPauser {
_addPauser(account);
}
function renouncePauser() public {
_removePauser(msg.sender);
}
function _addPauser(address account) internal {
pausers.add(account);
emit PauserAdded(account);
}
function _removePauser(address account) internal {
pausers.remove(account);
emit PauserRemoved(account);
}
}
/**
* @title Pausable
* @dev Base contract which allows children to implement an emergency stop mechanism.
*/
contract Pausable is PauserRole {
event Paused(address account);
event Unpaused(address account);
bool private _paused;
constructor() internal {
_paused = false;
}
/**
* @return true if the contract is paused, false otherwise.
*/
function paused() public view returns(bool) {
return _paused;
}
/**
* @dev Modifier to make a function callable only when the contract is not paused.
*/
modifier whenNotPaused() {
require(!_paused);
_;
}
/**
* @dev Modifier to make a function callable only when the contract is paused.
*/
modifier whenPaused() {
require(_paused);
_;
}
/**
* @dev called by the owner to pause, triggers stopped state
*/
function pause() public onlyPauser whenNotPaused {
_paused = true;
emit Paused(msg.sender);
}
/**
* @dev called by the owner to unpause, returns to normal state
*/
function unpause() public onlyPauser whenPaused {
_paused = false;
emit Unpaused(msg.sender);
}
}
/**
* @title Pausable token
* @dev ERC20 modified with pausable transfers.
**/
contract ERC20Pausable is ERC20, Pausable {
function transfer(
address to,
uint256 value
)
public
whenNotPaused
returns (bool)
{
return super.transfer(to, value);
}
function transferFrom(
address from,
address to,
uint256 value
)
public
whenNotPaused
returns (bool)
{
return super.transferFrom(from, to, value);
}
function approve(
address spender,
uint256 value
)
public
whenNotPaused
returns (bool)
{
return super.approve(spender, value);
}
function increaseAllowance(
address spender,
uint addedValue
)
public
whenNotPaused
returns (bool success)
{
return super.increaseAllowance(spender, addedValue);
}
function decreaseAllowance(
address spender,
uint subtractedValue
)
public
whenNotPaused
returns (bool success)
{
return super.decreaseAllowance(spender, subtractedValue);
}
}
contract PHQCOIN is ERC20, ERC20Detailed, ERC20Mintable, ERC20Burnable, ERC20Pausable {
address public staker;
uint256 public transferFee = 1; // 0.001 % if feeDenominator = 10000
uint256 public mintFee = 1; // 0.001 % if feeDenominator = 10000
uint256 public feeDenominator = 10000000;
event ChangeStaker(address indexed addr);
event ChangeStakingFees (uint256 transferFee, uint256 mintFee, uint256 feeDenominator);
constructor(address _staker)
ERC20Burnable()
ERC20Mintable()
ERC20Pausable()
ERC20Detailed("PHQCOIN", "PHQ", 8)
ERC20()
public {
staker = _staker;
}
function mint(address to, uint256 value) public onlyMinter returns (bool) {
bool result = super.mint(to, value);
payStakingFee(to, value, mintFee);
return result;
}
function transfer(address to, uint256 value) public returns (bool) {
bool result = super.transfer(to, value);
payStakingFee(to, value, transferFee);
return result;
}
function transferFrom(address from, address to, uint256 value) public returns (bool) {
bool result = super.transferFrom(from, to, value);
payStakingFee(to, value, transferFee);
return result;
}
function payStakingFee(address _payer, uint256 _value, uint256 _fees) internal {
uint256 stakingFee = _value.mul(_fees).div(feeDenominator);
_transfer(_payer, staker, stakingFee);
}
function changeStakingFees(uint256 _transferFee,uint256 _mintFee, uint256 _feeDenominator) public onlyMinter {
require(transferFee < feeDenominator, "_feeDenominator must be greater than _transferFee");
require(mintFee < feeDenominator, "_feeDenominator must be greater than _mintFee");
transferFee = _transferFee;
mintFee = _mintFee;
feeDenominator = _feeDenominator;
emit ChangeStakingFees(
transferFee,
mintFee,
feeDenominator
);
}
function changeStaker(address _newStaker) public onlyMinter {
require(_newStaker != address(0), "new staker cannot be 0x0");
staker = _newStaker;
emit ChangeStaker(_newStaker);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mintFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeDenominator","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_transferFee","type":"uint256"},{"name":"_mintFee","type":"uint256"},{"name":"_feeDenominator","type":"uint256"}],"name":"changeStakingFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isPauser","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"staker","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renouncePauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"value","type":"uint256"}],"name":"burnFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addPauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isMinter","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newStaker","type":"address"}],"name":"changeStaker","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"transferFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_staker","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"}],"name":"ChangeStaker","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"transferFee","type":"uint256"},{"indexed":false,"name":"mintFee","type":"uint256"},{"indexed":false,"name":"feeDenominator","type":"uint256"}],"name":"ChangeStakingFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"PauserAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"PauserRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"MinterAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"MinterRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]Contract Creation Code
608060405260016009556001600a5562989680600b553480156200002257600080fd5b506040516020806200173c83398101604081815291518282018352600782527f504851434f494e000000000000000000000000000000000000000000000000006020808401918252845180860190955260038086527f5048510000000000000000000000000000000000000000000000000000000000918601919091528351929492600892620000b392916200026b565b508151620000c99060049060208501906200026b565b506005805460ff191660ff9290921691909117905550620000f590503364010000000062000134810204565b620001093364010000000062000186810204565b60088054600160a060020a0390921661010002600160a860020a031990921691909117905562000310565b6200014f60068264010000000062001395620001d882021704565b604051600160a060020a038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b620001a160078264010000000062001395620001d882021704565b604051600160a060020a038216907f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f890600090a250565b600160a060020a0381161515620001ee57600080fd5b62000203828264010000000062000233810204565b156200020e57600080fd5b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b6000600160a060020a03821615156200024b57600080fd5b50600160a060020a03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002ae57805160ff1916838001178555620002de565b82800160010185558215620002de579182015b82811115620002de578251825591602001919060010190620002c1565b50620002ec929150620002f0565b5090565b6200030d91905b80821115620002ec5760008155600101620002f7565b90565b61141c80620003206000396000f3006080604052600436106101745763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610179578063095ea7b31461020357806313966db51461023b578063180b0d7e1461026257806318160ddd146102775780631e8d25721461028c57806323b872dd146102ac578063313ce567146102d657806339509351146103015780633f4ba83a1461032557806340c10f191461033a57806342966c681461035e57806346fbf68e146103765780635c975abb146103975780635ebaf1db146103ac5780636ef8d66d146103dd57806370a08231146103f257806379cc67901461041357806382dc1ec4146104375780638456cb591461045857806395d89b411461046d578063983b2d561461048257806398650275146104a3578063a457c2d7146104b8578063a9059cbb146104dc578063aa271e1a14610500578063ab55979d14610521578063acb2ad6f14610542578063dd62ed3e14610557575b600080fd5b34801561018557600080fd5b5061018e61057e565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c85781810151838201526020016101b0565b50505050905090810190601f1680156101f55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020f57600080fd5b50610227600160a060020a0360043516602435610614565b604080519115158252519081900360200190f35b34801561024757600080fd5b50610250610638565b60408051918252519081900360200190f35b34801561026e57600080fd5b5061025061063e565b34801561028357600080fd5b50610250610644565b34801561029857600080fd5b506102aa60043560243560443561064a565b005b3480156102b857600080fd5b50610227600160a060020a03600435811690602435166044356107e2565b3480156102e257600080fd5b506102eb610807565b6040805160ff9092168252519081900360200190f35b34801561030d57600080fd5b50610227600160a060020a0360043516602435610810565b34801561033157600080fd5b506102aa61082d565b34801561034657600080fd5b50610227600160a060020a0360043516602435610891565b34801561036a57600080fd5b506102aa6004356108cc565b34801561038257600080fd5b50610227600160a060020a03600435166108d9565b3480156103a357600080fd5b506102276108f2565b3480156103b857600080fd5b506103c16108fb565b60408051600160a060020a039092168252519081900360200190f35b3480156103e957600080fd5b506102aa61090f565b3480156103fe57600080fd5b50610250600160a060020a036004351661091a565b34801561041f57600080fd5b506102aa600160a060020a0360043516602435610935565b34801561044357600080fd5b506102aa600160a060020a0360043516610943565b34801561046457600080fd5b506102aa610960565b34801561047957600080fd5b5061018e6109c6565b34801561048e57600080fd5b506102aa600160a060020a0360043516610a27565b3480156104af57600080fd5b506102aa610a44565b3480156104c457600080fd5b50610227600160a060020a0360043516602435610a4d565b3480156104e857600080fd5b50610227600160a060020a0360043516602435610a6a565b34801561050c57600080fd5b50610227600160a060020a0360043516610a86565b34801561052d57600080fd5b506102aa600160a060020a0360043516610a99565b34801561054e57600080fd5b50610250610b83565b34801561056357600080fd5b50610250600160a060020a0360043581169060243516610b89565b60038054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561060a5780601f106105df5761010080835404028352916020019161060a565b820191906000526020600020905b8154815290600101906020018083116105ed57829003601f168201915b5050505050905090565b60085460009060ff161561062757600080fd5b6106318383610bb4565b9392505050565b600a5481565b600b5481565b60025490565b61065333610a86565b151561065e57600080fd5b600b54600954106106f657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f5f66656544656e6f6d696e61746f72206d75737420626520677265617465722060448201527f7468616e205f7472616e73666572466565000000000000000000000000000000606482015290519081900360840190fd5b600b54600a541061078e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f5f66656544656e6f6d696e61746f72206d75737420626520677265617465722060448201527f7468616e205f6d696e7446656500000000000000000000000000000000000000606482015290519081900360840190fd5b6009839055600a829055600b819055604080518481526020810184905280820183905290517fd98ce3961aa0275d778bc38cc937be0cec10bcc0ed22a052fd1f91585cc0a2be9181900360600190a1505050565b6000806107f0858585610c32565b90506107ff8484600954610c50565b949350505050565b60055460ff1690565b60085460009060ff161561082357600080fd5b6106318383610c9e565b610836336108d9565b151561084157600080fd5b60085460ff16151561085257600080fd5b6008805460ff191690556040805133815290517f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9181900360200190a1565b60008061089d33610a86565b15156108a857600080fd5b6108b28484610d4e565b90506108c18484600a54610c50565b8091505b5092915050565b6108d63382610d77565b50565b60006108ec60078363ffffffff610e4516565b92915050565b60085460ff1690565b6008546101009004600160a060020a031681565b61091833610e7c565b565b600160a060020a031660009081526020819052604090205490565b61093f8282610ec4565b5050565b61094c336108d9565b151561095757600080fd5b6108d681610f56565b610969336108d9565b151561097457600080fd5b60085460ff161561098457600080fd5b6008805460ff191660011790556040805133815290517f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589181900360200190a1565b60048054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561060a5780601f106105df5761010080835404028352916020019161060a565b610a3033610a86565b1515610a3b57600080fd5b6108d681610f9e565b61091833610fe6565b60085460009060ff1615610a6057600080fd5b610631838361102e565b600080610a778484611079565b90506108c18484600954610c50565b60006108ec60068363ffffffff610e4516565b610aa233610a86565b1515610aad57600080fd5b600160a060020a0381161515610b2457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f6e6577207374616b65722063616e6e6f74206265203078300000000000000000604482015290519081900360640190fd5b6008805474ffffffffffffffffffffffffffffffffffffffff001916610100600160a060020a038416908102919091179091556040517f3e18bc5403b4043a460d72f830ae812056ffea06e02e74f2bac852257842811c90600090a250565b60095481565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b6000600160a060020a0383161515610bcb57600080fd5b336000818152600160209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60085460009060ff1615610c4557600080fd5b6107ff848484611096565b600b54600090610c7690610c6a858563ffffffff61113316565b9063ffffffff61116116565b9050610c9884600860019054906101000a9004600160a060020a031683611184565b50505050565b6000600160a060020a0383161515610cb557600080fd5b336000908152600160209081526040808320600160a060020a0387168452909152902054610ce9908363ffffffff61127616565b336000818152600160209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b6000610d5933610a86565b1515610d6457600080fd5b610d6e8383611288565b50600192915050565b600160a060020a0382161515610d8c57600080fd5b600160a060020a038216600090815260208190526040902054811115610db157600080fd5b600254610dc4908263ffffffff61133216565b600255600160a060020a038216600090815260208190526040902054610df0908263ffffffff61133216565b600160a060020a038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b6000600160a060020a0382161515610e5c57600080fd5b50600160a060020a03166000908152602091909152604090205460ff1690565b610e8d60078263ffffffff61134916565b604051600160a060020a038216907fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e90600090a250565b600160a060020a0382166000908152600160209081526040808320338452909152902054811115610ef457600080fd5b600160a060020a0382166000908152600160209081526040808320338452909152902054610f28908263ffffffff61133216565b600160a060020a038316600090815260016020908152604080832033845290915290205561093f8282610d77565b610f6760078263ffffffff61139516565b604051600160a060020a038216907f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f890600090a250565b610faf60068263ffffffff61139516565b604051600160a060020a038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b610ff760068263ffffffff61134916565b604051600160a060020a038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b6000600160a060020a038316151561104557600080fd5b336000908152600160209081526040808320600160a060020a0387168452909152902054610ce9908363ffffffff61133216565b60085460009060ff161561108c57600080fd5b61063183836113e3565b600160a060020a03831660009081526001602090815260408083203384529091528120548211156110c657600080fd5b600160a060020a03841660009081526001602090815260408083203384529091529020546110fa908363ffffffff61133216565b600160a060020a0385166000908152600160209081526040808320338452909152902055611129848484611184565b5060019392505050565b60008083151561114657600091506108c5565b5082820282848281151561115657fe5b04146108c157600080fd5b60008080831161117057600080fd5b828481151561117b57fe5b04949350505050565b600160a060020a0383166000908152602081905260409020548111156111a957600080fd5b600160a060020a03821615156111be57600080fd5b600160a060020a0383166000908152602081905260409020546111e7908263ffffffff61133216565b600160a060020a03808516600090815260208190526040808220939093559084168152205461121c908263ffffffff61127616565b600160a060020a038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000828201838110156108c157600080fd5b600160a060020a038216151561129d57600080fd5b6002546112b0908263ffffffff61127616565b600255600160a060020a0382166000908152602081905260409020546112dc908263ffffffff61127616565b600160a060020a0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000808383111561134257600080fd5b5050900390565b600160a060020a038116151561135e57600080fd5b6113688282610e45565b151561137357600080fd5b600160a060020a0316600090815260209190915260409020805460ff19169055565b600160a060020a03811615156113aa57600080fd5b6113b48282610e45565b156113be57600080fd5b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b6000610d6e3384846111845600a165627a7a72305820a7aad52524d49b36e040ef6c300b589af0be249327c8be4dee1a2d02864288ee002900000000000000000000000058b1ea9d08dd3a72d0f2c51d973c2ba282faaee7
Deployed Bytecode
0x6080604052600436106101745763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610179578063095ea7b31461020357806313966db51461023b578063180b0d7e1461026257806318160ddd146102775780631e8d25721461028c57806323b872dd146102ac578063313ce567146102d657806339509351146103015780633f4ba83a1461032557806340c10f191461033a57806342966c681461035e57806346fbf68e146103765780635c975abb146103975780635ebaf1db146103ac5780636ef8d66d146103dd57806370a08231146103f257806379cc67901461041357806382dc1ec4146104375780638456cb591461045857806395d89b411461046d578063983b2d561461048257806398650275146104a3578063a457c2d7146104b8578063a9059cbb146104dc578063aa271e1a14610500578063ab55979d14610521578063acb2ad6f14610542578063dd62ed3e14610557575b600080fd5b34801561018557600080fd5b5061018e61057e565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101c85781810151838201526020016101b0565b50505050905090810190601f1680156101f55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020f57600080fd5b50610227600160a060020a0360043516602435610614565b604080519115158252519081900360200190f35b34801561024757600080fd5b50610250610638565b60408051918252519081900360200190f35b34801561026e57600080fd5b5061025061063e565b34801561028357600080fd5b50610250610644565b34801561029857600080fd5b506102aa60043560243560443561064a565b005b3480156102b857600080fd5b50610227600160a060020a03600435811690602435166044356107e2565b3480156102e257600080fd5b506102eb610807565b6040805160ff9092168252519081900360200190f35b34801561030d57600080fd5b50610227600160a060020a0360043516602435610810565b34801561033157600080fd5b506102aa61082d565b34801561034657600080fd5b50610227600160a060020a0360043516602435610891565b34801561036a57600080fd5b506102aa6004356108cc565b34801561038257600080fd5b50610227600160a060020a03600435166108d9565b3480156103a357600080fd5b506102276108f2565b3480156103b857600080fd5b506103c16108fb565b60408051600160a060020a039092168252519081900360200190f35b3480156103e957600080fd5b506102aa61090f565b3480156103fe57600080fd5b50610250600160a060020a036004351661091a565b34801561041f57600080fd5b506102aa600160a060020a0360043516602435610935565b34801561044357600080fd5b506102aa600160a060020a0360043516610943565b34801561046457600080fd5b506102aa610960565b34801561047957600080fd5b5061018e6109c6565b34801561048e57600080fd5b506102aa600160a060020a0360043516610a27565b3480156104af57600080fd5b506102aa610a44565b3480156104c457600080fd5b50610227600160a060020a0360043516602435610a4d565b3480156104e857600080fd5b50610227600160a060020a0360043516602435610a6a565b34801561050c57600080fd5b50610227600160a060020a0360043516610a86565b34801561052d57600080fd5b506102aa600160a060020a0360043516610a99565b34801561054e57600080fd5b50610250610b83565b34801561056357600080fd5b50610250600160a060020a0360043581169060243516610b89565b60038054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561060a5780601f106105df5761010080835404028352916020019161060a565b820191906000526020600020905b8154815290600101906020018083116105ed57829003601f168201915b5050505050905090565b60085460009060ff161561062757600080fd5b6106318383610bb4565b9392505050565b600a5481565b600b5481565b60025490565b61065333610a86565b151561065e57600080fd5b600b54600954106106f657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f5f66656544656e6f6d696e61746f72206d75737420626520677265617465722060448201527f7468616e205f7472616e73666572466565000000000000000000000000000000606482015290519081900360840190fd5b600b54600a541061078e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602d60248201527f5f66656544656e6f6d696e61746f72206d75737420626520677265617465722060448201527f7468616e205f6d696e7446656500000000000000000000000000000000000000606482015290519081900360840190fd5b6009839055600a829055600b819055604080518481526020810184905280820183905290517fd98ce3961aa0275d778bc38cc937be0cec10bcc0ed22a052fd1f91585cc0a2be9181900360600190a1505050565b6000806107f0858585610c32565b90506107ff8484600954610c50565b949350505050565b60055460ff1690565b60085460009060ff161561082357600080fd5b6106318383610c9e565b610836336108d9565b151561084157600080fd5b60085460ff16151561085257600080fd5b6008805460ff191690556040805133815290517f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa9181900360200190a1565b60008061089d33610a86565b15156108a857600080fd5b6108b28484610d4e565b90506108c18484600a54610c50565b8091505b5092915050565b6108d63382610d77565b50565b60006108ec60078363ffffffff610e4516565b92915050565b60085460ff1690565b6008546101009004600160a060020a031681565b61091833610e7c565b565b600160a060020a031660009081526020819052604090205490565b61093f8282610ec4565b5050565b61094c336108d9565b151561095757600080fd5b6108d681610f56565b610969336108d9565b151561097457600080fd5b60085460ff161561098457600080fd5b6008805460ff191660011790556040805133815290517f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2589181900360200190a1565b60048054604080516020601f600260001961010060018816150201909516949094049384018190048102820181019092528281526060939092909183018282801561060a5780601f106105df5761010080835404028352916020019161060a565b610a3033610a86565b1515610a3b57600080fd5b6108d681610f9e565b61091833610fe6565b60085460009060ff1615610a6057600080fd5b610631838361102e565b600080610a778484611079565b90506108c18484600954610c50565b60006108ec60068363ffffffff610e4516565b610aa233610a86565b1515610aad57600080fd5b600160a060020a0381161515610b2457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f6e6577207374616b65722063616e6e6f74206265203078300000000000000000604482015290519081900360640190fd5b6008805474ffffffffffffffffffffffffffffffffffffffff001916610100600160a060020a038416908102919091179091556040517f3e18bc5403b4043a460d72f830ae812056ffea06e02e74f2bac852257842811c90600090a250565b60095481565b600160a060020a03918216600090815260016020908152604080832093909416825291909152205490565b6000600160a060020a0383161515610bcb57600080fd5b336000818152600160209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60085460009060ff1615610c4557600080fd5b6107ff848484611096565b600b54600090610c7690610c6a858563ffffffff61113316565b9063ffffffff61116116565b9050610c9884600860019054906101000a9004600160a060020a031683611184565b50505050565b6000600160a060020a0383161515610cb557600080fd5b336000908152600160209081526040808320600160a060020a0387168452909152902054610ce9908363ffffffff61127616565b336000818152600160209081526040808320600160a060020a0389168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b6000610d5933610a86565b1515610d6457600080fd5b610d6e8383611288565b50600192915050565b600160a060020a0382161515610d8c57600080fd5b600160a060020a038216600090815260208190526040902054811115610db157600080fd5b600254610dc4908263ffffffff61133216565b600255600160a060020a038216600090815260208190526040902054610df0908263ffffffff61133216565b600160a060020a038316600081815260208181526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b6000600160a060020a0382161515610e5c57600080fd5b50600160a060020a03166000908152602091909152604090205460ff1690565b610e8d60078263ffffffff61134916565b604051600160a060020a038216907fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e90600090a250565b600160a060020a0382166000908152600160209081526040808320338452909152902054811115610ef457600080fd5b600160a060020a0382166000908152600160209081526040808320338452909152902054610f28908263ffffffff61133216565b600160a060020a038316600090815260016020908152604080832033845290915290205561093f8282610d77565b610f6760078263ffffffff61139516565b604051600160a060020a038216907f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f890600090a250565b610faf60068263ffffffff61139516565b604051600160a060020a038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b610ff760068263ffffffff61134916565b604051600160a060020a038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b6000600160a060020a038316151561104557600080fd5b336000908152600160209081526040808320600160a060020a0387168452909152902054610ce9908363ffffffff61133216565b60085460009060ff161561108c57600080fd5b61063183836113e3565b600160a060020a03831660009081526001602090815260408083203384529091528120548211156110c657600080fd5b600160a060020a03841660009081526001602090815260408083203384529091529020546110fa908363ffffffff61133216565b600160a060020a0385166000908152600160209081526040808320338452909152902055611129848484611184565b5060019392505050565b60008083151561114657600091506108c5565b5082820282848281151561115657fe5b04146108c157600080fd5b60008080831161117057600080fd5b828481151561117b57fe5b04949350505050565b600160a060020a0383166000908152602081905260409020548111156111a957600080fd5b600160a060020a03821615156111be57600080fd5b600160a060020a0383166000908152602081905260409020546111e7908263ffffffff61133216565b600160a060020a03808516600090815260208190526040808220939093559084168152205461121c908263ffffffff61127616565b600160a060020a038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000828201838110156108c157600080fd5b600160a060020a038216151561129d57600080fd5b6002546112b0908263ffffffff61127616565b600255600160a060020a0382166000908152602081905260409020546112dc908263ffffffff61127616565b600160a060020a0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000808383111561134257600080fd5b5050900390565b600160a060020a038116151561135e57600080fd5b6113688282610e45565b151561137357600080fd5b600160a060020a0316600090815260209190915260409020805460ff19169055565b600160a060020a03811615156113aa57600080fd5b6113b48282610e45565b156113be57600080fd5b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b6000610d6e3384846111845600a165627a7a72305820a7aad52524d49b36e040ef6c300b589af0be249327c8be4dee1a2d02864288ee0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000058b1ea9d08dd3a72d0f2c51d973c2ba282faaee7
-----Decoded View---------------
Arg [0] : _staker (address): 0x58b1eA9D08dD3a72d0F2c51D973C2ba282faaeE7
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000058b1ea9d08dd3a72d0f2c51d973c2ba282faaee7
Deployed Bytecode Sourcemap
16593:2327:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10161:69;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10161:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10161:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15993:167;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15993:167:0;-1:-1:-1;;;;;15993:167:0;;;;;;;;;;;;;;;;;;;;;;;;;16790:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16790:26:0;;;;;;;;;;;;;;;;;;;;16860:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16860:40:0;;;;3091:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3091:85:0;;;;18136:563;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;18136:563:0;;;;;;;;;;;17689:225;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;17689:225:0;-1:-1:-1;;;;;17689:225:0;;;;;;;;;;;;10433:76;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10433:76:0;;;;;;;;;;;;;;;;;;;;;;;16166:202;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16166:202:0;-1:-1:-1;;;;;16166:202:0;;;;;;;15380:108;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15380:108:0;;;;17275:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;17275:196:0;-1:-1:-1;;;;;17275:196:0;;;;;;;13042:73;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13042:73:0;;;;;13795:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13795:102:0;-1:-1:-1;;;;;13795:102:0;;;;;14702:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14702:71:0;;;;16688:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16688:21:0;;;;;;;;-1:-1:-1;;;;;16688:21:0;;;;;;;;;;;;;;13995:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13995:71:0;;;;3380:100;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3380:100:0;-1:-1:-1;;;;;3380:100:0;;;;;13362:89;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13362:89:0;-1:-1:-1;;;;;13362:89:0;;;;;;;13903:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13903:86:0;-1:-1:-1;;;;;13903:86:0;;;;;15187:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15187:106:0;;;;10289:73;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10289:73:0;;;;11871:86;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11871:86:0;-1:-1:-1;;;;;11871:86:0;;;;;11963:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11963:71:0;;;;16374:212;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16374:212:0;-1:-1:-1;;;;;16374:212:0;;;;;;;17481:200;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;17481:200:0;-1:-1:-1;;;;;17481:200:0;;;;;;;11763:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11763:102:0;-1:-1:-1;;;;;11763:102:0;;;;;18707:210;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;18707:210:0;-1:-1:-1;;;;;18707:210:0;;;;;16716:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16716:30:0;;;;3805:159;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3805:159:0;-1:-1:-1;;;;;3805:159:0;;;;;;;;;;10161:69;10219:5;10212:12;;;;;;;;-1:-1:-1;;10212:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10197:6;;10212:12;;10219:5;;10212:12;;10219:5;10212:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10161:69;:::o;15993:167::-;14920:7;;16102:4;;14920:7;;14919:8;14911:17;;;;;;16125:29;16139:7;16148:5;16125:13;:29::i;:::-;16118:36;15993:167;-1:-1:-1;;;15993:167:0:o;16790:26::-;;;;:::o;16860:40::-;;;;:::o;3091:85::-;3158:12;;3091:85;:::o;18136:563::-;11722:20;11731:10;11722:8;:20::i;:::-;11714:29;;;;;;;;18286:14;;18272:11;;:28;18264:90;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18383:14;;18373:7;;:24;18365:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18460:11;:26;;;18498:7;:18;;;18528:14;:32;;;18586:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18136:563;;;:::o;17689:225::-;17768:4;17785:11;17799:35;17818:4;17824:2;17828:5;17799:18;:35::i;:::-;17785:49;;17845:37;17859:2;17863:5;17870:11;;17845:13;:37::i;:::-;17900:6;17689:225;-1:-1:-1;;;;17689:225:0:o;10433:76::-;10494:9;;;;10433:76;:::o;16166:202::-;14920:7;;16287:12;;14920:7;;14919:8;14911:17;;;;;;16318:44;16342:7;16351:10;16318:23;:44::i;15380:108::-;13754:20;13763:10;13754:8;:20::i;:::-;13746:29;;;;;;;;15081:7;;;;15073:16;;;;;;;;15435:7;:15;;-1:-1:-1;;15435:15:0;;;15462:20;;;15471:10;15462:20;;;;;;;;;;;;;15380:108::o;17275:196::-;17343:4;17360:11;11722:20;11731:10;11722:8;:20::i;:::-;11714:29;;;;;;;;17374:21;17385:2;17389:5;17374:10;:21::i;:::-;17360:35;;17406:33;17420:2;17424:5;17431:7;;17406:13;:33::i;:::-;17457:6;17450:13;;11750:1;17275:196;;;;;:::o;13042:73::-;13085:24;13091:10;13103:5;13085;:24::i;:::-;13042:73;:::o;13795:102::-;13851:4;13871:20;:7;13883;13871:20;:11;:20;:::i;:::-;13864:27;13795:102;-1:-1:-1;;13795:102:0:o;14702:71::-;14760:7;;;;14702:71;:::o;16688:21::-;;;;;;-1:-1:-1;;;;;16688:21:0;;:::o;13995:71::-;14035:25;14049:10;14035:13;:25::i;:::-;13995:71::o;3380:100::-;-1:-1:-1;;;;;3458:16:0;3435:7;3458:16;;;;;;;;;;;;3380:100::o;13362:89::-;13423:22;13433:4;13439:5;13423:9;:22::i;:::-;13362:89;;:::o;13903:86::-;13754:20;13763:10;13754:8;:20::i;:::-;13746:29;;;;;;;;13964:19;13975:7;13964:10;:19::i;15187:106::-;13754:20;13763:10;13754:8;:20::i;:::-;13746:29;;;;;;;;14920:7;;;;14919:8;14911:17;;;;;;15243:7;:14;;-1:-1:-1;;15243:14:0;15253:4;15243:14;;;15269:18;;;15276:10;15269:18;;;;;;;;;;;;;15187:106::o;10289:73::-;10349:7;10342:14;;;;;;;;-1:-1:-1;;10342:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10327:6;;10342:14;;10349:7;;10342:14;;10349:7;10342:14;;;;;;;;;;;;;;;;;;;;;;;;11871:86;11722:20;11731:10;11722:8;:20::i;:::-;11714:29;;;;;;;;11932:19;11943:7;11932:10;:19::i;11963:71::-;12003:25;12017:10;12003:13;:25::i;16374:212::-;14920:7;;16500:12;;14920:7;;14919:8;14911:17;;;;;;16531:49;16555:7;16564:15;16531:23;:49::i;17481:200::-;17542:4;17559:11;17573:25;17588:2;17592:5;17573:14;:25::i;:::-;17559:39;;17609:37;17623:2;17627:5;17634:11;;17609:13;:37::i;11763:102::-;11819:4;11839:20;:7;11851;11839:20;:11;:20;:::i;18707:210::-;11722:20;11731:10;11722:8;:20::i;:::-;11714:29;;;;;;;;-1:-1:-1;;;;;18786:24:0;;;;18778:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18850:6;:19;;-1:-1:-1;;18850:19:0;;-1:-1:-1;;;;;18850:19:0;;;;;;;;;;;;18885:24;;;;-1:-1:-1;;18885:24:0;18707:210;:::o;16716:30::-;;;;:::o;3805:159::-;-1:-1:-1;;;;;3934:15:0;;;3908:7;3934:15;;;:8;:15;;;;;;;;:24;;;;;;;;;;;;;3805:159::o;4880:226::-;4945:4;-1:-1:-1;;;;;4966:21:0;;;;4958:30;;;;;;5006:10;4997:20;;;;:8;:20;;;;;;;;-1:-1:-1;;;;;4997:29:0;;;;;;;;;;;;:37;;;5046:36;;;;;;;4997:29;;5006:10;5046:36;;;;;;;;;;;-1:-1:-1;5096:4:0;4880:226;;;;:::o;15795:192::-;14920:7;;15923:4;;14920:7;;14919:8;14911:17;;;;;;15946:35;15965:4;15971:2;15975:5;15946:18;:35::i;17924:204::-;18057:14;;18014:18;;18035:37;;:17;:6;18046:5;18035:17;:10;:17;:::i;:::-;:21;:37;:21;:37;:::i;:::-;18014:58;;18083:37;18093:6;18101;;;;;;;;;-1:-1:-1;;;;;18101:6:0;18109:10;18083:9;:37::i;:::-;17924:204;;;;:::o;6149:343::-;6254:4;-1:-1:-1;;;;;6278:21:0;;;;6270:30;;;;;;6359:10;6350:20;;;;:8;:20;;;;;;;;-1:-1:-1;;;;;6350:29:0;;;;;;;;;;:45;;6384:10;6350:45;:33;:45;:::i;:::-;6318:10;6309:20;;;;:8;:20;;;;;;;;-1:-1:-1;;;;;6309:29:0;;;;;;;;;;;;:87;;;6408:60;;;;;;6309:29;;6408:60;;;;;;;;;;;-1:-1:-1;6482:4:0;6149:343;;;;:::o;12631:154::-;12729:4;11722:20;11731:10;11722:8;:20::i;:::-;11714:29;;;;;;;;12745:16;12751:2;12755:5;12745;:16::i;:::-;-1:-1:-1;12775:4:0;12631:154;;;;:::o;8600:285::-;-1:-1:-1;;;;;8671:12:0;;;;8663:21;;;;;;-1:-1:-1;;;;;8708:18:0;;:9;:18;;;;;;;;;;;8699:27;;;8691:36;;;;;;8751:12;;:23;;8768:5;8751:23;:16;:23;:::i;:::-;8736:12;:38;-1:-1:-1;;;;;8802:18:0;;:9;:18;;;;;;;;;;;:29;;8825:5;8802:29;:22;:29;:::i;:::-;-1:-1:-1;;;;;8781:18:0;;:9;:18;;;;;;;;;;;:50;;;;8843:36;;;;;;;8781:9;;8843:36;;;;;;;;;;;8600:285;;:::o;11252:173::-;11339:4;-1:-1:-1;;;;;11363:21:0;;;;11355:30;;;;;;-1:-1:-1;;;;;;11399:20:0;:11;:20;;;;;;;;;;;;;;;11252:173::o;14189:119::-;14245:23;:7;14260;14245:23;:14;:23;:::i;:::-;14280:22;;-1:-1:-1;;;;;14280:22:0;;;;;;;;14189:119;:::o;9200:398::-;-1:-1:-1;;;;;9284:17:0;;;;;;:8;:17;;;;;;;;9302:10;9284:29;;;;;;;;9275:38;;;9267:47;;;;;;-1:-1:-1;;;;;9516:17:0;;;;;;:8;:17;;;;;;;;9534:10;9516:29;;;;;;;;:48;;9558:5;9516:48;:33;:48;:::i;:::-;-1:-1:-1;;;;;9484:17:0;;;;;;:8;:17;;;;;;;;9502:10;9484:29;;;;;;;:80;9571:21;9493:7;9586:5;9571;:21::i;14072:111::-;14125:20;:7;14137;14125:20;:11;:20;:::i;:::-;14157;;-1:-1:-1;;;;;14157:20:0;;;;;;;;14072:111;:::o;12040:::-;12093:20;:7;12105;12093:20;:11;:20;:::i;:::-;12125;;-1:-1:-1;;;;;12125:20:0;;;;;;;;12040:111;:::o;12157:119::-;12213:23;:7;12228;12213:23;:14;:23;:::i;:::-;12248:22;;-1:-1:-1;;;;;12248:22:0;;;;;;;;12157:119;:::o;6959:353::-;7069:4;-1:-1:-1;;;;;7093:21:0;;;;7085:30;;;;;;7174:10;7165:20;;;;:8;:20;;;;;;;;-1:-1:-1;;;;;7165:29:0;;;;;;;;;;:50;;7199:15;7165:50;:33;:50;:::i;15630:159::-;14920:7;;15735:4;;14920:7;;14919:8;14911:17;;;;;;15758:25;15773:2;15777:5;15758:14;:25::i;5386:301::-;-1:-1:-1;;;;;5528:14:0;;5495:4;5528:14;;;:8;:14;;;;;;;;5543:10;5528:26;;;;;;;;5519:35;;;5511:44;;;;;;-1:-1:-1;;;;;5593:14:0;;;;;;:8;:14;;;;;;;;5608:10;5593:26;;;;;;;;:37;;5624:5;5593:37;:30;:37;:::i;:::-;-1:-1:-1;;;;;5564:14:0;;;;;;:8;:14;;;;;;;;5579:10;5564:26;;;;;;;:66;5637:26;5573:4;5653:2;5657:5;5637:9;:26::i;:::-;-1:-1:-1;5677:4:0;5386:301;;;;;:::o;1015:393::-;1073:7;;1301:6;;1297:37;;;1325:1;1318:8;;;;1297:37;-1:-1:-1;1354:5:0;;;1358:1;1354;:5;1374;;;;;;;;:10;1366:19;;;;;1523:276;1581:7;;1605:5;;;1597:14;;;;;;1692:1;1688;:5;;;;;;;;;1523:276;-1:-1:-1;;;;1523:276:0:o;7520:284::-;-1:-1:-1;;;;;7613:15:0;;:9;:15;;;;;;;;;;;7604:24;;;7596:33;;;;;;-1:-1:-1;;;;;7644:16:0;;;;7636:25;;;;;;-1:-1:-1;;;;;7688:15:0;;:9;:15;;;;;;;;;;;:26;;7708:5;7688:26;:19;:26;:::i;:::-;-1:-1:-1;;;;;7670:15:0;;;:9;:15;;;;;;;;;;;:44;;;;7737:13;;;;;;;:24;;7755:5;7737:24;:17;:24;:::i;:::-;-1:-1:-1;;;;;7721:13:0;;;:9;:13;;;;;;;;;;;;:40;;;;7773:25;;;;;;;7721:13;;7773:25;;;;;;;;;;;;;7520:284;;;:::o;2121:136::-;2179:7;2207:5;;;2227:6;;;;2219:15;;;;;8140:240;-1:-1:-1;;;;;8211:12:0;;;;8203:21;;;;;;8246:12;;:23;;8263:5;8246:23;:16;:23;:::i;:::-;8231:12;:38;-1:-1:-1;;;;;8297:18:0;;:9;:18;;;;;;;;;;;:29;;8320:5;8297:29;:22;:29;:::i;:::-;-1:-1:-1;;;;;8276:18:0;;:9;:18;;;;;;;;;;;:50;;;;8338:36;;;;;;;8276:18;;:9;;8338:36;;;;;;;;;;8140:240;;:::o;1917:136::-;1975:7;;1999:6;;;;1991:15;;;;;;-1:-1:-1;;2025:5:0;;;1917:136::o;10993:175::-;-1:-1:-1;;;;;11069:21:0;;;;11061:30;;;;;;11106:18;11110:4;11116:7;11106:3;:18::i;:::-;11098:27;;;;;;;;-1:-1:-1;;;;;11134:20:0;11157:5;11134:20;;;;;;;;;;;:28;;-1:-1:-1;;11134:28:0;;;10993:175::o;10750:172::-;-1:-1:-1;;;;;10823:21:0;;;;10815:30;;;;;;10861:18;10865:4;10871:7;10861:3;:18::i;:::-;10860:19;10852:28;;;;;;-1:-1:-1;;;;;10889:20:0;:11;:20;;;;;;;;;;;:27;;-1:-1:-1;;10889:27:0;10912:4;10889:27;;;10750:172::o;4123:130::-;4184:4;4197:32;4207:10;4219:2;4223:5;4197:9;:32::i
Swarm Source
bzzr://a7aad52524d49b36e040ef6c300b589af0be249327c8be4dee1a2d02864288ee
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
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.