MATIC Price: $1.09 (+1.69%)
Gas: 71 GWei
 

Overview

MATIC Balance

Polygon PoS Chain LogoPolygon PoS Chain LogoPolygon PoS Chain Logo0 MATIC

MATIC Value

$0.00

Token Holdings

Sponsored

Transaction Hash
Method
Block
From
To
Value
Transfer524257342024-01-17 9:45:3945 days 20 hrs ago1705484739IN
0x0C9370...61446382
0 MATIC0.0028594991.67115314
Lock518825312024-01-03 7:06:5359 days 23 hrs ago1704265613IN
0x0C9370...61446382
0 MATIC0.02080364178.69013419
Unlock518825252024-01-03 7:06:3959 days 23 hrs ago1704265599IN
0x0C9370...61446382
0 MATIC0.00901173164.41176045
Lock518825122024-01-03 7:06:1359 days 23 hrs ago1704265573IN
0x0C9370...61446382
0 MATIC0.01946802167.21807393
Unlock518824972024-01-03 7:05:4159 days 23 hrs ago1704265541IN
0x0C9370...61446382
0 MATIC0.00933419170.29468652
Lock518824822024-01-03 7:05:0959 days 23 hrs ago1704265509IN
0x0C9370...61446382
0 MATIC0.02090792179.56734731
Unlock518824752024-01-03 7:04:5359 days 23 hrs ago1704265493IN
0x0C9370...61446382
0 MATIC0.00957384174.66703102
Lock518824652024-01-03 7:04:3359 days 23 hrs ago1704265473IN
0x0C9370...61446382
0 MATIC0.02040976175.28888589
Unlock518824562024-01-03 7:04:1359 days 23 hrs ago1704265453IN
0x0C9370...61446382
0 MATIC0.00898328163.89272747
Lock518824452024-01-03 7:03:4659 days 23 hrs ago1704265426IN
0x0C9370...61446382
0 MATIC0.01911494164.16833854
Unlock518824352024-01-03 7:03:2659 days 23 hrs ago1704265406IN
0x0C9370...61446382
0 MATIC0.00926941169.11293349
Lock518824212024-01-03 7:02:5659 days 23 hrs ago1704265376IN
0x0C9370...61446382
0 MATIC0.02006866172.35939921
Unlock518824112024-01-03 7:02:3459 days 23 hrs ago1704265354IN
0x0C9370...61446382
0 MATIC0.00977768178.38583317
Lock518823892024-01-03 7:01:4859 days 23 hrs ago1704265308IN
0x0C9370...61446382
0 MATIC0.02194952188.51308152
Unlock518823772024-01-03 7:01:1059 days 23 hrs ago1704265270IN
0x0C9370...61446382
0 MATIC0.00890946162.54596558
Lock518823692024-01-03 7:00:3859 days 23 hrs ago1704265238IN
0x0C9370...61446382
0 MATIC0.01699873145.99332391
Unlock518823612024-01-03 7:00:1659 days 23 hrs ago1704265216IN
0x0C9370...61446382
0 MATIC0.00811274148.01045428
Lock518823452024-01-03 6:59:4259 days 23 hrs ago1704265182IN
0x0C9370...61446382
0 MATIC0.01685534144.76186267
Unlock518823362024-01-03 6:59:2459 days 23 hrs ago1704265164IN
0x0C9370...61446382
0 MATIC0.00773405141.10156661
Lock518823232024-01-03 6:58:5659 days 23 hrs ago1704265136IN
0x0C9370...61446382
0 MATIC0.01695019145.57648184
Unlock518823152024-01-03 6:58:3859 days 23 hrs ago1704265118IN
0x0C9370...61446382
0 MATIC0.00824108150.35191645
Lock518823032024-01-03 6:58:1259 days 23 hrs ago1704265092IN
0x0C9370...61446382
0 MATIC0.01717204147.49697324
Unlock518822872024-01-03 6:57:3859 days 23 hrs ago1704265058IN
0x0C9370...61446382
0 MATIC0.00857656156.49806969
Lock518822732024-01-03 6:57:1059 days 23 hrs ago1704265030IN
0x0C9370...61446382
0 MATIC0.01794194154.09407712
Unlock518822652024-01-03 6:56:5259 days 23 hrs ago1704265012IN
0x0C9370...61446382
0 MATIC0.00845663154.28429634
View all transactions

Parent Txn Hash Block From To Value
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ZexiconToken

Compiler Version
v0.4.26+commit.4563c3fc

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2022-08-22
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.4.22;

library SafeMath {

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        assert(c / a == b);
        return c;
    }

    function div(uint256 a, uint256 b) internal pure 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 pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }

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


contract Ownable {
    address public owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() public {
        owner = msg.sender;
    }

    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address _newOwner) public onlyOwner {
        require(_newOwner != address(0));
        owner = _newOwner;
    }
}

contract Pausable is Ownable {
  event Pause();
  event Unpause();

  bool public paused = false;

  modifier whenNotPaused() {
    require(!paused);
    _;
  }

  modifier whenPaused() {
    require(paused);
    _;
  }

  function pause() onlyOwner whenNotPaused public {
    paused = true;
    emit Pause();
  }

  function unpause() onlyOwner whenPaused public {
    paused = false;
    emit Unpause();
  }
}

contract ERC20 {
    function totalSupply() public view returns (uint256);
    function balanceOf(address who) public view returns (uint256);
    function allowance(address owner, address spender) public view returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    function transferFrom(address from, address to, uint256 value) public returns (bool);
    function approve(address spender, uint256 value) public returns (bool);

    event Approval(address indexed owner, address indexed spender, uint256 value);
    event Transfer(address indexed from, address indexed to, uint256 value);
}


