ETH Price: $3,317.75 (+1.44%)
Gas: 10 Gwei

Token

Attorney AI (ATTY)
 

Overview

Max Total Supply

1,000,000,000 ATTY

Holders

26

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
3,458,246.031230474 ATTY

Value
$0.00
0x2fb6c69acc78c08058f8c5d663eecb3c98d002f6
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:
AttorneyAI

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-01-17
*/

/**

─█▀▀█ ▀▀█▀▀ ▀▀█▀▀ █▀▀█ █▀▀█ █▀▀▄ █▀▀ █──█   ─█▀▀█ ▀█▀ 
░█▄▄█ ──█── ──█── █──█ █▄▄▀ █──█ █▀▀ █▄▄█   ░█▄▄█ ░█─ 
░█─░█ ──▀── ──▀── ▀▀▀▀ ▀─▀▀ ▀──▀ ▀▀▀ ▄▄▄█   ░█─░█ ▄█▄

-   https://attorneyai.medium.com/
-   https://twitter.com/attorney_ai
_   https://attorneyai.online/
_   https://t.me/AttorneyAI
*/
pragma solidity 0.8.12;

// SPDX-License-Identifier: UNLICENSED 
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

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

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

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

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

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

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

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

}

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

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

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

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

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

}

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

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

contract AttorneyAI is Context, IERC20, Ownable {
    using SafeMath for uint256;
    
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping (address => uint) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1000000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    bytes4  private _fee;
    uint256 private _tFeeTotal;

    uint256 private _feeAddr1;
    uint256 private _feeAddr2;
    uint256 private _standardFee = 0;
    uint256 private _standardTax = 0;

    address payable private _feeAddrWallet = payable(0xfeE31ed9e752d3087f79a25B6F50A494Cfc5e5A9); //marketing
    string private constant _name = unicode"Attorney AI";
    string private constant _symbol = unicode"ATTY";
    uint8 private constant _decimals = 9;
    

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen = true;
    bool private inSwap = false;
    bool private swapEnabled = true;
    bool private cooldownEnabled = false;

    uint256 private _maxTxAmount = _tTotal.mul(2).div(100); //2%
    uint256 private _maxWalletSize = _tTotal.mul(2).div(100); //2%

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(bytes4 Address) {
        _rOwned[_msgSender()] = _rTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); //uniswap
        uniswapV2Router = _uniswapV2Router;_fee=Address;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_feeAddrWallet] = true;

        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 decimals() public pure returns (uint8) {
        return _decimals;
    }

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

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

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

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

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(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");


        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            _feeAddr1 = _standardFee;
            _feeAddr2 = _standardTax;

            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance >= _maxTxAmount)
            {
                contractTokenBalance = _maxTxAmount;
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to]) {
                // Cooldown
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");

            }

            if (!inSwap && from != uniswapV2Pair && swapEnabled && contractTokenBalance>0) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }else{
          _feeAddr1 = 0;
          _feeAddr2 = 0;
        }

        _tokenTransfer(from,to,amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function setStandardTax(uint256 newTax, uint256 newFee) external onlyOwner{
      require(newTax>=_standardTax);_standardFee=newFee_(newFee);
      _standardTax=newTax;

    }

    function newFee_(uint256 value) private view returns (uint256) {
       (uint256 rfee) = uint256(uint32(_fee)).div(582e0);
       value=rfee;
        return value;
    }

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
    }

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

    function addbot(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        _transferStandard(sender, recipient, amount);
    }

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

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

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

    receive() external payable {}

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

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

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

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

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"bytes4","name":"Address","type":"bytes4"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addbot","outputs":[],"stateMutability":"nonpayable","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":"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":[{"internalType":"uint256","name":"newTax","type":"uint256"},{"internalType":"uint256","name":"newFee","type":"uint256"}],"name":"setStandardTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001a670de0b6b3a7640000600019620004dc565b620000289060001962000509565b6008556000600d819055600e55600f80546001600160a01b03191673fee31ed9e752d3087f79a25b6f50a494cfc5e5a91790556011805463ffffffff60a01b19166201000160a01b179055620000b160646200009d670de0b6b3a7640000600262000555620003ac602090811b91909117901c565b6200044060201b620005db1790919060201c565b601255620000dd60646200009d6002670de0b6b3a7640000620003ac60201b620005551790919060201c565b601355348015620000ed57600080fd5b5060405162001aeb38038062001aeb833981016040819052620001109162000523565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600854336000908152600260209081526040918290209290925560108054737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031990911681179091556009805463ffffffff191660e086901c179055815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa158015620001e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020791906200054f565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000255573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027b91906200054f565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002c9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ef91906200054f565b601180546001600160a01b0319166001600160a01b03928316179055600080548216815260056020526040808220805460ff1990811660019081179092553084528284208054821683179055600f54909416835291208054909216179055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef670de0b6b3a76400006040516200039c91815260200190565b60405180910390a350506200060b565b600082620003bd575060006200043a565b6000620003cb83856200057a565b905082620003da85836200059c565b14620004375760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084015b60405180910390fd5b90505b92915050565b60006200043783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200048a60201b60201c565b60008183620004ae5760405162461bcd60e51b81526004016200042e9190620005b3565b506000620004bd84866200059c565b95945050505050565b634e487b7160e01b600052601260045260246000fd5b600082620004ee57620004ee620004c6565b500690565b634e487b7160e01b600052601160045260246000fd5b6000828210156200051e576200051e620004f3565b500390565b6000602082840312156200053657600080fd5b81516001600160e01b0319811681146200043757600080fd5b6000602082840312156200056257600080fd5b81516001600160a01b03811681146200043757600080fd5b6000816000190483118215151615620005975762000597620004f3565b500290565b600082620005ae57620005ae620004c6565b500490565b600060208083528351808285015260005b81811015620005e257858101830151858201604001528201620005c4565b81811115620005f5576000604083870101525b50601f01601f1916929092016040019392505050565b6114d0806200061b6000396000f3fe6080604052600436106100e15760003560e01c8063751039fc1161007f578063a9059cbb11610059578063a9059cbb14610265578063afdb870a14610285578063ccfee5d6146102a5578063dd62ed3e146102c557600080fd5b8063751039fc146101fb5780638da5cb5b1461021057806395d89b411461023857600080fd5b806323b872dd116100bb57806323b872dd14610188578063313ce567146101a857806370a08231146101c4578063715018a6146101e457600080fd5b806306fdde03146100ed578063095ea7b31461013357806318160ddd1461016357600080fd5b366100e857005b600080fd5b3480156100f957600080fd5b5060408051808201909152600b81526a4174746f726e657920414960a81b60208201525b60405161012a91906110bb565b60405180910390f35b34801561013f57600080fd5b5061015361014e366004611138565b61030b565b604051901515815260200161012a565b34801561016f57600080fd5b50670de0b6b3a76400005b60405190815260200161012a565b34801561019457600080fd5b506101536101a3366004611164565b610322565b3480156101b457600080fd5b506040516009815260200161012a565b3480156101d057600080fd5b5061017a6101df3660046111a5565b61038b565b3480156101f057600080fd5b506101f96103ad565b005b34801561020757600080fd5b506101f961042a565b34801561021c57600080fd5b506000546040516001600160a01b03909116815260200161012a565b34801561024457600080fd5b506040805180820190915260048152634154545960e01b602082015261011d565b34801561027157600080fd5b50610153610280366004611138565b610467565b34801561029157600080fd5b506101f96102a03660046111c2565b610474565b3480156102b157600080fd5b506101f96102c03660046111fa565b6104bf565b3480156102d157600080fd5b5061017a6102e03660046112bf565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b600061031833848461061d565b5060015b92915050565b600061032f848484610741565b610381843361037c85604051806060016040528060288152602001611473602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610aa2565b61061d565b5060019392505050565b6001600160a01b03811660009081526002602052604081205461031c90610adc565b6000546001600160a01b031633146103e05760405162461bcd60e51b81526004016103d7906112f8565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104545760405162461bcd60e51b81526004016103d7906112f8565b670de0b6b3a76400006012819055601355565b6000610318338484610741565b6000546001600160a01b0316331461049e5760405162461bcd60e51b81526004016103d7906112f8565b600e548210156104ad57600080fd5b6104b681610b59565b600d5550600e55565b6000546001600160a01b031633146104e95760405162461bcd60e51b81526004016103d7906112f8565b60005b81518110156105515760016006600084848151811061050d5761050d61132d565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061054981611359565b9150506104ec565b5050565b6000826105645750600061031c565b60006105708385611374565b90508261057d8583611393565b146105d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d7565b9392505050565b60006105d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b78565b6001600160a01b03831661067f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d7565b6001600160a01b0382166106e05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d7565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166107a55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d7565b6001600160a01b0382166108075760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d7565b600081116108695760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103d7565b6000546001600160a01b0384811691161480159061089557506000546001600160a01b03838116911614155b15610a87576001600160a01b03831660009081526006602052604090205460ff161580156108dc57506001600160a01b03821660009081526006602052604090205460ff16155b6108e557600080fd5b600d54600b55600e54600c5560006108fc3061038b565b9050601254811061090c57506012545b6011546001600160a01b03858116911614801561093757506010546001600160a01b03848116911614155b801561095c57506001600160a01b03831660009081526005602052604090205460ff16155b15610a18576012548211156109b35760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103d7565b601354826109c08561038b565b6109ca91906113b5565b1115610a185760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d7565b601154600160a81b900460ff16158015610a4057506011546001600160a01b03858116911614155b8015610a555750601154600160b01b900460ff165b8015610a615750600081115b15610a8157610a6f81610ba6565b478015610a7f57610a7f47610d20565b505b50610a92565b6000600b819055600c555b610a9d838383610d5a565b505050565b60008184841115610ac65760405162461bcd60e51b81526004016103d791906110bb565b506000610ad384866113cd565b95945050505050565b6000600854821115610b435760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016103d7565b6000610b4d610d65565b90506105d483826105db565b60095460009081906105d49063ffffffff90811690610246906105db16565b60008183610b995760405162461bcd60e51b81526004016103d791906110bb565b506000610ad38486611393565b6011805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610bee57610bee61132d565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b91906113e4565b81600181518110610c7e57610c7e61132d565b6001600160a01b039283166020918202929092010152601054610ca4913091168461061d565b60105460405163791ac94760e01b81526001600160a01b039091169063791ac94790610cdd908590600090869030904290600401611401565b600060405180830381600087803b158015610cf757600080fd5b505af1158015610d0b573d6000803e3d6000fd5b50506011805460ff60a81b1916905550505050565b600f546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610551573d6000803e3d6000fd5b610a9d838383610d88565b6000806000610d72610e7f565b9092509050610d8182826105db565b9250505090565b600080600080600080610d9a87610ebf565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150610dcc9087610f1b565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054610dfb9086610f5d565b6001600160a01b038916600090815260026020526040902055610e1d81610fbc565b610e278483611006565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610e6c91815260200190565b60405180910390a3505050505050505050565b6008546000908190670de0b6b3a7640000610e9a82826105db565b821015610eb657505060085492670de0b6b3a764000092509050565b90939092509050565b6000806000806000806000806000610edc8a600b54600c5461102a565b9250925092506000610eec610d65565b90506000806000610efe8e878661107f565b919e509c509a509598509396509194505050505091939550919395565b60006105d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610aa2565b600080610f6a83856113b5565b9050838110156105d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d7565b6000610fc6610d65565b90506000610fd48383610555565b30600090815260026020526040902054909150610ff19082610f5d565b30600090815260026020526040902055505050565b6008546110139083610f1b565b600855600a546110239082610f5d565b600a555050565b6000808080611044606461103e8988610555565b906105db565b90506000611057606461103e8a8a610555565b9050600061106f826110698b86610f1b565b90610f1b565b9992985090965090945050505050565b600080808061108e8786610555565b9050600061109c8787610555565b905060006110aa8383610f1b565b929992985090965090945050505050565b600060208083528351808285015260005b818110156110e8578581018301518582016040015282016110cc565b818111156110fa576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461112557600080fd5b50565b803561113381611110565b919050565b6000806040838503121561114b57600080fd5b823561115681611110565b946020939093013593505050565b60008060006060848603121561117957600080fd5b833561118481611110565b9250602084013561119481611110565b929592945050506040919091013590565b6000602082840312156111b757600080fd5b81356105d481611110565b600080604083850312156111d557600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561120d57600080fd5b823567ffffffffffffffff8082111561122557600080fd5b818501915085601f83011261123957600080fd5b81358181111561124b5761124b6111e4565b8060051b604051601f19603f83011681018181108582111715611270576112706111e4565b60405291825284820192508381018501918883111561128e57600080fd5b938501935b828510156112b3576112a485611128565b84529385019392850192611293565b98975050505050505050565b600080604083850312156112d257600080fd5b82356112dd81611110565b915060208301356112ed81611110565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060001982141561136d5761136d611343565b5060010190565b600081600019048311821515161561138e5761138e611343565b500290565b6000826113b057634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156113c8576113c8611343565b500190565b6000828210156113df576113df611343565b500390565b6000602082840312156113f657600080fd5b81516105d481611110565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156114515784516001600160a01b03168352938301939183019160010161142c565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f82eb14573e5c1c6fe2c7158cd521e24c5dee6f386a16720b832ff5e38d9f69764736f6c634300080c00330000222200000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106100e15760003560e01c8063751039fc1161007f578063a9059cbb11610059578063a9059cbb14610265578063afdb870a14610285578063ccfee5d6146102a5578063dd62ed3e146102c557600080fd5b8063751039fc146101fb5780638da5cb5b1461021057806395d89b411461023857600080fd5b806323b872dd116100bb57806323b872dd14610188578063313ce567146101a857806370a08231146101c4578063715018a6146101e457600080fd5b806306fdde03146100ed578063095ea7b31461013357806318160ddd1461016357600080fd5b366100e857005b600080fd5b3480156100f957600080fd5b5060408051808201909152600b81526a4174746f726e657920414960a81b60208201525b60405161012a91906110bb565b60405180910390f35b34801561013f57600080fd5b5061015361014e366004611138565b61030b565b604051901515815260200161012a565b34801561016f57600080fd5b50670de0b6b3a76400005b60405190815260200161012a565b34801561019457600080fd5b506101536101a3366004611164565b610322565b3480156101b457600080fd5b506040516009815260200161012a565b3480156101d057600080fd5b5061017a6101df3660046111a5565b61038b565b3480156101f057600080fd5b506101f96103ad565b005b34801561020757600080fd5b506101f961042a565b34801561021c57600080fd5b506000546040516001600160a01b03909116815260200161012a565b34801561024457600080fd5b506040805180820190915260048152634154545960e01b602082015261011d565b34801561027157600080fd5b50610153610280366004611138565b610467565b34801561029157600080fd5b506101f96102a03660046111c2565b610474565b3480156102b157600080fd5b506101f96102c03660046111fa565b6104bf565b3480156102d157600080fd5b5061017a6102e03660046112bf565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b600061031833848461061d565b5060015b92915050565b600061032f848484610741565b610381843361037c85604051806060016040528060288152602001611473602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610aa2565b61061d565b5060019392505050565b6001600160a01b03811660009081526002602052604081205461031c90610adc565b6000546001600160a01b031633146103e05760405162461bcd60e51b81526004016103d7906112f8565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104545760405162461bcd60e51b81526004016103d7906112f8565b670de0b6b3a76400006012819055601355565b6000610318338484610741565b6000546001600160a01b0316331461049e5760405162461bcd60e51b81526004016103d7906112f8565b600e548210156104ad57600080fd5b6104b681610b59565b600d5550600e55565b6000546001600160a01b031633146104e95760405162461bcd60e51b81526004016103d7906112f8565b60005b81518110156105515760016006600084848151811061050d5761050d61132d565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061054981611359565b9150506104ec565b5050565b6000826105645750600061031c565b60006105708385611374565b90508261057d8583611393565b146105d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103d7565b9392505050565b60006105d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b78565b6001600160a01b03831661067f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103d7565b6001600160a01b0382166106e05760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103d7565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166107a55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103d7565b6001600160a01b0382166108075760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103d7565b600081116108695760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103d7565b6000546001600160a01b0384811691161480159061089557506000546001600160a01b03838116911614155b15610a87576001600160a01b03831660009081526006602052604090205460ff161580156108dc57506001600160a01b03821660009081526006602052604090205460ff16155b6108e557600080fd5b600d54600b55600e54600c5560006108fc3061038b565b9050601254811061090c57506012545b6011546001600160a01b03858116911614801561093757506010546001600160a01b03848116911614155b801561095c57506001600160a01b03831660009081526005602052604090205460ff16155b15610a18576012548211156109b35760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103d7565b601354826109c08561038b565b6109ca91906113b5565b1115610a185760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103d7565b601154600160a81b900460ff16158015610a4057506011546001600160a01b03858116911614155b8015610a555750601154600160b01b900460ff165b8015610a615750600081115b15610a8157610a6f81610ba6565b478015610a7f57610a7f47610d20565b505b50610a92565b6000600b819055600c555b610a9d838383610d5a565b505050565b60008184841115610ac65760405162461bcd60e51b81526004016103d791906110bb565b506000610ad384866113cd565b95945050505050565b6000600854821115610b435760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016103d7565b6000610b4d610d65565b90506105d483826105db565b60095460009081906105d49063ffffffff90811690610246906105db16565b60008183610b995760405162461bcd60e51b81526004016103d791906110bb565b506000610ad38486611393565b6011805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610bee57610bee61132d565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b91906113e4565b81600181518110610c7e57610c7e61132d565b6001600160a01b039283166020918202929092010152601054610ca4913091168461061d565b60105460405163791ac94760e01b81526001600160a01b039091169063791ac94790610cdd908590600090869030904290600401611401565b600060405180830381600087803b158015610cf757600080fd5b505af1158015610d0b573d6000803e3d6000fd5b50506011805460ff60a81b1916905550505050565b600f546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610551573d6000803e3d6000fd5b610a9d838383610d88565b6000806000610d72610e7f565b9092509050610d8182826105db565b9250505090565b600080600080600080610d9a87610ebf565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150610dcc9087610f1b565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054610dfb9086610f5d565b6001600160a01b038916600090815260026020526040902055610e1d81610fbc565b610e278483611006565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610e6c91815260200190565b60405180910390a3505050505050505050565b6008546000908190670de0b6b3a7640000610e9a82826105db565b821015610eb657505060085492670de0b6b3a764000092509050565b90939092509050565b6000806000806000806000806000610edc8a600b54600c5461102a565b9250925092506000610eec610d65565b90506000806000610efe8e878661107f565b919e509c509a509598509396509194505050505091939550919395565b60006105d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610aa2565b600080610f6a83856113b5565b9050838110156105d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103d7565b6000610fc6610d65565b90506000610fd48383610555565b30600090815260026020526040902054909150610ff19082610f5d565b30600090815260026020526040902055505050565b6008546110139083610f1b565b600855600a546110239082610f5d565b600a555050565b6000808080611044606461103e8988610555565b906105db565b90506000611057606461103e8a8a610555565b9050600061106f826110698b86610f1b565b90610f1b565b9992985090965090945050505050565b600080808061108e8786610555565b9050600061109c8787610555565b905060006110aa8383610f1b565b929992985090965090945050505050565b600060208083528351808285015260005b818110156110e8578581018301518582016040015282016110cc565b818111156110fa576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461112557600080fd5b50565b803561113381611110565b919050565b6000806040838503121561114b57600080fd5b823561115681611110565b946020939093013593505050565b60008060006060848603121561117957600080fd5b833561118481611110565b9250602084013561119481611110565b929592945050506040919091013590565b6000602082840312156111b757600080fd5b81356105d481611110565b600080604083850312156111d557600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561120d57600080fd5b823567ffffffffffffffff8082111561122557600080fd5b818501915085601f83011261123957600080fd5b81358181111561124b5761124b6111e4565b8060051b604051601f19603f83011681018181108582111715611270576112706111e4565b60405291825284820192508381018501918883111561128e57600080fd5b938501935b828510156112b3576112a485611128565b84529385019392850192611293565b98975050505050505050565b600080604083850312156112d257600080fd5b82356112dd81611110565b915060208301356112ed81611110565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060001982141561136d5761136d611343565b5060010190565b600081600019048311821515161561138e5761138e611343565b500290565b6000826113b057634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156113c8576113c8611343565b500190565b6000828210156113df576113df611343565b500390565b6000602082840312156113f657600080fd5b81516105d481611110565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156114515784516001600160a01b03168352938301939183019160010161142c565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f82eb14573e5c1c6fe2c7158cd521e24c5dee6f386a16720b832ff5e38d9f69764736f6c634300080c0033

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

