ETH Price: $2,390.87 (+2.10%)

Contract

0xE5DBb65769E4c216818692201e318E296503180f
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Vote For123594092021-05-03 5:48:111226 days ago1620020891IN
0xE5DBb657...96503180f
0 ETH0.0006528723
Vote For123593902021-05-03 5:42:561226 days ago1620020576IN
0xE5DBb657...96503180f
0 ETH0.0040618223
Propose123589592021-05-03 4:06:031226 days ago1620014763IN
0xE5DBb657...96503180f
0 ETH0.0086629933
0x60806040123586692021-05-03 2:56:361226 days ago1620010596IN
 Create: UnitiDex_Governance
0 ETH0.1035807227

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
UnitiDex_Governance

Compiler Version
v0.5.9+commit.c68bc34e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-05-03
*/

/**
 *Submitted for verification at BscScan.com on 2021-04-05
*/

/**
 *Submitted for verification at Etherscan.io on 2021-03-26
*/

pragma solidity 0.5.9;

library Math {
    function max(uint256 a, uint256 b) internal pure returns (uint256) {
        return a >= b ? a : b;
    }
    function min(uint256 a, uint256 b) internal pure returns (uint256) {
        return a < b ? a : b;
    }
    function average(uint256 a, uint256 b) internal pure returns (uint256) {
        return (a / 2) + (b / 2) + ((a % 2 + b % 2) / 2);//changes (a+b )/2
    }
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

contract Ownable {
    address  payable  _owner;
    address payable internal newOwner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () internal {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }
    modifier onlyOwner {
        require(msg.sender == _owner);
        _;
    }
    function owner() public view returns (address) {
        return _owner;
    }
    function isOwner() public view returns (bool) {
        return msg.sender == _owner;
    }
    function _transferOwnership(address payable _newOwner) internal {
          newOwner = _newOwner;
    }
    //this flow is to prevent transferring ownership to wrong wallet by mistake
    function acceptOwnership() public {
        require(msg.sender == newOwner);
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
        newOwner = address(0);
    }
}


interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);

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


library SafeERC20 {
    using SafeMath for uint256;

    function safeTransfer(IERC20 token, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
    }

    function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
        callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
    }

    function safeApprove(IERC20 token, address spender, uint256 value) internal {

        require((value == 0) || (token.allowance(address(this), spender) == 0),
            "SafeERC20: approve from non-zero to non-zero allowance"
        );
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
    }

    function safeIncreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).add(value);
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }

    function safeDecreaseAllowance(IERC20 token, address spender, uint256 value) internal {
        uint256 newAllowance = token.allowance(address(this), spender).sub(value, "SafeERC20: decreased allowance below zero");
        callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, newAllowance));
    }

    function toPayable(address account) internal pure returns (address payable) {
        return address(uint160(account));
    }


    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call.value(amount)("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function callOptionalReturn(IERC20 token, bytes memory data) private {
        (bool success, bytes memory returndata) = address(token).call(data);
        require(success, "SafeERC20: low-level call failed");

        if (returndata.length > 0) {

            require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
        }
    }
}




interface Executor {
    function execute(uint, uint, uint, uint) external;
}