interface TokenRecipient {
    function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; 
}


contract ZexiconToken is ERC20, Ownable, Pausable {

    uint128 internal MONTH = 30 * 24 * 3600; // 1 month

    using SafeMath for uint256;

    struct LockupInfo {
        uint256 releaseTime;
        uint256 unlockAmountPerMonth;
        uint256 lockupBalance;
    }

    string public name;
    string public symbol;
    uint8 public decimals;
    uint256 internal initialSupply;
    uint256 internal totalSupply_;

    mapping(address => uint256) internal balances;
    mapping(address => bool) internal locks;
    mapping(address => mapping(address => uint256)) internal allowed;
    mapping(address => LockupInfo) internal lockupInfo;

    event Unlock(address indexed holder, uint256 value);
    event Lock(address indexed holder, uint256 value);
    event Burn(address indexed owner, uint256 value);

    constructor() public {
        name = "ZEXICON";
        symbol = "ZEXI";
        decimals = 18;
        initialSupply = 990000000;
        totalSupply_ = initialSupply * 10 ** uint(decimals);
        balances[owner] = totalSupply_;
        emit Transfer(address(0), owner, totalSupply_);
    }
    

    function totalSupply() public view returns (uint256) {
        return totalSupply_;
    }

    function transfer(address _to, uint256 _value) public whenNotPaused returns (bool) {
        if (locks[msg.sender]) {
            autoUnlock(msg.sender);            
        }
        require(_to != address(0));
        require(_value <= balances[msg.sender]);
        

        // SafeMath.sub will throw if there is not enough balance.
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }

    function balanceOf(address _holder) public view returns (uint256 balance) {
        return balances[_holder] + lockupInfo[_holder].lockupBalance;
    }

    function transferFrom(address _from, address _to, uint256 _value) public whenNotPaused returns (bool) {
        if (locks[_from]) {
            autoUnlock(_from);            
        }
        require(_to != address(0));
        require(_value <= balances[_from]);
        require(_value <= allowed[_from][msg.sender]);
        

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

    function approve(address _spender, uint256 _value) public whenNotPaused returns (bool) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) public returns (bool success) {
        require(isContract(_spender));
        TokenRecipient spender = TokenRecipient(_spender);
        if (approve(_spender, _value)) {
            spender.receiveApproval(msg.sender, _value, this, _extraData);
            return true;
        }
    }

    function allowance(address _holder, address _spender) public view returns (uint256) {
        return allowed[_holder][_spender];
    }

    function lock(address _holder, uint256 _amount, uint256 _releaseStart, uint256 _releaseRate) public onlyOwner returns (bool) {
        require(locks[_holder] == false);
        require(balances[_holder] >= _amount);
        balances[_holder] = balances[_holder].sub(_amount);
        lockupInfo[_holder] = LockupInfo(_releaseStart, _amount.div(100).mul(_releaseRate), _amount);

        locks[_holder] = true;

        emit Lock(_holder, _amount);

        return true;
    }

    function unlock(address _holder) public onlyOwner returns (bool) {
        require(locks[_holder] == true);
        uint256 releaseAmount = lockupInfo[_holder].lockupBalance;

        delete lockupInfo[_holder];
        locks[_holder] = false;

        emit Unlock(_holder, releaseAmount);
        balances[_holder] = balances[_holder].add(releaseAmount);

        return true;
    }

    function getNowTime() public view returns(uint256) {
      return now;
    }

    function showLockState(address _holder) public view returns (bool, uint256, uint256) {
        return (locks[_holder], lockupInfo[_holder].lockupBalance, lockupInfo[_holder].releaseTime);
    }

    function distribute(address _to, uint256 _value) public onlyOwner returns (bool) {
        require(_to != address(0));
        require(_value <= balances[owner]);

        balances[owner] = balances[owner].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(owner, _to, _value);
        return true;
    }

    function distributeWithLockup(address _to, uint256 _value, uint256 _releaseStart, uint256 _releaseRate) public onlyOwner returns (bool) {
        distribute(_to, _value);
        lock(_to, _value, _releaseStart, _releaseRate);
        return true;
    }

    function claimToken(ERC20 token, address _to, uint256 _value) public onlyOwner returns (bool) {
        token.transfer(_to, _value);
        return true;
    }

    function burn(uint256 _value) public onlyOwner returns (bool success) {
        require(_value <= balances[msg.sender]);
        address burner = msg.sender;
        balances[burner] = balances[burner].sub(_value);
        totalSupply_ = totalSupply_.sub(_value);
        emit Burn(burner, _value);
        return true;
    }

    function isContract(address addr) internal view returns (bool) {
        uint size;
        assembly{size := extcodesize(addr)}
        return size > 0;
    }

    function autoUnlock(address _holder) internal returns (bool) {
        if (lockupInfo[_holder].releaseTime <= now) {
            return releaseTimeLock(_holder);
        }
        return false;
    }

    function releaseTimeLock(address _holder) internal returns(bool) {
        require(locks[_holder]);
        uint256 releaseAmount = 0;
        // If lock status of holder is finished, delete lockup info. 
        if (lockupInfo[_holder].lockupBalance <= lockupInfo[_holder].unlockAmountPerMonth) {
            releaseAmount = lockupInfo[_holder].lockupBalance;
            delete lockupInfo[_holder];
            locks[_holder] = false;
        } else {            
            releaseAmount = lockupInfo[_holder].unlockAmountPerMonth;
            lockupInfo[_holder].releaseTime = lockupInfo[_holder].releaseTime.add(MONTH);
            lockupInfo[_holder].lockupBalance = lockupInfo[_holder].lockupBalance.sub(releaseAmount);
        }
        emit Unlock(_holder, releaseAmount);
        balances[_holder] = balances[_holder].add(releaseAmount);
        return true;
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"claimToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"}],"name":"unlock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"}],"name":"showLockState","outputs":[{"name":"","type":"bool"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getNowTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_releaseStart","type":"uint256"},{"name":"_releaseRate","type":"uint256"}],"name":"lock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_extraData","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_releaseStart","type":"uint256"},{"name":"_releaseRate","type":"uint256"}],"name":"distributeWithLockup","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"distribute","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Unlock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"}]

