Sponsored Link:   trade.io - The Future of Crypto Trading - A Better, Faster, Smarter Crypto Exchange - Pre-Register Now!
Contract Overview
Balance: 0 Ether
Ether Value: $0
Transactions: 2440 txns
Token Contract: Snetwork (SNET)
 Latest 25 txns from a total Of 2440 transactions

TxHash Age From To Value [TxFee]
0x742a5bc18fd1d1d192a4ad4539c999941cf7ad58e4af4e944d54dac3fa368e412 hrs 6 mins ago0xd012f1ccd3f1c85d0cafd6723c53fa455833d2c2  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00180789
0x14b81f02dfd7c280bb861333270c51cda6912c8ac7dc28bbf9f6b012afba8ed92 hrs 56 mins agoGate_io  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00034702778
0xd1c1695aa41868dbe2331524924f1c4af6a8257244dbd172e28d4a15b888f9287 hrs 29 mins ago0x0b078896a3d9166da5c37ae52a5809aca48630d4  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0036718
0x8958b90d51e18ab6d7fad5ff7b57f14ccf7def1c6260227cc78a3760a379c43d1 day 48 mins ago0x926a3ad21dac6bfc8315633007f6fb321401d511  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00043564
0x48584043780f35b7ee7414fecd7ec0b4f115030f4b2c0cb5216ec5e04df0633f1 day 55 mins ago0x7deb4c0b97854d133b807b9a72923526fac94c62  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000293751343
0xd5757a548fde6b43f1d6f91b3fe73de582a0c7da16db6ea7907c278a6d603a5b1 day 4 hrs ago0x0b078896a3d9166da5c37ae52a5809aca48630d4  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0036718
0x478625b706f701dcb1a0e9a499234c8ce24d43d0a6157decbce937a907092bba1 day 5 hrs ago0x758716e7e12f2f8b9e9d76d1e066d6f0ff0e299b  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00201597
0xa147dcdbf9390e264dd29b21392729ee230541dea26099c3f602d4e693f0d5f21 day 6 hrs ago0x0b078896a3d9166da5c37ae52a5809aca48630d4  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0036718
0x9de33122b58fc4c7268f30b3a3941ccc3e6fe33cce7f478ccacc38feb70b820a1 day 10 hrs ago0x758716e7e12f2f8b9e9d76d1e066d6f0ff0e299b  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00284801
0x5c0c712a123d105c0fbcdf8db838bbd77081c12f857268e986ffe34fc0595b4a1 day 14 hrs ago0xf452c39a5dbe5495e52858e931594dfd64bae0be  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00043436
0xf9b1ac66310be1bf43a8f50c3a801bf2fcf0a827705810fe61dd39b2dc3530e51 day 14 hrs ago0x926a3ad21dac6bfc8315633007f6fb321401d511  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00043436
0x50b86ff8981c14d3dfec43bd56ac46311e05e4bc0328c488392b778102b1fd2c1 day 14 hrs ago0xd012f1ccd3f1c85d0cafd6723c53fa455833d2c2  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00181237
0x7cb036433a75cb363c53e943657b6f8bca0433359c76424041d2c7d789eb40ed2 days 58 mins ago0x7deb4c0b97854d133b807b9a72923526fac94c62  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000293751343
0x05a81054eaa36d34918e4d9296be713432a061469a0f02f062e14da0752a8dda2 days 1 hr agoGate_io  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000403898
0x1cfabf9637f1931085051e7434a6c3f088b24a54b6ab19fd879dc975406d8c3c2 days 6 hrs agoGate_io  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0004846776
0x432e7dc80455d8215e8cd03109acfb2d4feb0e8ea6846aef7a0bfe819dfc8e4b2 days 6 hrs agoGate_io  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0006826776
0x5f4241324e0b21d47ee2adb41532184cc9ede8176959a696926ae8b2b878e4282 days 6 hrs ago0x0b078896a3d9166da5c37ae52a5809aca48630d4  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0036718
0xa6ef6b96748c78727941d25392c238cae8764d273eb236e1529f76ac331ba7512 days 7 hrs ago0x0f3bd8b2f28b24b3e275e39549ee0bdc33992e19  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00129135
0x97f3dff5fa8f12ae21d8a2e93421d8d83c5b45d28c8a9738c454b025ab98b0c82 days 10 hrs agoGate_io  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000568898
0xab3298ede1fac2b8bf7f24c4ecb1fcdff5fb43ad166cfd718c652713b275c3e02 days 12 hrs agoGate_io  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000568898
0x9f38b2325c357484232e070977b8b27bec2a1e02eab4ff6d5bcb324312e18e862 days 19 hrs ago0xf32d70c6682be2e59d5b1c7ff62a1e7c3f5fdca7  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000293751343
0xcf1ea66c3518a72330140124714cd5f31c61be9e8dd2e4c3e480ac1dbfa71dd62 days 19 hrs ago0x7deb4c0b97854d133b807b9a72923526fac94c62  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.000293751343
0xbb88a70f2fbcf420b4e32f5304f652447c0b578ee3a9355ceab1623bb7867d892 days 20 hrs ago0x245accedf883c7747b1d3c773526224b8a5d17c7  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00036782
0xdb0404bdb65d86961fe1c2a8d819d2dadbf1f855d79873747035f1af8e8c27362 days 20 hrs ago0xfb97d6415484738c0572110256b4cd18546ba040  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.0021782
0x20ba1e1257df60ae4e60e3bc278d301bdeb399a9cae11f97ffc82830dc4f9a0f2 days 21 hrs ago0x245accedf883c7747b1d3c773526224b8a5d17c7  IN   0xff19138b039d938db46bdda0067dc4ba132ec71c0 Ether0.00021782
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
View All
ParentTxHash Block Age From To Value
Warning: The compiled contract might be susceptible to ZeroFunctionSelector (very low-severity), DelegateCallReturnValue (low-severity), ECRecoverMalformedInput (medium-severity), SkipEmptyStringLiteral (low-severity) Solidity compiler bugs.

