ERC-20
Overview
Max Total Supply
100,000,000 GCT
Holders
5,200
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
GenesisCryptoTechnology
Compiler Version
v0.4.23+commit.124ca40d
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-05-17 */ /** * Source Code first verified at https://etherscan.io on Sunday, May 12, 2019 (UTC) */ /** * Source Code first verified at https://etherscan.io on Friday, April 20, 2018 (UTC) */ pragma solidity 0.4.23; // // This source file is part of the current-contracts open source project // Copyright 2018 Zerion LLC // Licensed under Apache License v2.0 // // @title Abstract ERC20 token interface contract AbstractToken { function balanceOf(address owner) public view returns (uint256 balance); function transfer(address to, uint256 value) public returns (bool success); function transferFrom(address from, address to, uint256 value) public returns (bool success); function approve(address spender, uint256 value) public returns (bool success); function allowance(address owner, address spender) public view returns (uint256 remaining); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } contract Owned { address public owner = msg.sender; address public potentialOwner; modifier onlyOwner { require(msg.sender == owner); _; } modifier onlyPotentialOwner { require(msg.sender == potentialOwner); _; } event NewOwner(address old, address current); event NewPotentialOwner(address old, address potential); function setOwner(address _new) public onlyOwner { emit NewPotentialOwner(owner, _new); potentialOwner = _new; } function confirmOwnership() public onlyPotentialOwner { emit NewOwner(owner, potentialOwner); owner = potentialOwner; potentialOwner = address(0); } } // @title SafeMath contract - Math operations with safety checks. // @author OpenZeppelin: https://github.com/OpenZeppelin/zeppelin-solidity/blob/master/contracts/math/SafeMath.sol contract SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; assert(c / a == b); return c; } /** * @dev Integer division of two numbers, truncating the quotient. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } /** * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; assert(c >= a); return c; } /** * @dev Raises `a` to the `b`th power, throws on overflow. */ function pow(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a ** b; assert(c >= a); return c; } } /// Implements ERC 20 Token standard: https://github.com/ethereum/EIPs/issues/20 contract StandardToken is AbstractToken, Owned, SafeMath { /* * Data structures */ mapping (address => uint256) internal balances; mapping (address => mapping (address => uint256)) internal allowed; uint256 public totalSupply; /* * Read and write storage functions */ /// @dev Transfers sender's tokens to a given address. Returns success. /// @param _to Address of token receiver. /// @param _value Number of tokens to transfer. function transfer(address _to, uint256 _value) public returns (bool success) { return _transfer(msg.sender, _to, _value); } /// @dev Allows allowed third party to transfer tokens from one address to another. Returns success. /// @param _from Address from where tokens are withdrawn. /// @param _to Address to where tokens are sent. /// @param _value Number of tokens to transfer. function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) { require(allowed[_from][msg.sender] >= _value); allowed[_from][msg.sender] -= _value; return _transfer(_from, _to, _value); } /// @dev Returns number of tokens owned by given address. /// @param _owner Address of token owner. function balanceOf(address _owner) public view returns (uint256 balance) { return balances[_owner]; } /// @dev Sets approved amount of tokens for spender. Returns success. /// @param _spender Address of allowed account. /// @param _value Number of approved tokens. function approve(address _spender, uint256 _value) public returns (bool success) { allowed[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } /* * Read storage functions */ /// @dev Returns number of allowed tokens for given address. /// @param _owner Address of token owner. /// @param _spender Address of token spender. function allowance(address _owner, address _spender) public view returns (uint256 remaining) { return allowed[_owner][_spender]; } /** * @dev Private transfer, can only be called by this contract. * @param _from The address of the sender. * @param _to The address of the recipient. * @param _value The amount to send. * @return success True if the transfer was successful, or throws. */ function _transfer(address _from, address _to, uint256 _value) private returns (bool success) { require(_to != address(0)); require(balances[_from] >= _value); balances[_from] -= _value; balances[_to] = add(balances[_to], _value); emit Transfer(_from, _to, _value); return true; } } /// @title Token contract - Implements Standard ERC20 with additional features. /// @author Zerion - <[email protected]> contract Token is StandardToken { // Time of the contract creation uint256 public creationTime; function Token() public { /* solium-disable-next-line security/no-block-members */ creationTime = now; } /// @dev Owner can transfer out any accidentally sent ERC20 tokens function transferERC20Token(AbstractToken _token, address _to, uint256 _value) public onlyOwner returns (bool success) { require(_token.balanceOf(address(this)) >= _value); uint256 receiverBalance = _token.balanceOf(_to); require(_token.transfer(_to, _value)); uint256 receiverNewBalance = _token.balanceOf(_to); assert(receiverNewBalance == add(receiverBalance, _value)); return true; } /// @dev Increases approved amount of tokens for spender. Returns success. function increaseApproval(address _spender, uint256 _value) public returns (bool success) { allowed[msg.sender][_spender] = add(allowed[msg.sender][_spender], _value); emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } /// @dev Decreases approved amount of tokens for spender. Returns success. function decreaseApproval(address _spender, uint256 _value) public returns (bool success) { uint256 oldValue = allowed[msg.sender][_spender]; if (_value > oldValue) { allowed[msg.sender][_spender] = 0; } else { allowed[msg.sender][_spender] = sub(oldValue, _value); } emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); return true; } } // @title Token contract - Implements Standard ERC20 Token for GCT project. /// @author Zerion - <[email protected]> contract GenesisCryptoTechnology is Token { /// TOKEN META DATA string constant public name = 'GenesisCryptoTechnology'; string constant public symbol = 'GCT'; uint8 constant public decimals = 8; uint256 public exchangeRate = 5880; /// ALOCATIONS // To calculate vesting periods we assume that 1 month is always equal to 30 days /*** Initial Investors' tokens ***/ // 600,000,00 (60%) tokens are distributed among initial investors // These tokens will be distributed without vesting address public investorsAllocation = address(0x11195539543Ec8E6fe7179112E42fe1d3c434Ed4); uint256 public investorsTotal = 60000000e8; /*** Overdraft Reserves ***/ // 200,000,00 (20%) tokens will be eventually available for overdraft // These tokens will be distributed monthly with a 6 month cliff within a year // 41,666,666 tokens will be unlocked every month after the cliff // 4 tokens will be unlocked without vesting to ensure that total amount sums up to 250,000,000. address public overdraftAllocation = address(0xa218A1Ae3D584d02598C3c5Aa675E547bBeeE0E7); uint256 public overdraftTotal = 20000000e8; uint256 public overdraftPeriodAmount = 41666666e8; uint256 public overdraftUnvested = 4e8; uint256 public overdraftCliff = 5 * 30 days; uint256 public overdraftPeriodLength = 810 days; uint8 public overdraftPeriodsNumber = 6; /*** Tokens reserved for Founders and Team ***/ // 150,000,00 (15%) tokens will be eventually available for the team // These tokens will be distributed every 3 month without a cliff within 4 years // 7,031,250 tokens will be unlocked every 3 month address public teamAllocation = address(0x4ee4562cc0eeC0381a974efffe768ce2017632Ad); uint256 public teamTotal = 15000000e8; uint256 public teamPeriodAmount = 7031250e8; uint256 public teamUnvested = 0; uint256 public teamCliff = 0; uint256 public teamPeriodLength = 3 * 810 days; uint8 public teamPeriodsNumber = 16; /*** Tokens reserved for Community Building and Airdrop Campaigns ***/ // 40,000,00 (4%) tokens will be eventually available for the community // 10,000,002 tokens will be available instantly without vesting // 49,999,998 tokens will be distributed every 3 month without a cliff within 18 months // 8,333,333 tokens will be unlocked every 3 month address public communityAllocation = address(0x99559c417313e61aE699FD55B9A2FD533e97dAB1); uint256 public communityTotal = 4000000e8; uint256 public communityPeriodAmount = 8333333e8; uint256 public communityUnvested = 10000002e8; uint256 public communityCliff = 0; uint256 public communityPeriodLength = 3 * 810 days; uint8 public communityPeriodsNumber = 6; /*** Tokens reserved for Advisors, Legal and PR ***/ // 10,000,00 (1%) tokens will be eventually available for advisers // 25,000,008 tokens will be available instantly without vesting // 27 499 992 tokens will be distributed monthly without a cliff within 12 months // 2,291,666 tokens will be unlocked every month address public advisersAllocation = address(0x3E553bB7c931DC752E9CDd7Acb52e6F0b2bEB35E); uint256 public advisersTotal = 1000000e8; uint256 public advisersPeriodAmount = 2291666e8; uint256 public advisersUnvested = 25000008e8; uint256 public advisersCliff = 0; uint256 public advisersPeriodLength = 1 days; uint8 public advisersPeriodsNumber = 12; /// CONSTRUCTOR function GenesisCryptoTechnology() public { // Overall, 1,000,000,00 tokens exist totalSupply = 100000000e8; balances[investorsAllocation] = investorsTotal; balances[overdraftAllocation] = overdraftTotal; balances[teamAllocation] = teamTotal; balances[communityAllocation] = communityTotal; balances[advisersAllocation] = advisersTotal; // Unlock some tokens without vesting allowed[investorsAllocation][msg.sender] = investorsTotal; allowed[overdraftAllocation][msg.sender] = overdraftUnvested; allowed[communityAllocation][msg.sender] = communityUnvested; allowed[advisersAllocation][msg.sender] = advisersUnvested; } /// DISTRIBUTION function distributeInvestorsTokens(address _to, uint256 _amountWithDecimals) public onlyOwner { require(transferFrom(investorsAllocation, _to, _amountWithDecimals)); } /// VESTING function withdrawOverdraftTokens(address _to, uint256 _amountWithDecimals) public onlyOwner { allowed[overdraftAllocation][msg.sender] = allowance(overdraftAllocation, msg.sender); require(transferFrom(overdraftAllocation, _to, _amountWithDecimals)); } function withdrawTeamTokens(address _to, uint256 _amountWithDecimals) public onlyOwner { allowed[teamAllocation][msg.sender] = allowance(teamAllocation, msg.sender); require(transferFrom(teamAllocation, _to, _amountWithDecimals)); } function withdrawCommunityTokens(address _to, uint256 _amountWithDecimals) public onlyOwner { allowed[communityAllocation][msg.sender] = allowance(communityAllocation, msg.sender); require(transferFrom(communityAllocation, _to, _amountWithDecimals)); } function withdrawAdvisersTokens(address _to, uint256 _amountWithDecimals) public onlyOwner { allowed[advisersAllocation][msg.sender] = allowance(advisersAllocation, msg.sender); require(transferFrom(advisersAllocation, _to, _amountWithDecimals)); } /// @dev Overrides StandardToken.sol function function allowance(address _owner, address _spender) public view returns (uint256 remaining) { if (_spender != owner) { return allowed[_owner][_spender]; } uint256 unlockedTokens; uint256 spentTokens; if (_owner == overdraftAllocation) { unlockedTokens = _calculateUnlockedTokens( overdraftCliff, overdraftPeriodLength, overdraftPeriodAmount, overdraftPeriodsNumber, overdraftUnvested ); spentTokens = sub(overdraftTotal, balanceOf(overdraftAllocation)); } else if (_owner == teamAllocation) { unlockedTokens = _calculateUnlockedTokens( teamCliff, teamPeriodLength, teamPeriodAmount, teamPeriodsNumber, teamUnvested ); spentTokens = sub(teamTotal, balanceOf(teamAllocation)); } else if (_owner == communityAllocation) { unlockedTokens = _calculateUnlockedTokens( communityCliff, communityPeriodLength, communityPeriodAmount, communityPeriodsNumber, communityUnvested ); spentTokens = sub(communityTotal, balanceOf(communityAllocation)); } else if (_owner == advisersAllocation) { unlockedTokens = _calculateUnlockedTokens( advisersCliff, advisersPeriodLength, advisersPeriodAmount, advisersPeriodsNumber, advisersUnvested ); spentTokens = sub(advisersTotal, balanceOf(advisersAllocation)); } else { return allowed[_owner][_spender]; } return sub(unlockedTokens, spentTokens); } /// @dev Overrides Owned.sol function function confirmOwnership() public onlyPotentialOwner { // Forbid the old owner to distribute investors' tokens allowed[investorsAllocation][owner] = 0; // Allow the new owner to distribute investors' tokens allowed[investorsAllocation][msg.sender] = balanceOf(investorsAllocation); // Forbid the old owner to withdraw any tokens from the reserves allowed[overdraftAllocation][owner] = 0; allowed[teamAllocation][owner] = 0; allowed[communityAllocation][owner] = 0; allowed[advisersAllocation][owner] = 0; super.confirmOwnership(); } function _calculateUnlockedTokens( uint256 _cliff, uint256 _periodLength, uint256 _periodAmount, uint8 _periodsNumber, uint256 _unvestedAmount ) private view returns (uint256) { /* solium-disable-next-line security/no-block-members */ if (now < add(creationTime, _cliff)) { return _unvestedAmount; } /* solium-disable-next-line security/no-block-members */ uint256 periods = div(sub(now, add(creationTime, _cliff)), _periodLength); periods = periods > _periodsNumber ? _periodsNumber : periods; return add(_unvestedAmount, mul(periods, _periodAmount)); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"overdraftAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_new","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"advisersPeriodLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"investorsTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"advisersCliff","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamCliff","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"exchangeRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"investorsAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"advisersPeriodsNumber","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amountWithDecimals","type":"uint256"}],"name":"withdrawAdvisersTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amountWithDecimals","type":"uint256"}],"name":"withdrawTeamTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"overdraftCliff","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"communityUnvested","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"overdraftPeriodLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"advisersPeriodAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"advisersTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amountWithDecimals","type":"uint256"}],"name":"distributeInvestorsTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"communityPeriodLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamUnvested","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"advisersAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"teamAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamPeriodAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"potentialOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"advisersUnvested","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"overdraftPeriodAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"communityPeriodAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amountWithDecimals","type":"uint256"}],"name":"withdrawOverdraftTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"communityCliff","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"overdraftUnvested","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"teamPeriodsNumber","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"overdraftPeriodsNumber","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"overdraftTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"teamPeriodLength","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"communityAllocation","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"confirmOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"creationTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"communityPeriodsNumber","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"communityTotal","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amountWithDecimals","type":"uint256"}],"name":"withdrawCommunityTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"old","type":"address"},{"indexed":false,"name":"current","type":"address"}],"name":"NewOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"old","type":"address"},{"indexed":false,"name":"potential","type":"address"}],"name":"NewPotentialOwner","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
6080604052336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506116f86006557311195539543ec8e6fe7179112e42fe1d3c434ed4600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550661550f7dca7000060085573a218a1ae3d584d02598c3c5aa675e547bbeee0e7600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555066071afd498d0000600a55660ecd8faa972a00600b556317d78400600c5562c5c100600d5563042bdf00600e556006600f60006101000a81548160ff021916908360ff160217905550734ee4562cc0eec0381a974efffe768ce2017632ad600f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506605543df729c00060105566027f7d0bdb920060115560006012556000601355630c839d006014556010601560006101000a81548160ff021916908360ff1602179055507399559c417313e61ae699fd55b9a2fd533e97dab1601560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555066016bcc41e900006016556602f5e98753750060175566038d7eb0b242006018556000601955630c839d00601a556006601b60006101000a81548160ff021916908360ff160217905550733e553bb7c931dc752e9cdd7acb52e6f0b2beb35e601b60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550655af3107a4000601c5565d06d01c99200601d556608e1bccb9f4800601e556000601f5562015180602055600c602160006101000a81548160ff021916908360ff16021790555034801561032857600080fd5b5042600581905550662386f26fc1000060048190555060085460026000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a5460026000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060105460026000600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060165460026000601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601c5460026000601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060085460036000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600c5460036000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060185460036000601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601e5460036000601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061335d806107e96000396000f30060806040526004361061027d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806304b92b7d1461028257806306fdde03146102d9578063075bf77214610369578063095ea7b31461039457806313af4035146103f957806317031f9c1461043c57806318160ddd146104675780631cb252fe14610492578063205e0e26146104bd57806323b872dd146104e8578063313ce5671461056d5780633879c9f31461059e5780633ba0b9a9146105c95780633e4b2570146105f4578063417d5fb41461064b5780634a09d3cf1461067c5780634ad1cbad146106c95780634ce02a33146107165780634d16dd411461074157806351eb5e931461076c5780635ad1854b146107975780635b53d291146107c25780635e8f6597146107ed5780636078b87e1461083a57806362b96a1814610865578063660ef82d1461089057806366188463146108e75780636816521a1461094c57806370a08231146109a357806375766294146109fa5780637762df2514610a2557806377e5d8f814610a7c5780638c3c00aa14610aa75780638da5cb5b14610ad257806392940bf914610b295780639333cf5e14610bae57806395d89b4114610bd95780639649725814610c69578063a01729a414610cb6578063a84f3e5a14610ce1578063a9059cbb14610d0c578063abadeb0614610d71578063af44e48714610da2578063c14e61ba14610dd3578063c31051fe14610dfe578063d53b4ab414610e29578063d5d1e77014610e80578063d73dd62314610e97578063d8270dce14610efc578063d98b094c14610f27578063dd62ed3e14610f58578063f05ad9f314610fcf578063f854d74c14610ffa575b600080fd5b34801561028e57600080fd5b50610297611047565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102e557600080fd5b506102ee61106d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561032e578082015181840152602081019050610313565b50505050905090810190601f16801561035b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561037557600080fd5b5061037e6110a6565b6040518082815260200191505060405180910390f35b3480156103a057600080fd5b506103df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110ac565b604051808215151515815260200191505060405180910390f35b34801561040557600080fd5b5061043a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119e565b005b34801561044857600080fd5b506104516112f5565b6040518082815260200191505060405180910390f35b34801561047357600080fd5b5061047c6112fb565b6040518082815260200191505060405180910390f35b34801561049e57600080fd5b506104a7611301565b6040518082815260200191505060405180910390f35b3480156104c957600080fd5b506104d2611307565b6040518082815260200191505060405180910390f35b3480156104f457600080fd5b50610553600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061130d565b604051808215151515815260200191505060405180910390f35b34801561057957600080fd5b50610582611438565b604051808260ff1660ff16815260200191505060405180910390f35b3480156105aa57600080fd5b506105b361143d565b6040518082815260200191505060405180910390f35b3480156105d557600080fd5b506105de611443565b6040518082815260200191505060405180910390f35b34801561060057600080fd5b50610609611449565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561065757600080fd5b5061066061146f565b604051808260ff1660ff16815260200191505060405180910390f35b34801561068857600080fd5b506106c7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611482565b005b3480156106d557600080fd5b50610714600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115e7565b005b34801561072257600080fd5b5061072b61174c565b6040518082815260200191505060405180910390f35b34801561074d57600080fd5b50610756611752565b6040518082815260200191505060405180910390f35b34801561077857600080fd5b50610781611758565b6040518082815260200191505060405180910390f35b3480156107a357600080fd5b506107ac61175e565b6040518082815260200191505060405180910390f35b3480156107ce57600080fd5b506107d7611764565b6040518082815260200191505060405180910390f35b3480156107f957600080fd5b50610838600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061176a565b005b34801561084657600080fd5b5061084f611801565b6040518082815260200191505060405180910390f35b34801561087157600080fd5b5061087a611807565b6040518082815260200191505060405180910390f35b34801561089c57600080fd5b506108a561180d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156108f357600080fd5b50610932600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611833565b604051808215151515815260200191505060405180910390f35b34801561095857600080fd5b50610961611abb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109af57600080fd5b506109e4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ae1565b6040518082815260200191505060405180910390f35b348015610a0657600080fd5b50610a0f611b2a565b6040518082815260200191505060405180910390f35b348015610a3157600080fd5b50610a3a611b30565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a8857600080fd5b50610a91611b56565b6040518082815260200191505060405180910390f35b348015610ab357600080fd5b50610abc611b5c565b6040518082815260200191505060405180910390f35b348015610ade57600080fd5b50610ae7611b62565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b3557600080fd5b50610b94600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b87565b604051808215151515815260200191505060405180910390f35b348015610bba57600080fd5b50610bc3611f85565b6040518082815260200191505060405180910390f35b348015610be557600080fd5b50610bee611f8b565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c2e578082015181840152602081019050610c13565b50505050905090810190601f168015610c5b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c7557600080fd5b50610cb4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611fc4565b005b348015610cc257600080fd5b50610ccb612129565b6040518082815260200191505060405180910390f35b348015610ced57600080fd5b50610cf661212f565b6040518082815260200191505060405180910390f35b348015610d1857600080fd5b50610d57600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612135565b604051808215151515815260200191505060405180910390f35b348015610d7d57600080fd5b50610d8661214a565b604051808260ff1660ff16815260200191505060405180910390f35b348015610dae57600080fd5b50610db761215d565b604051808260ff1660ff16815260200191505060405180910390f35b348015610ddf57600080fd5b50610de8612170565b6040518082815260200191505060405180910390f35b348015610e0a57600080fd5b50610e13612176565b6040518082815260200191505060405180910390f35b348015610e3557600080fd5b50610e3e61217c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610e8c57600080fd5b50610e956121a2565b005b348015610ea357600080fd5b50610ee2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506126ae565b604051808215151515815260200191505060405180910390f35b348015610f0857600080fd5b50610f116128a1565b6040518082815260200191505060405180910390f35b348015610f3357600080fd5b50610f3c6128a7565b604051808260ff1660ff16815260200191505060405180910390f35b348015610f6457600080fd5b50610fb9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506128ba565b6040518082815260200191505060405180910390f35b348015610fdb57600080fd5b50610fe4612d19565b6040518082815260200191505060405180910390f35b34801561100657600080fd5b50611045600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612d1f565b005b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280601781526020017f47656e6573697343727970746f546563686e6f6c6f677900000000000000000081525081565b60105481565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f957600080fd5b7f8a95addc59dddee94a894365b5c66c6c2473b7084d3fd1df9f503db4a2cd6dcc6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60205481565b60045481565b60085481565b601f5481565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561139a57600080fd5b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555061142f848484612e84565b90509392505050565b600881565b60135481565b60065481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b602160009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114dd57600080fd5b611509601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115d8601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b15156115e357600080fd5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561164257600080fd5b61166e600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061173d600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b151561174857600080fd5b5050565b600d5481565b60185481565b600e5481565b601d5481565b601c5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117c557600080fd5b6117f2600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b15156117fd57600080fd5b5050565b601a5481565b60125481565b601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611944576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119cf565b61194e8184613058565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60115481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601e5481565b600b5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611be757600080fd5b838673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611c8357600080fd5b505af1158015611c97573d6000803e3d6000fd5b505050506040513d6020811015611cad57600080fd5b810190808051906020019092919050505010151515611ccb57600080fd5b8573ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611d6657600080fd5b505af1158015611d7a573d6000803e3d6000fd5b505050506040513d6020811015611d9057600080fd5b810190808051906020019092919050505091508573ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611e4657600080fd5b505af1158015611e5a573d6000803e3d6000fd5b505050506040513d6020811015611e7057600080fd5b81019080805190602001909291905050501515611e8c57600080fd5b8573ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611f2757600080fd5b505af1158015611f3b573d6000803e3d6000fd5b505050506040513d6020811015611f5157600080fd5b81019080805190602001909291905050509050611f6e8285613071565b81141515611f7857fe5b6001925050509392505050565b60175481565b6040805190810160405280600381526020017f474354000000000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561201f57600080fd5b61204b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061211a600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b151561212557600080fd5b5050565b60195481565b600c5481565b6000612142338484612e84565b905092915050565b601560009054906101000a900460ff1681565b600f60009054906101000a900460ff1681565b600a5481565b60145481565b601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156121fe57600080fd5b600060036000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ee600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b60036000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126ac61308f565b565b6000612736600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483613071565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b60055481565b601b60009054906101000a900460ff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151561299957600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549250612d11565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612a5257612a13600d54600e54600b54600f60009054906101000a900460ff16600c5461326b565b9150612a4b600a54612a46600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d04565b600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612b0b57612acc601354601454601154601560009054906101000a900460ff1660125461326b565b9150612b04601054612aff600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d03565b601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612bc457612b85601954601a54601754601b60009054906101000a900460ff1660185461326b565b9150612bbd601654612bb8601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d02565b601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612c7d57612c3e601f54602054601d54602160009054906101000a900460ff16601e5461326b565b9150612c76601c54612c71601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d01565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549250612d11565b5b5b5b612d0e8282613058565b92505b505092915050565b60165481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d7a57600080fd5b612da6601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612e75601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b1515612e8057600080fd5b5050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612ec157600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612f0f57600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550612fa5600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483613071565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600082821115151561306657fe5b818303905092915050565b600080828401905083811015151561308557fe5b8091505092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156130eb57600080fd5b7f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b23646000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008061327a60055488613071565b421015613289578291506132d6565b6132a76132a14261329c6005548b613071565b613058565b876132e0565b90508360ff1681116132b957806132be565b8360ff165b90506132d3836132ce83886132f6565b613071565b91505b5095945050505050565b600081838115156132ed57fe5b04905092915050565b600080600084141561330b576000915061332a565b828402905082848281151561331c57fe5b0414151561332657fe5b8091505b50929150505600a165627a7a72305820576c16547aa07f849b87a48f764881ae0ec1b0503ebe20ae4d363c47a159c6880029
Deployed Bytecode
0x60806040526004361061027d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806304b92b7d1461028257806306fdde03146102d9578063075bf77214610369578063095ea7b31461039457806313af4035146103f957806317031f9c1461043c57806318160ddd146104675780631cb252fe14610492578063205e0e26146104bd57806323b872dd146104e8578063313ce5671461056d5780633879c9f31461059e5780633ba0b9a9146105c95780633e4b2570146105f4578063417d5fb41461064b5780634a09d3cf1461067c5780634ad1cbad146106c95780634ce02a33146107165780634d16dd411461074157806351eb5e931461076c5780635ad1854b146107975780635b53d291146107c25780635e8f6597146107ed5780636078b87e1461083a57806362b96a1814610865578063660ef82d1461089057806366188463146108e75780636816521a1461094c57806370a08231146109a357806375766294146109fa5780637762df2514610a2557806377e5d8f814610a7c5780638c3c00aa14610aa75780638da5cb5b14610ad257806392940bf914610b295780639333cf5e14610bae57806395d89b4114610bd95780639649725814610c69578063a01729a414610cb6578063a84f3e5a14610ce1578063a9059cbb14610d0c578063abadeb0614610d71578063af44e48714610da2578063c14e61ba14610dd3578063c31051fe14610dfe578063d53b4ab414610e29578063d5d1e77014610e80578063d73dd62314610e97578063d8270dce14610efc578063d98b094c14610f27578063dd62ed3e14610f58578063f05ad9f314610fcf578063f854d74c14610ffa575b600080fd5b34801561028e57600080fd5b50610297611047565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156102e557600080fd5b506102ee61106d565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561032e578082015181840152602081019050610313565b50505050905090810190601f16801561035b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561037557600080fd5b5061037e6110a6565b6040518082815260200191505060405180910390f35b3480156103a057600080fd5b506103df600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110ac565b604051808215151515815260200191505060405180910390f35b34801561040557600080fd5b5061043a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061119e565b005b34801561044857600080fd5b506104516112f5565b6040518082815260200191505060405180910390f35b34801561047357600080fd5b5061047c6112fb565b6040518082815260200191505060405180910390f35b34801561049e57600080fd5b506104a7611301565b6040518082815260200191505060405180910390f35b3480156104c957600080fd5b506104d2611307565b6040518082815260200191505060405180910390f35b3480156104f457600080fd5b50610553600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061130d565b604051808215151515815260200191505060405180910390f35b34801561057957600080fd5b50610582611438565b604051808260ff1660ff16815260200191505060405180910390f35b3480156105aa57600080fd5b506105b361143d565b6040518082815260200191505060405180910390f35b3480156105d557600080fd5b506105de611443565b6040518082815260200191505060405180910390f35b34801561060057600080fd5b50610609611449565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561065757600080fd5b5061066061146f565b604051808260ff1660ff16815260200191505060405180910390f35b34801561068857600080fd5b506106c7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611482565b005b3480156106d557600080fd5b50610714600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115e7565b005b34801561072257600080fd5b5061072b61174c565b6040518082815260200191505060405180910390f35b34801561074d57600080fd5b50610756611752565b6040518082815260200191505060405180910390f35b34801561077857600080fd5b50610781611758565b6040518082815260200191505060405180910390f35b3480156107a357600080fd5b506107ac61175e565b6040518082815260200191505060405180910390f35b3480156107ce57600080fd5b506107d7611764565b6040518082815260200191505060405180910390f35b3480156107f957600080fd5b50610838600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061176a565b005b34801561084657600080fd5b5061084f611801565b6040518082815260200191505060405180910390f35b34801561087157600080fd5b5061087a611807565b6040518082815260200191505060405180910390f35b34801561089c57600080fd5b506108a561180d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156108f357600080fd5b50610932600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611833565b604051808215151515815260200191505060405180910390f35b34801561095857600080fd5b50610961611abb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109af57600080fd5b506109e4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ae1565b6040518082815260200191505060405180910390f35b348015610a0657600080fd5b50610a0f611b2a565b6040518082815260200191505060405180910390f35b348015610a3157600080fd5b50610a3a611b30565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610a8857600080fd5b50610a91611b56565b6040518082815260200191505060405180910390f35b348015610ab357600080fd5b50610abc611b5c565b6040518082815260200191505060405180910390f35b348015610ade57600080fd5b50610ae7611b62565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b3557600080fd5b50610b94600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b87565b604051808215151515815260200191505060405180910390f35b348015610bba57600080fd5b50610bc3611f85565b6040518082815260200191505060405180910390f35b348015610be557600080fd5b50610bee611f8b565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c2e578082015181840152602081019050610c13565b50505050905090810190601f168015610c5b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c7557600080fd5b50610cb4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611fc4565b005b348015610cc257600080fd5b50610ccb612129565b6040518082815260200191505060405180910390f35b348015610ced57600080fd5b50610cf661212f565b6040518082815260200191505060405180910390f35b348015610d1857600080fd5b50610d57600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612135565b604051808215151515815260200191505060405180910390f35b348015610d7d57600080fd5b50610d8661214a565b604051808260ff1660ff16815260200191505060405180910390f35b348015610dae57600080fd5b50610db761215d565b604051808260ff1660ff16815260200191505060405180910390f35b348015610ddf57600080fd5b50610de8612170565b6040518082815260200191505060405180910390f35b348015610e0a57600080fd5b50610e13612176565b6040518082815260200191505060405180910390f35b348015610e3557600080fd5b50610e3e61217c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610e8c57600080fd5b50610e956121a2565b005b348015610ea357600080fd5b50610ee2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506126ae565b604051808215151515815260200191505060405180910390f35b348015610f0857600080fd5b50610f116128a1565b6040518082815260200191505060405180910390f35b348015610f3357600080fd5b50610f3c6128a7565b604051808260ff1660ff16815260200191505060405180910390f35b348015610f6457600080fd5b50610fb9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506128ba565b6040518082815260200191505060405180910390f35b348015610fdb57600080fd5b50610fe4612d19565b6040518082815260200191505060405180910390f35b34801561100657600080fd5b50611045600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612d1f565b005b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280601781526020017f47656e6573697343727970746f546563686e6f6c6f677900000000000000000081525081565b60105481565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111f957600080fd5b7f8a95addc59dddee94a894365b5c66c6c2473b7084d3fd1df9f503db4a2cd6dcc6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60205481565b60045481565b60085481565b601f5481565b600081600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561139a57600080fd5b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555061142f848484612e84565b90509392505050565b600881565b60135481565b60065481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b602160009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156114dd57600080fd5b611509601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115d8601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b15156115e357600080fd5b5050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561164257600080fd5b61166e600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061173d600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b151561174857600080fd5b5050565b600d5481565b60185481565b600e5481565b601d5481565b601c5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156117c557600080fd5b6117f2600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b15156117fd57600080fd5b5050565b601a5481565b60125481565b601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611944576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119cf565b61194e8184613058565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60115481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601e5481565b600b5481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611be757600080fd5b838673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611c8357600080fd5b505af1158015611c97573d6000803e3d6000fd5b505050506040513d6020811015611cad57600080fd5b810190808051906020019092919050505010151515611ccb57600080fd5b8573ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611d6657600080fd5b505af1158015611d7a573d6000803e3d6000fd5b505050506040513d6020811015611d9057600080fd5b810190808051906020019092919050505091508573ffffffffffffffffffffffffffffffffffffffff1663a9059cbb86866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611e4657600080fd5b505af1158015611e5a573d6000803e3d6000fd5b505050506040513d6020811015611e7057600080fd5b81019080805190602001909291905050501515611e8c57600080fd5b8573ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611f2757600080fd5b505af1158015611f3b573d6000803e3d6000fd5b505050506040513d6020811015611f5157600080fd5b81019080805190602001909291905050509050611f6e8285613071565b81141515611f7857fe5b6001925050509392505050565b60175481565b6040805190810160405280600381526020017f474354000000000000000000000000000000000000000000000000000000000081525081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561201f57600080fd5b61204b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061211a600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b151561212557600080fd5b5050565b60195481565b600c5481565b6000612142338484612e84565b905092915050565b601560009054906101000a900460ff1681565b600f60009054906101000a900460ff1681565b600a5481565b60145481565b601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156121fe57600080fd5b600060036000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122ee600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b60036000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060036000601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126ac61308f565b565b6000612736600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483613071565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b60055481565b601b60009054906101000a900460ff1681565b60008060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151561299957600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549250612d11565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612a5257612a13600d54600e54600b54600f60009054906101000a900460ff16600c5461326b565b9150612a4b600a54612a46600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d04565b600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612b0b57612acc601354601454601154601560009054906101000a900460ff1660125461326b565b9150612b04601054612aff600f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d03565b601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612bc457612b85601954601a54601754601b60009054906101000a900460ff1660185461326b565b9150612bbd601654612bb8601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d02565b601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612c7d57612c3e601f54602054601d54602160009054906101000a900460ff16601e5461326b565b9150612c76601c54612c71601b60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611ae1565b613058565b9050612d01565b600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549250612d11565b5b5b5b612d0e8282613058565b92505b505092915050565b60165481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612d7a57600080fd5b612da6601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16336128ba565b60036000601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612e75601560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16838361130d565b1515612e8057600080fd5b5050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515612ec157600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515612f0f57600080fd5b81600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550612fa5600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483613071565b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600082821115151561306657fe5b818303905092915050565b600080828401905083811015151561308557fe5b8091505092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156130eb57600080fd5b7f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b23646000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008061327a60055488613071565b421015613289578291506132d6565b6132a76132a14261329c6005548b613071565b613058565b876132e0565b90508360ff1681116132b957806132be565b8360ff165b90506132d3836132ce83886132f6565b613071565b91505b5095945050505050565b600081838115156132ed57fe5b04905092915050565b600080600084141561330b576000915061332a565b828402905082848281151561331c57fe5b0414151561332657fe5b8091505b50929150505600a165627a7a72305820576c16547aa07f849b87a48f764881ae0ec1b0503ebe20ae4d363c47a159c6880029
Deployed Bytecode Sourcemap
7364:8205:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8382:88;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8382:88:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7434:55;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7434:55: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;7434:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9111:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9111:37:0;;;;;;;;;;;;;;;;;;;;;;;4493:193;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4493:193:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1390:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1390:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10711:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10711:44:0;;;;;;;;;;;;;;;;;;;;;;;3222:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3222:26:0;;;;;;;;;;;;;;;;;;;;;;;7977:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7977:42:0;;;;;;;;;;;;;;;;;;;;;;;10675:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10675:32:0;;;;;;;;;;;;;;;;;;;;;;;3869:235;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3869:235:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7534:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7534:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;9234:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9234:28:0;;;;;;;;;;;;;;;;;;;;;;;7573:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7573:34:0;;;;;;;;;;;;;;;;;;;;;;;7885:88;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7885:88:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10759:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10759:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;12518:265;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12518:265:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11990:249;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11990:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8615:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8615:43:0;;;;;;;;;;;;;;;;;;;;;;;9916:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9916:45:0;;;;;;;;;;;;;;;;;;;;;;;8662:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8662:47:0;;;;;;;;;;;;;;;;;;;;;;;10576;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10576:47:0;;;;;;;;;;;;;;;;;;;;;;;10532:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10532:40:0;;;;;;;;;;;;;;;;;;;;;;;11516:180;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11516:180:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10002:51;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10002:51:0;;;;;;;;;;;;;;;;;;;;;;;9199:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9199:31:0;;;;;;;;;;;;;;;;;;;;;;;10440:88;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10440:88:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6862:378;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6862:378:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9023:84;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9023:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4213:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4213:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9152:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9152:43:0;;;;;;;;;;;;;;;;;;;;;;;1092:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1092:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10627:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10627:44:0;;;;;;;;;;;;;;;;;;;;;;;8520:49;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8520:49:0;;;;;;;;;;;;;;;;;;;;;;;1055:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1055:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6015:422;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6015:422:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9864:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9864:48:0;;;;;;;;;;;;;;;;;;;;;;;7493:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7493:37: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;7493:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11717:268;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11717:268:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9965:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9965:33:0;;;;;;;;;;;;;;;;;;;;;;;8573:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8573:38:0;;;;;;;;;;;;;;;;;;;;;;;3472:128;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3472:128:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9316:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9316:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8713:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8713:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8474:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8474:42:0;;;;;;;;;;;;;;;;;;;;;;;9266:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9266:46:0;;;;;;;;;;;;;;;;;;;;;;;9726:89;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9726:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;14369:582;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14369:582:0;;;;;;6519:261;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6519:261:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5796:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5796:27:0;;;;;;;;;;;;;;;;;;;;;;;10057:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10057:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;12836:1488;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12836:1488:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9819:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9819:41:0;;;;;;;;;;;;;;;;;;;;;;;12244:269;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12244:269:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8382:88;;;;;;;;;;;;;:::o;7434:55::-;;;;;;;;;;;;;;;;;;;;:::o;9111:37::-;;;;:::o;4493:193::-;4560:12;4611:6;4579:7;:19;4587:10;4579:19;;;;;;;;;;;;;;;:29;4599:8;4579:29;;;;;;;;;;;;;;;:38;;;;4648:8;4627:38;;4636:10;4627:38;;;4658:6;4627:38;;;;;;;;;;;;;;;;;;4677:4;4670:11;;4493:193;;;;:::o;1390:128::-;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;1457:30;1475:5;;;;;;;;;;;1482:4;1457:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1509:4;1492:14;;:21;;;;;;;;;;;;;;;;;;1390:128;:::o;10711:44::-;;;;:::o;3222:26::-;;;;:::o;7977:42::-;;;;:::o;10675:32::-;;;;:::o;3869:235::-;3951:12;4008:6;3978:7;:14;3986:5;3978:14;;;;;;;;;;;;;;;:26;3993:10;3978:26;;;;;;;;;;;;;;;;:36;;3970:45;;;;;;;;4050:6;4020:7;:14;4028:5;4020:14;;;;;;;;;;;;;;;:26;4035:10;4020:26;;;;;;;;;;;;;;;;:36;;;;;;;;;;;4070:29;4080:5;4087:3;4092:6;4070:9;:29::i;:::-;4063:36;;3869:235;;;;;:::o;7534:35::-;7568:1;7534:35;:::o;9234:28::-;;;;:::o;7573:34::-;;;;:::o;7885:88::-;;;;;;;;;;;;;:::o;10759:41::-;;;;;;;;;;;;;:::o;12518:265::-;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;12665:41;12675:18;;;;;;;;;;;12695:10;12665:9;:41::i;:::-;12623:7;:27;12631:18;;;;;;;;;;;12623:27;;;;;;;;;;;;;;;:39;12651:10;12623:39;;;;;;;;;;;;;;;:83;;;;12719:58;12732:18;;;;;;;;;;;12752:3;12757:19;12719:12;:58::i;:::-;12711:67;;;;;;;;12518:265;;:::o;11990:249::-;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;12129:37;12139:14;;;;;;;;;;;12155:10;12129:9;:37::i;:::-;12091:7;:23;12099:14;;;;;;;;;;;12091:23;;;;;;;;;;;;;;;:35;12115:10;12091:35;;;;;;;;;;;;;;;:75;;;;12179:54;12192:14;;;;;;;;;;;12208:3;12213:19;12179:12;:54::i;:::-;12171:63;;;;;;;;11990:249;;:::o;8615:43::-;;;;:::o;9916:45::-;;;;:::o;8662:47::-;;;;:::o;10576:::-;;;;:::o;10532:40::-;;;;:::o;11516:180::-;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;11631:59;11644:19;;;;;;;;;;;11665:3;11670:19;11631:12;:59::i;:::-;11623:68;;;;;;;;11516:180;;:::o;10002:51::-;;;;:::o;9199:31::-;;;;:::o;10440:88::-;;;;;;;;;;;;;:::o;6862:378::-;6938:12;6957:16;6976:7;:19;6984:10;6976:19;;;;;;;;;;;;;;;:29;6996:8;6976:29;;;;;;;;;;;;;;;;6957:48;;7023:8;7014:6;:17;7010:139;;;7071:1;7039:7;:19;7047:10;7039:19;;;;;;;;;;;;;;;:29;7059:8;7039:29;;;;;;;;;;;;;;;:33;;;;7010:139;;;7122:21;7126:8;7136:6;7122:3;:21::i;:::-;7090:7;:19;7098:10;7090:19;;;;;;;;;;;;;;;:29;7110:8;7090:29;;;;;;;;;;;;;;;:53;;;;7010:139;7179:8;7158:61;;7167:10;7158:61;;;7189:7;:19;7197:10;7189:19;;;;;;;;;;;;;;;:29;7209:8;7189:29;;;;;;;;;;;;;;;;7158:61;;;;;;;;;;;;;;;;;;7231:4;7224:11;;6862:378;;;;;:::o;9023:84::-;;;;;;;;;;;;;:::o;4213:106::-;4269:15;4298:8;:16;4307:6;4298:16;;;;;;;;;;;;;;;;4291:23;;4213:106;;;:::o;9152:43::-;;;;:::o;1092:29::-;;;;;;;;;;;;;:::o;10627:44::-;;;;:::o;8520:49::-;;;;:::o;1055:33::-;;;;;;;;;;;;;:::o;6015:422::-;6129:12;6205:23;6301:26;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;6193:6;6158;:16;;;6183:4;6158:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6158:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6158:31:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6158:31:0;;;;;;;;;;;;;;;;:41;;6150:50;;;;;;;;6231:6;:16;;;6248:3;6231:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6231:21:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6231:21:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6231:21:0;;;;;;;;;;;;;;;;6205:47;;6265:6;:15;;;6281:3;6286:6;6265:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6265:28:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6265:28:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6265:28:0;;;;;;;;;;;;;;;;6257:37;;;;;;;;6330:6;:16;;;6347:3;6330:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6330:21:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6330:21:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6330:21:0;;;;;;;;;;;;;;;;6301:50;;6385:28;6389:15;6406:6;6385:3;:28::i;:::-;6363:18;:50;6356:58;;;;;;6428:4;6421:11;;6015:422;;;;;;;:::o;9864:48::-;;;;:::o;7493:37::-;;;;;;;;;;;;;;;;;;;;:::o;11717:268::-;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;11865:42;11875:19;;;;;;;;;;;11896:10;11865:9;:42::i;:::-;11822:7;:28;11830:19;;;;;;;;;;;11822:28;;;;;;;;;;;;;;;:40;11851:10;11822:40;;;;;;;;;;;;;;;:85;;;;11920:59;11933:19;;;;;;;;;;;11954:3;11959:19;11920:12;:59::i;:::-;11912:68;;;;;;;;11717:268;;:::o;9965:33::-;;;;:::o;8573:38::-;;;;:::o;3472:128::-;3535:12;3561:34;3571:10;3583:3;3588:6;3561:9;:34::i;:::-;3554:41;;3472:128;;;;:::o;9316:37::-;;;;;;;;;;;;;:::o;8713:41::-;;;;;;;;;;;;;:::o;8474:42::-;;;;:::o;9266:46::-;;;;:::o;9726:89::-;;;;;;;;;;;;;:::o;14369:582::-;1250:14;;;;;;;;;;;1236:28;;:10;:28;;;1228:37;;;;;;;;14536:1;14498:7;:28;14506:19;;;;;;;;;;;14498:28;;;;;;;;;;;;;;;:35;14527:5;;;;;;;;;;;14498:35;;;;;;;;;;;;;;;:39;;;;14645:30;14655:19;;;;;;;;;;;14645:9;:30::i;:::-;14602:7;:28;14610:19;;;;;;;;;;;14602:28;;;;;;;;;;;;;;;:40;14631:10;14602:40;;;;;;;;;;;;;;;:73;;;;14788:1;14750:7;:28;14758:19;;;;;;;;;;;14750:28;;;;;;;;;;;;;;;:35;14779:5;;;;;;;;;;;14750:35;;;;;;;;;;;;;;;:39;;;;14827:1;14794:7;:23;14802:14;;;;;;;;;;;14794:23;;;;;;;;;;;;;;;:30;14818:5;;;;;;;;;;;14794:30;;;;;;;;;;;;;;;:34;;;;14871:1;14833:7;:28;14841:19;;;;;;;;;;;14833:28;;;;;;;;;;;;;;;:35;14862:5;;;;;;;;;;;14833:35;;;;;;;;;;;;;;;:39;;;;14914:1;14877:7;:27;14885:18;;;;;;;;;;;14877:27;;;;;;;;;;;;;;;:34;14905:5;;;;;;;;;;;14877:34;;;;;;;;;;;;;;;:38;;;;14922:24;:22;:24::i;:::-;14369:582::o;6519:261::-;6595:12;6646:42;6650:7;:19;6658:10;6650:19;;;;;;;;;;;;;;;:29;6670:8;6650:29;;;;;;;;;;;;;;;;6681:6;6646:3;:42::i;:::-;6614:7;:19;6622:10;6614:19;;;;;;;;;;;;;;;:29;6634:8;6614:29;;;;;;;;;;;;;;;:74;;;;6719:8;6698:61;;6707:10;6698:61;;;6729:7;:19;6737:10;6729:19;;;;;;;;;;;;;;;:29;6749:8;6729:29;;;;;;;;;;;;;;;;6698:61;;;;;;;;;;;;;;;;;;6771:4;6764:11;;6519:261;;;;:::o;5796:27::-;;;;:::o;10057:41::-;;;;;;;;;;;;;:::o;12836:1488::-;12919:17;13021:22;13048:19;12964:5;;;;;;;;;;;12952:17;;:8;:17;;;;12948:67;;;12984:7;:15;12992:6;12984:15;;;;;;;;;;;;;;;:25;13000:8;12984:25;;;;;;;;;;;;;;;;12977:32;;;;12948:67;13088:19;;;;;;;;;;;13078:29;;:6;:29;;;13074:1200;;;13132:160;13163:14;;13184:21;;13212;;13240:22;;;;;;;;;;;13269:17;;13132:24;:160::i;:::-;13115:177;;13312:51;13316:14;;13332:30;13342:19;;;;;;;;;;;13332:9;:30::i;:::-;13312:3;:51::i;:::-;13298:65;;13074:1200;;;13389:14;;;;;;;;;;;13379:24;;:6;:24;;;13375:899;;;13428:135;13459:9;;13475:16;;13498;;13521:17;;;;;;;;;;;13545:12;;13428:24;:135::i;:::-;13411:152;;13583:41;13587:9;;13598:25;13608:14;;;;;;;;;;;13598:9;:25::i;:::-;13583:3;:41::i;:::-;13569:55;;13375:899;;;13650:19;;;;;;;;;;;13640:29;;:6;:29;;;13636:638;;;13694:160;13725:14;;13746:21;;13774;;13802:22;;;;;;;;;;;13831:17;;13694:24;:160::i;:::-;13677:177;;13874:51;13878:14;;13894:30;13904:19;;;;;;;;;;;13894:9;:30::i;:::-;13874:3;:51::i;:::-;13860:65;;13636:638;;;13951:18;;;;;;;;;;;13941:28;;:6;:28;;;13937:337;;;13994:155;14025:13;;14045:20;;14072;;14099:21;;;;;;;;;;;14127:16;;13994:24;:155::i;:::-;13977:172;;14169:49;14173:13;;14188:29;14198:18;;;;;;;;;;;14188:9;:29::i;:::-;14169:3;:49::i;:::-;14155:63;;13937:337;;;14243:7;:15;14251:6;14243:15;;;;;;;;;;;;;;;:25;14259:8;14243:25;;;;;;;;;;;;;;;;14236:32;;;;13937:337;13636:638;13375:899;13074:1200;14287:32;14291:14;14307:11;14287:3;:32::i;:::-;14280:39;;12836:1488;;;;;;;:::o;9819:41::-;;;;:::o;12244:269::-;1173:5;;;;;;;;;;;1159:19;;:10;:19;;;1151:28;;;;;;;;12393:42;12403:19;;;;;;;;;;;12424:10;12393:9;:42::i;:::-;12350:7;:28;12358:19;;;;;;;;;;;12350:28;;;;;;;;;;;;;;;:40;12379:10;12350:40;;;;;;;;;;;;;;;:85;;;;12448:59;12461:19;;;;;;;;;;;12482:3;12487:19;12448:12;:59::i;:::-;12440:68;;;;;;;;12244:269;;:::o;5295:300::-;5375:12;5417:1;5402:17;;:3;:17;;;;5394:26;;;;;;;;5452:6;5433:8;:15;5442:5;5433:15;;;;;;;;;;;;;;;;:25;;5425:34;;;;;;;;5483:6;5464:8;:15;5473:5;5464:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;5510:26;5514:8;:13;5523:3;5514:13;;;;;;;;;;;;;;;;5529:6;5510:3;:26::i;:::-;5494:8;:13;5503:3;5494:13;;;;;;;;;;;;;;;:42;;;;5562:3;5546:28;;5555:5;5546:28;;;5567:6;5546:28;;;;;;;;;;;;;;;;;;5586:4;5579:11;;5295:300;;;;;:::o;2417:108::-;2475:7;2501:1;2496;:6;;2489:14;;;;;;2519:1;2515;:5;2508:12;;2417:108;;;;:::o;2588:126::-;2646:7;2660:9;2676:1;2672;:5;2660:17;;2694:1;2689;:6;;2682:14;;;;;;2708:1;2701:8;;2588:126;;;;;:::o;1523:167::-;1250:14;;;;;;;;;;;1236:28;;:10;:28;;;1228:37;;;;;;;;1595:31;1604:5;;;;;;;;;;;1611:14;;;;;;;;;;;1595:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1639:14;;;;;;;;;;;1631:5;;:22;;;;;;;;;;;;;;;;;;1683:1;1658:14;;:27;;;;;;;;;;;;;;;;;;1523:167::o;14956:610::-;15149:7;15361:15;15236:25;15240:12;;15254:6;15236:3;:25::i;:::-;15230:3;:31;15226:71;;;15276:15;15269:22;;;;15226:71;15379:55;15383:35;15387:3;15392:25;15396:12;;15410:6;15392:3;:25::i;:::-;15383:3;:35::i;:::-;15420:13;15379:3;:55::i;:::-;15361:73;;15459:14;15449:24;;:7;:24;:51;;15493:7;15449:51;;;15476:14;15449:51;;;15439:61;;15512:49;15516:15;15533:27;15537:7;15546:13;15533:3;:27::i;:::-;15512:3;:49::i;:::-;15505:56;;14956:610;;;;;;;;;:::o;2215:89::-;2273:7;2298:1;2294;:5;;;;;;;;2287:12;;2215:89;;;;:::o;1966:166::-;2024:7;2074:9;2047:1;2042;:6;2038:32;;;2063:1;2056:8;;;;2038:32;2090:1;2086;:5;2074:17;;2112:1;2107;2103;:5;;;;;;;;:10;2096:18;;;;;;2126:1;2119:8;;1966:166;;;;;;:::o
Swarm Source
bzzr://576c16547aa07f849b87a48f764881ae0ec1b0503ebe20ae4d363c47a159c688
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.