ETH Price: $2,723.59 (+0.91%)

Token

LETSFKNGO (LFG)
 

Overview

Max Total Supply

22,975.592949976185467621 LFG

Holders

48

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
10 LFG

Value
$0.00
0x6b31a4bfd0609063c933cc619e97112f6f787298
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
LETSFKNGO

Compiler Version
v0.4.23+commit.124ca40d

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-09-03
*/

pragma solidity ^0.4.23;

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

    
    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 c) {
        c = a + b;
        assert(c >= a);
        return c;
    }

    function ceil(uint256 a, uint256 m) internal pure returns (uint256) {
        uint256 c = add(a,m);
        uint256 d = sub(c,1);
        return mul(div(d,m),m);
  }

}

contract Ownable {
    address public owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

   constructor() public {
      owner = msg.sender;
    }
    
    modifier onlyOwner() {
      require(msg.sender == owner, "Must be an owner");
      _;
    }
    
    function transferOwnership(address newOwner) public onlyOwner {
      require(newOwner != address(0), "New owner must be a non-zero address");
      emit OwnershipTransferred(owner, newOwner);
      owner = newOwner;
    }
}

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

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

contract BasicToken is ERC20Basic {
    using SafeMath for uint256;
    mapping(address => uint256) balances;
    mapping(address => uint256) ethBalances;
    
    uint256 totalSupply_;
    
    function totalSupply() public view returns (uint256) {
        return totalSupply_;
    }

    function balanceOf(address _owner) public view returns (uint256) {
        return balances[_owner];
    }

    function checkInvestedETH(address who) public view returns (uint256) {
        return ethBalances[who];
    }

}

contract StandardToken is ERC20, BasicToken {
    mapping (address => mapping (address => uint256)) internal allowed;
    uint256 public basePercent = 100;

    function findOnePercent(uint256 value) public view returns (uint256)  {
     uint256 roundValue = value.ceil(basePercent);
     uint256 onePercent = roundValue.mul(basePercent).div(10000);
     return onePercent;
    }

    function transfer(address to, uint256 value) public returns (bool) {
        require(value <= balances[msg.sender], "Not enough tokens to transfer");
        require(to != address(0), "Receiver must be a non-zero address");

        uint256 tokensToBurn = findOnePercent(value);
        uint256 tokensToTransfer = value.sub(tokensToBurn);

        balances[msg.sender] = balances[msg.sender].sub(value);
        balances[to] = balances[to].add(tokensToTransfer);

        totalSupply_ = totalSupply_.sub(tokensToBurn);

        emit Transfer(msg.sender, to, tokensToTransfer);
        emit Transfer(msg.sender, address(0), tokensToBurn);
        return true;
    }

    function multiTransfer(address[] memory receivers, uint256[] memory amounts) public {
        for (uint256 i = 0; i < receivers.length; i++) {
        transfer(receivers[i], amounts[i]);
        }
    }

    function transferFrom(address from, address to, uint256 value) public returns (bool) {
        require(value <= balances[from], "Must have sufficient balance");
        require(value <= allowed[from][msg.sender], "Spender has sufficient spending balance");
        require(to != address(0), "Sender must be a non-zero address");

        balances[from] = balances[from].sub(value);

        uint256 tokensToBurn = findOnePercent(value);
        uint256 tokensToTransfer = value.sub(tokensToBurn);

        balances[to] = balances[to].add(tokensToTransfer);
        totalSupply_ = totalSupply_.sub(tokensToBurn);

        allowed[from][msg.sender] = allowed[from][msg.sender].sub(value);

        emit Transfer(from, to, tokensToTransfer);
        emit Transfer(from, address(0), tokensToBurn);

        return true;
    } 

    function approve(address spender, uint256 value) public returns (bool) {
        require(spender != address(0), "Cannot approve to a zero address");
        allowed[msg.sender][spender] = value;
        emit Approval(msg.sender, spender, value);
        return true;
    }
    
    function allowance(address _owner, address _spender) public view returns (uint256) {
        return allowed[_owner][_spender];
    }
    
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        require(spender != address(0), "Must be a non zero address");
        allowed[msg.sender][spender] = (allowed[msg.sender][spender].add(addedValue));
        emit Approval(msg.sender, spender, allowed[msg.sender][spender]);
        return true;
    }

    function decreaseAllowance(address spender, uint subtractedValue) public returns (bool) {
        uint oldValue = allowed[msg.sender][spender];
        if (subtractedValue > oldValue) {
            allowed[msg.sender][spender] = 0;
        } else {
            allowed[msg.sender][spender] = oldValue.sub(subtractedValue);
        }
        emit Approval(msg.sender, spender, allowed[msg.sender][spender]);
        return true;
    }

}

contract Configurable {
    uint256 public constant cap = 9000*10**18; 
    uint256 public constant basePrice = 180*10**18; 
    uint256 public tokensSold = 0;
    
    uint256 public constant tokenReserve = 15000*10**18;
    uint256 public remainingTokens = 0;
}

