ETH Price: $2,962.92 (-5.53%)
Gas: 9 Gwei

Token

Apepe (APEPE)
 

Overview

Max Total Supply

210,000,000 APEPE

Holders

93

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
43,174.175045782646355355 APEPE

Value
$0.00
0x2155844cb1fae7e4540cbdd31287e34860b2058b
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:
Apepe

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-04-21
*/

// SPDX-License-Identifier: MIT

/*
Apepe is an memecoin homage of culture's most iconic works: Ape Yacht Club and Pepe !!
FUN, SOLID, ICONIC

Telegram : https://t.me/APEPEofficial
Website : https://apepe.vip/
**/

pragma solidity ^0.8.19;

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;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

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

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

contract Ownable is Context {
    address private _owner;

    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);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);

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

interface IUniswapV2Router02 {
    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);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract Apepe is Context, IERC20, Ownable {
    using SafeMath for uint256;
    IUniswapV2Router02 public uniswapV2Router;

    address public uniswapV2Pair;
    
    mapping (address => uint256) private balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;

    string private constant _name = "Apepe";
    string private constant _symbol = "APEPE";
    uint8 private constant _decimals = 18;
    uint256 private _totalSupply =  210000000  * 10**18;

    uint256 public _maxWalletAmount = 4200000 * 10**18;
    uint256 public _maxTxAmount = 4200000 * 10**18;
    uint256 public swapTokenAtAmount = 2100000 * 10**18;

    address public liquidityReceiver;
    address public RnDWallet;

    bool public limitsIsActive = true;

    struct BuyFees{
        uint256 liquidity;
        uint256 RnD;
    }

    struct SellFees{
        uint256 liquidity;
        uint256 RnD;
    }

    BuyFees public buyFee;
    SellFees public sellFee;

    bool private swapping;
    event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiquidity);

    constructor (address RnDAddress) {
        RnDWallet = RnDAddress;
        liquidityReceiver = msg.sender;
        balances[address(liquidityReceiver)] = _totalSupply;
        
        buyFee.liquidity = 2;
        buyFee.RnD = 13;

        sellFee.liquidity = 2;
        sellFee.RnD = 20;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = _uniswapV2Pair;
        
        _isExcludedFromFee[msg.sender] = true;
        _isExcludedFromFee[RnDWallet] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[address(0x00)] = true;
        _isExcludedFromFee[address(0xdead)] = true;

        
        emit Transfer(address(0), address(msg.sender), _totalSupply);
    }

    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 view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return balances[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()] - amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] - subtractedValue);
        return true;
    }
    
    function excludeFromFees(address account, bool excluded) public onlyOwner {
        _isExcludedFromFee[address(account)] = excluded;
    }

    receive() external payable {}
    
    function manualSwap(uint256 amount) public onlyOwner {
        swapBack(amount);
    }

    function removeLimits() public onlyOwner {
        limitsIsActive = false;
    }

    function updateBuyFee(uint256 setLiquidityFee, uint256 setRnDFee) public onlyOwner {
        require(setLiquidityFee + setRnDFee <= 25, "Total buy fee cannot be set higher than 25%.");
        buyFee.liquidity = setLiquidityFee;
        buyFee.RnD = setRnDFee;

    }

    function updateSellFee(uint256 setLiquidityFee, uint256 setRnDFee) public onlyOwner {
        require(setLiquidityFee + setRnDFee<= 25, "Total sell fee cannot be set higher than 25%.");
        sellFee.liquidity = setLiquidityFee;
        sellFee.RnD = setRnDFee;
    }

    function updateSwapAtAmount(uint256 swapAtAmount) public onlyOwner {
        swapTokenAtAmount = swapAtAmount * 10**18;
    }

    function updateLiquidityWallet(address newLiquidityWallet) public onlyOwner {
        liquidityReceiver = newLiquidityWallet;
    }

    function updateRnDWallet(address newRnDWallet) public onlyOwner {
        RnDWallet = newRnDWallet;
    }

    function takeBuyFees(uint256 amount, address from) private returns (uint256) {
        uint256 liquidityFeeToken = amount * buyFee.liquidity / 100; 
        uint256 RnDFeeTokens = amount * buyFee.RnD /100;

        balances[address(this)] += liquidityFeeToken + RnDFeeTokens;
        emit Transfer (from, address(this), liquidityFeeToken + RnDFeeTokens);
        return (amount -liquidityFeeToken -RnDFeeTokens);
    }

    function takeSellFees(uint256 amount, address from) private returns (uint256) {
        uint256 liquidityFeeToken = amount * buyFee.liquidity / 100; 
        uint256 RnDFeeTokens = amount * buyFee.RnD /100;

        balances[address(this)] += liquidityFeeToken + RnDFeeTokens;
        emit Transfer (from, address(this), liquidityFeeToken + RnDFeeTokens);
        return (amount -liquidityFeeToken -RnDFeeTokens);
    }

    function isExcludedFromFee(address account) public view returns(bool) {
        return _isExcludedFromFee[account];
    }

    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(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        
        balances[from] -= amount;
        uint256 transferAmount = amount;
        
        bool takeFee;

        if(!_isExcludedFromFee[from] && !_isExcludedFromFee[to]){
            takeFee = true;
        }

        if(takeFee){
            if(to != uniswapV2Pair && from == uniswapV2Pair){
                if(limitsIsActive) {
                    require(amount <= _maxTxAmount, "Transfer Amount exceeds the maxTxnsAmount");
                    require(balanceOf(to) + amount <= _maxWalletAmount, "Transfer amount exceeds the maxWalletAmount.");
                }
                transferAmount = takeBuyFees(amount, to);
            }

            if(from != uniswapV2Pair && to == uniswapV2Pair){
                if(limitsIsActive) {
                    require(amount <= _maxTxAmount, "Transfer Amount exceeds the maxTxnsAmount");
                }
                transferAmount = takeSellFees(amount, from);

               if (balanceOf(address(this)) >= swapTokenAtAmount && !swapping) {
                    swapping = true;
                    swapBack(swapTokenAtAmount);
                    swapping = false;
              }
            }

            if(to != uniswapV2Pair && from != uniswapV2Pair){
                if(limitsIsActive) {
                    require(amount <= _maxTxAmount, "Transfer Amount exceeds the maxTxnsAmount");
                    require(balanceOf(to) + amount <= _maxWalletAmount, "Transfer amount exceeds the maxWalletAmount.");
                }
            }
        }
        
        balances[to] += transferAmount;
        emit Transfer(from, to, transferAmount);
    }
   
    function swapBack(uint256 amount) private {
        uint256 contractBalance = amount;
        uint256 liquidityTokens = contractBalance * (buyFee.liquidity + sellFee.liquidity) / (buyFee.liquidity + sellFee.liquidity + buyFee.RnD + sellFee.RnD);
        uint256 RnDTokens = contractBalance * (buyFee.RnD + sellFee.RnD) / (buyFee.liquidity + sellFee.liquidity + buyFee.RnD + sellFee.RnD);
        uint256 totalTokensToSwap = liquidityTokens + RnDTokens;
        
        uint256 tokensForLiquidity = liquidityTokens.div(2);
        uint256 amountToSwapForETH = contractBalance.sub(tokensForLiquidity);
        
        swapTokensForEth(amountToSwapForETH); 
        uint256 ethBalance = address(this).balance;
        uint256 ethForLiquidity = ethBalance.mul(liquidityTokens).div(totalTokensToSwap);

        addLiquidity(tokensForLiquidity, ethForLiquidity);
        payable(RnDWallet).transfer(address(this).balance);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        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 addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        uniswapV2Router.addLiquidityETH {value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            liquidityReceiver,
            block.timestamp
        );
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"RnDAddress","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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","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":[],"name":"RnDWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"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":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"RnD","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limitsIsActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"liquidity","type":"uint256"},{"internalType":"uint256","name":"RnD","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokenAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"view","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"setLiquidityFee","type":"uint256"},{"internalType":"uint256","name":"setRnDFee","type":"uint256"}],"name":"updateBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newLiquidityWallet","type":"address"}],"name":"updateLiquidityWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRnDWallet","type":"address"}],"name":"updateRnDWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"setLiquidityFee","type":"uint256"},{"internalType":"uint256","name":"setRnDFee","type":"uint256"}],"name":"updateSellFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapAtAmount","type":"uint256"}],"name":"updateSwapAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526aadb53acfa41aee120000006006556a03796274caf64c7100000060078190556008556a01bcb13a657b2638800000600955600b805460ff60a01b1916600160a01b1790553480156200005657600080fd5b5060405162001e7938038062001e7983398101604081905262000079916200037a565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b80546001600160a01b03199081166001600160a01b03841617909155600a8054339216821790556006546000918252600360209081526040808420929092556002600c819055600d8055600e556014600f55815163c45a015560e01b81529151737a250d5630b4cf539739df2c5dacb4c659f2488d9392849263c45a0155926004808401938290030181865afa1580156200015b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200018191906200037a565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001cf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f591906200037a565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000243573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200026991906200037a565b600180546001600160a01b038086166001600160a01b03199283161783556002805482861693169290921790915533600081815260056020526040808220805460ff199081168717909155600b549094168252808220805485168617905530825280822080548516861790557f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc805485168617905561dead82527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba805490941690941790925560065492519394509290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef916200036991815260200190565b60405180910390a3505050620003ac565b6000602082840312156200038d57600080fd5b81516001600160a01b0381168114620003a557600080fd5b9392505050565b611abd80620003bc6000396000f3fe6080604052600436106101f25760003560e01c8063715018a61161010d578063a9059cbb116100a0578063c55d22871161006f578063c55d2287146105d5578063dd62ed3e146105f5578063e37ba8f91461063b578063f1e552571461065b578063f2fde38b1461067c57600080fd5b8063a9059cbb14610555578063b70143c914610575578063beffc7d414610595578063c0246668146105b557600080fd5b806384b47971116100dc57806384b47971146104c95780638da5cb5b146104e957806395d89b4114610507578063a457c2d71461053557600080fd5b8063715018a614610469578063751039fc1461047e578063783f30fd146104935780637d1db4a5146104b357600080fd5b8063313ce567116101855780635342acb4116101545780635342acb4146103c2578063610e34b9146103fb5780636c0a24eb1461041d57806370a082311461043357600080fd5b8063313ce5671461034b5780633950935114610367578063470624021461038757806349bd5a5e146103a257600080fd5b806318160ddd116101c157806318160ddd146102c657806323b872dd146102db578063264d26dd146102fb5780632b14ca561461031b57600080fd5b806303e403b0146101fe57806306fdde0314610227578063095ea7b31461025e5780631694505e1461028e57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b5061021460095481565b6040519081526020015b60405180910390f35b34801561023357600080fd5b50604080518082019091526005815264417065706560d81b60208201525b60405161021e91906116e2565b34801561026a57600080fd5b5061027e610279366004611745565b61069c565b604051901515815260200161021e565b34801561029a57600080fd5b506001546102ae906001600160a01b031681565b6040516001600160a01b03909116815260200161021e565b3480156102d257600080fd5b50600654610214565b3480156102e757600080fd5b5061027e6102f6366004611771565b6106b3565b34801561030757600080fd5b50600a546102ae906001600160a01b031681565b34801561032757600080fd5b50600e54600f54610336919082565b6040805192835260208301919091520161021e565b34801561035757600080fd5b506040516012815260200161021e565b34801561037357600080fd5b5061027e610382366004611745565b610705565b34801561039357600080fd5b50600c54600d54610336919082565b3480156103ae57600080fd5b506002546102ae906001600160a01b031681565b3480156103ce57600080fd5b5061027e6103dd3660046117b2565b6001600160a01b031660009081526005602052604090205460ff1690565b34801561040757600080fd5b5061041b6104163660046117cf565b61073c565b005b34801561042957600080fd5b5061021460075481565b34801561043f57600080fd5b5061021461044e3660046117b2565b6001600160a01b031660009081526003602052604090205490565b34801561047557600080fd5b5061041b6107e9565b34801561048a57600080fd5b5061041b61085d565b34801561049f57600080fd5b5061041b6104ae3660046117b2565b610896565b3480156104bf57600080fd5b5061021460085481565b3480156104d557600080fd5b50600b546102ae906001600160a01b031681565b3480156104f557600080fd5b506000546001600160a01b03166102ae565b34801561051357600080fd5b50604080518082019091526005815264415045504560d81b6020820152610251565b34801561054157600080fd5b5061027e610550366004611745565b6108e2565b34801561056157600080fd5b5061027e610570366004611745565b610919565b34801561058157600080fd5b5061041b6105903660046117f1565b610926565b3480156105a157600080fd5b5061041b6105b03660046117cf565b61095c565b3480156105c157600080fd5b5061041b6105d036600461180a565b610a01565b3480156105e157600080fd5b5061041b6105f03660046117f1565b610a56565b34801561060157600080fd5b50610214610610366004611848565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561064757600080fd5b5061041b6106563660046117b2565b610a98565b34801561066757600080fd5b50600b5461027e90600160a01b900460ff1681565b34801561068857600080fd5b5061041b6106973660046117b2565b610ae4565b60006106a9338484610bce565b5060015b92915050565b60006106c0848484610cf2565b6001600160a01b0384166000908152600460209081526040808320338085529252909120546106fb9186916106f690869061188c565b610bce565b5060019392505050565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916106a99185906106f690869061189f565b6000546001600160a01b0316331461076f5760405162461bcd60e51b8152600401610766906118b2565b60405180910390fd5b601961077b828461189f565b11156107de5760405162461bcd60e51b815260206004820152602c60248201527f546f74616c20627579206665652063616e6e6f7420626520736574206869676860448201526b32b9103a3430b710191a929760a11b6064820152608401610766565b600c91909155600d55565b6000546001600160a01b031633146108135760405162461bcd60e51b8152600401610766906118b2565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108875760405162461bcd60e51b8152600401610766906118b2565b600b805460ff60a01b19169055565b6000546001600160a01b031633146108c05760405162461bcd60e51b8152600401610766906118b2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916106a99185906106f690869061188c565b60006106a9338484610cf2565b6000546001600160a01b031633146109505760405162461bcd60e51b8152600401610766906118b2565b61095981611148565b50565b6000546001600160a01b031633146109865760405162461bcd60e51b8152600401610766906118b2565b6019610992828461189f565b11156109f65760405162461bcd60e51b815260206004820152602d60248201527f546f74616c2073656c6c206665652063616e6e6f74206265207365742068696760448201526c3432b9103a3430b710191a929760991b6064820152608401610766565b600e91909155600f55565b6000546001600160a01b03163314610a2b5760405162461bcd60e51b8152600401610766906118b2565b6001600160a01b03919091166000908152600560205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610a805760405162461bcd60e51b8152600401610766906118b2565b610a9281670de0b6b3a76400006118e7565b60095550565b6000546001600160a01b03163314610ac25760405162461bcd60e51b8152600401610766906118b2565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b0e5760405162461bcd60e51b8152600401610766906118b2565b6001600160a01b038116610b735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610766565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610c305760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610766565b6001600160a01b038216610c915760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610766565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d565760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610766565b6001600160a01b038216610db85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610766565b60008111610e1a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610766565b6001600160a01b03831660009081526003602052604081208054839290610e4290849061188c565b90915550506001600160a01b03831660009081526005602052604081205482919060ff16158015610e8c57506001600160a01b03841660009081526005602052604090205460ff16155b15610e95575060015b80156110c5576002546001600160a01b03858116911614801590610ec657506002546001600160a01b038681169116145b15610f5757600b54600160a01b900460ff1615610f4a57600854831115610eff5760405162461bcd60e51b8152600401610766906118fe565b60075483610f22866001600160a01b031660009081526003602052604090205490565b610f2c919061189f565b1115610f4a5760405162461bcd60e51b815260040161076690611947565b610f548385611291565b91505b6002546001600160a01b03868116911614801590610f8257506002546001600160a01b038581169116145b1561101557600b54600160a01b900460ff1615610fbb57600854831115610fbb5760405162461bcd60e51b8152600401610766906118fe565b610fc58386611291565b6009543060009081526003602052604090205491935011158015610fec575060105460ff16155b15611015576010805460ff1916600117905560095461100a90611148565b6010805460ff191690555b6002546001600160a01b0385811691161480159061104157506002546001600160a01b03868116911614155b156110c557600b54600160a01b900460ff16156110c55760085483111561107a5760405162461bcd60e51b8152600401610766906118fe565b6007548361109d866001600160a01b031660009081526003602052604090205490565b6110a7919061189f565b11156110c55760405162461bcd60e51b815260040161076690611947565b6001600160a01b038416600090815260036020526040812080548492906110ed90849061189f565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161113991815260200190565b60405180910390a35050505050565b600f54600d54600e54600c54849360009390929091611167919061189f565b611171919061189f565b61117b919061189f565b600e54600c5461118b919061189f565b61119590846118e7565b61119f9190611993565b600f54600d54600e54600c549394506000936111bb919061189f565b6111c5919061189f565b6111cf919061189f565b600f54600d546111df919061189f565b6111e990856118e7565b6111f39190611993565b90506000611201828461189f565b90506000611210846002611368565b9050600061121e86836113b1565b9050611229816113f3565b4760006112408561123a848a61154d565b90611368565b905061124c84826115cf565b600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611285573d6000803e3d6000fd5b50505050505050505050565b6000806064600c60000154856112a791906118e7565b6112b19190611993565b905060006064600c60010154866112c891906118e7565b6112d29190611993565b90506112de818361189f565b30600090815260036020526040812080549091906112fd90849061189f565b909155503090506001600160a01b0385167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611339848661189f565b60405190815260200160405180910390a380611355838761188c565b61135f919061188c565b95945050505050565b60006113aa83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611683565b9392505050565b60006113aa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116b1565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611428576114286119b5565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611481573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a591906119cb565b816001815181106114b8576114b86119b5565b6001600160a01b0392831660209182029290920101526001546114de9130911684610bce565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906115179085906000908690309042906004016119e8565b600060405180830381600087803b15801561153157600080fd5b505af1158015611545573d6000803e3d6000fd5b505050505050565b60008260000361155f575060006106ad565b600061156b83856118e7565b9050826115788583611993565b146113aa5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610766565b6001546115e79030906001600160a01b031684610bce565b600154600a5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611657573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061167c9190611a59565b5050505050565b600081836116a45760405162461bcd60e51b815260040161076691906116e2565b50600061135f8486611993565b600081848411156116d55760405162461bcd60e51b815260040161076691906116e2565b50600061135f848661188c565b600060208083528351808285015260005b8181101561170f578581018301518582016040015282016116f3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461095957600080fd5b6000806040838503121561175857600080fd5b823561176381611730565b946020939093013593505050565b60008060006060848603121561178657600080fd5b833561179181611730565b925060208401356117a181611730565b929592945050506040919091013590565b6000602082840312156117c457600080fd5b81356113aa81611730565b600080604083850312156117e257600080fd5b50508035926020909101359150565b60006020828403121561180357600080fd5b5035919050565b6000806040838503121561181d57600080fd5b823561182881611730565b91506020830135801515811461183d57600080fd5b809150509250929050565b6000806040838503121561185b57600080fd5b823561186681611730565b9150602083013561183d81611730565b634e487b7160e01b600052601160045260246000fd5b818103818111156106ad576106ad611876565b808201808211156106ad576106ad611876565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b80820281158282048414176106ad576106ad611876565b60208082526029908201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546040820152681e1b9cd05b5bdd5b9d60ba1b606082015260800190565b6020808252602c908201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760408201526b30b63632ba20b6b7bab73a1760a11b606082015260800190565b6000826119b057634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119dd57600080fd5b81516113aa81611730565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a385784516001600160a01b031683529383019391830191600101611a13565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611a6e57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212205cfa502c88b90d69fa709003ff8081c2747837e41eb6b4e5a36a70820cf1f8e764736f6c6343000813003300000000000000000000000033df2d77d09f3e1a8217c2cf1523a1fa0e0b63f5

