ETH Price: $3,085.66 (+0.78%)
Gas: 6 Gwei

Token

Sourceblock (SRB)
 

Overview

Max Total Supply

500,000,000 SRB

Holders

150

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0 SRB

Value
$0.00
0x2169d9d12f4945484327D3f6b5DA5760FE275E11
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:
Sourceblock

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-04-27
*/

// SPDX-License-Identifier: MIT

/**
** Sourceblock is a decentralized marketplace for source code that offers a comprehensive range of services including cloud purchases, source code transactions, and API key acquisitions. ** 
** The platform utilizes blockchain technology to ensure secure, transparent, and reliable transactions, making it an ideal solution for developers who prioritize privacy and security. ** 
** With Sourceblock, developers can securely and seamlessly transact and acquire the necessary tools and services for their software development needs. ** 
** Website: https://sourceblock.software ** 
** Telegram: https://t.me/sourceblock ** 
** Twitter: https://x.com/codesourceblock ** 
** Medium: https://codesourceblock.medium.com ** 
**/

pragma solidity 0.8.25;

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;
    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 Sourceblock is Context, IERC20, Ownable {
    using SafeMath for uint256;
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;

    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => uint256) private _balances;
    mapping (address => bool) private isExcludedFromFee;
    
    string private constant _name = "Sourceblock";
    string private constant _symbol = "SRB";
    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 500_000_000  * 10**_decimals;
    uint256 public _maxWalletAmount = 1_250_000  * 10**_decimals;
    uint256 public _maxTxAmount = 1_250_000  * 10**_decimals;
    uint256 public _maxSwapAmount = 1_250_000  * 10**_decimals;
    address private _feeWallet;
    uint256 private _initialBuyTax=22;
    uint256 private _initialSellTax=22;

    bool private swapLimitOn = true;
    bool private tradingOpen;
    bool private inSwap = false;

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    event MaxTxAmountUpdated(uint256 _maxTxAmount);

    constructor (address feeWalletAddress) {
        uint256 tokenAmount = _tTotal.mul(12).div(100);
        _feeWallet = feeWalletAddress;

        isExcludedFromFee[feeWalletAddress] = true;

        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());

        _balances[_msgSender()] = _tTotal.sub(tokenAmount);
        _balances[address(this)] = tokenAmount;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

    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 totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    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 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: Transfer amount must be greater than zero.");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(tradingOpen,"_transfer: Trade is not yet open.");
            require(amount <= _maxTxAmount, "_transfer: Amount of transfer exceeds max transaction size.");
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                require(balanceOf(to) + amount <= _maxWalletAmount, "_transfer: Amount of transfer exceeds max wallet size.");
                taxAmount = amount.mul(_initialBuyTax).div(100);
            } else if (to == uniswapV2Pair){
                taxAmount = amount.mul(_initialSellTax).div(100);
                uint256 contractTokenBalance = balanceOf(address(this));
                if (!inSwap && to == uniswapV2Pair) {
                    if (swapLimitOn) {
                        uint256 getMinValue = (contractTokenBalance > _maxSwapAmount)?_maxSwapAmount:contractTokenBalance;
                        swapTokensForEth((amount > getMinValue)?getMinValue:amount);
                    } else {
                        swapTokensForEth(contractTokenBalance);
                    }
                }
            } else {
                taxAmount = 0;
            }
        }
        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }
    
    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        if(tokenAmount==0){return;}
        if(tokenAmount>_maxTxAmount) {
            tokenAmount = _maxTxAmount;
        }
        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,
            _feeWallet,
            block.timestamp
        );
    }

    function sendETHToFee(uint256 amount) private {
        payable(_feeWallet).transfer(amount);
    }

    function withdrawStuckToken(address tokenContractAddress, address toRescueAddress, uint256 amount) external {
        require(_msgSender()==_feeWallet);
        require(tokenContractAddress != address(this), "withdrawStuckToken: Not allowed to withdraw this token.");
        uint256 initial = IERC20(tokenContractAddress).balanceOf(address(this));
        require(initial >= amount, "withdrawStuckToken: Not enough token available.");
        IERC20(tokenContractAddress).transfer(toRescueAddress, amount);
    }

    function withdrawStuckETH() external {
        require(_msgSender() == _feeWallet);
        uint256 ethBalance = address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }

    function setBuyFee(uint256 buyFeePercentage) external onlyOwner {
        require(buyFeePercentage <= 35, "setBuyFee: buyFeePercentage shouldn't exceed 35%.");
        _initialBuyTax = buyFeePercentage;
    }

    function setSellFee(uint256 sellFeePercentage) external onlyOwner {
        require(sellFeePercentage <= 35, "setSellFee: sellFeePercentage shouldn't exceed 35%.");
        _initialSellTax = sellFeePercentage;
    }

    function openTrading() external onlyOwner {
        require(!tradingOpen,"openTrading: Trading is already open.");
        tradingOpen = true;
    }

    function forceSwap() external {
        require(_msgSender()==_feeWallet);
        uint256 tokenAmount=balanceOf(address(this));
        if(tokenAmount>0){
          swapTokensForEth(tokenAmount);
        }
    }

    receive() external payable {}

    function removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletAmount=_tTotal;
        swapLimitOn = false;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function setMaxWalletSize(uint256 amount) external onlyOwner {
        require(amount >= _tTotal.mul(1).div(1000), "setMaxWalletSize: amount must be more than or equal to 0.1% of total supply.");
        _maxWalletAmount = amount * 10**_decimals;
    }

    function setMaxTransactionSize(uint256 amount) external onlyOwner {
        require(amount >= _tTotal.mul(1).div(1000), "setMaxTransactionSize: amount must be more than or equal to 0.1% of total supply.");
        _maxTxAmount = amount * 10**_decimals;
    }

    function setMaxSwapAmountSize(uint256 amount) external onlyOwner {
        require(amount >= _tTotal.mul(1).div(1000), "setMaxSwapAmountSize: amount must be more than or equal to 0.1% of total supply.");
        _maxSwapAmount = amount * 10**_decimals;
    }


}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"feeWalletAddress","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":[],"name":"_maxSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"forceSwap","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":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"buyFeePercentage","type":"uint256"}],"name":"setBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxSwapAmountSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxTransactionSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"sellFeePercentage","type":"uint256"}],"name":"setSellFee","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"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenContractAddress","type":"address"},{"internalType":"address","name":"toRescueAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawStuckToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526100106012600a61073e565b61001d90621312d061074c565b60065561002c6012600a61073e565b61003990621312d061074c565b6007556100486012600a61073e565b61005590621312d061074c565b6008556016600a819055600b55600c805462ff00ff1916600117905534801561007c575f80fd5b506040516122f93803806122f983398101604081905261009b91610763565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3505f61010c6064610106600c6100f26012600a61073e565b61010090631dcd650061074c565b906103a6565b90610432565b600980546001600160a01b03199081166001600160a01b0386169081179092555f91825260056020526040909120805460ff191660019081179091558054737a250d5630b4cf539739df2c5dacb4c659f2488d92168217905590915061018d90309061017a6012600a61073e565b61018890631dcd650061074c565b610479565b60015f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102019190610763565b6001600160a01b031663c9c653963060015f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610260573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102849190610763565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156102ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f29190610763565b600280546001600160a01b0319166001600160a01b0392909216919091179055610336816103226012600a61073e565b61033090631dcd650061074c565b9061059f565b335f8181526004602052604080822093909355308152918220839055907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6103806012600a61073e565b61038e90631dcd650061074c565b60405190815260200160405180910390a350506107f0565b5f825f036103b557505f61042c565b5f6103c0838561074c565b9050826103cd8583610789565b146104295760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084015b60405180910390fd5b90505b92915050565b5f61042983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506105e660201b60201c565b6001600160a01b0383166104dd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152643932b9b99760d91b6064820152608401610420565b6001600160a01b03821661053f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526239b99760e91b6064820152608401610420565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f61042983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061061b60201b60201c565b5f81836106065760405162461bcd60e51b815260040161042091906107a8565b505f6106128486610789565b95945050505050565b5f818484111561063e5760405162461bcd60e51b815260040161042091906107a8565b505f61061284866107dd565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561069857815f190482111561067e5761067e61064a565b8085161561068b57918102915b93841c9390800290610663565b509250929050565b5f826106ae5750600161042c565b816106ba57505f61042c565b81600181146106d057600281146106da576106f6565b600191505061042c565b60ff8411156106eb576106eb61064a565b50506001821b61042c565b5060208310610133831016604e8410600b8410161715610719575081810a61042c565b610723838361065e565b805f19048211156107365761073661064a565b029392505050565b5f61042960ff8416836106a0565b808202811582820484141761042c5761042c61064a565b5f60208284031215610773575f80fd5b81516001600160a01b0381168114610429575f80fd5b5f826107a357634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b8181038181111561042c5761042c61064a565b611afc806107fd5f395ff3fe60806040526004361061014a575f3560e01c80638b4cee08116100b3578063c9567bf91161006d578063c9567bf9146103b8578063dd62ed3e146103cc578063df778d2614610410578063e06bd4a514610424578063ea1644d514610439578063f5648a4f14610458575f80fd5b80638b4cee08146102eb5780638da5cb5b1461030a57806395d89b4114610330578063a9059cbb1461035b578063a9e59da31461037a578063bda844c114610399575f80fd5b806354ccdefc1161010457806354ccdefc146102465780636c0a24eb1461026557806370a082311461027a578063715018a6146102ae578063751039fc146102c25780637d1db4a5146102d6575f80fd5b806306fdde0314610155578063095ea7b31461019a5780630cc835a3146101c957806318160ddd146101ea57806323b872dd1461020c578063313ce5671461022b575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b5060408051808201909152600b81526a536f75726365626c6f636b60a81b60208201525b604051610191919061171a565b60405180910390f35b3480156101a5575f80fd5b506101b96101b4366004611763565b61046c565b6040519015158152602001610191565b3480156101d4575f80fd5b506101e86101e336600461178d565b610482565b005b3480156101f5575f80fd5b506101fe610524565b604051908152602001610191565b348015610217575f80fd5b506101b96102263660046117a4565b610544565b348015610236575f80fd5b5060405160128152602001610191565b348015610251575f80fd5b506101e861026036600461178d565b6105ab565b348015610270575f80fd5b506101fe60065481565b348015610285575f80fd5b506101fe6102943660046117e2565b6001600160a01b03165f9081526004602052604090205490565b3480156102b9575f80fd5b506101e86106af565b3480156102cd575f80fd5b506101e8610720565b3480156102e1575f80fd5b506101fe60075481565b3480156102f6575f80fd5b506101e861030536600461178d565b6107db565b348015610315575f80fd5b505f546040516001600160a01b039091168152602001610191565b34801561033b575f80fd5b5060408051808201909152600381526229a92160e91b6020820152610184565b348015610366575f80fd5b506101b9610375366004611763565b610876565b348015610385575f80fd5b506101e861039436600461178d565b610882565b3480156103a4575f80fd5b506101e86103b33660046117a4565b61096d565b3480156103c3575f80fd5b506101e8610b53565b3480156103d7575f80fd5b506101fe6103e63660046117fd565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b34801561041b575f80fd5b506101e8610bf3565b34801561042f575f80fd5b506101fe60085481565b348015610444575f80fd5b506101e861045336600461178d565b610c33565b348015610463575f80fd5b506101e8610d19565b5f610478338484610d48565b5060015b92915050565b5f546001600160a01b031633146104b45760405162461bcd60e51b81526004016104ab90611834565b60405180910390fd5b602381111561051f5760405162461bcd60e51b815260206004820152603160248201527f7365744275794665653a2062757946656550657263656e746167652073686f7560448201527036323713ba1032bc31b2b2b210199a929760791b60648201526084016104ab565b600a55565b5f6105316012600a61195d565b61053f90631dcd650061196b565b905090565b5f610550848484610e6e565b6105a1843361059c85604051806060016040528060298152602001611a9e602991396001600160a01b038a165f908152600360209081526040808320338452909152902054919061138f565b610d48565b5060019392505050565b5f546001600160a01b031633146105d45760405162461bcd60e51b81526004016104ab90611834565b6106056103e86105ff60016105eb6012600a61195d565b6105f990631dcd650061196b565b906113c7565b9061144c565b8110156106935760405162461bcd60e51b815260206004820152605060248201527f7365744d617853776170416d6f756e7453697a653a20616d6f756e74206d757360448201527f74206265206d6f7265207468616e206f7220657175616c20746f20302e31252060648201526f37b3103a37ba30b61039bab838363c9760811b608482015260a4016104ab565b61069f6012600a61195d565b6106a9908261196b565b60085550565b5f546001600160a01b031633146106d85760405162461bcd60e51b81526004016104ab90611834565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107495760405162461bcd60e51b81526004016104ab90611834565b6107556012600a61195d565b61076390631dcd650061196b565b6007556107726012600a61195d565b61078090631dcd650061196b565b600655600c805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107ba6012600a61195d565b6107c890631dcd650061196b565b60405190815260200160405180910390a1565b5f546001600160a01b031633146108045760405162461bcd60e51b81526004016104ab90611834565b60238111156108715760405162461bcd60e51b815260206004820152603360248201527f73657453656c6c4665653a2073656c6c46656550657263656e7461676520736860448201527237bab6323713ba1032bc31b2b2b210199a929760691b60648201526084016104ab565b600b55565b5f610478338484610e6e565b5f546001600160a01b031633146108ab5760405162461bcd60e51b81526004016104ab90611834565b6108c26103e86105ff60016105eb6012600a61195d565b8110156109515760405162461bcd60e51b815260206004820152605160248201527f7365744d61785472616e73616374696f6e53697a653a20616d6f756e74206d7560448201527f7374206265206d6f7265207468616e206f7220657175616c20746f20302e31256064820152701037b3103a37ba30b61039bab838363c9760791b608482015260a4016104ab565b61095d6012600a61195d565b610967908261196b565b60075550565b6009546001600160a01b0316336001600160a01b03161461098c575f80fd5b306001600160a01b03841603610a0a5760405162461bcd60e51b815260206004820152603760248201527f7769746864726177537475636b546f6b656e3a204e6f7420616c6c6f7765642060448201527f746f207769746864726177207468697320746f6b656e2e00000000000000000060648201526084016104ab565b6040516370a0823160e01b81523060048201525f906001600160a01b038516906370a0823190602401602060405180830381865afa158015610a4e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a729190611982565b905081811015610adc5760405162461bcd60e51b815260206004820152602f60248201527f7769746864726177537475636b546f6b656e3a204e6f7420656e6f756768207460448201526e37b5b2b71030bb30b4b630b136329760891b60648201526084016104ab565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820184905285169063a9059cbb906044016020604051808303815f875af1158015610b28573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b4c9190611999565b5050505050565b5f546001600160a01b03163314610b7c5760405162461bcd60e51b81526004016104ab90611834565b600c54610100900460ff1615610be25760405162461bcd60e51b815260206004820152602560248201527f6f70656e54726164696e673a2054726164696e6720697320616c72656164792060448201526437b832b71760d91b60648201526084016104ab565b600c805461ff001916610100179055565b6009546001600160a01b0316336001600160a01b031614610c12575f80fd5b305f908152600460205260409020548015610c3057610c308161148d565b50565b5f546001600160a01b03163314610c5c5760405162461bcd60e51b81526004016104ab90611834565b610c736103e86105ff60016105eb6012600a61195d565b811015610cfd5760405162461bcd60e51b815260206004820152604c60248201527f7365744d617857616c6c657453697a653a20616d6f756e74206d75737420626560448201527f206d6f7265207468616e206f7220657175616c20746f20302e3125206f66207460648201526b37ba30b61039bab838363c9760a11b608482015260a4016104ab565b610d096012600a61195d565b610d13908261196b565b60065550565b6009546001600160a01b0316336001600160a01b031614610d38575f80fd5b478015610c3057610c3081611614565b6001600160a01b038316610dac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152643932b9b99760d91b60648201526084016104ab565b6001600160a01b038216610e0e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526239b99760e91b60648201526084016104ab565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610ed35760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015265323932b9b99760d11b60648201526084016104ab565b6001600160a01b038216610f355760405162461bcd60e51b8152602060048201526024808201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526332b9b99760e11b60648201526084016104ab565b5f8111610fa25760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a205472616e7366657220616d6f756e74206d7573742060448201527431329033b932b0ba32b9103a3430b7103d32b9379760591b60648201526084016104ab565b5f80546001600160a01b03858116911614801590610fcd57505f546001600160a01b03848116911614155b1561125257600c54610100900460ff166110335760405162461bcd60e51b815260206004820152602160248201527f5f7472616e736665723a205472616465206973206e6f7420796574206f70656e6044820152601760f91b60648201526084016104ab565b6007548211156110ab5760405162461bcd60e51b815260206004820152603b60248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527f6365656473206d6178207472616e73616374696f6e2073697a652e000000000060648201526084016104ab565b6002546001600160a01b0385811691161480156110d657506001546001600160a01b03848116911614155b1561119557600654826110fd856001600160a01b03165f9081526004602052604090205490565b61110791906119b8565b11156111745760405162461bcd60e51b815260206004820152603660248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527531b2b2b2399036b0bc103bb0b63632ba1039b4bd329760511b60648201526084016104ab565b61118e60646105ff600a54856113c790919063ffffffff16565b9050611252565b6002546001600160a01b039081169084160361124f576111c560646105ff600b54856113c790919063ffffffff16565b305f90815260046020526040902054600c549192509062010000900460ff161580156111fe57506002546001600160a01b038581169116145b1561124957600c5460ff1615611240575f600854821161121e5781611222565b6008545b905061123a818511611234578461148d565b8161148d565b50611249565b6112498161148d565b50611252565b505f5b80156112ca57305f90815260046020526040902054611271908261164f565b305f81815260046020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112c19085815260200190565b60405180910390a35b6001600160a01b0384165f908152600460205260409020546112ec90836116ad565b6001600160a01b0385165f9081526004602052604090205561132f61131183836116ad565b6001600160a01b0385165f908152600460205260409020549061164f565b6001600160a01b038085165f8181526004602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61137885856116ad565b60405190815260200160405180910390a350505050565b5f81848411156113b25760405162461bcd60e51b81526004016104ab919061171a565b505f6113be84866119cb565b95945050505050565b5f825f036113d657505f61047c565b5f6113e1838561196b565b9050826113ee85836119de565b146114455760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104ab565b9392505050565b5f61144583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116ee565b600c805462ff00001916620100001790558015611605576007548111156114b357506007545b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106114e6576114e66119fd565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561153d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115619190611a11565b81600181518110611574576115746119fd565b6001600160a01b03928316602091820292909201015260015461159a9130911684610d48565b60015460095460405163791ac94760e01b81526001600160a01b039283169263791ac947926115d69287925f9288929116904290600401611a2c565b5f604051808303815f87803b1580156115ed575f80fd5b505af11580156115ff573d5f803e3d5ffd5b50505050505b50600c805462ff000019169055565b6009546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561164b573d5f803e3d5ffd5b5050565b5f8061165b83856119b8565b9050838110156114455760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ab565b5f61144583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061138f565b5f818361170e5760405162461bcd60e51b81526004016104ab919061171a565b505f6113be84866119de565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610c30575f80fd5b5f8060408385031215611774575f80fd5b823561177f8161174f565b946020939093013593505050565b5f6020828403121561179d575f80fd5b5035919050565b5f805f606084860312156117b6575f80fd5b83356117c18161174f565b925060208401356117d18161174f565b929592945050506040919091013590565b5f602082840312156117f2575f80fd5b81356114458161174f565b5f806040838503121561180e575f80fd5b82356118198161174f565b915060208301356118298161174f565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156118b757815f190482111561189d5761189d611869565b808516156118aa57918102915b93841c9390800290611882565b509250929050565b5f826118cd5750600161047c565b816118d957505f61047c565b81600181146118ef57600281146118f957611915565b600191505061047c565b60ff84111561190a5761190a611869565b50506001821b61047c565b5060208310610133831016604e8410600b8410161715611938575081810a61047c565b611942838361187d565b805f190482111561195557611955611869565b029392505050565b5f61144560ff8416836118bf565b808202811582820484141761047c5761047c611869565b5f60208284031215611992575f80fd5b5051919050565b5f602082840312156119a9575f80fd5b81518015158114611445575f80fd5b8082018082111561047c5761047c611869565b8181038181111561047c5761047c611869565b5f826119f857634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611a21575f80fd5b81516114458161174f565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611a7c5784516001600160a01b031683529383019391830191600101611a57565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63652ea2646970667358221220002c30a60c85f19d268f321f3e34aa5186209f084db51a66e019f69e069b466964736f6c634300081900330000000000000000000000001af1b331ba37f29a30aa73a5028ff749bb8fb42e