contract CrowdsaleToken is StandardToken, Configurable, Ownable {
  
     enum Stages {
        none,
        icoStart, 
        icoEnd
    }
    
    Stages currentStage;

    constructor() public {
        currentStage = Stages.none;
        balances[owner] = balances[owner].add(tokenReserve);
        totalSupply_ = totalSupply_.add(tokenReserve);
        remainingTokens = cap;
        emit Transfer(address(this), owner, tokenReserve);
    }

    function () public payable {
        require(currentStage == Stages.icoStart, "The coin offering has not started yet");
        require(msg.value > 0 && msg.value <= 1e18, "You cannot send 0 Ether or more than 1 Ether");
        require(remainingTokens > 0, "Must be some tokens remaining");
       
        address caller = msg.sender;
        uint256 weiAmount = msg.value;
        uint256 tokens = weiAmount.mul(basePrice).div(1 ether);
        uint256 returnWei = 0;
        
        ethBalances[caller] = ethBalances[caller].add(weiAmount);
        ethBalances[address(this)] = ethBalances[address(this)].add(weiAmount);
       
        require(ethBalances[caller] <= 1e18);
        require(ethBalances[address(this)] <= 50e18);

        if(tokensSold.add(tokens) > cap){
            uint256 newTokens = cap.sub(tokensSold);
            uint256 newWei = newTokens.div(basePrice).mul(1 ether);
            returnWei = weiAmount.sub(newWei);
            weiAmount = newWei;
            tokens = newTokens;
        }
        
        tokensSold = tokensSold.add(tokens); 
        remainingTokens = cap.sub(tokensSold);
        if(returnWei > 0){
            msg.sender.transfer(returnWei);
            emit Transfer(address(this), msg.sender, returnWei);
        }
        
        balances[msg.sender] = balances[msg.sender].add(tokens);
        emit Transfer(address(this), msg.sender, tokens);
        totalSupply_ = totalSupply_.add(tokens);
        owner.transfer(weiAmount);
    }

    function startIco() public onlyOwner {
        require(currentStage != Stages.icoEnd, "The coin offering has ended");
        currentStage = Stages.icoStart;
    }

    function endIco() internal {
        currentStage = Stages.icoEnd;
        if(remainingTokens > 0)
            balances[owner] = balances[owner].add(remainingTokens);
        owner.transfer(address(this).balance); 
    }

    function finalizeIco() public onlyOwner {
        require(currentStage != Stages.icoEnd, "The coin offering has ended");
        endIco();
    }
    
}

contract LETSFKNGO is CrowdsaleToken {
    string public constant name = "LETSFKNGO";
    string public constant symbol = "LFG";
    uint32 public constant decimals = 18;
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receivers","type":"address[]"},{"name":"amounts","type":"uint256[]"}],"name":"multiTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"cap","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"who","type":"address"}],"name":"checkInvestedETH","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokensSold","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"startIco","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"finalizeIco","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"value","type":"uint256"}],"name":"findOnePercent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"remainingTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"basePercent","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"basePrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenReserve","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"}]

