ETH Price: $3,183.29 (+1.59%)
Gas: 6 Gwei

Token

Snetwork (SNET)
 

Overview

Max Total Supply

1,000,000,000 SNET

Holders

555 (0.00%)

Total Transfers

-

Market

Price

$0.00 @ 0.000001 ETH (+0.06%)

Onchain Market Cap

$1,783,540.00

Circulating Supply Market Cap

$425,661.00

Other Info

Token Contract (WITH 8 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Distributed Shared Cloud Computing Network

Market

Volume (24H):$790.33
Market Capitalization:$425,661.00
Circulating Supply:238,603,999.00 SNET
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume
1
Gate.io
SNET-USDT$0.0018
0.0000006 Eth
$789.91
443,075.448 SNET
99.0728%
2
Gate.io
SNET-ETH$0.0018
0.0000006 Eth
$7.52
4,146.619 SNET
0.9272%

Contract Source Code Verified (Exact Match)

Contract Name:
Snetwork

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-01-19
*/

pragma solidity ^0.4.11;

contract ERC20Basic {
  uint256 public totalSupply;
  function balanceOf(address who) constant returns (uint256);
  function transfer(address to, uint256 value) returns (bool);
  event Transfer(address indexed from, address indexed to, uint256 value);
}

contract ERC20 is ERC20Basic {
  function allowance(address owner, address spender) constant returns (uint256);
  function transferFrom(address from, address to, uint256 value) returns (bool);
  function approve(address spender, uint256 value) returns (bool);
  event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract ReentrancyGuard {

  /**
   * @dev We use a single lock for the whole contract.
   */
  bool private rentrancy_lock = false;

  /**
   * @dev Prevents a contract from calling itself, directly or indirectly.
   * @notice If you mark a function `nonReentrant`, you should also
   * mark it `external`. Calling one nonReentrant function from
   * another is not supported. Instead, you can implement a
   * `private` function doing the actual work, and a `external`
   * wrapper marked as `nonReentrant`.
   */
  modifier nonReentrant() {
    require(!rentrancy_lock);
    rentrancy_lock = true;
    _;
    rentrancy_lock = false;
  }

}

contract Ownable {
  address public owner;


  /**
   * @dev The Ownable constructor sets the original `owner` of the contract to the sender
   * account.
   */
  function Ownable() {
    owner = msg.sender;
  }


  /**
   * @dev Throws if called by any account other than the owner.
   */
  modifier onlyOwner() {
    require(msg.sender == owner);
    _;
  }


  /**
   * @dev Allows the current owner to transfer control of the contract to a newOwner.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) onlyOwner {
    require(newOwner != address(0));
    owner = newOwner;
  }

}

contract Claimable is Ownable {
  address public pendingOwner;

  /**
   * @dev Modifier throws if called by any account other than the pendingOwner.
   */
  modifier onlyPendingOwner() {
    require(msg.sender == pendingOwner);
    _;
  }

  /**
   * @dev Allows the current owner to set the pendingOwner address.
   * @param newOwner The address to transfer ownership to.
   */
  function transferOwnership(address newOwner) onlyOwner {
    pendingOwner = newOwner;
  }

  /**
   * @dev Allows the pendingOwner address to finalize the transfer.
   */
  function claimOwnership() onlyPendingOwner {
    owner = pendingOwner;
    pendingOwner = 0x0;
  }
}

contract Operational is Claimable {
    address public operator;

    function Operational(address _operator) {
      operator = _operator;
    }

    modifier onlyOperator() {
      require(msg.sender == operator);
      _;
    }

    function transferOperator(address newOperator) onlyOwner {
      require(newOperator != address(0));
      operator = newOperator;
    }

}

library SafeMath {
  function mul(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a * b;
    assert(a == 0 || c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal constant returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  function sub(uint256 a, uint256 b) internal constant returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal constant returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

contract BasicToken is ERC20Basic {
  using SafeMath for uint256;

  mapping(address => uint256) balances;

  /**
  * @dev transfer token for a specified address
  * @param _to The address to transfer to.
  * @param _value The amount to be transferred.
  */
  function transfer(address _to, uint256 _value) returns (bool) {
    balances[msg.sender] = balances[msg.sender].sub(_value);
    balances[_to] = balances[_to].add(_value);
    Transfer(msg.sender, _to, _value);
    return true;
  }

  /**
  * @dev Gets the balance of the specified address.
  * @param _owner The address to query the the balance of.
  * @return An uint256 representing the amount owned by the passed address.
  */
  function balanceOf(address _owner) constant returns (uint256 balance) {
    return balances[_owner];
  }

}

contract StandardToken is ERC20, BasicToken {

  mapping (address => mapping (address => uint256)) allowed;


  /**
   * @dev Transfer tokens from one address to another
   * @param _from address The address which you want to send tokens from
   * @param _to address The address which you want to transfer to
   * @param _value uint256 the amout of tokens to be transfered
   */
  function transferFrom(address _from, address _to, uint256 _value) returns (bool) {
    var _allowance = allowed[_from][msg.sender];

    // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met
    // require (_value <= _allowance);

    balances[_to] = balances[_to].add(_value);
    balances[_from] = balances[_from].sub(_value);
    allowed[_from][msg.sender] = _allowance.sub(_value);
    Transfer(_from, _to, _value);
    return true;
  }

  function batchTransfer(address[] _to, uint256[] _bonus) returns(bool) {
        for(uint i = 0; i < _to.length; i++){
            require(transfer(_to[i], _bonus[i]));
        }
        return true;
  }

  /**
   * @dev Aprove the passed address to spend the specified amount of tokens on behalf of msg.sender.
   * @param _spender The address which will spend the funds.
   * @param _value The amount of tokens to be spent.
   */
  function approve(address _spender, uint256 _value) returns (bool) {

    // To change the approve amount you first have to reduce the addresses`
    //  allowance to zero by calling `approve(_spender, 0)` if it is not
    //  already 0 to mitigate the race condition described here:
    //  https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
    require((_value == 0) || (allowed[msg.sender][_spender] == 0));

    allowed[msg.sender][_spender] = _value;
    Approval(msg.sender, _spender, _value);
    return true;
  }

  /**
   * @dev Function to check the amount of tokens that an owner allowed to a spender.
   * @param _owner address The address which owns the funds.
   * @param _spender address The address which will spend the funds.
   * @return A uint256 specifing the amount of tokens still available for the spender.
   */
  function allowance(address _owner, address _spender) constant returns (uint256 remaining) {
    return allowed[_owner][_spender];
  }

}

contract LockableToken is StandardToken, ReentrancyGuard {

    struct LockedBalance {
        address owner;
        uint256 value;
        uint256 releaseTime;
    }

    mapping (uint => LockedBalance) public lockedBalances;
    uint public lockedBalanceCount;

    event TransferLockedToken(address indexed from, address indexed to, uint256 value, uint256 releaseTime);
    event ReleaseLockedBalance(address indexed owner, uint256 value, uint256 releaseTime);

    
    function transferLockedToken(address _to, uint256 _value, uint256 _releaseTime) nonReentrant returns (bool) {
        require(_releaseTime > now);
        require(_releaseTime.sub(1 years) < now);
        balances[msg.sender] = balances[msg.sender].sub(_value);
        lockedBalances[lockedBalanceCount] = LockedBalance({owner: _to, value: _value, releaseTime: _releaseTime});
        lockedBalanceCount++;
        TransferLockedToken(msg.sender, _to, _value, _releaseTime);
        return true;
    }

    
    function lockedBalanceOf(address _owner) constant returns (uint256 value) {
        for (uint i = 0; i < lockedBalanceCount; i++) {
            LockedBalance lockedBalance = lockedBalances[i];
            if (_owner == lockedBalance.owner) {
                value = value.add(lockedBalance.value);
            }
        }
        return value;
    }

    
    function releaseLockedBalance () returns (uint256 releaseAmount) {
        uint index = 0;
        while (index < lockedBalanceCount) {
            if (now >= lockedBalances[index].releaseTime) {
                releaseAmount += lockedBalances[index].value;
                unlockBalanceByIndex(index);
            } else {
                index++;
            }
        }
        return releaseAmount;
    }

    function unlockBalanceByIndex (uint index) internal {
        LockedBalance lockedBalance = lockedBalances[index];
        balances[lockedBalance.owner] = balances[lockedBalance.owner].add(lockedBalance.value);
        ReleaseLockedBalance(lockedBalance.owner, lockedBalance.value, lockedBalance.releaseTime);
        lockedBalances[index] = lockedBalances[lockedBalanceCount - 1];
        delete lockedBalances[lockedBalanceCount - 1];
        lockedBalanceCount--;
    }

}

library DateTime {
        /*
         *  Date and Time utilities for ethereum contracts
         *
         */
        struct DateTime {
                uint16 year;
                uint8 month;
                uint8 day;
                uint8 hour;
                uint8 minute;
                uint8 second;
                uint8 weekday;
        }

        uint constant DAY_IN_SECONDS = 86400;
        uint constant YEAR_IN_SECONDS = 31536000;
        uint constant LEAP_YEAR_IN_SECONDS = 31622400;

        uint constant HOUR_IN_SECONDS = 3600;
        uint constant MINUTE_IN_SECONDS = 60;

        uint16 constant ORIGIN_YEAR = 1970;

        function isLeapYear(uint16 year) constant returns (bool) {
                if (year % 4 != 0) {
                        return false;
                }
                if (year % 100 != 0) {
                        return true;
                }
                if (year % 400 != 0) {
                        return false;
                }
                return true;
        }

        function leapYearsBefore(uint year) constant returns (uint) {
                year -= 1;
                return year / 4 - year / 100 + year / 400;
        }

        function getDaysInMonth(uint8 month, uint16 year) constant returns (uint8) {
                if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
                        return 31;
                }
                else if (month == 4 || month == 6 || month == 9 || month == 11) {
                        return 30;
                }
                else if (isLeapYear(year)) {
                        return 29;
                }
                else {
                        return 28;
                }
        }

        function parseTimestamp(uint timestamp) internal returns (DateTime dt) {
                uint secondsAccountedFor = 0;
                uint buf;
                uint8 i;

                // Year
                dt.year = getYear(timestamp);
                buf = leapYearsBefore(dt.year) - leapYearsBefore(ORIGIN_YEAR);

                secondsAccountedFor += LEAP_YEAR_IN_SECONDS * buf;
                secondsAccountedFor += YEAR_IN_SECONDS * (dt.year - ORIGIN_YEAR - buf);

                // Month
                uint secondsInMonth;
                for (i = 1; i <= 12; i++) {
                        secondsInMonth = DAY_IN_SECONDS * getDaysInMonth(i, dt.year);
                        if (secondsInMonth + secondsAccountedFor > timestamp) {
                                dt.month = i;
                                break;
                        }
                        secondsAccountedFor += secondsInMonth;
                }

                // Day
                for (i = 1; i <= getDaysInMonth(dt.month, dt.year); i++) {
                        if (DAY_IN_SECONDS + secondsAccountedFor > timestamp) {
                                dt.day = i;
                                break;
                        }
                        secondsAccountedFor += DAY_IN_SECONDS;
                }

                // Hour
                dt.hour = 0;//getHour(timestamp);

                // Minute
                dt.minute = 0;//getMinute(timestamp);

                // Second
                dt.second = 0;//getSecond(timestamp);

                // Day of week.
                dt.weekday = 0;//getWeekday(timestamp);

        }

        function getYear(uint timestamp) constant returns (uint16) {
                uint secondsAccountedFor = 0;
                uint16 year;
                uint numLeapYears;

                // Year
                year = uint16(ORIGIN_YEAR + timestamp / YEAR_IN_SECONDS);
                numLeapYears = leapYearsBefore(year) - leapYearsBefore(ORIGIN_YEAR);

                secondsAccountedFor += LEAP_YEAR_IN_SECONDS * numLeapYears;
                secondsAccountedFor += YEAR_IN_SECONDS * (year - ORIGIN_YEAR - numLeapYears);

                while (secondsAccountedFor > timestamp) {
                        if (isLeapYear(uint16(year - 1))) {
                                secondsAccountedFor -= LEAP_YEAR_IN_SECONDS;
                        }
                        else {
                                secondsAccountedFor -= YEAR_IN_SECONDS;
                        }
                        year -= 1;
                }
                return year;
        }

        function getMonth(uint timestamp) constant returns (uint8) {
                return parseTimestamp(timestamp).month;
        }

        function getDay(uint timestamp) constant returns (uint8) {
                return parseTimestamp(timestamp).day;
        }

        function getHour(uint timestamp) constant returns (uint8) {
                return uint8((timestamp / 60 / 60) % 24);
        }

        function getMinute(uint timestamp) constant returns (uint8) {
                return uint8((timestamp / 60) % 60);
        }

        function getSecond(uint timestamp) constant returns (uint8) {
                return uint8(timestamp % 60);
        }

        function toTimestamp(uint16 year, uint8 month, uint8 day) constant returns (uint timestamp) {
                return toTimestamp(year, month, day, 0, 0, 0);
        }

        function toTimestamp(uint16 year, uint8 month, uint8 day, uint8 hour, uint8 minute, uint8 second) constant returns (uint timestamp) {
                uint16 i;

                // Year
                for (i = ORIGIN_YEAR; i < year; i++) {
                        if (isLeapYear(i)) {
                                timestamp += LEAP_YEAR_IN_SECONDS;
                        }
                        else {
                                timestamp += YEAR_IN_SECONDS;
                        }
                }

                // Month
                uint8[12] memory monthDayCounts;
                monthDayCounts[0] = 31;
                if (isLeapYear(year)) {
                        monthDayCounts[1] = 29;
                }
                else {
                        monthDayCounts[1] = 28;
                }
                monthDayCounts[2] = 31;
                monthDayCounts[3] = 30;
                monthDayCounts[4] = 31;
                monthDayCounts[5] = 30;
                monthDayCounts[6] = 31;
                monthDayCounts[7] = 31;
                monthDayCounts[8] = 30;
                monthDayCounts[9] = 31;
                monthDayCounts[10] = 30;
                monthDayCounts[11] = 31;

                for (i = 1; i < month; i++) {
                        timestamp += DAY_IN_SECONDS * monthDayCounts[i - 1];
                }

                // Day
                timestamp += DAY_IN_SECONDS * (day - 1);

                // Hour
                timestamp += HOUR_IN_SECONDS * (hour);

                // Minute
                timestamp += MINUTE_IN_SECONDS * (minute);

                // Second
                timestamp += second;

                return timestamp;
        }
}

contract ReleaseableToken is Operational, LockableToken {
    using SafeMath for uint;
    using DateTime for uint256;
    bool secondYearUpdate = false; 
    uint256 public releasedSupply; 
    uint256 public createTime; 
    uint256 standardDecimals = 100000000; 
    uint256 public totalSupply = standardDecimals.mul(1000000000);
    uint256 public limitSupplyPerYear = standardDecimals.mul(60000000);
    uint256 public dailyLimit = standardDecimals.mul(1000000);

    event ReleaseSupply(address receiver, uint256 value, uint256 releaseTime);
    event UnfreezeAmount(address receiver, uint256 amount, uint256 unfreezeTime);

    struct FrozenRecord {
        uint256 amount; 
        uint256 unfreezeTime; 
    }

    mapping (uint => FrozenRecord) public frozenRecords;
    uint public frozenRecordsCount = 0;

    function ReleaseableToken(
                    uint256 initialSupply,
                    uint256 initReleasedSupply,
                    address operator
                ) Operational(operator) {
        totalSupply = initialSupply;
        releasedSupply = initReleasedSupply;
        createTime = now;
        balances[msg.sender] = initReleasedSupply;
    }

    
    function releaseSupply(uint256 releaseAmount, uint256 timestamp) onlyOperator returns(uint256 _actualRelease) {
        require(timestamp >= createTime && timestamp <= now);
        require(!judgeReleaseRecordExist(timestamp));
        require(releaseAmount <= dailyLimit);
        updateLimit();
        require(limitSupplyPerYear > 0);
        if (releaseAmount > limitSupplyPerYear) {
            if (releasedSupply.add(limitSupplyPerYear) > totalSupply) {
                releasedSupply = totalSupply;
                releaseAmount = totalSupply.sub(releasedSupply);
            } else {
                releasedSupply = releasedSupply.add(limitSupplyPerYear);
                releaseAmount = limitSupplyPerYear;
            }
            limitSupplyPerYear = 0;
        } else {
            if (releasedSupply.add(releaseAmount) > totalSupply) {
                releasedSupply = totalSupply;
                releaseAmount = totalSupply.sub(releasedSupply);
            } else {
                releasedSupply = releasedSupply.add(releaseAmount);
            }
            limitSupplyPerYear = limitSupplyPerYear.sub(releaseAmount);
        }
        frozenRecords[frozenRecordsCount] = FrozenRecord(releaseAmount, timestamp.add(26 * 1 weeks));
        frozenRecordsCount++;
        ReleaseSupply(msg.sender, releaseAmount, timestamp);
        return releaseAmount;
    }

    
    function judgeReleaseRecordExist(uint256 timestamp) internal returns(bool _exist) {
        bool exist = false;
        if (frozenRecordsCount > 0) {
            for (uint index = 0; index < frozenRecordsCount; index++) {
                if ((frozenRecords[index].unfreezeTime.parseTimestamp().year == (timestamp.add(26 * 1 weeks)).parseTimestamp().year)
                    && (frozenRecords[index].unfreezeTime.parseTimestamp().month == (timestamp.add(26 * 1 weeks)).parseTimestamp().month)
                    && (frozenRecords[index].unfreezeTime.parseTimestamp().day == (timestamp.add(26 * 1 weeks)).parseTimestamp().day)) {
                    exist = true;
                }
            }
        }
        return exist;
    }

    
    function updateLimit() internal {
        if (createTime.add(1 years) < now && !secondYearUpdate) {
            limitSupplyPerYear = standardDecimals.mul(120000000);
            secondYearUpdate = true;
        }
        if (createTime.add(2 * 1 years) < now) {
            if (releasedSupply < totalSupply) {
                limitSupplyPerYear = totalSupply.sub(releasedSupply);
            }
        }
    }

    
    function unfreeze() onlyOperator returns(uint256 _unfreezeAmount) {
        uint256 unfreezeAmount = 0;
        uint index = 0;
        while (index < frozenRecordsCount) {
            if (frozenRecords[index].unfreezeTime < now) {
                unfreezeAmount += frozenRecords[index].amount;
                unfreezeByIndex(index);
            } else {
                index++;
            }
        }
        return unfreezeAmount;
    }

    function unfreezeByIndex (uint index) internal {
        FrozenRecord unfreezeRecord = frozenRecords[index];
        balances[owner] = balances[owner].add(unfreezeRecord.amount);
        UnfreezeAmount(owner, unfreezeRecord.amount, unfreezeRecord.unfreezeTime);
        frozenRecords[index] = frozenRecords[frozenRecordsCount - 1];
        delete frozenRecords[frozenRecordsCount - 1];
        frozenRecordsCount--;
    }

    
    function setDailyLimit(uint256 _dailyLimit) onlyOwner {
        dailyLimit = _dailyLimit;
    }
}

contract Snetwork is ReleaseableToken {
    string public standard = '2018011701';
    string public name = 'Snetwork';
    string public symbol = 'SNET';
    uint8 public decimals = 8;

    function Snetwork(
                     uint256 initialSupply,
                     uint256 initReleasedSupply,
                     address operator
                     ) ReleaseableToken(initialSupply, initReleasedSupply, operator) {}
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_releaseTime","type":"uint256"}],"name":"transferLockedToken","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOperator","type":"address"}],"name":"transferOperator","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"releaseLockedBalance","outputs":[{"name":"releaseAmount","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"lockedBalanceCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"lockedBalances","outputs":[{"name":"owner","type":"address"},{"name":"value","type":"uint256"},{"name":"releaseTime","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"claimOwnership","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"limitSupplyPerYear","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"operator","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"lockedBalanceOf","outputs":[{"name":"value","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"createTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"dailyLimit","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[],"name":"unfreeze","outputs":[{"name":"_unfreezeAmount","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address[]"},{"name":"_bonus","type":"uint256[]"}],"name":"batchTransfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_dailyLimit","type":"uint256"}],"name":"setDailyLimit","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"releasedSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"pendingOwner","outputs":[{"name":"","type":"address"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"releaseAmount","type":"uint256"},{"name":"timestamp","type":"uint256"}],"name":"releaseSupply","outputs":[{"name":"_actualRelease","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"frozenRecordsCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"frozenRecords","outputs":[{"name":"amount","type":"uint256"},{"name":"unfreezeTime","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"type":"function"},{"inputs":[{"name":"initialSupply","type":"uint256"},{"name":"initReleasedSupply","type":"uint256"},{"name":"operator","type":"address"}],"payable":false,"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"receiver","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"releaseTime","type":"uint256"}],"name":"ReleaseSupply","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"unfreezeTime","type":"uint256"}],"name":"UnfreezeAmount","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"releaseTime","type":"uint256"}],"name":"TransferLockedToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"releaseTime","type":"uint256"}],"name":"ReleaseLockedBalance","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"},{"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"}]

60606040526000600660006101000a81548160ff0219169083151502179055506000600960006101000a81548160ff0219169083151502179055506305f5e100600c556200006b633b9aca00600c54620002ff64010000000002620026dc179091906401000000009004565b600d55620000976303938700600c54620002ff64010000000002620026dc179091906401000000009004565b600e55620000c2620f4240600c54620002ff64010000000002620026dc179091906401000000009004565b600f556000601155604060405190810160405280600a81526020017f3230313830313137303100000000000000000000000000000000000000000000815250601290805190602001906200011892919062000337565b50604060405190810160405280600881526020017f536e6574776f726b000000000000000000000000000000000000000000000000815250601390805190602001906200016792919062000337565b50604060405190810160405280600481526020017f534e45540000000000000000000000000000000000000000000000000000000081525060149080519060200190620001b692919062000337565b506008601560006101000a81548160ff021916908360ff1602179055503415620001dc57fe5b60405160608062002dc4833981016040528080519060200190919080519060200190919080519060200190919050505b8282825b805b5b33600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5082600d8190555081600a8190555042600b8190555081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050505b505050620003e6565b60006000828402905060008414806200032357508284828115156200032057fe5b04145b15156200032c57fe5b8091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200037a57805160ff1916838001178555620003ab565b82800160010185558215620003ab579182015b82811115620003aa5782518255916020019190600101906200038d565b5b509050620003ba9190620003be565b5090565b620003e391905b80821115620003df576000816000905550600101620003c5565b5090565b90565b6129ce80620003f66000396000f30060606040523615610189576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461018b5780630851762a14610224578063095ea7b31461028457806318160ddd146102db57806323b872dd1461030157806329605e7714610377578063313ce567146103ad578063323661f6146103d957806334f96971146103ff5780633972323a146104255780634e71e0c81461049357806355dfc97c146104a5578063570ca735146104cb578063593557361461051d5780635a3b7e421461056757806361dcd7ab1461060057806367eeba0c146106265780636a28f0001461064c57806370a082311461067257806388d695b2146106bc5780638da5cb5b1461076b57806395d89b41146107bd578063a9059cbb14610856578063b20d30a9146108ad578063b813c627146108cd578063dd62ed3e146108f3578063e30c39781461095c578063e3bb3445146109ae578063ec00d2a4146109eb578063f25efc4914610a11578063f2fde38b14610a4c575bfe5b341561019357fe5b61019b610a82565b60405180806020018281038252838181518152602001915080519060200190808383600083146101ea575b8051825260208311156101ea576020820191506020810190506020830392506101c6565b505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022c57fe5b61026a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091905050610b20565b604051808215151515815260200191505060405180910390f35b341561028c57fe5b6102c1600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610d6f565b604051808215151515815260200191505060405180910390f35b34156102e357fe5b6102eb610ef9565b6040518082815260200191505060405180910390f35b341561030957fe5b61035d600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610eff565b604051808215151515815260200191505060405180910390f35b341561037f57fe5b6103ab600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111b1565b005b34156103b557fe5b6103bd611291565b604051808260ff1660ff16815260200191505060405180910390f35b34156103e157fe5b6103e96112a4565b6040518082815260200191505060405180910390f35b341561040757fe5b61040f611315565b6040518082815260200191505060405180910390f35b341561042d57fe5b610443600480803590602001909190505061131b565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b341561049b57fe5b6104a3611365565b005b34156104ad57fe5b6104b561146b565b6040518082815260200191505060405180910390f35b34156104d357fe5b6104db611471565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561052557fe5b610551600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611497565b6040518082815260200191505060405180910390f35b341561056f57fe5b61057761154c565b60405180806020018281038252838181518152602001915080519060200190808383600083146105c6575b8051825260208311156105c6576020820191506020810190506020830392506105a2565b505050905090810190601f1680156105f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561060857fe5b6106106115ea565b6040518082815260200191505060405180910390f35b341561062e57fe5b6106366115f0565b6040518082815260200191505060405180910390f35b341561065457fe5b61065c6115f6565b6040518082815260200191505060405180910390f35b341561067a57fe5b6106a6600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116cb565b6040518082815260200191505060405180910390f35b34156106c457fe5b61075160048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611715565b604051808215151515815260200191505060405180910390f35b341561077357fe5b61077b611785565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156107c557fe5b6107cd6117ab565b604051808060200182810382528381815181526020019150805190602001908083836000831461081c575b80518252602083111561081c576020820191506020810190506020830392506107f8565b505050905090810190601f1680156108485780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561085e57fe5b610893600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611849565b604051808215151515815260200191505060405180910390f35b34156108b557fe5b6108cb60048080359060200190919050506119e5565b005b34156108d557fe5b6108dd611a4e565b6040518082815260200191505060405180910390f35b34156108fb57fe5b610946600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a54565b6040518082815260200191505060405180910390f35b341561096457fe5b61096c611adc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109b657fe5b6109d56004808035906020019091908035906020019091905050611b02565b6040518082815260200191505060405180910390f35b34156109f357fe5b6109fb611da6565b6040518082815260200191505060405180910390f35b3415610a1957fe5b610a2f6004808035906020019091905050611dac565b604051808381526020018281526020019250505060405180910390f35b3415610a5457fe5b610a80600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611dd0565b005b60138054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b185780601f10610aed57610100808354040283529160200191610b18565b820191906000526020600020905b815481529060010190602001808311610afb57829003601f168201915b505050505081565b6000600660009054906101000a900460ff16151515610b3f5760006000fd5b6001600660006101000a81548160ff0219169083151502179055504282111515610b695760006000fd5b42610b816301e1338084611e7390919063ffffffff16565b101515610b8e5760006000fd5b610be083600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506060604051908101604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018381525060076000600854815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201559050506008600081548092919060010191905055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8ff82a97675f0e72452c37c968c2c6121849f421aab8583cb6978f1e8263b3ff8585604051808381526020018281526020019250505060405180910390a3600190505b6000600660006101000a81548160ff0219169083151502179055505b9392505050565b60006000821480610dfc57506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b1515610e085760006000fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3600190505b92915050565b600d5481565b60006000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610fd483600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061106983600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506110bf8382611e7390919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b509392505050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561120e5760006000fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561124b5760006000fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b601560009054906101000a900460ff1681565b60006000600090505b60085481101561130d576007600082815260200190815260200160002060020154421015156112ff576007600082815260200190815260200160002060010154820191506112fa81611ead565b611308565b80806001019150505b6112ad565b8191505b5090565b60085481565b60076020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154905083565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113c25760006000fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b565b600e5481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060006000600091505b600854821015611541576007600083815260200190815260200160002090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561153357611530816001015484611e8d90919063ffffffff16565b92505b5b81806001019250506114a2565b8292505b5050919050565b60128054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115e25780601f106115b7576101008083540402835291602001916115e2565b820191906000526020600020905b8154815290600101906020018083116115c557829003601f168201915b505050505081565b600b5481565b600f5481565b600060006000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116595760006000fd5b60009150600090505b6011548110156116c15742601060008381526020019081526020016000206001015410156116b3576010600082815260200190815260200160002060000154820191506116ae8161213b565b6116bc565b80806001019150505b611662565b8192505b5b505090565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60006000600090505b83518110156117795761175f848281518110151561173857fe5b90602001906020020151848381518110151561175057fe5b90602001906020020151611849565b151561176b5760006000fd5b5b808060010191505061171e565b600191505b5092915050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60148054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156118415780601f1061181657610100808354040283529160200191611841565b820191906000526020600020905b81548152906001019060200180831161182457829003601f168201915b505050505081565b600061189d82600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061193282600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190505b92915050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a425760006000fd5b80600f819055505b5b50565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b92915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b615760006000fd5b600b548210158015611b735750428211155b1515611b7f5760006000fd5b611b8882612352565b151515611b955760006000fd5b600f548311151515611ba75760006000fd5b611baf612490565b6000600e54111515611bc15760006000fd5b600e54831115611c4257600d54611be5600e54600a54611e8d90919063ffffffff16565b1115611c1257600d54600a81905550611c0b600a54600d54611e7390919063ffffffff16565b9250611c35565b611c29600e54600a54611e8d90919063ffffffff16565b600a81905550600e5492505b6000600e81905550611cbf565b600d54611c5a84600a54611e8d90919063ffffffff16565b1115611c8757600d54600a81905550611c80600a54600d54611e7390919063ffffffff16565b9250611ca3565b611c9c83600a54611e8d90919063ffffffff16565b600a819055505b611cb883600e54611e7390919063ffffffff16565b600e819055505b604060405190810160405280848152602001611ce762eff10085611e8d90919063ffffffff16565b81525060106000601154815260200190815260200160002060008201518160000155602082015181600101559050506011600081548092919060010191905055507f3f9e3494cddacfc8ffad423303d89b42edd68c349155fc54854d5d6dbe0a5e39338484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a18290505b5b92915050565b60115481565b60106020528060005260406000206000915090508060000154908060010154905082565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e2d5760006000fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b6000828211151515611e8157fe5b81830390505b92915050565b600060008284019050838110151515611ea257fe5b8091505b5092915050565b6000600760008381526020019081526020016000209050611f3e8160010154600460008460000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1f6c0a9bf76af8bc82d309c3041a10d100dafe019e5271d0e418fc57ffab3ab082600101548360020154604051808381526020018281526020019250505060405180910390a2600760006001600854038152602001908152602001600020600760008481526020019081526020016000206000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600182015481600101556002820154816002015590505060076000600160085403815260200190815260200160002060006000820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905560028201600090555050600860008154809291906001900391905055505b5050565b60006010600083815260200190815260200160002090506121ca816000015460046000600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b60046000600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fc34f1fead36337f1ed421262dd3660824fdc849a066c9ae4699ffcd1b6e0ba50600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682600001548360010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a16010600060016011540381526020019081526020016000206010600084815260200190815260200160002060008201548160000155600182015481600101559050506010600060016011540381526020019081526020016000206000600082016000905560018201600090555050601160008154809291906001900391905055505b5050565b600060006000600091506000601154111561248557600090505b6011548110156124845761239461238f62eff10086611e8d90919063ffffffff16565b612552565b6000015161ffff166123bb6010600084815260200190815260200160002060010154612552565b6000015161ffff1614801561241857506123e96123e462eff10086611e8d90919063ffffffff16565b612552565b6020015160ff1661240f6010600084815260200190815260200160002060010154612552565b6020015160ff16145b801561246c575061243d61243862eff10086611e8d90919063ffffffff16565b612552565b6040015160ff166124636010600084815260200190815260200160002060010154612552565b6040015160ff16145b1561247657600191505b5b808060010191505061236c565b5b8192505b5050919050565b426124aa6301e13380600b54611e8d90919063ffffffff16565b1080156124c45750600960009054906101000a900460ff16155b15612504576124e26307270e00600c546126dc90919063ffffffff16565b600e819055506001600960006101000a81548160ff0219169083151502179055505b4261251e6303c26700600b54611e8d90919063ffffffff16565b101561254f57600d54600a54101561254e57612547600a54600d54611e7390919063ffffffff16565b600e819055505b5b5b565b61255a61294e565b60006000600060006000935061256f86612711565b856000019061ffff16908161ffff16815250506125916107b261ffff166127bf565b6125a2866000015161ffff166127bf565b039250826301e285000284019350826107b286600001510361ffff16036301e133800284019350600191505b600c8260ff16111515612627576125e98286600001516127f9565b60ff16620151800290508584820111156126145781856020019060ff16908160ff1681525050612627565b80840193505b81806001019250506125ce565b600191505b61263e856020015186600001516127f9565b60ff168260ff16111515612686578584620151800111156126705781856040019060ff16908160ff1681525050612686565b62015180840193505b818060010192505061262c565b6000856060019060ff16908160ff16815250506000856080019060ff16908160ff168152505060008560a0019060ff16908160ff168152505060008560c0019060ff16908160ff16815250505b50505050919050565b60006000828402905060008414806126fe57508284828115156126fb57fe5b04145b151561270657fe5b8091505b5092915050565b6000600060006000600092506301e133808581151561272c57fe5b046107b261ffff160191506127466107b261ffff166127bf565b6127538361ffff166127bf565b039050806301e285000283019250806107b2830361ffff16036301e1338002830192505b848311156127b35761278b600183036128cc565b1561279e576301e28500830392506127a8565b6301e13380830392505b600182039150612777565b8193505b505050919050565b6000600182039150610190828115156127d457fe5b046064838115156127e157fe5b046004848115156127ee57fe5b04030190505b919050565b600060018360ff161480612810575060038360ff16145b8061281e575060058360ff16145b8061282c575060078360ff16145b8061283a575060088360ff16145b806128485750600a8360ff16145b806128565750600c8360ff16145b1561286457601f90506128c6565b60048360ff161480612879575060068360ff16145b80612887575060098360ff16145b806128955750600b8360ff16145b156128a357601e90506128c6565b6128ac826128cc565b156128ba57601d90506128c6565b601c90506128c6565b5b5b5b92915050565b6000600060048361ffff168115156128e057fe5b0661ffff161415156128f55760009050612949565b600060648361ffff1681151561290757fe5b0661ffff1614151561291c5760019050612949565b60006101908361ffff1681151561292f57fe5b0661ffff161415156129445760009050612949565b600190505b919050565b60e060405190810160405280600061ffff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff16815250905600a165627a7a72305820bfd95ccc399f89bd97f1d70eefaa10821b0bd6a8c538a079354814250fc262000029000000000000000000000000000000000000000000000000016345785d8a0000000000000000000000000000000000000000000000000000016345785d8a000000000000000000000000000092258216ce951732d60b428fd9d0d1a626835e57

Deployed Bytecode

0x60606040523615610189576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461018b5780630851762a14610224578063095ea7b31461028457806318160ddd146102db57806323b872dd1461030157806329605e7714610377578063313ce567146103ad578063323661f6146103d957806334f96971146103ff5780633972323a146104255780634e71e0c81461049357806355dfc97c146104a5578063570ca735146104cb578063593557361461051d5780635a3b7e421461056757806361dcd7ab1461060057806367eeba0c146106265780636a28f0001461064c57806370a082311461067257806388d695b2146106bc5780638da5cb5b1461076b57806395d89b41146107bd578063a9059cbb14610856578063b20d30a9146108ad578063b813c627146108cd578063dd62ed3e146108f3578063e30c39781461095c578063e3bb3445146109ae578063ec00d2a4146109eb578063f25efc4914610a11578063f2fde38b14610a4c575bfe5b341561019357fe5b61019b610a82565b60405180806020018281038252838181518152602001915080519060200190808383600083146101ea575b8051825260208311156101ea576020820191506020810190506020830392506101c6565b505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022c57fe5b61026a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091905050610b20565b604051808215151515815260200191505060405180910390f35b341561028c57fe5b6102c1600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610d6f565b604051808215151515815260200191505060405180910390f35b34156102e357fe5b6102eb610ef9565b6040518082815260200191505060405180910390f35b341561030957fe5b61035d600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610eff565b604051808215151515815260200191505060405180910390f35b341561037f57fe5b6103ab600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111b1565b005b34156103b557fe5b6103bd611291565b604051808260ff1660ff16815260200191505060405180910390f35b34156103e157fe5b6103e96112a4565b6040518082815260200191505060405180910390f35b341561040757fe5b61040f611315565b6040518082815260200191505060405180910390f35b341561042d57fe5b610443600480803590602001909190505061131b565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b341561049b57fe5b6104a3611365565b005b34156104ad57fe5b6104b561146b565b6040518082815260200191505060405180910390f35b34156104d357fe5b6104db611471565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561052557fe5b610551600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611497565b6040518082815260200191505060405180910390f35b341561056f57fe5b61057761154c565b60405180806020018281038252838181518152602001915080519060200190808383600083146105c6575b8051825260208311156105c6576020820191506020810190506020830392506105a2565b505050905090810190601f1680156105f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561060857fe5b6106106115ea565b6040518082815260200191505060405180910390f35b341561062e57fe5b6106366115f0565b6040518082815260200191505060405180910390f35b341561065457fe5b61065c6115f6565b6040518082815260200191505060405180910390f35b341561067a57fe5b6106a6600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116cb565b6040518082815260200191505060405180910390f35b34156106c457fe5b61075160048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611715565b604051808215151515815260200191505060405180910390f35b341561077357fe5b61077b611785565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156107c557fe5b6107cd6117ab565b604051808060200182810382528381815181526020019150805190602001908083836000831461081c575b80518252602083111561081c576020820191506020810190506020830392506107f8565b505050905090810190601f1680156108485780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561085e57fe5b610893600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611849565b604051808215151515815260200191505060405180910390f35b34156108b557fe5b6108cb60048080359060200190919050506119e5565b005b34156108d557fe5b6108dd611a4e565b6040518082815260200191505060405180910390f35b34156108fb57fe5b610946600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a54565b6040518082815260200191505060405180910390f35b341561096457fe5b61096c611adc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109b657fe5b6109d56004808035906020019091908035906020019091905050611b02565b6040518082815260200191505060405180910390f35b34156109f357fe5b6109fb611da6565b6040518082815260200191505060405180910390f35b3415610a1957fe5b610a2f6004808035906020019091905050611dac565b604051808381526020018281526020019250505060405180910390f35b3415610a5457fe5b610a80600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611dd0565b005b60138054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b185780601f10610aed57610100808354040283529160200191610b18565b820191906000526020600020905b815481529060010190602001808311610afb57829003601f168201915b505050505081565b6000600660009054906101000a900460ff16151515610b3f5760006000fd5b6001600660006101000a81548160ff0219169083151502179055504282111515610b695760006000fd5b42610b816301e1338084611e7390919063ffffffff16565b101515610b8e5760006000fd5b610be083600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506060604051908101604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018381525060076000600854815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201559050506008600081548092919060010191905055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8ff82a97675f0e72452c37c968c2c6121849f421aab8583cb6978f1e8263b3ff8585604051808381526020018281526020019250505060405180910390a3600190505b6000600660006101000a81548160ff0219169083151502179055505b9392505050565b60006000821480610dfc57506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b1515610e085760006000fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3600190505b92915050565b600d5481565b60006000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610fd483600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061106983600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506110bf8382611e7390919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b509392505050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561120e5760006000fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561124b5760006000fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b601560009054906101000a900460ff1681565b60006000600090505b60085481101561130d576007600082815260200190815260200160002060020154421015156112ff576007600082815260200190815260200160002060010154820191506112fa81611ead565b611308565b80806001019150505b6112ad565b8191505b5090565b60085481565b60076020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154905083565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113c25760006000fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b565b600e5481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060006000600091505b600854821015611541576007600083815260200190815260200160002090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561153357611530816001015484611e8d90919063ffffffff16565b92505b5b81806001019250506114a2565b8292505b5050919050565b60128054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115e25780601f106115b7576101008083540402835291602001916115e2565b820191906000526020600020905b8154815290600101906020018083116115c557829003601f168201915b505050505081565b600b5481565b600f5481565b600060006000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116595760006000fd5b60009150600090505b6011548110156116c15742601060008381526020019081526020016000206001015410156116b3576010600082815260200190815260200160002060000154820191506116ae8161213b565b6116bc565b80806001019150505b611662565b8192505b5b505090565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60006000600090505b83518110156117795761175f848281518110151561173857fe5b90602001906020020151848381518110151561175057fe5b90602001906020020151611849565b151561176b5760006000fd5b5b808060010191505061171e565b600191505b5092915050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60148054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156118415780601f1061181657610100808354040283529160200191611841565b820191906000526020600020905b81548152906001019060200180831161182457829003601f168201915b505050505081565b600061189d82600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061193282600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190505b92915050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a425760006000fd5b80600f819055505b5b50565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b92915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b615760006000fd5b600b548210158015611b735750428211155b1515611b7f5760006000fd5b611b8882612352565b151515611b955760006000fd5b600f548311151515611ba75760006000fd5b611baf612490565b6000600e54111515611bc15760006000fd5b600e54831115611c4257600d54611be5600e54600a54611e8d90919063ffffffff16565b1115611c1257600d54600a81905550611c0b600a54600d54611e7390919063ffffffff16565b9250611c35565b611c29600e54600a54611e8d90919063ffffffff16565b600a81905550600e5492505b6000600e81905550611cbf565b600d54611c5a84600a54611e8d90919063ffffffff16565b1115611c8757600d54600a81905550611c80600a54600d54611e7390919063ffffffff16565b9250611ca3565b611c9c83600a54611e8d90919063ffffffff16565b600a819055505b611cb883600e54611e7390919063ffffffff16565b600e819055505b604060405190810160405280848152602001611ce762eff10085611e8d90919063ffffffff16565b81525060106000601154815260200190815260200160002060008201518160000155602082015181600101559050506011600081548092919060010191905055507f3f9e3494cddacfc8ffad423303d89b42edd68c349155fc54854d5d6dbe0a5e39338484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a18290505b5b92915050565b60115481565b60106020528060005260406000206000915090508060000154908060010154905082565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e2d5760006000fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b6000828211151515611e8157fe5b81830390505b92915050565b600060008284019050838110151515611ea257fe5b8091505b5092915050565b6000600760008381526020019081526020016000209050611f3e8160010154600460008460000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1f6c0a9bf76af8bc82d309c3041a10d100dafe019e5271d0e418fc57ffab3ab082600101548360020154604051808381526020018281526020019250505060405180910390a2600760006001600854038152602001908152602001600020600760008481526020019081526020016000206000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600182015481600101556002820154816002015590505060076000600160085403815260200190815260200160002060006000820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905560028201600090555050600860008154809291906001900391905055505b5050565b60006010600083815260200190815260200160002090506121ca816000015460046000600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b60046000600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fc34f1fead36337f1ed421262dd3660824fdc849a066c9ae4699ffcd1b6e0ba50600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682600001548360010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a16010600060016011540381526020019081526020016000206010600084815260200190815260200160002060008201548160000155600182015481600101559050506010600060016011540381526020019081526020016000206000600082016000905560018201600090555050601160008154809291906001900391905055505b5050565b600060006000600091506000601154111561248557600090505b6011548110156124845761239461238f62eff10086611e8d90919063ffffffff16565b612552565b6000015161ffff166123bb6010600084815260200190815260200160002060010154612552565b6000015161ffff1614801561241857506123e96123e462eff10086611e8d90919063ffffffff16565b612552565b6020015160ff1661240f6010600084815260200190815260200160002060010154612552565b6020015160ff16145b801561246c575061243d61243862eff10086611e8d90919063ffffffff16565b612552565b6040015160ff166124636010600084815260200190815260200160002060010154612552565b6040015160ff16145b1561247657600191505b5b808060010191505061236c565b5b8192505b5050919050565b426124aa6301e13380600b54611e8d90919063ffffffff16565b1080156124c45750600960009054906101000a900460ff16155b15612504576124e26307270e00600c546126dc90919063ffffffff16565b600e819055506001600960006101000a81548160ff0219169083151502179055505b4261251e6303c26700600b54611e8d90919063ffffffff16565b101561254f57600d54600a54101561254e57612547600a54600d54611e7390919063ffffffff16565b600e819055505b5b5b565b61255a61294e565b60006000600060006000935061256f86612711565b856000019061ffff16908161ffff16815250506125916107b261ffff166127bf565b6125a2866000015161ffff166127bf565b039250826301e285000284019350826107b286600001510361ffff16036301e133800284019350600191505b600c8260ff16111515612627576125e98286600001516127f9565b60ff16620151800290508584820111156126145781856020019060ff16908160ff1681525050612627565b80840193505b81806001019250506125ce565b600191505b61263e856020015186600001516127f9565b60ff168260ff16111515612686578584620151800111156126705781856040019060ff16908160ff1681525050612686565b62015180840193505b818060010192505061262c565b6000856060019060ff16908160ff16815250506000856080019060ff16908160ff168152505060008560a0019060ff16908160ff168152505060008560c0019060ff16908160ff16815250505b50505050919050565b60006000828402905060008414806126fe57508284828115156126fb57fe5b04145b151561270657fe5b8091505b5092915050565b6000600060006000600092506301e133808581151561272c57fe5b046107b261ffff160191506127466107b261ffff166127bf565b6127538361ffff166127bf565b039050806301e285000283019250806107b2830361ffff16036301e1338002830192505b848311156127b35761278b600183036128cc565b1561279e576301e28500830392506127a8565b6301e13380830392505b600182039150612777565b8193505b505050919050565b6000600182039150610190828115156127d457fe5b046064838115156127e157fe5b046004848115156127ee57fe5b04030190505b919050565b600060018360ff161480612810575060038360ff16145b8061281e575060058360ff16145b8061282c575060078360ff16145b8061283a575060088360ff16145b806128485750600a8360ff16145b806128565750600c8360ff16145b1561286457601f90506128c6565b60048360ff161480612879575060068360ff16145b80612887575060098360ff16145b806128955750600b8360ff16145b156128a357601e90506128c6565b6128ac826128cc565b156128ba57601d90506128c6565b601c90506128c6565b5b5b5b92915050565b6000600060048361ffff168115156128e057fe5b0661ffff161415156128f55760009050612949565b600060648361ffff1681151561290757fe5b0661ffff1614151561291c5760019050612949565b60006101908361ffff1681151561292f57fe5b0661ffff161415156129445760009050612949565b600190505b919050565b60e060405190810160405280600061ffff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff16815250905600a165627a7a72305820bfd95ccc399f89bd97f1d70eefaa10821b0bd6a8c538a079354814250fc262000029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000000000000000000000000000016345785d8a0000000000000000000000000000000000000000000000000000016345785d8a000000000000000000000000000092258216ce951732d60b428fd9d0d1a626835e57

-----Decoded View---------------
Arg [0] : initialSupply (uint256): 100000000000000000
Arg [1] : initReleasedSupply (uint256): 100000000000000000
Arg [2] : operator (address): 0x92258216cE951732d60B428FD9D0d1A626835E57

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000000000000000000000000000016345785d8a0000
Arg [1] : 000000000000000000000000000000000000000000000000016345785d8a0000
Arg [2] : 00000000000000000000000092258216ce951732d60b428fd9d0d1a626835e57


Swarm Source

bzzr://bfd95ccc399f89bd97f1d70eefaa10821b0bd6a8c538a079354814250fc26200
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.