Deployed Bytecode

0x60806040526004361061014a575f3560e01c80638b4cee08116100b3578063c9567bf91161006d578063c9567bf9146103b8578063dd62ed3e146103cc578063df778d2614610410578063e06bd4a514610424578063ea1644d514610439578063f5648a4f14610458575f80fd5b80638b4cee08146102eb5780638da5cb5b1461030a57806395d89b4114610330578063a9059cbb1461035b578063a9e59da31461037a578063bda844c114610399575f80fd5b806354ccdefc1161010457806354ccdefc146102465780636c0a24eb1461026557806370a082311461027a578063715018a6146102ae578063751039fc146102c25780637d1db4a5146102d6575f80fd5b806306fdde0314610155578063095ea7b31461019a5780630cc835a3146101c957806318160ddd146101ea57806323b872dd1461020c578063313ce5671461022b575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b5060408051808201909152600b81526a536f75726365626c6f636b60a81b60208201525b604051610191919061171a565b60405180910390f35b3480156101a5575f80fd5b506101b96101b4366004611763565b61046c565b6040519015158152602001610191565b3480156101d4575f80fd5b506101e86101e336600461178d565b610482565b005b3480156101f5575f80fd5b506101fe610524565b604051908152602001610191565b348015610217575f80fd5b506101b96102263660046117a4565b610544565b348015610236575f80fd5b5060405160128152602001610191565b348015610251575f80fd5b506101e861026036600461178d565b6105ab565b348015610270575f80fd5b506101fe60065481565b348015610285575f80fd5b506101fe6102943660046117e2565b6001600160a01b03165f9081526004602052604090205490565b3480156102b9575f80fd5b506101e86106af565b3480156102cd575f80fd5b506101e8610720565b3480156102e1575f80fd5b506101fe60075481565b3480156102f6575f80fd5b506101e861030536600461178d565b6107db565b348015610315575f80fd5b505f546040516001600160a01b039091168152602001610191565b34801561033b575f80fd5b5060408051808201909152600381526229a92160e91b6020820152610184565b348015610366575f80fd5b506101b9610375366004611763565b610876565b348015610385575f80fd5b506101e861039436600461178d565b610882565b3480156103a4575f80fd5b506101e86103b33660046117a4565b61096d565b3480156103c3575f80fd5b506101e8610b53565b3480156103d7575f80fd5b506101fe6103e63660046117fd565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b34801561041b575f80fd5b506101e8610bf3565b34801561042f575f80fd5b506101fe60085481565b348015610444575f80fd5b506101e861045336600461178d565b610c33565b348015610463575f80fd5b506101e8610d19565b5f610478338484610d48565b5060015b92915050565b5f546001600160a01b031633146104b45760405162461bcd60e51b81526004016104ab90611834565b60405180910390fd5b602381111561051f5760405162461bcd60e51b815260206004820152603160248201527f7365744275794665653a2062757946656550657263656e746167652073686f7560448201527036323713ba1032bc31b2b2b210199a929760791b60648201526084016104ab565b600a55565b5f6105316012600a61195d565b61053f90631dcd650061196b565b905090565b5f610550848484610e6e565b6105a1843361059c85604051806060016040528060298152602001611a9e602991396001600160a01b038a165f908152600360209081526040808320338452909152902054919061138f565b610d48565b5060019392505050565b5f546001600160a01b031633146105d45760405162461bcd60e51b81526004016104ab90611834565b6106056103e86105ff60016105eb6012600a61195d565b6105f990631dcd650061196b565b906113c7565b9061144c565b8110156106935760405162461bcd60e51b815260206004820152605060248201527f7365744d617853776170416d6f756e7453697a653a20616d6f756e74206d757360448201527f74206265206d6f7265207468616e206f7220657175616c20746f20302e31252060648201526f37b3103a37ba30b61039bab838363c9760811b608482015260a4016104ab565b61069f6012600a61195d565b6106a9908261196b565b60085550565b5f546001600160a01b031633146106d85760405162461bcd60e51b81526004016104ab90611834565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107495760405162461bcd60e51b81526004016104ab90611834565b6107556012600a61195d565b61076390631dcd650061196b565b6007556107726012600a61195d565b61078090631dcd650061196b565b600655600c805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107ba6012600a61195d565b6107c890631dcd650061196b565b60405190815260200160405180910390a1565b5f546001600160a01b031633146108045760405162461bcd60e51b81526004016104ab90611834565b60238111156108715760405162461bcd60e51b815260206004820152603360248201527f73657453656c6c4665653a2073656c6c46656550657263656e7461676520736860448201527237bab6323713ba1032bc31b2b2b210199a929760691b60648201526084016104ab565b600b55565b5f610478338484610e6e565b5f546001600160a01b031633146108ab5760405162461bcd60e51b81526004016104ab90611834565b6108c26103e86105ff60016105eb6012600a61195d565b8110156109515760405162461bcd60e51b815260206004820152605160248201527f7365744d61785472616e73616374696f6e53697a653a20616d6f756e74206d7560448201527f7374206265206d6f7265207468616e206f7220657175616c20746f20302e31256064820152701037b3103a37ba30b61039bab838363c9760791b608482015260a4016104ab565b61095d6012600a61195d565b610967908261196b565b60075550565b6009546001600160a01b0316336001600160a01b03161461098c575f80fd5b306001600160a01b03841603610a0a5760405162461bcd60e51b815260206004820152603760248201527f7769746864726177537475636b546f6b656e3a204e6f7420616c6c6f7765642060448201527f746f207769746864726177207468697320746f6b656e2e00000000000000000060648201526084016104ab565b6040516370a0823160e01b81523060048201525f906001600160a01b038516906370a0823190602401602060405180830381865afa158015610a4e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a729190611982565b905081811015610adc5760405162461bcd60e51b815260206004820152602f60248201527f7769746864726177537475636b546f6b656e3a204e6f7420656e6f756768207460448201526e37b5b2b71030bb30b4b630b136329760891b60648201526084016104ab565b60405163a9059cbb60e01b81526001600160a01b0384811660048301526024820184905285169063a9059cbb906044016020604051808303815f875af1158015610b28573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b4c9190611999565b5050505050565b5f546001600160a01b03163314610b7c5760405162461bcd60e51b81526004016104ab90611834565b600c54610100900460ff1615610be25760405162461bcd60e51b815260206004820152602560248201527f6f70656e54726164696e673a2054726164696e6720697320616c72656164792060448201526437b832b71760d91b60648201526084016104ab565b600c805461ff001916610100179055565b6009546001600160a01b0316336001600160a01b031614610c12575f80fd5b305f908152600460205260409020548015610c3057610c308161148d565b50565b5f546001600160a01b03163314610c5c5760405162461bcd60e51b81526004016104ab90611834565b610c736103e86105ff60016105eb6012600a61195d565b811015610cfd5760405162461bcd60e51b815260206004820152604c60248201527f7365744d617857616c6c657453697a653a20616d6f756e74206d75737420626560448201527f206d6f7265207468616e206f7220657175616c20746f20302e3125206f66207460648201526b37ba30b61039bab838363c9760a11b608482015260a4016104ab565b610d096012600a61195d565b610d13908261196b565b60065550565b6009546001600160a01b0316336001600160a01b031614610d38575f80fd5b478015610c3057610c3081611614565b6001600160a01b038316610dac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152643932b9b99760d91b60648201526084016104ab565b6001600160a01b038216610e0e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526239b99760e91b60648201526084016104ab565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610ed35760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015265323932b9b99760d11b60648201526084016104ab565b6001600160a01b038216610f355760405162461bcd60e51b8152602060048201526024808201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526332b9b99760e11b60648201526084016104ab565b5f8111610fa25760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a205472616e7366657220616d6f756e74206d7573742060448201527431329033b932b0ba32b9103a3430b7103d32b9379760591b60648201526084016104ab565b5f80546001600160a01b03858116911614801590610fcd57505f546001600160a01b03848116911614155b1561125257600c54610100900460ff166110335760405162461bcd60e51b815260206004820152602160248201527f5f7472616e736665723a205472616465206973206e6f7420796574206f70656e6044820152601760f91b60648201526084016104ab565b6007548211156110ab5760405162461bcd60e51b815260206004820152603b60248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527f6365656473206d6178207472616e73616374696f6e2073697a652e000000000060648201526084016104ab565b6002546001600160a01b0385811691161480156110d657506001546001600160a01b03848116911614155b1561119557600654826110fd856001600160a01b03165f9081526004602052604090205490565b61110791906119b8565b11156111745760405162461bcd60e51b815260206004820152603660248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527531b2b2b2399036b0bc103bb0b63632ba1039b4bd329760511b60648201526084016104ab565b61118e60646105ff600a54856113c790919063ffffffff16565b9050611252565b6002546001600160a01b039081169084160361124f576111c560646105ff600b54856113c790919063ffffffff16565b305f90815260046020526040902054600c549192509062010000900460ff161580156111fe57506002546001600160a01b038581169116145b1561124957600c5460ff1615611240575f600854821161121e5781611222565b6008545b905061123a818511611234578461148d565b8161148d565b50611249565b6112498161148d565b50611252565b505f5b80156112ca57305f90815260046020526040902054611271908261164f565b305f81815260046020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112c19085815260200190565b60405180910390a35b6001600160a01b0384165f908152600460205260409020546112ec90836116ad565b6001600160a01b0385165f9081526004602052604090205561132f61131183836116ad565b6001600160a01b0385165f908152600460205260409020549061164f565b6001600160a01b038085165f8181526004602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61137885856116ad565b60405190815260200160405180910390a350505050565b5f81848411156113b25760405162461bcd60e51b81526004016104ab919061171a565b505f6113be84866119cb565b95945050505050565b5f825f036113d657505f61047c565b5f6113e1838561196b565b9050826113ee85836119de565b146114455760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104ab565b9392505050565b5f61144583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116ee565b600c805462ff00001916620100001790558015611605576007548111156114b357506007545b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106114e6576114e66119fd565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561153d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115619190611a11565b81600181518110611574576115746119fd565b6001600160a01b03928316602091820292909201015260015461159a9130911684610d48565b60015460095460405163791ac94760e01b81526001600160a01b039283169263791ac947926115d69287925f9288929116904290600401611a2c565b5f604051808303815f87803b1580156115ed575f80fd5b505af11580156115ff573d5f803e3d5ffd5b50505050505b50600c805462ff000019169055565b6009546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561164b573d5f803e3d5ffd5b5050565b5f8061165b83856119b8565b9050838110156114455760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ab565b5f61144583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061138f565b5f818361170e5760405162461bcd60e51b81526004016104ab919061171a565b505f6113be84866119de565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610c30575f80fd5b5f8060408385031215611774575f80fd5b823561177f8161174f565b946020939093013593505050565b5f6020828403121561179d575f80fd5b5035919050565b5f805f606084860312156117b6575f80fd5b83356117c18161174f565b925060208401356117d18161174f565b929592945050506040919091013590565b5f602082840312156117f2575f80fd5b81356114458161174f565b5f806040838503121561180e575f80fd5b82356118198161174f565b915060208301356118298161174f565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156118b757815f190482111561189d5761189d611869565b808516156118aa57918102915b93841c9390800290611882565b509250929050565b5f826118cd5750600161047c565b816118d957505f61047c565b81600181146118ef57600281146118f957611915565b600191505061047c565b60ff84111561190a5761190a611869565b50506001821b61047c565b5060208310610133831016604e8410600b8410161715611938575081810a61047c565b611942838361187d565b805f190482111561195557611955611869565b029392505050565b5f61144560ff8416836118bf565b808202811582820484141761047c5761047c611869565b5f60208284031215611992575f80fd5b5051919050565b5f602082840312156119a9575f80fd5b81518015158114611445575f80fd5b8082018082111561047c5761047c611869565b8181038181111561047c5761047c611869565b5f826119f857634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611a21575f80fd5b81516114458161174f565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611a7c5784516001600160a01b031683529383019391830191600101611a57565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63652ea2646970667358221220002c30a60c85f19d268f321f3e34aa5186209f084db51a66e019f69e069b466964736f6c63430008190033

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