Deployed Bytecode

0x6080604052600436106101f25760003560e01c8063715018a61161010d578063a9059cbb116100a0578063c55d22871161006f578063c55d2287146105d5578063dd62ed3e146105f5578063e37ba8f91461063b578063f1e552571461065b578063f2fde38b1461067c57600080fd5b8063a9059cbb14610555578063b70143c914610575578063beffc7d414610595578063c0246668146105b557600080fd5b806384b47971116100dc57806384b47971146104c95780638da5cb5b146104e957806395d89b4114610507578063a457c2d71461053557600080fd5b8063715018a614610469578063751039fc1461047e578063783f30fd146104935780637d1db4a5146104b357600080fd5b8063313ce567116101855780635342acb4116101545780635342acb4146103c2578063610e34b9146103fb5780636c0a24eb1461041d57806370a082311461043357600080fd5b8063313ce5671461034b5780633950935114610367578063470624021461038757806349bd5a5e146103a257600080fd5b806318160ddd116101c157806318160ddd146102c657806323b872dd146102db578063264d26dd146102fb5780632b14ca561461031b57600080fd5b806303e403b0146101fe57806306fdde0314610227578063095ea7b31461025e5780631694505e1461028e57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b5061021460095481565b6040519081526020015b60405180910390f35b34801561023357600080fd5b50604080518082019091526005815264417065706560d81b60208201525b60405161021e91906116e2565b34801561026a57600080fd5b5061027e610279366004611745565b61069c565b604051901515815260200161021e565b34801561029a57600080fd5b506001546102ae906001600160a01b031681565b6040516001600160a01b03909116815260200161021e565b3480156102d257600080fd5b50600654610214565b3480156102e757600080fd5b5061027e6102f6366004611771565b6106b3565b34801561030757600080fd5b50600a546102ae906001600160a01b031681565b34801561032757600080fd5b50600e54600f54610336919082565b6040805192835260208301919091520161021e565b34801561035757600080fd5b506040516012815260200161021e565b34801561037357600080fd5b5061027e610382366004611745565b610705565b34801561039357600080fd5b50600c54600d54610336919082565b3480156103ae57600080fd5b506002546102ae906001600160a01b031681565b3480156103ce57600080fd5b5061027e6103dd3660046117b2565b6001600160a01b031660009081526005602052604090205460ff1690565b34801561040757600080fd5b5061041b6104163660046117cf565b61073c565b005b34801561042957600080fd5b5061021460075481565b34801561043f57600080fd5b5061021461044e3660046117b2565b6001600160a01b031660009081526003602052604090205490565b34801561047557600080fd5b5061041b6107e9565b34801561048a57600080fd5b5061041b61085d565b34801561049f57600080fd5b5061041b6104ae3660046117b2565b610896565b3480156104bf57600080fd5b5061021460085481565b3480156104d557600080fd5b50600b546102ae906001600160a01b031681565b3480156104f557600080fd5b506000546001600160a01b03166102ae565b34801561051357600080fd5b50604080518082019091526005815264415045504560d81b6020820152610251565b34801561054157600080fd5b5061027e610550366004611745565b6108e2565b34801561056157600080fd5b5061027e610570366004611745565b610919565b34801561058157600080fd5b5061041b6105903660046117f1565b610926565b3480156105a157600080fd5b5061041b6105b03660046117cf565b61095c565b3480156105c157600080fd5b5061041b6105d036600461180a565b610a01565b3480156105e157600080fd5b5061041b6105f03660046117f1565b610a56565b34801561060157600080fd5b50610214610610366004611848565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561064757600080fd5b5061041b6106563660046117b2565b610a98565b34801561066757600080fd5b50600b5461027e90600160a01b900460ff1681565b34801561068857600080fd5b5061041b6106973660046117b2565b610ae4565b60006106a9338484610bce565b5060015b92915050565b60006106c0848484610cf2565b6001600160a01b0384166000908152600460209081526040808320338085529252909120546106fb9186916106f690869061188c565b610bce565b5060019392505050565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916106a99185906106f690869061189f565b6000546001600160a01b0316331461076f5760405162461bcd60e51b8152600401610766906118b2565b60405180910390fd5b601961077b828461189f565b11156107de5760405162461bcd60e51b815260206004820152602c60248201527f546f74616c20627579206665652063616e6e6f7420626520736574206869676860448201526b32b9103a3430b710191a929760a11b6064820152608401610766565b600c91909155600d55565b6000546001600160a01b031633146108135760405162461bcd60e51b8152600401610766906118b2565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108875760405162461bcd60e51b8152600401610766906118b2565b600b805460ff60a01b19169055565b6000546001600160a01b031633146108c05760405162461bcd60e51b8152600401610766906118b2565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b3360008181526004602090815260408083206001600160a01b038716845290915281205490916106a99185906106f690869061188c565b60006106a9338484610cf2565b6000546001600160a01b031633146109505760405162461bcd60e51b8152600401610766906118b2565b61095981611148565b50565b6000546001600160a01b031633146109865760405162461bcd60e51b8152600401610766906118b2565b6019610992828461189f565b11156109f65760405162461bcd60e51b815260206004820152602d60248201527f546f74616c2073656c6c206665652063616e6e6f74206265207365742068696760448201526c3432b9103a3430b710191a929760991b6064820152608401610766565b600e91909155600f55565b6000546001600160a01b03163314610a2b5760405162461bcd60e51b8152600401610766906118b2565b6001600160a01b03919091166000908152600560205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610a805760405162461bcd60e51b8152600401610766906118b2565b610a9281670de0b6b3a76400006118e7565b60095550565b6000546001600160a01b03163314610ac25760405162461bcd60e51b8152600401610766906118b2565b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b0e5760405162461bcd60e51b8152600401610766906118b2565b6001600160a01b038116610b735760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610766565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610c305760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610766565b6001600160a01b038216610c915760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610766565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d565760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610766565b6001600160a01b038216610db85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610766565b60008111610e1a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610766565b6001600160a01b03831660009081526003602052604081208054839290610e4290849061188c565b90915550506001600160a01b03831660009081526005602052604081205482919060ff16158015610e8c57506001600160a01b03841660009081526005602052604090205460ff16155b15610e95575060015b80156110c5576002546001600160a01b03858116911614801590610ec657506002546001600160a01b038681169116145b15610f5757600b54600160a01b900460ff1615610f4a57600854831115610eff5760405162461bcd60e51b8152600401610766906118fe565b60075483610f22866001600160a01b031660009081526003602052604090205490565b610f2c919061189f565b1115610f4a5760405162461bcd60e51b815260040161076690611947565b610f548385611291565b91505b6002546001600160a01b03868116911614801590610f8257506002546001600160a01b038581169116145b1561101557600b54600160a01b900460ff1615610fbb57600854831115610fbb5760405162461bcd60e51b8152600401610766906118fe565b610fc58386611291565b6009543060009081526003602052604090205491935011158015610fec575060105460ff16155b15611015576010805460ff1916600117905560095461100a90611148565b6010805460ff191690555b6002546001600160a01b0385811691161480159061104157506002546001600160a01b03868116911614155b156110c557600b54600160a01b900460ff16156110c55760085483111561107a5760405162461bcd60e51b8152600401610766906118fe565b6007548361109d866001600160a01b031660009081526003602052604090205490565b6110a7919061189f565b11156110c55760405162461bcd60e51b815260040161076690611947565b6001600160a01b038416600090815260036020526040812080548492906110ed90849061189f565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161113991815260200190565b60405180910390a35050505050565b600f54600d54600e54600c54849360009390929091611167919061189f565b611171919061189f565b61117b919061189f565b600e54600c5461118b919061189f565b61119590846118e7565b61119f9190611993565b600f54600d54600e54600c549394506000936111bb919061189f565b6111c5919061189f565b6111cf919061189f565b600f54600d546111df919061189f565b6111e990856118e7565b6111f39190611993565b90506000611201828461189f565b90506000611210846002611368565b9050600061121e86836113b1565b9050611229816113f3565b4760006112408561123a848a61154d565b90611368565b905061124c84826115cf565b600b546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015611285573d6000803e3d6000fd5b50505050505050505050565b6000806064600c60000154856112a791906118e7565b6112b19190611993565b905060006064600c60010154866112c891906118e7565b6112d29190611993565b90506112de818361189f565b30600090815260036020526040812080549091906112fd90849061189f565b909155503090506001600160a01b0385167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611339848661189f565b60405190815260200160405180910390a380611355838761188c565b61135f919061188c565b95945050505050565b60006113aa83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611683565b9392505050565b60006113aa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116b1565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611428576114286119b5565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611481573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a591906119cb565b816001815181106114b8576114b86119b5565b6001600160a01b0392831660209182029290920101526001546114de9130911684610bce565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906115179085906000908690309042906004016119e8565b600060405180830381600087803b15801561153157600080fd5b505af1158015611545573d6000803e3d6000fd5b505050505050565b60008260000361155f575060006106ad565b600061156b83856118e7565b9050826115788583611993565b146113aa5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610766565b6001546115e79030906001600160a01b031684610bce565b600154600a5460405163f305d71960e01b81523060048201526024810185905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af1158015611657573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061167c9190611a59565b5050505050565b600081836116a45760405162461bcd60e51b815260040161076691906116e2565b50600061135f8486611993565b600081848411156116d55760405162461bcd60e51b815260040161076691906116e2565b50600061135f848661188c565b600060208083528351808285015260005b8181101561170f578581018301518582016040015282016116f3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461095957600080fd5b6000806040838503121561175857600080fd5b823561176381611730565b946020939093013593505050565b60008060006060848603121561178657600080fd5b833561179181611730565b925060208401356117a181611730565b929592945050506040919091013590565b6000602082840312156117c457600080fd5b81356113aa81611730565b600080604083850312156117e257600080fd5b50508035926020909101359150565b60006020828403121561180357600080fd5b5035919050565b6000806040838503121561181d57600080fd5b823561182881611730565b91506020830135801515811461183d57600080fd5b809150509250929050565b6000806040838503121561185b57600080fd5b823561186681611730565b9150602083013561183d81611730565b634e487b7160e01b600052601160045260246000fd5b818103818111156106ad576106ad611876565b808201808211156106ad576106ad611876565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b80820281158282048414176106ad576106ad611876565b60208082526029908201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546040820152681e1b9cd05b5bdd5b9d60ba1b606082015260800190565b6020808252602c908201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760408201526b30b63632ba20b6b7bab73a1760a11b606082015260800190565b6000826119b057634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119dd57600080fd5b81516113aa81611730565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611a385784516001600160a01b031683529383019391830191600101611a13565b50506001600160a01b03969096166060850152505050608001529392505050565b600080600060608486031215611a6e57600080fd5b835192506020840151915060408401519050925092509256fea26469706673582212205cfa502c88b90d69fa709003ff8081c2747837e41eb6b4e5a36a70820cf1f8e764736f6c63430008130033

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