60806040526000805460a060020a60ff0219169055600180546001608060020a03191662278d001790553480156200003657600080fd5b5060008054600160a060020a031916331790556040805180820190915260078082527f5a455849434f4e0000000000000000000000000000000000000000000000000060209092019182526200008f916002916200015c565b506040805180820190915260048082527f5a455849000000000000000000000000000000000000000000000000000000006020909201918252620000d6916003916200015c565b506004805460ff191660121790819055633b023380600581905560ff91909116600a0a02600681905560008054600160a060020a0390811682526007602090815260408084208590558354815195865290519216937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a362000201565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200019f57805160ff1916838001178555620001cf565b82800160010185558215620001cf579182015b82811115620001cf578251825591602001919060010190620001b2565b50620001dd929150620001e1565b5090565b620001fe91905b80821115620001dd5760008155600101620001e8565b90565b61144e80620002116000396000f3006080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610137578063095ea7b3146101c1578063125bfb66146101f957806318160ddd1461022357806323b872dd1461024a5780632f6c493c14610274578063313ce567146102955780633f4ba83a146102c057806342966c68146102d75780635c975abb146102ef578063625becbc1461030457806370a08231146103455780638456cb59146103665780638da5cb5b1461037b57806395d89b41146103ac5780639b819d38146103c1578063a9059cbb146103d6578063c97be180146103fa578063cae9ca5114610424578063d3e8b2071461048d578063dd62ed3e146104b7578063f2fde38b146104de578063fb932108146104ff575b600080fd5b34801561014357600080fd5b5061014c610523565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018657818101518382015260200161016e565b50505050905090810190601f1680156101b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cd57600080fd5b506101e5600160a060020a03600435166024356105ae565b604080519115158252519081900360200190f35b34801561020557600080fd5b506101e5600160a060020a036004358116906024351660443561062d565b34801561022f57600080fd5b506102386106f7565b60408051918252519081900360200190f35b34801561025657600080fd5b506101e5600160a060020a03600435811690602435166044356106fd565b34801561028057600080fd5b506101e5600160a060020a03600435166108b8565b3480156102a157600080fd5b506102aa6109bd565b6040805160ff9092168252519081900360200190f35b3480156102cc57600080fd5b506102d56109c6565b005b3480156102e357600080fd5b506101e5600435610a3c565b3480156102fb57600080fd5b506101e5610b0a565b34801561031057600080fd5b50610325600160a060020a0360043516610b1a565b604080519315158452602084019290925282820152519081900360600190f35b34801561035157600080fd5b50610238600160a060020a0360043516610b4f565b34801561037257600080fd5b506102d5610b7e565b34801561038757600080fd5b50610390610bf9565b60408051600160a060020a039092168252519081900360200190f35b3480156103b857600080fd5b5061014c610c08565b3480156103cd57600080fd5b50610238610c63565b3480156103e257600080fd5b506101e5600160a060020a0360043516602435610c67565b34801561040657600080fd5b506101e5600160a060020a0360043516602435604435606435610d83565b34801561043057600080fd5b50604080516020600460443581810135601f81018490048402850184019095528484526101e5948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610eed9650505050505050565b34801561049957600080fd5b506101e5600160a060020a036004351660243560443560643561101c565b3480156104c357600080fd5b50610238600160a060020a036004358116906024351661104b565b3480156104ea57600080fd5b506102d5600160a060020a0360043516611076565b34801561050b57600080fd5b506101e5600160a060020a03600435166024356110d1565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b820191906000526020600020905b81548152906001019060200180831161058957829003601f168201915b505050505081565b6000805460a060020a900460ff16156105c657600080fd5b336000818152600960209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60008054600160a060020a0316331461064557600080fd5b83600160a060020a031663a9059cbb84846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b505050506040513d60208110156106eb57600080fd5b50600195945050505050565b60065490565b6000805460a060020a900460ff161561071557600080fd5b600160a060020a03841660009081526008602052604090205460ff16156107415761073f846111e3565b505b600160a060020a038316151561075657600080fd5b600160a060020a03841660009081526007602052604090205482111561077b57600080fd5b600160a060020a03841660009081526009602090815260408083203384529091529020548211156107ab57600080fd5b600160a060020a0384166000908152600760205260409020546107d4908363ffffffff61121a16565b600160a060020a038086166000908152600760205260408082209390935590851681522054610809908363ffffffff61122c16565b600160a060020a03808516600090815260076020908152604080832094909455918716815260098252828120338252909152205461084d908363ffffffff61121a16565b600160a060020a03808616600081815260096020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b600080548190600160a060020a031633146108d257600080fd5b600160a060020a03831660009081526008602052604090205460ff1615156001146108fc57600080fd5b50600160a060020a0382166000818152600a6020908152604080832060028101805485835560019092018590558490556008835292819020805460ff19169055805183815290519293927f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1929181900390910190a2600160a060020a03831660009081526007602052604090205461099a908263ffffffff61122c16565b600160a060020a0384166000908152600760205260409020556001915050919050565b60045460ff1681565b600054600160a060020a031633146109dd57600080fd5b60005460a060020a900460ff1615156109f557600080fd5b6000805474ff0000000000000000000000000000000000000000191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b600080548190600160a060020a03163314610a5657600080fd5b33600090815260076020526040902054831115610a7257600080fd5b5033600081815260076020526040902054610a93908463ffffffff61121a16565b600160a060020a038216600090815260076020526040902055600654610abf908463ffffffff61121a16565b600655604080518481529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600192915050565b60005460a060020a900460ff1681565b600160a060020a0316600090815260086020908152604080832054600a9092529091206002810154905460ff90921692909190565b600160a060020a0381166000908152600a6020908152604080832060020154600790925290912054015b919050565b600054600160a060020a03163314610b9557600080fd5b60005460a060020a900460ff1615610bac57600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b4290565b6000805460a060020a900460ff1615610c7f57600080fd5b3360009081526008602052604090205460ff1615610ca257610ca0336111e3565b505b600160a060020a0383161515610cb757600080fd5b33600090815260076020526040902054821115610cd357600080fd5b33600090815260076020526040902054610cf3908363ffffffff61121a16565b3360009081526007602052604080822092909255600160a060020a03851681522054610d25908363ffffffff61122c16565b600160a060020a0384166000818152600760209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b60008054600160a060020a03163314610d9b57600080fd5b600160a060020a03851660009081526008602052604090205460ff1615610dc157600080fd5b600160a060020a038516600090815260076020526040902054841115610de657600080fd5b600160a060020a038516600090815260076020526040902054610e0f908563ffffffff61121a16565b600160a060020a03861660009081526007602090815260409182902092909255805160608101909152848152908101610e5f84610e5388606463ffffffff61124616565b9063ffffffff61125d16565b81526020908101869052600160a060020a0387166000818152600a835260408082208551815585850151600180830191909155958201516002909101556008845290819020805460ff19169094179093558251878152925190927f625fed9875dada8643f2418b838ae0bc78d9a148a18eee4ee1979ff0f3f5d42792908290030190a2506001949350505050565b600080610ef985611288565b1515610f0457600080fd5b5083610f1081856105ae565b15611014576040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018790523060448401819052608060648501908152875160848601528751600160a060020a03871695638f4ffcb195948b94938b939192909160a490910190602085019080838360005b83811015610fa8578181015183820152602001610f90565b50505050905090810190601f168015610fd55780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610ff757600080fd5b505af115801561100b573d6000803e3d6000fd5b50505050600191505b509392505050565b60008054600160a060020a0316331461103457600080fd5b61103e85856110d1565b506106eb85858585610d83565b600160a060020a03918216600090815260096020908152604080832093909416825291909152205490565b600054600160a060020a0316331461108d57600080fd5b600160a060020a03811615156110a257600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008054600160a060020a031633146110e957600080fd5b600160a060020a03831615156110fe57600080fd5b60008054600160a060020a031681526007602052604090205482111561112357600080fd5b60008054600160a060020a031681526007602052604090205461114c908363ffffffff61121a16565b60008054600160a060020a0390811682526007602052604080832093909355851681522054611181908363ffffffff61122c16565b600160a060020a0380851660008181526007602090815260408083209590955590548451878152945192949316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a350600192915050565b600160a060020a0381166000908152600a602052604081205442106112125761120b82611290565b9050610b79565b506000919050565b60008282111561122657fe5b50900390565b60008282018381101561123b57fe5b8091505b5092915050565b600080828481151561125457fe5b04949350505050565b600080831515611270576000915061123f565b5082820282848281151561128057fe5b041461123b57fe5b6000903b1190565b600160a060020a038116600090815260086020526040812054819060ff1615156112b957600080fd5b50600160a060020a0382166000908152600a602052604081206001810154600290910154116113275750600160a060020a0382166000908152600a6020908152604080832060028101805485835560019092018590558490556008909252909120805460ff191690556113ba565b50600160a060020a0382166000908152600a6020526040902060018082015490549154909161136e91906fffffffffffffffffffffffffffffffff1663ffffffff61122c16565b600160a060020a0384166000908152600a602052604090209081556002015461139d908263ffffffff61121a16565b600160a060020a0384166000908152600a60205260409020600201555b604080518281529051600160a060020a038516917f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1919081900360200190a2600160a060020a03831660009081526007602052604090205461099a908263ffffffff61122c165600a165627a7a72305820cbf7df70e135822de84f1745050053c408f1c007129640c37c73275ef2597db40029