contract UnitiDex_Governance is Ownable  {
    mapping(address=>bool) public owners;

 
   

    bool public breaker = false;
    uint256 deadlineIndex = 0;
    uint256 public MinTokenForVote=0;
    address public RYIPToken=address(0);
    uint256 public tokenFreezeDuration=86400;// default 1 day or 24 hours

    //mapping(address=> mapping(uint256=> uint256)) public deadline;
    
     mapping(address => bool) public voters;

    struct stake{
        uint time;
        uint amount;
    }
    mapping(address=>stake[]) public details;


    function setBreaker(bool _breaker) external {
        require(msg.sender == governance, "!governance");
        breaker = _breaker;
    }

    mapping(address => uint) public voteLock;

    struct Proposal {
        uint id;
        address proposer;
        mapping(address => uint) forVotes;
        mapping(address => uint) againstVotes;
        uint totalForVotes;
        uint totalAgainstVotes;
        uint start; // block start;
        uint end; // start + period
        address executor;
        string hash;
        uint totalVotesAvailable;
        uint quorum;
        uint quorumRequired;
        bool open;
        uint categoryID;
    }

    mapping (uint => Proposal) public proposals;
    uint public proposalCount=0;
    uint public lock = 17280;
    uint public minimum = 1e18;
    uint public quorum = 2000;
    bool public config = true;

    address public governance;

  constructor(uint256 _MinTokenForVote,address _RYIPToken) public{
        //sending all the tokens to Owner
        MinTokenForVote=_MinTokenForVote;
        RYIPToken=_RYIPToken;
    }


    function setGovernance(address _governance) public {
        require(msg.sender == governance, "!governance");
        governance = _governance;
    }

    function setQuorum(uint _quorum) public {
        require(msg.sender == governance, "!governance");
        quorum = _quorum;
    }

    function setMinimum(uint _minimum) public {
        require(msg.sender == governance, "!governance");
        minimum = _minimum;
    }

    function setPeriod(uint _proposeId, uint _endtime) public returns(bool){
        require(proposals[_proposeId].executor==msg.sender || owners[msg.sender]==true);
        require(proposals[_proposeId].end!=0);

         proposals[_proposeId].end=_endtime;
         return true;
    }

    function setLock(uint _lock) public {
        require(msg.sender == governance, "!governance");
        lock = _lock;
    }

    function initialize(uint id) public {
        require(config == true, "!config");
        config = false;
        proposalCount = id;
        governance = 0xFEB4acf3df3cDEA7399794D0869ef76A6EfAff52;
    }


    event NewProposal(string _hash, uint id, address creator, uint start, uint duration, address executor, uint _categoryID);
    event Vote(uint indexed id, address indexed voter, bool vote, uint weight);

    function propose(address executor, string memory hash, uint _categoryID, uint _startTime, uint _endTime) public returns(bool){


        if(_startTime==0)
        {
           _startTime=block.timestamp;
        }

         proposalCount=proposalCount+1;
        proposals[proposalCount] = Proposal({
            id: proposalCount,
            proposer: msg.sender,
            totalForVotes: 0,
            totalAgainstVotes: 0,
            start: _startTime,
            end: _endTime,
            executor: executor,
            hash: hash,
            totalVotesAvailable: totalVotes,
            quorum: 0,
            quorumRequired: quorum,
            open: true,
            categoryID: _categoryID
        });

        emit NewProposal(hash, proposalCount, msg.sender, _startTime, _endTime, executor, _categoryID);
        return true;
    }

    event RemoveProposal(uint indexed id, address indexed remover, uint indexed time);


    function removePropose(uint _proposeId) public returns(bool){
        require(proposals[_proposeId].executor==msg.sender || owners[msg.sender]==true);
        delete proposals[_proposeId];
        emit RemoveProposal(_proposeId,msg.sender,block.timestamp);
        return true;
    }

    function execute(uint id) public {
        (uint _for, uint _against, uint _quorum) = getStats(id);
        require(proposals[id].quorumRequired < _quorum, "!quorum");
        require(proposals[id].end < block.timestamp , "!end");
        if (proposals[id].open == true) {
            tallyVotes(id);
        }
        Executor(proposals[id].executor).execute(id, _for, _against, _quorum);
    }

    function getStats(uint id) public view returns (uint _for, uint _against, uint _quorum) {
        _for = proposals[id].totalForVotes;
        _against = proposals[id].totalAgainstVotes;
        _quorum = proposals[id].quorum;
    }

    event ProposalFinished(uint indexed id, uint _for, uint _against, bool quorumReached);

    function tallyVotes(uint id) public {
        require(proposals[id].open == true, "!open");
        require(proposals[id].end < block.timestamp, "!end");

        (uint _for, uint _against,) = getStats(id);
        bool _quorum = false;
        if (proposals[id].quorum >= proposals[id].quorumRequired) {
            _quorum = true;
        }
        proposals[id].open = false;
        emit ProposalFinished(id, _for, _against, _quorum);
    }

    function votesOf(address voter) public view returns (uint) {
        return votes[voter];
    }
    function checkVoted(uint id) public view returns(bool) {
        if(proposals[id].forVotes[msg.sender]==1 || proposals[id].againstVotes[msg.sender]==1)
        {
          return true;
        }
        else
        {
          return false;
        }
    }
    uint public totalVotes;
    mapping(address => uint) public votes;
    event RevokeVoter(address voter, uint votes, uint totalVotes);


    function revoke() public {
        require(voters[msg.sender] == true, "!voter");
        voters[msg.sender] = false;
        if (totalVotes < votes[msg.sender]) {
            totalVotes = 0;
        } else {
            totalVotes = votes[msg.sender];
        }
        emit RevokeVoter(msg.sender, votes[msg.sender], totalVotes);
        votes[msg.sender] = 0;
    }


    function voteFor(uint id) public returns(bool){
        require(proposals[id].start < block.timestamp , "<start");
        require(proposals[id].end > block.timestamp , ">end");
        require(proposals[id].forVotes[msg.sender]==0 && proposals[id].againstVotes[msg.sender]==0,"Already Voted");
        //require(msg.value==500000,"Invalid Amount");
       // require(_amount==MinTokenForVote,"Invalid Amount");
        IERC20(RYIPToken).transferFrom(msg.sender,address(this),MinTokenForVote);
        // freezeToken[msg.sender] += MinTokenForVote;
        
        proposals[id].forVotes[msg.sender] = 1;
        proposals[id].totalVotesAvailable = totalVotes;
        proposals[id].totalForVotes= proposals[id].totalForVotes + 1;

        stake memory st=stake(now+tokenFreezeDuration,MinTokenForVote);

        details[msg.sender].push(st);

        emit Vote(id, msg.sender, true, 1);
        return true;
    }
    function NumberOfVotes(address _add) public view returns(uint256){
        return details[_add].length;
    }
    function voteAgainst(uint id) public returns(bool) {
        require(proposals[id].start < block.timestamp , "<start");
        require(proposals[id].end > block.timestamp , ">end");
        require(proposals[id].forVotes[msg.sender]==0 && proposals[id].againstVotes[msg.sender]==0,"Already Voted");
       // require(_amount==MinTokenForVote,"Invalid Amount");
        IERC20(RYIPToken).transferFrom(msg.sender,address(this),MinTokenForVote);
        //freezeToken[msg.sender] += MinTokenForVote;
        proposals[id].againstVotes[msg.sender] = 1;
        proposals[id].totalVotesAvailable = totalVotes;
        proposals[id].totalAgainstVotes= proposals[id].totalAgainstVotes + 1;


        stake memory st=stake(now+tokenFreezeDuration,MinTokenForVote);
        details[msg.sender].push(st);

        emit Vote(id, msg.sender, false, 1);
        return true;
    }
    function changeMinTokenForVote(uint256 _amount) public onlyOwner returns(bool){
        require(_amount>0,"invalid Amount");
        MinTokenForVote=_amount;
        return true;

    }


    function ClaimToken() public returns(bool) {
        uint256 _tokenAmount= 0;
        uint256 _tmpAmount =0;
        uint256 _tmpDeadline =0;
        
        for (uint256 i=0;i<details[msg.sender].length;){
            
            if (now>details[msg.sender][i].time && details[msg.sender][i].amount>0){ // if deadline time is over.
            
                    //vreturn= vreturn.add(details[msg.sender][i].amount);
                    _tokenAmount= _tokenAmount+details[msg.sender][i].amount;
                    if (details[msg.sender].length>1) // if element is less than 2 no need to swap 
                        
                        {

                            // storing last index element in temp variable for swaping
                            _tmpAmount = details[msg.sender][details[msg.sender].length-1].amount;
                            _tmpDeadline = details[msg.sender][details[msg.sender].length-1].time;
                    
                            // storing current element on last index 
                            details[msg.sender][details[msg.sender].length-1].amount = details[msg.sender][i].amount;
                            details[msg.sender][details[msg.sender].length-1].time = details[msg.sender][i].time;  
                    
                            //storing last index element on current index
                    
                            details[msg.sender][i].amount= _tmpAmount;
                            details[msg.sender][i].time = _tmpDeadline;
                        }
                     // removing item on array
                     details[msg.sender].pop();
                        
            }
            
            else{
                
                // it increment value only when array lenght is not decreasing
                i++;
            }
        }
        require(_tokenAmount>0,'invalid balance');
        require(IERC20(RYIPToken).transfer(msg.sender,_tokenAmount),'transfer sending fail');
        return true;

    }
    

    function showFreezeToken(address _address) public view returns(uint256){
         require(_address!=address(0),'invalid address');
        uint256 vreturn=0;
        //for (uint256 i=deadlineStarIndex[msg.sender];i<=deadlineLastIndex[msg.sender] ;i++){
        for (uint256 i=0;i<details[_address].length ;i++){

            if (now<details[_address][i].time && details[_address][i].amount>0){ // if deadline time is over.
                    //vreturn= vreturn.add(details[msg.sender][i].amount);
                    vreturn= vreturn+details[_address][i].amount;
            }
        }
        return vreturn;

    }


    function showUnFreezeToken(address _address) public view  returns(uint256){
       require(_address!=address(0),'invalid address');
      uint256 vreturn=0;

        //for (uint256 i=deadlineStarIndex[msg.sender];i<=deadlineLastIndex[msg.sender] ;i++){
        for (uint256 i=0;i<details[_address].length ;i++){

            if (now>details[_address][i].time && details[_address][i].amount>0){ // if deadline time is over.
                    //vreturn= vreturn.add(details[msg.sender][i].amount);
                    vreturn= vreturn+details[_address][i].amount;
                    
            }
        }
        return vreturn;
    }
    
    


    function changeTokenDuration (uint256 _timePeriod) public onlyOwner returns(bool){
        tokenFreezeDuration= _timePeriod;
        return true;
    }

    function changeToken(address _RYIPToken) public onlyOwner returns(bool){
        RYIPToken=_RYIPToken;
        return true;
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"proposals","outputs":[{"name":"id","type":"uint256"},{"name":"proposer","type":"address"},{"name":"totalForVotes","type":"uint256"},{"name":"totalAgainstVotes","type":"uint256"},{"name":"start","type":"uint256"},{"name":"end","type":"uint256"},{"name":"executor","type":"address"},{"name":"hash","type":"string"},{"name":"totalVotesAvailable","type":"uint256"},{"name":"quorum","type":"uint256"},{"name":"quorumRequired","type":"uint256"},{"name":"open","type":"bool"},{"name":"categoryID","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"owners","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_proposeId","type":"uint256"},{"name":"_endtime","type":"uint256"}],"name":"setPeriod","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_proposeId","type":"uint256"}],"name":"removePropose","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalVotes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"breaker","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"quorum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_minimum","type":"uint256"}],"name":"setMinimum","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"executor","type":"address"},{"name":"hash","type":"string"},{"name":"_categoryID","type":"uint256"},{"name":"_startTime","type":"uint256"},{"name":"_endTime","type":"uint256"}],"name":"propose","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"tokenFreezeDuration","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"id","type":"uint256"}],"name":"checkVoted","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"}],"name":"tallyVotes","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"voteLock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"minimum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"governance","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_breaker","type":"bool"}],"name":"setBreaker","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_RYIPToken","type":"address"}],"name":"changeToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"}],"name":"voteAgainst","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"MinTokenForVote","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"config","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"voter","type":"address"}],"name":"votesOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"id","type":"uint256"}],"name":"getStats","outputs":[{"name":"_for","type":"uint256"},{"name":"_against","type":"uint256"},{"name":"_quorum","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showFreezeToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_add","type":"address"}],"name":"NumberOfVotes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"}],"name":"voteFor","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showUnFreezeToken","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"RYIPToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"voters","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_governance","type":"address"}],"name":"setGovernance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"revoke","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"ClaimToken","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"changeMinTokenForVote","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_quorum","type":"uint256"}],"name":"setQuorum","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"details","outputs":[{"name":"time","type":"uint256"},{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_lock","type":"uint256"}],"name":"setLock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"votes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"proposalCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_timePeriod","type":"uint256"}],"name":"changeTokenDuration","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"}],"name":"execute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"id","type":"uint256"}],"name":"initialize","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_MinTokenForVote","type":"uint256"},{"name":"_RYIPToken","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_hash","type":"string"},{"indexed":false,"name":"id","type":"uint256"},{"indexed":false,"name":"creator","type":"address"},{"indexed":false,"name":"start","type":"uint256"},{"indexed":false,"name":"duration","type":"uint256"},{"indexed":false,"name":"executor","type":"address"},{"indexed":false,"name":"_categoryID","type":"uint256"}],"name":"NewProposal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"id","type":"uint256"},{"indexed":true,"name":"voter","type":"address"},{"indexed":false,"name":"vote","type":"bool"},{"indexed":false,"name":"weight","type":"uint256"}],"name":"Vote","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"id","type":"uint256"},{"indexed":true,"name":"remover","type":"address"},{"indexed":true,"name":"time","type":"uint256"}],"name":"RemoveProposal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"id","type":"uint256"},{"indexed":false,"name":"_for","type":"uint256"},{"indexed":false,"name":"_against","type":"uint256"},{"indexed":false,"name":"quorumReached","type":"bool"}],"name":"ProposalFinished","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"voter","type":"address"},{"indexed":false,"name":"votes","type":"uint256"},{"indexed":false,"name":"totalVotes","type":"uint256"}],"name":"RevokeVoter","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]

