ETH Price: $3,111.73 (+0.45%)

Contract

0xa820cE5aa894dE295bae00eB07b52F72F2915E80
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve211965392024-11-16 0:01:352 days ago1731715295IN
0xa820cE5a...2F2915E80
0 ETH0.0008732818.74040346
Transfer211957222024-11-15 21:17:352 days ago1731705455IN
0xa820cE5a...2F2915E80
0 ETH0.0021070431.79200777
Approve211910622024-11-15 5:39:233 days ago1731649163IN
0xa820cE5a...2F2915E80
0 ETH0.0006809914.6327189
Approve211697142024-11-12 6:08:236 days ago1731391703IN
0xa820cE5a...2F2915E80
0 ETH0.0013068128.04379986
Approve211697142024-11-12 6:08:236 days ago1731391703IN
0xa820cE5a...2F2915E80
0 ETH0.0013068128.04379986
Approve211697142024-11-12 6:08:236 days ago1731391703IN
0xa820cE5a...2F2915E80
0 ETH0.0013068128.04379986
Approve211697142024-11-12 6:08:236 days ago1731391703IN
0xa820cE5a...2F2915E80
0 ETH0.0013068128.04379986
Approve211690592024-11-12 3:56:356 days ago1731383795IN
0xa820cE5a...2F2915E80
0 ETH0.0010150821.92451997
Approve211652182024-11-11 15:04:357 days ago1731337475IN
0xa820cE5a...2F2915E80
0 ETH0.0013595429.21294223
Approve211650162024-11-11 14:23:477 days ago1731335027IN
0xa820cE5a...2F2915E80
0 ETH0.0013134828.18698615
Approve211643972024-11-11 12:19:117 days ago1731327551IN
0xa820cE5a...2F2915E80
0 ETH0.0010489922.51110599
Approve211643542024-11-11 12:10:237 days ago1731327023IN
0xa820cE5a...2F2915E80
0 ETH0.0008570118.51050293
Approve211642032024-11-11 11:39:597 days ago1731325199IN
0xa820cE5a...2F2915E80
0 ETH0.0007931317.02049456
Approve211641962024-11-11 11:38:357 days ago1731325115IN
0xa820cE5a...2F2915E80
0 ETH0.0007492616.07906201
Approve211641502024-11-11 11:29:237 days ago1731324563IN
0xa820cE5a...2F2915E80
0 ETH0.0007316415.70082173
Approve211641072024-11-11 11:20:477 days ago1731324047IN
0xa820cE5a...2F2915E80
0 ETH0.0009621720.75478989
Approve211640982024-11-11 11:18:597 days ago1731323939IN
0xa820cE5a...2F2915E80
0 ETH0.0007848516.84269035
Approve211640502024-11-11 11:09:237 days ago1731323363IN
0xa820cE5a...2F2915E80
0 ETH0.0004743816.2466027
Approve211640242024-11-11 11:04:117 days ago1731323051IN
0xa820cE5a...2F2915E80
0 ETH0.000923319.81884279
Approve211640212024-11-11 11:03:357 days ago1731323015IN
0xa820cE5a...2F2915E80
0 ETH0.0007336615.74423964
Approve211639932024-11-11 10:57:597 days ago1731322679IN
0xa820cE5a...2F2915E80
0 ETH0.0003962515.04433359
Approve211639792024-11-11 10:55:117 days ago1731322511IN
0xa820cE5a...2F2915E80
0 ETH0.0007289915.64401739
Approve211639752024-11-11 10:54:237 days ago1731322463IN
0xa820cE5a...2F2915E80
0 ETH0.0006312413.5638319
Approve211639632024-11-11 10:51:597 days ago1731322319IN
0xa820cE5a...2F2915E80
0 ETH0.0007535116.19104277
Approve211639612024-11-11 10:51:357 days ago1731322295IN
0xa820cE5a...2F2915E80
0 ETH0.0007832716.83052077
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
211639262024-11-11 10:44:357 days ago1731321875
0xa820cE5a...2F2915E80
0.02990112 ETH
211639262024-11-11 10:44:357 days ago1731321875
0xa820cE5a...2F2915E80
0.02990112 ETH
211639082024-11-11 10:40:597 days ago1731321659
0xa820cE5a...2F2915E80
0.01655637 ETH
211639082024-11-11 10:40:597 days ago1731321659
0xa820cE5a...2F2915E80
0.01655637 ETH
211639072024-11-11 10:40:477 days ago1731321647
0xa820cE5a...2F2915E80
0.03334601 ETH
211639072024-11-11 10:40:477 days ago1731321647
0xa820cE5a...2F2915E80
0.03334601 ETH
211639062024-11-11 10:40:357 days ago1731321635
0xa820cE5a...2F2915E80
0.03924588 ETH
211639062024-11-11 10:40:357 days ago1731321635
0xa820cE5a...2F2915E80
0.03924588 ETH
211639042024-11-11 10:40:117 days ago1731321611
0xa820cE5a...2F2915E80
0.03057618 ETH
211639042024-11-11 10:40:117 days ago1731321611
0xa820cE5a...2F2915E80
0.03057618 ETH
211639042024-11-11 10:40:117 days ago1731321611
0xa820cE5a...2F2915E80
0.04388368 ETH
211639042024-11-11 10:40:117 days ago1731321611
0xa820cE5a...2F2915E80
0.04388368 ETH
211639022024-11-11 10:39:477 days ago1731321587
0xa820cE5a...2F2915E80
0.04902171 ETH
211639022024-11-11 10:39:477 days ago1731321587
0xa820cE5a...2F2915E80
0.04902171 ETH
211639012024-11-11 10:39:357 days ago1731321575
0xa820cE5a...2F2915E80
0.05687205 ETH
211639012024-11-11 10:39:357 days ago1731321575
0xa820cE5a...2F2915E80
0.05687205 ETH
211638972024-11-11 10:38:477 days ago1731321527
0xa820cE5a...2F2915E80
0.04640838 ETH
211638972024-11-11 10:38:477 days ago1731321527
0xa820cE5a...2F2915E80
0.04640838 ETH
211638902024-11-11 10:37:237 days ago1731321443
0xa820cE5a...2F2915E80
0.03048925 ETH
211638902024-11-11 10:37:237 days ago1731321443
0xa820cE5a...2F2915E80
0.03048925 ETH
211638832024-11-11 10:35:597 days ago1731321359
0xa820cE5a...2F2915E80
0.02179879 ETH
211638832024-11-11 10:35:597 days ago1731321359
0xa820cE5a...2F2915E80
0.02179879 ETH
211638762024-11-11 10:34:357 days ago1731321275
0xa820cE5a...2F2915E80
0.03377159 ETH
211638762024-11-11 10:34:357 days ago1731321275
0xa820cE5a...2F2915E80
0.03377159 ETH
211638752024-11-11 10:34:237 days ago1731321263
0xa820cE5a...2F2915E80
0.03980747 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DELREY

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSE
// Original Code #DelRey