Deployed Bytecode

0x6080604052600436106101325763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610137578063095ea7b3146101c1578063125bfb66146101f957806318160ddd1461022357806323b872dd1461024a5780632f6c493c14610274578063313ce567146102955780633f4ba83a146102c057806342966c68146102d75780635c975abb146102ef578063625becbc1461030457806370a08231146103455780638456cb59146103665780638da5cb5b1461037b57806395d89b41146103ac5780639b819d38146103c1578063a9059cbb146103d6578063c97be180146103fa578063cae9ca5114610424578063d3e8b2071461048d578063dd62ed3e146104b7578063f2fde38b146104de578063fb932108146104ff575b600080fd5b34801561014357600080fd5b5061014c610523565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561018657818101518382015260200161016e565b50505050905090810190601f1680156101b35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cd57600080fd5b506101e5600160a060020a03600435166024356105ae565b604080519115158252519081900360200190f35b34801561020557600080fd5b506101e5600160a060020a036004358116906024351660443561062d565b34801561022f57600080fd5b506102386106f7565b60408051918252519081900360200190f35b34801561025657600080fd5b506101e5600160a060020a03600435811690602435166044356106fd565b34801561028057600080fd5b506101e5600160a060020a03600435166108b8565b3480156102a157600080fd5b506102aa6109bd565b6040805160ff9092168252519081900360200190f35b3480156102cc57600080fd5b506102d56109c6565b005b3480156102e357600080fd5b506101e5600435610a3c565b3480156102fb57600080fd5b506101e5610b0a565b34801561031057600080fd5b50610325600160a060020a0360043516610b1a565b604080519315158452602084019290925282820152519081900360600190f35b34801561035157600080fd5b50610238600160a060020a0360043516610b4f565b34801561037257600080fd5b506102d5610b7e565b34801561038757600080fd5b50610390610bf9565b60408051600160a060020a039092168252519081900360200190f35b3480156103b857600080fd5b5061014c610c08565b3480156103cd57600080fd5b50610238610c63565b3480156103e257600080fd5b506101e5600160a060020a0360043516602435610c67565b34801561040657600080fd5b506101e5600160a060020a0360043516602435604435606435610d83565b34801561043057600080fd5b50604080516020600460443581810135601f81018490048402850184019095528484526101e5948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610eed9650505050505050565b34801561049957600080fd5b506101e5600160a060020a036004351660243560443560643561101c565b3480156104c357600080fd5b50610238600160a060020a036004358116906024351661104b565b3480156104ea57600080fd5b506102d5600160a060020a0360043516611076565b34801561050b57600080fd5b506101e5600160a060020a03600435166024356110d1565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b820191906000526020600020905b81548152906001019060200180831161058957829003601f168201915b505050505081565b6000805460a060020a900460ff16156105c657600080fd5b336000818152600960209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60008054600160a060020a0316331461064557600080fd5b83600160a060020a031663a9059cbb84846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b505050506040513d60208110156106eb57600080fd5b50600195945050505050565b60065490565b6000805460a060020a900460ff161561071557600080fd5b600160a060020a03841660009081526008602052604090205460ff16156107415761073f846111e3565b505b600160a060020a038316151561075657600080fd5b600160a060020a03841660009081526007602052604090205482111561077b57600080fd5b600160a060020a03841660009081526009602090815260408083203384529091529020548211156107ab57600080fd5b600160a060020a0384166000908152600760205260409020546107d4908363ffffffff61121a16565b600160a060020a038086166000908152600760205260408082209390935590851681522054610809908363ffffffff61122c16565b600160a060020a03808516600090815260076020908152604080832094909455918716815260098252828120338252909152205461084d908363ffffffff61121a16565b600160a060020a03808616600081815260096020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b600080548190600160a060020a031633146108d257600080fd5b600160a060020a03831660009081526008602052604090205460ff1615156001146108fc57600080fd5b50600160a060020a0382166000818152600a6020908152604080832060028101805485835560019092018590558490556008835292819020805460ff19169055805183815290519293927f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1929181900390910190a2600160a060020a03831660009081526007602052604090205461099a908263ffffffff61122c16565b600160a060020a0384166000908152600760205260409020556001915050919050565b60045460ff1681565b600054600160a060020a031633146109dd57600080fd5b60005460a060020a900460ff1615156109f557600080fd5b6000805474ff0000000000000000000000000000000000000000191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b600080548190600160a060020a03163314610a5657600080fd5b33600090815260076020526040902054831115610a7257600080fd5b5033600081815260076020526040902054610a93908463ffffffff61121a16565b600160a060020a038216600090815260076020526040902055600654610abf908463ffffffff61121a16565b600655604080518481529051600160a060020a038316917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a250600192915050565b60005460a060020a900460ff1681565b600160a060020a0316600090815260086020908152604080832054600a9092529091206002810154905460ff90921692909190565b600160a060020a0381166000908152600a6020908152604080832060020154600790925290912054015b919050565b600054600160a060020a03163314610b9557600080fd5b60005460a060020a900460ff1615610bac57600080fd5b6000805474ff0000000000000000000000000000000000000000191660a060020a1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b4290565b6000805460a060020a900460ff1615610c7f57600080fd5b3360009081526008602052604090205460ff1615610ca257610ca0336111e3565b505b600160a060020a0383161515610cb757600080fd5b33600090815260076020526040902054821115610cd357600080fd5b33600090815260076020526040902054610cf3908363ffffffff61121a16565b3360009081526007602052604080822092909255600160a060020a03851681522054610d25908363ffffffff61122c16565b600160a060020a0384166000818152600760209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b60008054600160a060020a03163314610d9b57600080fd5b600160a060020a03851660009081526008602052604090205460ff1615610dc157600080fd5b600160a060020a038516600090815260076020526040902054841115610de657600080fd5b600160a060020a038516600090815260076020526040902054610e0f908563ffffffff61121a16565b600160a060020a03861660009081526007602090815260409182902092909255805160608101909152848152908101610e5f84610e5388606463ffffffff61124616565b9063ffffffff61125d16565b81526020908101869052600160a060020a0387166000818152600a835260408082208551815585850151600180830191909155958201516002909101556008845290819020805460ff19169094179093558251878152925190927f625fed9875dada8643f2418b838ae0bc78d9a148a18eee4ee1979ff0f3f5d42792908290030190a2506001949350505050565b600080610ef985611288565b1515610f0457600080fd5b5083610f1081856105ae565b15611014576040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018790523060448401819052608060648501908152875160848601528751600160a060020a03871695638f4ffcb195948b94938b939192909160a490910190602085019080838360005b83811015610fa8578181015183820152602001610f90565b50505050905090810190601f168015610fd55780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015610ff757600080fd5b505af115801561100b573d6000803e3d6000fd5b50505050600191505b509392505050565b60008054600160a060020a0316331461103457600080fd5b61103e85856110d1565b506106eb85858585610d83565b600160a060020a03918216600090815260096020908152604080832093909416825291909152205490565b600054600160a060020a0316331461108d57600080fd5b600160a060020a03811615156110a257600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008054600160a060020a031633146110e957600080fd5b600160a060020a03831615156110fe57600080fd5b60008054600160a060020a031681526007602052604090205482111561112357600080fd5b60008054600160a060020a031681526007602052604090205461114c908363ffffffff61121a16565b60008054600160a060020a0390811682526007602052604080832093909355851681522054611181908363ffffffff61122c16565b600160a060020a0380851660008181526007602090815260408083209590955590548451878152945192949316927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a350600192915050565b600160a060020a0381166000908152600a602052604081205442106112125761120b82611290565b9050610b79565b506000919050565b60008282111561122657fe5b50900390565b60008282018381101561123b57fe5b8091505b5092915050565b600080828481151561125457fe5b04949350505050565b600080831515611270576000915061123f565b5082820282848281151561128057fe5b041461123b57fe5b6000903b1190565b600160a060020a038116600090815260086020526040812054819060ff1615156112b957600080fd5b50600160a060020a0382166000908152600a602052604081206001810154600290910154116113275750600160a060020a0382166000908152600a6020908152604080832060028101805485835560019092018590558490556008909252909120805460ff191690556113ba565b50600160a060020a0382166000908152600a6020526040902060018082015490549154909161136e91906fffffffffffffffffffffffffffffffff1663ffffffff61122c16565b600160a060020a0384166000908152600a602052604090209081556002015461139d908263ffffffff61121a16565b600160a060020a0384166000908152600a60205260409020600201555b604080518281529051600160a060020a038516917f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1919081900360200190a2600160a060020a03831660009081526007602052604090205461099a908263ffffffff61122c165600a165627a7a72305820cbf7df70e135822de84f1745050053c408f1c007129640c37c73275ef2597db40029

