ERC-20
Overview
Max Total Supply
4,700,000,000 WAY
Holders
1,935
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
100 WAYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
WayCoin
Compiler Version
v0.5.0+commit.1d4f565a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-03-10 */ // File: @openzeppelin/contracts/token/ERC20/IERC20.sol 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. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } // File: @openzeppelin/contracts/token/ERC20/ERC20Detailed.sol pragma solidity ^0.5.0; /** * @dev Optional functions from the ERC20 standard. */ contract ERC20Detailed is IERC20 { string private _name; string private _symbol; uint8 private _decimals; /** * @dev Sets the values for `name`, `symbol`, and `decimals`. All three of * these values are immutable: they can only be set once during * construction. */ constructor (string memory name, string memory symbol, uint8 decimals) public { _name = name; _symbol = symbol; _decimals = decimals; } /** * @dev Returns the name of the token. */ function name() public view returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5,05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IERC20-balanceOf} and {IERC20-transfer}. */ function decimals() public view returns (uint8) { return _decimals; } } // File: @openzeppelin/contracts/GSN/Context.sol pragma solidity ^0.5.0; /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with GSN meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ contract Context { // Empty internal constructor, to prevent people from mistakenly deploying // an instance of this contract, which should be used via inheritance. constructor () internal { } // solhint-disable-previous-line no-empty-blocks function _msgSender() internal view returns (address payable) { return msg.sender; } function _msgData() internal view returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } // File: @openzeppelin/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) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. * * _Available since v2.4.0._ */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); 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-contracts/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) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. * * _Available since v2.4.0._ */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); 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) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message 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. * * _Available since v2.4.0._ */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } // File: @openzeppelin/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}. * * TIP: For a detailed writeup see our guide * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How * to implement supply mechanisms]. * * We have followed general OpenZeppelin 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 Context, 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(_msgSender(), 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 amount) public returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @dev See {IERC20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {ERC20}; * * Requirements: * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. * - 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, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); 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(_msgSender(), spender, _allowances[_msgSender()][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(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); 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, "ERC20: transfer amount exceeds balance"); _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 Destroys `amount` tokens from `account`, reducing the * total supply. * * Emits a {Transfer} event with `to` set to the zero address. * * Requirements * * - `account` cannot be the zero address. * - `account` must have at least `amount` tokens. */ function _burn(address account, uint256 amount) internal { require(account != address(0), "ERC20: burn from the zero address"); _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance"); _totalSupply = _totalSupply.sub(amount); emit Transfer(account, address(0), amount); } /** * @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 amount) internal { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } /** * @dev Destroys `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, _msgSender(), _allowances[account][_msgSender()].sub(amount, "ERC20: burn amount exceeds allowance")); } } // File: contracts/WayCoin.sol pragma solidity >=0.5.0; /** * @title Way contract */ contract WayCoin is ERC20Detailed, ERC20 { uint noOfTokens = 4700000000; // 4,700,000,000(4.7B) // Address of waycoin vault // The vault will have all the waycoin issued at first. // In addtion, recalled(transfer back) token will be transferred to // the vault. address internal vault; // Address of waycoin owner // The owner can change admin and vault address. address internal owner; // Address of waycoin admin // The admin can change reserve. The reserve is the amount of token // assigned to some address but not permitted to use. // Once the admin agree with removing the reserve, // they can change the reserve to zero to permit the user to use all reserved // amount. So in effect, reservation will postpone the use of some tokens // being used until the admin give permission to the token owner. address internal admin; event OwnerChanged(address indexed previousOwner, address indexed newOwner); event VaultChanged(address indexed previousVault, address indexed newVault); event AdminChanged(address indexed previousAdmin, address indexed newAdmin); event ReserveChanged(address indexed _address, uint amount); event Recalled(address indexed from, uint amount); /** * @dev reserved number of tokens per each address * * To limit token transaction for some period by the admin, * each address' balance cannot become lower than this amount * */ mapping(address => uint) public reserves; /** * @dev modifier to limit access to the owner only */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev limit access to the vault only */ modifier onlyVault() { require(msg.sender == vault); _; } /** * @dev limit access to the admin only */ modifier onlyAdmin() { require(msg.sender == admin); _; } /** * @dev limit access to owner or vault */ modifier onlyOwnerOrVault() { require(msg.sender == owner || msg.sender == vault); _; } /** * @dev limit access to owner or admin or vault */ modifier onlyAdminOrOwnerOrVault() { require(msg.sender == owner || msg.sender == vault || msg.sender == admin); _; } /** * @dev initialize QRC20(ERC20) * * all token will deposit into the vault * * @param _symbol token symbol * @param _name token name * @param _owner owner address * @param _admin admin address * @param _vault vault address */ constructor (string memory _symbol, string memory _name, address _owner, address _admin, address _vault) ERC20Detailed(_name, _symbol, 18) public { require(bytes(_symbol).length > 0); require(bytes(_name).length > 0); owner = _owner; admin = _admin; vault = _vault; // initially all coins to the vault uint totalSupply_ = noOfTokens * (10 ** uint(decimals())); _mint(vault, totalSupply_); } /** * @dev change the amount of reserved token * reserve should be less than or equal to the current token balance * * Refer to the comment on the admin if you want to know more. * * @param _address the target address whose token will be frozen for future use * @param _reserve the amount of reserved token * */ function setReserve(address _address, uint _reserve) public onlyAdmin { require(_reserve <= totalSupply()); require(_address != address(0)); reserves[_address] = _reserve; emit ReserveChanged(_address, _reserve); } /** * @dev transfer token from sender to other * the result balance should be greater than or equal to the reserved token amount */ function transfer(address _to, uint256 _value) public returns (bool) { // check the reserve require(balanceOf(msg.sender).sub(_value) >= reserveOf(msg.sender)); return super.transfer(_to, _value); } /** * @dev change vault address * BEWARE! this withdraw all token from old vault and store it to the new vault * and new vault's allowed, reserve will be set to zero * @param _newVault new vault address */ function setVault(address _newVault) public onlyOwner { require(_newVault != address(0)); require(_newVault != vault); address _oldVault = vault; // change vault address vault = _newVault; emit VaultChanged(_oldVault, _newVault); // adjust balance uint _value = balanceOf(_oldVault); _transfer(_oldVault, _newVault, _value); } /** * @dev change owner address * @param _newOwner new owner address */ function setOwner(address _newOwner) public onlyVault { require(_newOwner != address(0)); require(_newOwner != owner); emit OwnerChanged(owner, _newOwner); owner = _newOwner; } /** * @dev change admin address * @param _newAdmin new admin address */ function setAdmin(address _newAdmin) public onlyOwnerOrVault { require(_newAdmin != address(0)); require(_newAdmin != admin); emit AdminChanged(admin, _newAdmin); admin = _newAdmin; } /** * @dev transfer a part of reserved amount to the vault * * Refer to the comment on the vault if you want to know more. * * @param _from the address from which the reserved token will be taken * @param _amount the amount of token to be taken */ function recall(address _from, uint _amount) public onlyAdmin { require(_from != address(0)); require(_amount > 0); uint currentReserve = reserveOf(_from); uint currentBalance = balanceOf(_from); require(currentReserve >= _amount); require(currentBalance >= _amount); uint newReserve = currentReserve.sub(_amount); reserves[_from] = newReserve; emit ReserveChanged(_from, newReserve); // transfer token _from to vault _transfer(_from, vault, _amount); emit Recalled(_from, _amount); } /** * @dev Transfer tokens from one address to another * * The _from's WAY balance should be larger than the reserved amount(reserves[_from]) plus _value. * NOTE: No one can send vault's token using transferFrom * */ function transferFrom(address _from, address _to, uint256 _value) public returns (bool) { require(_from != vault); require(_value <= balanceOf(_from).sub(reserves[_from])); return super.transferFrom(_from, _to, _value); } function getOwner() public view returns (address) { return owner; } function getVault() public view returns (address) { return vault; } function getAdmin() public view returns (address) { return admin; } function getOneWay() public view returns (uint) { return (10 ** uint(decimals())); } /** * @dev get the amount of reserved token */ function reserveOf(address _address) public view returns (uint _reserve) { return reserves[_address]; } /** * @dev get the amount reserved token of the sender */ function reserve() public view returns (uint _reserve) { return reserves[msg.sender]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"amount","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_amount","type":"uint256"}],"name":"recall","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newVault","type":"address"}],"name":"setVault","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOneWay","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getAdmin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newAdmin","type":"address"}],"name":"setAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"},{"name":"_reserve","type":"uint256"}],"name":"setReserve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"reserveOf","outputs":[{"name":"_reserve","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"reserve","outputs":[{"name":"_reserve","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"reserves","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_symbol","type":"string"},{"name":"_name","type":"string"},{"name":"_owner","type":"address"},{"name":"_admin","type":"address"},{"name":"_vault","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousVault","type":"address"},{"indexed":true,"name":"newVault","type":"address"}],"name":"VaultChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousAdmin","type":"address"},{"indexed":true,"name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"ReserveChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Recalled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]
Contract Creation Code
6080604052640118244f006006553480156200001a57600080fd5b506040516200282238038062002822833981018060405260a08110156200004057600080fd5b8101908080516401000000008111156200005957600080fd5b828101905060208101848111156200007057600080fd5b81518560018202830111640100000000821117156200008e57600080fd5b50509291906020018051640100000000811115620000ab57600080fd5b82810190506020810184811115620000c257600080fd5b8151856001820283011164010000000082111715620000e057600080fd5b50509291906020018051906020019092919080519060200190929190805190602001909291905050508385601282600090805190602001906200012592919062000534565b5081600190805190602001906200013e92919062000534565b5080600260006101000a81548160ff021916908360ff160217905550505050600085511115156200016e57600080fd5b600084511115156200017f57600080fd5b82600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006200025d620002b2640100000000026401000000009004565b60ff16600a0a600654029050620002a6600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682620002c9640100000000026401000000009004565b505050505050620005e3565b6000600260009054906101000a900460ff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156200036f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6200039481600554620004a96401000000000262002099179091906401000000009004565b600581905550620003fc81600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620004a96401000000000262002099179091906401000000009004565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008082840190508381101515156200052a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200057757805160ff1916838001178555620005a8565b82800160010185558215620005a8579182015b82811115620005a75782518255916020019190600101906200058a565b5b509050620005b79190620005bb565b5090565b620005e091905b80821115620005dc576000816000905550600101620005c2565b5090565b90565b61222f80620005f36000396000f3fe608060405260043610610133576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610138578063095ea7b3146101c857806313af40351461023b57806318160ddd1461028c5780631f035c7a146102b757806323b872dd14610312578063313ce567146103a557806339509351146103d65780636817031b146104495780636985cbac1461049a5780636e9960c3146104c5578063704b6c021461051c57806370a082311461056d57806378250b63146105d2578063893d20e81461062d5780638d928af81461068457806395d89b41146106db5780639fa77b201461076b578063a457c2d7146107d0578063a9059cbb14610843578063cd3293de146108b6578063d66bd524146108e1578063dd62ed3e14610946575b600080fd5b34801561014457600080fd5b5061014d6109cb565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018d578082015181840152602081019050610172565b50505050905090810190601f1680156101ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d457600080fd5b50610221600480360360408110156101eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a6d565b604051808215151515815260200191505060405180910390f35b34801561024757600080fd5b5061028a6004803603602081101561025e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a8b565b005b34801561029857600080fd5b506102a1610c40565b6040518082815260200191505060405180910390f35b3480156102c357600080fd5b50610310600480360360408110156102da57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c4a565b005b34801561031e57600080fd5b5061038b6004803603606081101561033557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e54565b604051808215151515815260200191505060405180910390f35b3480156103b157600080fd5b506103ba610f2f565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103e257600080fd5b5061042f600480360360408110156103f957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f46565b604051808215151515815260200191505060405180910390f35b34801561045557600080fd5b506104986004803603602081101561046c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ff9565b005b3480156104a657600080fd5b506104af6111cd565b6040518082815260200191505060405180910390f35b3480156104d157600080fd5b506104da6111e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052857600080fd5b5061056b6004803603602081101561053f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061120c565b005b34801561057957600080fd5b506105bc6004803603602081101561059057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611419565b6040518082815260200191505060405180910390f35b3480156105de57600080fd5b5061062b600480360360408110156105f557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611462565b005b34801561063957600080fd5b506106426115a6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561069057600080fd5b506106996115d0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106e757600080fd5b506106f06115fa565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610730578082015181840152602081019050610715565b50505050905090810190601f16801561075d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561077757600080fd5b506107ba6004803603602081101561078e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061169c565b6040518082815260200191505060405180910390f35b3480156107dc57600080fd5b50610829600480360360408110156107f357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116e5565b604051808215151515815260200191505060405180910390f35b34801561084f57600080fd5b5061089c6004803603604081101561086657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117f6565b604051808215151515815260200191505060405180910390f35b3480156108c257600080fd5b506108cb61183b565b6040518082815260200191505060405180910390f35b3480156108ed57600080fd5b506109306004803603602081101561090457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611882565b6040518082815260200191505060405180910390f35b34801561095257600080fd5b506109b56004803603604081101561096957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061189a565b6040518082815260200191505060405180910390f35b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a635780601f10610a3857610100808354040283529160200191610a63565b820191906000526020600020905b815481529060010190602001808311610a4657829003601f168201915b5050505050905090565b6000610a81610a7a611921565b8484611929565b6001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ae757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b2357600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b8057600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c60405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600554905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ca657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610ce257600080fd5b600081111515610cf157600080fd5b6000610cfc8361169c565b90506000610d0984611419565b9050828210151515610d1a57600080fd5b828110151515610d2957600080fd5b6000610d3e8484611baa90919063ffffffff16565b905080600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff167f872768977511ded17070d838c821f2459b45f6dff642dc0cd79be17d6f9c12fc826040518082815260200191505060405180910390a2610dff85600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686611bf4565b8473ffffffffffffffffffffffffffffffffffffffff167fbf7736aaf310cd7aa7cd231ba28117821189be3bc3d836e8afe017dfc629c665856040518082815260200191505060405180910390a25050505050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515610eb357600080fd5b610f0d600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610eff86611419565b611baa90919063ffffffff16565b8211151515610f1b57600080fd5b610f26848484611f7c565b90509392505050565b6000600260009054906101000a900460ff16905090565b6000610fef610f53611921565b84610fea8560046000610f64611921565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461209990919063ffffffff16565b611929565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561105557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561109157600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156110ee57600080fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f16e2accad9173abff57b295b56993ec5d86b3cbf791fea02f02a6616463754ea60405160405180910390a360006111bb82611419565b90506111c8828483611bf4565b505050565b60006111d7610f2f565b60ff16600a0a905090565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806112b55750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156112c057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156112fc57600080fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561135957600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60405160405180910390a380600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114be57600080fd5b6114c6610c40565b81111515156114d457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561151057600080fd5b80600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff167f872768977511ded17070d838c821f2459b45f6dff642dc0cd79be17d6f9c12fc826040518082815260200191505060405180910390a25050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156116925780601f1061166757610100808354040283529160200191611692565b820191906000526020600020905b81548152906001019060200180831161167557829003601f168201915b5050505050905090565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006117ec6116f2611921565b846117e785606060405190810160405280602581526020017f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7781526020017f207a65726f00000000000000000000000000000000000000000000000000000081525060046000611760611921565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121239092919063ffffffff16565b611929565b6001905092915050565b60006118013361169c565b61181c8361180e33611419565b611baa90919063ffffffff16565b1015151561182957600080fd5b61183383836121e5565b905092915050565b6000600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b600a6020528060005260406000206000915090505481565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156119f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f45524332303a20617070726f76652066726f6d20746865207a65726f2061646481526020017f726573730000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611abf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001807f45524332303a20617070726f766520746f20746865207a65726f20616464726581526020017f737300000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b6000611bec83836040805190810160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612123565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611cbf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f45524332303a207472616e736665722066726f6d20746865207a65726f20616481526020017f647265737300000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611d8a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001807f45524332303a207472616e7366657220746f20746865207a65726f206164647281526020017f657373000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b611e3a81606060405190810160405280602681526020017f45524332303a207472616e7366657220616d6f756e742065786365656473206281526020017f616c616e63650000000000000000000000000000000000000000000000000000815250600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121239092919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ecf81600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461209990919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000611f89848484611bf4565b61208e84611f95611921565b61208985606060405190810160405280602881526020017f45524332303a207472616e7366657220616d6f756e742065786365656473206181526020017f6c6c6f77616e6365000000000000000000000000000000000000000000000000815250600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061203f611921565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121239092919063ffffffff16565b611929565b600190509392505050565b6000808284019050838110151515612119576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600083831115829015156121d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561219757808201518184015260208101905061217c565b50505050905090810190601f1680156121c45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60006121f96121f2611921565b8484611bf4565b600190509291505056fea165627a7a7230582050b834ba9864ba8974810d4b9a8cfa7058fcbf772f7696bd2df077e60d8ad23f002900000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000081baeb07d2bba549d8e022b427b7876fba361fd9000000000000000000000000d89546ddfb55d9a96690f06995463826106cec2f000000000000000000000000fcf8ec507468f1a2f7d75c2996160deee7f415f200000000000000000000000000000000000000000000000000000000000000035741590000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b57686f2041726520596f75000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405260043610610133576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610138578063095ea7b3146101c857806313af40351461023b57806318160ddd1461028c5780631f035c7a146102b757806323b872dd14610312578063313ce567146103a557806339509351146103d65780636817031b146104495780636985cbac1461049a5780636e9960c3146104c5578063704b6c021461051c57806370a082311461056d57806378250b63146105d2578063893d20e81461062d5780638d928af81461068457806395d89b41146106db5780639fa77b201461076b578063a457c2d7146107d0578063a9059cbb14610843578063cd3293de146108b6578063d66bd524146108e1578063dd62ed3e14610946575b600080fd5b34801561014457600080fd5b5061014d6109cb565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018d578082015181840152602081019050610172565b50505050905090810190601f1680156101ba5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d457600080fd5b50610221600480360360408110156101eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a6d565b604051808215151515815260200191505060405180910390f35b34801561024757600080fd5b5061028a6004803603602081101561025e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a8b565b005b34801561029857600080fd5b506102a1610c40565b6040518082815260200191505060405180910390f35b3480156102c357600080fd5b50610310600480360360408110156102da57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c4a565b005b34801561031e57600080fd5b5061038b6004803603606081101561033557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e54565b604051808215151515815260200191505060405180910390f35b3480156103b157600080fd5b506103ba610f2f565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103e257600080fd5b5061042f600480360360408110156103f957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f46565b604051808215151515815260200191505060405180910390f35b34801561045557600080fd5b506104986004803603602081101561046c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ff9565b005b3480156104a657600080fd5b506104af6111cd565b6040518082815260200191505060405180910390f35b3480156104d157600080fd5b506104da6111e2565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561052857600080fd5b5061056b6004803603602081101561053f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061120c565b005b34801561057957600080fd5b506105bc6004803603602081101561059057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611419565b6040518082815260200191505060405180910390f35b3480156105de57600080fd5b5061062b600480360360408110156105f557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611462565b005b34801561063957600080fd5b506106426115a6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561069057600080fd5b506106996115d0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106e757600080fd5b506106f06115fa565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610730578082015181840152602081019050610715565b50505050905090810190601f16801561075d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561077757600080fd5b506107ba6004803603602081101561078e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061169c565b6040518082815260200191505060405180910390f35b3480156107dc57600080fd5b50610829600480360360408110156107f357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116e5565b604051808215151515815260200191505060405180910390f35b34801561084f57600080fd5b5061089c6004803603604081101561086657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117f6565b604051808215151515815260200191505060405180910390f35b3480156108c257600080fd5b506108cb61183b565b6040518082815260200191505060405180910390f35b3480156108ed57600080fd5b506109306004803603602081101561090457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611882565b6040518082815260200191505060405180910390f35b34801561095257600080fd5b506109b56004803603604081101561096957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061189a565b6040518082815260200191505060405180910390f35b606060008054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610a635780601f10610a3857610100808354040283529160200191610a63565b820191906000526020600020905b815481529060010190602001808311610a4657829003601f168201915b5050505050905090565b6000610a81610a7a611921565b8484611929565b6001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ae757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b2357600080fd5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515610b8057600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c60405160405180910390a380600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600554905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610ca657600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515610ce257600080fd5b600081111515610cf157600080fd5b6000610cfc8361169c565b90506000610d0984611419565b9050828210151515610d1a57600080fd5b828110151515610d2957600080fd5b6000610d3e8484611baa90919063ffffffff16565b905080600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff167f872768977511ded17070d838c821f2459b45f6dff642dc0cd79be17d6f9c12fc826040518082815260200191505060405180910390a2610dff85600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1686611bf4565b8473ffffffffffffffffffffffffffffffffffffffff167fbf7736aaf310cd7aa7cd231ba28117821189be3bc3d836e8afe017dfc629c665856040518082815260200191505060405180910390a25050505050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515610eb357600080fd5b610f0d600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610eff86611419565b611baa90919063ffffffff16565b8211151515610f1b57600080fd5b610f26848484611f7c565b90509392505050565b6000600260009054906101000a900460ff16905090565b6000610fef610f53611921565b84610fea8560046000610f64611921565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461209990919063ffffffff16565b611929565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561105557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561109157600080fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156110ee57600080fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f16e2accad9173abff57b295b56993ec5d86b3cbf791fea02f02a6616463754ea60405160405180910390a360006111bb82611419565b90506111c8828483611bf4565b505050565b60006111d7610f2f565b60ff16600a0a905090565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806112b55750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156112c057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156112fc57600080fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561135957600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60405160405180910390a380600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114be57600080fd5b6114c6610c40565b81111515156114d457600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415151561151057600080fd5b80600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff167f872768977511ded17070d838c821f2459b45f6dff642dc0cd79be17d6f9c12fc826040518082815260200191505060405180910390a25050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156116925780601f1061166757610100808354040283529160200191611692565b820191906000526020600020905b81548152906001019060200180831161167557829003601f168201915b5050505050905090565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006117ec6116f2611921565b846117e785606060405190810160405280602581526020017f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7781526020017f207a65726f00000000000000000000000000000000000000000000000000000081525060046000611760611921565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121239092919063ffffffff16565b611929565b6001905092915050565b60006118013361169c565b61181c8361180e33611419565b611baa90919063ffffffff16565b1015151561182957600080fd5b61183383836121e5565b905092915050565b6000600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905090565b600a6020528060005260406000206000915090505481565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156119f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f45524332303a20617070726f76652066726f6d20746865207a65726f2061646481526020017f726573730000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611abf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001807f45524332303a20617070726f766520746f20746865207a65726f20616464726581526020017f737300000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b6000611bec83836040805190810160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612123565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611cbf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f45524332303a207472616e736665722066726f6d20746865207a65726f20616481526020017f647265737300000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611d8a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001807f45524332303a207472616e7366657220746f20746865207a65726f206164647281526020017f657373000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b611e3a81606060405190810160405280602681526020017f45524332303a207472616e7366657220616d6f756e742065786365656473206281526020017f616c616e63650000000000000000000000000000000000000000000000000000815250600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121239092919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ecf81600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461209990919063ffffffff16565b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000611f89848484611bf4565b61208e84611f95611921565b61208985606060405190810160405280602881526020017f45524332303a207472616e7366657220616d6f756e742065786365656473206181526020017f6c6c6f77616e6365000000000000000000000000000000000000000000000000815250600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061203f611921565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121239092919063ffffffff16565b611929565b600190509392505050565b6000808284019050838110151515612119576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600083831115829015156121d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561219757808201518184015260208101905061217c565b50505050905090810190601f1680156121c45780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60006121f96121f2611921565b8484611bf4565b600190509291505056fea165627a7a7230582050b834ba9864ba8974810d4b9a8cfa7058fcbf772f7696bd2df077e60d8ad23f0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000081baeb07d2bba549d8e022b427b7876fba361fd9000000000000000000000000d89546ddfb55d9a96690f06995463826106cec2f000000000000000000000000fcf8ec507468f1a2f7d75c2996160deee7f415f200000000000000000000000000000000000000000000000000000000000000035741590000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b57686f2041726520596f75000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _symbol (string): WAY
Arg [1] : _name (string): Who Are You
Arg [2] : _owner (address): 0x81BaEb07d2bBa549d8e022B427B7876fba361FD9
Arg [3] : _admin (address): 0xd89546ddfB55D9a96690f06995463826106CeC2f
Arg [4] : _vault (address): 0xFCF8eC507468f1A2f7D75C2996160Deee7f415f2
-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 00000000000000000000000081baeb07d2bba549d8e022b427b7876fba361fd9
Arg [3] : 000000000000000000000000d89546ddfb55d9a96690f06995463826106cec2f
Arg [4] : 000000000000000000000000fcf8ec507468f1a2f7d75c2996160deee7f415f2
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [6] : 5741590000000000000000000000000000000000000000000000000000000000
Arg [7] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [8] : 57686f2041726520596f75000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
19636:7789:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3592:83;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3592:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;3592:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13790:152;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13790:152:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13790:152:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24697:219;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24697:219:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;24697:219:0;;;;;;;;;;;;;;;;;;;;;;12811:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12811:91:0;;;;;;;;;;;;;;;;;;;;;;;25551:605;;8:9:-1;5:2;;;30:1;27;20:12;5:2;25551:605:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;25551:605:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26423:253;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26423:253:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26423:253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4444:83;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4444:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;15127:210;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15127:210:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15127:210:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24176:418;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24176:418:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;24176:418:0;;;;;;;;;;;;;;;;;;;;;;26951:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26951:98:0;;;;;;;;;;;;;;;;;;;;;;;26862:81;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26862:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;25019:226;;8:9:-1;5:2;;;30:1;27;20:12;5:2;25019:226:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;25019:226:0;;;;;;;;;;;;;;;;;;;;;;12965:110;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12965:110:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12965:110:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23255:257;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23255:257:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23255:257:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26684:81;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26684:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;26773;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26773:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;3794:87;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3794:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;3794:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27121:117;;8:9:-1;5:2;;;30:1;27;20:12;5:2;27121:117:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;27121:117:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15840:261;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15840:261:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15840:261:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23683:230;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23683:230:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;23683:230:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27321:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;27321:101:0;;;;;;;;;;;;;;;;;;;;;;;21156:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;21156:40:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;21156:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13509:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13509:134:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13509:134:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3592:83;3629:13;3662:5;3655:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3592:83;:::o;13790:152::-;13856:4;13873:39;13882:12;:10;:12::i;:::-;13896:7;13905:6;13873:8;:39::i;:::-;13930:4;13923:11;;13790:152;;;;:::o;24697:219::-;21491:5;;;;;;;;;;;21477:19;;:10;:19;;;21469:28;;;;;;;;24791:1;24770:23;;:9;:23;;;;24762:32;;;;;;;;24826:5;;;;;;;;;;;24813:18;;:9;:18;;;;24805:27;;;;;;;;24870:9;24850:30;;24863:5;;;;;;;;;;;24850:30;;;;;;;;;;;;24899:9;24891:5;;:17;;;;;;;;;;;;;;;;;;24697:219;:::o;12811:91::-;12855:7;12882:12;;12875:19;;12811:91;:::o;25551:605::-;21645:5;;;;;;;;;;;21631:19;;:10;:19;;;21623:28;;;;;;;;25649:1;25632:19;;:5;:19;;;;25624:28;;;;;;;;25681:1;25671:7;:11;25663:20;;;;;;;;25696:19;25718:16;25728:5;25718:9;:16::i;:::-;25696:38;;25745:19;25767:16;25777:5;25767:9;:16::i;:::-;25745:38;;25822:7;25804:14;:25;;25796:34;;;;;;;;25867:7;25849:14;:25;;25841:34;;;;;;;;25888:15;25906:27;25925:7;25906:14;:18;;:27;;;;:::i;:::-;25888:45;;25962:10;25944:8;:15;25953:5;25944:15;;;;;;;;;;;;;;;:28;;;;26003:5;25988:33;;;26010:10;25988:33;;;;;;;;;;;;;;;;;;26076:32;26086:5;26093;;;;;;;;;;;26100:7;26076:9;:32::i;:::-;26133:5;26124:24;;;26140:7;26124:24;;;;;;;;;;;;;;;;;;21662:1;;;25551:605;;:::o;26423:253::-;26505:4;26539:5;;;;;;;;;;;26530:14;;:5;:14;;;;26522:23;;;;;;;;26574:37;26595:8;:15;26604:5;26595:15;;;;;;;;;;;;;;;;26574:16;26584:5;26574:9;:16::i;:::-;:20;;:37;;;;:::i;:::-;26564:6;:47;;26556:56;;;;;;;;26630:38;26649:5;26656:3;26661:6;26630:18;:38::i;:::-;26623:45;;26423:253;;;;;:::o;4444:83::-;4485:5;4510:9;;;;;;;;;;;4503:16;;4444:83;:::o;15127:210::-;15207:4;15224:83;15233:12;:10;:12::i;:::-;15247:7;15256:50;15295:10;15256:11;:25;15268:12;:10;:12::i;:::-;15256:25;;;;;;;;;;;;;;;:34;15282:7;15256:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;15224:8;:83::i;:::-;15325:4;15318:11;;15127:210;;;;:::o;24176:418::-;21337:5;;;;;;;;;;;21323:19;;:10;:19;;;21315:28;;;;;;;;24270:1;24249:23;;:9;:23;;;;24241:32;;;;;;;;24305:5;;;;;;;;;;;24292:18;;:9;:18;;;;24284:27;;;;;;;;24324:17;24344:5;;;;;;;;;;;24324:25;;24403:9;24395:5;;:17;;;;;;;;;;;;;;;;;;24452:9;24428:34;;24441:9;24428:34;;;;;;;;;;;;24502:11;24516:20;24526:9;24516;:20::i;:::-;24502:34;;24547:39;24557:9;24568;24579:6;24547:9;:39::i;:::-;21354:1;;24176:418;:::o;26951:98::-;26993:4;27029:10;:8;:10::i;:::-;27024:16;;27018:2;:22;27010:31;;26951:98;:::o;26862:81::-;26903:7;26930:5;;;;;;;;;;;26923:12;;26862:81;:::o;25019:226::-;21806:5;;;;;;;;;;;21792:19;;:10;:19;;;:42;;;;21829:5;;;;;;;;;;;21815:19;;:10;:19;;;21792:42;21784:51;;;;;;;;25120:1;25099:23;;:9;:23;;;;25091:32;;;;;;;;25155:5;;;;;;;;;;;25142:18;;:9;:18;;;;25134:27;;;;;;;;25199:9;25179:30;;25192:5;;;;;;;;;;;25179:30;;;;;;;;;;;;25228:9;25220:5;;:17;;;;;;;;;;;;;;;;;;25019:226;:::o;12965:110::-;13022:7;13049:9;:18;13059:7;13049:18;;;;;;;;;;;;;;;;13042:25;;12965:110;;;:::o;23255:257::-;21645:5;;;;;;;;;;;21631:19;;:10;:19;;;21623:28;;;;;;;;23356:13;:11;:13::i;:::-;23344:8;:25;;23336:34;;;;;;;;23409:1;23389:22;;:8;:22;;;;23381:31;;;;;;;;23446:8;23425;:18;23434:8;23425:18;;;;;;;;;;;;;;;:29;;;;23485:8;23470:34;;;23495:8;23470:34;;;;;;;;;;;;;;;;;;23255:257;;:::o;26684:81::-;26725:7;26752:5;;;;;;;;;;;26745:12;;26684:81;:::o;26773:::-;26814:7;26841:5;;;;;;;;;;;26834:12;;26773:81;:::o;3794:87::-;3833:13;3866:7;3859:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3794:87;:::o;27121:117::-;27179:13;27212:8;:18;27221:8;27212:18;;;;;;;;;;;;;;;;27205:25;;27121:117;;;:::o;15840:261::-;15925:4;15942:129;15951:12;:10;:12::i;:::-;15965:7;15974:96;16013:15;15974:96;;;;;;;;;;;;;;;;;;;;;;;:11;:25;15986:12;:10;:12::i;:::-;15974:25;;;;;;;;;;;;;;;:34;16000:7;15974:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;15942:8;:129::i;:::-;16089:4;16082:11;;15840:261;;;;:::o;23683:230::-;23746:4;23838:21;23848:10;23838:9;:21::i;:::-;23801:33;23827:6;23801:21;23811:10;23801:9;:21::i;:::-;:25;;:33;;;;:::i;:::-;:58;;23793:67;;;;;;;;23878:27;23893:3;23898:6;23878:14;:27::i;:::-;23871:34;;23683:230;;;;:::o;27321:101::-;27361:13;27394:8;:20;27403:10;27394:20;;;;;;;;;;;;;;;;27387:27;;27321:101;:::o;21156:40::-;;;;;;;;;;;;;;;;;:::o;13509:134::-;13581:7;13608:11;:18;13620:5;13608:18;;;;;;;;;;;;;;;:27;13627:7;13608:27;;;;;;;;;;;;;;;;13601:34;;13509:134;;;;:::o;5392:98::-;5437:15;5472:10;5465:17;;5392:98;:::o;18771:338::-;18882:1;18865:19;;:5;:19;;;;18857:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18963:1;18944:21;;:7;:21;;;;18936:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19047:6;19017:11;:18;19029:5;19017:18;;;;;;;;;;;;;;;:27;19036:7;19017:27;;;;;;;;;;;;;;;:36;;;;19085:7;19069:32;;19078:5;19069:32;;;19094:6;19069:32;;;;;;;;;;;;;;;;;;18771:338;;;:::o;7099:136::-;7157:7;7184:43;7188:1;7191;7184:43;;;;;;;;;;;;;;;;;;:3;:43::i;:::-;7177:50;;7099:136;;;;:::o;16591:471::-;16707:1;16689:20;;:6;:20;;;;16681:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16791:1;16770:23;;:9;:23;;;;16762:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16866;16888:6;16866:71;;;;;;;;;;;;;;;;;;;;;;;:9;:17;16876:6;16866:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;16846:9;:17;16856:6;16846:17;;;;;;;;;;;;;;;:91;;;;16971:32;16996:6;16971:9;:20;16981:9;16971:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;16948:9;:20;16958:9;16948:20;;;;;;;;;;;;;;;:55;;;;17036:9;17019:35;;17028:6;17019:35;;;17047:6;17019:35;;;;;;;;;;;;;;;;;;16591:471;;;:::o;14414:304::-;14503:4;14520:36;14530:6;14538:9;14549:6;14520:9;:36::i;:::-;14567:121;14576:6;14584:12;:10;:12::i;:::-;14598:89;14636:6;14598:89;;;;;;;;;;;;;;;;;;;;;;;:11;:19;14610:6;14598:19;;;;;;;;;;;;;;;:33;14618:12;:10;:12::i;:::-;14598:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;14567:8;:121::i;:::-;14706:4;14699:11;;14414:304;;;;;:::o;6643:181::-;6701:7;6721:9;6737:1;6733;:5;6721:17;;6762:1;6757;:6;;6749:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6815:1;6808:8;;;6643:181;;;;:::o;7572:192::-;7658:7;7691:1;7686;:6;;7694:12;7678:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;7678:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7718:9;7734:1;7730;:5;7718:17;;7755:1;7748:8;;;7572:192;;;;;:::o;13288:158::-;13357:4;13374:42;13384:12;:10;:12::i;:::-;13398:9;13409:6;13374:9;:42::i;:::-;13434:4;13427:11;;13288:158;;;;:::o
Swarm Source
bzzr://50b834ba9864ba8974810d4b9a8cfa7058fcbf772f7696bd2df077e60d8ad23f
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.