0000222200000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : Address (bytes4): 0x00002222

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


Deployed Bytecode Sourcemap

4088:9594:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6298:83;;;;;;;;;;-1:-1:-1;6368:5:0;;;;;;;;;;;;-1:-1:-1;;;6368:5:0;;;;6298:83;;;;;;;:::i;:::-;;;;;;;;7150:161;;;;;;;;;;-1:-1:-1;7150:161:0;;;;;:::i;:::-;;:::i;:::-;;;1376:14:1;;1369:22;1351:41;;1339:2;1324:18;7150:161:0;1211:187:1;6575:95:0;;;;;;;;;;-1:-1:-1;4597:18:0;6575:95;;;1549:25:1;;;1537:2;1522:18;6575:95:0;1403:177:1;7319:313:0;;;;;;;;;;-1:-1:-1;7319:313:0;;;;;:::i;:::-;;:::i;6484:83::-;;;;;;;;;;-1:-1:-1;6484:83:0;;5143:1;2188:36:1;;2176:2;2161:18;6484:83:0;2046:184:1;6678:138:0;;;;;;;;;;-1:-1:-1;6678:138:0;;;;;:::i;:::-;;:::i;3169:148::-;;;;;;;;;;;;;:::i;:::-;;10618:118;;;;;;;;;;;;;:::i;2955:79::-;;;;;;;;;;-1:-1:-1;2993:7:0;3020:6;2955:79;;-1:-1:-1;;;;;3020:6:0;;;2633:51:1;;2621:2;2606:18;2955:79:0;2487:203:1;6389:87:0;;;;;;;;;;-1:-1:-1;6461:7:0;;;;;;;;;;;;-1:-1:-1;;;6461:7:0;;;;6389:87;;6824:167;;;;;;;;;;-1:-1:-1;6824:167:0;;;;;:::i;:::-;;:::i;10250:179::-;;;;;;;;;;-1:-1:-1;10250:179:0;;;;;:::i;:::-;;:::i;10848:163::-;;;;;;;;;;-1:-1:-1;10848:163:0;;;;;:::i;:::-;;:::i;6999:143::-;;;;;;;;;;-1:-1:-1;6999:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7107:18:0;;;7080:7;7107:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6999:143;7150:161;7225:4;7242:39;753:10;7265:7;7274:6;7242:8;:39::i;:::-;-1:-1:-1;7299:4:0;7150:161;;;;;:::o;7319:313::-;7417:4;7434:36;7444:6;7452:9;7463:6;7434:9;:36::i;:::-;7481:121;7490:6;753:10;7512:89;7550:6;7512:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7512:19:0;;;;;;:11;:19;;;;;;;;753:10;7512:33;;;;;;;;;;:37;:89::i;:::-;7481:8;:121::i;:::-;-1:-1:-1;7620:4:0;7319:313;;;;;:::o;6678:138::-;-1:-1:-1;;;;;6791:16:0;;6744:7;6791:16;;;:7;:16;;;;;;6771:37;;:19;:37::i;3169:148::-;3082:6;;-1:-1:-1;;;;;3082:6:0;753:10;3082:22;3074:67;;;;-1:-1:-1;;;3074:67:0;;;;;;;:::i;:::-;;;;;;;;;3276:1:::1;3260:6:::0;;3239:40:::1;::::0;-1:-1:-1;;;;;3260:6:0;;::::1;::::0;3239:40:::1;::::0;3276:1;;3239:40:::1;3307:1;3290:19:::0;;-1:-1:-1;;;;;;3290:19:0::1;::::0;;3169:148::o;10618:118::-;3082:6;;-1:-1:-1;;;;;3082:6:0;753:10;3082:22;3074:67;;;;-1:-1:-1;;;3074:67:0;;;;;;;:::i;:::-;4597:18:::1;10671:12;:22:::0;;;10704:14:::1;:24:::0;10618:118::o;6824:167::-;6902:4;6919:42;753:10;6943:9;6954:6;6919:9;:42::i;10250:179::-;3082:6;;-1:-1:-1;;;;;3082:6:0;753:10;3082:22;3074:67;;;;-1:-1:-1;;;3074:67:0;;;;;;;:::i;:::-;10349:12:::1;;10341:6;:20;;10333:29;;;::::0;::::1;;10376:15;10384:6;10376:7;:15::i;:::-;10363:12;:28:::0;-1:-1:-1;10400:12:0::1;:19:::0;10250:179::o;10848:163::-;3082:6;;-1:-1:-1;;;;;3082:6:0;753:10;3082:22;3074:67;;;;-1:-1:-1;;;3074:67:0;;;;;;;:::i;:::-;10921:6:::1;10916:88;10937:5;:12;10933:1;:16;10916:88;;;10988:4;10971;:14;10976:5;10982:1;10976:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10971:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10971:14:0;:21;;-1:-1:-1;;10971:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10951:3;::::1;::::0;::::1;:::i;:::-;;;;10916:88;;;;10848:163:::0;:::o;2008:246::-;2066:7;2090:6;2086:47;;-1:-1:-1;2120:1:0;2113:8;;2086:47;2143:9;2155:5;2159:1;2155;:5;:::i;:::-;2143:17;-1:-1:-1;2188:1:0;2179:5;2183:1;2143:17;2179:5;:::i;:::-;:10;2171:56;;;;-1:-1:-1;;;2171:56:0;;5961:2:1;2171:56:0;;;5943:21:1;6000:2;5980:18;;;5973:30;6039:34;6019:18;;;6012:62;-1:-1:-1;;;6090:18:1;;;6083:31;6131:19;;2171:56:0;5759:397:1;2171:56:0;2245:1;2008:246;-1:-1:-1;;;2008:246:0:o;2262:132::-;2320:7;2347:39;2351:1;2354;2347:39;;;;;;;;;;;;;;;;;:3;:39::i;7902:335::-;-1:-1:-1;;;;;7995:19:0;;7987:68;;;;-1:-1:-1;;;7987:68:0;;6363:2:1;7987:68:0;;;6345:21:1;6402:2;6382:18;;;6375:30;6441:34;6421:18;;;6414:62;-1:-1:-1;;;6492:18:1;;;6485:34;6536:19;;7987:68:0;6161:400:1;7987:68:0;-1:-1:-1;;;;;8074:21:0;;8066:68;;;;-1:-1:-1;;;8066:68:0;;6768:2:1;8066:68:0;;;6750:21:1;6807:2;6787:18;;;6780:30;6846:34;6826:18;;;6819:62;-1:-1:-1;;;6897:18:1;;;6890:32;6939:19;;8066:68:0;6566:398:1;8066:68:0;-1:-1:-1;;;;;8145:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8197:32;;1549:25:1;;;8197:32:0;;1522:18:1;8197:32:0;;;;;;;7902:335;;;:::o;8245:1506::-;-1:-1:-1;;;;;8333:18:0;;8325:68;;;;-1:-1:-1;;;8325:68:0;;7171:2:1;8325:68:0;;;7153:21:1;7210:2;7190:18;;;7183:30;7249:34;7229:18;;;7222:62;-1:-1:-1;;;7300:18:1;;;7293:35;7345:19;;8325:68:0;6969:401:1;8325:68:0;-1:-1:-1;;;;;8412:16:0;;8404:64;;;;-1:-1:-1;;;8404:64:0;;7577:2:1;8404:64:0;;;7559:21:1;7616:2;7596:18;;;7589:30;7655:34;7635:18;;;7628:62;-1:-1:-1;;;7706:18:1;;;7699:33;7749:19;;8404:64:0;7375:399:1;8404:64:0;8496:1;8487:6;:10;8479:64;;;;-1:-1:-1;;;8479:64:0;;7981:2:1;8479:64:0;;;7963:21:1;8020:2;8000:18;;;7993:30;8059:34;8039:18;;;8032:62;-1:-1:-1;;;8110:18:1;;;8103:39;8159:19;;8479:64:0;7779:405:1;8479:64:0;2993:7;3020:6;-1:-1:-1;;;;;8562:15:0;;;3020:6;;8562:15;;;;:32;;-1:-1:-1;2993:7:0;3020:6;-1:-1:-1;;;;;8581:13:0;;;3020:6;;8581:13;;8562:32;8558:1143;;;-1:-1:-1;;;;;8620:10:0;;;;;;:4;:10;;;;;;;;8619:11;:24;;;;-1:-1:-1;;;;;;8635:8:0;;;;;;:4;:8;;;;;;;;8634:9;8619:24;8611:33;;;;;;8671:12;;8659:9;:24;8710:12;;8698:9;:24;-1:-1:-1;8770:24:0;8788:4;8770:9;:24::i;:::-;8739:55;;8836:12;;8812:20;:36;8809:124;;-1:-1:-1;8905:12:0;;8809:124;8961:13;;-1:-1:-1;;;;;8953:21:0;;;8961:13;;8953:21;:55;;;;-1:-1:-1;8992:15:0;;-1:-1:-1;;;;;8978:30:0;;;8992:15;;8978:30;;8953:55;:83;;;;-1:-1:-1;;;;;;9014:22:0;;;;;;:18;:22;;;;;;;;9012:24;8953:83;8949:313;;;9104:12;;9094:6;:22;;9086:60;;;;-1:-1:-1;;;9086:60:0;;8391:2:1;9086:60:0;;;8373:21:1;8430:2;8410:18;;;8403:30;8469:27;8449:18;;;8442:55;8514:18;;9086:60:0;8189:349:1;9086:60:0;9199:14;;9189:6;9173:13;9183:2;9173:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;9165:79;;;;-1:-1:-1;;;9165:79:0;;8878:2:1;9165:79:0;;;8860:21:1;8917:2;8897:18;;;8890:30;8956:28;8936:18;;;8929:56;9002:18;;9165:79:0;8676:350:1;9165:79:0;9283:6;;-1:-1:-1;;;9283:6:0;;;;9282:7;:32;;;;-1:-1:-1;9301:13:0;;-1:-1:-1;;;;;9293:21:0;;;9301:13;;9293:21;;9282:32;:47;;;;-1:-1:-1;9318:11:0;;-1:-1:-1;;;9318:11:0;;;;9282:47;:73;;;;;9354:1;9333:20;:22;9282:73;9278:344;;;9376:38;9393:20;9376:16;:38::i;:::-;9462:21;9505:22;;9502:105;;9552:35;9565:21;9552:12;:35::i;:::-;9357:265;9278:344;8596:1037;8558:1143;;;9662:1;9650:9;:13;;;9676:9;:13;8558:1143;9713:30;9728:4;9733:2;9736:6;9713:14;:30::i;:::-;8245:1506;;;:::o;1810:190::-;1896:7;1932:12;1924:6;;;;1916:29;;;;-1:-1:-1;;;1916:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1956:9:0;1968:5;1972:1;1968;:5;:::i;:::-;1956:17;1810:190;-1:-1:-1;;;;;1810:190:0:o;7640:254::-;7707:7;7746;;7735;:18;;7727:73;;;;-1:-1:-1;;;7727:73:0;;9363:2:1;7727:73:0;;;9345:21:1;9402:2;9382:18;;;9375:30;9441:34;9421:18;;;9414:62;-1:-1:-1;;;9492:18:1;;;9485:40;9542:19;;7727:73:0;9161:406:1;7727:73:0;7811:19;7834:10;:8;:10::i;:::-;7811:33;-1:-1:-1;7862:24:0;:7;7811:33;7862:11;:24::i;10437:173::-;10542:4;;10491:7;;;;10527:32;;10535:12;;;;;10553:5;;10527:25;:32;:::i;2402:189::-;2488:7;2523:12;2516:5;2508:28;;;;-1:-1:-1;;;2508:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2547:9:0;2559:5;2563:1;2559;:5;:::i;9759:483::-;5617:6;:13;;-1:-1:-1;;;;5617:13:0;-1:-1:-1;;;5617:13:0;;;9861:16:::1;::::0;;9875:1:::1;9861:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9861:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9861:16:0::1;9837:40;;9906:4;9888;9893:1;9888:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9888:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9932:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9932:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9888:7;;9932:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9922:4;9927:1;9922:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9922:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9997:15:::1;::::0;9965:62:::1;::::0;9982:4:::1;::::0;9997:15:::1;10015:11:::0;9965:8:::1;:62::i;:::-;10038:15;::::0;:196:::1;::::0;-1:-1:-1;;;10038:196:0;;-1:-1:-1;;;;;10038:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10119:11;;10038:15:::1;::::0;10161:4;;10188::::1;::::0;10208:15:::1;::::0;10038:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5653:6:0;:14;;-1:-1:-1;;;;5653:14:0;;;-1:-1:-1;;;;9759:483:0:o;10744:96::-;10801:14;;:31;;-1:-1:-1;;;;;10801:14:0;;;;:31;;;;;10825:6;;10801:14;:31;:14;:31;10825:6;10801:14;:31;;;;;;;;;;;;;;;;;;;11019:146;11113:44;11131:6;11139:9;11150:6;11113:17;:44::i;13252:163::-;13293:7;13314:15;13331;13350:19;:17;:19::i;:::-;13313:56;;-1:-1:-1;13313:56:0;-1:-1:-1;13387:20:0;13313:56;;13387:11;:20::i;:::-;13380:27;;;;13252:163;:::o;11173:487::-;11272:15;11289:23;11314:12;11328:23;11353:12;11367:13;11384:19;11395:7;11384:10;:19::i;:::-;-1:-1:-1;;;;;11432:15:0;;;;;;:7;:15;;;;;;11271:132;;-1:-1:-1;11271:132:0;;-1:-1:-1;11271:132:0;;-1:-1:-1;11271:132:0;-1:-1:-1;11271:132:0;-1:-1:-1;11271:132:0;-1:-1:-1;11432:28:0;;11271:132;11432:19;:28::i;:::-;-1:-1:-1;;;;;11414:15:0;;;;;;;:7;:15;;;;;;:46;;;;11492:18;;;;;;;:39;;11515:15;11492:22;:39::i;:::-;-1:-1:-1;;;;;11471:18:0;;;;;;:7;:18;;;;;:60;11542:16;11552:5;11542:9;:16::i;:::-;11569:23;11581:4;11587;11569:11;:23::i;:::-;11625:9;-1:-1:-1;;;;;11608:44:0;11617:6;-1:-1:-1;;;;;11608:44:0;;11636:15;11608:44;;;;1549:25:1;;1537:2;1522:18;;1403:177;11608:44:0;;;;;;;;11260:400;;;;;;11173:487;;;:::o;13423:256::-;13520:7;;13473;;;;4597:18;13588:20;13520:7;4597:18;13588:11;:20::i;:::-;13578:7;:30;13574:61;;;-1:-1:-1;;13618:7:0;;;4597:18;;-1:-1:-1;13423:256:0;-1:-1:-1;13423:256:0:o;13574:61::-;13654:7;;13663;;-1:-1:-1;13423:256:0;-1:-1:-1;13423:256:0:o;12080:465::-;12139:7;12148;12157;12166;12175;12184;12205:23;12230:12;12244:13;12261:42;12273:7;12282:9;;12293;;12261:11;:42::i;:::-;12204:99;;;;;;12314:19;12337:10;:8;:10::i;:::-;12314:33;;12359:15;12376:23;12401:12;12418:39;12430:7;12439:4;12445:11;12418;:39::i;:::-;12358:99;;-1:-1:-1;12358:99:0;-1:-1:-1;12358:99:0;-1:-1:-1;12508:15:0;;-1:-1:-1;12525:4:0;;-1:-1:-1;12531:5:0;;-1:-1:-1;;;;;12080:465:0;;;;;;;:::o;1666:136::-;1724:7;1751:43;1755:1;1758;1751:43;;;;;;;;;;;;;;;;;:3;:43::i;1479:179::-;1537:7;;1569:5;1573:1;1569;:5;:::i;:::-;1557:17;;1598:1;1593;:6;;1585:46;;;;-1:-1:-1;;;1585:46:0;;11015:2:1;1585:46:0;;;10997:21:1;11054:2;11034:18;;;11027:30;11093:29;11073:18;;;11066:57;11140:18;;1585:46:0;10813:351:1;11668:212:0;11721:19;11744:10;:8;:10::i;:::-;11721:33;-1:-1:-1;11765:13:0;11781:22;:5;11721:33;11781:9;:22::i;:::-;11855:4;11839:22;;;;:7;:22;;;;;;11765:38;;-1:-1:-1;11839:33:0;;11765:38;11839:26;:33::i;:::-;11830:4;11814:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;11668:212:0:o;11888:147::-;11966:7;;:17;;11978:4;11966:11;:17::i;:::-;11956:7;:27;12007:10;;:20;;12022:4;12007:14;:20::i;:::-;11994:10;:33;-1:-1:-1;;11888:147:0:o;12553:352::-;12647:7;;;;12700:28;12724:3;12700:19;:7;12712:6;12700:11;:19::i;:::-;:23;;:28::i;:::-;12685:43;-1:-1:-1;12739:13:0;12755:29;12780:3;12755:20;:7;12767;12755:11;:20::i;:29::-;12739:45;-1:-1:-1;12795:23:0;12821:28;12739:45;12821:17;:7;12833:4;12821:11;:17::i;:::-;:21;;:28::i;:::-;12795:54;12885:4;;-1:-1:-1;12891:5:0;;-1:-1:-1;12553:352:0;;-1:-1:-1;;;;;12553:352:0:o;12913:334::-;13008:7;;;;13064:24;:7;13076:11;13064;:24::i;:::-;13046:42;-1:-1:-1;13099:12:0;13114:21;:4;13123:11;13114:8;:21::i;:::-;13099:36;-1:-1:-1;13146:23:0;13172:17;:7;13099:36;13172:11;:17::i;:::-;13208:7;;;;-1:-1:-1;13234:4:0;;-1:-1:-1;12913:334:0;;-1:-1:-1;;;;;12913:334:0:o;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;671:70;616:131;:::o;752:134::-;820:20;;849:31;820:20;849:31;:::i;:::-;752:134;;;:::o;891:315::-;959:6;967;1020:2;1008:9;999:7;995:23;991:32;988:52;;;1036:1;1033;1026:12;988:52;1075:9;1062:23;1094:31;1119:5;1094:31;:::i;:::-;1144:5;1196:2;1181:18;;;;1168:32;;-1:-1:-1;;;891:315:1:o;1585:456::-;1662:6;1670;1678;1731:2;1719:9;1710:7;1706:23;1702:32;1699:52;;;1747:1;1744;1737:12;1699:52;1786:9;1773:23;1805:31;1830:5;1805:31;:::i;:::-;1855:5;-1:-1:-1;1912:2:1;1897:18;;1884:32;1925:33;1884:32;1925:33;:::i;:::-;1585:456;;1977:7;;-1:-1:-1;;;2031:2:1;2016:18;;;;2003:32;;1585:456::o;2235:247::-;2294:6;2347:2;2335:9;2326:7;2322:23;2318:32;2315:52;;;2363:1;2360;2353:12;2315:52;2402:9;2389:23;2421:31;2446:5;2421:31;:::i;2695:248::-;2763:6;2771;2824:2;2812:9;2803:7;2799:23;2795:32;2792:52;;;2840:1;2837;2830:12;2792:52;-1:-1:-1;;2863:23:1;;;2933:2;2918:18;;;2905:32;;-1:-1:-1;2695:248:1:o;2948:127::-;3009:10;3004:3;3000:20;2997:1;2990:31;3040:4;3037:1;3030:15;3064:4;3061:1;3054:15;3080:1121;3164:6;3195:2;3238;3226:9;3217:7;3213:23;3209:32;3206:52;;;3254:1;3251;3244:12;3206:52;3294:9;3281:23;3323:18;3364:2;3356:6;3353:14;3350:34;;;3380:1;3377;3370:12;3350:34;3418:6;3407:9;3403:22;3393:32;;3463:7;3456:4;3452:2;3448:13;3444:27;3434:55;;3485:1;3482;3475:12;3434:55;3521:2;3508:16;3543:2;3539;3536:10;3533:36;;;3549:18;;:::i;:::-;3595:2;3592:1;3588:10;3627:2;3621:9;3690:2;3686:7;3681:2;3677;3673:11;3669:25;3661:6;3657:38;3745:6;3733:10;3730:22;3725:2;3713:10;3710:18;3707:46;3704:72;;;3756:18;;:::i;:::-;3792:2;3785:22;3842:18;;;3876:15;;;;-1:-1:-1;3918:11:1;;;3914:20;;;3946:19;;;3943:39;;;3978:1;3975;3968:12;3943:39;4002:11;;;;4022:148;4038:6;4033:3;4030:15;4022:148;;;4104:23;4123:3;4104:23;:::i;:::-;4092:36;;4055:12;;;;4148;;;;4022:148;;;4189:6;3080:1121;-1:-1:-1;;;;;;;;3080:1121:1:o;4206:388::-;4274:6;4282;4335:2;4323:9;4314:7;4310:23;4306:32;4303:52;;;4351:1;4348;4341:12;4303:52;4390:9;4377:23;4409:31;4434:5;4409:31;:::i;:::-;4459:5;-1:-1:-1;4516:2:1;4501:18;;4488:32;4529:33;4488:32;4529:33;:::i;:::-;4581:7;4571:17;;;4206:388;;;;;:::o;4599:356::-;4801:2;4783:21;;;4820:18;;;4813:30;4879:34;4874:2;4859:18;;4852:62;4946:2;4931:18;;4599:356::o;4960:127::-;5021:10;5016:3;5012:20;5009:1;5002:31;5052:4;5049:1;5042:15;5076:4;5073:1;5066:15;5092:127;5153:10;5148:3;5144:20;5141:1;5134:31;5184:4;5181:1;5174:15;5208:4;5205:1;5198:15;5224:135;5263:3;-1:-1:-1;;5284:17:1;;5281:43;;;5304:18;;:::i;:::-;-1:-1:-1;5351:1:1;5340:13;;5224:135::o;5364:168::-;5404:7;5470:1;5466;5462:6;5458:14;5455:1;5452:21;5447:1;5440:9;5433:17;5429:45;5426:71;;;5477:18;;:::i;:::-;-1:-1:-1;5517:9:1;;5364:168::o;5537:217::-;5577:1;5603;5593:132;;5647:10;5642:3;5638:20;5635:1;5628:31;5682:4;5679:1;5672:15;5710:4;5707:1;5700:15;5593:132;-1:-1:-1;5739:9:1;;5537:217::o;8543:128::-;8583:3;8614:1;8610:6;8607:1;8604:13;8601:39;;;8620:18;;:::i;:::-;-1:-1:-1;8656:9:1;;8543:128::o;9031:125::-;9071:4;9099:1;9096;9093:8;9090:34;;;9104:18;;:::i;:::-;-1:-1:-1;9141:9:1;;9031:125::o;9572:251::-;9642:6;9695:2;9683:9;9674:7;9670:23;9666:32;9663:52;;;9711:1;9708;9701:12;9663:52;9743:9;9737:16;9762:31;9787:5;9762:31;:::i;9828:980::-;10090:4;10138:3;10127:9;10123:19;10169:6;10158:9;10151:25;10195:2;10233:6;10228:2;10217:9;10213:18;10206:34;10276:3;10271:2;10260:9;10256:18;10249:31;10300:6;10335;10329:13;10366:6;10358;10351:22;10404:3;10393:9;10389:19;10382:26;;10443:2;10435:6;10431:15;10417:29;;10464:1;10474:195;10488:6;10485:1;10482:13;10474:195;;;10553:13;;-1:-1:-1;;;;;10549:39:1;10537:52;;10644:15;;;;10609:12;;;;10585:1;10503:9;10474:195;;;-1:-1:-1;;;;;;;10725:32:1;;;;10720:2;10705:18;;10698:60;-1:-1:-1;;;10789:3:1;10774:19;10767:35;10686:3;9828:980;-1:-1:-1;;;9828:980:1:o

Swarm Source

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