ETH Price: $3,893.37 (+1.76%)

Contract

0x54499154Ed336aDb163bBA88FEB461102dff456D
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve195256702024-03-27 12:31:47253 days ago1711542707IN
0x54499154...02dff456D
0 ETH0.0007527831.1404607
Approve170118042023-04-09 16:06:59605 days ago1681056419IN
0x54499154...02dff456D
0 ETH0.0005125321.20172132
Approve153827592022-08-21 7:55:07837 days ago1661068507IN
0x54499154...02dff456D
0 ETH0.000122985.08731029
Approve150613172022-07-02 5:55:56887 days ago1656741356IN
0x54499154...02dff456D
0 ETH0.000184527.63331206
Approve150613082022-07-02 5:54:11887 days ago1656741251IN
0x54499154...02dff456D
0 ETH0.000194178.03247442
Approve142397732022-02-20 0:42:431019 days ago1645317763IN
0x54499154...02dff456D
0 ETH0.0021303688.12609326
Transfer139138402021-12-31 15:11:021070 days ago1640963462IN
0x54499154...02dff456D
0 ETH0.003107276.40803132
Approve138753562021-12-25 16:09:341075 days ago1640448574IN
0x54499154...02dff456D
0 ETH0.0014899761.63537448
Approve135851522021-11-09 23:49:491121 days ago1636501789IN
0x54499154...02dff456D
0 ETH0.0062373134.25675948
Approve129389462021-08-01 9:52:191222 days ago1627811539IN
0x54499154...02dff456D
0 ETH0.0003665225.3
Approve127152152021-06-27 9:06:551257 days ago1624784815IN
0x54499154...02dff456D
0 ETH0.0001448710
Approve126270972021-06-13 16:03:331270 days ago1623600213IN
0x54499154...02dff456D
0 ETH0.0002879111
Approve126270902021-06-13 16:02:041270 days ago1623600124IN
0x54499154...02dff456D
0 ETH0.0001593511
Transfer125281592021-05-29 8:26:151286 days ago1622276775IN
0x54499154...02dff456D
0 ETH0.0004780610
Transfer125130142021-05-26 23:56:251288 days ago1622073385IN
0x54499154...02dff456D
0 ETH0.002072233
Approve125008342021-05-25 2:36:531290 days ago1621910213IN
0x54499154...02dff456D
0 ETH0.0008040255.5
Transfer124278872021-05-13 19:17:101301 days ago1620933430IN
0x54499154...02dff456D
0 ETH0.00521085109
Transfer124257592021-05-13 11:26:341302 days ago1620905194IN
0x54499154...02dff456D
0 ETH0.00956835200.2
Approve124094282021-05-10 22:43:301304 days ago1620686610IN
0x54499154...02dff456D
0 ETH0.01045583225.06
Transfer124090112021-05-10 21:08:251304 days ago1620680905IN
0x54499154...02dff456D
0 ETH0.0106702261
Transfer123820732021-05-06 17:27:531308 days ago1620322073IN
0x54499154...02dff456D
0 ETH0.0028205559
Approve123684072021-05-04 14:50:341311 days ago1620139834IN
0x54499154...02dff456D
0 ETH0.0045528898
Approve123458052021-05-01 3:12:521314 days ago1619838772IN
0x54499154...02dff456D
0 ETH0.0013937430
Approve123421512021-04-30 13:38:161315 days ago1619789896IN
0x54499154...02dff456D
0 ETH0.0019976943
Approve122527992021-04-16 18:40:001328 days ago1618598400IN
0x54499154...02dff456D
0 ETH0.00864118186
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HedgeHog

Compiler Version
v0.6.0+commit.26b70077

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

pragma solidity ^0.6.0;
// SPDX-License-Identifier: UNLICENSED

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 *
*/
 
library SafeMath {
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

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

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

  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
 
  function ceil(uint a, uint m) internal pure returns (uint r) {
    return (a + m - 1) / m * m;
  }
}

// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
// ----------------------------------------------------------------------------
abstract contract ERC20Interface {
    function totalSupply() public virtual view returns (uint);
    function balanceOf(address tokenOwner) public virtual view returns (uint256 balance);
    function allowance(address tokenOwner, address spender) public virtual view returns (uint256 remaining);
    function transfer(address to, uint256 tokens) public virtual returns (bool success);
    function approve(address spender, uint256 tokens) public virtual returns (bool success);
    function transferFrom(address from, address to, uint256 tokens) public virtual returns (bool success);

    event Transfer(address indexed from, address indexed to, uint256 tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint256 tokens);
}

// ----------------------------------------------------------------------------
// Owned contract
// ----------------------------------------------------------------------------
contract Owned {
    address payable public owner;

    event OwnershipTransferred(address indexed _from, address indexed _to);

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

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

    function transferOwnership(address payable _newOwner) public onlyOwner {
        owner = _newOwner;
        emit OwnershipTransferred(msg.sender, _newOwner);
    }
}