60806040526000600360006101000a81548160ff021916908315150217905550600060045560006005556000600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620151806007556000600c55614380600d55670de0b6b3a7640000600e556107d0600f556001601060006101000a81548160ff0219169083151502179055503480156100b657600080fd5b506040516200433b3803806200433b833981810160405260408110156100db57600080fd5b810190808051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a38160058190555080600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505061412f806200020c6000396000f3fe608060405234801561001057600080fd5b50600436106102745760003560e01c80637b30396511610151578063b9df92b0116100c3578063d8bff5a511610087578063d8bff5a514610d50578063da35c66414610da8578063f3414e9b14610dc6578063f83d08ba14610e0c578063fe0d94c114610e2a578063fe4b84df14610e5857610274565b8063b9df92b014610c23578063bb7cee4714610c45578063c1ba4e5914610c8b578063cc05701a14610cb9578063d3e1574714610d2257610274565b80638da5cb5b116101155780638da5cb5b14610ac35780638f32d59b14610b0d57806398868bf714610b2f578063a3ec138d14610b79578063ab033ea914610bd5578063b6549f7514610c1957610274565b80637b303965146109255780637be7a0b1146109755780637db9853e146109cd57806386a5053514610a255780638a579e0b14610a6b57610274565b80634d318b0e116101ea57806366829b16116101ae57806366829b16146107e1578063750e443a1461083d57806375f80f221461088357806379502c55146108a157806379ba5097146108c357806379ec5d3a146108cd57610274565b80634d318b0e146106c35780634e27e916146106f157806352d6804d146107495780635aa6e675146107675780635c0aeb0e146107b157610274565b80630f41e0d21161023c5780630f41e0d2146104e05780631703a018146105025780633209e9e6146105205780633eda75eb1461054e5780634098eb1a1461065f578063470d8c2c1461067d57610274565b8063013cf08b14610279578063022914a7146103d057806303c5b1dc1461042c57806309a6c31e1461047c5780630d15fd77146104c2575b600080fd5b6102a56004803603602081101561028f57600080fd5b8101908080359060200190929190505050610e86565b604051808e81526020018d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c81526020018b81526020018a81526020018981526020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200187815260200186815260200185815260200184151515158152602001838152602001828103825288818151815260200191508051906020019080838360005b8381101561038957808201518184015260208101905061036e565b50505050905090810190601f1680156103b65780820380516001836020036101000a031916815260200191505b509e50505050505050505050505050505060405180910390f35b610412600480360360208110156103e657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fd1565b604051808215151515815260200191505060405180910390f35b6104626004803603604081101561044257600080fd5b810190808035906020019092919080359060200190929190505050610ff1565b604051808215151515815260200191505060405180910390f35b6104a86004803603602081101561049257600080fd5b8101908080359060200190929190505050611105565b604051808215151515815260200191505060405180910390f35b6104ca6112ee565b6040518082815260200191505060405180910390f35b6104e86112f4565b604051808215151515815260200191505060405180910390f35b61050a611307565b6040518082815260200191505060405180910390f35b61054c6004803603602081101561053657600080fd5b810190808035906020019092919050505061130d565b005b610645600480360360a081101561056457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156105a157600080fd5b8201836020820111156105b357600080fd5b803590602001918460018302840111640100000000831117156105d557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019092919080359060200190929190803590602001909291905050506113da565b604051808215151515815260200191505060405180910390f35b6106676116f9565b6040518082815260200191505060405180910390f35b6106a96004803603602081101561069357600080fd5b81019080803590602001909291905050506116ff565b604051808215151515815260200191505060405180910390f35b6106ef600480360360208110156106d957600080fd5b81019080803590602001909291905050506117ce565b005b6107336004803603602081101561070757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119c5565b6040518082815260200191505060405180910390f35b6107516119dd565b6040518082815260200191505060405180910390f35b61076f6119e3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107df600480360360208110156107c757600080fd5b81019080803515159060200190929190505050611a09565b005b610823600480360360208110156107f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ae9565b604051808215151515815260200191505060405180910390f35b6108696004803603602081101561085357600080fd5b8101908080359060200190929190505050611b8e565b604051808215151515815260200191505060405180910390f35b61088b6120a1565b6040518082815260200191505060405180910390f35b6108a96120a7565b604051808215151515815260200191505060405180910390f35b6108cb6120ba565b005b61090f600480360360208110156108e357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612257565b6040518082815260200191505060405180910390f35b6109516004803603602081101561093b57600080fd5b81019080803590602001909291905050506122a0565b60405180848152602001838152602001828152602001935050505060405180910390f35b6109b76004803603602081101561098b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122f7565b6040518082815260200191505060405180910390f35b610a0f600480360360208110156109e357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612532565b6040518082815260200191505060405180910390f35b610a5160048036036020811015610a3b57600080fd5b810190808035906020019092919050505061257e565b604051808215151515815260200191505060405180910390f35b610aad60048036036020811015610a8157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612a90565b6040518082815260200191505060405180910390f35b610acb612ccb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610b15612cf4565b604051808215151515815260200191505060405180910390f35b610b37612d4b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610bbb60048036036020811015610b8f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d71565b604051808215151515815260200191505060405180910390f35b610c1760048036036020811015610beb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d91565b005b610c21612e98565b005b610c2b61314d565b604051808215151515815260200191505060405180910390f35b610c7160048036036020811015610c5b57600080fd5b8101908080359060200190929190505050613985565b604051808215151515815260200191505060405180910390f35b610cb760048036036020811015610ca157600080fd5b8101908080359060200190929190505050613a66565b005b610d0560048036036040811015610ccf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613b33565b604051808381526020018281526020019250505060405180910390f35b610d4e60048036036020811015610d3857600080fd5b8101908080359060200190929190505050613b71565b005b610d9260048036036020811015610d6657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613c3e565b6040518082815260200191505060405180910390f35b610db0613c56565b6040518082815260200191505060405180910390f35b610df260048036036020811015610ddc57600080fd5b8101908080359060200190929190505050613c5c565b604051808215151515815260200191505060405180910390f35b610e14613cc7565b6040518082815260200191505060405180910390f35b610e5660048036036020811015610e4057600080fd5b8101908080359060200190929190505050613ccd565b005b610e8460048036036020811015610e6e57600080fd5b8101908080359060200190929190505050613ef0565b005b600b6020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060040154908060050154908060060154908060070154908060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806009018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f9c5780601f10610f7157610100808354040283529160200191610f9c565b820191906000526020600020905b815481529060010190602001808311610f7f57829003601f168201915b50505050509080600a01549080600b01549080600c01549080600d0160009054906101000a900460ff169080600e015490508d565b60026020528060005260406000206000915054906101000a900460ff1681565b60003373ffffffffffffffffffffffffffffffffffffffff16600b600085815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806110b3575060011515600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b6110bc57600080fd5b6000600b60008581526020019081526020016000206007015414156110e057600080fd5b81600b6000858152602001908152602001600020600701819055506001905092915050565b60003373ffffffffffffffffffffffffffffffffffffffff16600b600084815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806111c7575060011515600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b6111d057600080fd5b600b60008381526020019081526020016000206000808201600090556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560048201600090556005820160009055600682016000905560078201600090556008820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560098201600061126a9190613ff3565b600a820160009055600b820160009055600c820160009055600d820160006101000a81549060ff0219169055600e8201600090555050423373ffffffffffffffffffffffffffffffffffffffff16837f5be018cf91a096039fc91b8ba02cd510542a8f189c5f448dfce0c298bb025f4060405160405180910390a460019050919050565b60115481565b600360009054906101000a900460ff1681565b600f5481565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146113d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600e8190555050565b6000808314156113e8574292505b6001600c5401600c81905550604051806101a00160405280600c5481526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081526020018481526020018381526020018773ffffffffffffffffffffffffffffffffffffffff168152602001868152602001601154815260200160008152602001600f54815260200160011515815260200185815250600b6000600c5481526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160040155606082015181600501556080820151816006015560a0820151816007015560c08201518160080160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060e082015181600901908051906020019061157592919061403b565b5061010082015181600a015561012082015181600b015561014082015181600c015561016082015181600d0160006101000a81548160ff02191690831515021790555061018082015181600e01559050507fc64a2bb9f7be1471d0712a68cd18bc1462f9691469f55e66562681185bc3444285600c543386868b8a60405180806020018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825289818151815260200191508051906020019080838360005b838110156116ac578082015181840152602081019050611691565b50505050905090810190601f1680156116d95780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390a16001905095945050505050565b60075481565b60006001600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414806117b657506001600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b156117c457600190506117c9565b600090505b919050565b60011515600b6000838152602001908152602001600020600d0160009054906101000a900460ff1615151461186b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260058152602001807f216f70656e00000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b600083815260200190815260200160002060070154106118f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f21656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600080611902836122a0565b50915091506000809050600b6000858152602001908152602001600020600c0154600b6000868152602001908152602001600020600b01541061194457600190505b6000600b6000868152602001908152602001600020600d0160006101000a81548160ff021916908315150217905550837f66ab4d2a1f6db1c01d1d46ab61a9c333b5a4de5e75cc7a68e1495b4badbd009b8484846040518084815260200183815260200182151515158152602001935050505060405180910390a250505050565b600a6020528060005260406000206000915090505481565b600e5481565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611acc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600360006101000a81548160ff02191690831515021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b4457600080fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600042600b60008481526020019081526020016000206006015410611c1b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f3c7374617274000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b60008481526020019081526020016000206007015411611ca6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f3e656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054148015611d5c57506000600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b611dce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f416c726561647920566f7465640000000000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd33306005546040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611ead57600080fd5b505af1158015611ec1573d6000803e3d6000fd5b505050506040513d6020811015611ed757600080fd5b8101908080519060200190929190505050506001600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601154600b6000848152602001908152602001600020600a01819055506001600b60008481526020019081526020016000206005015401600b600084815260200190815260200160002060050181905550611f9b6140bb565b6040518060400160405280600754420181526020016005548152509050600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050503373ffffffffffffffffffffffffffffffffffffffff16837f88d35328232823f54954b6627e9f732371656f6daa40cb1b01b27dc7875a7b476000600160405180831515151581526020018281526020019250505060405180910390a36001915050919050565b60055481565b601060009054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461211457600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000600b6000858152602001908152602001600020600401549250600b6000858152602001908152602001600020600501549150600b6000858152602001908152602001600020600b015490509193909250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561239b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b600080905060008090505b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905081101561252857600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020818154811061243a57fe5b906000526020600020906002020160000154421080156124b557506000600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481106124a157fe5b906000526020600020906002020160010154115b1561251b57600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020818154811061250457fe5b906000526020600020906002020160010154820191505b80806001019150506123a6565b5080915050919050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b600042600b6000848152602001908152602001600020600601541061260b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f3c7374617274000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b60008481526020019081526020016000206007015411612696576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f3e656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414801561274c57506000600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b6127be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f416c726561647920566f7465640000000000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd33306005546040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561289d57600080fd5b505af11580156128b1573d6000803e3d6000fd5b505050506040513d60208110156128c757600080fd5b8101908080519060200190929190505050506001600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601154600b6000848152602001908152602001600020600a01819055506001600b60008481526020019081526020016000206004015401600b60008481526020019081526020016000206004018190555061298b6140bb565b6040518060400160405280600754420181526020016005548152509050600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050503373ffffffffffffffffffffffffffffffffffffffff16837f88d35328232823f54954b6627e9f732371656f6daa40cb1b01b27dc7875a7b4760018060405180831515151581526020018281526020019250505060405180910390a36001915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612b34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b600080905060008090505b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015612cc157600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208181548110612bd357fe5b90600052602060002090600202016000015442118015612c4e57506000600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612c3a57fe5b906000526020600020906002020160010154115b15612cb457600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208181548110612c9d57fe5b906000526020600020906002020160010154820191505b8080600101915050612b3f565b5080915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612e54576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80601060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60011515600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514612f5e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f21766f746572000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601154101561300c576000601181905550613053565b601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546011819055505b7e330fa0724b41c0d187cfad0aa7ff5fa2ff7e742995886f55fda6f5909914b833601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a16000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b600080600090506000809050600080905060008090505b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156137ae57600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106131f857fe5b9060005260206000209060020201600001544211801561327357506000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020828154811061325f57fe5b906000526020600020906002020160010154115b156137a057600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106132c257fe5b906000526020600020906002020160010154840193506001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050111561372a57600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905003815481106133b257fe5b9060005260206000209060020201600101549250600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050038154811061345557fe5b9060005260206000209060020201600001549150600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106134b357fe5b906000526020600020906002020160010154600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050038154811061355457fe5b906000526020600020906002020160010181905550600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106135b357fe5b906000526020600020906002020160000154600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050038154811061365457fe5b90600052602060002090600202016000018190555082600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481106136b457fe5b90600052602060002090600202016001018190555081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020828154811061371457fe5b9060005260206000209060020201600001819055505b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548061377257fe5b60019003818190600052602060002090600202016000808201600090556001820160009055505090556137a9565b80806001019150505b613164565b5060008311613825576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642062616c616e6365000000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156138ce57600080fd5b505af11580156138e2573d6000803e3d6000fd5b505050506040513d60208110156138f857600080fd5b810190808051906020019092919050505061397b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f7472616e736665722073656e64696e67206661696c000000000000000000000081525060200191505060405180910390fd5b6001935050505090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146139e057600080fd5b60008211613a56576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f696e76616c696420416d6f756e7400000000000000000000000000000000000081525060200191505060405180910390fd5b8160058190555060019050919050565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613b29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600f8190555050565b60096020528160005260406000208181548110613b4c57fe5b9060005260206000209060020201600091509150508060000154908060010154905082565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613c34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600d8190555050565b60126020528060005260406000206000915090505481565b600c5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613cb757600080fd5b8160078190555060019050919050565b600d5481565b6000806000613cdb846122a0565b92509250925080600b6000868152602001908152602001600020600c015410613d6c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f2171756f72756d0000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b60008681526020019081526020016000206007015410613df7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f21656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60011515600b6000868152602001908152602001600020600d0160009054906101000a900460ff1615151415613e3157613e30846117ce565b5b600b600085815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c0137f7a858585856040518563ffffffff1660e01b815260040180858152602001848152602001838152602001828152602001945050505050600060405180830381600087803b158015613ed257600080fd5b505af1158015613ee6573d6000803e3d6000fd5b5050505050505050565b60011515601060009054906101000a900460ff16151514613f79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f21636f6e6669670000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000601060006101000a81548160ff02191690831515021790555080600c8190555073feb4acf3df3cdea7399794d0869ef76a6efaff52601060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f106140195750614038565b601f01602090049060005260206000209081019061403791906140d5565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061407c57805160ff19168380011785556140aa565b828001600101855582156140aa579182015b828111156140a957825182559160200191906001019061408e565b5b5090506140b791906140d5565b5090565b604051806040016040528060008152602001600081525090565b6140f791905b808211156140f35760008160009055506001016140db565b5090565b9056fea265627a7a72305820023bceb09e1eb98effb57a095aafc80026fdb58936deb7c6c9f7ab5c82af84b464736f6c634300050900320000000000000000000000000000000000000000000000015af1d78b58c40000000000000000000000000000d78e5b24aae1bd03a488af642770e2abb986f9d5

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106102745760003560e01c80637b30396511610151578063b9df92b0116100c3578063d8bff5a511610087578063d8bff5a514610d50578063da35c66414610da8578063f3414e9b14610dc6578063f83d08ba14610e0c578063fe0d94c114610e2a578063fe4b84df14610e5857610274565b8063b9df92b014610c23578063bb7cee4714610c45578063c1ba4e5914610c8b578063cc05701a14610cb9578063d3e1574714610d2257610274565b80638da5cb5b116101155780638da5cb5b14610ac35780638f32d59b14610b0d57806398868bf714610b2f578063a3ec138d14610b79578063ab033ea914610bd5578063b6549f7514610c1957610274565b80637b303965146109255780637be7a0b1146109755780637db9853e146109cd57806386a5053514610a255780638a579e0b14610a6b57610274565b80634d318b0e116101ea57806366829b16116101ae57806366829b16146107e1578063750e443a1461083d57806375f80f221461088357806379502c55146108a157806379ba5097146108c357806379ec5d3a146108cd57610274565b80634d318b0e146106c35780634e27e916146106f157806352d6804d146107495780635aa6e675146107675780635c0aeb0e146107b157610274565b80630f41e0d21161023c5780630f41e0d2146104e05780631703a018146105025780633209e9e6146105205780633eda75eb1461054e5780634098eb1a1461065f578063470d8c2c1461067d57610274565b8063013cf08b14610279578063022914a7146103d057806303c5b1dc1461042c57806309a6c31e1461047c5780630d15fd77146104c2575b600080fd5b6102a56004803603602081101561028f57600080fd5b8101908080359060200190929190505050610e86565b604051808e81526020018d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018c81526020018b81526020018a81526020018981526020018873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200187815260200186815260200185815260200184151515158152602001838152602001828103825288818151815260200191508051906020019080838360005b8381101561038957808201518184015260208101905061036e565b50505050905090810190601f1680156103b65780820380516001836020036101000a031916815260200191505b509e50505050505050505050505050505060405180910390f35b610412600480360360208110156103e657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fd1565b604051808215151515815260200191505060405180910390f35b6104626004803603604081101561044257600080fd5b810190808035906020019092919080359060200190929190505050610ff1565b604051808215151515815260200191505060405180910390f35b6104a86004803603602081101561049257600080fd5b8101908080359060200190929190505050611105565b604051808215151515815260200191505060405180910390f35b6104ca6112ee565b6040518082815260200191505060405180910390f35b6104e86112f4565b604051808215151515815260200191505060405180910390f35b61050a611307565b6040518082815260200191505060405180910390f35b61054c6004803603602081101561053657600080fd5b810190808035906020019092919050505061130d565b005b610645600480360360a081101561056457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156105a157600080fd5b8201836020820111156105b357600080fd5b803590602001918460018302840111640100000000831117156105d557600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019092919080359060200190929190803590602001909291905050506113da565b604051808215151515815260200191505060405180910390f35b6106676116f9565b6040518082815260200191505060405180910390f35b6106a96004803603602081101561069357600080fd5b81019080803590602001909291905050506116ff565b604051808215151515815260200191505060405180910390f35b6106ef600480360360208110156106d957600080fd5b81019080803590602001909291905050506117ce565b005b6107336004803603602081101561070757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119c5565b6040518082815260200191505060405180910390f35b6107516119dd565b6040518082815260200191505060405180910390f35b61076f6119e3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107df600480360360208110156107c757600080fd5b81019080803515159060200190929190505050611a09565b005b610823600480360360208110156107f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ae9565b604051808215151515815260200191505060405180910390f35b6108696004803603602081101561085357600080fd5b8101908080359060200190929190505050611b8e565b604051808215151515815260200191505060405180910390f35b61088b6120a1565b6040518082815260200191505060405180910390f35b6108a96120a7565b604051808215151515815260200191505060405180910390f35b6108cb6120ba565b005b61090f600480360360208110156108e357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612257565b6040518082815260200191505060405180910390f35b6109516004803603602081101561093b57600080fd5b81019080803590602001909291905050506122a0565b60405180848152602001838152602001828152602001935050505060405180910390f35b6109b76004803603602081101561098b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506122f7565b6040518082815260200191505060405180910390f35b610a0f600480360360208110156109e357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612532565b6040518082815260200191505060405180910390f35b610a5160048036036020811015610a3b57600080fd5b810190808035906020019092919050505061257e565b604051808215151515815260200191505060405180910390f35b610aad60048036036020811015610a8157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612a90565b6040518082815260200191505060405180910390f35b610acb612ccb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610b15612cf4565b604051808215151515815260200191505060405180910390f35b610b37612d4b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610bbb60048036036020811015610b8f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d71565b604051808215151515815260200191505060405180910390f35b610c1760048036036020811015610beb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612d91565b005b610c21612e98565b005b610c2b61314d565b604051808215151515815260200191505060405180910390f35b610c7160048036036020811015610c5b57600080fd5b8101908080359060200190929190505050613985565b604051808215151515815260200191505060405180910390f35b610cb760048036036020811015610ca157600080fd5b8101908080359060200190929190505050613a66565b005b610d0560048036036040811015610ccf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613b33565b604051808381526020018281526020019250505060405180910390f35b610d4e60048036036020811015610d3857600080fd5b8101908080359060200190929190505050613b71565b005b610d9260048036036020811015610d6657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613c3e565b6040518082815260200191505060405180910390f35b610db0613c56565b6040518082815260200191505060405180910390f35b610df260048036036020811015610ddc57600080fd5b8101908080359060200190929190505050613c5c565b604051808215151515815260200191505060405180910390f35b610e14613cc7565b6040518082815260200191505060405180910390f35b610e5660048036036020811015610e4057600080fd5b8101908080359060200190929190505050613ccd565b005b610e8460048036036020811015610e6e57600080fd5b8101908080359060200190929190505050613ef0565b005b600b6020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060040154908060050154908060060154908060070154908060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806009018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f9c5780601f10610f7157610100808354040283529160200191610f9c565b820191906000526020600020905b815481529060010190602001808311610f7f57829003601f168201915b50505050509080600a01549080600b01549080600c01549080600d0160009054906101000a900460ff169080600e015490508d565b60026020528060005260406000206000915054906101000a900460ff1681565b60003373ffffffffffffffffffffffffffffffffffffffff16600b600085815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806110b3575060011515600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b6110bc57600080fd5b6000600b60008581526020019081526020016000206007015414156110e057600080fd5b81600b6000858152602001908152602001600020600701819055506001905092915050565b60003373ffffffffffffffffffffffffffffffffffffffff16600b600084815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806111c7575060011515600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b6111d057600080fd5b600b60008381526020019081526020016000206000808201600090556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560048201600090556005820160009055600682016000905560078201600090556008820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560098201600061126a9190613ff3565b600a820160009055600b820160009055600c820160009055600d820160006101000a81549060ff0219169055600e8201600090555050423373ffffffffffffffffffffffffffffffffffffffff16837f5be018cf91a096039fc91b8ba02cd510542a8f189c5f448dfce0c298bb025f4060405160405180910390a460019050919050565b60115481565b600360009054906101000a900460ff1681565b600f5481565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146113d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600e8190555050565b6000808314156113e8574292505b6001600c5401600c81905550604051806101a00160405280600c5481526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081526020018481526020018381526020018773ffffffffffffffffffffffffffffffffffffffff168152602001868152602001601154815260200160008152602001600f54815260200160011515815260200185815250600b6000600c5481526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160040155606082015181600501556080820151816006015560a0820151816007015560c08201518160080160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060e082015181600901908051906020019061157592919061403b565b5061010082015181600a015561012082015181600b015561014082015181600c015561016082015181600d0160006101000a81548160ff02191690831515021790555061018082015181600e01559050507fc64a2bb9f7be1471d0712a68cd18bc1462f9691469f55e66562681185bc3444285600c543386868b8a60405180806020018881526020018773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825289818151815260200191508051906020019080838360005b838110156116ac578082015181840152602081019050611691565b50505050905090810190601f1680156116d95780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390a16001905095945050505050565b60075481565b60006001600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414806117b657506001600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b156117c457600190506117c9565b600090505b919050565b60011515600b6000838152602001908152602001600020600d0160009054906101000a900460ff1615151461186b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260058152602001807f216f70656e00000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b600083815260200190815260200160002060070154106118f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f21656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600080611902836122a0565b50915091506000809050600b6000858152602001908152602001600020600c0154600b6000868152602001908152602001600020600b01541061194457600190505b6000600b6000868152602001908152602001600020600d0160006101000a81548160ff021916908315150217905550837f66ab4d2a1f6db1c01d1d46ab61a9c333b5a4de5e75cc7a68e1495b4badbd009b8484846040518084815260200183815260200182151515158152602001935050505060405180910390a250505050565b600a6020528060005260406000206000915090505481565b600e5481565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611acc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600360006101000a81548160ff02191690831515021790555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b4457600080fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b600042600b60008481526020019081526020016000206006015410611c1b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f3c7374617274000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b60008481526020019081526020016000206007015411611ca6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f3e656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054148015611d5c57506000600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b611dce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f416c726561647920566f7465640000000000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd33306005546040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611ead57600080fd5b505af1158015611ec1573d6000803e3d6000fd5b505050506040513d6020811015611ed757600080fd5b8101908080519060200190929190505050506001600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601154600b6000848152602001908152602001600020600a01819055506001600b60008481526020019081526020016000206005015401600b600084815260200190815260200160002060050181905550611f9b6140bb565b6040518060400160405280600754420181526020016005548152509050600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050503373ffffffffffffffffffffffffffffffffffffffff16837f88d35328232823f54954b6627e9f732371656f6daa40cb1b01b27dc7875a7b476000600160405180831515151581526020018281526020019250505060405180910390a36001915050919050565b60055481565b601060009054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461211457600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000601260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000806000600b6000858152602001908152602001600020600401549250600b6000858152602001908152602001600020600501549150600b6000858152602001908152602001600020600b015490509193909250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561239b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b600080905060008090505b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905081101561252857600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020818154811061243a57fe5b906000526020600020906002020160000154421080156124b557506000600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481106124a157fe5b906000526020600020906002020160010154115b1561251b57600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020818154811061250457fe5b906000526020600020906002020160010154820191505b80806001019150506123a6565b5080915050919050565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490509050919050565b600042600b6000848152602001908152602001600020600601541061260b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f3c7374617274000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b60008481526020019081526020016000206007015411612696576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f3e656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414801561274c57506000600b600084815260200190815260200160002060030160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054145b6127be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f416c726561647920566f7465640000000000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd33306005546040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561289d57600080fd5b505af11580156128b1573d6000803e3d6000fd5b505050506040513d60208110156128c757600080fd5b8101908080519060200190929190505050506001600b600084815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601154600b6000848152602001908152602001600020600a01819055506001600b60008481526020019081526020016000206004015401600b60008481526020019081526020016000206004018190555061298b6140bb565b6040518060400160405280600754420181526020016005548152509050600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819080600181540180825580915050906001820390600052602060002090600202016000909192909190915060008201518160000155602082015181600101555050503373ffffffffffffffffffffffffffffffffffffffff16837f88d35328232823f54954b6627e9f732371656f6daa40cb1b01b27dc7875a7b4760018060405180831515151581526020018281526020019250505060405180910390a36001915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612b34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642061646472657373000000000000000000000000000000000081525060200191505060405180910390fd5b600080905060008090505b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050811015612cc157600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208181548110612bd357fe5b90600052602060002090600202016000015442118015612c4e57506000600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208281548110612c3a57fe5b906000526020600020906002020160010154115b15612cb457600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208181548110612c9d57fe5b906000526020600020906002020160010154820191505b8080600101915050612b3f565b5080915050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612e54576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80601060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60011515600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514612f5e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f21766f746572000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601154101561300c576000601181905550613053565b601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546011819055505b7e330fa0724b41c0d187cfad0aa7ff5fa2ff7e742995886f55fda6f5909914b833601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054601154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a16000601260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550565b600080600090506000809050600080905060008090505b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020805490508110156137ae57600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106131f857fe5b9060005260206000209060020201600001544211801561327357506000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020828154811061325f57fe5b906000526020600020906002020160010154115b156137a057600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106132c257fe5b906000526020600020906002020160010154840193506001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050111561372a57600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208054905003815481106133b257fe5b9060005260206000209060020201600101549250600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050038154811061345557fe5b9060005260206000209060020201600001549150600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106134b357fe5b906000526020600020906002020160010154600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050038154811061355457fe5b906000526020600020906002020160010181905550600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081815481106135b357fe5b906000526020600020906002020160000154600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080549050038154811061365457fe5b90600052602060002090600202016000018190555082600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002082815481106136b457fe5b90600052602060002090600202016001018190555081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020828154811061371457fe5b9060005260206000209060020201600001819055505b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548061377257fe5b60019003818190600052602060002090600202016000808201600090556001820160009055505090556137a9565b80806001019150505b613164565b5060008311613825576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f696e76616c69642062616c616e6365000000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156138ce57600080fd5b505af11580156138e2573d6000803e3d6000fd5b505050506040513d60208110156138f857600080fd5b810190808051906020019092919050505061397b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f7472616e736665722073656e64696e67206661696c000000000000000000000081525060200191505060405180910390fd5b6001935050505090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146139e057600080fd5b60008211613a56576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f696e76616c696420416d6f756e7400000000000000000000000000000000000081525060200191505060405180910390fd5b8160058190555060019050919050565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613b29576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600f8190555050565b60096020528160005260406000208181548110613b4c57fe5b9060005260206000209060020201600091509150508060000154908060010154905082565b601060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613c34576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600d8190555050565b60126020528060005260406000206000915090505481565b600c5481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613cb757600080fd5b8160078190555060019050919050565b600d5481565b6000806000613cdb846122a0565b92509250925080600b6000868152602001908152602001600020600c015410613d6c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f2171756f72756d0000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b42600b60008681526020019081526020016000206007015410613df7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f21656e640000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60011515600b6000868152602001908152602001600020600d0160009054906101000a900460ff1615151415613e3157613e30846117ce565b5b600b600085815260200190815260200160002060080160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c0137f7a858585856040518563ffffffff1660e01b815260040180858152602001848152602001838152602001828152602001945050505050600060405180830381600087803b158015613ed257600080fd5b505af1158015613ee6573d6000803e3d6000fd5b5050505050505050565b60011515601060009054906101000a900460ff16151514613f79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260078152602001807f21636f6e6669670000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b6000601060006101000a81548160ff02191690831515021790555080600c8190555073feb4acf3df3cdea7399794d0869ef76a6efaff52601060016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b50805460018160011615610100020316600290046000825580601f106140195750614038565b601f01602090049060005260206000209081019061403791906140d5565b5b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061407c57805160ff19168380011785556140aa565b828001600101855582156140aa579182015b828111156140a957825182559160200191906001019061408e565b5b5090506140b791906140d5565b5090565b604051806040016040528060008152602001600081525090565b6140f791905b808211156140f35760008160009055506001016140db565b5090565b9056fea265627a7a72305820023bceb09e1eb98effb57a095aafc80026fdb58936deb7c6c9f7ab5c82af84b464736f6c63430005090032

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