608060405260646004556000600555600060065533600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600760146101000a81548160ff021916908360028111156200007457fe5b02179055506200010669032d26d12e980b600000600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620002476401000000000262001026179091906401000000009004565b600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506200019969032d26d12e980b600000600254620002476401000000000262001026179091906401000000009004565b6002819055506901e7e4171bf4d3a00000600681905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69032d26d12e980b6000006040518082815260200191505060405180910390a362000264565b600081830190508281101515156200025b57fe5b80905092915050565b612aa380620002746000396000f30060806040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610864578063095ea7b3146108f457806318160ddd146109595780631e89d5451461098457806323b872dd14610a2d578063313ce56714610ab2578063355274ea14610ae95780633950935114610b145780633c4badb014610b79578063518ab2a814610bd057806370a0823114610bfb57806389311e6f14610c525780638da5cb5b14610c69578063903a3ef614610cc057806395d89b4114610cd7578063a457c2d714610d67578063a6a6860614610dcc578063a9059cbb14610e0d578063bf58390314610e72578063c5ac0ded14610e9d578063c7876ea414610ec8578063cbcb317114610ef3578063dd62ed3e14610f1e578063f2fde38b14610f95575b6000806000806000806001600281111561015457fe5b600760149054906101000a900460ff16600281111561016f57fe5b14151561020a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54686520636f696e206f66666572696e6720686173206e6f742073746172746581526020017f642079657400000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b6000341180156102225750670de0b6b3a76400003411155b15156102bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001807f596f752063616e6e6f742073656e642030204574686572206f72206d6f72652081526020017f7468616e2031204574686572000000000000000000000000000000000000000081525060400191505060405180910390fd5b6000600654111515610336576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f4d75737420626520736f6d6520746f6b656e732072656d61696e696e6700000081525060200191505060405180910390fd5b339550349450610372670de0b6b3a76400006103646809c2007651b250000088610fd890919063ffffffff16565b61101090919063ffffffff16565b9350600092506103ca85600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061045f85600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550670de0b6b3a7640000600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111515156104f857600080fd5b6802b5e3af16b1880000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115151561054f57600080fd5b6901e7e4171bf4d3a0000061056f8560055461102690919063ffffffff16565b11156105ea576105946005546901e7e4171bf4d3a0000061104290919063ffffffff16565b91506105cc670de0b6b3a76400006105be6809c2007651b25000008561101090919063ffffffff16565b610fd890919063ffffffff16565b90506105e1818661104290919063ffffffff16565b92508094508193505b6105ff8460055461102690919063ffffffff16565b6005819055506106246005546901e7e4171bf4d3a0000061104290919063ffffffff16565b60068190555060008311156106e0573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015610679573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b610731846000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36107ed8460025461102690919063ffffffff16565b600281905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f1935050505015801561085b573d6000803e3d6000fd5b50505050505050005b34801561087057600080fd5b5061087961105b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108b957808201518184015260208101905061089e565b50505050905090810190601f1680156108e65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561090057600080fd5b5061093f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611094565b604051808215151515815260200191505060405180910390f35b34801561096557600080fd5b5061096e61122a565b6040518082815260200191505060405180910390f35b34801561099057600080fd5b50610a2b6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611234565b005b348015610a3957600080fd5b50610a98600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061128e565b604051808215151515815260200191505060405180910390f35b348015610abe57600080fd5b50610ac7611876565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b348015610af557600080fd5b50610afe61187b565b6040518082815260200191505060405180910390f35b348015610b2057600080fd5b50610b5f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611889565b604051808215151515815260200191505060405180910390f35b348015610b8557600080fd5b50610bba600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b29565b6040518082815260200191505060405180910390f35b348015610bdc57600080fd5b50610be5611b72565b6040518082815260200191505060405180910390f35b348015610c0757600080fd5b50610c3c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b78565b6040518082815260200191505060405180910390f35b348015610c5e57600080fd5b50610c67611bc0565b005b348015610c7557600080fd5b50610c7e611d48565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ccc57600080fd5b50610cd5611d6e565b005b348015610ce357600080fd5b50610cec611eda565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d2c578082015181840152602081019050610d11565b50505050905090810190601f168015610d595780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610d7357600080fd5b50610db2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611f13565b604051808215151515815260200191505060405180910390f35b348015610dd857600080fd5b50610df7600480360381019080803590602001909291905050506121a4565b6040518082815260200191505060405180910390f35b348015610e1957600080fd5b50610e58600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506121f5565b604051808215151515815260200191505060405180910390f35b348015610e7e57600080fd5b50610e876125b3565b6040518082815260200191505060405180910390f35b348015610ea957600080fd5b50610eb26125b9565b6040518082815260200191505060405180910390f35b348015610ed457600080fd5b50610edd6125bf565b6040518082815260200191505060405180910390f35b348015610eff57600080fd5b50610f086125cc565b6040518082815260200191505060405180910390f35b348015610f2a57600080fd5b50610f7f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125da565b6040518082815260200191505060405180910390f35b348015610fa157600080fd5b50610fd6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612661565b005b600080831415610feb576000905061100a565b8183029050818382811515610ffc57fe5b0414151561100657fe5b8090505b92915050565b6000818381151561101d57fe5b04905092915050565b6000818301905082811015151561103957fe5b80905092915050565b600082821115151561105057fe5b818303905092915050565b6040805190810160405280600981526020017f4c455453464b4e474f000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561113a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f43616e6e6f7420617070726f766520746f2061207a65726f206164647265737381525060200191505060405180910390fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600254905090565b60008090505b82518110156112895761127b838281518110151561125457fe5b90602001906020020151838381518110151561126c57fe5b906020019060200201516121f5565b50808060010191505061123a565b505050565b60008060008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548411151515611349576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4d75737420686176652073756666696369656e742062616c616e63650000000081525060200191505060405180910390fd5b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548411151515611463576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001807f5370656e646572206861732073756666696369656e74207370656e64696e672081526020017f62616c616e63650000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415151561152e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001807f53656e646572206d7573742062652061206e6f6e2d7a65726f2061646472657381526020017f730000000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b61157f846000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104290919063ffffffff16565b6000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115ca846121a4565b91506115df828561104290919063ffffffff16565b9050611632816000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116898260025461104290919063ffffffff16565b60028190555061171e84600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104290919063ffffffff16565b600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001925050509392505050565b601281565b6901e7e4171bf4d3a0000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561192f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4d7573742062652061206e6f6e207a65726f206164647265737300000000000081525060200191505060405180910390fd5b6119be82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60055481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c85576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4d75737420626520616e206f776e65720000000000000000000000000000000081525060200191505060405180910390fd5b600280811115611c9157fe5b600760149054906101000a900460ff166002811115611cac57fe5b14151515611d22576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f54686520636f696e206f66666572696e672068617320656e646564000000000081525060200191505060405180910390fd5b6001600760146101000a81548160ff02191690836002811115611d4157fe5b0217905550565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4d75737420626520616e206f776e65720000000000000000000000000000000081525060200191505060405180910390fd5b600280811115611e3f57fe5b600760149054906101000a900460ff166002811115611e5a57fe5b14151515611ed0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f54686520636f696e206f66666572696e672068617320656e646564000000000081525060200191505060405180910390fd5b611ed86128b1565b565b6040805190810160405280600381526020017f4c4647000000000000000000000000000000000000000000000000000000000081525081565b600080600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115612024576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120b8565b612037838261104290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060006121be60045485612a3c90919063ffffffff16565b91506121e96127106121db60045485610fd890919063ffffffff16565b61101090919063ffffffff16565b90508092505050919050565b60008060008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484111515156122b0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f4e6f7420656e6f75676820746f6b656e7320746f207472616e7366657200000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415151561237b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001807f5265636569766572206d7573742062652061206e6f6e2d7a65726f206164647281526020017f657373000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b612384846121a4565b9150612399828561104290919063ffffffff16565b90506123ec846000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104290919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061247f816000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124d68260025461104290919063ffffffff16565b6002819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019250505092915050565b60065481565b60045481565b6809c2007651b250000081565b69032d26d12e980b60000081565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612726576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4d75737420626520616e206f776e65720000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156127f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f4e6577206f776e6572206d7573742062652061206e6f6e2d7a65726f2061646481526020017f726573730000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6002600760146101000a81548160ff021916908360028111156128d057fe5b0217905550600060065411156129ba57612955600654600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015612a39573d6000803e3d6000fd5b50565b6000806000612a4b8585611026565b9150612a58826001611042565b9050612a6d612a678286611010565b85610fd8565b92505050929150505600a165627a7a723058209df688ac8bd44a926265e13cf838c9e377b6ed201b5badfda917bacadbdc8aaa0029