0000000000000000000000001af1b331ba37f29a30aa73a5028ff749bb8fb42e

-----Decoded View---------------
Arg [0] : feeWalletAddress (address): 0x1af1b331Ba37F29A30Aa73A5028FF749BB8FB42E

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


Deployed Bytecode Sourcemap

4211:8744:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6022:83;;;;;;;;;;-1:-1:-1;6092:5:0;;;;;;;;;;;;-1:-1:-1;;;6092:5:0;;;;6022:83;;;;;;;:::i;:::-;;;;;;;;6208:161;;;;;;;;;;-1:-1:-1;6208:161:0;;;;;:::i;:::-;;:::i;:::-;;;1058:14:1;;1051:22;1033:41;;1021:2;1006:18;6208:161:0;893:187:1;11088:211:0;;;;;;;;;;-1:-1:-1;11088:211:0;;;;;:::i;:::-;;:::i;:::-;;6790:95;;;;;;;;;;;;;:::i;:::-;;;1416:25:1;;;1404:2;1389:18;6790:95:0;1270:177:1;6468:314:0;;;;;;;;;;-1:-1:-1;6468:314:0;;;;;:::i;:::-;;:::i;6377:83::-;;;;;;;;;;-1:-1:-1;6377:83:0;;4713:2;2055:36:1;;2043:2;2028:18;6377:83:0;1913:184:1;12687:261:0;;;;;;;;;;-1:-1:-1;12687:261:0;;;;;:::i;:::-;;:::i;4792:60::-;;;;;;;;;;;;;;;;6893:119;;;;;;;;;;-1:-1:-1;6893:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6986:18:0;6959:7;6986:18;;;:9;:18;;;;;;;6893:119;3292:148;;;;;;;;;;;;;:::i;11955:192::-;;;;;;;;;;;;;:::i;4859:56::-;;;;;;;;;;;;;;;;11307:218;;;;;;;;;;-1:-1:-1;11307:218:0;;;;;:::i;:::-;;:::i;3078:79::-;;;;;;;;;;-1:-1:-1;3116:7:0;3143:6;3078:79;;-1:-1:-1;;;;;3143:6:0;;;2500:51:1;;2488:2;2473:18;3078:79:0;2354:203:1;6113:87:0;;;;;;;;;;-1:-1:-1;6185:7:0;;;;;;;;;;;;-1:-1:-1;;;6185:7:0;;;;6113:87;;7020:167;;;;;;;;;;-1:-1:-1;7020:167:0;;;;;:::i;:::-;;:::i;12418:261::-;;;;;;;;;;-1:-1:-1;12418:261:0;;;;;:::i;:::-;;:::i;10334:519::-;;;;;;;;;;-1:-1:-1;10334:519:0;;;;;:::i;:::-;;:::i;11533:151::-;;;;;;;;;;;;;:::i;7195:143::-;;;;;;;;;;-1:-1:-1;7195:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7303:18:0;;;7276:7;7303:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7195:143;11692:218;;;;;;;;;;;;;:::i;4922:58::-;;;;;;;;;;;;;;;;12155:255;;;;;;;;;;-1:-1:-1;12155:255:0;;;;;:::i;:::-;;:::i;10861:219::-;;;;;;;;;;;;;:::i;6208:161::-;6283:4;6300:39;913:10;6323:7;6332:6;6300:8;:39::i;:::-;-1:-1:-1;6357:4:0;6208:161;;;;;:::o;11088:211::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;;;;;;;;;11191:2:::1;11171:16;:22;;11163:84;;;::::0;-1:-1:-1;;;11163:84:0;;3518:2:1;11163:84:0::1;::::0;::::1;3500:21:1::0;3557:2;3537:18;;;3530:30;3596:34;3576:18;;;3569:62;-1:-1:-1;;;3647:18:1;;;3640:47;3704:19;;11163:84:0::1;3316:413:1::0;11163:84:0::1;11258:14;:33:::0;11088:211::o;6790:95::-;6843:7;4772:13;4713:2;4772;:13;:::i;:::-;4757:28;;:11;:28;:::i;:::-;6863:14;;6790:95;:::o;6468:314::-;6566:4;6583:36;6593:6;6601:9;6612:6;6583:9;:36::i;:::-;6630:122;6639:6;913:10;6661:90;6699:6;6661:90;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6661:19:0;;;;;;:11;:19;;;;;;;;913:10;6661:33;;;;;;;;;;:37;:90::i;:::-;6630:8;:122::i;:::-;-1:-1:-1;6770:4:0;6468:314;;;;;:::o;12687:261::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;12781:24:::1;12800:4;12781:14;12793:1;4772:13;4713:2;4772;:13;:::i;:::-;4757:28;::::0;:11:::1;:28;:::i;:::-;12781:11:::0;::::1;:14::i;:::-;:18:::0;::::1;:24::i;:::-;12771:6;:34;;12763:127;;;::::0;-1:-1:-1;;;12763:127:0;;5618:2:1;12763:127:0::1;::::0;::::1;5600:21:1::0;5657:2;5637:18;;;5630:30;5696:34;5676:18;;;5669:62;5767:34;5747:18;;;5740:62;-1:-1:-1;;;5818:19:1;;;5811:47;5875:19;;12763:127:0::1;5416:484:1::0;12763:127:0::1;12927:13;4713:2;12927;:13;:::i;:::-;12918:22;::::0;:6;:22:::1;:::i;:::-;12901:14;:39:::0;-1:-1:-1;12687:261:0:o;3292:148::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;3399:1:::1;3383:6:::0;;3362:40:::1;::::0;-1:-1:-1;;;;;3383:6:0;;::::1;::::0;3362:40:::1;::::0;3399:1;;3362:40:::1;3430:1;3413:19:::0;;-1:-1:-1;;;;;;3413:19:0::1;::::0;;3292:148::o;11955:192::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;4772:13:::1;4713:2;4772;:13;:::i;:::-;4757:28;::::0;:11:::1;:28;:::i;:::-;12009:12;:22:::0;4772:13:::1;4713:2;4772;:13;:::i;:::-;4757:28;::::0;:11:::1;:28;:::i;:::-;12042:16;:24:::0;12077:11:::1;:19:::0;;-1:-1:-1;;12077:19:0::1;::::0;;12112:27:::1;4772:13;4713:2;4772;:13;:::i;:::-;4757:28;::::0;:11:::1;:28;:::i;:::-;12112:27;::::0;1416:25:1;;;1404:2;1389:18;12112:27:0::1;;;;;;;11955:192::o:0;11307:218::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;11413:2:::1;11392:17;:23;;11384:87;;;::::0;-1:-1:-1;;;11384:87:0;;6107:2:1;11384:87:0::1;::::0;::::1;6089:21:1::0;6146:2;6126:18;;;6119:30;6185:34;6165:18;;;6158:62;-1:-1:-1;;;6236:18:1;;;6229:49;6295:19;;11384:87:0::1;5905:415:1::0;11384:87:0::1;11482:15;:35:::0;11307:218::o;7020:167::-;7098:4;7115:42;913:10;7139:9;7150:6;7115:9;:42::i;12418:261::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;12513:24:::1;12532:4;12513:14;12525:1;4772:13;4713:2;4772;:13;:::i;12513:24::-;12503:6;:34;;12495:128;;;::::0;-1:-1:-1;;;12495:128:0;;6527:2:1;12495:128:0::1;::::0;::::1;6509:21:1::0;6566:2;6546:18;;;6539:30;6605:34;6585:18;;;6578:62;6676:34;6656:18;;;6649:62;-1:-1:-1;;;6727:19:1;;;6720:48;6785:19;;12495:128:0::1;6325:485:1::0;12495:128:0::1;12658:13;4713:2;12658;:13;:::i;:::-;12649:22;::::0;:6;:22:::1;:::i;:::-;12634:12;:37:::0;-1:-1:-1;12418:261:0:o;10334:519::-;10475:10;;-1:-1:-1;;;;;10475:10:0;913;-1:-1:-1;;;;;10461:24:0;;10453:33;;;;;;10537:4;-1:-1:-1;;;;;10505:37:0;;;10497:105;;;;-1:-1:-1;;;10497:105:0;;7017:2:1;10497:105:0;;;6999:21:1;7056:2;7036:18;;;7029:30;7095:34;7075:18;;;7068:62;7166:25;7146:18;;;7139:53;7209:19;;10497:105:0;6815:419:1;10497:105:0;10631:53;;-1:-1:-1;;;10631:53:0;;10678:4;10631:53;;;2500:51:1;10613:15:0;;-1:-1:-1;;;;;10631:38:0;;;;;2473:18:1;;10631:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10613:71;;10714:6;10703:7;:17;;10695:77;;;;-1:-1:-1;;;10695:77:0;;7630:2:1;10695:77:0;;;7612:21:1;7669:2;7649:18;;;7642:30;7708:34;7688:18;;;7681:62;-1:-1:-1;;;7759:18:1;;;7752:45;7814:19;;10695:77:0;7428:411:1;10695:77:0;10783:62;;-1:-1:-1;;;10783:62:0;;-1:-1:-1;;;;;8036:32:1;;;10783:62:0;;;8018:51:1;8085:18;;;8078:34;;;10783:37:0;;;;;7991:18:1;;10783:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;10442:411;10334:519;;;:::o;11533:151::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;11595:11:::1;::::0;::::1;::::0;::::1;;;11594:12;11586:61;;;::::0;-1:-1:-1;;;11586:61:0;;8607:2:1;11586:61:0::1;::::0;::::1;8589:21:1::0;8646:2;8626:18;;;8619:30;8685:34;8665:18;;;8658:62;-1:-1:-1;;;8736:18:1;;;8729:35;8781:19;;11586:61:0::1;8405:401:1::0;11586:61:0::1;11658:11;:18:::0;;-1:-1:-1;;11658:18:0::1;;;::::0;;11533:151::o;11692:218::-;11755:10;;-1:-1:-1;;;;;11755:10:0;913;-1:-1:-1;;;;;11741:24:0;;11733:33;;;;;;11815:4;11777:19;6986:18;;;:9;:18;;;;;;11835:13;;11832:71;;11862:29;11879:11;11862:16;:29::i;:::-;11722:188;11692:218::o;12155:255::-;3205:6;;-1:-1:-1;;;;;3205:6:0;913:10;3205:22;3197:67;;;;-1:-1:-1;;;3197:67:0;;;;;;;:::i;:::-;12245:24:::1;12264:4;12245:14;12257:1;4772:13;4713:2;4772;:13;:::i;12245:24::-;12235:6;:34;;12227:123;;;::::0;-1:-1:-1;;;12227:123:0;;9013:2:1;12227:123:0::1;::::0;::::1;8995:21:1::0;9052:2;9032:18;;;9025:30;9091:34;9071:18;;;9064:62;9162:34;9142:18;;;9135:62;-1:-1:-1;;;9213:19:1;;;9206:43;9266:19;;12227:123:0::1;8811:480:1::0;12227:123:0::1;12389:13;4713:2;12389;:13;:::i;:::-;12380:22;::::0;:6;:22:::1;:::i;:::-;12361:16;:41:::0;-1:-1:-1;12155:255:0:o;10861:219::-;10933:10;;-1:-1:-1;;;;;10933:10:0;913;-1:-1:-1;;;;;10917:26:0;;10909:35;;;;;;10976:21;11011:12;;11008:65;;11037:24;11050:10;11037:12;:24::i;7346:337::-;-1:-1:-1;;;;;7439:19:0;;7431:69;;;;-1:-1:-1;;;7431:69:0;;9498:2:1;7431:69:0;;;9480:21:1;9537:2;9517:18;;;9510:30;9576:34;9556:18;;;9549:62;-1:-1:-1;;;9627:18:1;;;9620:35;9672:19;;7431:69:0;9296:401:1;7431:69:0;-1:-1:-1;;;;;7519:21:0;;7511:69;;;;-1:-1:-1;;;7511:69:0;;9904:2:1;7511:69:0;;;9886:21:1;9943:2;9923:18;;;9916:30;9982:34;9962:18;;;9955:62;-1:-1:-1;;;10033:18:1;;;10026:33;10076:19;;7511:69:0;9702:399:1;7511:69:0;-1:-1:-1;;;;;7591:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7643:32;;1416:25:1;;;7643:32:0;;1389:18:1;7643:32:0;;;;;;;7346:337;;;:::o;7691:1905::-;-1:-1:-1;;;;;7779:18:0;;7771:69;;;;-1:-1:-1;;;7771:69:0;;10308:2:1;7771:69:0;;;10290:21:1;10347:2;10327:18;;;10320:30;10386:34;10366:18;;;10359:62;-1:-1:-1;;;10437:18:1;;;10430:36;10483:19;;7771:69:0;10106:402:1;7771:69:0;-1:-1:-1;;;;;7859:16:0;;7851:65;;;;-1:-1:-1;;;7851:65:0;;10715:2:1;7851:65:0;;;10697:21:1;10754:2;10734:18;;;10727:30;10793:34;10773:18;;;10766:62;-1:-1:-1;;;10844:18:1;;;10837:34;10888:19;;7851:65:0;10513:400:1;7851:65:0;7944:1;7935:6;:10;7927:76;;;;-1:-1:-1;;;7927:76:0;;11120:2:1;7927:76:0;;;11102:21:1;11159:2;11139:18;;;11132:30;11198:34;11178:18;;;11171:62;-1:-1:-1;;;11249:18:1;;;11242:51;11310:19;;7927:76:0;10918:417:1;7927:76:0;8014:17;3143:6;;-1:-1:-1;;;;;8048:15:0;;;3143:6;;8048:15;;;;:32;;-1:-1:-1;3116:7:0;3143:6;-1:-1:-1;;;;;8067:13:0;;;3143:6;;8067:13;;8048:32;8044:1198;;;8105:11;;;;;;;8097:56;;;;-1:-1:-1;;;8097:56:0;;11542:2:1;8097:56:0;;;11524:21:1;11581:2;11561:18;;;11554:30;11620:34;11600:18;;;11593:62;-1:-1:-1;;;11671:18:1;;;11664:31;11712:19;;8097:56:0;11340:397:1;8097:56:0;8186:12;;8176:6;:22;;8168:94;;;;-1:-1:-1;;;8168:94:0;;11944:2:1;8168:94:0;;;11926:21:1;11983:2;11963:18;;;11956:30;12022:34;12002:18;;;11995:62;12093:29;12073:18;;;12066:57;12140:19;;8168:94:0;11742:423:1;8168:94:0;8289:13;;-1:-1:-1;;;;;8281:21:0;;;8289:13;;8281:21;:55;;;;-1:-1:-1;8320:15:0;;-1:-1:-1;;;;;8306:30:0;;;8320:15;;8306:30;;8281:55;8277:954;;;8391:16;;8381:6;8365:13;8375:2;-1:-1:-1;;;;;6986:18:0;6959:7;6986:18;;;:9;:18;;;;;;;6893:119;8365:13;:22;;;;:::i;:::-;:42;;8357:109;;;;-1:-1:-1;;;8357:109:0;;12502:2:1;8357:109:0;;;12484:21:1;12541:2;12521:18;;;12514:30;12580:34;12560:18;;;12553:62;-1:-1:-1;;;12631:18:1;;;12624:52;12693:19;;8357:109:0;12300:418:1;8357:109:0;8497:35;8528:3;8497:26;8508:14;;8497:6;:10;;:26;;;;:::i;:35::-;8485:47;;8277:954;;;8564:13;;-1:-1:-1;;;;;8564:13:0;;;8558:19;;;;8554:677;;8609:36;8641:3;8609:27;8620:15;;8609:6;:10;;:27;;;;:::i;:36::-;8713:4;8664:28;6986:18;;;:9;:18;;;;;;8743:6;;8597:48;;-1:-1:-1;6986:18:0;8743:6;;;;;8742:7;:30;;;;-1:-1:-1;8759:13:0;;-1:-1:-1;;;;;8753:19:0;;;8759:13;;8753:19;8742:30;8738:424;;;8801:11;;;;8797:346;;;8841:19;8887:14;;8864:20;:37;8863:75;;8918:20;8863:75;;;8903:14;;8863:75;8841:97;;8965:59;8992:11;8983:6;:20;8982:41;;9017:6;8965:16;:59::i;8982:41::-;9005:11;8965:16;:59::i;:::-;8814:234;8797:346;;;9081:38;9098:20;9081:16;:38::i;:::-;8578:599;8554:677;;;-1:-1:-1;9214:1:0;8554:677;9255:11;;9252:161;;9323:4;9305:24;;;;:9;:24;;;;;;:39;;9334:9;9305:28;:39::i;:::-;9298:4;9280:24;;;;:9;:24;;;;;;;:64;;;;9362:39;;-1:-1:-1;;;;;9362:39:0;;;;;;;9391:9;1416:25:1;;1404:2;1389:18;;1270:177;9362:39:0;;;;;;;;9252:161;-1:-1:-1;;;;;9439:15:0;;;;;;:9;:15;;;;;;:27;;9459:6;9439:19;:27::i;:::-;-1:-1:-1;;;;;9423:15:0;;;;;;:9;:15;;;;;:43;9491:40;9509:21;:6;9520:9;9509:10;:21::i;:::-;-1:-1:-1;;;;;9491:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9477:13:0;;;;;;;:9;:13;;;;;:54;;;;9547:41;;;9566:21;:6;9577:9;9566:10;:21::i;:::-;9547:41;;1416:25:1;;;1404:2;1389:18;9547:41:0;;;;;;;7760:1836;7691:1905;;;:::o;1970:190::-;2056:7;2092:12;2084:6;;;;2076:29;;;;-1:-1:-1;;;2076:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2116:9:0;2128:5;2132:1;2128;:5;:::i;:::-;2116:17;1970:190;-1:-1:-1;;;;;1970:190:0:o;2168:246::-;2226:7;2250:1;2255;2250:6;2246:47;;-1:-1:-1;2280:1:0;2273:8;;2246:47;2303:9;2315:5;2319:1;2315;:5;:::i;:::-;2303:17;-1:-1:-1;2348:1:0;2339:5;2343:1;2303:17;2339:5;:::i;:::-;:10;2331:56;;;;-1:-1:-1;;;2331:56:0;;13280:2:1;2331:56:0;;;13262:21:1;13319:2;13299:18;;;13292:30;13358:34;13338:18;;;13331:62;-1:-1:-1;;;13409:18:1;;;13402:31;13450:19;;2331:56:0;13078:397:1;2331:56:0;2405:1;2168:246;-1:-1:-1;;;2168:246:0:o;2422:132::-;2480:7;2507:39;2511:1;2514;2507:39;;;;;;;;;;;;;;;;;:3;:39::i;9608:609::-;5240:6;:13;;-1:-1:-1;;5240:13:0;;;;;9686:27;;9705:7:::1;9686:27;9738:12;;9726:11;:24;9723:82;;;-1:-1:-1::0;9781:12:0::1;::::0;9723:82:::1;9839:16;::::0;;9853:1:::1;9839:16:::0;;;;;::::1;::::0;;9815:21:::1;::::0;9839:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9839:16:0::1;9815:40;;9884:4;9866;9871:1;9866:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9866:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9910:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9910:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9866:7;;9910:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9900:4;9905:1;9900:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9900:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9975:15:::1;::::0;9943:62:::1;::::0;9960:4:::1;::::0;9975:15:::1;9993:11:::0;9943:8:::1;:62::i;:::-;10016:15;::::0;10158:10:::1;::::0;10016:193:::1;::::0;-1:-1:-1;;;10016:193:0;;-1:-1:-1;;;;;10016:15:0;;::::1;::::0;:66:::1;::::0;:193:::1;::::0;10097:11;;10016:15:::1;::::0;10139:4;;10158:10;::::1;::::0;10183:15:::1;::::0;10016:193:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9675:542;5264:1;-1:-1:-1::0;5276:6:0;:14;;-1:-1:-1;;5276:14:0;;;9608:609::o;10225:101::-;10290:10;;10282:36;;-1:-1:-1;;;;;10290:10:0;;;;10282:36;;;;;10311:6;;10290:10;10282:36;10290:10;10282:36;10311:6;10290:10;10282:36;;;;;;;;;;;;;;;;;;;;;10225:101;:::o;1639:179::-;1697:7;;1729:5;1733:1;1729;:5;:::i;:::-;1717:17;;1758:1;1753;:6;;1745:46;;;;-1:-1:-1;;;1745:46:0;;15187:2:1;1745:46:0;;;15169:21:1;15226:2;15206:18;;;15199:30;15265:29;15245:18;;;15238:57;15312:18;;1745:46:0;14985:351:1;1826:136:0;1884:7;1911:43;1915:1;1918;1911:43;;;;;;;;;;;;;;;;;:3;:43::i;2562:189::-;2648:7;2683:12;2676:5;2668:28;;;;-1:-1:-1;;;2668:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2707:9:0;2719:5;2723:1;2719;:5;:::i;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;573:315;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;878:2;863:18;;;;850:32;;-1:-1:-1;;;573:315:1:o;1085:180::-;1144:6;1197:2;1185:9;1176:7;1172:23;1168:32;1165:52;;;1213:1;1210;1203:12;1165:52;-1:-1:-1;1236:23:1;;1085:180;-1:-1:-1;1085:180:1:o;1452:456::-;1529:6;1537;1545;1598:2;1586:9;1577:7;1573:23;1569:32;1566:52;;;1614:1;1611;1604:12;1566:52;1653:9;1640:23;1672:31;1697:5;1672:31;:::i;:::-;1722:5;-1:-1:-1;1779:2:1;1764:18;;1751:32;1792:33;1751:32;1792:33;:::i;:::-;1452:456;;1844:7;;-1:-1:-1;;;1898:2:1;1883:18;;;;1870:32;;1452:456::o;2102:247::-;2161:6;2214:2;2202:9;2193:7;2189:23;2185:32;2182:52;;;2230:1;2227;2220:12;2182:52;2269:9;2256:23;2288:31;2313:5;2288:31;:::i;2562:388::-;2630:6;2638;2691:2;2679:9;2670:7;2666:23;2662:32;2659:52;;;2707:1;2704;2697:12;2659:52;2746:9;2733:23;2765:31;2790:5;2765:31;:::i;:::-;2815:5;-1:-1:-1;2872:2:1;2857:18;;2844:32;2885:33;2844:32;2885:33;:::i;:::-;2937:7;2927:17;;;2562:388;;;;;:::o;2955:356::-;3157:2;3139:21;;;3176:18;;;3169:30;3235:34;3230:2;3215:18;;3208:62;3302:2;3287:18;;2955:356::o;3734:127::-;3795:10;3790:3;3786:20;3783:1;3776:31;3826:4;3823:1;3816:15;3850:4;3847:1;3840:15;3866:416;3955:1;3992:5;3955:1;4006:270;4027:7;4017:8;4014:21;4006:270;;;4086:4;4082:1;4078:6;4074:17;4068:4;4065:27;4062:53;;;4095:18;;:::i;:::-;4145:7;4135:8;4131:22;4128:55;;;4165:16;;;;4128:55;4244:22;;;;4204:15;;;;4006:270;;;4010:3;3866:416;;;;;:::o;4287:806::-;4336:5;4366:8;4356:80;;-1:-1:-1;4407:1:1;4421:5;;4356:80;4455:4;4445:76;;-1:-1:-1;4492:1:1;4506:5;;4445:76;4537:4;4555:1;4550:59;;;;4623:1;4618:130;;;;4530:218;;4550:59;4580:1;4571:10;;4594:5;;;4618:130;4655:3;4645:8;4642:17;4639:43;;;4662:18;;:::i;:::-;-1:-1:-1;;4718:1:1;4704:16;;4733:5;;4530:218;;4832:2;4822:8;4819:16;4813:3;4807:4;4804:13;4800:36;4794:2;4784:8;4781:16;4776:2;4770:4;4767:12;4763:35;4760:77;4757:159;;;-1:-1:-1;4869:19:1;;;4901:5;;4757:159;4948:34;4973:8;4967:4;4948:34;:::i;:::-;5018:6;5014:1;5010:6;5006:19;4997:7;4994:32;4991:58;;;5029:18;;:::i;:::-;5067:20;;4287:806;-1:-1:-1;;;4287:806:1:o;5098:140::-;5156:5;5185:47;5226:4;5216:8;5212:19;5206:4;5185:47;:::i;5243:168::-;5316:9;;;5347;;5364:15;;;5358:22;;5344:37;5334:71;;5385:18;;:::i;7239:184::-;7309:6;7362:2;7350:9;7341:7;7337:23;7333:32;7330:52;;;7378:1;7375;7368:12;7330:52;-1:-1:-1;7401:16:1;;7239:184;-1:-1:-1;7239:184:1:o;8123:277::-;8190:6;8243:2;8231:9;8222:7;8218:23;8214:32;8211:52;;;8259:1;8256;8249:12;8211:52;8291:9;8285:16;8344:5;8337:13;8330:21;8323:5;8320:32;8310:60;;8366:1;8363;8356:12;12170:125;12235:9;;;12256:10;;;12253:36;;;12269:18;;:::i;12723:128::-;12790:9;;;12811:11;;;12808:37;;;12825:18;;:::i;12856:217::-;12896:1;12922;12912:132;;12966:10;12961:3;12957:20;12954:1;12947:31;13001:4;12998:1;12991:15;13029:4;13026:1;13019:15;12912:132;-1:-1:-1;13058:9:1;;12856:217::o;13612:127::-;13673:10;13668:3;13664:20;13661:1;13654:31;13704:4;13701:1;13694:15;13728:4;13725:1;13718:15;13744:251;13814:6;13867:2;13855:9;13846:7;13842:23;13838:32;13835:52;;;13883:1;13880;13873:12;13835:52;13915:9;13909:16;13934:31;13959:5;13934:31;:::i;14000:980::-;14262:4;14310:3;14299:9;14295:19;14341:6;14330:9;14323:25;14367:2;14405:6;14400:2;14389:9;14385:18;14378:34;14448:3;14443:2;14432:9;14428:18;14421:31;14472:6;14507;14501:13;14538:6;14530;14523:22;14576:3;14565:9;14561:19;14554:26;;14615:2;14607:6;14603:15;14589:29;;14636:1;14646:195;14660:6;14657:1;14654:13;14646:195;;;14725:13;;-1:-1:-1;;;;;14721:39:1;14709:52;;14816:15;;;;14781:12;;;;14757:1;14675:9;14646:195;;;-1:-1:-1;;;;;;;14897:32:1;;;;14892:2;14877:18;;14870:60;-1:-1:-1;;;14961:3:1;14946:19;14939:35;14858:3;14000:980;-1:-1:-1;;;14000:980:1:o

Swarm Source

ipfs://002c30a60c85f19d268f321f3e34aa5186209f084db51a66e019f69e069b4669
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.