Contract Source Code Verified (Exact match)
Contract Name: Snetwork
Compiler Version: v0.4.11+commit.68ef5810
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

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 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"}]

  Contract Creation Code Switch To Opcodes View
60606040526000600660006101000a81548160ff0219169083151502179055506000600960006101000a81548160ff0219169083151502179055506305f5e100600c556200006b633b9aca00600c54620002ff64010000000002620026dc179091906401000000009004565b600d55620000976303938700600c54620002ff64010000000002620026dc179091906401000000009004565b600e55620000c2620f4240600c54620002ff64010000000002620026dc179091906401000000009004565b600f556000601155604060405190810160405280600a81526020017f3230313830313137303100000000000000000000000000000000000000000000815250601290805190602001906200011892919062000337565b50604060405190810160405280600881526020017f536e6574776f726b000000000000000000000000000000000000000000000000815250601390805190602001906200016792919062000337565b50604060405190810160405280600481526020017f534e45540000000000000000000000000000000000000000000000000000000081525060149080519060200190620001b692919062000337565b506008601560006101000a81548160ff021916908360ff1602179055503415620001dc57fe5b60405160608062002dc4833981016040528080519060200190919080519060200190919080519060200190919050505b8282825b805b5b33600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5082600d8190555081600a8190555042600b8190555081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050505b505050620003e6565b60006000828402905060008414806200032357508284828115156200032057fe5b04145b15156200032c57fe5b8091505b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200037a57805160ff1916838001178555620003ab565b82800160010185558215620003ab579182015b82811115620003aa5782518255916020019190600101906200038d565b5b509050620003ba9190620003be565b5090565b620003e391905b80821115620003df576000816000905550600101620003c5565b5090565b90565b6129ce80620003f66000396000f30060606040523615610189576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461018b5780630851762a14610224578063095ea7b31461028457806318160ddd146102db57806323b872dd1461030157806329605e7714610377578063313ce567146103ad578063323661f6146103d957806334f96971146103ff5780633972323a146104255780634e71e0c81461049357806355dfc97c146104a5578063570ca735146104cb578063593557361461051d5780635a3b7e421461056757806361dcd7ab1461060057806367eeba0c146106265780636a28f0001461064c57806370a082311461067257806388d695b2146106bc5780638da5cb5b1461076b57806395d89b41146107bd578063a9059cbb14610856578063b20d30a9146108ad578063b813c627146108cd578063dd62ed3e146108f3578063e30c39781461095c578063e3bb3445146109ae578063ec00d2a4146109eb578063f25efc4914610a11578063f2fde38b14610a4c575bfe5b341561019357fe5b61019b610a82565b60405180806020018281038252838181518152602001915080519060200190808383600083146101ea575b8051825260208311156101ea576020820191506020810190506020830392506101c6565b505050905090810190601f1680156102165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561022c57fe5b61026a600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091908035906020019091905050610b20565b604051808215151515815260200191505060405180910390f35b341561028c57fe5b6102c1600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610d6f565b604051808215151515815260200191505060405180910390f35b34156102e357fe5b6102eb610ef9565b6040518082815260200191505060405180910390f35b341561030957fe5b61035d600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610eff565b604051808215151515815260200191505060405180910390f35b341561037f57fe5b6103ab600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506111b1565b005b34156103b557fe5b6103bd611291565b604051808260ff1660ff16815260200191505060405180910390f35b34156103e157fe5b6103e96112a4565b6040518082815260200191505060405180910390f35b341561040757fe5b61040f611315565b6040518082815260200191505060405180910390f35b341561042d57fe5b610443600480803590602001909190505061131b565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390f35b341561049b57fe5b6104a3611365565b005b34156104ad57fe5b6104b561146b565b6040518082815260200191505060405180910390f35b34156104d357fe5b6104db611471565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561052557fe5b610551600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611497565b6040518082815260200191505060405180910390f35b341561056f57fe5b61057761154c565b60405180806020018281038252838181518152602001915080519060200190808383600083146105c6575b8051825260208311156105c6576020820191506020810190506020830392506105a2565b505050905090810190601f1680156105f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561060857fe5b6106106115ea565b6040518082815260200191505060405180910390f35b341561062e57fe5b6106366115f0565b6040518082815260200191505060405180910390f35b341561065457fe5b61065c6115f6565b6040518082815260200191505060405180910390f35b341561067a57fe5b6106a6600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506116cb565b6040518082815260200191505060405180910390f35b34156106c457fe5b61075160048080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091905050611715565b604051808215151515815260200191505060405180910390f35b341561077357fe5b61077b611785565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156107c557fe5b6107cd6117ab565b604051808060200182810382528381815181526020019150805190602001908083836000831461081c575b80518252602083111561081c576020820191506020810190506020830392506107f8565b505050905090810190601f1680156108485780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561085e57fe5b610893600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050611849565b604051808215151515815260200191505060405180910390f35b34156108b557fe5b6108cb60048080359060200190919050506119e5565b005b34156108d557fe5b6108dd611a4e565b6040518082815260200191505060405180910390f35b34156108fb57fe5b610946600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a54565b6040518082815260200191505060405180910390f35b341561096457fe5b61096c611adc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34156109b657fe5b6109d56004808035906020019091908035906020019091905050611b02565b6040518082815260200191505060405180910390f35b34156109f357fe5b6109fb611da6565b6040518082815260200191505060405180910390f35b3415610a1957fe5b610a2f6004808035906020019091905050611dac565b604051808381526020018281526020019250505060405180910390f35b3415610a5457fe5b610a80600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611dd0565b005b60138054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b185780601f10610aed57610100808354040283529160200191610b18565b820191906000526020600020905b815481529060010190602001808311610afb57829003601f168201915b505050505081565b6000600660009054906101000a900460ff16151515610b3f5760006000fd5b6001600660006101000a81548160ff0219169083151502179055504282111515610b695760006000fd5b42610b816301e1338084611e7390919063ffffffff16565b101515610b8e5760006000fd5b610be083600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506060604051908101604052808573ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018381525060076000600854815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201559050506008600081548092919060010191905055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8ff82a97675f0e72452c37c968c2c6121849f421aab8583cb6978f1e8263b3ff8585604051808381526020018281526020019250505060405180910390a3600190505b6000600660006101000a81548160ff0219169083151502179055505b9392505050565b60006000821480610dfc57506000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b1515610e085760006000fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a3600190505b92915050565b600d5481565b60006000600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050610fd483600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061106983600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506110bf8382611e7390919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505b509392505050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561120e5760006000fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561124b5760006000fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b601560009054906101000a900460ff1681565b60006000600090505b60085481101561130d576007600082815260200190815260200160002060020154421015156112ff576007600082815260200190815260200160002060010154820191506112fa81611ead565b611308565b80806001019150505b6112ad565b8191505b5090565b60085481565b60076020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010154908060020154905083565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156113c25760006000fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b565b600e5481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060006000600091505b600854821015611541576007600083815260200190815260200160002090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561153357611530816001015484611e8d90919063ffffffff16565b92505b5b81806001019250506114a2565b8292505b5050919050565b60128054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115e25780601f106115b7576101008083540402835291602001916115e2565b820191906000526020600020905b8154815290600101906020018083116115c557829003601f168201915b505050505081565b600b5481565b600f5481565b600060006000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156116595760006000fd5b60009150600090505b6011548110156116c15742601060008381526020019081526020016000206001015410156116b3576010600082815260200190815260200160002060000154820191506116ae8161213b565b6116bc565b80806001019150505b611662565b8192505b5b505090565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b919050565b60006000600090505b83518110156117795761175f848281518110151561173857fe5b90602001906020020151848381518110151561175057fe5b90602001906020020151611849565b151561176b5760006000fd5b5b808060010191505061171e565b600191505b5092915050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60148054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156118415780601f1061181657610100808354040283529160200191611841565b820191906000526020600020905b81548152906001019060200180831161182457829003601f168201915b505050505081565b600061189d82600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061193282600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190505b92915050565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a425760006000fd5b80600f819055505b5b50565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490505b92915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b615760006000fd5b600b548210158015611b735750428211155b1515611b7f5760006000fd5b611b8882612352565b151515611b955760006000fd5b600f548311151515611ba75760006000fd5b611baf612490565b6000600e54111515611bc15760006000fd5b600e54831115611c4257600d54611be5600e54600a54611e8d90919063ffffffff16565b1115611c1257600d54600a81905550611c0b600a54600d54611e7390919063ffffffff16565b9250611c35565b611c29600e54600a54611e8d90919063ffffffff16565b600a81905550600e5492505b6000600e81905550611cbf565b600d54611c5a84600a54611e8d90919063ffffffff16565b1115611c8757600d54600a81905550611c80600a54600d54611e7390919063ffffffff16565b9250611ca3565b611c9c83600a54611e8d90919063ffffffff16565b600a819055505b611cb883600e54611e7390919063ffffffff16565b600e819055505b604060405190810160405280848152602001611ce762eff10085611e8d90919063ffffffff16565b81525060106000601154815260200190815260200160002060008201518160000155602082015181600101559050506011600081548092919060010191905055507f3f9e3494cddacfc8ffad423303d89b42edd68c349155fc54854d5d6dbe0a5e39338484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a18290505b5b92915050565b60115481565b60106020528060005260406000206000915090508060000154908060010154905082565b600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e2d5760006000fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b50565b6000828211151515611e8157fe5b81830390505b92915050565b600060008284019050838110151515611ea257fe5b8091505b5092915050565b6000600760008381526020019081526020016000209050611f3e8160010154600460008460000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b600460008360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f1f6c0a9bf76af8bc82d309c3041a10d100dafe019e5271d0e418fc57ffab3ab082600101548360020154604051808381526020018281526020019250505060405180910390a2600760006001600854038152602001908152602001600020600760008481526020019081526020016000206000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600182015481600101556002820154816002015590505060076000600160085403815260200190815260200160002060006000820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905560028201600090555050600860008154809291906001900391905055505b5050565b60006010600083815260200190815260200160002090506121ca816000015460046000600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e8d90919063ffffffff16565b60046000600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507fc34f1fead36337f1ed421262dd3660824fdc849a066c9ae4699ffcd1b6e0ba50600060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682600001548360010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a16010600060016011540381526020019081526020016000206010600084815260200190815260200160002060008201548160000155600182015481600101559050506010600060016011540381526020019081526020016000206000600082016000905560018201600090555050601160008154809291906001900391905055505b5050565b600060006000600091506000601154111561248557600090505b6011548110156124845761239461238f62eff10086611e8d90919063ffffffff16565b612552565b6000015161ffff166123bb6010600084815260200190815260200160002060010154612552565b6000015161ffff1614801561241857506123e96123e462eff10086611e8d90919063ffffffff16565b612552565b6020015160ff1661240f6010600084815260200190815260200160002060010154612552565b6020015160ff16145b801561246c575061243d61243862eff10086611e8d90919063ffffffff16565b612552565b6040015160ff166124636010600084815260200190815260200160002060010154612552565b6040015160ff16145b1561247657600191505b5b808060010191505061236c565b5b8192505b5050919050565b426124aa6301e13380600b54611e8d90919063ffffffff16565b1080156124c45750600960009054906101000a900460ff16155b15612504576124e26307270e00600c546126dc90919063ffffffff16565b600e819055506001600960006101000a81548160ff0219169083151502179055505b4261251e6303c26700600b54611e8d90919063ffffffff16565b101561254f57600d54600a54101561254e57612547600a54600d54611e7390919063ffffffff16565b600e819055505b5b5b565b61255a61294e565b60006000600060006000935061256f86612711565b856000019061ffff16908161ffff16815250506125916107b261ffff166127bf565b6125a2866000015161ffff166127bf565b039250826301e285000284019350826107b286600001510361ffff16036301e133800284019350600191505b600c8260ff16111515612627576125e98286600001516127f9565b60ff16620151800290508584820111156126145781856020019060ff16908160ff1681525050612627565b80840193505b81806001019250506125ce565b600191505b61263e856020015186600001516127f9565b60ff168260ff16111515612686578584620151800111156126705781856040019060ff16908160ff1681525050612686565b62015180840193505b818060010192505061262c565b6000856060019060ff16908160ff16815250506000856080019060ff16908160ff168152505060008560a0019060ff16908160ff168152505060008560c0019060ff16908160ff16815250505b50505050919050565b60006000828402905060008414806126fe57508284828115156126fb57fe5b04145b151561270657fe5b8091505b5092915050565b6000600060006000600092506301e133808581151561272c57fe5b046107b261ffff160191506127466107b261ffff166127bf565b6127538361ffff166127bf565b039050806301e285000283019250806107b2830361ffff16036301e1338002830192505b848311156127b35761278b600183036128cc565b1561279e576301e28500830392506127a8565b6301e13380830392505b600182039150612777565b8193505b505050919050565b6000600182039150610190828115156127d457fe5b046064838115156127e157fe5b046004848115156127ee57fe5b04030190505b919050565b600060018360ff161480612810575060038360ff16145b8061281e575060058360ff16145b8061282c575060078360ff16145b8061283a575060088360ff16145b806128485750600a8360ff16145b806128565750600c8360ff16145b1561286457601f90506128c6565b60048360ff161480612879575060068360ff16145b80612887575060098360ff16145b806128955750600b8360ff16145b156128a357601e90506128c6565b6128ac826128cc565b156128ba57601d90506128c6565b601c90506128c6565b5b5b5b92915050565b6000600060048361ffff168115156128e057fe5b0661ffff161415156128f55760009050612949565b600060648361ffff1681151561290757fe5b0661ffff1614151561291c5760019050612949565b60006101908361ffff1681151561292f57fe5b0661ffff161415156129445760009050612949565b600190505b919050565b60e060405190810160405280600061ffff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff168152602001600060ff16815250905600a165627a7a72305820bfd95ccc399f89bd97f1d70eefaa10821b0bd6a8c538a079354814250fc262000029000000000000000000000000000000000000000000000000016345785d8a0000000000000000000000000000000000000000000000000000016345785d8a000000000000000000000000000092258216ce951732d60b428fd9d0d1a626835e57

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

-----Decoded View---------------
Found 3 constructor arguments :
Arg [0] : 000000000000000000000000000000000000000000000000016345785d8a0000
Arg [1] : 000000000000000000000000000000000000000000000000016345785d8a0000
Arg [2] : 00000000000000000000000092258216ce951732d60b428fd9d0d1a626835e57


   Swarm Source:
bzzr://bfd95ccc399f89bd97f1d70eefaa10821b0bd6a8c538a079354814250fc26200

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.