contract HedgeHog is ERC20Interface, Owned {
    using SafeMath for uint256;
   
    string public symbol = "HHOG";
    string public  name = "HedgeHog";
    uint256 public decimals = 18;
    
    uint256 _totalSupply = 1e9 * 10 ** (decimals); // 1,000,000,000
    
    mapping(address => uint256) balances;
    mapping(address => mapping(address => uint256)) allowed;
   
    // ------------------------------------------------------------------------
    // Constructor
    // ------------------------------------------------------------------------
    constructor (address owner) public {
        
        owner = 0x5E220057920Dcc7826AB5e5EB5Cf4Bb41C6CD902;
        
        balances[address(owner)] =  1000000000 * 10 ** (18); // 1,000,000,000
        emit Transfer(address(0), address(owner), 1000000000 * 10 ** (18));
    }

   
    /** ERC20Interface function's implementation **/
   
    function totalSupply() public override view returns (uint256){
       return _totalSupply;
    }
   
    // ------------------------------------------------------------------------
    // Get the token balance for account `tokenOwner`
    // ------------------------------------------------------------------------
    function balanceOf(address tokenOwner) public override view returns (uint256 balance) {
        return balances[tokenOwner];
    }
    
    // ------------------------------------------------------------------------
    // Token owner can approve for `spender` to transferFrom(...) `tokens`
    // from the token owner's account
    // ------------------------------------------------------------------------
    function approve(address spender, uint256 tokens) public override returns (bool success){
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender,spender,tokens);
        return true;
    }
    
    // ------------------------------------------------------------------------
    // Returns the amount of tokens approved by the owner that can be
    // transferred to the spender's account
    // ------------------------------------------------------------------------
    function allowance(address tokenOwner, address spender) public override view returns (uint256 remaining) {
        return allowed[tokenOwner][spender];
    }

    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to `to` account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transfer(address to, uint256 tokens) public override returns (bool success) {
        // prevent transfer to 0x0, use burn instead
        require(address(to) != address(0));
        require(balances[msg.sender] >= tokens );
        require(balances[to] + tokens >= balances[to]);
        
        balances[msg.sender] = balances[msg.sender].sub(tokens);
       
        uint256 deduction = deductionsToApply(tokens);
        applyDeductions(deduction);
        
        balances[to] = balances[to].add(tokens.sub(deduction));
        emit Transfer(msg.sender, to, tokens.sub(deduction));
        return true;
    }
    
    // ------------------------------------------------------------------------
    // Transfer `tokens` from the `from` account to the `to` account
    //
    // The calling account must already have sufficient tokens approve(...)-d
    // for spending from the `from` account and
    // - From account must have sufficient balance to transfer
    // - Spender must have sufficient allowance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transferFrom(address from, address to, uint256 tokens) public override returns (bool success){
        require(tokens <= allowed[from][msg.sender]); //check allowance
        require(balances[from] >= tokens);
        balances[from] = balances[from].sub(tokens);
        allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens);
      
        uint256 deduction = deductionsToApply(tokens);
        applyDeductions(deduction);
       
        balances[to] = balances[to].add(tokens.sub(deduction));
        emit Transfer(from, to, tokens.sub(tokens));
        return true;
    }
    
    function _transfer(address to, uint256 tokens, bool rewards) internal returns(bool){
        // prevent transfer to 0x0, use burn instead
        require(address(to) != address(0));
        require(balances[address(this)] >= tokens );
        require(balances[to] + tokens >= balances[to]);
        
        balances[address(this)] = balances[address(this)].sub(tokens);
        
        uint256 deduction = 0;
        
        if(!rewards){
            deduction = deductionsToApply(tokens);
            applyDeductions(deduction);
        }
        
        balances[to] = balances[to].add(tokens.sub(deduction));
            
        emit Transfer(address(this),to,tokens.sub(deduction));
        
        return true;
    }

    function deductionsToApply(uint256 tokens) private view returns(uint256){
        uint256 deduction = 0;
        uint256 minSupply = 100000 * 10 ** (18);
        
        if(_totalSupply > minSupply){
        
            deduction = onePercent(tokens).mul(5); // 5% transaction cost
        
            if(_totalSupply.sub(deduction) < minSupply)
                deduction = _totalSupply.sub(minSupply);
        }
        
        return deduction;
    }
    
    function applyDeductions(uint256 deduction) private{
        if(stakedCoins == 0){
            burnTokens(deduction);
        }
        else{
            burnTokens(deduction.div(2));
            disburse(deduction.div(2));
        }
    }
    
    // ------------------------------------------------------------------------
    // Burn the ``value` amount of tokens from the `account`
    // ------------------------------------------------------------------------
    function burnTokens(uint256 value) internal{
        require(_totalSupply >= value); // burn only unsold tokens
        _totalSupply = _totalSupply.sub(value);
        emit Transfer(msg.sender, address(0), value);
    }
    
    // ------------------------------------------------------------------------
    // Calculates onePercent of the uint256 amount sent
    // ------------------------------------------------------------------------
    function onePercent(uint256 _tokens) internal pure returns (uint256){
        uint256 roundValue = _tokens.ceil(100);
        uint onePercentofTokens = roundValue.mul(100).div(100 * 10**uint(2));
        return onePercentofTokens;
    }
    
    
    /********************************STAKING CONTRACT**********************************/
    
    uint256 deployTime;
    uint256 private totalDividentPoints;
    uint256 private unclaimedDividendPoints;
    uint256 pointMultiplier = 1000000000000000000;
    uint256 public stakedCoins;
    
    uint256 public totalStakes;
    uint256 public totalRewardsClaimed;
    
    bool public stakingOpen;
    
    struct  Account {
        uint256 balance;
        uint256 lastDividentPoints;
        uint256 timeInvest;
        uint256 lastClaimed;
        uint256 rewardsClaimed;
        uint256 pending;
    }

    mapping(address => Account) accounts;
    
    function openStaking() external onlyOwner{
        require(!stakingOpen, "staking already open");
        stakingOpen = true;
    }
    
    function STAKE(uint256 _tokens) external returns(bool){
        require(stakingOpen, "staking is close");

        require(transfer(address(this), _tokens), "In sufficient tokens in user wallet");
        
        uint256 owing = dividendsOwing(msg.sender);
        
        if(owing > 0) // early stakes
            accounts[msg.sender].pending = owing;
            
        uint256 deduction = deductionsToApply(_tokens);
        
        stakedCoins = stakedCoins.add(_tokens.sub(deduction));
        accounts[msg.sender].balance = accounts[msg.sender].balance.add(_tokens.sub(deduction));
        accounts[msg.sender].lastDividentPoints = totalDividentPoints;
        accounts[msg.sender].timeInvest = now;
        accounts[msg.sender].lastClaimed = now;
        
        totalStakes = totalStakes.add(_tokens.sub(deduction));
        
        return true;
    }
    
    function pendingReward(address _user) external view returns(uint256){
        uint256 owing = dividendsOwing(_user);
        return owing;
    }
    
    function dividendsOwing(address investor) internal view returns (uint256){
        uint256 newDividendPoints = totalDividentPoints.sub(accounts[investor].lastDividentPoints);
        return (((accounts[investor].balance).mul(newDividendPoints)).div(pointMultiplier)).add(accounts[investor].pending);
    }
   
    function updateDividend(address investor) internal returns(uint256){
        uint256 owing = dividendsOwing(investor);
        if (owing > 0){
            unclaimedDividendPoints = unclaimedDividendPoints.sub(owing);
            accounts[investor].lastDividentPoints = totalDividentPoints;
        }
        return owing;
    }
   
    function activeStake(address _user) external view returns (uint256){
        return accounts[_user].balance;
    }
   
    function UNSTAKE() external returns (bool){
        require(accounts[msg.sender].balance > 0);
        
        uint256 owing = updateDividend(msg.sender);
        if(owing > 0) // unclaimed reward
            accounts[msg.sender].pending = owing;
        
        stakedCoins = stakedCoins.sub(accounts[msg.sender].balance);

        require(_transfer(msg.sender, accounts[msg.sender].balance, false));
       
        accounts[msg.sender].balance = 0;
        return true;
    }
   
    function disburse(uint256 amount) internal{
        balances[address(this)] = balances[address(this)].add(amount);
        
        uint256 unnormalized = amount.mul(pointMultiplier);
        totalDividentPoints = totalDividentPoints.add(unnormalized.div(stakedCoins));
        unclaimedDividendPoints = unclaimedDividendPoints.add(amount);
    }
   
    function claimReward() external returns(bool){
        uint256 owing = updateDividend(msg.sender);
        
        require(owing > 0);

        require(_transfer(msg.sender, owing, true));
        
        accounts[msg.sender].rewardsClaimed = accounts[msg.sender].rewardsClaimed.add(owing);
       
        totalRewardsClaimed = totalRewardsClaimed.add(owing);
        return true;
    }
    
    function rewardsClaimed(address _user) external view returns(uint256 rewardClaimed){
        return accounts[_user].rewardsClaimed;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenOwner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"STAKE","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"UNSTAKE","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"activeStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenOwner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimReward","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openStaking","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"pendingReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"rewardsClaimed","outputs":[{"internalType":"uint256","name":"rewardClaimed","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stakedCoins","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stakingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalRewardsClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStakes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526040518060400160405280600481526020017f48484f4700000000000000000000000000000000000000000000000000000000815250600190805190602001906200005192919062000224565b506040518060400160405280600881526020017f4865646765486f67000000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000224565b506012600355600354600a0a633b9aca0002600455670de0b6b3a7640000600a55348015620000cd57600080fd5b50604051620024e8380380620024e883398181016040526020811015620000f357600080fd5b8101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550735e220057920dcc7826ab5e5eb5cf4bb41c6cd90290506b033b2e3c9fd0803ce8000000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b033b2e3c9fd0803ce80000006040518082815260200191505060405180910390a350620002d3565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200026757805160ff191683800117855562000298565b8280016001018555821562000298579182015b82811115620002975782518255916020019190600101906200027a565b5b509050620002a79190620002ab565b5090565b620002d091905b80821115620002cc576000816000905550600101620002b2565b5090565b90565b61220580620002e36000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c8063a34b0f76116100b8578063d0668b3c1161007c578063d0668b3c146105a5578063d3f730fd146105c3578063dc8df3871461061b578063dd62ed3e1461063d578063f2fde38b146106b5578063f40f0f52146106f957610142565b8063a34b0f761461049b578063a9059cbb146104b9578063b88a802f1461051f578063bf9befb114610541578063ca84d5911461055f57610142565b8063387602981161010a57806338760298146102f2578063625817331461031457806370a082311461031e5780638d7ce096146103765780638da5cb5b146103ce57806395d89b411461041857610142565b806306fdde0314610147578063095ea7b3146101ca57806318160ddd1461023057806323b872dd1461024e578063313ce567146102d4575b600080fd5b61014f610751565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018f578082015181840152602081019050610174565b50505050905090810190601f1680156101bc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610216600480360360408110156101e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107ef565b604051808215151515815260200191505060405180910390f35b6102386108e1565b6040518082815260200191505060405180910390f35b6102ba6004803603606081101561026457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108eb565b604051808215151515815260200191505060405180910390f35b6102dc610ca6565b6040518082815260200191505060405180910390f35b6102fa610cac565b604051808215151515815260200191505060405180910390f35b61031c610cbf565b005b6103606004803603602081101561033457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610db8565b6040518082815260200191505060405180910390f35b6103b86004803603602081101561038c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e01565b6040518082815260200191505060405180910390f35b6103d6610e4d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610420610e72565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610460578082015181840152602081019050610445565b50505050905090810190601f16801561048d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104a3610f10565b6040518082815260200191505060405180910390f35b610505600480360360408110156104cf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f16565b604051808215151515815260200191505060405180910390f35b6105276111fe565b604051808215151515815260200191505060405180910390f35b6105496112ec565b6040518082815260200191505060405180910390f35b61058b6004803603602081101561057557600080fd5b81019080803590602001909291905050506112f2565b604051808215151515815260200191505060405180910390f35b6105ad611629565b6040518082815260200191505060405180910390f35b610605600480360360208110156105d957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061162f565b6040518082815260200191505060405180910390f35b61062361167b565b604051808215151515815260200191505060405180910390f35b61069f6004803603604081101561065357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061182d565b6040518082815260200191505060405180910390f35b6106f7600480360360208110156106cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118b4565b005b61073b6004803603602081101561070f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119aa565b6040518082815260200191505060405180910390f35b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107e75780601f106107bc576101008083540402835291602001916107e7565b820191906000526020600020905b8154815290600101906020018083116107ca57829003601f168201915b505050505081565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600454905090565b6000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561097657600080fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156109c257600080fd5b610a1482600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ae682600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610b71836119d8565b9050610b7c81611a55565b610be0610b9282856119c190919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c8586876119c190919063ffffffff16565b6040518082815260200191505060405180910390a360019150509392505050565b60035481565b600e60009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1857600080fd5b600e60009054906101000a900460ff1615610d9b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f7374616b696e6720616c7265616479206f70656e00000000000000000000000081525060200191505060405180910390fd5b6001600e60006101000a81548160ff021916908315150217905550565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f085780601f10610edd57610100808354040283529160200191610f08565b820191906000526020600020905b815481529060010190602001808311610eeb57829003601f168201915b505050505081565b600d5481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f5157600080fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610f9d57600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401101561102a57600080fd5b61107c82600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006110ca836119d8565b90506110d581611a55565b6111396110eb82856119c190919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111de84876119c190919063ffffffff16565b6040518082815260200191505060405180910390a3600191505092915050565b60008061120a33611ac6565b90506000811161121957600080fd5b61122533826001611b4b565b61122e57600080fd5b61128381600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154611aaa90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401819055506112de81600d54611aaa90919063ffffffff16565b600d81905550600191505090565b600c5481565b6000600e60009054906101000a900460ff16611376576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f7374616b696e6720697320636c6f73650000000000000000000000000000000081525060200191505060405180910390fd5b6113803083610f16565b6113d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806121ad6023913960400191505060405180910390fd5b60006113e033611e3d565b905060008111156114335780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055505b600061143e846119d8565b905061146761145682866119c190919063ffffffff16565b600b54611aaa90919063ffffffff16565b600b819055506114d461148382866119c190919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154611aaa90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600854600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555042600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555042600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003018190555061161861160782866119c190919063ffffffff16565b600c54611aaa90919063ffffffff16565b600c81905550600192505050919050565b600b5481565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b600080600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154116116cb57600080fd5b60006116d633611ac6565b905060008111156117295780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055505b611780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600b546119c190919063ffffffff16565b600b819055506117d433600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546000611b4b565b6117dd57600080fd5b6000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600191505090565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461190d57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b6000806119b683611e3d565b905080915050919050565b6000828211156119cd57fe5b818303905092915050565b60008060009050600069152d02c7e14af68000009050806004541115611a4b57611a146005611a0686611f5e565b611fb290919063ffffffff16565b915080611a2c836004546119c190919063ffffffff16565b1015611a4a57611a47816004546119c190919063ffffffff16565b91505b5b8192505050919050565b6000600b541415611a6e57611a6981611fe9565b611aa7565b611a8a611a8560028361207c90919063ffffffff16565b611fe9565b611aa6611aa160028361207c90919063ffffffff16565b612095565b5b50565b600080828401905083811015611abc57fe5b8091505092915050565b600080611ad283611e3d565b90506000811115611b4257611af2816009546119c190919063ffffffff16565b600981905550600854600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611b8657600080fd5b82600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611bd257600080fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011015611c5f57600080fd5b611cb183600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600080905082611d1357611d07846119d8565b9050611d1281611a55565b5b611d77611d2982866119c190919063ffffffff16565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611e1c84886119c190919063ffffffff16565b6040518082815260200191505060405180910390a360019150509392505050565b600080611e97600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546008546119c190919063ffffffff16565b9050611f56600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050154611f48600a54611f3a85600f60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154611fb290919063ffffffff16565b61207c90919063ffffffff16565b611aaa90919063ffffffff16565b915050919050565b600080611f7560648461219190919063ffffffff16565b90506000611fa66002600a0a606402611f98606485611fb290919063ffffffff16565b61207c90919063ffffffff16565b90508092505050919050565b600080831415611fc55760009050611fe3565b6000828402905082848281611fd657fe5b0414611fde57fe5b809150505b92915050565b806004541015611ff857600080fd5b61200d816004546119c190919063ffffffff16565b600481905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b60008082848161208857fe5b0490508091505092915050565b6120e781600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000612141600a5483611fb290919063ffffffff16565b905061216c61215b600b548361207c90919063ffffffff16565b600854611aaa90919063ffffffff16565b60088190555061218782600954611aaa90919063ffffffff16565b6009819055505050565b60008182600184860103816121a257fe5b040290509291505056fe496e2073756666696369656e7420746f6b656e7320696e20757365722077616c6c6574a26469706673582212200a8b30364728ddfa52639e50bb24665be9db4f731e48706a24d32777ae14295464736f6c634300060000330000000000000000000000005e220057920dcc7826ab5e5eb5cf4bb41c6cd902

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101425760003560e01c8063a34b0f76116100b8578063d0668b3c1161007c578063d0668b3c146105a5578063d3f730fd146105c3578063dc8df3871461061b578063dd62ed3e1461063d578063f2fde38b146106b5578063f40f0f52146106f957610142565b8063a34b0f761461049b578063a9059cbb146104b9578063b88a802f1461051f578063bf9befb114610541578063ca84d5911461055f57610142565b8063387602981161010a57806338760298146102f2578063625817331461031457806370a082311461031e5780638d7ce096146103765780638da5cb5b146103ce57806395d89b411461041857610142565b806306fdde0314610147578063095ea7b3146101ca57806318160ddd1461023057806323b872dd1461024e578063313ce567146102d4575b600080fd5b61014f610751565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018f578082015181840152602081019050610174565b50505050905090810190601f1680156101bc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610216600480360360408110156101e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506107ef565b604051808215151515815260200191505060405180910390f35b6102386108e1565b6040518082815260200191505060405180910390f35b6102ba6004803603606081101561026457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108eb565b604051808215151515815260200191505060405180910390f35b6102dc610ca6565b6040518082815260200191505060405180910390f35b6102fa610cac565b604051808215151515815260200191505060405180910390f35b61031c610cbf565b005b6103606004803603602081101561033457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610db8565b6040518082815260200191505060405180910390f35b6103b86004803603602081101561038c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e01565b6040518082815260200191505060405180910390f35b6103d6610e4d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610420610e72565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610460578082015181840152602081019050610445565b50505050905090810190601f16801561048d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104a3610f10565b6040518082815260200191505060405180910390f35b610505600480360360408110156104cf57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f16565b604051808215151515815260200191505060405180910390f35b6105276111fe565b604051808215151515815260200191505060405180910390f35b6105496112ec565b6040518082815260200191505060405180910390f35b61058b6004803603602081101561057557600080fd5b81019080803590602001909291905050506112f2565b604051808215151515815260200191505060405180910390f35b6105ad611629565b6040518082815260200191505060405180910390f35b610605600480360360208110156105d957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061162f565b6040518082815260200191505060405180910390f35b61062361167b565b604051808215151515815260200191505060405180910390f35b61069f6004803603604081101561065357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061182d565b6040518082815260200191505060405180910390f35b6106f7600480360360208110156106cb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506118b4565b005b61073b6004803603602081101561070f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119aa565b6040518082815260200191505060405180910390f35b60028054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107e75780601f106107bc576101008083540402835291602001916107e7565b820191906000526020600020905b8154815290600101906020018083116107ca57829003601f168201915b505050505081565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600454905090565b6000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561097657600080fd5b81600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156109c257600080fd5b610a1482600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ae682600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610b71836119d8565b9050610b7c81611a55565b610be0610b9282856119c190919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c8586876119c190919063ffffffff16565b6040518082815260200191505060405180910390a360019150509392505050565b60035481565b600e60009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1857600080fd5b600e60009054906101000a900460ff1615610d9b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f7374616b696e6720616c7265616479206f70656e00000000000000000000000081525060200191505060405180910390fd5b6001600e60006101000a81548160ff021916908315150217905550565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f085780601f10610edd57610100808354040283529160200191610f08565b820191906000526020600020905b815481529060010190602001808311610eeb57829003601f168201915b505050505081565b600d5481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f5157600080fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610f9d57600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205401101561102a57600080fd5b61107c82600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006110ca836119d8565b90506110d581611a55565b6111396110eb82856119c190919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111de84876119c190919063ffffffff16565b6040518082815260200191505060405180910390a3600191505092915050565b60008061120a33611ac6565b90506000811161121957600080fd5b61122533826001611b4b565b61122e57600080fd5b61128381600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040154611aaa90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401819055506112de81600d54611aaa90919063ffffffff16565b600d81905550600191505090565b600c5481565b6000600e60009054906101000a900460ff16611376576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f7374616b696e6720697320636c6f73650000000000000000000000000000000081525060200191505060405180910390fd5b6113803083610f16565b6113d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806121ad6023913960400191505060405180910390fd5b60006113e033611e3d565b905060008111156114335780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055505b600061143e846119d8565b905061146761145682866119c190919063ffffffff16565b600b54611aaa90919063ffffffff16565b600b819055506114d461148382866119c190919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154611aaa90919063ffffffff16565b600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600854600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555042600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555042600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003018190555061161861160782866119c190919063ffffffff16565b600c54611aaa90919063ffffffff16565b600c81905550600192505050919050565b600b5481565b6000600f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b600080600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154116116cb57600080fd5b60006116d633611ac6565b905060008111156117295780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055505b611780600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600b546119c190919063ffffffff16565b600b819055506117d433600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546000611b4b565b6117dd57600080fd5b6000600f60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000181905550600191505090565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461190d57600080fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b6000806119b683611e3d565b905080915050919050565b6000828211156119cd57fe5b818303905092915050565b60008060009050600069152d02c7e14af68000009050806004541115611a4b57611a146005611a0686611f5e565b611fb290919063ffffffff16565b915080611a2c836004546119c190919063ffffffff16565b1015611a4a57611a47816004546119c190919063ffffffff16565b91505b5b8192505050919050565b6000600b541415611a6e57611a6981611fe9565b611aa7565b611a8a611a8560028361207c90919063ffffffff16565b611fe9565b611aa6611aa160028361207c90919063ffffffff16565b612095565b5b50565b600080828401905083811015611abc57fe5b8091505092915050565b600080611ad283611e3d565b90506000811115611b4257611af2816009546119c190919063ffffffff16565b600981905550600854600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055505b80915050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611b8657600080fd5b82600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611bd257600080fd5b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054011015611c5f57600080fd5b611cb183600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119c190919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600080905082611d1357611d07846119d8565b9050611d1281611a55565b5b611d77611d2982866119c190919063ffffffff16565b600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611e1c84886119c190919063ffffffff16565b6040518082815260200191505060405180910390a360019150509392505050565b600080611e97600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546008546119c190919063ffffffff16565b9050611f56600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050154611f48600a54611f3a85600f60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154611fb290919063ffffffff16565b61207c90919063ffffffff16565b611aaa90919063ffffffff16565b915050919050565b600080611f7560648461219190919063ffffffff16565b90506000611fa66002600a0a606402611f98606485611fb290919063ffffffff16565b61207c90919063ffffffff16565b90508092505050919050565b600080831415611fc55760009050611fe3565b6000828402905082848281611fd657fe5b0414611fde57fe5b809150505b92915050565b806004541015611ff857600080fd5b61200d816004546119c190919063ffffffff16565b600481905550600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a350565b60008082848161208857fe5b0490508091505092915050565b6120e781600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611aaa90919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000612141600a5483611fb290919063ffffffff16565b905061216c61215b600b548361207c90919063ffffffff16565b600854611aaa90919063ffffffff16565b60088190555061218782600954611aaa90919063ffffffff16565b6009819055505050565b60008182600184860103816121a257fe5b040290509291505056fe496e2073756666696369656e7420746f6b656e7320696e20757365722077616c6c6574a26469706673582212200a8b30364728ddfa52639e50bb24665be9db4f731e48706a24d32777ae14295464736f6c63430006000033

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

0000000000000000000000005e220057920dcc7826ab5e5eb5cf4bb41c6cd902

-----Decoded View---------------
Arg [0] : owner (address): 0x5E220057920Dcc7826AB5e5EB5Cf4Bb41C6CD902

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005e220057920dcc7826ab5e5eb5cf4bb41c6cd902


Deployed Bytecode Sourcemap

2710:11013:0:-:0;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2710:11013:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2834:32;;;:::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;2834:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4380:217;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4380:217:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3633:98;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6578:608;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6578:608:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2873:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10009:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10307:134;;;:::i;:::-;;3959:132;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3959:132:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12175:116;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12175:116:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2267:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2798:29;;;:::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;2798:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9962:34;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5395:638;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5395:638:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;13169:400;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9929:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10453:887;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10453:887:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9890:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13581:139;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13581:139:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12302:493;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4887:159;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4887:159:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2535:166;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2535:166:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;11352:147;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11352:147:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2834:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4380:217::-;4455:12;4510:6;4479:7;:19;4487:10;4479:19;;;;;;;;;;;;;;;:28;4499:7;4479:28;;;;;;;;;;;;;;;:37;;;;4552:7;4532:35;;4541:10;4532:35;;;4560:6;4532:35;;;;;;;;;;;;;;;;;;4585:4;4578:11;;4380:217;;;;:::o;3633:98::-;3686:7;3711:12;;3704:19;;3633:98;:::o;6578:608::-;6667:12;6709:7;:13;6717:4;6709:13;;;;;;;;;;;;;;;:25;6723:10;6709:25;;;;;;;;;;;;;;;;6699:6;:35;;6691:44;;;;;;6790:6;6772:8;:14;6781:4;6772:14;;;;;;;;;;;;;;;;:24;;6764:33;;;;;;6825:26;6844:6;6825:8;:14;6834:4;6825:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;6808:8;:14;6817:4;6808:14;;;;;;;;;;;;;;;:43;;;;6890:37;6920:6;6890:7;:13;6898:4;6890:13;;;;;;;;;;;;;;;:25;6904:10;6890:25;;;;;;;;;;;;;;;;:29;;:37;;;;:::i;:::-;6862:7;:13;6870:4;6862:13;;;;;;;;;;;;;;;:25;6876:10;6862:25;;;;;;;;;;;;;;;:65;;;;6946:17;6966:25;6984:6;6966:17;:25::i;:::-;6946:45;;7002:26;7018:9;7002:15;:26::i;:::-;7063:39;7080:21;7091:9;7080:6;:10;;:21;;;;:::i;:::-;7063:8;:12;7072:2;7063:12;;;;;;;;;;;;;;;;:16;;:39;;;;:::i;:::-;7048:8;:12;7057:2;7048:12;;;;;;;;;;;;;;;:54;;;;7133:2;7118:38;;7127:4;7118:38;;;7137:18;7148:6;7137;:10;;:18;;;;:::i;:::-;7118:38;;;;;;;;;;;;;;;;;;7174:4;7167:11;;;6578:608;;;;;:::o;2873:28::-;;;;:::o;10009:23::-;;;;;;;;;;;;;:::o;10307:134::-;2501:5;;;;;;;;;;;2487:19;;:10;:19;;;2479:28;;;;;;10368:11:::1;;;;;;;;;;;10367:12;10359:45;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;10429:4;10415:11;;:18;;;;;;;;;;;;;;;;;;10307:134::o:0;3959:132::-;4028:15;4063:8;:20;4072:10;4063:20;;;;;;;;;;;;;;;;4056:27;;3959:132;;;:::o;12175:116::-;12234:7;12260:8;:15;12269:5;12260:15;;;;;;;;;;;;;;;:23;;;12253:30;;12175:116;;;:::o;2267:28::-;;;;;;;;;;;;;:::o;2798:29::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9962:34::-;;;;:::o;5395:638::-;5466:12;5576:1;5553:25;;5561:2;5553:25;;;;5545:34;;;;;;5622:6;5598:8;:20;5607:10;5598:20;;;;;;;;;;;;;;;;:30;;5590:40;;;;;;5674:8;:12;5683:2;5674:12;;;;;;;;;;;;;;;;5664:6;5649:8;:12;5658:2;5649:12;;;;;;;;;;;;;;;;:21;:37;;5641:46;;;;;;5731:32;5756:6;5731:8;:20;5740:10;5731:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;5708:8;:20;5717:10;5708:20;;;;;;;;;;;;;;;:55;;;;5783:17;5803:25;5821:6;5803:17;:25::i;:::-;5783:45;;5839:26;5855:9;5839:15;:26::i;:::-;5901:39;5918:21;5929:9;5918:6;:10;;:21;;;;:::i;:::-;5901:8;:12;5910:2;5901:12;;;;;;;;;;;;;;;;:16;;:39;;;;:::i;:::-;5886:8;:12;5895:2;5886:12;;;;;;;;;;;;;;;:54;;;;5977:2;5956:47;;5965:10;5956:47;;;5981:21;5992:9;5981:6;:10;;:21;;;;:::i;:::-;5956:47;;;;;;;;;;;;;;;;;;6021:4;6014:11;;;5395:638;;;;:::o;13169:400::-;13209:4;13225:13;13241:26;13256:10;13241:14;:26::i;:::-;13225:42;;13304:1;13296:5;:9;13288:18;;;;;;13327:34;13337:10;13349:5;13356:4;13327:9;:34::i;:::-;13319:43;;;;;;13421:46;13461:5;13421:8;:20;13430:10;13421:20;;;;;;;;;;;;;;;:35;;;:39;;:46;;;;:::i;:::-;13383:8;:20;13392:10;13383:20;;;;;;;;;;;;;;;:35;;:84;;;;13509:30;13533:5;13509:19;;:23;;:30;;;;:::i;:::-;13487:19;:52;;;;13557:4;13550:11;;;13169:400;:::o;9929:26::-;;;;:::o;10453:887::-;10502:4;10526:11;;;;;;;;;;;10518:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10579:32;10596:4;10603:7;10579:8;:32::i;:::-;10571:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10672:13;10688:26;10703:10;10688:14;:26::i;:::-;10672:42;;10746:1;10738:5;:9;10735:79;;;10809:5;10778:8;:20;10787:10;10778:20;;;;;;;;;;;;;;;:28;;:36;;;;10735:79;10839:17;10859:26;10877:7;10859:17;:26::i;:::-;10839:46;;10920:39;10936:22;10948:9;10936:7;:11;;:22;;;;:::i;:::-;10920:11;;:15;;:39;;;;:::i;:::-;10906:11;:53;;;;11001:56;11034:22;11046:9;11034:7;:11;;:22;;;;:::i;:::-;11001:8;:20;11010:10;11001:20;;;;;;;;;;;;;;;:28;;;:32;;:56;;;;:::i;:::-;10970:8;:20;10979:10;10970:20;;;;;;;;;;;;;;;:28;;:87;;;;11110:19;;11068:8;:20;11077:10;11068:20;;;;;;;;;;;;;;;:39;;:61;;;;11174:3;11140:8;:20;11149:10;11140:20;;;;;;;;;;;;;;;:31;;:37;;;;11223:3;11188:8;:20;11197:10;11188:20;;;;;;;;;;;;;;;:32;;:38;;;;11261:39;11277:22;11289:9;11277:7;:11;;:22;;;;:::i;:::-;11261:11;;:15;;:39;;;;:::i;:::-;11247:11;:53;;;;11328:4;11321:11;;;;10453:887;;;:::o;9890:26::-;;;;:::o;13581:139::-;13642:21;13682:8;:15;13691:5;13682:15;;;;;;;;;;;;;;;:30;;;13675:37;;13581:139;;;:::o;12302:493::-;12339:4;12394:1;12363:8;:20;12372:10;12363:20;;;;;;;;;;;;;;;:28;;;:32;12355:41;;;;;;12417:13;12433:26;12448:10;12433:14;:26::i;:::-;12417:42;;12481:1;12473:5;:9;12470:83;;;12548:5;12517:8;:20;12526:10;12517:20;;;;;;;;;;;;;;;:28;;:36;;;;12470:83;12588:45;12604:8;:20;12613:10;12604:20;;;;;;;;;;;;;;;:28;;;12588:11;;:15;;:45;;;;:::i;:::-;12574:11;:59;;;;12654:58;12664:10;12676:8;:20;12685:10;12676:20;;;;;;;;;;;;;;;:28;;;12706:5;12654:9;:58::i;:::-;12646:67;;;;;;12764:1;12733:8;:20;12742:10;12733:20;;;;;;;;;;;;;;;:28;;:32;;;;12783:4;12776:11;;;12302:493;:::o;4887:159::-;4973:17;5010:7;:19;5018:10;5010:19;;;;;;;;;;;;;;;:28;5030:7;5010:28;;;;;;;;;;;;;;;;5003:35;;4887:159;;;;:::o;2535:166::-;2501:5;;;;;;;;;;;2487:19;;:10;:19;;;2479:28;;;;;;2625:9:::1;2617:5;::::0;:17:::1;;;;;;;;;;;;;;;;;;2683:9;2650:43;;2671:10;2650:43;;;;;;;;;;;;2535:166:::0;:::o;11352:147::-;11412:7;11431:13;11447:21;11462:5;11447:14;:21::i;:::-;11431:37;;11486:5;11479:12;;;11352:147;;;:::o;651:113::-;709:7;737:1;732;:6;;725:14;;;;757:1;753;:5;746:12;;651:113;;;;:::o;7953:469::-;8017:7;8036:17;8056:1;8036:21;;8068:17;8088:19;8068:39;;8146:9;8131:12;;:24;8128:250;;;8193:25;8216:1;8193:18;8204:6;8193:10;:18::i;:::-;:22;;:25;;;;:::i;:::-;8181:37;;8299:9;8269:27;8286:9;8269:12;;:16;;:27;;;;:::i;:::-;:39;8266:100;;;8339:27;8356:9;8339:12;;:16;;:27;;;;:::i;:::-;8327:39;;8266:100;8128:250;8405:9;8398:16;;;;7953:469;;;:::o;8434:247::-;8514:1;8499:11;;:16;8496:178;;;8531:21;8542:9;8531:10;:21::i;:::-;8496:178;;;8593:28;8604:16;8618:1;8604:9;:13;;:16;;;;:::i;:::-;8593:10;:28::i;:::-;8636:26;8645:16;8659:1;8645:9;:13;;:16;;;;:::i;:::-;8636:8;:26::i;:::-;8496:178;8434:247;:::o;770:133::-;828:7;844:9;860:1;856;:5;844:17;;880:1;875;:6;;868:14;;;;896:1;889:8;;;770:133;;;;:::o;11830:334::-;11889:7;11908:13;11924:24;11939:8;11924:14;:24::i;:::-;11908:40;;11971:1;11963:5;:9;11959:175;;;12014:34;12042:5;12014:23;;:27;;:34;;;;:::i;:::-;11988:23;:60;;;;12103:19;;12063:8;:18;12072:8;12063:18;;;;;;;;;;;;;;;:37;;:59;;;;11959:175;12151:5;12144:12;;;11830:334;;;:::o;7198:747::-;7276:4;7377:1;7354:25;;7362:2;7354:25;;;;7346:34;;;;;;7426:6;7399:8;:23;7416:4;7399:23;;;;;;;;;;;;;;;;:33;;7391:43;;;;;;7478:8;:12;7487:2;7478:12;;;;;;;;;;;;;;;;7468:6;7453:8;:12;7462:2;7453:12;;;;;;;;;;;;;;;;:21;:37;;7445:46;;;;;;7538:35;7566:6;7538:8;:23;7555:4;7538:23;;;;;;;;;;;;;;;;:27;;:35;;;;:::i;:::-;7512:8;:23;7529:4;7512:23;;;;;;;;;;;;;;;:61;;;;7594:17;7614:1;7594:21;;7640:7;7636:117;;7675:25;7693:6;7675:17;:25::i;:::-;7663:37;;7715:26;7731:9;7715:15;:26::i;:::-;7636:117;7788:39;7805:21;7816:9;7805:6;:10;;:21;;;;:::i;:::-;7788:8;:12;7797:2;7788:12;;;;;;;;;;;;;;;;:16;;:39;;;;:::i;:::-;7773:8;:12;7782:2;7773:12;;;;;;;;;;;;;;;:54;;;;7880:2;7857:48;;7874:4;7857:48;;;7883:21;7894:9;7883:6;:10;;:21;;;;:::i;:::-;7857:48;;;;;;;;;;;;;;;;;;7933:4;7926:11;;;7198:747;;;;;:::o;11511:308::-;11576:7;11595:25;11623:62;11647:8;:18;11656:8;11647:18;;;;;;;;;;;;;;;:37;;;11623:19;;:23;;:62;;;;:::i;:::-;11595:90;;11703:108;11784:8;:18;11793:8;11784:18;;;;;;;;;;;;;;;:26;;;11704:74;11762:15;;11705:51;11738:17;11706:8;:18;11715:8;11706:18;;;;;;;;;;;;;;;:26;;;11705:32;;:51;;;;:::i;:::-;11704:57;;:74;;;;:::i;:::-;11703:80;;:108;;;;:::i;:::-;11696:115;;;11511:308;;;:::o;9371:240::-;9431:7;9450:18;9471:17;9484:3;9471:7;:12;;:17;;;;:::i;:::-;9450:38;;9499:23;9525:42;9564:1;9555:2;:11;9549:3;:17;9525:19;9540:3;9525:10;:14;;:19;;;;:::i;:::-;:23;;:42;;;;:::i;:::-;9499:68;;9585:18;9578:25;;;;9371:240;;;:::o;189:180::-;247:7;272:1;267;:6;263:37;;;291:1;284:8;;;;263:37;306:9;322:1;318;:5;306:17;;346:1;341;337;:5;;;;;;:10;330:18;;;;362:1;355:8;;;189:180;;;;;:::o;8917:223::-;8995:5;8979:12;;:21;;8971:30;;;;;;9054:23;9071:5;9054:12;;:16;;:23;;;;:::i;:::-;9039:12;:38;;;;9122:1;9093:39;;9102:10;9093:39;;;9126:5;9093:39;;;;;;;;;;;;;;;;;;8917:223;:::o;375:270::-;433:7;524:9;540:1;536;:5;;;;;;524:17;;638:1;631:8;;;375:270;;;;:::o;12806:352::-;12885:35;12913:6;12885:8;:23;12902:4;12885:23;;;;;;;;;;;;;;;;:27;;:35;;;;:::i;:::-;12859:8;:23;12876:4;12859:23;;;;;;;;;;;;;;;:61;;;;12941:20;12964:27;12975:15;;12964:6;:10;;:27;;;;:::i;:::-;12941:50;;13024:54;13048:29;13065:11;;13048:12;:16;;:29;;;;:::i;:::-;13024:19;;:23;;:54;;;;:::i;:::-;13002:19;:76;;;;13115:35;13143:6;13115:23;;:27;;:35;;;;:::i;:::-;13089:23;:61;;;;12806:352;;:::o;910:100::-;963:6;1003:1;999;994;990;986;:5;:9;985:15;;;;;;:19;978:26;;910:100;;;;:::o

Swarm Source

ipfs://0a8b30364728ddfa52639e50bb24665be9db4f731e48706a24d32777ae142954

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.