ETH Price: $3,375.22 (+3.18%)
Gas: 3 Gwei

Token

Vikings (VIKINGS)
 

Overview

Max Total Supply

1,000,000,000,000,000 VIKINGS

Holders

87

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
2,636,120,410,824.083186549 VIKINGS

Value
$0.00
0x055062dfca63c09b8dcbe019abe3c028811c1ed4
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:
Vikings

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

//telegram @VikingsETH
// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.4;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}  

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract Vikings is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping (address => uint) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1000000000000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _redis = 1;
    uint256 private _tax = 10;
    uint256 private _feeAddr1;
    uint256 private _feeAddr2;
    address payable private _feeAddrWallet1;
    
    string private constant _name = "Vikings";
    string private constant _symbol = "VIKINGS";
    uint8 private constant _decimals = 9;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    bool private cooldownEnabled = false;
    uint256 private _maxTxAmount = _tTotal;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor (address payable _add1) {
        _feeAddrWallet1 = _add1;
        _rOwned[owner()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_feeAddrWallet1] = true;
        emit Transfer(address(0),owner(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return tokenFromReflection(_rOwned[account]);
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function setCooldownEnabled(bool onoff) external onlyOwner() {
        cooldownEnabled = onoff;
    }

    function tokenFromReflection(uint256 rAmount) private view returns(uint256) {
        require(rAmount <= _rTotal, "Amount must be less than total reflections");
        uint256 currentRate =  _getRate();
        return rAmount.div(currentRate);
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(amount > 0, "Transfer amount must be greater than zero");
        require(!bots[from]);
        if (from != address(this)) {
            _feeAddr1 = _redis;
            _feeAddr2 = _tax;
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && from != uniswapV2Pair && swapEnabled) {
                if(contractTokenBalance > 0){
                swapTokensForEth(contractTokenBalance);
                }
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 100000000000000000) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        if( from == owner()){
            _feeAddr2 = 0;
            _feeAddr1 = 0;
        }
        _tokenTransfer(from,to,amount);
    }


    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
    function liftMaxTx() external onlyOwner{
        _maxTxAmount = _tTotal ;
    }
    function sendETHToFee(uint256 amount) private {
        _feeAddrWallet1.transfer(amount);
    }
    
    
    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        swapEnabled = true;
        cooldownEnabled = true;
        _maxTxAmount = _tTotal;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }
    
    function blacklistBot(address _address) external {
        require(_msgSender() == _feeAddrWallet1);
            bots[_address] = true;
    }
    
    function removeFromBlacklist(address notbot) external {
        require(_msgSender() == _feeAddrWallet1);
        bots[notbot] = false;
    }
        
    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        _transferStandard(sender, recipient, amount);
    }

    function _transferStandard(address sender, address recipient, uint256 tAmount) private {
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); 
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate =  _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}
    
    function manualswap() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    
    function manualsend() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
    

    function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _feeAddr1, _feeAddr2);
        uint256 currentRate =  _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(TeamFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

	function _getRate() private view returns(uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns(uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;      
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"_add1","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"blacklistBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"liftMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"removeFromBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405269d3c21bcecceda10000006000196200001e9190620004ee565b6000196200002d919062000475565b6008556001600a55600a600b556000601060156101000a81548160ff0219169083151502179055506000601060166101000a81548160ff0219169083151502179055506000601060176101000a81548160ff02191690831515021790555069d3c21bcecceda1000000601155348015620000a657600080fd5b50604051620031b2380380620031b28339818101604052810190620000cc91906200041b565b6000620000de620003d360201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060085460026000620001d4620003db60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060016005600062000228620003db60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200035b620003db60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69d3c21bcecceda1000000604051620003c4919062000458565b60405180910390a3506200059e565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620004158162000584565b92915050565b6000602082840312156200042e57600080fd5b60006200043e8482850162000404565b91505092915050565b6200045281620004e4565b82525050565b60006020820190506200046f600083018462000447565b92915050565b60006200048282620004e4565b91506200048f83620004e4565b925082821015620004a557620004a462000526565b5b828203905092915050565b6000620004bd82620004c4565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000620004fb82620004e4565b91506200050883620004e4565b9250826200051b576200051a62000555565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6200058f81620004b0565b81146200059b57600080fd5b50565b612c0480620005ae6000396000f3fe60806040526004361061010d5760003560e01c80636fc3eaec1161009557806395d89b411161006457806395d89b411461033c578063a9059cbb14610367578063c3c8cd80146103a4578063c9567bf9146103bb578063dd62ed3e146103d257610114565b80636fc3eaec146102a657806370a08231146102bd578063715018a6146102fa5780638da5cb5b1461031157610114565b806323b872dd116100dc57806323b872dd146101d55780632ab3083814610212578063313ce56714610229578063537df3b6146102545780635932ead11461027d57610114565b806306fdde031461011957806308aad1f114610144578063095ea7b31461016d57806318160ddd146101aa57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e61040f565b60405161013b9190612536565b60405180910390f35b34801561015057600080fd5b5061016b60048036038101906101669190612072565b61044c565b005b34801561017957600080fd5b50610194600480360381019061018f919061214f565b610508565b6040516101a1919061251b565b60405180910390f35b3480156101b657600080fd5b506101bf610526565b6040516101cc9190612658565b60405180910390f35b3480156101e157600080fd5b506101fc60048036038101906101f79190612100565b610538565b604051610209919061251b565b60405180910390f35b34801561021e57600080fd5b50610227610611565b005b34801561023557600080fd5b5061023e6106b9565b60405161024b91906126cd565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190612072565b6106c2565b005b34801561028957600080fd5b506102a4600480360381019061029f919061218b565b61077e565b005b3480156102b257600080fd5b506102bb610830565b005b3480156102c957600080fd5b506102e460048036038101906102df9190612072565b6108a2565b6040516102f19190612658565b60405180910390f35b34801561030657600080fd5b5061030f6108f3565b005b34801561031d57600080fd5b50610326610a46565b604051610333919061244d565b60405180910390f35b34801561034857600080fd5b50610351610a6f565b60405161035e9190612536565b60405180910390f35b34801561037357600080fd5b5061038e6004803603810190610389919061214f565b610aac565b60405161039b919061251b565b60405180910390f35b3480156103b057600080fd5b506103b9610aca565b005b3480156103c757600080fd5b506103d0610b44565b005b3480156103de57600080fd5b506103f960048036038101906103f491906120c4565b6110a3565b6040516104069190612658565b60405180910390f35b60606040518060400160405280600781526020017f56696b696e677300000000000000000000000000000000000000000000000000815250905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661048d61112a565b73ffffffffffffffffffffffffffffffffffffffff16146104ad57600080fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061051c61051561112a565b8484611132565b6001905092915050565b600069d3c21bcecceda1000000905090565b60006105458484846112fd565b6106068461055161112a565b61060185604051806060016040528060288152602001612ba760289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105b761112a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115039092919063ffffffff16565b611132565b600190509392505050565b61061961112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069d906125d8565b60405180910390fd5b69d3c21bcecceda1000000601181905550565b60006009905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661070361112a565b73ffffffffffffffffffffffffffffffffffffffff161461072357600080fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b61078661112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610813576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080a906125d8565b60405180910390fd5b80601060176101000a81548160ff02191690831515021790555050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661087161112a565b73ffffffffffffffffffffffffffffffffffffffff161461089157600080fd5b600047905061089f81611567565b50565b60006108ec600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115d3565b9050919050565b6108fb61112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097f906125d8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600781526020017f56494b494e475300000000000000000000000000000000000000000000000000815250905090565b6000610ac0610ab961112a565b84846112fd565b6001905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b0b61112a565b73ffffffffffffffffffffffffffffffffffffffff1614610b2b57600080fd5b6000610b36306108a2565b9050610b4181611641565b50565b610b4c61112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd0906125d8565b60405180910390fd5b601060149054906101000a900460ff1615610c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2090612638565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cba30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1669d3c21bcecceda1000000611132565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0057600080fd5b505afa158015610d14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d38919061209b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610d9a57600080fd5b505afa158015610dae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd2919061209b565b6040518363ffffffff1660e01b8152600401610def929190612468565b602060405180830381600087803b158015610e0957600080fd5b505af1158015610e1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e41919061209b565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610eca306108a2565b600080610ed5610a46565b426040518863ffffffff1660e01b8152600401610ef7969594939291906124ba565b6060604051808303818588803b158015610f1057600080fd5b505af1158015610f24573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f4991906121dd565b5050506001601060166101000a81548160ff0219169083151502179055506001601060176101000a81548160ff02191690831515021790555069d3c21bcecceda10000006011819055506001601060146101000a81548160ff021916908315150217905550601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161104d929190612491565b602060405180830381600087803b15801561106757600080fd5b505af115801561107b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109f91906121b4565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156111a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119990612618565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611212576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120990612578565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112f09190612658565b60405180910390a3505050565b60008111611340576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611337906125f8565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561139757600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146114a757600a54600c81905550600b54600d8190555060006113e7306108a2565b9050601060159054906101000a900460ff161580156114545750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561146c5750601060169054906101000a900460ff165b156114a55760008111156114845761148381611641565b5b600047905067016345785d8a00008111156114a3576114a247611567565b5b505b505b6114af610a46565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114f3576000600d819055506000600c819055505b6114fe83838361193b565b505050565b600083831115829061154b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115429190612536565b60405180910390fd5b506000838561155a919061281e565b9050809150509392505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156115cf573d6000803e3d6000fd5b5050565b600060085482111561161a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161190612558565b60405180910390fd5b600061162461194b565b9050611639818461197690919063ffffffff16565b915050919050565b6001601060156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561169f577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156116cd5781602001602082028036833780820191505090505b509050308160008151811061170b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156117ad57600080fd5b505afa1580156117c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e5919061209b565b8160018151811061181f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061188630600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611132565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016118ea959493929190612673565b600060405180830381600087803b15801561190457600080fd5b505af1158015611918573d6000803e3d6000fd5b50505050506000601060156101000a81548160ff02191690831515021790555050565b6119468383836119c0565b505050565b6000806000611958611b8b565b9150915061196f818361197690919063ffffffff16565b9250505090565b60006119b883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611bf0565b905092915050565b6000806000806000806119d287611c53565b955095509550955095509550611a3086600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cbb90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ac585600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d0590919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b1181611d63565b611b1b8483611e20565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b789190612658565b60405180910390a3505050505050505050565b60008060006008549050600069d3c21bcecceda10000009050611bc369d3c21bcecceda100000060085461197690919063ffffffff16565b821015611be35760085469d3c21bcecceda1000000935093505050611bec565b81819350935050505b9091565b60008083118290611c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2e9190612536565b60405180910390fd5b5060008385611c469190612793565b9050809150509392505050565b6000806000806000806000806000611c708a600c54600d54611e5a565b9250925092506000611c8061194b565b90506000806000611c938e878787611ef0565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000611cfd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611503565b905092915050565b6000808284611d14919061273d565b905083811015611d59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5090612598565b60405180910390fd5b8091505092915050565b6000611d6d61194b565b90506000611d848284611f7990919063ffffffff16565b9050611dd881600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d0590919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611e3582600854611cbb90919063ffffffff16565b600881905550611e5081600954611d0590919063ffffffff16565b6009819055505050565b600080600080611e866064611e78888a611f7990919063ffffffff16565b61197690919063ffffffff16565b90506000611eb06064611ea2888b611f7990919063ffffffff16565b61197690919063ffffffff16565b90506000611ed982611ecb858c611cbb90919063ffffffff16565b611cbb90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080611f098589611f7990919063ffffffff16565b90506000611f208689611f7990919063ffffffff16565b90506000611f378789611f7990919063ffffffff16565b90506000611f6082611f528587611cbb90919063ffffffff16565b611cbb90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600080831415611f8c5760009050611fee565b60008284611f9a91906127c4565b9050828482611fa99190612793565b14611fe9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe0906125b8565b60405180910390fd5b809150505b92915050565b60008135905061200381612b61565b92915050565b60008151905061201881612b61565b92915050565b60008135905061202d81612b78565b92915050565b60008151905061204281612b78565b92915050565b60008135905061205781612b8f565b92915050565b60008151905061206c81612b8f565b92915050565b60006020828403121561208457600080fd5b600061209284828501611ff4565b91505092915050565b6000602082840312156120ad57600080fd5b60006120bb84828501612009565b91505092915050565b600080604083850312156120d757600080fd5b60006120e585828601611ff4565b92505060206120f685828601611ff4565b9150509250929050565b60008060006060848603121561211557600080fd5b600061212386828701611ff4565b935050602061213486828701611ff4565b925050604061214586828701612048565b9150509250925092565b6000806040838503121561216257600080fd5b600061217085828601611ff4565b925050602061218185828601612048565b9150509250929050565b60006020828403121561219d57600080fd5b60006121ab8482850161201e565b91505092915050565b6000602082840312156121c657600080fd5b60006121d484828501612033565b91505092915050565b6000806000606084860312156121f257600080fd5b60006122008682870161205d565b93505060206122118682870161205d565b92505060406122228682870161205d565b9150509250925092565b60006122388383612244565b60208301905092915050565b61224d81612852565b82525050565b61225c81612852565b82525050565b600061226d826126f8565b612277818561271b565b9350612282836126e8565b8060005b838110156122b357815161229a888261222c565b97506122a58361270e565b925050600181019050612286565b5085935050505092915050565b6122c981612864565b82525050565b6122d8816128a7565b82525050565b60006122e982612703565b6122f3818561272c565b93506123038185602086016128b9565b61230c8161294a565b840191505092915050565b6000612324602a8361272c565b915061232f8261295b565b604082019050919050565b600061234760228361272c565b9150612352826129aa565b604082019050919050565b600061236a601b8361272c565b9150612375826129f9565b602082019050919050565b600061238d60218361272c565b915061239882612a22565b604082019050919050565b60006123b060208361272c565b91506123bb82612a71565b602082019050919050565b60006123d360298361272c565b91506123de82612a9a565b604082019050919050565b60006123f660248361272c565b915061240182612ae9565b604082019050919050565b600061241960178361272c565b915061242482612b38565b602082019050919050565b61243881612890565b82525050565b6124478161289a565b82525050565b60006020820190506124626000830184612253565b92915050565b600060408201905061247d6000830185612253565b61248a6020830184612253565b9392505050565b60006040820190506124a66000830185612253565b6124b3602083018461242f565b9392505050565b600060c0820190506124cf6000830189612253565b6124dc602083018861242f565b6124e960408301876122cf565b6124f660608301866122cf565b6125036080830185612253565b61251060a083018461242f565b979650505050505050565b600060208201905061253060008301846122c0565b92915050565b6000602082019050818103600083015261255081846122de565b905092915050565b6000602082019050818103600083015261257181612317565b9050919050565b600060208201905081810360008301526125918161233a565b9050919050565b600060208201905081810360008301526125b18161235d565b9050919050565b600060208201905081810360008301526125d181612380565b9050919050565b600060208201905081810360008301526125f1816123a3565b9050919050565b60006020820190508181036000830152612611816123c6565b9050919050565b60006020820190508181036000830152612631816123e9565b9050919050565b600060208201905081810360008301526126518161240c565b9050919050565b600060208201905061266d600083018461242f565b92915050565b600060a082019050612688600083018861242f565b61269560208301876122cf565b81810360408301526126a78186612262565b90506126b66060830185612253565b6126c3608083018461242f565b9695505050505050565b60006020820190506126e2600083018461243e565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061274882612890565b915061275383612890565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612788576127876128ec565b5b828201905092915050565b600061279e82612890565b91506127a983612890565b9250826127b9576127b861291b565b5b828204905092915050565b60006127cf82612890565b91506127da83612890565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612813576128126128ec565b5b828202905092915050565b600061282982612890565b915061283483612890565b925082821015612847576128466128ec565b5b828203905092915050565b600061285d82612870565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006128b282612890565b9050919050565b60005b838110156128d75780820151818401526020810190506128bc565b838111156128e6576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b612b6a81612852565b8114612b7557600080fd5b50565b612b8181612864565b8114612b8c57600080fd5b50565b612b9881612890565b8114612ba357600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205683ee04050c0554be9bf1ea44d0176b51baa5b04bc547662519a9778902086064736f6c634300080400330000000000000000000000001ddffb8dfb64f3e7cc346c7a08d75862e1b6085e

Deployed Bytecode

0x60806040526004361061010d5760003560e01c80636fc3eaec1161009557806395d89b411161006457806395d89b411461033c578063a9059cbb14610367578063c3c8cd80146103a4578063c9567bf9146103bb578063dd62ed3e146103d257610114565b80636fc3eaec146102a657806370a08231146102bd578063715018a6146102fa5780638da5cb5b1461031157610114565b806323b872dd116100dc57806323b872dd146101d55780632ab3083814610212578063313ce56714610229578063537df3b6146102545780635932ead11461027d57610114565b806306fdde031461011957806308aad1f114610144578063095ea7b31461016d57806318160ddd146101aa57610114565b3661011457005b600080fd5b34801561012557600080fd5b5061012e61040f565b60405161013b9190612536565b60405180910390f35b34801561015057600080fd5b5061016b60048036038101906101669190612072565b61044c565b005b34801561017957600080fd5b50610194600480360381019061018f919061214f565b610508565b6040516101a1919061251b565b60405180910390f35b3480156101b657600080fd5b506101bf610526565b6040516101cc9190612658565b60405180910390f35b3480156101e157600080fd5b506101fc60048036038101906101f79190612100565b610538565b604051610209919061251b565b60405180910390f35b34801561021e57600080fd5b50610227610611565b005b34801561023557600080fd5b5061023e6106b9565b60405161024b91906126cd565b60405180910390f35b34801561026057600080fd5b5061027b60048036038101906102769190612072565b6106c2565b005b34801561028957600080fd5b506102a4600480360381019061029f919061218b565b61077e565b005b3480156102b257600080fd5b506102bb610830565b005b3480156102c957600080fd5b506102e460048036038101906102df9190612072565b6108a2565b6040516102f19190612658565b60405180910390f35b34801561030657600080fd5b5061030f6108f3565b005b34801561031d57600080fd5b50610326610a46565b604051610333919061244d565b60405180910390f35b34801561034857600080fd5b50610351610a6f565b60405161035e9190612536565b60405180910390f35b34801561037357600080fd5b5061038e6004803603810190610389919061214f565b610aac565b60405161039b919061251b565b60405180910390f35b3480156103b057600080fd5b506103b9610aca565b005b3480156103c757600080fd5b506103d0610b44565b005b3480156103de57600080fd5b506103f960048036038101906103f491906120c4565b6110a3565b6040516104069190612658565b60405180910390f35b60606040518060400160405280600781526020017f56696b696e677300000000000000000000000000000000000000000000000000815250905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661048d61112a565b73ffffffffffffffffffffffffffffffffffffffff16146104ad57600080fd5b6001600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061051c61051561112a565b8484611132565b6001905092915050565b600069d3c21bcecceda1000000905090565b60006105458484846112fd565b6106068461055161112a565b61060185604051806060016040528060288152602001612ba760289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105b761112a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115039092919063ffffffff16565b611132565b600190509392505050565b61061961112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069d906125d8565b60405180910390fd5b69d3c21bcecceda1000000601181905550565b60006009905090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661070361112a565b73ffffffffffffffffffffffffffffffffffffffff161461072357600080fd5b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b61078661112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610813576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161080a906125d8565b60405180910390fd5b80601060176101000a81548160ff02191690831515021790555050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661087161112a565b73ffffffffffffffffffffffffffffffffffffffff161461089157600080fd5b600047905061089f81611567565b50565b60006108ec600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115d3565b9050919050565b6108fb61112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610988576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097f906125d8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600781526020017f56494b494e475300000000000000000000000000000000000000000000000000815250905090565b6000610ac0610ab961112a565b84846112fd565b6001905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b0b61112a565b73ffffffffffffffffffffffffffffffffffffffff1614610b2b57600080fd5b6000610b36306108a2565b9050610b4181611641565b50565b610b4c61112a565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd0906125d8565b60405180910390fd5b601060149054906101000a900460ff1615610c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2090612638565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d905080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610cba30600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1669d3c21bcecceda1000000611132565b8073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d0057600080fd5b505afa158015610d14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d38919061209b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610d9a57600080fd5b505afa158015610dae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd2919061209b565b6040518363ffffffff1660e01b8152600401610def929190612468565b602060405180830381600087803b158015610e0957600080fd5b505af1158015610e1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e41919061209b565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610eca306108a2565b600080610ed5610a46565b426040518863ffffffff1660e01b8152600401610ef7969594939291906124ba565b6060604051808303818588803b158015610f1057600080fd5b505af1158015610f24573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f4991906121dd565b5050506001601060166101000a81548160ff0219169083151502179055506001601060176101000a81548160ff02191690831515021790555069d3c21bcecceda10000006011819055506001601060146101000a81548160ff021916908315150217905550601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161104d929190612491565b602060405180830381600087803b15801561106757600080fd5b505af115801561107b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109f91906121b4565b5050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156111a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119990612618565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611212576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120990612578565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112f09190612658565b60405180910390a3505050565b60008111611340576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611337906125f8565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561139757600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146114a757600a54600c81905550600b54600d8190555060006113e7306108a2565b9050601060159054906101000a900460ff161580156114545750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b801561146c5750601060169054906101000a900460ff165b156114a55760008111156114845761148381611641565b5b600047905067016345785d8a00008111156114a3576114a247611567565b5b505b505b6114af610a46565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114f3576000600d819055506000600c819055505b6114fe83838361193b565b505050565b600083831115829061154b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115429190612536565b60405180910390fd5b506000838561155a919061281e565b9050809150509392505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156115cf573d6000803e3d6000fd5b5050565b600060085482111561161a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161190612558565b60405180910390fd5b600061162461194b565b9050611639818461197690919063ffffffff16565b915050919050565b6001601060156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561169f577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156116cd5781602001602082028036833780820191505090505b509050308160008151811061170b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156117ad57600080fd5b505afa1580156117c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e5919061209b565b8160018151811061181f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061188630600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611132565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016118ea959493929190612673565b600060405180830381600087803b15801561190457600080fd5b505af1158015611918573d6000803e3d6000fd5b50505050506000601060156101000a81548160ff02191690831515021790555050565b6119468383836119c0565b505050565b6000806000611958611b8b565b9150915061196f818361197690919063ffffffff16565b9250505090565b60006119b883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611bf0565b905092915050565b6000806000806000806119d287611c53565b955095509550955095509550611a3086600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cbb90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ac585600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d0590919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b1181611d63565b611b1b8483611e20565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b789190612658565b60405180910390a3505050505050505050565b60008060006008549050600069d3c21bcecceda10000009050611bc369d3c21bcecceda100000060085461197690919063ffffffff16565b821015611be35760085469d3c21bcecceda1000000935093505050611bec565b81819350935050505b9091565b60008083118290611c37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2e9190612536565b60405180910390fd5b5060008385611c469190612793565b9050809150509392505050565b6000806000806000806000806000611c708a600c54600d54611e5a565b9250925092506000611c8061194b565b90506000806000611c938e878787611ef0565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b6000611cfd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611503565b905092915050565b6000808284611d14919061273d565b905083811015611d59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5090612598565b60405180910390fd5b8091505092915050565b6000611d6d61194b565b90506000611d848284611f7990919063ffffffff16565b9050611dd881600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d0590919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b611e3582600854611cbb90919063ffffffff16565b600881905550611e5081600954611d0590919063ffffffff16565b6009819055505050565b600080600080611e866064611e78888a611f7990919063ffffffff16565b61197690919063ffffffff16565b90506000611eb06064611ea2888b611f7990919063ffffffff16565b61197690919063ffffffff16565b90506000611ed982611ecb858c611cbb90919063ffffffff16565b611cbb90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080611f098589611f7990919063ffffffff16565b90506000611f208689611f7990919063ffffffff16565b90506000611f378789611f7990919063ffffffff16565b90506000611f6082611f528587611cbb90919063ffffffff16565b611cbb90919063ffffffff16565b9050838184965096509650505050509450945094915050565b600080831415611f8c5760009050611fee565b60008284611f9a91906127c4565b9050828482611fa99190612793565b14611fe9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fe0906125b8565b60405180910390fd5b809150505b92915050565b60008135905061200381612b61565b92915050565b60008151905061201881612b61565b92915050565b60008135905061202d81612b78565b92915050565b60008151905061204281612b78565b92915050565b60008135905061205781612b8f565b92915050565b60008151905061206c81612b8f565b92915050565b60006020828403121561208457600080fd5b600061209284828501611ff4565b91505092915050565b6000602082840312156120ad57600080fd5b60006120bb84828501612009565b91505092915050565b600080604083850312156120d757600080fd5b60006120e585828601611ff4565b92505060206120f685828601611ff4565b9150509250929050565b60008060006060848603121561211557600080fd5b600061212386828701611ff4565b935050602061213486828701611ff4565b925050604061214586828701612048565b9150509250925092565b6000806040838503121561216257600080fd5b600061217085828601611ff4565b925050602061218185828601612048565b9150509250929050565b60006020828403121561219d57600080fd5b60006121ab8482850161201e565b91505092915050565b6000602082840312156121c657600080fd5b60006121d484828501612033565b91505092915050565b6000806000606084860312156121f257600080fd5b60006122008682870161205d565b93505060206122118682870161205d565b92505060406122228682870161205d565b9150509250925092565b60006122388383612244565b60208301905092915050565b61224d81612852565b82525050565b61225c81612852565b82525050565b600061226d826126f8565b612277818561271b565b9350612282836126e8565b8060005b838110156122b357815161229a888261222c565b97506122a58361270e565b925050600181019050612286565b5085935050505092915050565b6122c981612864565b82525050565b6122d8816128a7565b82525050565b60006122e982612703565b6122f3818561272c565b93506123038185602086016128b9565b61230c8161294a565b840191505092915050565b6000612324602a8361272c565b915061232f8261295b565b604082019050919050565b600061234760228361272c565b9150612352826129aa565b604082019050919050565b600061236a601b8361272c565b9150612375826129f9565b602082019050919050565b600061238d60218361272c565b915061239882612a22565b604082019050919050565b60006123b060208361272c565b91506123bb82612a71565b602082019050919050565b60006123d360298361272c565b91506123de82612a9a565b604082019050919050565b60006123f660248361272c565b915061240182612ae9565b604082019050919050565b600061241960178361272c565b915061242482612b38565b602082019050919050565b61243881612890565b82525050565b6124478161289a565b82525050565b60006020820190506124626000830184612253565b92915050565b600060408201905061247d6000830185612253565b61248a6020830184612253565b9392505050565b60006040820190506124a66000830185612253565b6124b3602083018461242f565b9392505050565b600060c0820190506124cf6000830189612253565b6124dc602083018861242f565b6124e960408301876122cf565b6124f660608301866122cf565b6125036080830185612253565b61251060a083018461242f565b979650505050505050565b600060208201905061253060008301846122c0565b92915050565b6000602082019050818103600083015261255081846122de565b905092915050565b6000602082019050818103600083015261257181612317565b9050919050565b600060208201905081810360008301526125918161233a565b9050919050565b600060208201905081810360008301526125b18161235d565b9050919050565b600060208201905081810360008301526125d181612380565b9050919050565b600060208201905081810360008301526125f1816123a3565b9050919050565b60006020820190508181036000830152612611816123c6565b9050919050565b60006020820190508181036000830152612631816123e9565b9050919050565b600060208201905081810360008301526126518161240c565b9050919050565b600060208201905061266d600083018461242f565b92915050565b600060a082019050612688600083018861242f565b61269560208301876122cf565b81810360408301526126a78186612262565b90506126b66060830185612253565b6126c3608083018461242f565b9695505050505050565b60006020820190506126e2600083018461243e565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061274882612890565b915061275383612890565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612788576127876128ec565b5b828201905092915050565b600061279e82612890565b91506127a983612890565b9250826127b9576127b861291b565b5b828204905092915050565b60006127cf82612890565b91506127da83612890565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612813576128126128ec565b5b828202905092915050565b600061282982612890565b915061283483612890565b925082821015612847576128466128ec565b5b828203905092915050565b600061285d82612870565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006128b282612890565b9050919050565b60005b838110156128d75780820151818401526020810190506128bc565b838111156128e6576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000601f19601f8301169050919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b612b6a81612852565b8114612b7557600080fd5b50565b612b8181612864565b8114612b8c57600080fd5b50565b612b9881612890565b8114612ba357600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205683ee04050c0554be9bf1ea44d0176b51baa5b04bc547662519a9778902086064736f6c63430008040033

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

0000000000000000000000001ddffb8dfb64f3e7cc346c7a08d75862e1b6085e

-----Decoded View---------------
Arg [0] : _add1 (address): 0x1dDfFb8dFB64f3e7CC346C7a08D75862e1B6085e

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000001ddffb8dfb64f3e7cc346c7a08d75862e1b6085e


Deployed Bytecode Sourcemap

3543:9676:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5239:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9734:144;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6091:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5516:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6260:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8716:81;;;;;;;;;;;;;:::i;:::-;;5425:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9890:144;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6581:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11323:194;;;;;;;;;;;;;:::i;:::-;;5619:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2622:148;;;;;;;;;;;;;:::i;:::-;;2408:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5330:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5765:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11116:195;;;;;;;;;;;;;:::i;:::-;;8918:804;;;;;;;;;;;;;:::i;:::-;;5940:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5239:83;5276:13;5309:5;;;;;;;;;;;;;;;;;5302:12;;5239:83;:::o;9734:144::-;9818:15;;;;;;;;;;;9802:31;;:12;:10;:12::i;:::-;:31;;;9794:40;;;;;;9866:4;9849;:14;9854:8;9849:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;9734:144;:::o;6091:161::-;6166:4;6183:39;6192:12;:10;:12::i;:::-;6206:7;6215:6;6183:8;:39::i;:::-;6240:4;6233:11;;6091:161;;;;:::o;5516:95::-;5569:7;4043:24;5589:14;;5516:95;:::o;6260:313::-;6358:4;6375:36;6385:6;6393:9;6404:6;6375:9;:36::i;:::-;6422:121;6431:6;6439:12;:10;:12::i;:::-;6453:89;6491:6;6453:89;;;;;;;;;;;;;;;;;:11;:19;6465:6;6453:19;;;;;;;;;;;;;;;:33;6473:12;:10;:12::i;:::-;6453:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6422:8;:121::i;:::-;6561:4;6554:11;;6260:313;;;;;:::o;8716:81::-;2545:12;:10;:12::i;:::-;2535:22;;:6;;;;;;;;;;:22;;;2527:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4043:24:::1;8766:12;:22;;;;8716:81::o:0;5425:83::-;5466:5;4477:1;5484:16;;5425:83;:::o;9890:144::-;9979:15;;;;;;;;;;;9963:31;;:12;:10;:12::i;:::-;:31;;;9955:40;;;;;;10021:5;10006:4;:12;10011:6;10006:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;9890:144;:::o;6581:103::-;2545:12;:10;:12::i;:::-;2535:22;;:6;;;;;;;;;;:22;;;2527:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6671:5:::1;6653:15;;:23;;;;;;;;;;;;;;;;;;6581:103:::0;:::o;11323:194::-;11389:15;;;;;;;;;;;11373:31;;:12;:10;:12::i;:::-;:31;;;11365:40;;;;;;11416:26;11445:21;11416:50;;11477:32;11490:18;11477:12;:32::i;:::-;11323:194;:::o;5619:138::-;5685:7;5712:37;5732:7;:16;5740:7;5732:16;;;;;;;;;;;;;;;;5712:19;:37::i;:::-;5705:44;;5619:138;;;:::o;2622:148::-;2545:12;:10;:12::i;:::-;2535:22;;:6;;;;;;;;;;:22;;;2527:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2729:1:::1;2692:40;;2713:6;::::0;::::1;;;;;;;;2692:40;;;;;;;;;;;;2760:1;2743:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2622:148::o:0;2408:79::-;2446:7;2473:6;;;;;;;;;;;2466:13;;2408:79;:::o;5330:87::-;5369:13;5402:7;;;;;;;;;;;;;;;;;5395:14;;5330:87;:::o;5765:167::-;5843:4;5860:42;5870:12;:10;:12::i;:::-;5884:9;5895:6;5860:9;:42::i;:::-;5920:4;5913:11;;5765:167;;;;:::o;11116:195::-;11182:15;;;;;;;;;;;11166:31;;:12;:10;:12::i;:::-;:31;;;11158:40;;;;;;11209:23;11235:24;11253:4;11235:9;:24::i;:::-;11209:50;;11270:33;11287:15;11270:16;:33::i;:::-;11116:195;:::o;8918:804::-;2545:12;:10;:12::i;:::-;2535:22;;:6;;;;;;;;;;:22;;;2527:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8982:11:::1;;;;;;;;;;;8981:12;8973:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;9031:35;9088:42;9031:100;;9160:16;9142:15;;:34;;;;;;;;;;;;;;;;;;9187:58;9204:4;9219:15;;;;;;;;;;;4043:24;9187:8;:58::i;:::-;9290:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9272:56;;;9337:4;9344:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9272:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9256:13;;:112;;;;;;;;;;;;;;;;;;9379:15;;;;;;;;;;;:31;;;9418:21;9449:4;9455:24;9473:4;9455:9;:24::i;:::-;9480:1;9482::::0;9484:7:::1;:5;:7::i;:::-;9492:15;9379:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;9533:4;9519:11;;:18;;;;;;;;;;;;;;;;;;9566:4;9548:15;;:22;;;;;;;;;;;;;;;;;;4043:24;9581:12;:22;;;;9628:4;9614:11;;:18;;;;;;;;;;;;;;;;;;9650:13;;;;;;;;;;;9643:29;;;9681:15;;;;;;;;;;;9699:14;9643:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2605:1;8918:804::o:0;5940:143::-;6021:7;6048:11;:18;6060:5;6048:18;;;;;;;;;;;;;;;:27;6067:7;6048:27;;;;;;;;;;;;;;;;6041:34;;5940:143;;;;:::o;126:98::-;179:7;206:10;199:17;;126:98;:::o;6954:335::-;7064:1;7047:19;;:5;:19;;;;7039:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7145:1;7126:21;;:7;:21;;;;7118:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7227:6;7197:11;:18;7209:5;7197:18;;;;;;;;;;;;;;;:27;7216:7;7197:27;;;;;;;;;;;;;;;:36;;;;7265:7;7249:32;;7258:5;7249:32;;;7274:6;7249:32;;;;;;:::i;:::-;;;;;;;;6954:335;;;:::o;7297:920::-;7394:1;7385:6;:10;7377:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7461:4;:10;7466:4;7461:10;;;;;;;;;;;;;;;;;;;;;;;;;7460:11;7452:20;;;;;;7503:4;7487:21;;:4;:21;;;7483:588;;7537:6;;7525:9;:18;;;;7570:4;;7558:9;:16;;;;7589:28;7620:24;7638:4;7620:9;:24::i;:::-;7589:55;;7664:6;;;;;;;;;;;7663:7;:32;;;;;7682:13;;;;;;;;;;;7674:21;;:4;:21;;;;7663:32;:47;;;;;7699:11;;;;;;;;;;;7663:47;7659:401;;;7757:1;7734:20;:24;7731:105;;;7778:38;7795:20;7778:16;:38::i;:::-;7731:105;7854:26;7883:21;7854:50;;7947:18;7926;:39;7923:122;;;7990:35;8003:21;7990:12;:35::i;:::-;7923:122;7659:401;;7483:588;;8093:7;:5;:7::i;:::-;8085:15;;:4;:15;;;8081:88;;;8128:1;8116:9;:13;;;;8156:1;8144:9;:13;;;;8081:88;8179:30;8194:4;8199:2;8202:6;8179:14;:30::i;:::-;7297:920;;;:::o;1263:190::-;1349:7;1382:1;1377;:6;;1385:12;1369:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1409:9;1425:1;1421;:5;;;;:::i;:::-;1409:17;;1444:1;1437:8;;;1263:190;;;;;:::o;8803:97::-;8860:15;;;;;;;;;;;:24;;:32;8885:6;8860:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8803:97;:::o;6692:254::-;6759:7;6798;;6787;:18;;6779:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;6863:19;6886:10;:8;:10::i;:::-;6863:33;;6914:24;6926:11;6914:7;:11;;:24;;;;:::i;:::-;6907:31;;;6692:254;;;:::o;8227:483::-;4859:4;4850:6;;:13;;;;;;;;;;;;;;;;;;8305:21:::1;8343:1;8329:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8305:40;;8374:4;8356;8361:1;8356:7;;;;;;;;;;;;;;;;;;;;;:23;;;;;;;;;::::0;::::1;8400:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8390:4;8395:1;8390:7;;;;;;;;;;;;;;;;;;;;;:32;;;;;;;;;::::0;::::1;8433:62;8450:4;8465:15;;;;;;;;;;;8483:11;8433:8;:62::i;:::-;8506:15;;;;;;;;;;;:66;;;8587:11;8613:1;8629:4;8656;8676:15;8506:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;4874:1;4895:5:::0;4886:6;;:14;;;;;;;;;;;;;;;;;;8227:483;:::o;10050:146::-;10144:44;10162:6;10170:9;10181:6;10144:17;:44::i;:::-;10050:146;;;:::o;12783:163::-;12824:7;12845:15;12862;12881:19;:17;:19::i;:::-;12844:56;;;;12918:20;12930:7;12918;:11;;:20;;;;:::i;:::-;12911:27;;;;12783:163;:::o;1715:132::-;1773:7;1800:39;1804:1;1807;1800:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1793:46;;1715:132;;;;:::o;10204:488::-;10303:15;10320:23;10345:12;10359:23;10384:12;10398:13;10415:19;10426:7;10415:10;:19::i;:::-;10302:132;;;;;;;;;;;;10463:28;10483:7;10463;:15;10471:6;10463:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;10445:7;:15;10453:6;10445:15;;;;;;;;;;;;;;;:46;;;;10523:39;10546:15;10523:7;:18;10531:9;10523:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;10502:7;:18;10510:9;10502:18;;;;;;;;;;;;;;;:60;;;;10574:16;10584:5;10574:9;:16::i;:::-;10601:23;10613:4;10619;10601:11;:23::i;:::-;10657:9;10640:44;;10649:6;10640:44;;;10668:15;10640:44;;;;;;:::i;:::-;;;;;;;;10204:488;;;;;;;;;:::o;12954:262::-;13004:7;13013;13033:15;13051:7;;13033:25;;13069:15;4043:24;13069:25;;13125:20;4043:24;13125:7;;:11;;:20;;;;:::i;:::-;13115:7;:30;13111:61;;;13155:7;;4043:24;13147:25;;;;;;;;13111:61;13191:7;13200;13183:25;;;;;;12954:262;;;:::o;1855:189::-;1941:7;1973:1;1969;:5;1976:12;1961:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2000:9;2016:1;2012;:5;;;;:::i;:::-;2000:17;;2035:1;2028:8;;;1855:189;;;;;:::o;11531:471::-;11590:7;11599;11608;11617;11626;11635;11656:23;11681:12;11695:13;11712:42;11724:7;11733:9;;11744;;11712:11;:42::i;:::-;11655:99;;;;;;11765:19;11788:10;:8;:10::i;:::-;11765:33;;11810:15;11827:23;11852:12;11868:46;11880:7;11889:4;11895:5;11902:11;11868;:46::i;:::-;11809:105;;;;;;11933:7;11942:15;11959:4;11965:15;11982:4;11988:5;11925:69;;;;;;;;;;;;;;;;;;;11531:471;;;;;;;:::o;1119:136::-;1177:7;1204:43;1208:1;1211;1204:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1197:50;;1119:136;;;;:::o;932:179::-;990:7;1010:9;1026:1;1022;:5;;;;:::i;:::-;1010:17;;1051:1;1046;:6;;1038:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1102:1;1095:8;;;932:179;;;;:::o;10700:212::-;10753:19;10776:10;:8;:10::i;:::-;10753:33;;10797:13;10813:22;10823:11;10813:5;:9;;:22;;;;:::i;:::-;10797:38;;10871:33;10898:5;10871:7;:22;10887:4;10871:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;10846:7;:22;10862:4;10846:22;;;;;;;;;;;;;;;:58;;;;10700:212;;;:::o;10920:147::-;10998:17;11010:4;10998:7;;:11;;:17;;;;:::i;:::-;10988:7;:27;;;;11039:20;11054:4;11039:10;;:14;;:20;;;;:::i;:::-;11026:10;:33;;;;10920:147;;:::o;12010:351::-;12103:7;12112;12121;12141:12;12156:28;12180:3;12156:19;12168:6;12156:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;12141:43;;12195:13;12211:29;12236:3;12211:20;12223:7;12211;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;12195:45;;12251:23;12277:28;12299:5;12277:17;12289:4;12277:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12251:54;;12324:15;12341:4;12347:5;12316:37;;;;;;;;;12010:351;;;;;;;:::o;12369:409::-;12479:7;12488;12497;12517:15;12535:24;12547:11;12535:7;:11;;:24;;;;:::i;:::-;12517:42;;12570:12;12585:21;12594:11;12585:4;:8;;:21;;;;:::i;:::-;12570:36;;12617:13;12633:22;12643:11;12633:5;:9;;:22;;;;:::i;:::-;12617:38;;12666:23;12692:28;12714:5;12692:17;12704:4;12692:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;12666:54;;12739:7;12748:15;12765:4;12731:39;;;;;;;;;;12369:409;;;;;;;;:::o;1461:246::-;1519:7;1548:1;1543;:6;1539:47;;;1573:1;1566:8;;;;1539:47;1596:9;1612:1;1608;:5;;;;:::i;:::-;1596:17;;1641:1;1636;1632;:5;;;;:::i;:::-;:10;1624:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1698:1;1691:8;;;1461:246;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;215:80;;;;:::o;301:133::-;344:5;382:6;369:20;360:29;;398:30;422:5;398:30;:::i;:::-;350:84;;;;:::o;440:137::-;494:5;525:6;519:13;510:22;;541:30;565:5;541:30;:::i;:::-;500:77;;;;:::o;583:139::-;629:5;667:6;654:20;645:29;;683:33;710:5;683:33;:::i;:::-;635:87;;;;:::o;728:143::-;785:5;816:6;810:13;801:22;;832:33;859:5;832:33;:::i;:::-;791:80;;;;:::o;877:262::-;936:6;985:2;973:9;964:7;960:23;956:32;953:2;;;1001:1;998;991:12;953:2;1044:1;1069:53;1114:7;1105:6;1094:9;1090:22;1069:53;:::i;:::-;1059:63;;1015:117;943:196;;;;:::o;1145:284::-;1215:6;1264:2;1252:9;1243:7;1239:23;1235:32;1232:2;;;1280:1;1277;1270:12;1232:2;1323:1;1348:64;1404:7;1395:6;1384:9;1380:22;1348:64;:::i;:::-;1338:74;;1294:128;1222:207;;;;:::o;1435:407::-;1503:6;1511;1560:2;1548:9;1539:7;1535:23;1531:32;1528:2;;;1576:1;1573;1566:12;1528:2;1619:1;1644:53;1689:7;1680:6;1669:9;1665:22;1644:53;:::i;:::-;1634:63;;1590:117;1746:2;1772:53;1817:7;1808:6;1797:9;1793:22;1772:53;:::i;:::-;1762:63;;1717:118;1518:324;;;;;:::o;1848:552::-;1925:6;1933;1941;1990:2;1978:9;1969:7;1965:23;1961:32;1958:2;;;2006:1;2003;1996:12;1958:2;2049:1;2074:53;2119:7;2110:6;2099:9;2095:22;2074:53;:::i;:::-;2064:63;;2020:117;2176:2;2202:53;2247:7;2238:6;2227:9;2223:22;2202:53;:::i;:::-;2192:63;;2147:118;2304:2;2330:53;2375:7;2366:6;2355:9;2351:22;2330:53;:::i;:::-;2320:63;;2275:118;1948:452;;;;;:::o;2406:407::-;2474:6;2482;2531:2;2519:9;2510:7;2506:23;2502:32;2499:2;;;2547:1;2544;2537:12;2499:2;2590:1;2615:53;2660:7;2651:6;2640:9;2636:22;2615:53;:::i;:::-;2605:63;;2561:117;2717:2;2743:53;2788:7;2779:6;2768:9;2764:22;2743:53;:::i;:::-;2733:63;;2688:118;2489:324;;;;;:::o;2819:256::-;2875:6;2924:2;2912:9;2903:7;2899:23;2895:32;2892:2;;;2940:1;2937;2930:12;2892:2;2983:1;3008:50;3050:7;3041:6;3030:9;3026:22;3008:50;:::i;:::-;2998:60;;2954:114;2882:193;;;;:::o;3081:278::-;3148:6;3197:2;3185:9;3176:7;3172:23;3168:32;3165:2;;;3213:1;3210;3203:12;3165:2;3256:1;3281:61;3334:7;3325:6;3314:9;3310:22;3281:61;:::i;:::-;3271:71;;3227:125;3155:204;;;;:::o;3365:596::-;3453:6;3461;3469;3518:2;3506:9;3497:7;3493:23;3489:32;3486:2;;;3534:1;3531;3524:12;3486:2;3577:1;3602:64;3658:7;3649:6;3638:9;3634:22;3602:64;:::i;:::-;3592:74;;3548:128;3715:2;3741:64;3797:7;3788:6;3777:9;3773:22;3741:64;:::i;:::-;3731:74;;3686:129;3854:2;3880:64;3936:7;3927:6;3916:9;3912:22;3880:64;:::i;:::-;3870:74;;3825:129;3476:485;;;;;:::o;3967:179::-;4036:10;4057:46;4099:3;4091:6;4057:46;:::i;:::-;4135:4;4130:3;4126:14;4112:28;;4047:99;;;;:::o;4152:108::-;4229:24;4247:5;4229:24;:::i;:::-;4224:3;4217:37;4207:53;;:::o;4266:118::-;4353:24;4371:5;4353:24;:::i;:::-;4348:3;4341:37;4331:53;;:::o;4420:732::-;4539:3;4568:54;4616:5;4568:54;:::i;:::-;4638:86;4717:6;4712:3;4638:86;:::i;:::-;4631:93;;4748:56;4798:5;4748:56;:::i;:::-;4827:7;4858:1;4843:284;4868:6;4865:1;4862:13;4843:284;;;4944:6;4938:13;4971:63;5030:3;5015:13;4971:63;:::i;:::-;4964:70;;5057:60;5110:6;5057:60;:::i;:::-;5047:70;;4903:224;4890:1;4887;4883:9;4878:14;;4843:284;;;4847:14;5143:3;5136:10;;4544:608;;;;;;;:::o;5158:109::-;5239:21;5254:5;5239:21;:::i;:::-;5234:3;5227:34;5217:50;;:::o;5273:147::-;5368:45;5407:5;5368:45;:::i;:::-;5363:3;5356:58;5346:74;;:::o;5426:364::-;5514:3;5542:39;5575:5;5542:39;:::i;:::-;5597:71;5661:6;5656:3;5597:71;:::i;:::-;5590:78;;5677:52;5722:6;5717:3;5710:4;5703:5;5699:16;5677:52;:::i;:::-;5754:29;5776:6;5754:29;:::i;:::-;5749:3;5745:39;5738:46;;5518:272;;;;;:::o;5796:366::-;5938:3;5959:67;6023:2;6018:3;5959:67;:::i;:::-;5952:74;;6035:93;6124:3;6035:93;:::i;:::-;6153:2;6148:3;6144:12;6137:19;;5942:220;;;:::o;6168:366::-;6310:3;6331:67;6395:2;6390:3;6331:67;:::i;:::-;6324:74;;6407:93;6496:3;6407:93;:::i;:::-;6525:2;6520:3;6516:12;6509:19;;6314:220;;;:::o;6540:366::-;6682:3;6703:67;6767:2;6762:3;6703:67;:::i;:::-;6696:74;;6779:93;6868:3;6779:93;:::i;:::-;6897:2;6892:3;6888:12;6881:19;;6686:220;;;:::o;6912:366::-;7054:3;7075:67;7139:2;7134:3;7075:67;:::i;:::-;7068:74;;7151:93;7240:3;7151:93;:::i;:::-;7269:2;7264:3;7260:12;7253:19;;7058:220;;;:::o;7284:366::-;7426:3;7447:67;7511:2;7506:3;7447:67;:::i;:::-;7440:74;;7523:93;7612:3;7523:93;:::i;:::-;7641:2;7636:3;7632:12;7625:19;;7430:220;;;:::o;7656:366::-;7798:3;7819:67;7883:2;7878:3;7819:67;:::i;:::-;7812:74;;7895:93;7984:3;7895:93;:::i;:::-;8013:2;8008:3;8004:12;7997:19;;7802:220;;;:::o;8028:366::-;8170:3;8191:67;8255:2;8250:3;8191:67;:::i;:::-;8184:74;;8267:93;8356:3;8267:93;:::i;:::-;8385:2;8380:3;8376:12;8369:19;;8174:220;;;:::o;8400:366::-;8542:3;8563:67;8627:2;8622:3;8563:67;:::i;:::-;8556:74;;8639:93;8728:3;8639:93;:::i;:::-;8757:2;8752:3;8748:12;8741:19;;8546:220;;;:::o;8772:118::-;8859:24;8877:5;8859:24;:::i;:::-;8854:3;8847:37;8837:53;;:::o;8896:112::-;8979:22;8995:5;8979:22;:::i;:::-;8974:3;8967:35;8957:51;;:::o;9014:222::-;9107:4;9145:2;9134:9;9130:18;9122:26;;9158:71;9226:1;9215:9;9211:17;9202:6;9158:71;:::i;:::-;9112:124;;;;:::o;9242:332::-;9363:4;9401:2;9390:9;9386:18;9378:26;;9414:71;9482:1;9471:9;9467:17;9458:6;9414:71;:::i;:::-;9495:72;9563:2;9552:9;9548:18;9539:6;9495:72;:::i;:::-;9368:206;;;;;:::o;9580:332::-;9701:4;9739:2;9728:9;9724:18;9716:26;;9752:71;9820:1;9809:9;9805:17;9796:6;9752:71;:::i;:::-;9833:72;9901:2;9890:9;9886:18;9877:6;9833:72;:::i;:::-;9706:206;;;;;:::o;9918:807::-;10167:4;10205:3;10194:9;10190:19;10182:27;;10219:71;10287:1;10276:9;10272:17;10263:6;10219:71;:::i;:::-;10300:72;10368:2;10357:9;10353:18;10344:6;10300:72;:::i;:::-;10382:80;10458:2;10447:9;10443:18;10434:6;10382:80;:::i;:::-;10472;10548:2;10537:9;10533:18;10524:6;10472:80;:::i;:::-;10562:73;10630:3;10619:9;10615:19;10606:6;10562:73;:::i;:::-;10645;10713:3;10702:9;10698:19;10689:6;10645:73;:::i;:::-;10172:553;;;;;;;;;:::o;10731:210::-;10818:4;10856:2;10845:9;10841:18;10833:26;;10869:65;10931:1;10920:9;10916:17;10907:6;10869:65;:::i;:::-;10823:118;;;;:::o;10947:313::-;11060:4;11098:2;11087:9;11083:18;11075:26;;11147:9;11141:4;11137:20;11133:1;11122:9;11118:17;11111:47;11175:78;11248:4;11239:6;11175:78;:::i;:::-;11167:86;;11065:195;;;;:::o;11266:419::-;11432:4;11470:2;11459:9;11455:18;11447:26;;11519:9;11513:4;11509:20;11505:1;11494:9;11490:17;11483:47;11547:131;11673:4;11547:131;:::i;:::-;11539:139;;11437:248;;;:::o;11691:419::-;11857:4;11895:2;11884:9;11880:18;11872:26;;11944:9;11938:4;11934:20;11930:1;11919:9;11915:17;11908:47;11972:131;12098:4;11972:131;:::i;:::-;11964:139;;11862:248;;;:::o;12116:419::-;12282:4;12320:2;12309:9;12305:18;12297:26;;12369:9;12363:4;12359:20;12355:1;12344:9;12340:17;12333:47;12397:131;12523:4;12397:131;:::i;:::-;12389:139;;12287:248;;;:::o;12541:419::-;12707:4;12745:2;12734:9;12730:18;12722:26;;12794:9;12788:4;12784:20;12780:1;12769:9;12765:17;12758:47;12822:131;12948:4;12822:131;:::i;:::-;12814:139;;12712:248;;;:::o;12966:419::-;13132:4;13170:2;13159:9;13155:18;13147:26;;13219:9;13213:4;13209:20;13205:1;13194:9;13190:17;13183:47;13247:131;13373:4;13247:131;:::i;:::-;13239:139;;13137:248;;;:::o;13391:419::-;13557:4;13595:2;13584:9;13580:18;13572:26;;13644:9;13638:4;13634:20;13630:1;13619:9;13615:17;13608:47;13672:131;13798:4;13672:131;:::i;:::-;13664:139;;13562:248;;;:::o;13816:419::-;13982:4;14020:2;14009:9;14005:18;13997:26;;14069:9;14063:4;14059:20;14055:1;14044:9;14040:17;14033:47;14097:131;14223:4;14097:131;:::i;:::-;14089:139;;13987:248;;;:::o;14241:419::-;14407:4;14445:2;14434:9;14430:18;14422:26;;14494:9;14488:4;14484:20;14480:1;14469:9;14465:17;14458:47;14522:131;14648:4;14522:131;:::i;:::-;14514:139;;14412:248;;;:::o;14666:222::-;14759:4;14797:2;14786:9;14782:18;14774:26;;14810:71;14878:1;14867:9;14863:17;14854:6;14810:71;:::i;:::-;14764:124;;;;:::o;14894:831::-;15157:4;15195:3;15184:9;15180:19;15172:27;;15209:71;15277:1;15266:9;15262:17;15253:6;15209:71;:::i;:::-;15290:80;15366:2;15355:9;15351:18;15342:6;15290:80;:::i;:::-;15417:9;15411:4;15407:20;15402:2;15391:9;15387:18;15380:48;15445:108;15548:4;15539:6;15445:108;:::i;:::-;15437:116;;15563:72;15631:2;15620:9;15616:18;15607:6;15563:72;:::i;:::-;15645:73;15713:3;15702:9;15698:19;15689:6;15645:73;:::i;:::-;15162:563;;;;;;;;:::o;15731:214::-;15820:4;15858:2;15847:9;15843:18;15835:26;;15871:67;15935:1;15924:9;15920:17;15911:6;15871:67;:::i;:::-;15825:120;;;;:::o;15951:132::-;16018:4;16041:3;16033:11;;16071:4;16066:3;16062:14;16054:22;;16023:60;;;:::o;16089:114::-;16156:6;16190:5;16184:12;16174:22;;16163:40;;;:::o;16209:99::-;16261:6;16295:5;16289:12;16279:22;;16268:40;;;:::o;16314:113::-;16384:4;16416;16411:3;16407:14;16399:22;;16389:38;;;:::o;16433:184::-;16532:11;16566:6;16561:3;16554:19;16606:4;16601:3;16597:14;16582:29;;16544:73;;;;:::o;16623:169::-;16707:11;16741:6;16736:3;16729:19;16781:4;16776:3;16772:14;16757:29;;16719:73;;;;:::o;16798:305::-;16838:3;16857:20;16875:1;16857:20;:::i;:::-;16852:25;;16891:20;16909:1;16891:20;:::i;:::-;16886:25;;17045:1;16977:66;16973:74;16970:1;16967:81;16964:2;;;17051:18;;:::i;:::-;16964:2;17095:1;17092;17088:9;17081:16;;16842:261;;;;:::o;17109:185::-;17149:1;17166:20;17184:1;17166:20;:::i;:::-;17161:25;;17200:20;17218:1;17200:20;:::i;:::-;17195:25;;17239:1;17229:2;;17244:18;;:::i;:::-;17229:2;17286:1;17283;17279:9;17274:14;;17151:143;;;;:::o;17300:348::-;17340:7;17363:20;17381:1;17363:20;:::i;:::-;17358:25;;17397:20;17415:1;17397:20;:::i;:::-;17392:25;;17585:1;17517:66;17513:74;17510:1;17507:81;17502:1;17495:9;17488:17;17484:105;17481:2;;;17592:18;;:::i;:::-;17481:2;17640:1;17637;17633:9;17622:20;;17348:300;;;;:::o;17654:191::-;17694:4;17714:20;17732:1;17714:20;:::i;:::-;17709:25;;17748:20;17766:1;17748:20;:::i;:::-;17743:25;;17787:1;17784;17781:8;17778:2;;;17792:18;;:::i;:::-;17778:2;17837:1;17834;17830:9;17822:17;;17699:146;;;;:::o;17851:96::-;17888:7;17917:24;17935:5;17917:24;:::i;:::-;17906:35;;17896:51;;;:::o;17953:90::-;17987:7;18030:5;18023:13;18016:21;18005:32;;17995:48;;;:::o;18049:126::-;18086:7;18126:42;18119:5;18115:54;18104:65;;18094:81;;;:::o;18181:77::-;18218:7;18247:5;18236:16;;18226:32;;;:::o;18264:86::-;18299:7;18339:4;18332:5;18328:16;18317:27;;18307:43;;;:::o;18356:121::-;18414:9;18447:24;18465:5;18447:24;:::i;:::-;18434:37;;18424:53;;;:::o;18483:307::-;18551:1;18561:113;18575:6;18572:1;18569:13;18561:113;;;18660:1;18655:3;18651:11;18645:18;18641:1;18636:3;18632:11;18625:39;18597:2;18594:1;18590:10;18585:15;;18561:113;;;18692:6;18689:1;18686:13;18683:2;;;18772:1;18763:6;18758:3;18754:16;18747:27;18683:2;18532:258;;;;:::o;18796:180::-;18844:77;18841:1;18834:88;18941:4;18938:1;18931:15;18965:4;18962:1;18955:15;18982:180;19030:77;19027:1;19020:88;19127:4;19124:1;19117:15;19151:4;19148:1;19141:15;19168:102;19209:6;19260:2;19256:7;19251:2;19244:5;19240:14;19236:28;19226:38;;19216:54;;;:::o;19276:229::-;19416:34;19412:1;19404:6;19400:14;19393:58;19485:12;19480:2;19472:6;19468:15;19461:37;19382:123;:::o;19511:221::-;19651:34;19647:1;19639:6;19635:14;19628:58;19720:4;19715:2;19707:6;19703:15;19696:29;19617:115;:::o;19738:177::-;19878:29;19874:1;19866:6;19862:14;19855:53;19844:71;:::o;19921:220::-;20061:34;20057:1;20049:6;20045:14;20038:58;20130:3;20125:2;20117:6;20113:15;20106:28;20027:114;:::o;20147:182::-;20287:34;20283:1;20275:6;20271:14;20264:58;20253:76;:::o;20335:228::-;20475:34;20471:1;20463:6;20459:14;20452:58;20544:11;20539:2;20531:6;20527:15;20520:36;20441:122;:::o;20569:223::-;20709:34;20705:1;20697:6;20693:14;20686:58;20778:6;20773:2;20765:6;20761:15;20754:31;20675:117;:::o;20798:173::-;20938:25;20934:1;20926:6;20922:14;20915:49;20904:67;:::o;20977:122::-;21050:24;21068:5;21050:24;:::i;:::-;21043:5;21040:35;21030:2;;21089:1;21086;21079:12;21030:2;21020:79;:::o;21105:116::-;21175:21;21190:5;21175:21;:::i;:::-;21168:5;21165:32;21155:2;;21211:1;21208;21201:12;21155:2;21145:76;:::o;21227:122::-;21300:24;21318:5;21300:24;:::i;:::-;21293:5;21290:35;21280:2;;21339:1;21336;21329:12;21280:2;21270:79;:::o

Swarm Source

ipfs://5683ee04050c0554be9bf1ea44d0176b51baa5b04bc547662519a97789020860
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.