00000000000000000000000033df2d77d09f3e1a8217c2cf1523a1fa0e0b63f5

-----Decoded View---------------
Arg [0] : RnDAddress (address): 0x33DF2D77d09f3E1a8217C2cf1523A1fA0e0b63f5

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000033df2d77d09f3e1a8217c2cf1523a1fa0e0b63f5


Deployed Bytecode Sourcemap

4562:10417:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5233:51;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;5233:51:0;;;;;;;;6747:83;;;;;;;;;;-1:-1:-1;6817:5:0;;;;;;;;;;;;-1:-1:-1;;;6817:5:0;;;;6747:83;;;;;;;:::i;7584:161::-;;;;;;;;;;-1:-1:-1;7584:161:0;;;;;:::i;:::-;;:::i;:::-;;;1370:14:1;;1363:22;1345:41;;1333:2;1318:18;7584:161:0;1205:187:1;4645:41:0;;;;;;;;;;-1:-1:-1;4645:41:0;;;;-1:-1:-1;;;;;4645:41:0;;;;;;-1:-1:-1;;;;;1587:32:1;;;1569:51;;1557:2;1542:18;4645:41:0;1397:229:1;7024:100:0;;;;;;;;;;-1:-1:-1;7104:12:0;;7024:100;;7753:266;;;;;;;;;;-1:-1:-1;7753:266:0;;;;;:::i;:::-;;:::i;5293:32::-;;;;;;;;;;-1:-1:-1;5293:32:0;;;;-1:-1:-1;;;;;5293:32:0;;;5596:23;;;;;;;;;;-1:-1:-1;5596:23:0;;;;;;;;;;;;;2474:25:1;;;2530:2;2515:18;;2508:34;;;;2447:18;5596:23:0;2300:248:1;6933:83:0;;;;;;;;;;-1:-1:-1;6933:83:0;;5054:2;2695:36:1;;2683:2;2668:18;6933:83:0;2553:184:1;8027:215:0;;;;;;;;;;-1:-1:-1;8027:215:0;;;;;:::i;:::-;;:::i;5568:21::-;;;;;;;;;;-1:-1:-1;5568:21:0;;;;;;;;;4695:28;;;;;;;;;;-1:-1:-1;4695:28:0;;;;-1:-1:-1;;;;;4695:28:0;;;10681:123;;;;;;;;;;-1:-1:-1;10681:123:0;;;;;:::i;:::-;-1:-1:-1;;;;;10769:27:0;10745:4;10769:27;;;:18;:27;;;;;;;;;10681:123;8862:272;;;;;;;;;;-1:-1:-1;8862:272:0;;;;;:::i;:::-;;:::i;:::-;;5123:50;;;;;;;;;;;;;;;;7132:118;;;;;;;;;;-1:-1:-1;7132:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;7225:17:0;7198:7;7225:17;;;:8;:17;;;;;;;7132:118;3295:148;;;;;;;;;;;;;:::i;8772:82::-;;;;;;;;;;;;;:::i;9699:107::-;;;;;;;;;;-1:-1:-1;9699:107:0;;;;;:::i;:::-;;:::i;5180:46::-;;;;;;;;;;;;;;;;5332:24;;;;;;;;;;-1:-1:-1;5332:24:0;;;;-1:-1:-1;;;;;5332:24:0;;;3081:79;;;;;;;;;;-1:-1:-1;3119:7:0;3146:6;-1:-1:-1;;;;;3146:6:0;3081:79;;6838:87;;;;;;;;;;-1:-1:-1;6910:7:0;;;;;;;;;;;;-1:-1:-1;;;6910:7:0;;;;6838:87;;8250:225;;;;;;;;;;-1:-1:-1;8250:225:0;;;;;:::i;:::-;;:::i;7258:167::-;;;;;;;;;;-1:-1:-1;7258:167:0;;;;;:::i;:::-;;:::i;8676:88::-;;;;;;;;;;-1:-1:-1;8676:88:0;;;;;:::i;:::-;;:::i;9142:273::-;;;;;;;;;;-1:-1:-1;9142:273:0;;;;;:::i;:::-;;:::i;8487:140::-;;;;;;;;;;-1:-1:-1;8487:140:0;;;;;:::i;:::-;;:::i;9423:127::-;;;;;;;;;;-1:-1:-1;9423:127:0;;;;;:::i;:::-;;:::i;7433:143::-;;;;;;;;;;-1:-1:-1;7433:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7541:18:0;;;7514:7;7541:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7433:143;9558:133;;;;;;;;;;-1:-1:-1;9558:133:0;;;;;:::i;:::-;;:::i;5365:33::-;;;;;;;;;;-1:-1:-1;5365:33:0;;;;-1:-1:-1;;;5365:33:0;;;;;;3451:244;;;;;;;;;;-1:-1:-1;3451:244:0;;;;;:::i;:::-;;:::i;7584:161::-;7659:4;7676:39;2613:10;7699:7;7708:6;7676:8;:39::i;:::-;-1:-1:-1;7733:4:0;7584:161;;;;;:::o;7753:266::-;7851:4;7868:36;7878:6;7886:9;7897:6;7868:9;:36::i;:::-;-1:-1:-1;;;;;7946:19:0;;;;;;:11;:19;;;;;;;;2613:10;7946:33;;;;;;;;;7915:74;;7924:6;;7946:42;;7982:6;;7946:42;:::i;:::-;7915:8;:74::i;:::-;-1:-1:-1;8007:4:0;7753:266;;;;;:::o;8027:215::-;2613:10;8115:4;8164:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;8164:34:0;;;;;;;;;;8115:4;;8132:80;;8155:7;;8164:47;;8201:10;;8164:47;:::i;8862:272::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;;;;;;;;;8995:2:::1;8964:27;8982:9:::0;8964:15;:27:::1;:::i;:::-;:33;;8956:90;;;::::0;-1:-1:-1;;;8956:90:0;;5204:2:1;8956:90:0::1;::::0;::::1;5186:21:1::0;5243:2;5223:18;;;5216:30;5282:34;5262:18;;;5255:62;-1:-1:-1;;;5333:18:1;;;5326:42;5385:19;;8956:90:0::1;5002:408:1::0;8956:90:0::1;9057:6;:34:::0;;;;9102:10;:22;8862:272::o;3295:148::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;3402:1:::1;3386:6:::0;;3365:40:::1;::::0;-1:-1:-1;;;;;3386:6:0;;::::1;::::0;3365:40:::1;::::0;3402:1;;3365:40:::1;3433:1;3416:19:::0;;-1:-1:-1;;;;;;3416:19:0::1;::::0;;3295:148::o;8772:82::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;8824:14:::1;:22:::0;;-1:-1:-1;;;;8824:22:0::1;::::0;;8772:82::o;9699:107::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;9774:9:::1;:24:::0;;-1:-1:-1;;;;;;9774:24:0::1;-1:-1:-1::0;;;;;9774:24:0;;;::::1;::::0;;;::::1;::::0;;9699:107::o;8250:225::-;2613:10;8343:4;8392:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;8392:34:0;;;;;;;;;;8343:4;;8360:85;;8383:7;;8392:52;;8429:15;;8392:52;:::i;7258:167::-;7336:4;7353:42;2613:10;7377:9;7388:6;7353:9;:42::i;8676:88::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;8740:16:::1;8749:6;8740:8;:16::i;:::-;8676:88:::0;:::o;9142:273::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;9275:2:::1;9245:27;9263:9:::0;9245:15;:27:::1;:::i;:::-;:32;;9237:90;;;::::0;-1:-1:-1;;;9237:90:0;;5617:2:1;9237:90:0::1;::::0;::::1;5599:21:1::0;5656:2;5636:18;;;5629:30;5695:34;5675:18;;;5668:62;-1:-1:-1;;;5746:18:1;;;5739:43;5799:19;;9237:90:0::1;5415:409:1::0;9237:90:0::1;9338:7;:35:::0;;;;9384:11;:23;9142:273::o;8487:140::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8572:36:0;;;::::1;;::::0;;;:18:::1;:36;::::0;;;;:47;;-1:-1:-1;;8572:47:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8487:140::o;9423:127::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;9521:21:::1;:12:::0;9536:6:::1;9521:21;:::i;:::-;9501:17;:41:::0;-1:-1:-1;9423:127:0:o;9558:133::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;9645:17:::1;:38:::0;;-1:-1:-1;;;;;;9645:38:0::1;-1:-1:-1::0;;;;;9645:38:0;;;::::1;::::0;;;::::1;::::0;;9558:133::o;3451:244::-;3208:6;;-1:-1:-1;;;;;3208:6:0;2613:10;3208:22;3200:67;;;;-1:-1:-1;;;3200:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3540:22:0;::::1;3532:73;;;::::0;-1:-1:-1;;;3532:73:0;;6204:2:1;3532:73:0::1;::::0;::::1;6186:21:1::0;6243:2;6223:18;;;6216:30;6282:34;6262:18;;;6255:62;-1:-1:-1;;;6333:18:1;;;6326:36;6379:19;;3532:73:0::1;6002:402:1::0;3532:73:0::1;3642:6;::::0;;3621:38:::1;::::0;-1:-1:-1;;;;;3621:38:0;;::::1;::::0;3642:6;::::1;::::0;3621:38:::1;::::0;::::1;3670:6;:17:::0;;-1:-1:-1;;;;;;3670:17:0::1;-1:-1:-1::0;;;;;3670:17:0;;;::::1;::::0;;;::::1;::::0;;3451:244::o;10812:337::-;-1:-1:-1;;;;;10905:19:0;;10897:68;;;;-1:-1:-1;;;10897:68:0;;6611:2:1;10897:68:0;;;6593:21:1;6650:2;6630:18;;;6623:30;6689:34;6669:18;;;6662:62;-1:-1:-1;;;6740:18:1;;;6733:34;6784:19;;10897:68:0;6409:400:1;10897:68:0;-1:-1:-1;;;;;10984:21:0;;10976:68;;;;-1:-1:-1;;;10976:68:0;;7016:2:1;10976:68:0;;;6998:21:1;7055:2;7035:18;;;7028:30;7094:34;7074:18;;;7067:62;-1:-1:-1;;;7145:18:1;;;7138:32;7187:19;;10976:68:0;6814:398:1;10976:68:0;-1:-1:-1;;;;;11057:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11109:32;;160:25:1;;;11109:32:0;;133:18:1;11109:32:0;;;;;;;10812:337;;;:::o;11157:2004::-;-1:-1:-1;;;;;11279:18:0;;11271:68;;;;-1:-1:-1;;;11271:68:0;;7419:2:1;11271:68:0;;;7401:21:1;7458:2;7438:18;;;7431:30;7497:34;7477:18;;;7470:62;-1:-1:-1;;;7548:18:1;;;7541:35;7593:19;;11271:68:0;7217:401:1;11271:68:0;-1:-1:-1;;;;;11358:16:0;;11350:64;;;;-1:-1:-1;;;11350:64:0;;7825:2:1;11350:64:0;;;7807:21:1;7864:2;7844:18;;;7837:30;7903:34;7883:18;;;7876:62;-1:-1:-1;;;7954:18:1;;;7947:33;7997:19;;11350:64:0;7623:399:1;11350:64:0;11442:1;11433:6;:10;11425:64;;;;-1:-1:-1;;;11425:64:0;;8229:2:1;11425:64:0;;;8211:21:1;8268:2;8248:18;;;8241:30;8307:34;8287:18;;;8280:62;-1:-1:-1;;;8358:18:1;;;8351:39;8407:19;;11425:64:0;8027:405:1;11425:64:0;-1:-1:-1;;;;;11510:14:0;;;;;;:8;:14;;;;;:24;;11528:6;;11510:14;:24;;11528:6;;11510:24;:::i;:::-;;;;-1:-1:-1;;;;;;;11626:24:0;;11545:22;11626:24;;;:18;:24;;;;;;11570:6;;11545:22;11626:24;;11625:25;:52;;;;-1:-1:-1;;;;;;11655:22:0;;;;;;:18;:22;;;;;;;;11654:23;11625:52;11622:97;;;-1:-1:-1;11703:4:0;11622:97;11734:7;11731:1322;;;11766:13;;-1:-1:-1;;;;;11760:19:0;;;11766:13;;11760:19;;;;:44;;-1:-1:-1;11791:13:0;;-1:-1:-1;;;;;11783:21:0;;;11791:13;;11783:21;11760:44;11757:401;;;11827:14;;-1:-1:-1;;;11827:14:0;;;;11824:260;;;11884:12;;11874:6;:22;;11866:76;;;;-1:-1:-1;;;11866:76:0;;;;;;;:::i;:::-;11999:16;;11989:6;11973:13;11983:2;-1:-1:-1;;;;;7225:17:0;7198:7;7225:17;;;:8;:17;;;;;;;7132:118;11973:13;:22;;;;:::i;:::-;:42;;11965:99;;;;-1:-1:-1;;;11965:99:0;;;;;;;:::i;:::-;12119:23;12131:6;12139:2;12119:11;:23::i;:::-;12102:40;;11757:401;12185:13;;-1:-1:-1;;;;;12177:21:0;;;12185:13;;12177:21;;;;:44;;-1:-1:-1;12208:13:0;;-1:-1:-1;;;;;12202:19:0;;;12208:13;;12202:19;12177:44;12174:510;;;12244:14;;-1:-1:-1;;;12244:14:0;;;;12241:138;;;12301:12;;12291:6;:22;;12283:76;;;;-1:-1:-1;;;12283:76:0;;;;;;;:::i;:::-;12414:26;12427:6;12435:4;12414:12;:26::i;:::-;12492:17;;12482:4;7198:7;7225:17;;;:8;:17;;;;;;12397:43;;-1:-1:-1;;12464:45:0;:58;;;;-1:-1:-1;12514:8:0;;;;12513:9;12464:58;12460:209;;;12547:8;:15;;-1:-1:-1;;12547:15:0;12558:4;12547:15;;;12594:17;;12585:27;;:8;:27::i;:::-;12635:8;:16;;-1:-1:-1;;12635:16:0;;;12460:209;12709:13;;-1:-1:-1;;;;;12703:19:0;;;12709:13;;12703:19;;;;:44;;-1:-1:-1;12734:13:0;;-1:-1:-1;;;;;12726:21:0;;;12734:13;;12726:21;;12703:44;12700:342;;;12770:14;;-1:-1:-1;;;12770:14:0;;;;12767:260;;;12827:12;;12817:6;:22;;12809:76;;;;-1:-1:-1;;;12809:76:0;;;;;;;:::i;:::-;12942:16;;12932:6;12916:13;12926:2;-1:-1:-1;;;;;7225:17:0;7198:7;7225:17;;;:8;:17;;;;;;;7132:118;12916:13;:22;;;;:::i;:::-;:42;;12908:99;;;;-1:-1:-1;;;12908:99:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13073:12:0;;;;;;:8;:12;;;;;:30;;13089:14;;13073:12;:30;;13089:14;;13073:30;:::i;:::-;;;;;;;;13134:2;-1:-1:-1;;;;;13119:34:0;13128:4;-1:-1:-1;;;;;13119:34:0;;13138:14;13119:34;;;;160:25:1;;148:2;133:18;;14:177;13119:34:0;;;;;;;;11260:1901;;11157:2004;;;:::o;13172:939::-;13406:11;;13393:10;;13406:7;13373:17;13393:6;13354:16;13251:6;;13225:23;;13406:11;;13393:10;;13354:36;;13373:17;13354:36;:::i;:::-;:49;;;;:::i;:::-;:63;;;;:::i;:::-;13332:7;:17;13313:6;:16;:36;;13332:17;13313:36;:::i;:::-;13294:56;;:15;:56;:::i;:::-;:124;;;;:::i;:::-;13549:11;;13536:10;;13549:7;13516:17;13536:6;13497:16;13268:150;;-1:-1:-1;13429:17:0;;13497:36;;13516:17;13497:36;:::i;:::-;:49;;;;:::i;:::-;:63;;;;:::i;:::-;13481:11;;13468:10;;:24;;13481:11;13468:24;:::i;:::-;13449:44;;:15;:44;:::i;:::-;:112;;;;:::i;:::-;13429:132;-1:-1:-1;13572:25:0;13600:27;13429:132;13600:15;:27;:::i;:::-;13572:55;-1:-1:-1;13648:26:0;13677:22;:15;13697:1;13677:19;:22::i;:::-;13648:51;-1:-1:-1;13710:26:0;13739:39;:15;13648:51;13739:19;:39::i;:::-;13710:68;;13799:36;13816:18;13799:16;:36::i;:::-;13868:21;13847:18;13926:54;13962:17;13926:31;13868:21;13941:15;13926:14;:31::i;:::-;:35;;:54::i;:::-;13900:80;;13993:49;14006:18;14026:15;13993:12;:49::i;:::-;14061:9;;14053:50;;-1:-1:-1;;;;;14061:9:0;;;;14081:21;14053:50;;;;;14061:9;14053:50;14061:9;14053:50;14081:21;14061:9;14053:50;;;;;;;;;;;;;;;;;;;;;13214:897;;;;;;;;13172:939;:::o;9814:425::-;9882:7;9902:25;9958:3;9939:6;:16;;;9930:6;:25;;;;:::i;:::-;:31;;;;:::i;:::-;9902:59;;9973:20;10017:3;10005:6;:10;;;9996:6;:19;;;;:::i;:::-;:24;;;;:::i;:::-;9973:47;-1:-1:-1;10060:32:0;9973:47;10060:17;:32;:::i;:::-;10050:4;10033:23;;;;:8;:23;;;;;:59;;:23;;;:59;;;;;:::i;:::-;;;;-1:-1:-1;10132:4:0;;-1:-1:-1;;;;;;10108:64:0;;;10139:32;10159:12;10139:17;:32;:::i;:::-;10108:64;;160:25:1;;;148:2;133:18;10108:64:0;;;;;;;10218:12;10191:25;10199:17;10191:6;:25;:::i;:::-;:39;;;;:::i;:::-;10183:48;9814:425;-1:-1:-1;;;;;9814:425:0:o;1747:132::-;1805:7;1832:39;1836:1;1839;1832:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1825:46;1747:132;-1:-1:-1;;;1747:132:0:o;1145:136::-;1203:7;1230:43;1234:1;1237;1230:43;;;;;;;;;;;;;;;;;:3;:43::i;14119:475::-;14209:16;;;14223:1;14209:16;;;;;;;;14185:21;;14209:16;;;;;;;;;;-1:-1:-1;14209:16:0;14185:40;;14254:4;14236;14241:1;14236:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14236:23:0;;;:7;;;;;;;;;;:23;;;;14280:15;;:22;;;-1:-1:-1;;;14280:22:0;;;;:15;;;;;:20;;:22;;;;;14236:7;;14280:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14270:4;14275:1;14270:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14270:32:0;;;:7;;;;;;;;;:32;14347:15;;14315:62;;14332:4;;14347:15;14365:11;14315:8;:62::i;:::-;14390:15;;:196;;-1:-1:-1;;;14390:196:0;;-1:-1:-1;;;;;14390:15:0;;;;:66;;:196;;14471:11;;14390:15;;14513:4;;14540;;14560:15;;14390:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14174:420;14119:475;:::o;1489:250::-;1547:7;1571:1;1576;1571:6;1567:47;;-1:-1:-1;1601:1:0;1594:8;;1567:47;1626:9;1638:5;1642:1;1638;:5;:::i;:::-;1626:17;-1:-1:-1;1671:1:0;1662:5;1666:1;1626:17;1662:5;:::i;:::-;:10;1654:56;;;;-1:-1:-1;;;1654:56:0;;11189:2:1;1654:56:0;;;11171:21:1;11228:2;11208:18;;;11201:30;11267:34;11247:18;;;11240:62;-1:-1:-1;;;11318:18:1;;;11311:31;11359:19;;1654:56:0;10987:397:1;14602:374:0;14715:15;;14683:62;;14700:4;;-1:-1:-1;;;;;14715:15:0;14733:11;14683:8;:62::i;:::-;14758:15;;14910:17;;14758:210;;-1:-1:-1;;;14758:210:0;;14832:4;14758:210;;;11730:34:1;11780:18;;;11773:34;;;14758:15:0;11823:18:1;;;11816:34;;;11866:18;;;11859:34;-1:-1:-1;;;;;14910:17:0;;;11909:19:1;;;11902:44;14942:15:0;11962:19:1;;;11955:35;14758:15:0;;;:31;;14798:9;;11664:19:1;;14758:210:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;14602:374;;:::o;1887:278::-;1973:7;2008:12;2001:5;1993:28;;;;-1:-1:-1;;;1993:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2032:9:0;2044:5;2048:1;2044;:5;:::i;1289:192::-;1375:7;1411:12;1403:6;;;;1395:29;;;;-1:-1:-1;;;1395:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1435:9:0;1447:5;1451:1;1447;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;885:315;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2742:247::-;2801:6;2854:2;2842:9;2833:7;2829:23;2825:32;2822:52;;;2870:1;2867;2860:12;2822:52;2909:9;2896:23;2928:31;2953:5;2928:31;:::i;2994:248::-;3062:6;3070;3123:2;3111:9;3102:7;3098:23;3094:32;3091:52;;;3139:1;3136;3129:12;3091:52;-1:-1:-1;;3162:23:1;;;3232:2;3217:18;;;3204:32;;-1:-1:-1;2994:248:1:o;3247:180::-;3306:6;3359:2;3347:9;3338:7;3334:23;3330:32;3327:52;;;3375:1;3372;3365:12;3327:52;-1:-1:-1;3398:23:1;;3247:180;-1:-1:-1;3247:180:1:o;3432:416::-;3497:6;3505;3558:2;3546:9;3537:7;3533:23;3529:32;3526:52;;;3574:1;3571;3564:12;3526:52;3613:9;3600:23;3632:31;3657:5;3632:31;:::i;:::-;3682:5;-1:-1:-1;3739:2:1;3724:18;;3711:32;3781:15;;3774:23;3762:36;;3752:64;;3812:1;3809;3802:12;3752:64;3835:7;3825:17;;;3432:416;;;;;:::o;3853:388::-;3921:6;3929;3982:2;3970:9;3961:7;3957:23;3953:32;3950:52;;;3998:1;3995;3988:12;3950:52;4037:9;4024:23;4056:31;4081:5;4056:31;:::i;:::-;4106:5;-1:-1:-1;4163:2:1;4148:18;;4135:32;4176:33;4135:32;4176:33;:::i;4246:127::-;4307:10;4302:3;4298:20;4295:1;4288:31;4338:4;4335:1;4328:15;4362:4;4359:1;4352:15;4378:128;4445:9;;;4466:11;;;4463:37;;;4480:18;;:::i;4511:125::-;4576:9;;;4597:10;;;4594:36;;;4610:18;;:::i;4641:356::-;4843:2;4825:21;;;4862:18;;;4855:30;4921:34;4916:2;4901:18;;4894:62;4988:2;4973:18;;4641:356::o;5829:168::-;5902:9;;;5933;;5950:15;;;5944:22;;5930:37;5920:71;;5971:18;;:::i;8437:405::-;8639:2;8621:21;;;8678:2;8658:18;;;8651:30;8717:34;8712:2;8697:18;;8690:62;-1:-1:-1;;;8783:2:1;8768:18;;8761:39;8832:3;8817:19;;8437:405::o;8847:408::-;9049:2;9031:21;;;9088:2;9068:18;;;9061:30;9127:34;9122:2;9107:18;;9100:62;-1:-1:-1;;;9193:2:1;9178:18;;9171:42;9245:3;9230:19;;8847:408::o;9260:217::-;9300:1;9326;9316:132;;9370:10;9365:3;9361:20;9358:1;9351:31;9405:4;9402:1;9395:15;9433:4;9430:1;9423:15;9316:132;-1:-1:-1;9462:9:1;;9260:217::o;9614:127::-;9675:10;9670:3;9666:20;9663:1;9656:31;9706:4;9703:1;9696:15;9730:4;9727:1;9720:15;9746:251;9816:6;9869:2;9857:9;9848:7;9844:23;9840:32;9837:52;;;9885:1;9882;9875:12;9837:52;9917:9;9911:16;9936:31;9961:5;9936:31;:::i;10002:980::-;10264:4;10312:3;10301:9;10297:19;10343:6;10332:9;10325:25;10369:2;10407:6;10402:2;10391:9;10387:18;10380:34;10450:3;10445:2;10434:9;10430:18;10423:31;10474:6;10509;10503:13;10540:6;10532;10525:22;10578:3;10567:9;10563:19;10556:26;;10617:2;10609:6;10605:15;10591:29;;10638:1;10648:195;10662:6;10659:1;10656:13;10648:195;;;10727:13;;-1:-1:-1;;;;;10723:39:1;10711:52;;10818:15;;;;10783:12;;;;10759:1;10677:9;10648:195;;;-1:-1:-1;;;;;;;10899:32:1;;;;10894:2;10879:18;;10872:60;-1:-1:-1;;;10963:3:1;10948:19;10941:35;10860:3;10002:980;-1:-1:-1;;;10002:980:1:o;12001:306::-;12089:6;12097;12105;12158:2;12146:9;12137:7;12133:23;12129:32;12126:52;;;12174:1;12171;12164:12;12126:52;12203:9;12197:16;12187:26;;12253:2;12242:9;12238:18;12232:25;12222:35;;12297:2;12286:9;12282:18;12276:25;12266:35;;12001:306;;;;;:::o

Swarm Source

ipfs://5cfa502c88b90d69fa709003ff8081c2747837e41eb6b4e5a36a70820cf1f8e7
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.