Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,000,000 HOTO
Holders
194
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 0 Decimals)
Balance
168,668 HOTOValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
HonestoToken
Compiler Version
v0.5.12+commit.7709ece9
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-02-13 */ pragma solidity ^0.5.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. Does not include * the optional functions; to access them see `ERC20Detailed`. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a `Transfer` event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through `transferFrom`. This is * zero by default. * * This value changes when `approve` or `transferFrom` are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * > Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an `Approval` event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a `Transfer` event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to `approve`. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } // File: openzeppelin-solidity/contracts/math/SafeMath.sol pragma solidity ^0.5.0; /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // 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, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0, "SafeMath: modulo by zero"); return a % b; } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol pragma solidity ^0.5.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 `ERC20Mintable`. * * *For a detailed writeup see our guide [How to implement supply * mechanisms](https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226).* * * We have followed general OpenZeppelin guidelines: functions revert instead * of 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 IERC20 { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 private _totalSupply; /** * @dev See `IERC20.totalSupply`. */ function totalSupply() public view returns (uint256) { return _totalSupply; } /** * @dev See `IERC20.balanceOf`. */ function balanceOf(address account) public view returns (uint256) { return _balances[account]; } /** * @dev See `IERC20.transfer`. * * Requirements: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) public returns (bool) { _transfer(msg.sender, recipient, amount); return true; } /** * @dev See `IERC20.allowance`. */ function allowance(address owner, address spender) public view returns (uint256) { return _allowances[owner][spender]; } /** * @dev See `IERC20.approve`. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 value) public returns (bool) { _approve(msg.sender, spender, value); 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`; * * Requirements: * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `value`. * - the caller must have allowance for `sender`'s tokens of at least * `amount`. */ function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) { _transfer(sender, recipient, amount); _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(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 returns (bool) { _approve(msg.sender, spender, _allowances[msg.sender][spender].add(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 returns (bool) { _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue)); return true; } /** * @dev Moves tokens `amount` from `sender` to `recipient`. * * This is 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: * * - `sender` cannot be the zero address. * - `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. */ function _transfer(address sender, address recipient, uint256 amount) internal { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _balances[sender] = _balances[sender].sub(amount); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, 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 * * - `to` cannot be the zero address. */ function _mint(address account, uint256 amount) internal { require(account != address(0), "ERC20: mint to the zero address"); _totalSupply = _totalSupply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } /** * @dev Destoys `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 value) internal { require(account != address(0), "ERC20: burn from the zero address"); _totalSupply = _totalSupply.sub(value); _balances[account] = _balances[account].sub(value); emit Transfer(account, address(0), value); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner`s tokens. * * This is 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 value) internal { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = value; emit Approval(owner, spender, value); } /** * @dev Destoys `amount` tokens from `account`.`amount` is then deducted * from the caller's allowance. * * See `_burn` and `_approve`. */ function _burnFrom(address account, uint256 amount) internal { _burn(account, amount); _approve(account, msg.sender, _allowances[account][msg.sender].sub(amount)); } } // File: openzeppelin-solidity/contracts/access/Roles.sol pragma solidity ^0.5.0; /** * @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(!has(role, account), "Roles: account already has role"); role.bearer[account] = true; } /** * @dev Remove an account's access to this role. */ function remove(Role storage role, address account) internal { require(has(role, account), "Roles: account does not have role"); 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), "Roles: account is the zero address"); return role.bearer[account]; } } // File: openzeppelin-solidity/contracts/access/roles/PauserRole.sol pragma solidity ^0.5.0; 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), "PauserRole: caller does not have the Pauser role"); _; } 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); } } // File: openzeppelin-solidity/contracts/lifecycle/Pausable.sol pragma solidity ^0.5.0; /** * @dev Contract module which allows children to implement an emergency stop * mechanism that can be triggered by an authorized account. * * This module is used through inheritance. It will make available the * modifiers `whenNotPaused` and `whenPaused`, which can be applied to * the functions of your contract. Note that they will not be pausable by * simply including this module, only once the modifiers are put in place. */ contract Pausable is PauserRole { /** * @dev Emitted when the pause is triggered by a pauser (`account`). */ event Paused(address account); /** * @dev Emitted when the pause is lifted by a pauser (`account`). */ event Unpaused(address account); bool private _paused; /** * @dev Initializes the contract in unpaused state. Assigns the Pauser role * to the deployer. */ constructor () internal { _paused = false; } /** * @dev Returns true if the contract is paused, and 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, "Pausable: paused"); _; } /** * @dev Modifier to make a function callable only when the contract is paused. */ modifier whenPaused() { require(_paused, "Pausable: not paused"); _; } /** * @dev Called by a pauser to pause, triggers stopped state. */ function pause() public onlyPauser whenNotPaused { _paused = true; emit Paused(msg.sender); } /** * @dev Called by a pauser to unpause, returns to normal state. */ function unpause() public onlyPauser whenPaused { _paused = false; emit Unpaused(msg.sender); } } // File: openzeppelin-solidity/contracts/token/ERC20/ERC20Pausable.sol pragma solidity ^0.5.0; /** * @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) { return super.increaseAllowance(spender, addedValue); } function decreaseAllowance(address spender, uint subtractedValue) public whenNotPaused returns (bool) { return super.decreaseAllowance(spender, subtractedValue); } } // File: openzeppelin-solidity/contracts/access/roles/WhitelistAdminRole.sol pragma solidity ^0.5.0; /** * @title WhitelistAdminRole * @dev WhitelistAdmins are responsible for assigning and removing Whitelisted accounts. */ contract WhitelistAdminRole { using Roles for Roles.Role; event WhitelistAdminAdded(address indexed account); event WhitelistAdminRemoved(address indexed account); Roles.Role private _whitelistAdmins; constructor () internal { _addWhitelistAdmin(msg.sender); } modifier onlyWhitelistAdmin() { require(isWhitelistAdmin(msg.sender), "WhitelistAdminRole: caller does not have the WhitelistAdmin role"); _; } function isWhitelistAdmin(address account) public view returns (bool) { return _whitelistAdmins.has(account); } function addWhitelistAdmin(address account) public onlyWhitelistAdmin { _addWhitelistAdmin(account); } function renounceWhitelistAdmin() public { _removeWhitelistAdmin(msg.sender); } function _addWhitelistAdmin(address account) internal { _whitelistAdmins.add(account); emit WhitelistAdminAdded(account); } function _removeWhitelistAdmin(address account) internal { _whitelistAdmins.remove(account); emit WhitelistAdminRemoved(account); } } // File: openzeppelin-solidity/contracts/access/roles/WhitelistedRole.sol pragma solidity ^0.5.0; /** * @title WhitelistedRole * @dev Whitelisted accounts have been approved by a WhitelistAdmin to perform certain actions (e.g. participate in a * crowdsale). This role is special in that the only accounts that can add it are WhitelistAdmins (who can also remove * it), and not Whitelisteds themselves. */ contract WhitelistedRole is WhitelistAdminRole { using Roles for Roles.Role; event WhitelistedAdded(address indexed account); event WhitelistedRemoved(address indexed account); Roles.Role private _whitelisteds; modifier onlyWhitelisted() { require(isWhitelisted(msg.sender), "WhitelistedRole: caller does not have the Whitelisted role"); _; } function isWhitelisted(address account) public view returns (bool) { return _whitelisteds.has(account); } function addWhitelisted(address account) public onlyWhitelistAdmin { _addWhitelisted(account); } function removeWhitelisted(address account) public onlyWhitelistAdmin { _removeWhitelisted(account); } function renounceWhitelisted() public { _removeWhitelisted(msg.sender); } function _addWhitelisted(address account) internal { _whitelisteds.add(account); emit WhitelistedAdded(account); } function _removeWhitelisted(address account) internal { _whitelisteds.remove(account); emit WhitelistedRemoved(account); } } // File: contracts/WhitelisterRole.sol pragma solidity 0.5.12; contract WhitelisterRole is WhitelistedRole { using Roles for Roles.Role; event WhitelisterAdded(address indexed account); event WhitelisterRemoved(address indexed account); Roles.Role private _whitelisters; modifier onlyWhitelister() { require(isWhitelister(msg.sender), "WhitelisterRole: caller does not have the Whitelister role"); _; } function isWhitelister(address account) public view returns (bool) { return _whitelisters.has(account); } function addWhitelisted(address account) public onlyWhitelister { _addWhitelisted(account); } function removeWhitelisted(address account) public onlyWhitelister { _removeWhitelisted(account); } function addWhitelister(address account) public onlyWhitelistAdmin { _addWhitelister(account); } function removeWhitelister(address account) public onlyWhitelistAdmin { _removeWhitelister(account); } function _addWhitelister(address account) internal { _whitelisters.add(account); emit WhitelisterAdded(account); } function _removeWhitelister(address account) internal { _whitelisters.remove(account); emit WhitelisterRemoved(account); } } // File: contracts/NonRevocableWhitelistAdmin.sol pragma solidity 0.5.12; contract NonRevocableWhitelistAdmin { address private _nonRevocableWhitelistAdmin; event NewNonRevocableWhitelistAdmin(address indexed account); function setNonRevocableWhitelistAdmin(address account) public onlyNonRevocableWhitelistAdmin { _setNonRevocableWhitelistAdmin(account); } function isNonRevocableWhitelistAdmin(address account) public view returns (bool) { return account == _nonRevocableWhitelistAdmin; } function getNonRevocableWhitelistAdmin() public view returns (address) { return _nonRevocableWhitelistAdmin; } function _setNonRevocableWhitelistAdmin(address account) internal { require(account != _nonRevocableWhitelistAdmin, "New and old non-revocable whitelist admins cannot be the same"); require(account != address(0), "Cannot set the zero address as non-revocable whitelist admin"); _nonRevocableWhitelistAdmin = account; emit NewNonRevocableWhitelistAdmin(account); } modifier onlyRevocableWhitelistAdmin() { require(msg.sender != _nonRevocableWhitelistAdmin, "Only revocable whitelist admins are allowed"); _; } modifier onlyNonRevocableWhitelistAdmin() { require(msg.sender == _nonRevocableWhitelistAdmin, "Only non-revocable admins are allowed"); _; } } // File: contracts/HonestoToken.sol pragma solidity 0.5.12; /** * @title HonestoToken * @author Dominik Spicher, [email protected] */ contract HonestoToken is ERC20Pausable, WhitelisterRole, NonRevocableWhitelistAdmin { string public constant name = "HonestoToken"; string public constant symbol = "HOTO"; uint8 public constant decimals = 0; uint256 private constant INITIAL_SUPPLY = 10 * (10 ** 6); constructor(address _honestoAccount, address _tokengateAccount) public { require(_honestoAccount != address(0), "_honestoAccount cannot be zero address"); require(_tokengateAccount != address(0), "_tokengateAccount cannot be zero address"); require(_honestoAccount != _tokengateAccount, "_honestoAccount and _tokengateAccount must be different"); // make _honestoAccount and _tokengateAccount WhitelistAdmins _addWhitelistAdmin(_honestoAccount); _addWhitelistAdmin(_tokengateAccount); // make _honestoAccount and _tokengateAccount Whitelisters _addWhitelister(_honestoAccount); _addWhitelister(_tokengateAccount); renounceWhitelistAdmin(); // set _honestAccount as the whitelist admin that can't revoke _setNonRevocableWhitelistAdmin(_honestoAccount); assert(super.getNonRevocableWhitelistAdmin() != address(0)); // whitelist _honestoAccount so it can receive tokens _addWhitelisted(_honestoAccount); // make _honestoAccount the only Pauser _addPauser(_honestoAccount); renouncePauser(); // assign total supply to _honestoAccount _mint(_honestoAccount, INITIAL_SUPPLY); } /** * @dev Transfer non-revocable whitelist admin status to another account * @param account The account to make the non-revocable whitelist admin */ function setNonRevocableWhitelistAdmin(address account) public onlyNonRevocableWhitelistAdmin onlyWhitelistAdmin { require(isWhitelistAdmin(account), "Cannot set non-revocable whitelist admin to a non-admin"); super.setNonRevocableWhitelistAdmin(account); } /** * @dev Renounce own whitelist admin status. We need to overwrite this * method to add the onlyRevocableWhitelistAdmin modifier */ function renounceWhitelistAdmin() public onlyRevocableWhitelistAdmin { super.renounceWhitelistAdmin(); } /** * @dev Transfer token to a whitelisted address * @param to The address to transfer to. * @param value The amount to be transferred. */ function transfer(address to, uint256 value) public onlyWhitelisted validDestination(to) returns (bool) { require(isWhitelisted(to), "recipient is not whitelisted"); return super.transfer(to, value); } /** * @dev Transfer token from an address to another one given sufficient approval * @param to The address to transfer from. * @param to The address to transfer to. * @param value The amount to be transferred. */ function transferFrom(address from, address to, uint256 value) public validDestination(to) returns (bool) { require(isWhitelisted(from), "sender is not whitelisted"); require(isWhitelisted(to), "recipient is not whitelisted"); return super.transferFrom(from, to, value); } /** * @dev Prevent transferring tokens to the contract address * @param to The address to check */ modifier validDestination(address to) { require(to != address(this), "No transfer to the token smart contract"); _; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_honestoAccount","type":"address"},{"internalType":"address","name":"_tokengateAccount","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"NewNonRevocableWhitelistAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"PauserAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"PauserRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"WhitelistAdminAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"WhitelistAdminRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"WhitelistedAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"WhitelistedRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"WhitelisterAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"WhitelisterRemoved","type":"event"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addPauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addWhitelistAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addWhitelisted","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addWhitelister","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getNonRevocableWhitelistAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isNonRevocableWhitelistAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isPauser","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isWhitelistAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isWhitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isWhitelister","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"removeWhitelisted","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"removeWhitelister","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renouncePauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceWhitelistAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceWhitelisted","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"setNonRevocableWhitelistAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162003b4b38038062003b4b833981810160405260408110156200003757600080fd5b81019080805190602001909291908051906020019092919050505062000063336200032660201b60201c565b6000600460006101000a81548160ff0219169083151502179055506200008f336200038760201b60201c565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000117576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602681526020018062003a646026913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156200019f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526028815260200180620039df6028913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000226576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603781526020018062003ac76037913960400191505060405180910390fd5b62000237826200038760201b60201c565b62000248816200038760201b60201c565b6200025982620003e860201b60201c565b6200026a81620003e860201b60201c565b6200027a6200044960201b60201c565b6200028b826200050960201b60201c565b600073ffffffffffffffffffffffffffffffffffffffff16620002b8620006c160201b62000df61760201c565b73ffffffffffffffffffffffffffffffffffffffff161415620002d757fe5b620002e882620006eb60201b60201c565b620002f9826200032660201b60201c565b620003096200074c60201b60201c565b6200031e82629896806200075f60201b60201c565b505062000d12565b620003418160036200092960201b620021911790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b620003a28160056200092960201b620021911790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b620004038160076200092960201b620021911790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f25f05eb2b87548a4d5f3b374af0482149441d4fe9264ff9be277dc1d37a3bf1a60405160405180910390a250565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415620004f2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b81526020018062003b20602b913960400191505060405180910390fd5b6200050762000a0d60201b62001bdf1760201c565b565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620005b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d81526020018062003a8a603d913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156200063a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603c81526020018062003a07603c913960400191505060405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f629ab26b44c706450c0a8e89b0917245d73e32a4302061d9a91f7934d37cc59c60405160405180910390a250565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620007068160066200092960201b620021911790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f60405160405180910390a250565b6200075d3362000a2060201b60201c565b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000803576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6200081f8160025462000a8160201b620023da1790919060201c565b6002819055506200087d816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000a8160201b620023da1790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6200093b828262000b0a60201b60201c565b15620009af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f526f6c65733a206163636f756e7420616c72656164792068617320726f6c650081525060200191505060405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b62000a1e3362000bea60201b60201c565b565b62000a3b81600362000c4b60201b6200231d1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b60008082840190508381101562000b00576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000b93576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018062003afe6022913960400191505060405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b62000c0581600562000c4b60201b6200231d1790919060201c565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b62000c5d828262000b0a60201b60201c565b62000cb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602181526020018062003a436021913960400191505060405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b612cbd8062000d226000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c80636ef8d66d1161010457806395d89b41116100a2578063bb5f747b11610071578063bb5f747b14610939578063d6cd947314610995578063dd62ed3e1461099f578063eaf9144a14610a17576101da565b806395d89b41146107a6578063a457c2d714610829578063a9059cbb1461088f578063b1f17880146108f5576101da565b80637d0c269f116100de5780637d0c269f146106b857806382c3f79c1461071457806382dc1ec4146107585780638456cb591461079c576101da565b80636ef8d66d1461061257806370a082311461061c5780637362d9c814610674576101da565b80633049df8f1161017c5780633f4ba83a1161014b5780633f4ba83a1461058057806346fbf68e1461058a5780634c5a628c146105e65780635c975abb146105f0576101da565b80633049df8f14610450578063313ce5671461049a57806339509351146104be5780633af32abf14610524576101da565b806318160ddd116101b857806318160ddd1461030c57806323b872dd1461032a578063291d9549146103b05780632a9bbfcc146103f4576101da565b806306fdde03146101df578063095ea7b31461026257806310154bad146102c8575b600080fd5b6101e7610a5b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561022757808201518184015260208101905061020c565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102ae6004803603604081101561027857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a94565b604051808215151515815260200191505060405180910390f35b61030a600480360360208110156102de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b2b565b005b610314610b95565b6040518082815260200191505060405180910390f35b6103966004803603606081101561034057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b9f565b604051808215151515815260200191505060405180910390f35b6103f2600480360360208110156103c657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d32565b005b6104366004803603602081101561040a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d9c565b604051808215151515815260200191505060405180910390f35b610458610df6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104a2610e20565b604051808260ff1660ff16815260200191505060405180910390f35b61050a600480360360408110156104d457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e25565b604051808215151515815260200191505060405180910390f35b6105666004803603602081101561053a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ebc565b604051808215151515815260200191505060405180910390f35b610588610ed9565b005b6105cc600480360360208110156105a057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611039565b604051808215151515815260200191505060405180910390f35b6105ee611056565b005b6105f8611107565b604051808215151515815260200191505060405180910390f35b61061a61111e565b005b61065e6004803603602081101561063257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611129565b6040518082815260200191505060405180910390f35b6106b66004803603602081101561068a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611171565b005b6106fa600480360360208110156106ce57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111db565b604051808215151515815260200191505060405180910390f35b6107566004803603602081101561072a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111f8565b005b61079a6004803603602081101561076e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611262565b005b6107a46112cc565b005b6107ae61142d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6108756004803603604081101561083f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611466565b604051808215151515815260200191505060405180910390f35b6108db600480360360408110156108a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114fd565b604051808215151515815260200191505060405180910390f35b6109376004803603602081101561090b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611671565b005b61097b6004803603602081101561094f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117df565b604051808215151515815260200191505060405180910390f35b61099d6117fc565b005b610a01600480360360408110156109b557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611807565b6040518082815260200191505060405180910390f35b610a5960048036036020811015610a2d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061188e565b005b6040518060400160405280600c81526020017f486f6e6573746f546f6b656e000000000000000000000000000000000000000081525081565b6000600460009054906101000a900460ff1615610b19576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610b2383836118f8565b905092915050565b610b34336111db565b610b89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612c00603a913960400191505060405180910390fd5b610b928161190f565b50565b6000600254905090565b6000823073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526027815260200180612b436027913960400191505060405180910390fd5b610c3085610ebc565b610ca2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f73656e646572206973206e6f742077686974656c69737465640000000000000081525060200191505060405180910390fd5b610cab84610ebc565b610d1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726563697069656e74206973206e6f742077686974656c69737465640000000081525060200191505060405180910390fd5b610d28858585611969565b9150509392505050565b610d3b336111db565b610d90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612c00603a913960400191505060405180910390fd5b610d9981611a02565b50565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081565b6000600460009054906101000a900460ff1615610eaa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610eb48383611a5c565b905092915050565b6000610ed2826006611b0190919063ffffffff16565b9050919050565b610ee233611039565b610f37576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806129d06030913960400191505060405180910390fd5b600460009054906101000a900460ff16610fb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b6000600460006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600061104f826003611b0190919063ffffffff16565b9050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156110fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b815260200180612c5e602b913960400191505060405180910390fd5b611105611bdf565b565b6000600460009054906101000a900460ff16905090565b61112733611bea565b565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61117a336117df565b6111cf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b6111d881611c44565b50565b60006111f1826007611b0190919063ffffffff16565b9050919050565b611201336117df565b611256576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b61125f81611c9e565b50565b61126b33611039565b6112c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806129d06030913960400191505060405180910390fd5b6112c981611cf8565b50565b6112d533611039565b61132a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806129d06030913960400191505060405180910390fd5b600460009054906101000a900460ff16156113ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6001600460006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6040518060400160405280600481526020017f484f544f0000000000000000000000000000000000000000000000000000000081525081565b6000600460009054906101000a900460ff16156114eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6114f58383611d52565b905092915050565b600061150833610ebc565b61155d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612ba1603a913960400191505060405180910390fd5b823073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156115e3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526027815260200180612b436027913960400191505060405180910390fd5b6115ec84610ebc565b61165e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726563697069656e74206973206e6f742077686974656c69737465640000000081525060200191505060405180910390fd5b6116688484611df7565b91505092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611717576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612a5e6025913960400191505060405180910390fd5b611720336117df565b611775576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b61177e816117df565b6117d3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526037815260200180612b6a6037913960400191505060405180910390fd5b6117dc81611e8e565b50565b60006117f5826005611b0190919063ffffffff16565b9050919050565b61180533611a02565b565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611897336117df565b6118ec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b6118f581611f40565b50565b6000611905338484611f9a565b6001905092915050565b61192381600661219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f60405160405180910390a250565b6000600460009054906101000a900460ff16156119ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6119f984848461226c565b90509392505050565b611a1681600661231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b660405160405180910390a250565b6000611af73384611af285600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123da90919063ffffffff16565b611f9a565b6001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612ae16022913960400191505060405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611be833612462565b565b611bfe81600361231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b611c5881600561219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b611cb281600761231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f8514ebf39bc709d98437cc704235ba0864bfdae7563b87a6583d2920cf2e835460405160405180910390a250565b611d0c81600361219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b6000611ded3384611de885600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124bc90919063ffffffff16565b611f9a565b6001905092915050565b6000600460009054906101000a900460ff1615611e7c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b611e868383612545565b905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612a5e6025913960400191505060405180910390fd5b611f3d8161255c565b50565b611f5481600761219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f25f05eb2b87548a4d5f3b374af0482149441d4fe9264ff9be277dc1d37a3bf1a60405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612020576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612c3a6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156120a6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612a006022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b61219b8282611b01565b1561220e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f526f6c65733a206163636f756e7420616c72656164792068617320726f6c650081525060200191505060405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000612279848484612710565b612312843361230d85600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124bc90919063ffffffff16565b611f9a565b600190509392505050565b6123278282611b01565b61237c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612a836021913960400191505060405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600080828401905083811015612458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b61247681600561231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b600082821115612534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000612552338484612710565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612603576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d815260200180612aa4603d913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612689576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603c815260200180612a22603c913960400191505060405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f629ab26b44c706450c0a8e89b0917245d73e32a4302061d9a91f7934d37cc59c60405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612796576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612bdb6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561281c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806129ad6023913960400191505060405180910390fd5b61286d816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124bc90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612900816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123da90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373506175736572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652050617573657220726f6c6545524332303a20617070726f766520746f20746865207a65726f206164647265737343616e6e6f742073657420746865207a65726f2061646472657373206173206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e4f6e6c79206e6f6e2d7265766f6361626c652061646d696e732061726520616c6c6f776564526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654e657720616e64206f6c64206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e732063616e6e6f74206265207468652073616d65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c654e6f207472616e7366657220746f2074686520746f6b656e20736d61727420636f6e747261637443616e6e6f7420736574206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e20746f2061206e6f6e2d61646d696e57686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c6545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737357686974656c6973746572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374657220726f6c6545524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734f6e6c79207265766f6361626c652077686974656c6973742061646d696e732061726520616c6c6f776564a265627a7a72315820b0c755770465bb5b3044dcc839c0b56f4f7884ea54face7ea03f54392def75eb64736f6c634300050c00325f746f6b656e676174654163636f756e742063616e6e6f74206265207a65726f206164647265737343616e6e6f742073657420746865207a65726f2061646472657373206173206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c655f686f6e6573746f4163636f756e742063616e6e6f74206265207a65726f20616464726573734e657720616e64206f6c64206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e732063616e6e6f74206265207468652073616d655f686f6e6573746f4163636f756e7420616e64205f746f6b656e676174654163636f756e74206d75737420626520646966666572656e74526f6c65733a206163636f756e7420697320746865207a65726f20616464726573734f6e6c79207265766f6361626c652077686974656c6973742061646d696e732061726520616c6c6f776564000000000000000000000000dc5dce37dcc76452f49c7604b58cce39389d8275000000000000000000000000b424c5b113eb29fa9bde1b4be36503852d979d21
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101da5760003560e01c80636ef8d66d1161010457806395d89b41116100a2578063bb5f747b11610071578063bb5f747b14610939578063d6cd947314610995578063dd62ed3e1461099f578063eaf9144a14610a17576101da565b806395d89b41146107a6578063a457c2d714610829578063a9059cbb1461088f578063b1f17880146108f5576101da565b80637d0c269f116100de5780637d0c269f146106b857806382c3f79c1461071457806382dc1ec4146107585780638456cb591461079c576101da565b80636ef8d66d1461061257806370a082311461061c5780637362d9c814610674576101da565b80633049df8f1161017c5780633f4ba83a1161014b5780633f4ba83a1461058057806346fbf68e1461058a5780634c5a628c146105e65780635c975abb146105f0576101da565b80633049df8f14610450578063313ce5671461049a57806339509351146104be5780633af32abf14610524576101da565b806318160ddd116101b857806318160ddd1461030c57806323b872dd1461032a578063291d9549146103b05780632a9bbfcc146103f4576101da565b806306fdde03146101df578063095ea7b31461026257806310154bad146102c8575b600080fd5b6101e7610a5b565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561022757808201518184015260208101905061020c565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102ae6004803603604081101561027857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a94565b604051808215151515815260200191505060405180910390f35b61030a600480360360208110156102de57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b2b565b005b610314610b95565b6040518082815260200191505060405180910390f35b6103966004803603606081101561034057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b9f565b604051808215151515815260200191505060405180910390f35b6103f2600480360360208110156103c657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d32565b005b6104366004803603602081101561040a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d9c565b604051808215151515815260200191505060405180910390f35b610458610df6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104a2610e20565b604051808260ff1660ff16815260200191505060405180910390f35b61050a600480360360408110156104d457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e25565b604051808215151515815260200191505060405180910390f35b6105666004803603602081101561053a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ebc565b604051808215151515815260200191505060405180910390f35b610588610ed9565b005b6105cc600480360360208110156105a057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611039565b604051808215151515815260200191505060405180910390f35b6105ee611056565b005b6105f8611107565b604051808215151515815260200191505060405180910390f35b61061a61111e565b005b61065e6004803603602081101561063257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611129565b6040518082815260200191505060405180910390f35b6106b66004803603602081101561068a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611171565b005b6106fa600480360360208110156106ce57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111db565b604051808215151515815260200191505060405180910390f35b6107566004803603602081101561072a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506111f8565b005b61079a6004803603602081101561076e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611262565b005b6107a46112cc565b005b6107ae61142d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156107ee5780820151818401526020810190506107d3565b50505050905090810190601f16801561081b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6108756004803603604081101561083f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611466565b604051808215151515815260200191505060405180910390f35b6108db600480360360408110156108a557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114fd565b604051808215151515815260200191505060405180910390f35b6109376004803603602081101561090b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611671565b005b61097b6004803603602081101561094f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117df565b604051808215151515815260200191505060405180910390f35b61099d6117fc565b005b610a01600480360360408110156109b557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611807565b6040518082815260200191505060405180910390f35b610a5960048036036020811015610a2d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061188e565b005b6040518060400160405280600c81526020017f486f6e6573746f546f6b656e000000000000000000000000000000000000000081525081565b6000600460009054906101000a900460ff1615610b19576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610b2383836118f8565b905092915050565b610b34336111db565b610b89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612c00603a913960400191505060405180910390fd5b610b928161190f565b50565b6000600254905090565b6000823073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526027815260200180612b436027913960400191505060405180910390fd5b610c3085610ebc565b610ca2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f73656e646572206973206e6f742077686974656c69737465640000000000000081525060200191505060405180910390fd5b610cab84610ebc565b610d1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726563697069656e74206973206e6f742077686974656c69737465640000000081525060200191505060405180910390fd5b610d28858585611969565b9150509392505050565b610d3b336111db565b610d90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612c00603a913960400191505060405180910390fd5b610d9981611a02565b50565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081565b6000600460009054906101000a900460ff1615610eaa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b610eb48383611a5c565b905092915050565b6000610ed2826006611b0190919063ffffffff16565b9050919050565b610ee233611039565b610f37576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806129d06030913960400191505060405180910390fd5b600460009054906101000a900460ff16610fb9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b6000600460006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600061104f826003611b0190919063ffffffff16565b9050919050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156110fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b815260200180612c5e602b913960400191505060405180910390fd5b611105611bdf565b565b6000600460009054906101000a900460ff16905090565b61112733611bea565b565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61117a336117df565b6111cf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b6111d881611c44565b50565b60006111f1826007611b0190919063ffffffff16565b9050919050565b611201336117df565b611256576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b61125f81611c9e565b50565b61126b33611039565b6112c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806129d06030913960400191505060405180910390fd5b6112c981611cf8565b50565b6112d533611039565b61132a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806129d06030913960400191505060405180910390fd5b600460009054906101000a900460ff16156113ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6001600460006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6040518060400160405280600481526020017f484f544f0000000000000000000000000000000000000000000000000000000081525081565b6000600460009054906101000a900460ff16156114eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6114f58383611d52565b905092915050565b600061150833610ebc565b61155d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180612ba1603a913960400191505060405180910390fd5b823073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156115e3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526027815260200180612b436027913960400191505060405180910390fd5b6115ec84610ebc565b61165e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726563697069656e74206973206e6f742077686974656c69737465640000000081525060200191505060405180910390fd5b6116688484611df7565b91505092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611717576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612a5e6025913960400191505060405180910390fd5b611720336117df565b611775576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b61177e816117df565b6117d3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526037815260200180612b6a6037913960400191505060405180910390fd5b6117dc81611e8e565b50565b60006117f5826005611b0190919063ffffffff16565b9050919050565b61180533611a02565b565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611897336117df565b6118ec576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526040815260200180612b036040913960400191505060405180910390fd5b6118f581611f40565b50565b6000611905338484611f9a565b6001905092915050565b61192381600661219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f60405160405180910390a250565b6000600460009054906101000a900460ff16156119ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6119f984848461226c565b90509392505050565b611a1681600661231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b660405160405180910390a250565b6000611af73384611af285600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123da90919063ffffffff16565b611f9a565b6001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612ae16022913960400191505060405180910390fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611be833612462565b565b611bfe81600361231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b611c5881600561219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f22380c05984257a1cb900161c713dd71d39e74820f1aea43bd3f1bdd2096129960405160405180910390a250565b611cb281600761231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f8514ebf39bc709d98437cc704235ba0864bfdae7563b87a6583d2920cf2e835460405160405180910390a250565b611d0c81600361219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b6000611ded3384611de885600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124bc90919063ffffffff16565b611f9a565b6001905092915050565b6000600460009054906101000a900460ff1615611e7c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b611e868383612545565b905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f34576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612a5e6025913960400191505060405180910390fd5b611f3d8161255c565b50565b611f5481600761219190919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f25f05eb2b87548a4d5f3b374af0482149441d4fe9264ff9be277dc1d37a3bf1a60405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612020576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612c3a6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156120a6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612a006022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b61219b8282611b01565b1561220e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f526f6c65733a206163636f756e7420616c72656164792068617320726f6c650081525060200191505060405180910390fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000612279848484612710565b612312843361230d85600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124bc90919063ffffffff16565b611f9a565b600190509392505050565b6123278282611b01565b61237c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612a836021913960400191505060405180910390fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600080828401905083811015612458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b61247681600561231d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f0a8eb35e5ca14b3d6f28e4abf2f128dbab231a58b56e89beb5d636115001e16560405160405180910390a250565b600082821115612534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000612552338484612710565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612603576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603d815260200180612aa4603d913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612689576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603c815260200180612a22603c913960400191505060405180910390fd5b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f629ab26b44c706450c0a8e89b0917245d73e32a4302061d9a91f7934d37cc59c60405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612796576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180612bdb6025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561281c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806129ad6023913960400191505060405180910390fd5b61286d816000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124bc90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612900816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123da90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373506175736572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652050617573657220726f6c6545524332303a20617070726f766520746f20746865207a65726f206164647265737343616e6e6f742073657420746865207a65726f2061646472657373206173206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e4f6e6c79206e6f6e2d7265766f6361626c652061646d696e732061726520616c6c6f776564526f6c65733a206163636f756e7420646f6573206e6f74206861766520726f6c654e657720616e64206f6c64206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e732063616e6e6f74206265207468652073616d65526f6c65733a206163636f756e7420697320746865207a65726f206164647265737357686974656c69737441646d696e526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c69737441646d696e20726f6c654e6f207472616e7366657220746f2074686520746f6b656e20736d61727420636f6e747261637443616e6e6f7420736574206e6f6e2d7265766f6361626c652077686974656c6973742061646d696e20746f2061206e6f6e2d61646d696e57686974656c6973746564526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374656420726f6c6545524332303a207472616e736665722066726f6d20746865207a65726f206164647265737357686974656c6973746572526f6c653a2063616c6c657220646f6573206e6f742068617665207468652057686974656c697374657220726f6c6545524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734f6e6c79207265766f6361626c652077686974656c6973742061646d696e732061726520616c6c6f776564a265627a7a72315820b0c755770465bb5b3044dcc839c0b56f4f7884ea54face7ea03f54392def75eb64736f6c634300050c0032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000dc5dce37dcc76452f49c7604b58cce39389d8275000000000000000000000000b424c5b113eb29fa9bde1b4be36503852d979d21
-----Decoded View---------------
Arg [0] : _honestoAccount (address): 0xdC5dcE37dcC76452f49C7604b58cCe39389D8275
Arg [1] : _tokengateAccount (address): 0xB424C5B113eb29Fa9BDE1b4BE36503852D979d21
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000dc5dce37dcc76452f49c7604b58cce39389d8275
Arg [1] : 000000000000000000000000b424c5b113eb29fa9bde1b4be36503852d979d21
Deployed Bytecode Sourcemap
25828:3582:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;25828:3582:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25921:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;25921:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19344:140;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19344:140:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;23442:107;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23442:107:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8074:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;28823:315;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28823:315:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;23557:113;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23557:113:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;24621:146;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;24621:146:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;24775:124;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;26017:34;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;19492:167;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19492:167:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;22080:119;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;22080:119:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;18672:118;;;:::i;:::-;;16158:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16158:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;28027:118;;;:::i;:::-;;17881:78;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;16375:77;;;:::i;:::-;;8228:110;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8228:110:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20710:116;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;20710:116:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;23315:119;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23315:119:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;23796:116;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23796:116:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;16275:92;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16275:92:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;18461:116;;;:::i;:::-;;25972:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;25972:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19667:177;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19667:177:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;28321:244;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;28321:244:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;27577:285;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;27577:285:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;20577:125;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;20577:125:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;22449:87;;;:::i;:::-;;8770:134;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8770:134:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;23678:110;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23678:110:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;25921:44;;;;;;;;;;;;;;;;;;;:::o;19344:140::-;19423:4;18118:7;;;;;;;;;;;18117:8;18109:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19447:29;19461:7;19470:5;19447:13;:29::i;:::-;19440:36;;19344:140;;;;:::o;23442:107::-;23199:25;23213:10;23199:13;:25::i;:::-;23191:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23517:24;23533:7;23517:15;:24::i;:::-;23442:107;:::o;8074:91::-;8118:7;8145:12;;8138:19;;8074:91;:::o;28823:315::-;28932:4;28919:2;29336:4;29322:19;;:2;:19;;;;29314:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28957:19;28971:4;28957:13;:19::i;:::-;28949:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29025:17;29039:2;29025:13;:17::i;:::-;29017:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29095:35;29114:4;29120:2;29124:5;29095:18;:35::i;:::-;29088:42;;28823:315;;;;;;:::o;23557:113::-;23199:25;23213:10;23199:13;:25::i;:::-;23191:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23635:27;23654:7;23635:18;:27::i;:::-;23557:113;:::o;24621:146::-;24697:4;24732:27;;;;;;;;;;;24721:38;;:7;:38;;;24714:45;;24621:146;;;:::o;24775:124::-;24837:7;24864:27;;;;;;;;;;;24857:34;;24775:124;:::o;26017:34::-;26050:1;26017:34;:::o;19492:167::-;19583:4;18118:7;;;;;;;;;;;18117:8;18109:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19607:44;19631:7;19640:10;19607:23;:44::i;:::-;19600:51;;19492:167;;;;:::o;22080:119::-;22141:4;22165:26;22183:7;22165:13;:17;;:26;;;;:::i;:::-;22158:33;;22080:119;;;:::o;18672:118::-;16057:20;16066:10;16057:8;:20::i;:::-;16049:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18317:7;;;;;;;;;;;18309:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18741:5;18731:7;;:15;;;;;;;;;;;;;;;;;;18762:20;18771:10;18762:20;;;;;;;;;;;;;;;;;;;;;;18672:118::o;16158:109::-;16214:4;16238:21;16251:7;16238:8;:12;;:21;;;;:::i;:::-;16231:28;;16158:109;;;:::o;28027:118::-;25391:27;;;;;;;;;;;25377:41;;:10;:41;;;;25369:97;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28107:30;:28;:30::i;:::-;28027:118::o;17881:78::-;17920:4;17944:7;;;;;;;;;;;17937:14;;17881:78;:::o;16375:77::-;16419:25;16433:10;16419:13;:25::i;:::-;16375:77::o;8228:110::-;8285:7;8312:9;:18;8322:7;8312:18;;;;;;;;;;;;;;;;8305:25;;8228:110;;;:::o;20710:116::-;20452:28;20469:10;20452:16;:28::i;:::-;20444:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20791:27;20810:7;20791:18;:27::i;:::-;20710:116;:::o;23315:119::-;23376:4;23400:26;23418:7;23400:13;:17;;:26;;;;:::i;:::-;23393:33;;23315:119;;;:::o;23796:116::-;20452:28;20469:10;20452:16;:28::i;:::-;20444:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23877:27;23896:7;23877:18;:27::i;:::-;23796:116;:::o;16275:92::-;16057:20;16066:10;16057:8;:20::i;:::-;16049:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16340:19;16351:7;16340:10;:19::i;:::-;16275:92;:::o;18461:116::-;16057:20;16066:10;16057:8;:20::i;:::-;16049:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18118:7;;;;;;;;;;;18117:8;18109:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18531:4;18521:7;;:14;;;;;;;;;;;;;;;;;;18551:18;18558:10;18551:18;;;;;;;;;;;;;;;;;;;;;;18461:116::o;25972:38::-;;;;;;;;;;;;;;;;;;;:::o;19667:177::-;19763:4;18118:7;;;;;;;;;;;18117:8;18109:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19787:49;19811:7;19820:15;19787:23;:49::i;:::-;19780:56;;19667:177;;;;:::o;28321:244::-;28437:4;21964:25;21978:10;21964:13;:25::i;:::-;21956:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28424:2;29336:4;29322:19;;:2;:19;;;;29314:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28462:17;28476:2;28462:13;:17::i;:::-;28454:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28532:25;28547:2;28551:5;28532:14;:25::i;:::-;28525:32;;22063:1;28321:244;;;;:::o;27577:285::-;25569:27;;;;;;;;;;;25555:41;;:10;:41;;;25547:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20452:28;20469:10;20452:16;:28::i;:::-;20444:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27714:25;27731:7;27714:16;:25::i;:::-;27706:93;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27810:44;27846:7;27810:35;:44::i;:::-;27577:285;:::o;20577:125::-;20641:4;20665:29;20686:7;20665:16;:20;;:29;;;;:::i;:::-;20658:36;;20577:125;;;:::o;22449:87::-;22498:30;22517:10;22498:18;:30::i;:::-;22449:87::o;8770:134::-;8842:7;8869:11;:18;8881:5;8869:18;;;;;;;;;;;;;;;:27;8888:7;8869:27;;;;;;;;;;;;;;;;8862:34;;8770:134;;;;:::o;23678:110::-;20452:28;20469:10;20452:16;:28::i;:::-;20444:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23756:24;23772:7;23756:15;:24::i;:::-;23678:110;:::o;9051:148::-;9116:4;9133:36;9142:10;9154:7;9163:5;9133:8;:36::i;:::-;9187:4;9180:11;;9051:148;;;;:::o;22544:137::-;22606:26;22624:7;22606:13;:17;;:26;;;;:::i;:::-;22665:7;22648:25;;;;;;;;;;;;22544:137;:::o;19176:160::-;19269:4;18118:7;;;;;;;;;;;18117:8;18109:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19293:35;19312:4;19318:2;19322:5;19293:18;:35::i;:::-;19286:42;;19176:160;;;;;:::o;22689:145::-;22754:29;22775:7;22754:13;:20;;:29;;;;:::i;:::-;22818:7;22799:27;;;;;;;;;;;;22689:145;:::o;10335:206::-;10415:4;10432:79;10441:10;10453:7;10462:48;10499:10;10462:11;:23;10474:10;10462:23;;;;;;;;;;;;;;;:32;10486:7;10462:32;;;;;;;;;;;;;;;;:36;;:48;;;;:::i;:::-;10432:8;:79::i;:::-;10529:4;10522:11;;10335:206;;;;:::o;15432:203::-;15504:4;15548:1;15529:21;;:7;:21;;;;15521:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15607:4;:11;;:20;15619:7;15607:20;;;;;;;;;;;;;;;;;;;;;;;;;15600:27;;15432:203;;;;:::o;20834:93::-;20886:33;20908:10;20886:21;:33::i;:::-;20834:93::o;16590:130::-;16650:24;16666:7;16650:8;:15;;:24;;;;:::i;:::-;16704:7;16690:22;;;;;;;;;;;;16590:130;:::o;20935:146::-;21000:29;21021:7;21000:16;:20;;:29;;;;:::i;:::-;21065:7;21045:28;;;;;;;;;;;;20935:146;:::o;24065:145::-;24130:29;24151:7;24130:13;:20;;:29;;;;:::i;:::-;24194:7;24175:27;;;;;;;;;;;;24065:145;:::o;16460:122::-;16517:21;16530:7;16517:8;:12;;:21;;;;:::i;:::-;16566:7;16554:20;;;;;;;;;;;;16460:122;:::o;11044:216::-;11129:4;11146:84;11155:10;11167:7;11176:53;11213:15;11176:11;:23;11188:10;11176:23;;;;;;;;;;;;;;;:32;11200:7;11176:32;;;;;;;;;;;;;;;;:36;;:53;;;;:::i;:::-;11146:8;:84::i;:::-;11248:4;11241:11;;11044:216;;;;:::o;19036:132::-;19111:4;18118:7;;;;;;;;;;;18117:8;18109:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19135:25;19150:2;19154:5;19135:14;:25::i;:::-;19128:32;;19036:132;;;;:::o;24461:152::-;25569:27;;;;;;;;;;;25555:41;;:10;:41;;;25547:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24566:39;24597:7;24566:30;:39::i;:::-;24461:152;:::o;23920:137::-;23982:26;24000:7;23982:13;:17;;:26;;;;:::i;:::-;24041:7;24024:25;;;;;;;;;;;;23920:137;:::o;13846:335::-;13956:1;13939:19;;:5;:19;;;;13931:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14037:1;14018:21;;:7;:21;;;;14010:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14121:5;14091:11;:18;14103:5;14091:18;;;;;;;;;;;;;;;:27;14110:7;14091:27;;;;;;;;;;;;;;;:35;;;;14158:7;14142:31;;14151:5;14142:31;;;14167:5;14142:31;;;;;;;;;;;;;;;;;;13846:335;;;:::o;14896:178::-;14974:18;14978:4;14984:7;14974:3;:18::i;:::-;14973:19;14965:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15062:4;15039;:11;;:20;15051:7;15039:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;14896:178;;:::o;9670:256::-;9759:4;9776:36;9786:6;9794:9;9805:6;9776:9;:36::i;:::-;9823:73;9832:6;9840:10;9852:43;9888:6;9852:11;:19;9864:6;9852:19;;;;;;;;;;;;;;;:31;9872:10;9852:31;;;;;;;;;;;;;;;;:35;;:43;;;;:::i;:::-;9823:8;:73::i;:::-;9914:4;9907:11;;9670:256;;;;;:::o;15154:183::-;15234:18;15238:4;15244:7;15234:3;:18::i;:::-;15226:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15324:5;15301:4;:11;;:20;15313:7;15301:20;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;15154:183;;:::o;3733:181::-;3791:7;3811:9;3827:1;3823;:5;3811:17;;3852:1;3847;:6;;3839:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3905:1;3898:8;;;3733:181;;;;:::o;21089:154::-;21157:32;21181:7;21157:16;:23;;:32;;;;:::i;:::-;21227:7;21205:30;;;;;;;;;;;;21089:154;:::o;4189:184::-;4247:7;4280:1;4275;:6;;4267:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4327:9;4343:1;4339;:5;4327:17;;4364:1;4357:8;;;4189:184;;;;:::o;8551:156::-;8620:4;8637:40;8647:10;8659:9;8670:6;8637:9;:40::i;:::-;8695:4;8688:11;;8551:156;;;;:::o;24907:404::-;25003:27;;;;;;;;;;;24992:38;;:7;:38;;;;24984:112;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25134:1;25115:21;;:7;:21;;;;25107:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25242:7;25212:27;;:37;;;;;;;;;;;;;;;;;;25295:7;25265:38;;;;;;;;;;;;24907:404;:::o;11750:429::-;11866:1;11848:20;;:6;:20;;;;11840:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11950:1;11929:23;;:9;:23;;;;11921:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12025:29;12047:6;12025:9;:17;12035:6;12025:17;;;;;;;;;;;;;;;;:21;;:29;;;;:::i;:::-;12005:9;:17;12015:6;12005:17;;;;;;;;;;;;;;;:49;;;;12088:32;12113:6;12088:9;:20;12098:9;12088:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;12065:9;:20;12075:9;12065:20;;;;;;;;;;;;;;;:55;;;;12153:9;12136:35;;12145:6;12136:35;;;12164:6;12136:35;;;;;;;;;;;;;;;;;;11750:429;;;:::o
Swarm Source
bzzr://b0c755770465bb5b3044dcc839c0b56f4f7884ea54face7ea03f54392def75eb
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.