Deployed Bytecode Sourcemap

2575:6917:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2863:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2863:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2863:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5146:220;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5146:220:0;-1:-1:-1;;;;;5146:220:0;;;;;;;;;;;;;;;;;;;;;;;;;7704:162;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7704:162:0;-1:-1:-1;;;;;7704:162:0;;;;;;;;;;;;3733:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3733:91:0;;;;;;;;;;;;;;;;;;;;4542:596;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4542:596:0;-1:-1:-1;;;;;4542:596:0;;;;;;;;;;;;6393:394;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6393:394:0;-1:-1:-1;;;;;6393:394:0;;;;;2915:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2915:21:0;;;;;;;;;;;;;;;;;;;;;;;1688:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1688:95:0;;;;;;7874:332;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7874:332:0;;;;;1424:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1424:26:0;;;;6881:195;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6881:195:0;-1:-1:-1;;;;;6881:195:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4381:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4381:153:0;-1:-1:-1;;;;;4381:153:0;;;;;1589:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1589:93:0;;;;926:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;926:20:0;;;;;;;;-1:-1:-1;;;;;926:20:0;;;;;;;;;;;;;;2888;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2888:20:0;;;;6795:78;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6795:78:0;;;;3832:541;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3832:541:0;-1:-1:-1;;;;;3832:541:0;;;;;;;5899:486;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5899:486:0;-1:-1:-1;;;;;5899:486:0;;;;;;;;;;;5378:369;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5378:369:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5378:369:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5378:369:0;;-1:-1:-1;5378:369:0;;-1:-1:-1;;;;;;;5378:369:0;7439:257;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7439:257:0;-1:-1:-1;;;;;7439:257:0;;;;;;;;;;;5755:136;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5755:136:0;-1:-1:-1;;;;;5755:136:0;;;;;;;;;;1201:142;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1201:142:0;-1:-1:-1;;;;;1201:142:0;;;;;7084:347;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7084:347:0;-1:-1:-1;;;;;7084:347:0;;;;;;;2863:18;;;;;;;;;;;;;;-1:-1:-1;;2863:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5146:220::-;5227:4;1498:6;;-1:-1:-1;;;1498:6:0;;;;1497:7;1489:16;;;;;;5252:10;5244:19;;;;:7;:19;;;;;;;;-1:-1:-1;;;;;5244:29:0;;;;;;;;;;;;:38;;;5298;;;;;;;5244:29;;5252:10;5298:38;;;;;;;;;;;-1:-1:-1;5354:4:0;5146:220;;;;:::o;7704:162::-;7792:4;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;7809:5;-1:-1:-1;;;;;7809:14:0;;7824:3;7829:6;7809:27;;;;;;;;;;;;;-1:-1:-1;;;;;7809:27:0;-1:-1:-1;;;;;7809:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7809:27:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7809:27:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7854:4:0;;7704:162;-1:-1:-1;;;;;7704:162:0:o;3733:91::-;3804:12;;3733:91;:::o;4542:596::-;4638:4;1498:6;;-1:-1:-1;;;1498:6:0;;;;1497:7;1489:16;;;;;;-1:-1:-1;;;;;4659:12:0;;;;;;:5;:12;;;;;;;;4655:74;;;4688:17;4699:5;4688:10;:17::i;:::-;;4655:74;-1:-1:-1;;;;;4747:17:0;;;;4739:26;;;;;;-1:-1:-1;;;;;4794:15:0;;;;;;:8;:15;;;;;;4784:25;;;4776:34;;;;;;-1:-1:-1;;;;;4839:14:0;;;;;;:7;:14;;;;;;;;4854:10;4839:26;;;;;;;;4829:36;;;4821:45;;;;;;-1:-1:-1;;;;;4907:15:0;;;;;;:8;:15;;;;;;:27;;4927:6;4907:27;:19;:27;:::i;:::-;-1:-1:-1;;;;;4889:15:0;;;;;;;:8;:15;;;;;;:45;;;;4961:13;;;;;;;:25;;4979:6;4961:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;4945:13:0;;;;;;;:8;:13;;;;;;;;:41;;;;5026:14;;;;;:7;:14;;;;;5041:10;5026:26;;;;;;;:38;;5057:6;5026:38;:30;:38;:::i;:::-;-1:-1:-1;;;;;4997:14:0;;;;;;;:7;:14;;;;;;;;5012:10;4997:26;;;;;;;;:67;;;;5080:28;;;;;;;;;;;4997:14;;5080:28;;;;;;;;;;;-1:-1:-1;5126:4:0;4542:596;;;;;:::o;6393:394::-;6452:4;1167:5;;6452:4;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;-1:-1:-1;;;;;6477:14:0;;;;;;:5;:14;;;;;;;;:22;;:14;:22;6469:31;;;;;;-1:-1:-1;;;;;;6535:19:0;;;;;;:10;:19;;;;;;;;:33;;;;;6581:26;;;;;;;;;;;;;6618:5;:14;;;;;;:22;;-1:-1:-1;;6618:22:0;;;6658:30;;;;;;;6535:33;;:19;6658:30;;;;;;;;;;;-1:-1:-1;;;;;6719:17:0;;;;;;:8;:17;;;;;;:36;;6741:13;6719:36;:21;:36;:::i;:::-;-1:-1:-1;;;;;6699:17:0;;;;;;:8;:17;;;;;:56;6775:4;;-1:-1:-1;6393:394:0;;;;:::o;2915:21::-;;;;;;:::o;1688:95::-;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;1562:6;;-1:-1:-1;;;1562:6:0;;;;1554:15;;;;;;;;1751:5;1742:14;;-1:-1:-1;;1742:14:0;;;1768:9;;;;1751:5;1768:9;1688:95::o;7874:332::-;7930:12;1167:5;;7930:12;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;7982:10;7973:20;;;;:8;:20;;;;;;7963:30;;;7955:39;;;;;;-1:-1:-1;8022:10:0;8062:16;;;;:8;:16;;;;;;:28;;8083:6;8062:28;:20;:28;:::i;:::-;-1:-1:-1;;;;;8043:16:0;;;;;;:8;:16;;;;;:47;8116:12;;:24;;8133:6;8116:24;:16;:24;:::i;:::-;8101:12;:39;8156:20;;;;;;;;-1:-1:-1;;;;;8156:20:0;;;;;;;;;;;;;-1:-1:-1;8194:4:0;;7874:332;-1:-1:-1;;7874:332:0:o;1424:26::-;;;-1:-1:-1;;;1424:26:0;;;;;:::o;6881:195::-;-1:-1:-1;;;;;6985:14:0;6942:4;6985:14;;;:5;:14;;;;;;;;;7001:10;:19;;;;;;:33;;;;7036:31;;6985:14;;;;;7001:33;;7036:31;6881:195::o;4381:153::-;-1:-1:-1;;;;;4493:19:0;;4438:15;4493:19;;;:10;:19;;;;;;;;:33;;;4473:8;:17;;;;;;;:53;4381:153;;;;:::o;1589:93::-;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;1498:6;;-1:-1:-1;;;1498:6:0;;;;1497:7;1489:16;;;;;;1644:6;:13;;-1:-1:-1;;1644:13:0;-1:-1:-1;;;1644:13:0;;;1669:7;;;;1644:6;1669:7;1589:93::o;926:20::-;;;-1:-1:-1;;;;;926:20:0;;:::o;2888:::-;;;;;;;;;;;;;;;-1:-1:-1;;2888:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6795:78;6862:3;6795:78;:::o;3832:541::-;3909:4;1498:6;;-1:-1:-1;;;1498:6:0;;;;1497:7;1489:16;;;;;;3936:10;3930:17;;;;:5;:17;;;;;;;;3926:84;;;3964:22;3975:10;3964;:22::i;:::-;;3926:84;-1:-1:-1;;;;;4028:17:0;;;;4020:26;;;;;;4084:10;4075:20;;;;:8;:20;;;;;;4065:30;;;4057:39;;;;;;4219:10;4210:20;;;;:8;:20;;;;;;:32;;4235:6;4210:32;:24;:32;:::i;:::-;4196:10;4187:20;;;;:8;:20;;;;;;:55;;;;-1:-1:-1;;;;;4269:13:0;;;;;;:25;;4287:6;4269:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;4253:13:0;;;;;;:8;:13;;;;;;;;;:41;;;;4310:33;;;;;;;4253:13;;4319:10;;4310:33;;;;;;;;;;-1:-1:-1;4361:4:0;3832:541;;;;:::o;5899:486::-;6018:4;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;-1:-1:-1;;;;;6043:14:0;;;;;;:5;:14;;;;;;;;:23;6035:32;;;;;;-1:-1:-1;;;;;6086:17:0;;;;;;:8;:17;;;;;;:28;-1:-1:-1;6086:28:0;6078:37;;;;;;-1:-1:-1;;;;;6146:17:0;;;;;;:8;:17;;;;;;:30;;6168:7;6146:30;:21;:30;:::i;:::-;-1:-1:-1;;;;;6126:17:0;;;;;;:8;:17;;;;;;;;;:50;;;;6209:70;;;;;;;;;;;;;;6235:34;6256:12;6235:16;:7;6247:3;6235:16;:11;:16;:::i;:::-;:20;:34;:20;:34;:::i;:::-;6209:70;;;;;;;;;-1:-1:-1;;;;;6187:19:0;;-1:-1:-1;6187:19:0;;;:10;:19;;;;;;:92;;;;;;;;;;;;;;;;;;;;;;;;;6292:5;:14;;;;;;:21;;-1:-1:-1;;6292:21:0;;;;;;;6331:22;;;;;;;6187:19;;6331:22;;;;;;;;;-1:-1:-1;6373:4:0;5899:486;;;;;;:::o;5378:369::-;5470:12;5535:22;5503:20;5514:8;5503:10;:20::i;:::-;5495:29;;;;;;;;-1:-1:-1;5575:8:0;5599:25;5575:8;5617:6;5599:7;:25::i;:::-;5595:145;;;5641:61;;;;;5665:10;5641:61;;;;;;;;;;;;5685:4;5641:61;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5641:23:0;;;;;5665:10;5677:6;;5685:4;5691:10;;5641:61;;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5641:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5641:61:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5641:61:0;;;;5724:4;5717:11;;5595:145;5378:369;;;;;;:::o;7439:257::-;7569:4;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;7586:23;7597:3;7602:6;7586:10;:23::i;:::-;;7620:46;7625:3;7630:6;7638:13;7653:12;7620:4;:46::i;5755:136::-;-1:-1:-1;;;;;5857:16:0;;;5830:7;5857:16;;;:7;:16;;;;;;;;:26;;;;;;;;;;;;;5755:136::o;1201:142::-;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;-1:-1:-1;;;;;1283:23:0;;;;1275:32;;;;;;1318:5;:17;;-1:-1:-1;;1318:17:0;-1:-1:-1;;;;;1318:17:0;;;;;;;;;;1201:142::o;7084:347::-;7159:4;1167:5;;-1:-1:-1;;;;;1167:5:0;1153:10;:19;1145:28;;;;;;-1:-1:-1;;;;;7184:17:0;;;;7176:26;;;;;;7231:15;7240:5;;-1:-1:-1;;;;;7240:5:0;7231:15;;:8;:15;;;;;;7221:25;;;7213:34;;;;;;7278:15;7287:5;;-1:-1:-1;;;;;7287:5:0;7278:15;;:8;:15;;;;;;:27;;7298:6;7278:27;:19;:27;:::i;:::-;7260:15;7269:5;;-1:-1:-1;;;;;7269:5:0;;;7260:15;;:8;:15;;;;;;:45;;;;7332:13;;;;;;:25;;7350:6;7332:25;:17;:25;:::i;:::-;-1:-1:-1;;;;;7316:13:0;;;;;;;:8;:13;;;;;;;;:41;;;;7382:5;;7373:28;;;;;;;7316:13;;7382:5;;;7373:28;;;;;;;;;;;-1:-1:-1;7419:4:0;7084:347;;;;:::o;8384:204::-;-1:-1:-1;;;;;8460:19:0;;8439:4;8460:19;;;:10;:19;;;;;:31;8495:3;-1:-1:-1;8456:102:0;;8522:24;8538:7;8522:15;:24::i;:::-;8515:31;;;;8456:102;-1:-1:-1;8575:5:0;8384:204;;;:::o;615:123::-;673:7;700:6;;;;693:14;;;;-1:-1:-1;725:5:0;;;615:123::o;746:147::-;804:7;836:5;;;859:6;;;;852:14;;;;884:1;877:8;;746:147;;;;;;:::o;305:295::-;363:7;462:9;478:1;474;:5;;;;;;;;;305:295;-1:-1:-1;;;;305:295:0:o;89:208::-;147:7;;171:6;;167:47;;;201:1;194:8;;;;167:47;-1:-1:-1;236:5:0;;;240:1;236;:5;259;;;;;;;;:10;252:18;;;8214:162;8271:4;8325:17;;8360:8;;8214:162::o;8596:891::-;-1:-1:-1;;;;;8680:14:0;;8655:4;8680:14;;;:5;:14;;;;;;8655:4;;8680:14;;8672:23;;;;;;;;-1:-1:-1;;;;;;8854:19:0;;8730:1;8854:19;;;:10;:19;;;;;:40;;;;8817:33;;;;;:77;8813:532;;-1:-1:-1;;;;;;8927:19:0;;;;;;:10;:19;;;;;;;;:33;;;;;8975:26;;;;;;;;;;;;;9016:5;:14;;;;;;:22;;-1:-1:-1;;9016:22:0;;;8813:532;;;-1:-1:-1;;;;;;9099:19:0;;;;;;:10;:19;;;;;:40;;;;;9224:5;;9188:31;;9099:40;;9188:42;;:31;9224:5;;9188:42;:35;:42;:::i;:::-;-1:-1:-1;;;;;9154:19:0;;;;;;:10;:19;;;;;:76;;;9281:33;;;:52;;9319:13;9281:52;:37;:52;:::i;:::-;-1:-1:-1;;;;;9245:19:0;;;;;;:10;:19;;;;;:33;;:88;8813:532;9360:30;;;;;;;;-1:-1:-1;;;;;9360:30:0;;;;;;;;;;;;;-1:-1:-1;;;;;9421:17:0;;;;;;:8;:17;;;;;;:36;;9443:13;9421:36;:21;:36;:::i

Swarm Source

bzzr://cbf7df70e135822de84f1745050053c408f1c007129640c37c73275ef2597db4

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.