/*

https://t.me/DelReycoin
https://x.com/DelReycoin
https://DelReycoin.vip/

*/
pragma solidity 0.8.23;

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 DELREY is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=25;
    uint256 private _initialSellTax=27;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=25;
    uint256 private _reduceSellTaxAt=27;
    uint256 private _preventSwapBefore=30;
    uint256 private _transferTax=50;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"DelRey";
    string private constant _symbol = unicode"DELREY";
    uint256 public _maxTxAmount = 20000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 1000000 * 10**_decimals;
    uint256 public _maxTaxSwap= 10000000 * 10**_decimals;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool public tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private sellCount = 0;
    uint256 private lastSellBlock = 0;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    event OpenTrade(address indexed owner, uint256 timestamp);
    event TransferTaxUpdated(uint _tax);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = 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 _balances[account];
    }

    function getTaxDetails() public view returns (
        uint256 initialBuyTax,
        uint256 initialSellTax,
        uint256 finalBuyTax,
        uint256 finalSellTax,
        uint256 transferTax
        ) {
            return (
                _initialBuyTax,
                _initialSellTax,
                _finalBuyTax,
                _finalSellTax,
                _transferTax
            );
    }

    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 _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");
        uint256 taxAmount=0;
        if (from != owner() && to != owner() && to != _taxWallet) {
            require(!bots[from] && !bots[to]);

            if(_buyCount==0){
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
            }
            if(_buyCount>0){
                taxAmount = amount.mul(_transferTax).div(100);
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
                _buyCount++;
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount > _preventSwapBefore) {
                if (block.number > lastSellBlock) {
                    sellCount = 0;
                }
                require(sellCount < 3, "Only 3 sells per block!");
                swapTokensForEth(min(amount, min(contractTokenBalance, _maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                sellCount++;
                lastSellBlock = block.number;
            }
        }

        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 min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    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 removeLimit() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

    function removeTranTax() external onlyOwner{
        _transferTax = 0;
        emit TransferTaxUpdated(0);
    }

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

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

    function delBot(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

    function isBot(address a) public view returns (bool){
      return bots[a];
    }

    function openTrade() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;

        emit OpenTrade(owner(), block.timestamp);
    }

    
    function reduceFee(uint256 _newFee) external{
      require(_msgSender()==_taxWallet);
      require(_newFee<=_finalBuyTax && _newFee<=_finalSellTax);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

    receive() external payable {}

    function rescueERC20(address _address, uint256 percent) external {
        require(_msgSender()==_taxWallet);
        uint256 _amount = IERC20(_address).balanceOf(address(this)).mul(percent).div(100);
        IERC20(_address).transfer(_taxWallet, _amount);
    }

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0 && swapEnabled){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":"owner","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"OpenTrade","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_tax","type":"uint256"}],"name":"TransferTaxUpdated","type":"event"},{"inputs":[],"name":"_maxTaxSwap","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":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"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":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getTaxDetails","outputs":[{"internalType":"uint256","name":"initialBuyTax","type":"uint256"},{"internalType":"uint256","name":"initialSellTax","type":"uint256"},{"internalType":"uint256","name":"finalBuyTax","type":"uint256"},{"internalType":"uint256","name":"finalSellTax","type":"uint256"},{"internalType":"uint256","name":"transferTax","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeTranTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"rescueERC20","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":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526019600655601b6007555f6008555f6009556019600a55601b600b55601e600c556032600d555f600e556009600a6200003e91906200033c565b6200004e906301312d0062000353565b600f556200005f6009600a6200033c565b6200006f906301312d0062000353565b601055620000806009600a6200033c565b6200008f90620f424062000353565b601155620000a06009600a6200033c565b620000af906298968062000353565b6012556014805461ffff60a81b191690555f6015819055601655348015620000d5575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600580546001600160a01b03191633179055620001366009600a6200033c565b6200014690633b9aca0062000353565b335f9081526001602081905260408220929092556003906200016f5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600554909116835291208054909216179055620001cd3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002066009600a6200033c565b6200021690633b9aca0062000353565b60405190815260200160405180910390a36200036d565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200028157815f19048211156200026557620002656200022d565b808516156200027357918102915b93841c939080029062000246565b509250929050565b5f82620002995750600162000336565b81620002a757505f62000336565b8160018114620002c05760028114620002cb57620002eb565b600191505062000336565b60ff841115620002df57620002df6200022d565b50506001821b62000336565b5060208310610133831016604e8410600b841016171562000310575081810a62000336565b6200031c838362000241565b805f19048211156200033257620003326200022d565b0290505b92915050565b5f6200034c60ff84168362000289565b9392505050565b80820281158282048414176200033657620003366200022d565b611dda806200037b5f395ff3fe60806040526004361061017e575f3560e01c8063715018a6116100cd578063a9059cbb11610087578063dd62ed3e11610062578063dd62ed3e14610478578063ec1f3f63146104bc578063fb201b1d146104db578063ffb54a99146104ef575f80fd5b8063a9059cbb14610425578063bf474bed14610444578063c97c182114610459575f80fd5b8063715018a6146103745780637d1db4a5146103885780638cd4426d1461039d5780638da5cb5b146103bc5780638f9a55c0146103e257806395d89b41146103f7575f80fd5b806321bbcbb1116101385780633bbac579116101135780633bbac579146102e157806351bc3c8514610318578063622565891461032c57806370a0823114610340575f80fd5b806321bbcbb11461028857806323b872dd146102a7578063313ce567146102c6575f80fd5b806302fa1f4a1461018957806306fdde031461019f578063095ea7b3146101df5780630faee56f1461020e57806318160ddd146102315780631fee589414610245575f80fd5b3661018557005b5f80fd5b348015610194575f80fd5b5061019d61050f565b005b3480156101aa575f80fd5b5060408051808201909152600681526544656c52657960d01b60208201525b6040516101d691906118b8565b60405180910390f35b3480156101ea575f80fd5b506101fe6101f936600461192b565b61057d565b60405190151581526020016101d6565b348015610219575f80fd5b5061022360125481565b6040519081526020016101d6565b34801561023c575f80fd5b50610223610593565b348015610250575f80fd5b50600654600754600854600954600d54604080519586526020860194909452928401919091526060830152608082015260a0016101d6565b348015610293575f80fd5b5061019d6102a2366004611969565b6105b3565b3480156102b2575f80fd5b506101fe6102c1366004611a29565b61063b565b3480156102d1575f80fd5b50604051600981526020016101d6565b3480156102ec575f80fd5b506101fe6102fb366004611a67565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610323575f80fd5b5061019d6106a2565b348015610337575f80fd5b5061019d610706565b34801561034b575f80fd5b5061022361035a366004611a67565b6001600160a01b03165f9081526001602052604090205490565b34801561037f575f80fd5b5061019d6107b2565b348015610393575f80fd5b50610223600f5481565b3480156103a8575f80fd5b5061019d6103b736600461192b565b610823565b3480156103c7575f80fd5b505f546040516001600160a01b0390911681526020016101d6565b3480156103ed575f80fd5b5061022360105481565b348015610402575f80fd5b5060408051808201909152600681526544454c52455960d01b60208201526101c9565b348015610430575f80fd5b506101fe61043f36600461192b565b61093f565b34801561044f575f80fd5b5061022360115481565b348015610464575f80fd5b5061019d610473366004611969565b61094b565b348015610483575f80fd5b50610223610492366004611a82565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104c7575f80fd5b5061019d6104d6366004611ab9565b6109ce565b3480156104e6575f80fd5b5061019d610a13565b3480156104fa575f80fd5b506014546101fe90600160a01b900460ff1681565b5f546001600160a01b031633146105415760405162461bcd60e51b815260040161053890611ad0565b60405180910390fd5b5f600d8190556040519081527fe9b79e1a6c2dc43b4c0c6ff01ce9e3332d810e482270f464c0a21ad6c5fc6de3906020015b60405180910390a1565b5f610589338484610e09565b5060015b92915050565b5f6105a06009600a611bf9565b6105ae90633b9aca00611c07565b905090565b5f546001600160a01b031633146105dc5760405162461bcd60e51b815260040161053890611ad0565b5f5b815181101561063757600160045f8484815181106105fe576105fe611c1e565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016105de565b5050565b5f610647848484610f2c565b610698843361069385604051806060016040528060288152602001611d7d602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611534565b610e09565b5060019392505050565b6005546001600160a01b0316336001600160a01b0316146106c1575f80fd5b305f9081526001602052604090205480158015906106e85750601454600160b01b900460ff165b156106f6576106f68161156c565b47801561063757610637816116dc565b5f546001600160a01b0316331461072f5760405162461bcd60e51b815260040161053890611ad0565b61073b6009600a611bf9565b61074990633b9aca00611c07565b600f556107586009600a611bf9565b61076690633b9aca00611c07565b6010557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107966009600a611bf9565b6107a490633b9aca00611c07565b604051908152602001610573565b5f546001600160a01b031633146107db5760405162461bcd60e51b815260040161053890611ad0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6005546001600160a01b0316336001600160a01b031614610842575f80fd5b6040516370a0823160e01b81523060048201525f906108c3906064906108bd9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610893573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b79190611c32565b90611713565b90611798565b60055460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925084169063a9059cbb906044016020604051808303815f875af1158015610915573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109399190611c49565b50505050565b5f610589338484610f2c565b5f546001600160a01b031633146109745760405162461bcd60e51b815260040161053890611ad0565b5f5b8151811015610637575f60045f84848151811061099557610995611c1e565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610976565b6005546001600160a01b0316336001600160a01b0316146109ed575f80fd5b6008548111158015610a0157506009548111155b610a09575f80fd5b6008819055600955565b5f546001600160a01b03163314610a3c5760405162461bcd60e51b815260040161053890611ad0565b601454600160a01b900460ff1615610a965760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610538565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610adf903090610ad16009600a611bf9565b61069390633b9aca00611c07565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b2f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b539190611c68565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd69190611c68565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610c20573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c449190611c68565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610c8b816001600160a01b03165f9081526001602052604090205490565b5f80610c9e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610d04573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d299190611c83565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610d7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da29190611c49565b506014805462ff00ff60a01b19166201000160a01b1790555f546001600160a01b03166001600160a01b03167ff9ca0f11181041c16343c0e2d0e0c3cf66188e39b033ab29e2fe6f0f84374a3642604051610dff91815260200190565b60405180910390a2565b6001600160a01b038316610e6b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610538565b6001600160a01b038216610ecc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610538565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f905760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610538565b6001600160a01b038216610ff25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610538565b5f81116110535760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610538565b5f80546001600160a01b0385811691161480159061107e57505f546001600160a01b03848116911614155b801561109857506005546001600160a01b03848116911614155b156113f7576001600160a01b0384165f9081526004602052604090205460ff161580156110dd57506001600160a01b0383165f9081526004602052604090205460ff16155b6110e5575f80fd5b600e545f036111175761111460646108bd600a54600e54116111095760065461110d565b6008545b8590611713565b90505b600e541561113c5761113960646108bd600d548561171390919063ffffffff16565b90505b6014546001600160a01b03858116911614801561116757506013546001600160a01b03848116911614155b801561118b57506001600160a01b0383165f9081526003602052604090205460ff16155b1561128e57600f548211156111e25760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610538565b60105482611204856001600160a01b03165f9081526001602052604090205490565b61120e9190611cae565b111561125c5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610538565b61127760646108bd600a54600e54116111095760065461110d565b600e80549192505f61128883611cc1565b91905055505b6014546001600160a01b0384811691161480156112b457506001600160a01b0384163014155b156112e1576112de60646108bd600b54600e54116112d45760075461110d565b6009548590611713565b90505b305f90815260016020526040902054601454600160a81b900460ff1615801561131757506014546001600160a01b038581169116145b801561132c5750601454600160b01b900460ff165b8015611339575060115481115b80156113485750600c54600e54115b156113f55760165443111561135c575f6015555b6003601554106113ae5760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610538565b6113cb6113c6846113c1846012546117d9565b6117d9565b61156c565b4780156113db576113db476116dc565b60158054905f6113ea83611cc1565b909155505043601655505b505b801561146f57305f9081526001602052604090205461141690826117ed565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114669085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054611491908361184b565b6001600160a01b0385165f908152600160205260409020556114d46114b6838361184b565b6001600160a01b0385165f90815260016020526040902054906117ed565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61151d858561184b565b60405190815260200160405180910390a350505050565b5f81848411156115575760405162461bcd60e51b815260040161053891906118b8565b505f6115638486611cd9565b95945050505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106115b2576115b2611c1e565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611609573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061162d9190611c68565b8160018151811061164057611640611c1e565b6001600160a01b0392831660209182029290920101526013546116669130911684610e09565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac9479061169e9085905f90869030904290600401611cec565b5f604051808303815f87803b1580156116b5575f80fd5b505af11580156116c7573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610637573d5f803e3d5ffd5b5f825f0361172257505f61058d565b5f61172d8385611c07565b90508261173a8583611d5d565b146117915760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610538565b9392505050565b5f61179183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061188c565b5f8183116117e75782611791565b50919050565b5f806117f98385611cae565b9050838110156117915760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610538565b5f61179183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611534565b5f81836118ac5760405162461bcd60e51b815260040161053891906118b8565b505f6115638486611d5d565b5f602080835283518060208501525f5b818110156118e4578581018301518582016040015282016118c8565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611918575f80fd5b50565b803561192681611904565b919050565b5f806040838503121561193c575f80fd5b823561194781611904565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f602080838503121561197a575f80fd5b823567ffffffffffffffff80821115611991575f80fd5b818501915085601f8301126119a4575f80fd5b8135818111156119b6576119b6611955565b8060051b604051601f19603f830116810181811085821117156119db576119db611955565b6040529182528482019250838101850191888311156119f8575f80fd5b938501935b82851015611a1d57611a0e8561191b565b845293850193928501926119fd565b98975050505050505050565b5f805f60608486031215611a3b575f80fd5b8335611a4681611904565b92506020840135611a5681611904565b929592945050506040919091013590565b5f60208284031215611a77575f80fd5b813561179181611904565b5f8060408385031215611a93575f80fd5b8235611a9e81611904565b91506020830135611aae81611904565b809150509250929050565b5f60208284031215611ac9575f80fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611b5357815f1904821115611b3957611b39611b05565b80851615611b4657918102915b93841c9390800290611b1e565b509250929050565b5f82611b695750600161058d565b81611b7557505f61058d565b8160018114611b8b5760028114611b9557611bb1565b600191505061058d565b60ff841115611ba657611ba6611b05565b50506001821b61058d565b5060208310610133831016604e8410600b8410161715611bd4575081810a61058d565b611bde8383611b19565b805f1904821115611bf157611bf1611b05565b029392505050565b5f61179160ff841683611b5b565b808202811582820484141761058d5761058d611b05565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611c42575f80fd5b5051919050565b5f60208284031215611c59575f80fd5b81518015158114611791575f80fd5b5f60208284031215611c78575f80fd5b815161179181611904565b5f805f60608486031215611c95575f80fd5b8351925060208401519150604084015190509250925092565b8082018082111561058d5761058d611b05565b5f60018201611cd257611cd2611b05565b5060010190565b8181038181111561058d5761058d611b05565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611d3c5784516001600160a01b031683529383019391830191600101611d17565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611d7757634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220923647dd00015cec401c4aa494575d7c0d8d2439007c8ebd243d42167707136364736f6c63430008170033

Deployed Bytecode

0x60806040526004361061017e575f3560e01c8063715018a6116100cd578063a9059cbb11610087578063dd62ed3e11610062578063dd62ed3e14610478578063ec1f3f63146104bc578063fb201b1d146104db578063ffb54a99146104ef575f80fd5b8063a9059cbb14610425578063bf474bed14610444578063c97c182114610459575f80fd5b8063715018a6146103745780637d1db4a5146103885780638cd4426d1461039d5780638da5cb5b146103bc5780638f9a55c0146103e257806395d89b41146103f7575f80fd5b806321bbcbb1116101385780633bbac579116101135780633bbac579146102e157806351bc3c8514610318578063622565891461032c57806370a0823114610340575f80fd5b806321bbcbb11461028857806323b872dd146102a7578063313ce567146102c6575f80fd5b806302fa1f4a1461018957806306fdde031461019f578063095ea7b3146101df5780630faee56f1461020e57806318160ddd146102315780631fee589414610245575f80fd5b3661018557005b5f80fd5b348015610194575f80fd5b5061019d61050f565b005b3480156101aa575f80fd5b5060408051808201909152600681526544656c52657960d01b60208201525b6040516101d691906118b8565b60405180910390f35b3480156101ea575f80fd5b506101fe6101f936600461192b565b61057d565b60405190151581526020016101d6565b348015610219575f80fd5b5061022360125481565b6040519081526020016101d6565b34801561023c575f80fd5b50610223610593565b348015610250575f80fd5b50600654600754600854600954600d54604080519586526020860194909452928401919091526060830152608082015260a0016101d6565b348015610293575f80fd5b5061019d6102a2366004611969565b6105b3565b3480156102b2575f80fd5b506101fe6102c1366004611a29565b61063b565b3480156102d1575f80fd5b50604051600981526020016101d6565b3480156102ec575f80fd5b506101fe6102fb366004611a67565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610323575f80fd5b5061019d6106a2565b348015610337575f80fd5b5061019d610706565b34801561034b575f80fd5b5061022361035a366004611a67565b6001600160a01b03165f9081526001602052604090205490565b34801561037f575f80fd5b5061019d6107b2565b348015610393575f80fd5b50610223600f5481565b3480156103a8575f80fd5b5061019d6103b736600461192b565b610823565b3480156103c7575f80fd5b505f546040516001600160a01b0390911681526020016101d6565b3480156103ed575f80fd5b5061022360105481565b348015610402575f80fd5b5060408051808201909152600681526544454c52455960d01b60208201526101c9565b348015610430575f80fd5b506101fe61043f36600461192b565b61093f565b34801561044f575f80fd5b5061022360115481565b348015610464575f80fd5b5061019d610473366004611969565b61094b565b348015610483575f80fd5b50610223610492366004611a82565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104c7575f80fd5b5061019d6104d6366004611ab9565b6109ce565b3480156104e6575f80fd5b5061019d610a13565b3480156104fa575f80fd5b506014546101fe90600160a01b900460ff1681565b5f546001600160a01b031633146105415760405162461bcd60e51b815260040161053890611ad0565b60405180910390fd5b5f600d8190556040519081527fe9b79e1a6c2dc43b4c0c6ff01ce9e3332d810e482270f464c0a21ad6c5fc6de3906020015b60405180910390a1565b5f610589338484610e09565b5060015b92915050565b5f6105a06009600a611bf9565b6105ae90633b9aca00611c07565b905090565b5f546001600160a01b031633146105dc5760405162461bcd60e51b815260040161053890611ad0565b5f5b815181101561063757600160045f8484815181106105fe576105fe611c1e565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016105de565b5050565b5f610647848484610f2c565b610698843361069385604051806060016040528060288152602001611d7d602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611534565b610e09565b5060019392505050565b6005546001600160a01b0316336001600160a01b0316146106c1575f80fd5b305f9081526001602052604090205480158015906106e85750601454600160b01b900460ff165b156106f6576106f68161156c565b47801561063757610637816116dc565b5f546001600160a01b0316331461072f5760405162461bcd60e51b815260040161053890611ad0565b61073b6009600a611bf9565b61074990633b9aca00611c07565b600f556107586009600a611bf9565b61076690633b9aca00611c07565b6010557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107966009600a611bf9565b6107a490633b9aca00611c07565b604051908152602001610573565b5f546001600160a01b031633146107db5760405162461bcd60e51b815260040161053890611ad0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6005546001600160a01b0316336001600160a01b031614610842575f80fd5b6040516370a0823160e01b81523060048201525f906108c3906064906108bd9085906001600160a01b038816906370a0823190602401602060405180830381865afa158015610893573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108b79190611c32565b90611713565b90611798565b60055460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925084169063a9059cbb906044016020604051808303815f875af1158015610915573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109399190611c49565b50505050565b5f610589338484610f2c565b5f546001600160a01b031633146109745760405162461bcd60e51b815260040161053890611ad0565b5f5b8151811015610637575f60045f84848151811061099557610995611c1e565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff1916911515919091179055600101610976565b6005546001600160a01b0316336001600160a01b0316146109ed575f80fd5b6008548111158015610a0157506009548111155b610a09575f80fd5b6008819055600955565b5f546001600160a01b03163314610a3c5760405162461bcd60e51b815260040161053890611ad0565b601454600160a01b900460ff1615610a965760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610538565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155610adf903090610ad16009600a611bf9565b61069390633b9aca00611c07565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b2f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b539190611c68565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd69190611c68565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610c20573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c449190611c68565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610c8b816001600160a01b03165f9081526001602052604090205490565b5f80610c9e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610d04573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d299190611c83565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610d7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da29190611c49565b506014805462ff00ff60a01b19166201000160a01b1790555f546001600160a01b03166001600160a01b03167ff9ca0f11181041c16343c0e2d0e0c3cf66188e39b033ab29e2fe6f0f84374a3642604051610dff91815260200190565b60405180910390a2565b6001600160a01b038316610e6b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610538565b6001600160a01b038216610ecc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610538565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f905760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610538565b6001600160a01b038216610ff25760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610538565b5f81116110535760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610538565b5f80546001600160a01b0385811691161480159061107e57505f546001600160a01b03848116911614155b801561109857506005546001600160a01b03848116911614155b156113f7576001600160a01b0384165f9081526004602052604090205460ff161580156110dd57506001600160a01b0383165f9081526004602052604090205460ff16155b6110e5575f80fd5b600e545f036111175761111460646108bd600a54600e54116111095760065461110d565b6008545b8590611713565b90505b600e541561113c5761113960646108bd600d548561171390919063ffffffff16565b90505b6014546001600160a01b03858116911614801561116757506013546001600160a01b03848116911614155b801561118b57506001600160a01b0383165f9081526003602052604090205460ff16155b1561128e57600f548211156111e25760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610538565b60105482611204856001600160a01b03165f9081526001602052604090205490565b61120e9190611cae565b111561125c5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610538565b61127760646108bd600a54600e54116111095760065461110d565b600e80549192505f61128883611cc1565b91905055505b6014546001600160a01b0384811691161480156112b457506001600160a01b0384163014155b156112e1576112de60646108bd600b54600e54116112d45760075461110d565b6009548590611713565b90505b305f90815260016020526040902054601454600160a81b900460ff1615801561131757506014546001600160a01b038581169116145b801561132c5750601454600160b01b900460ff165b8015611339575060115481115b80156113485750600c54600e54115b156113f55760165443111561135c575f6015555b6003601554106113ae5760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610538565b6113cb6113c6846113c1846012546117d9565b6117d9565b61156c565b4780156113db576113db476116dc565b60158054905f6113ea83611cc1565b909155505043601655505b505b801561146f57305f9081526001602052604090205461141690826117ed565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114669085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054611491908361184b565b6001600160a01b0385165f908152600160205260409020556114d46114b6838361184b565b6001600160a01b0385165f90815260016020526040902054906117ed565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61151d858561184b565b60405190815260200160405180910390a350505050565b5f81848411156115575760405162461bcd60e51b815260040161053891906118b8565b505f6115638486611cd9565b95945050505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106115b2576115b2611c1e565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611609573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061162d9190611c68565b8160018151811061164057611640611c1e565b6001600160a01b0392831660209182029290920101526013546116669130911684610e09565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac9479061169e9085905f90869030904290600401611cec565b5f604051808303815f87803b1580156116b5575f80fd5b505af11580156116c7573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610637573d5f803e3d5ffd5b5f825f0361172257505f61058d565b5f61172d8385611c07565b90508261173a8583611d5d565b146117915760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610538565b9392505050565b5f61179183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061188c565b5f8183116117e75782611791565b50919050565b5f806117f98385611cae565b9050838110156117915760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610538565b5f61179183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611534565b5f81836118ac5760405162461bcd60e51b815260040161053891906118b8565b505f6115638486611d5d565b5f602080835283518060208501525f5b818110156118e4578581018301518582016040015282016118c8565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611918575f80fd5b50565b803561192681611904565b919050565b5f806040838503121561193c575f80fd5b823561194781611904565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f602080838503121561197a575f80fd5b823567ffffffffffffffff80821115611991575f80fd5b818501915085601f8301126119a4575f80fd5b8135818111156119b6576119b6611955565b8060051b604051601f19603f830116810181811085821117156119db576119db611955565b6040529182528482019250838101850191888311156119f8575f80fd5b938501935b82851015611a1d57611a0e8561191b565b845293850193928501926119fd565b98975050505050505050565b5f805f60608486031215611a3b575f80fd5b8335611a4681611904565b92506020840135611a5681611904565b929592945050506040919091013590565b5f60208284031215611a77575f80fd5b813561179181611904565b5f8060408385031215611a93575f80fd5b8235611a9e81611904565b91506020830135611aae81611904565b809150509250929050565b5f60208284031215611ac9575f80fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611b5357815f1904821115611b3957611b39611b05565b80851615611b4657918102915b93841c9390800290611b1e565b509250929050565b5f82611b695750600161058d565b81611b7557505f61058d565b8160018114611b8b5760028114611b9557611bb1565b600191505061058d565b60ff841115611ba657611ba6611b05565b50506001821b61058d565b5060208310610133831016604e8410600b8410161715611bd4575081810a61058d565b611bde8383611b19565b805f1904821115611bf157611bf1611b05565b029392505050565b5f61179160ff841683611b5b565b808202811582820484141761058d5761058d611b05565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611c42575f80fd5b5051919050565b5f60208284031215611c59575f80fd5b81518015158114611791575f80fd5b5f60208284031215611c78575f80fd5b815161179181611904565b5f805f60608486031215611c95575f80fd5b8351925060208401519150604084015190509250925092565b8082018082111561058d5761058d611b05565b5f60018201611cd257611cd2611b05565b5060010190565b8181038181111561058d5761058d611b05565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611d3c5784516001600160a01b031683529383019391830191600101611d17565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611d7757634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220923647dd00015cec401c4aa494575d7c0d8d2439007c8ebd243d42167707136364736f6c63430008170033

Deployed Bytecode Sourcemap

3593:9661:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10961:115;;;;;;;;;;;;;:::i;:::-;;5627:83;;;;;;;;;;-1:-1:-1;5697:5:0;;;;;;;;;;;;-1:-1:-1;;;5697:5:0;;;;5627:83;;;;;;;:::i;:::-;;;;;;;;6887:161;;;;;;;;;;-1:-1:-1;6887:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;6887:161:0;1162:187:1;4719:52:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;4719:52:0;1354:177:1;5904:95:0;;;;;;;;;;;;;:::i;6134:419::-;;;;;;;;;;-1:-1:-1;6388:14:0;;6421:15;;6455:12;;6486:13;;6518:12;;6134:419;;;1795:25:1;;;1851:2;1836:18;;1829:34;;;;1879:18;;;1872:34;;;;1937:2;1922:18;;1915:34;1980:3;1965:19;;1958:35;1782:3;1767:19;6134:419:0;1536:463:1;11184:163:0;;;;;;;;;;-1:-1:-1;11184:163:0;;;;;:::i;:::-;;:::i;7056:313::-;;;;;;;;;;-1:-1:-1;7056:313:0;;;;;:::i;:::-;;:::i;5813:83::-;;;;;;;;;;-1:-1:-1;5813:83:0;;4345:1;3865:36:1;;3853:2;3838:18;5813:83:0;3723:184:1;11524:83:0;;;;;;;;;;-1:-1:-1;11524:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;11592:7:0;11571:4;11592:7;;;:4;:7;;;;;;;;;11524:83;12888:363;;;;;;;;;;;;;:::i;10795:158::-;;;;;;;;;;;;;:::i;6007:119::-;;;;;;;;;;-1:-1:-1;6007:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6100:18:0;6073:7;6100:18;;;:9;:18;;;;;;;6007:119;2674:148;;;;;;;;;;;;;:::i;4531:54::-;;;;;;;;;;;;;;;;12614:266;;;;;;;;;;-1:-1:-1;12614:266:0;;;;;:::i;:::-;;:::i;2460:79::-;;;;;;;;;;-1:-1:-1;2498:7:0;2525:6;2460:79;;-1:-1:-1;;;;;2525:6:0;;;4310:51:1;;4298:2;4283:18;2460:79:0;4164:203:1;4592:56:0;;;;;;;;;;;;;;;;5718:87;;;;;;;;;;-1:-1:-1;5790:7:0;;;;;;;;;;;;-1:-1:-1;;;5790:7:0;;;;5718:87;;6561:167;;;;;;;;;;-1:-1:-1;6561:167:0;;;;;:::i;:::-;;:::i;4655:57::-;;;;;;;;;;;;;;;;11355:161;;;;;;;;;;-1:-1:-1;11355:161:0;;;;;:::i;:::-;;:::i;6736:143::-;;;;;;;;;;-1:-1:-1;6736:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6844:18:0;;;6817:7;6844:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6736:143;12351:218;;;;;;;;;;-1:-1:-1;12351:218:0;;;;;:::i;:::-;;:::i;11615:722::-;;;;;;;;;;;;;:::i;4869:23::-;;;;;;;;;;-1:-1:-1;4869:23:0;;;;-1:-1:-1;;;4869:23:0;;;;;;10961:115;2587:6;;-1:-1:-1;;;;;2587:6:0;295:10;2587:22;2579:67;;;;-1:-1:-1;;;2579:67:0;;;;;;;:::i;:::-;;;;;;;;;11030:1:::1;11015:12;:16:::0;;;11047:21:::1;::::0;1500:25:1;;;11047:21:0::1;::::0;1488:2:1;1473:18;11047:21:0::1;;;;;;;;10961:115::o:0;6887:161::-;6962:4;6979:39;295:10;7002:7;7011:6;6979:8;:39::i;:::-;-1:-1:-1;7036:4:0;6887:161;;;;;:::o;5904:95::-;5957:7;4401:13;4345:1;4401:2;:13;:::i;:::-;4388:26;;:10;:26;:::i;:::-;5977:14;;5904:95;:::o;11184:163::-;2587:6;;-1:-1:-1;;;;;2587:6:0;295:10;2587:22;2579:67;;;;-1:-1:-1;;;2579:67:0;;;;;;;:::i;:::-;11257:6:::1;11252:88;11273:5;:12;11269:1;:16;11252:88;;;11324:4;11307;:14;11312:5;11318:1;11312:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11307:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11307:14:0;:21;;-1:-1:-1;;11307:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;11287:3:0::1;11252:88;;;;11184:163:::0;:::o;7056:313::-;7154:4;7171:36;7181:6;7189:9;7200:6;7171:9;:36::i;:::-;7218:121;7227:6;295:10;7249:89;7287:6;7249:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7249:19:0;;;;;;:11;:19;;;;;;;;295:10;7249:33;;;;;;;;;;:37;:89::i;:::-;7218:8;:121::i;:::-;-1:-1:-1;7357:4:0;7056:313;;;;;:::o;12888:363::-;12952:10;;-1:-1:-1;;;;;12952:10:0;295;-1:-1:-1;;;;;12938:24:0;;12930:33;;;;;;13013:4;12974:20;6100:18;;;:9;:18;;;;;;13033:14;;;;;:29;;-1:-1:-1;13051:11:0;;-1:-1:-1;;;13051:11:0;;;;13033:29;13030:88;;;13076:30;13093:12;13076:16;:30::i;:::-;13147:21;13182:12;;13179:65;;13208:24;13221:10;13208:12;:24::i;10795:158::-;2587:6;;-1:-1:-1;;;;;2587:6:0;295:10;2587:22;2579:67;;;;-1:-1:-1;;;2579:67:0;;;;;;;:::i;:::-;4401:13:::1;4345:1;4401:2;:13;:::i;:::-;4388:26;::::0;:10:::1;:26;:::i;:::-;10847:12;:22:::0;4401:13:::1;4345:1;4401:2;:13;:::i;:::-;4388:26;::::0;:10:::1;:26;:::i;:::-;10880:14;:22:::0;10918:27:::1;4401:13;4345:1;4401:2;:13;:::i;:::-;4388:26;::::0;:10:::1;:26;:::i;:::-;10918:27;::::0;1500:25:1;;;1488:2;1473:18;10918:27:0::1;1354:177:1::0;2674:148:0;2587:6;;-1:-1:-1;;;;;2587:6:0;295:10;2587:22;2579:67;;;;-1:-1:-1;;;2579:67:0;;;;;;;:::i;:::-;2781:1:::1;2765:6:::0;;2744:40:::1;::::0;-1:-1:-1;;;;;2765:6:0;;::::1;::::0;2744:40:::1;::::0;2781:1;;2744:40:::1;2812:1;2795:19:::0;;-1:-1:-1;;;;;;2795:19:0::1;::::0;;2674:148::o;12614:266::-;12712:10;;-1:-1:-1;;;;;12712:10:0;295;-1:-1:-1;;;;;12698:24:0;;12690:33;;;;;;12752:41;;-1:-1:-1;;;12752:41:0;;12787:4;12752:41;;;4310:51:1;12734:15:0;;12752:63;;12811:3;;12752:54;;12798:7;;-1:-1:-1;;;;;12752:26:0;;;;;4283:18:1;;12752:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:45;;:54::i;:::-;:58;;:63::i;:::-;12852:10;;12826:46;;-1:-1:-1;;;12826:46:0;;-1:-1:-1;;;;;12852:10:0;;;12826:46;;;7686:51:1;7753:18;;;7746:34;;;12734:81:0;;-1:-1:-1;12826:25:0;;;;;7659:18:1;;12826:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12679:201;12614:266;;:::o;6561:167::-;6639:4;6656:42;295:10;6680:9;6691:6;6656:9;:42::i;11355:161::-;2587:6;;-1:-1:-1;;;;;2587:6:0;295:10;2587:22;2579:67;;;;-1:-1:-1;;;2579:67:0;;;;;;;:::i;:::-;11427:6:::1;11422:87;11443:6;:13;11439:1;:17;11422:87;;;11494:5;11476:4;:15;11481:6;11488:1;11481:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11476:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11476:15:0;:23;;-1:-1:-1;;11476:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;11458:3:0::1;11422:87;;12351:218:::0;12426:10;;-1:-1:-1;;;;;12426:10:0;295;-1:-1:-1;;;;;12412:24:0;;12404:33;;;;;;12463:12;;12454:7;:21;;:47;;;;;12488:13;;12479:7;:22;;12454:47;12446:56;;;;;;12511:12;:20;;;12540:13;:21;12351:218::o;11615:722::-;2587:6;;-1:-1:-1;;;;;2587:6:0;295:10;2587:22;2579:67;;;;-1:-1:-1;;;2579:67:0;;;;;;;:::i;:::-;11677:11:::1;::::0;-1:-1:-1;;;11677:11:0;::::1;;;11676:12;11668:47;;;::::0;-1:-1:-1;;;11668:47:0;;8275:2:1;11668:47:0::1;::::0;::::1;8257:21:1::0;8314:2;8294:18;;;8287:30;8353:25;8333:18;;;8326:53;8396:18;;11668:47:0::1;8073:347:1::0;11668:47:0::1;11726:15;:80:::0;;-1:-1:-1;;;;;;11726:80:0::1;11763:42;11726:80:::0;;::::1;::::0;;;11817:58:::1;::::0;11834:4:::1;::::0;4401:13:::1;4345:1;4401:2;:13;:::i;:::-;4388:26;::::0;:10:::1;:26;:::i;11817:58::-;11920:15;;;;;;;;;-1:-1:-1::0;;;;;11920:15:0::1;-1:-1:-1::0;;;;;11920:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11902:55:0::1;;11966:4;11973:15;;;;;;;;;-1:-1:-1::0;;;;;11973:15:0::1;-1:-1:-1::0;;;;;11973:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11902:94;::::0;-1:-1:-1;;;;;;11902:94:0::1;::::0;;;;;;-1:-1:-1;;;;;8911:15:1;;;11902:94:0::1;::::0;::::1;8893:34:1::0;8963:15;;8943:18;;;8936:43;8828:18;;11902:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11886:13;:110:::0;;-1:-1:-1;;;;;11886:110:0;;::::1;-1:-1:-1::0;;;;;;11886:110:0;;::::1;;::::0;;12007:15:::1;::::0;::::1;:31;12046:21;12077:4;12083:24;12077:4:::0;-1:-1:-1;;;;;6100:18:0;6073:7;6100:18;;;:9;:18;;;;;;;6007:119;12083:24:::1;12108:1;12110::::0;12112:7:::1;2498::::0;2525:6;-1:-1:-1;;;;;2525:6:0;;2460:79;12112:7:::1;12007:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12007:129:0;;;-1:-1:-1;;;;;9349:15:1;;;12007:129:0::1;::::0;::::1;9331:34:1::0;9381:18;;;9374:34;;;;9424:18;;;9417:34;;;;9467:18;;;9460:34;9531:15;;;9510:19;;;9503:44;12120:15:0::1;9563:19:1::0;;;9556:35;9265:19;;12007:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12154:13:0::1;::::0;12185:15:::1;::::0;12147:71:::1;::::0;-1:-1:-1;;;12147:71:0;;-1:-1:-1;;;;;12185:15:0;;::::1;12147:71;::::0;::::1;7686:51:1::0;-1:-1:-1;;7753:18:1;;;7746:34;12154:13:0;::::1;::::0;-1:-1:-1;12147:29:0::1;::::0;7659:18:1;;12147:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12229:11:0::1;:18:::0;;-1:-1:-1;;;;12258:18:0;-1:-1:-1;;;12258:18:0;;;-1:-1:-1;2525:6:0;-1:-1:-1;;;;;2525:6:0;-1:-1:-1;;;;;12294:35:0::1;;12313:15;12294:35;;;;1500:25:1::0;;1488:2;1473:18;;1354:177;12294:35:0::1;;;;;;;;11615:722::o:0;7377:335::-;-1:-1:-1;;;;;7470:19:0;;7462:68;;;;-1:-1:-1;;;7462:68:0;;10394:2:1;7462:68:0;;;10376:21:1;10433:2;10413:18;;;10406:30;10472:34;10452:18;;;10445:62;-1:-1:-1;;;10523:18:1;;;10516:34;10567:19;;7462:68:0;10192:400:1;7462:68:0;-1:-1:-1;;;;;7549:21:0;;7541:68;;;;-1:-1:-1;;;7541:68:0;;10799:2:1;7541:68:0;;;10781:21:1;10838:2;10818:18;;;10811:30;10877:34;10857:18;;;10850:62;-1:-1:-1;;;10928:18:1;;;10921:32;10970:19;;7541:68:0;10597:398:1;7541:68:0;-1:-1:-1;;;;;7620:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7672:32;;1500:25:1;;;7672:32:0;;1473:18:1;7672:32:0;;;;;;;7377:335;;;:::o;7720:2468::-;-1:-1:-1;;;;;7808:18:0;;7800:68;;;;-1:-1:-1;;;7800:68:0;;11202:2:1;7800:68:0;;;11184:21:1;11241:2;11221:18;;;11214:30;11280:34;11260:18;;;11253:62;-1:-1:-1;;;11331:18:1;;;11324:35;11376:19;;7800:68:0;11000:401:1;7800:68:0;-1:-1:-1;;;;;7887:16:0;;7879:64;;;;-1:-1:-1;;;7879:64:0;;11608:2:1;7879:64:0;;;11590:21:1;11647:2;11627:18;;;11620:30;11686:34;11666:18;;;11659:62;-1:-1:-1;;;11737:18:1;;;11730:33;11780:19;;7879:64:0;11406:399:1;7879:64:0;7971:1;7962:6;:10;7954:64;;;;-1:-1:-1;;;7954:64:0;;12012:2:1;7954:64:0;;;11994:21:1;12051:2;12031:18;;;12024:30;12090:34;12070:18;;;12063:62;-1:-1:-1;;;12141:18:1;;;12134:39;12190:19;;7954:64:0;11810:405:1;7954:64:0;8029:17;2525:6;;-1:-1:-1;;;;;8063:15:0;;;2525:6;;8063:15;;;;:32;;-1:-1:-1;2498:7:0;2525:6;-1:-1:-1;;;;;8082:13:0;;;2525:6;;8082:13;;8063:32;:52;;;;-1:-1:-1;8105:10:0;;-1:-1:-1;;;;;8099:16:0;;;8105:10;;8099:16;;8063:52;8059:1773;;;-1:-1:-1;;;;;8141:10:0;;;;;;:4;:10;;;;;;;;8140:11;:24;;;;-1:-1:-1;;;;;;8156:8:0;;;;;;:4;:8;;;;;;;;8155:9;8140:24;8132:33;;;;;;8185:9;;8196:1;8185:12;8182:139;;8229:76;8301:3;8229:67;8251:15;;8241:9;;:25;8240:55;;8281:14;;8240:55;;;8268:12;;8240:55;8229:6;;:10;:67::i;:76::-;8217:88;;8182:139;8338:9;;:11;8335:95;;8381:33;8410:3;8381:24;8392:12;;8381:6;:10;;:24;;;;:::i;:33::-;8369:45;;8335:95;8458:13;;-1:-1:-1;;;;;8450:21:0;;;8458:13;;8450:21;:55;;;;-1:-1:-1;8489:15:0;;-1:-1:-1;;;;;8475:30:0;;;8489:15;;8475:30;;8450:55;:83;;;;-1:-1:-1;;;;;;8511:22:0;;;;;;:18;:22;;;;;;;;8509:24;8450:83;8446:420;;;8573:12;;8563:6;:22;;8555:60;;;;-1:-1:-1;;;8555:60:0;;12422:2:1;8555:60:0;;;12404:21:1;12461:2;12441:18;;;12434:30;12500:27;12480:18;;;12473:55;12545:18;;8555:60:0;12220:349:1;8555:60:0;8668:14;;8658:6;8642:13;8652:2;-1:-1:-1;;;;;6100:18:0;6073:7;6100:18;;;:9;:18;;;;;;;6007:119;8642:13;:22;;;;:::i;:::-;:40;;8634:79;;;;-1:-1:-1;;;8634:79:0;;12906:2:1;8634:79:0;;;12888:21:1;12945:2;12925:18;;;12918:30;12984:28;12964:18;;;12957:56;13030:18;;8634:79:0;12704:350:1;8634:79:0;8744:76;8816:3;8744:67;8766:15;;8756:9;;:25;8755:55;;8796:14;;8755:55;;8744:76;8839:9;:11;;8732:88;;-1:-1:-1;8839:9:0;:11;;;:::i;:::-;;;;;;8446:420;8891:13;;-1:-1:-1;;;;;8885:19:0;;;8891:13;;8885:19;:43;;;;-1:-1:-1;;;;;;8908:20:0;;8923:4;8908:20;;8885:43;8882:174;;;8961:79;9036:3;8961:70;8983:16;;8973:9;;:26;8972:58;;9015:15;;8972:58;;;9001:13;;8961:6;;:10;:70::i;:79::-;8949:91;;8882:174;9121:4;9072:28;6100:18;;;:9;:18;;;;;;9147:6;;-1:-1:-1;;;9147:6:0;;;;9146:7;:30;;;;-1:-1:-1;9163:13:0;;-1:-1:-1;;;;;9157:19:0;;;9163:13;;9157:19;9146:30;:45;;;;-1:-1:-1;9180:11:0;;-1:-1:-1;;;9180:11:0;;;;9146:45;:89;;;;;9218:17;;9195:20;:40;9146:89;:123;;;;;9251:18;;9239:9;;:30;9146:123;9142:679;;;9309:13;;9294:12;:28;9290:90;;;9359:1;9347:9;:13;9290:90;9418:1;9406:9;;:13;9398:49;;;;-1:-1:-1;;;9398:49:0;;13401:2:1;9398:49:0;;;13383:21:1;13440:2;13420:18;;;13413:30;13479:25;13459:18;;;13452:53;13522:18;;9398:49:0;13199:347:1;9398:49:0;9466:69;9483:51;9487:6;9495:38;9499:20;9521:11;;9495:3;:38::i;:::-;9483:3;:51::i;:::-;9466:16;:69::i;:::-;9583:21;9627:22;;9623:106;;9674:35;9687:21;9674:12;:35::i;:::-;9747:9;:11;;;:9;:11;;;:::i;:::-;;;;-1:-1:-1;;9793:12:0;9777:13;:28;-1:-1:-1;9142:679:0;8117:1715;8059:1773;9847:11;;9844:161;;9915:4;9897:24;;;;:9;:24;;;;;;:39;;9926:9;9897:28;:39::i;:::-;9890:4;9872:24;;;;:9;:24;;;;;;;:64;;;;9954:39;;-1:-1:-1;;;;;9954:39:0;;;;;;;9983:9;1500:25:1;;1488:2;1473:18;;1354:177;9954:39:0;;;;;;;;9844:161;-1:-1:-1;;;;;10031:15:0;;;;;;:9;:15;;;;;;:27;;10051:6;10031:19;:27::i;:::-;-1:-1:-1;;;;;10015:15:0;;;;;;:9;:15;;;;;:43;10083:40;10101:21;:6;10112:9;10101:10;:21::i;:::-;-1:-1:-1;;;;;10083:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10069:13:0;;;;;;;:9;:13;;;;;:54;;;;10139:41;;;10158:21;:6;10169:9;10158:10;:21::i;:::-;10139:41;;1500:25:1;;;1488:2;1473:18;10139:41:0;;;;;;;7789:2399;7720:2468;;;:::o;1352:190::-;1438:7;1474:12;1466:6;;;;1458:29;;;;-1:-1:-1;;;1458:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1498:9:0;1510:5;1514:1;1510;:5;:::i;:::-;1498:17;1352:190;-1:-1:-1;;;;;1352:190:0:o;10304:483::-;5236:6;:13;;-1:-1:-1;;;;5236:13:0;-1:-1:-1;;;5236:13:0;;;10406:16:::1;::::0;;10420:1:::1;10406:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10406:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10406:16:0::1;10382:40;;10451:4;10433;10438:1;10433:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10433:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10477:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10477:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10433:7;;10477:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10467:4;10472:1;10467:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10467:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10542:15:::1;::::0;10510:62:::1;::::0;10527:4:::1;::::0;10542:15:::1;10560:11:::0;10510:8:::1;:62::i;:::-;10583:15;::::0;:196:::1;::::0;-1:-1:-1;;;10583:196:0;;-1:-1:-1;;;;;10583:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10664:11;;10583:15:::1;::::0;10706:4;;10733::::1;::::0;10753:15:::1;::::0;10583:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5272:6:0;:14;;-1:-1:-1;;;;5272:14:0;;;-1:-1:-1;;;;10304:483:0:o;11084:92::-;11141:10;;:27;;-1:-1:-1;;;;;11141:10:0;;;;:27;;;;;11161:6;;11141:10;:27;:10;:27;11161:6;11141:10;:27;;;;;;;;;;;;;;;;;;;1550:246;1608:7;1632:1;1637;1632:6;1628:47;;-1:-1:-1;1662:1:0;1655:8;;1628:47;1685:9;1697:5;1701:1;1697;:5;:::i;:::-;1685:17;-1:-1:-1;1730:1:0;1721:5;1725:1;1685:17;1721:5;:::i;:::-;:10;1713:56;;;;-1:-1:-1;;;1713:56:0;;15093:2:1;1713:56:0;;;15075:21:1;15132:2;15112:18;;;15105:30;15171:34;15151:18;;;15144:62;-1:-1:-1;;;15222:18:1;;;15215:31;15263:19;;1713:56:0;14891:397:1;1713:56:0;1787:1;1550:246;-1:-1:-1;;;1550:246:0:o;1804:132::-;1862:7;1889:39;1893:1;1896;1889:39;;;;;;;;;;;;;;;;;:3;:39::i;10198:98::-;10255:7;10282:1;10280;:3;10279:9;;10287:1;10279:9;;;-1:-1:-1;10285:1:0;10198:98;-1:-1:-1;10198:98:0:o;1021:179::-;1079:7;;1111:5;1115:1;1111;:5;:::i;:::-;1099:17;;1140:1;1135;:6;;1127:46;;;;-1:-1:-1;;;1127:46:0;;15495:2:1;1127:46:0;;;15477:21:1;15534:2;15514:18;;;15507:30;15573:29;15553:18;;;15546:57;15620:18;;1127:46:0;15293:351:1;1208:136:0;1266:7;1293:43;1297:1;1300;1293:43;;;;;;;;;;;;;;;;;:3;:43::i;1944:189::-;2030:7;2065:12;2058:5;2050:28;;;;-1:-1:-1;;;2050:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2089:9:0;2101:5;2105:1;2101;:5;:::i;14:548: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;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:134::-;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;2004:127::-;2065:10;2060:3;2056:20;2053:1;2046:31;2096:4;2093:1;2086:15;2120:4;2117:1;2110:15;2136:1121;2220:6;2251:2;2294;2282:9;2273:7;2269:23;2265:32;2262:52;;;2310:1;2307;2300:12;2262:52;2350:9;2337:23;2379:18;2420:2;2412:6;2409:14;2406:34;;;2436:1;2433;2426:12;2406:34;2474:6;2463:9;2459:22;2449:32;;2519:7;2512:4;2508:2;2504:13;2500:27;2490:55;;2541:1;2538;2531:12;2490:55;2577:2;2564:16;2599:2;2595;2592:10;2589:36;;;2605:18;;:::i;:::-;2651:2;2648:1;2644:10;2683:2;2677:9;2746:2;2742:7;2737:2;2733;2729:11;2725:25;2717:6;2713:38;2801:6;2789:10;2786:22;2781:2;2769:10;2766:18;2763:46;2760:72;;;2812:18;;:::i;:::-;2848:2;2841:22;2898:18;;;2932:15;;;;-1:-1:-1;2974:11:1;;;2970:20;;;3002:19;;;2999:39;;;3034:1;3031;3024:12;2999:39;3058:11;;;;3078:148;3094:6;3089:3;3086:15;3078:148;;;3160:23;3179:3;3160:23;:::i;:::-;3148:36;;3111:12;;;;3204;;;;3078:148;;;3245:6;2136:1121;-1:-1:-1;;;;;;;;2136:1121:1:o;3262:456::-;3339:6;3347;3355;3408:2;3396:9;3387:7;3383:23;3379:32;3376:52;;;3424:1;3421;3414:12;3376:52;3463:9;3450:23;3482:31;3507:5;3482:31;:::i;:::-;3532:5;-1:-1:-1;3589:2:1;3574:18;;3561:32;3602:33;3561:32;3602:33;:::i;:::-;3262:456;;3654:7;;-1:-1:-1;;;3708:2:1;3693:18;;;;3680:32;;3262:456::o;3912:247::-;3971:6;4024:2;4012:9;4003:7;3999:23;3995:32;3992:52;;;4040:1;4037;4030:12;3992:52;4079:9;4066:23;4098:31;4123:5;4098:31;:::i;4372:388::-;4440:6;4448;4501:2;4489:9;4480:7;4476:23;4472:32;4469:52;;;4517:1;4514;4507:12;4469:52;4556:9;4543:23;4575:31;4600:5;4575:31;:::i;:::-;4625:5;-1:-1:-1;4682:2:1;4667:18;;4654:32;4695:33;4654:32;4695:33;:::i;:::-;4747:7;4737:17;;;4372:388;;;;;:::o;4765:180::-;4824:6;4877:2;4865:9;4856:7;4852:23;4848:32;4845:52;;;4893:1;4890;4883:12;4845:52;-1:-1:-1;4916:23:1;;4765:180;-1:-1:-1;4765:180:1:o;4950:356::-;5152:2;5134:21;;;5171:18;;;5164:30;5230:34;5225:2;5210:18;;5203:62;5297:2;5282:18;;4950:356::o;5501:127::-;5562:10;5557:3;5553:20;5550:1;5543:31;5593:4;5590:1;5583:15;5617:4;5614:1;5607:15;5633:416;5722:1;5759:5;5722:1;5773:270;5794:7;5784:8;5781:21;5773:270;;;5853:4;5849:1;5845:6;5841:17;5835:4;5832:27;5829:53;;;5862:18;;:::i;:::-;5912:7;5902:8;5898:22;5895:55;;;5932:16;;;;5895:55;6011:22;;;;5971:15;;;;5773:270;;;5777:3;5633:416;;;;;:::o;6054:806::-;6103:5;6133:8;6123:80;;-1:-1:-1;6174:1:1;6188:5;;6123:80;6222:4;6212:76;;-1:-1:-1;6259:1:1;6273:5;;6212:76;6304:4;6322:1;6317:59;;;;6390:1;6385:130;;;;6297:218;;6317:59;6347:1;6338:10;;6361:5;;;6385:130;6422:3;6412:8;6409:17;6406:43;;;6429:18;;:::i;:::-;-1:-1:-1;;6485:1:1;6471:16;;6500:5;;6297:218;;6599:2;6589:8;6586:16;6580:3;6574:4;6571:13;6567:36;6561:2;6551:8;6548:16;6543:2;6537:4;6534:12;6530:35;6527:77;6524:159;;;-1:-1:-1;6636:19:1;;;6668:5;;6524:159;6715:34;6740:8;6734:4;6715:34;:::i;:::-;6785:6;6781:1;6777:6;6773:19;6764:7;6761:32;6758:58;;;6796:18;;:::i;:::-;6834:20;;6054:806;-1:-1:-1;;;6054:806:1:o;6865:140::-;6923:5;6952:47;6993:4;6983:8;6979:19;6973:4;6952:47;:::i;7010:168::-;7083:9;;;7114;;7131:15;;;7125:22;;7111:37;7101:71;;7152:18;;:::i;7183:127::-;7244:10;7239:3;7235:20;7232:1;7225:31;7275:4;7272:1;7265:15;7299:4;7296:1;7289:15;7315:184;7385:6;7438:2;7426:9;7417:7;7413:23;7409:32;7406:52;;;7454:1;7451;7444:12;7406:52;-1:-1:-1;7477:16:1;;7315:184;-1:-1:-1;7315:184:1:o;7791:277::-;7858:6;7911:2;7899:9;7890:7;7886:23;7882:32;7879:52;;;7927:1;7924;7917:12;7879:52;7959:9;7953:16;8012:5;8005:13;7998:21;7991:5;7988:32;7978:60;;8034:1;8031;8024:12;8425:251;8495:6;8548:2;8536:9;8527:7;8523:23;8519:32;8516:52;;;8564:1;8561;8554:12;8516:52;8596:9;8590:16;8615:31;8640:5;8615:31;:::i;9602:306::-;9690:6;9698;9706;9759:2;9747:9;9738:7;9734:23;9730:32;9727:52;;;9775:1;9772;9765:12;9727:52;9804:9;9798:16;9788:26;;9854:2;9843:9;9839:18;9833:25;9823:35;;9898:2;9887:9;9883:18;9877:25;9867:35;;9602:306;;;;;:::o;12574:125::-;12639:9;;;12660:10;;;12657:36;;;12673:18;;:::i;13059:135::-;13098:3;13119:17;;;13116:43;;13139:18;;:::i;:::-;-1:-1:-1;13186:1:1;13175:13;;13059:135::o;13551:128::-;13618:9;;;13639:11;;;13636:37;;;13653:18;;:::i;13684:980::-;13946:4;13994:3;13983:9;13979:19;14025:6;14014:9;14007:25;14051:2;14089:6;14084:2;14073:9;14069:18;14062:34;14132:3;14127:2;14116:9;14112:18;14105:31;14156:6;14191;14185:13;14222:6;14214;14207:22;14260:3;14249:9;14245:19;14238:26;;14299:2;14291:6;14287:15;14273:29;;14320:1;14330:195;14344:6;14341:1;14338:13;14330:195;;;14409:13;;-1:-1:-1;;;;;14405:39:1;14393:52;;14500:15;;;;14465:12;;;;14441:1;14359:9;14330:195;;;-1:-1:-1;;;;;;;14581:32:1;;;;14576:2;14561:18;;14554:60;-1:-1:-1;;;14645:3:1;14630:19;14623:35;14542:3;13684:980;-1:-1:-1;;;13684:980:1:o;14669:217::-;14709:1;14735;14725:132;;14779:10;14774:3;14770:20;14767:1;14760:31;14814:4;14811:1;14804:15;14842:4;14839:1;14832:15;14725:132;-1:-1:-1;14871:9:1;;14669:217::o

Swarm Source

ipfs://923647dd00015cec401c4aa494575d7c0d8d2439007c8ebd243d421677071363

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.