Deployed Bytecode

0x60806040526004361061013e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610864578063095ea7b3146108f457806318160ddd146109595780631e89d5451461098457806323b872dd14610a2d578063313ce56714610ab2578063355274ea14610ae95780633950935114610b145780633c4badb014610b79578063518ab2a814610bd057806370a0823114610bfb57806389311e6f14610c525780638da5cb5b14610c69578063903a3ef614610cc057806395d89b4114610cd7578063a457c2d714610d67578063a6a6860614610dcc578063a9059cbb14610e0d578063bf58390314610e72578063c5ac0ded14610e9d578063c7876ea414610ec8578063cbcb317114610ef3578063dd62ed3e14610f1e578063f2fde38b14610f95575b6000806000806000806001600281111561015457fe5b600760149054906101000a900460ff16600281111561016f57fe5b14151561020a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001807f54686520636f696e206f66666572696e6720686173206e6f742073746172746581526020017f642079657400000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b6000341180156102225750670de0b6b3a76400003411155b15156102bc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c8152602001807f596f752063616e6e6f742073656e642030204574686572206f72206d6f72652081526020017f7468616e2031204574686572000000000000000000000000000000000000000081525060400191505060405180910390fd5b6000600654111515610336576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f4d75737420626520736f6d6520746f6b656e732072656d61696e696e6700000081525060200191505060405180910390fd5b339550349450610372670de0b6b3a76400006103646809c2007651b250000088610fd890919063ffffffff16565b61101090919063ffffffff16565b9350600092506103ca85600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061045f85600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550670de0b6b3a7640000600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111515156104f857600080fd5b6802b5e3af16b1880000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115151561054f57600080fd5b6901e7e4171bf4d3a0000061056f8560055461102690919063ffffffff16565b11156105ea576105946005546901e7e4171bf4d3a0000061104290919063ffffffff16565b91506105cc670de0b6b3a76400006105be6809c2007651b25000008561101090919063ffffffff16565b610fd890919063ffffffff16565b90506105e1818661104290919063ffffffff16565b92508094508193505b6105ff8460055461102690919063ffffffff16565b6005819055506106246005546901e7e4171bf4d3a0000061104290919063ffffffff16565b60068190555060008311156106e0573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015610679573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b610731846000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36107ed8460025461102690919063ffffffff16565b600281905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f1935050505015801561085b573d6000803e3d6000fd5b50505050505050005b34801561087057600080fd5b5061087961105b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108b957808201518184015260208101905061089e565b50505050905090810190601f1680156108e65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561090057600080fd5b5061093f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611094565b604051808215151515815260200191505060405180910390f35b34801561096557600080fd5b5061096e61122a565b6040518082815260200191505060405180910390f35b34801561099057600080fd5b50610a2b6004803603810190808035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290505050611234565b005b348015610a3957600080fd5b50610a98600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061128e565b604051808215151515815260200191505060405180910390f35b348015610abe57600080fd5b50610ac7611876565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b348015610af557600080fd5b50610afe61187b565b6040518082815260200191505060405180910390f35b348015610b2057600080fd5b50610b5f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611889565b604051808215151515815260200191505060405180910390f35b348015610b8557600080fd5b50610bba600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b29565b6040518082815260200191505060405180910390f35b348015610bdc57600080fd5b50610be5611b72565b6040518082815260200191505060405180910390f35b348015610c0757600080fd5b50610c3c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b78565b6040518082815260200191505060405180910390f35b348015610c5e57600080fd5b50610c67611bc0565b005b348015610c7557600080fd5b50610c7e611d48565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ccc57600080fd5b50610cd5611d6e565b005b348015610ce357600080fd5b50610cec611eda565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610d2c578082015181840152602081019050610d11565b50505050905090810190601f168015610d595780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610d7357600080fd5b50610db2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611f13565b604051808215151515815260200191505060405180910390f35b348015610dd857600080fd5b50610df7600480360381019080803590602001909291905050506121a4565b6040518082815260200191505060405180910390f35b348015610e1957600080fd5b50610e58600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506121f5565b604051808215151515815260200191505060405180910390f35b348015610e7e57600080fd5b50610e876125b3565b6040518082815260200191505060405180910390f35b348015610ea957600080fd5b50610eb26125b9565b6040518082815260200191505060405180910390f35b348015610ed457600080fd5b50610edd6125bf565b6040518082815260200191505060405180910390f35b348015610eff57600080fd5b50610f086125cc565b6040518082815260200191505060405180910390f35b348015610f2a57600080fd5b50610f7f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506125da565b6040518082815260200191505060405180910390f35b348015610fa157600080fd5b50610fd6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612661565b005b600080831415610feb576000905061100a565b8183029050818382811515610ffc57fe5b0414151561100657fe5b8090505b92915050565b6000818381151561101d57fe5b04905092915050565b6000818301905082811015151561103957fe5b80905092915050565b600082821115151561105057fe5b818303905092915050565b6040805190810160405280600981526020017f4c455453464b4e474f000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561113a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f43616e6e6f7420617070726f766520746f2061207a65726f206164647265737381525060200191505060405180910390fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600254905090565b60008090505b82518110156112895761127b838281518110151561125457fe5b90602001906020020151838381518110151561126c57fe5b906020019060200201516121f5565b50808060010191505061123a565b505050565b60008060008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548411151515611349576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f4d75737420686176652073756666696369656e742062616c616e63650000000081525060200191505060405180910390fd5b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548411151515611463576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001807f5370656e646572206861732073756666696369656e74207370656e64696e672081526020017f62616c616e63650000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415151561152e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001807f53656e646572206d7573742062652061206e6f6e2d7a65726f2061646472657381526020017f730000000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b61157f846000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104290919063ffffffff16565b6000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115ca846121a4565b91506115df828561104290919063ffffffff16565b9050611632816000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116898260025461104290919063ffffffff16565b60028190555061171e84600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104290919063ffffffff16565b600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001925050509392505050565b601281565b6901e7e4171bf4d3a0000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561192f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f4d7573742062652061206e6f6e207a65726f206164647265737300000000000081525060200191505060405180910390fd5b6119be82600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60055481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611c85576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4d75737420626520616e206f776e65720000000000000000000000000000000081525060200191505060405180910390fd5b600280811115611c9157fe5b600760149054906101000a900460ff166002811115611cac57fe5b14151515611d22576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f54686520636f696e206f66666572696e672068617320656e646564000000000081525060200191505060405180910390fd5b6001600760146101000a81548160ff02191690836002811115611d4157fe5b0217905550565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e33576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4d75737420626520616e206f776e65720000000000000000000000000000000081525060200191505060405180910390fd5b600280811115611e3f57fe5b600760149054906101000a900460ff166002811115611e5a57fe5b14151515611ed0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f54686520636f696e206f66666572696e672068617320656e646564000000000081525060200191505060405180910390fd5b611ed86128b1565b565b6040805190810160405280600381526020017f4c4647000000000000000000000000000000000000000000000000000000000081525081565b600080600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115612024576000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506120b8565b612037838261104290919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060006121be60045485612a3c90919063ffffffff16565b91506121e96127106121db60045485610fd890919063ffffffff16565b61101090919063ffffffff16565b90508092505050919050565b60008060008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484111515156122b0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f4e6f7420656e6f75676820746f6b656e7320746f207472616e7366657200000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415151561237b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001807f5265636569766572206d7573742062652061206e6f6e2d7a65726f206164647281526020017f657373000000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b612384846121a4565b9150612399828561104290919063ffffffff16565b90506123ec846000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104290919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061247f816000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506124d68260025461104290919063ffffffff16565b6002819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a360019250505092915050565b60065481565b60045481565b6809c2007651b250000081565b69032d26d12e980b60000081565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515612726576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f4d75737420626520616e206f776e65720000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156127f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001807f4e6577206f776e6572206d7573742062652061206e6f6e2d7a65726f2061646481526020017f726573730000000000000000000000000000000000000000000000000000000081525060400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6002600760146101000a81548160ff021916908360028111156128d057fe5b0217905550600060065411156129ba57612955600654600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461102690919063ffffffff16565b600080600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015612a39573d6000803e3d6000fd5b50565b6000806000612a4b8585611026565b9150612a58826001611042565b9050612a6d612a678286611010565b85610fd8565b92505050929150505600a165627a7a723058209df688ac8bd44a926265e13cf838c9e377b6ed201b5badfda917bacadbdc8aaa0029