0000000000000000000000000000000000000000000000015af1d78b58c40000000000000000000000000000d78e5b24aae1bd03a488af642770e2abb986f9d5

-----Decoded View---------------
Arg [0] : _MinTokenForVote (uint256): 25000000000000000000
Arg [1] : _RYIPToken (address): 0xd78e5B24AaE1BD03A488aF642770E2aBb986F9D5

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000015af1d78b58c40000
Arg [1] : 000000000000000000000000d78e5b24aae1bd03a488af642770e2abb986f9d5


Deployed Bytecode Sourcemap

6057:12244:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6057:12244:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:43;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7311:43:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7311:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6105:36;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6105:36:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8204:288;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8204:288:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10041;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10041:288:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11923:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6160:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7459:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8058:138;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8058:138:0;;;;;;;;;;;;;;;;;:::i;:::-;;9063:878;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;9063:878:0;;;;;;;;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;9063:878:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;9063:878:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;9063:878:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;9063:878:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6307:40;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11651:266;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11651:266:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;11085:455;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11085:455:0;;;;;;;;;;;;;;;;;:::i;:::-;;6775:40;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6775:40:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7426:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7525:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6627:140;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6627:140:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;18164:132;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18164:132:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13513:885;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13513:885:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6226:32;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7491:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2787:198;;;:::i;:::-;;11548:97;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11548:97:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10748:235;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10748:235:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16687:631;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16687:631:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13396:111;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13396:111:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12456:934;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12456:934:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17328:652;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17328:652:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2412:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2497:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6265:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6461:38;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6461:38:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7755:153;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7755:153:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;12068:378;;;:::i;:::-;;14604:2069;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;14404:190;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14404:190:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7916:134;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7916:134:0;;;;;;;;;;;;;;;;;:::i;:::-;;6576:40;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6576:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;8500:126;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8500:126:0;;;;;;;;;;;;;;;;;:::i;:::-;;11952:37;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11952:37:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7361:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18002:154;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18002:154:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7395:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10337:403;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10337:403:0;;;;;;;;;;;;;;;;;:::i;:::-;;8634:209;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8634:209:0;;;;;;;;;;;;;;;;;:::i;:::-;;7311:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6105:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;8204:288::-;8270:4;8326:10;8294:42;;:9;:21;8304:10;8294:21;;;;;;;;;;;:30;;;;;;;;;;;;:42;;;:70;;;;8360:4;8340:24;;:6;:18;8347:10;8340:18;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;8294:70;8286:79;;;;;;8411:1;8384:9;:21;8394:10;8384:21;;;;;;;;;;;:25;;;:28;;8376:37;;;;;;8453:8;8427:9;:21;8437:10;8427:21;;;;;;;;;;;:25;;:34;;;;8480:4;8473:11;;8204:288;;;;:::o;10041:::-;10096:4;10152:10;10120:42;;:9;:21;10130:10;10120:21;;;;;;;;;;;:30;;;;;;;;;;;;:42;;;:70;;;;10186:4;10166:24;;:6;:18;10173:10;10166:18;;;;;;;;;;;;;;;;;;;;;;;;;:24;;;10120:70;10112:79;;;;;;10209:9;:21;10219:10;10209:21;;;;;;;;;;;;10202:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10283:15;10272:10;10246:53;;10261:10;10246:53;;;;;;;;;;10317:4;10310:11;;10041:288;;;:::o;11923:22::-;;;;:::o;6160:27::-;;;;;;;;;;;;;:::o;7459:25::-;;;;:::o;8058:138::-;8133:10;;;;;;;;;;;8119:24;;:10;:24;;;8111:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8180:8;8170:7;:18;;;;8058:138;:::o;9063:878::-;9183:4;9218:1;9206:10;:13;9203:79;;;9255:15;9244:26;;9203:79;9323:1;9309:13;;:15;9295:13;:29;;;;9362:442;;;;;;;;9390:13;;9362:442;;;;9428:10;9362:442;;;;;;9468:1;9362:442;;;;9503:1;9362:442;;;;9526:10;9362:442;;;;9556:8;9362:442;;;;9589:8;9362:442;;;;;;9618:4;9362:442;;;;9658:10;;9362:442;;;;9691:1;9362:442;;;;9723:6;;9362:442;;;;9750:4;9362:442;;;;;;9781:11;9362:442;;;9335:9;:24;9345:13;;9335:24;;;;;;;;;;;:469;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9822:89;9834:4;9840:13;;9855:10;9867;9879:8;9889;9899:11;9822:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;9822:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9929:4;9922:11;;9063:878;;;;;;;:::o;6307:40::-;;;;:::o;11651:266::-;11700:4;11756:1;11720:9;:13;11730:2;11720:13;;;;;;;;;;;:22;;:34;11743:10;11720:34;;;;;;;;;;;;;;;;:37;:82;;;;11801:1;11761:9;:13;11771:2;11761:13;;;;;;;;;;;:26;;:38;11788:10;11761:38;;;;;;;;;;;;;;;;:41;11720:82;11717:193;;;11833:4;11826:11;;;;11717:193;11893:5;11886:12;;11651:266;;;;:::o;11085:455::-;11162:4;11140:26;;:9;:13;11150:2;11140:13;;;;;;;;;;;:18;;;;;;;;;;;;:26;;;11132:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11215:15;11195:9;:13;11205:2;11195:13;;;;;;;;;;;:17;;;:35;11187:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11253:9;11264:13;11282:12;11291:2;11282:8;:12::i;:::-;11252:42;;;;;11305:12;11320:5;11305:20;;11364:9;:13;11374:2;11364:13;;;;;;;;;;;:28;;;11340:9;:13;11350:2;11340:13;;;;;;;;;;;:20;;;:52;11336:99;;11419:4;11409:14;;11336:99;11466:5;11445:9;:13;11455:2;11445:13;;;;;;;;;;;:18;;;:26;;;;;;;;;;;;;;;;;;11504:2;11487:45;11508:4;11514:8;11524:7;11487:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11085:455;;;;:::o;6775:40::-;;;;;;;;;;;;;;;;;:::o;7426:26::-;;;;:::o;7525:25::-;;;;;;;;;;;;;:::o;6627:140::-;6704:10;;;;;;;;;;;6690:24;;:10;:24;;;6682:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6751:8;6741:7;;:18;;;;;;;;;;;;;;;;;;6627:140;:::o;18164:132::-;18230:4;2379:6;;;;;;;;;;;2365:20;;:10;:20;;;2357:29;;;;;;18256:10;18246:9;;:20;;;;;;;;;;;;;;;;;;18284:4;18277:11;;18164:132;;;:::o;13513:885::-;13558:4;13605:15;13583:9;:13;13593:2;13583:13;;;;;;;;;;;:19;;;:37;13575:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13671:15;13651:9;:13;13661:2;13651:13;;;;;;;;;;;:17;;;:35;13643:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13751:1;13715:9;:13;13725:2;13715:13;;;;;;;;;;;:22;;:34;13738:10;13715:34;;;;;;;;;;;;;;;;:37;:82;;;;;13796:1;13756:9;:13;13766:2;13756:13;;;;;;;;;;;:26;;:38;13783:10;13756:38;;;;;;;;;;;;;;;;:41;13715:82;13707:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13895:9;;;;;;;;;;;13888:30;;;13919:10;13938:4;13944:15;;13888:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13888:72:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13888:72:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13888:72:0;;;;;;;;;;;;;;;;;14067:1;14026:9;:13;14036:2;14026:13;;;;;;;;;;;:26;;:38;14053:10;14026:38;;;;;;;;;;;;;;;:42;;;;14115:10;;14079:9;:13;14089:2;14079:13;;;;;;;;;;;:33;;:46;;;;14203:1;14169:9;:13;14179:2;14169:13;;;;;;;;;;;:31;;;:35;14136:9;:13;14146:2;14136:13;;;;;;;;;;;:31;;:68;;;;14219:15;;:::i;:::-;14235:46;;;;;;;;14245:19;;14241:3;:23;14235:46;;;;14265:15;;14235:46;;;14219:62;;14292:7;:19;14300:10;14292:19;;;;;;;;;;;;;;;14317:2;14292:28;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;14292:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14347:10;14338:30;;14343:2;14338:30;14359:5;14366:1;14338:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;14386:4;14379:11;;;13513:885;;;:::o;6226:32::-;;;;:::o;7491:25::-;;;;;;;;;;;;;:::o;2787:198::-;2854:8;;;;;;;;;;;2840:22;;:10;:22;;;2832:31;;;;;;2908:8;;;;;;;;;;;2879:38;;2900:6;;;;;;;;;;;2879:38;;;;;;;;;;;;2937:8;;;;;;;;;;;2928:6;;:17;;;;;;;;;;;;;;;;;;2975:1;2956:8;;:21;;;;;;;;;;;;;;;;;;2787:198::o;11548:97::-;11601:4;11625:5;:12;11631:5;11625:12;;;;;;;;;;;;;;;;11618:19;;11548:97;;;:::o;10748:235::-;10796:9;10807:13;10822:12;10854:9;:13;10864:2;10854:13;;;;;;;;;;;:27;;;10847:34;;10903:9;:13;10913:2;10903:13;;;;;;;;;;;:31;;;10892:42;;10955:9;:13;10965:2;10955:13;;;;;;;;;;;:20;;;10945:30;;10748:235;;;;;:::o;16687:631::-;16750:7;16796:1;16778:20;;:8;:20;;;;16770:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16828:15;16844:1;16828:17;;16957:9;16967:1;16957:11;;16952:332;16971:7;:17;16979:8;16971:17;;;;;;;;;;;;;;;:24;;;;16969:1;:26;16952:332;;;17026:7;:17;17034:8;17026:17;;;;;;;;;;;;;;;17044:1;17026:20;;;;;;;;;;;;;;;;;;:25;;;17022:3;:29;:62;;;;;17083:1;17055:7;:17;17063:8;17055:17;;;;;;;;;;;;;;;17073:1;17055:20;;;;;;;;;;;;;;;;;;:27;;;:29;17022:62;17018:255;;;17230:7;:17;17238:8;17230:17;;;;;;;;;;;;;;;17248:1;17230:20;;;;;;;;;;;;;;;;;;:27;;;17222:7;:35;17213:44;;17018:255;16997:3;;;;;;;16952:332;;;;17301:7;17294:14;;;16687:631;;;:::o;13396:111::-;13453:7;13479;:13;13487:4;13479:13;;;;;;;;;;;;;;;:20;;;;13472:27;;13396:111;;;:::o;12456:934::-;12497:4;12543:15;12521:9;:13;12531:2;12521:13;;;;;;;;;;;:19;;;:37;12513:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12609:15;12589:9;:13;12599:2;12589:13;;;;;;;;;;;:17;;;:35;12581:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12689:1;12653:9;:13;12663:2;12653:13;;;;;;;;;;;:22;;:34;12676:10;12653:34;;;;;;;;;;;;;;;;:37;:82;;;;;12734:1;12694:9;:13;12704:2;12694:13;;;;;;;;;;;:26;;:38;12721:10;12694:38;;;;;;;;;;;;;;;;:41;12653:82;12645:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12889:9;;;;;;;;;;;12882:30;;;12913:10;12932:4;12938:15;;12882:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12882:72:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12882:72:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12882:72:0;;;;;;;;;;;;;;;;;13068:1;13031:9;:13;13041:2;13031:13;;;;;;;;;;;:22;;:34;13054:10;13031:34;;;;;;;;;;;;;;;:38;;;;13116:10;;13080:9;:13;13090:2;13080:13;;;;;;;;;;;:33;;:46;;;;13196:1;13166:9;:13;13176:2;13166:13;;;;;;;;;;;:27;;;:31;13137:9;:13;13147:2;13137:13;;;;;;;;;;;:27;;:60;;;;13210:15;;:::i;:::-;13226:46;;;;;;;;13236:19;;13232:3;:23;13226:46;;;;13256:15;;13226:46;;;13210:62;;13285:7;:19;13293:10;13285:19;;;;;;;;;;;;;;;13310:2;13285:28;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;13285:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13340:10;13331:29;;13336:2;13331:29;13352:4;13358:1;13331:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;13378:4;13371:11;;;12456:934;;;:::o;17328:652::-;17394:7;17438:1;17420:20;;:8;:20;;;;17412:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17468:15;17484:1;17468:17;;17599:9;17609:1;17599:11;;17594:354;17613:7;:17;17621:8;17613:17;;;;;;;;;;;;;;;:24;;;;17611:1;:26;17594:354;;;17668:7;:17;17676:8;17668:17;;;;;;;;;;;;;;;17686:1;17668:20;;;;;;;;;;;;;;;;;;:25;;;17664:3;:29;:62;;;;;17725:1;17697:7;:17;17705:8;17697:17;;;;;;;;;;;;;;;17715:1;17697:20;;;;;;;;;;;;;;;;;;:27;;;:29;17664:62;17660:277;;;17872:7;:17;17880:8;17872:17;;;;;;;;;;;;;;;17890:1;17872:20;;;;;;;;;;;;;;;;;;:27;;;17864:7;:35;17855:44;;17660:277;17639:3;;;;;;;17594:354;;;;17965:7;17958:14;;;17328:652;;;:::o;2412:79::-;2450:7;2477:6;;;;;;;;;;;2470:13;;2412:79;:::o;2497:92::-;2537:4;2575:6;;;;;;;;;;;2561:20;;:10;:20;;;2554:27;;2497:92;:::o;6265:35::-;;;;;;;;;;;;;:::o;6461:38::-;;;;;;;;;;;;;;;;;;;;;;:::o;7755:153::-;7839:10;;;;;;;;;;;7825:24;;:10;:24;;;7817:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7889:11;7876:10;;:24;;;;;;;;;;;;;;;;;;7755:153;:::o;12068:378::-;12134:4;12112:26;;:6;:18;12119:10;12112:18;;;;;;;;;;;;;;;;;;;;;;;;;:26;;;12104:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12181:5;12160:6;:18;12167:10;12160:18;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;12214:5;:17;12220:10;12214:17;;;;;;;;;;;;;;;;12201:10;;:30;12197:140;;;12261:1;12248:10;:14;;;;12197:140;;;12308:5;:17;12314:10;12308:17;;;;;;;;;;;;;;;;12295:10;:30;;;;12197:140;12352:54;12364:10;12376:5;:17;12382:10;12376:17;;;;;;;;;;;;;;;;12395:10;;12352:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12437:1;12417:5;:17;12423:10;12417:17;;;;;;;;;;;;;;;:21;;;;12068:378::o;14604:2069::-;14641:4;14658:20;14680:1;14658:23;;14692:18;14712:1;14692:21;;14724:20;14746:1;14724:23;;14773:9;14783:1;14773:11;;14768:1727;14787:7;:19;14795:10;14787:19;;;;;;;;;;;;;;;:26;;;;14785:1;:28;14768:1727;;;14852:7;:19;14860:10;14852:19;;;;;;;;;;;;;;;14872:1;14852:22;;;;;;;;;;;;;;;;;;:27;;;14848:3;:31;:66;;;;;14913:1;14883:7;:19;14891:10;14883:19;;;;;;;;;;;;;;;14903:1;14883:22;;;;;;;;;;;;;;;;;;:29;;;:31;14848:66;14844:1640;;;15084:7;:19;15092:10;15084:19;;;;;;;;;;;;;;;15104:1;15084:22;;;;;;;;;;;;;;;;;;:29;;;15071:12;:42;15057:56;;15167:1;15140:7;:19;15148:10;15140:19;;;;;;;;;;;;;;;:26;;;;:28;15136:1042;;;15401:7;:19;15409:10;15401:19;;;;;;;;;;;;;;;15448:1;15421:7;:19;15429:10;15421:19;;;;;;;;;;;;;;;:26;;;;:28;15401:49;;;;;;;;;;;;;;;;;;:56;;;15388:69;;15503:7;:19;15511:10;15503:19;;;;;;;;;;;;;;;15550:1;15523:7;:19;15531:10;15523:19;;;;;;;;;;;;;;;:26;;;;:28;15503:49;;;;;;;;;;;;;;;;;;:54;;;15488:69;;15740:7;:19;15748:10;15740:19;;;;;;;;;;;;;;;15760:1;15740:22;;;;;;;;;;;;;;;;;;:29;;;15681:7;:19;15689:10;15681:19;;;;;;;;;;;;;;;15728:1;15701:7;:19;15709:10;15701:19;;;;;;;;;;;;;;;:26;;;;:28;15681:49;;;;;;;;;;;;;;;;;;:56;;:88;;;;15857:7;:19;15865:10;15857:19;;;;;;;;;;;;;;;15877:1;15857:22;;;;;;;;;;;;;;;;;;:27;;;15800:7;:19;15808:10;15800:19;;;;;;;;;;;;;;;15847:1;15820:7;:19;15828:10;15820:19;;;;;;;;;;;;;;;:26;;;;:28;15800:49;;;;;;;;;;;;;;;;;;:54;;:84;;;;16067:10;16036:7;:19;16044:10;16036:19;;;;;;;;;;;;;;;16056:1;16036:22;;;;;;;;;;;;;;;;;;:29;;:41;;;;16138:12;16108:7;:19;16116:10;16108:19;;;;;;;;;;;;;;;16128:1;16108:22;;;;;;;;;;;;;;;;;;:27;;:42;;;;15136:1042;16249:7;:19;16257:10;16249:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14844:1640;;;16465:3;;;;;;;14844:1640;14768:1727;;;;16526:1;16513:12;:14;16505:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16572:9;;;;;;;;;;;16565:26;;;16592:10;16603:12;16565:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16565:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16565:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16565:51:0;;;;;;;;;;;;;;;;16557:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16659:4;16652:11;;;;;14604:2069;:::o;14404:190::-;14477:4;2379:6;;;;;;;;;;;2365:20;;:10;:20;;;2357:29;;;;;;14509:1;14501:7;:9;14493:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14555:7;14539:15;:23;;;;14580:4;14573:11;;14404:190;;;:::o;7916:134::-;7989:10;;;;;;;;;;;7975:24;;:10;:24;;;7967:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8035:7;8026:6;:16;;;;7916:134;:::o;6576:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8500:126::-;8569:10;;;;;;;;;;;8555:24;;:10;:24;;;8547:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8613:5;8606:4;:12;;;;8500:126;:::o;11952:37::-;;;;;;;;;;;;;;;;;:::o;7361:27::-;;;;:::o;18002:154::-;18078:4;2379:6;;;;;;;;;;;2365:20;;:10;:20;;;2357:29;;;;;;18115:11;18094:19;:32;;;;18144:4;18137:11;;18002:154;;;:::o;7395:24::-;;;;:::o;10337:403::-;10382:9;10393:13;10408:12;10424;10433:2;10424:8;:12::i;:::-;10381:55;;;;;;10486:7;10455:9;:13;10465:2;10455:13;;;;;;;;;;;:28;;;:38;10447:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10544:15;10524:9;:13;10534:2;10524:13;;;;;;;;;;;:17;;;:35;10516:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10606:4;10584:26;;:9;:13;10594:2;10584:13;;;;;;;;;;;:18;;;;;;;;;;;;:26;;;10580:73;;;10627:14;10638:2;10627:10;:14::i;:::-;10580:73;10672:9;:13;10682:2;10672:13;;;;;;;;;;;:22;;;;;;;;;;;;10663:40;;;10704:2;10708:4;10714:8;10724:7;10663:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10663:69:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10663:69:0;;;;10337:403;;;;:::o;8634:209::-;8699:4;8689:14;;:6;;;;;;;;;;;:14;;;8681:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8735:5;8726:6;;:14;;;;;;;;;;;;;;;;;;8767:2;8751:13;:18;;;;8793:42;8780:10;;:55;;;;;;;;;;;;;;;;;;8634:209;:::o;6057:12244::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o

Swarm Source

bzzr://023bceb09e1eb98effb57a095aafc80026fdb58936deb7c6c9f7ab5c82af84b4

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

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.