Deployed Bytecode Sourcemap

8848:176:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7063:14;7101:17;7141:14;7206:17;7556;7610:14;6812:15;6796:31;;;;;;;;:12;;;;;;;;;;;:31;;;;;;;;;6788:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6900:1;6888:9;:13;:34;;;;;6918:4;6905:9;:17;;6888:34;6880:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7008:1;6990:15;;:19;6982:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7080:10;7063:27;;7121:9;7101:29;;7158:37;7187:7;7158:24;6119:10;7158:9;:13;;:24;;;;:::i;:::-;:28;;:37;;;;:::i;:::-;7141:54;;7226:1;7206:21;;7270:34;7294:9;7270:11;:19;7282:6;7270:19;;;;;;;;;;;;;;;;:23;;:34;;;;:::i;:::-;7248:11;:19;7260:6;7248:19;;;;;;;;;;;;;;;:56;;;;7344:41;7375:9;7344:11;:26;7364:4;7344:26;;;;;;;;;;;;;;;;:30;;:41;;;;:::i;:::-;7315:11;:26;7335:4;7315:26;;;;;;;;;;;;;;;:70;;;;7436:4;7413:11;:19;7425:6;7413:19;;;;;;;;;;;;;;;;:27;;7405:36;;;;;;;;7490:5;7460:11;:26;7480:4;7460:26;;;;;;;;;;;;;;;;:35;;7452:44;;;;;;;;6064:11;7512:22;7527:6;7512:10;;:14;;:22;;;;:::i;:::-;:28;7509:281;;;7576:19;7584:10;;6064:11;7576:7;;:19;;;;:::i;:::-;7556:39;;7627:37;7656:7;7627:24;6119:10;7627:9;:13;;:24;;;;:::i;:::-;:28;;:37;;;;:::i;:::-;7610:54;;7691:21;7705:6;7691:9;:13;;:21;;;;:::i;:::-;7679:33;;7739:6;7727:18;;7769:9;7760:18;;7509:281;7823:22;7838:6;7823:10;;:14;;:22;;;;:::i;:::-;7810:10;:35;;;;7875:19;7883:10;;6064:11;7875:7;;:19;;;;:::i;:::-;7857:15;:37;;;;7920:1;7908:9;:13;7905:140;;;7937:10;:19;;:30;7957:9;7937:30;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7937:30:0;8011:10;7987:46;;8004:4;7987:46;;;8023:9;7987:46;;;;;;;;;;;;;;;;;;7905:140;8088:32;8113:6;8088:8;:20;8097:10;8088:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8065:8;:20;8074:10;8065:20;;;;;;;;;;;;;;;:55;;;;8160:10;8136:43;;8153:4;8136:43;;;8172:6;8136:43;;;;;;;;;;;;;;;;;;8205:24;8222:6;8205:12;;:16;;:24;;;;:::i;:::-;8190:12;:39;;;;8240:5;;;;;;;;;;;:14;;:25;8255:9;8240:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8240:25:0;6750:1523;;;;;;8848:176;8892:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8892:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;8892:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4761:277;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4761:277:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2282:91;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2282:91:0;;;;;;;;;;;;;;;;;;;;;;;3698:206;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3698:206:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3912:840;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3912:840:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8984:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8984:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;6034:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6034:41:0;;;;;;;;;;;;;;;;;;;;;;;5196:350;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5196:350:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2496:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2496:111:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6137:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6137:29:0;;;;;;;;;;;;;;;;;;;;;;;2381:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2381:107:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8281:166;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8281:166:0;;;;;;871:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;871:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8688:147;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8688:147:0;;;;;;8940:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8940:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;8940:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5554:442;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5554:442:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2781:222;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2781:222:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3011:679;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3011:679:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6237:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6237:34:0;;;;;;;;;;;;;;;;;;;;;;;2740:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2740:32:0;;;;;;;;;;;;;;;;;;;;;;;6083:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6083:46:0;;;;;;;;;;;;;;;;;;;;;;;6179:51;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6179:51:0;;;;;;;;;;;;;;;;;;;;;;;5050:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5050:134:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1165:226;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1165:226:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;56:202;114:9;145:1;140;:6;136:47;;;170:1;163:8;;;;136:47;201:1;197;:5;193:9;;229:1;224;220;:5;;;;;;;;:10;213:18;;;;;;249:1;242:8;;56:202;;;;;:::o;273:102::-;331:7;366:1;362;:5;;;;;;;;355:12;;273:102;;;;:::o;520:141::-;578:9;608:1;604;:5;600:9;;632:1;627;:6;;620:14;;;;;;652:1;645:8;;520:141;;;;:::o;389:123::-;447:7;479:1;474;:6;;467:14;;;;;;503:1;499;:5;492:12;;389:123;;;;:::o;8892:41::-;;;;;;;;;;;;;;;;;;;;:::o;4761:277::-;4826:4;4870:1;4851:21;;:7;:21;;;;4843:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4951:5;4920:7;:19;4928:10;4920:19;;;;;;;;;;;;;;;:28;4940:7;4920:28;;;;;;;;;;;;;;;:36;;;;4993:7;4972:36;;4981:10;4972:36;;;5002:5;4972:36;;;;;;;;;;;;;;;;;;5026:4;5019:11;;4761:277;;;;:::o;2282:91::-;2326:7;2353:12;;2346:19;;2282:91;:::o;3698:206::-;3798:9;3810:1;3798:13;;3793:104;3817:9;:16;3813:1;:20;3793:104;;;3851:34;3860:9;3870:1;3860:12;;;;;;;;;;;;;;;;;;3874:7;3882:1;3874:10;;;;;;;;;;;;;;;;;;3851:8;:34::i;:::-;;3835:3;;;;;;;3793:104;;;3698:206;;;:::o;3912:840::-;3991:4;4310:20;4365:24;4025:8;:14;4034:4;4025:14;;;;;;;;;;;;;;;;4016:5;:23;;4008:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4100:7;:13;4108:4;4100:13;;;;;;;;;;;;;;;:25;4114:10;4100:25;;;;;;;;;;;;;;;;4091:5;:34;;4083:86;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4202:1;4188:16;;:2;:16;;;;4180:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4272:25;4291:5;4272:8;:14;4281:4;4272:14;;;;;;;;;;;;;;;;:18;;:25;;;;:::i;:::-;4255:8;:14;4264:4;4255:14;;;;;;;;;;;;;;;:42;;;;4333:21;4348:5;4333:14;:21::i;:::-;4310:44;;4392:23;4402:12;4392:5;:9;;:23;;;;:::i;:::-;4365:50;;4443:34;4460:16;4443:8;:12;4452:2;4443:12;;;;;;;;;;;;;;;;:16;;:34;;;;:::i;:::-;4428:8;:12;4437:2;4428:12;;;;;;;;;;;;;;;:49;;;;4503:30;4520:12;4503;;:16;;:30;;;;:::i;:::-;4488:12;:45;;;;4574:36;4604:5;4574:7;:13;4582:4;4574:13;;;;;;;;;;;;;;;:25;4588:10;4574:25;;;;;;;;;;;;;;;;:29;;:36;;;;:::i;:::-;4546:7;:13;4554:4;4546:13;;;;;;;;;;;;;;;:25;4560:10;4546:25;;;;;;;;;;;;;;;:64;;;;4643:2;4628:36;;4637:4;4628:36;;;4647:16;4628:36;;;;;;;;;;;;;;;;;;4703:1;4680:40;;4689:4;4680:40;;;4707:12;4680:40;;;;;;;;;;;;;;;;;;4740:4;4733:11;;3912:840;;;;;;;:::o;8984:36::-;9018:2;8984:36;:::o;6034:41::-;6064:11;6034:41;:::o;5196:350::-;5276:4;5320:1;5301:21;;:7;:21;;;;5293:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5396:44;5429:10;5396:7;:19;5404:10;5396:19;;;;;;;;;;;;;;;:28;5416:7;5396:28;;;;;;;;;;;;;;;;:32;;:44;;;;:::i;:::-;5364:7;:19;5372:10;5364:19;;;;;;;;;;;;;;;:28;5384:7;5364:28;;;;;;;;;;;;;;;:77;;;;5478:7;5457:59;;5466:10;5457:59;;;5487:7;:19;5495:10;5487:19;;;;;;;;;;;;;;;:28;5507:7;5487:28;;;;;;;;;;;;;;;;5457:59;;;;;;;;;;;;;;;;;;5534:4;5527:11;;5196:350;;;;:::o;2496:111::-;2556:7;2583:11;:16;2595:3;2583:16;;;;;;;;;;;;;;;;2576:23;;2496:111;;;:::o;6137:29::-;;;;:::o;2381:107::-;2437:7;2464:8;:16;2473:6;2464:16;;;;;;;;;;;;;;;;2457:23;;2381:107;;;:::o;8281:166::-;1109:5;;;;;;;;;;;1095:19;;:10;:19;;;1087:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8353:13;8337:29;;;;;;;;:12;;;;;;;;;;;:29;;;;;;;;;;8329:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8424:15;8409:12;;:30;;;;;;;;;;;;;;;;;;;;;;;;8281:166::o;871:20::-;;;;;;;;;;;;;:::o;8688:147::-;1109:5;;;;;;;;;;;1095:19;;:10;:19;;;1087:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8763:13;8747:29;;;;;;;;:12;;;;;;;;;;;:29;;;;;;;;;;8739:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8819:8;:6;:8::i;:::-;8688:147::o;8940:37::-;;;;;;;;;;;;;;;;;;;;:::o;5554:442::-;5636:4;5653:13;5669:7;:19;5677:10;5669:19;;;;;;;;;;;;;;;:28;5689:7;5669:28;;;;;;;;;;;;;;;;5653:44;;5730:8;5712:15;:26;5708:184;;;5786:1;5755:7;:19;5763:10;5755:19;;;;;;;;;;;;;;;:28;5775:7;5755:28;;;;;;;;;;;;;;;:32;;;;5708:184;;;5851:29;5864:15;5851:8;:12;;:29;;;;:::i;:::-;5820:7;:19;5828:10;5820:19;;;;;;;;;;;;;;;:28;5840:7;5820:28;;;;;;;;;;;;;;;:60;;;;5708:184;5928:7;5907:59;;5916:10;5907:59;;;5937:7;:19;5945:10;5937:19;;;;;;;;;;;;;;;:28;5957:7;5937:28;;;;;;;;;;;;;;;;5907:59;;;;;;;;;;;;;;;;;;5984:4;5977:11;;5554:442;;;;;:::o;2781:222::-;2841:7;2859:18;2911;2880:23;2891:11;;2880:5;:10;;:23;;;;:::i;:::-;2859:44;;2932:38;2964:5;2932:27;2947:11;;2932:10;:14;;:27;;;;:::i;:::-;:31;;:38;;;;:::i;:::-;2911:59;;2985:10;2978:17;;2781:222;;;;;:::o;3011:679::-;3072:4;3248:20;3303:24;3106:8;:20;3115:10;3106:20;;;;;;;;;;;;;;;;3097:5;:29;;3089:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3193:1;3179:16;;:2;:16;;;;3171:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3271:21;3286:5;3271:14;:21::i;:::-;3248:44;;3330:23;3340:12;3330:5;:9;;:23;;;;:::i;:::-;3303:50;;3389:31;3414:5;3389:8;:20;3398:10;3389:20;;;;;;;;;;;;;;;;:24;;:31;;;;:::i;:::-;3366:8;:20;3375:10;3366:20;;;;;;;;;;;;;;;:54;;;;3446:34;3463:16;3446:8;:12;3455:2;3446:12;;;;;;;;;;;;;;;;:16;;:34;;;;:::i;:::-;3431:8;:12;3440:2;3431:12;;;;;;;;;;;;;;;:49;;;;3508:30;3525:12;3508;;:16;;:30;;;;:::i;:::-;3493:12;:45;;;;3577:2;3556:42;;3565:10;3556:42;;;3581:16;3556:42;;;;;;;;;;;;;;;;;;3643:1;3614:46;;3623:10;3614:46;;;3647:12;3614:46;;;;;;;;;;;;;;;;;;3678:4;3671:11;;3011:679;;;;;;:::o;6237:34::-;;;;:::o;2740:32::-;;;;:::o;6083:46::-;6119:10;6083:46;:::o;6179:51::-;6218:12;6179:51;:::o;5050:134::-;5124:7;5151;:15;5159:6;5151:15;;;;;;;;;;;;;;;:25;5167:8;5151:25;;;;;;;;;;;;;;;;5144:32;;5050:134;;;;:::o;1165:226::-;1109:5;;;;;;;;;;;1095:19;;:10;:19;;;1087:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1264:1;1244:22;;:8;:22;;;;1236:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1349:8;1321:37;;1342:5;;;;;;;;;;;1321:37;;;;;;;;;;;;1375:8;1367:5;;:16;;;;;;;;;;;;;;;;;;1165:226;:::o;8455:225::-;8508:13;8493:12;;:28;;;;;;;;;;;;;;;;;;;;;;;;8553:1;8535:15;;:19;8532:91;;;8587:36;8607:15;;8587:8;:15;8596:5;;;;;;;;;;;8587:15;;;;;;;;;;;;;;;;:19;;:36;;;;:::i;:::-;8569:8;:15;8578:5;;;;;;;;;;;8569:15;;;;;;;;;;;;;;;:54;;;;8532:91;8634:5;;;;;;;;;;;:14;;:37;8657:4;8649:21;;;8634:37;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8634:37:0;8455:225::o;669:169::-;728:7;748:9;779;760:8;764:1;766;760:3;:8::i;:::-;748:20;;791:8;795:1;797;791:3;:8::i;:::-;779:20;;817:15;821:8;825:1;827;821:3;:8::i;:::-;830:1;817:3;:15::i;:::-;810:22;;669:169;;;;;;:::o

Swarm Source

bzzr://9df688ac8bd44a926265e13cf838c9e377b6ed201b5badfda917bacadbdc8aaa
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.