ETH Price: $1,853.80 (-0.16%)
 

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
Approve209515382024-10-12 19:13:59500 days ago1728760439IN
0xB73473c8...201bf0Ba2
0 ETH0.0002783610.58535333
Approve209515382024-10-12 19:13:59500 days ago1728760439IN
0xB73473c8...201bf0Ba2
0 ETH0.0002571910.58535333
Transfer192230262024-02-14 1:45:23741 days ago1707875123IN
0xB73473c8...201bf0Ba2
0 ETH0.0034311917.05813544
Approve163406292023-01-05 12:35:591146 days ago1672922159IN
0xB73473c8...201bf0Ba2
0 ETH0.0006219725.59871697
Approve142399752022-02-20 1:28:471465 days ago1645320527IN
0xB73473c8...201bf0Ba2
0 ETH0.0022844694.02233997
Approve142399742022-02-20 1:28:401465 days ago1645320520IN
0xB73473c8...201bf0Ba2
0 ETH0.0022750793.63604828
Approve142397342022-02-20 0:35:391465 days ago1645317339IN
0xB73473c8...201bf0Ba2
0 ETH0.002053884.52916796
Approve138702172021-12-24 21:06:321522 days ago1640379992IN
0xB73473c8...201bf0Ba2
0 ETH0.0017934773.81479257
Approve138691502021-12-24 17:05:041523 days ago1640365504IN
0xB73473c8...201bf0Ba2
0 ETH0.0017379371.52859704
Approve137956142021-12-13 8:03:101534 days ago1639382590IN
0xB73473c8...201bf0Ba2
0 ETH0.0011592947.71344358
Approve136663922021-11-22 19:40:051555 days ago1637610005IN
0xB73473c8...201bf0Ba2
0 ETH0.00323887133.30351908
Approve136499002021-11-20 4:52:301557 days ago1637383950IN
0xB73473c8...201bf0Ba2
0 ETH0.0022372992.08122938
Approve136413902021-11-18 20:12:031558 days ago1637266323IN
0xB73473c8...201bf0Ba2
0 ETH0.0092784199.18860949
Approve136179782021-11-15 3:29:201562 days ago1636946960IN
0xB73473c8...201bf0Ba2
0 ETH0.00484446104.00083305
Approve136141722021-11-14 13:08:421563 days ago1636895322IN
0xB73473c8...201bf0Ba2
0 ETH0.0038140281.8794721
Approve136127502021-11-14 8:01:431563 days ago1636876903IN
0xB73473c8...201bf0Ba2
0 ETH0.0043544993.48226877
Approve136127442021-11-14 8:00:311563 days ago1636876831IN
0xB73473c8...201bf0Ba2
0 ETH0.00511028109.70744767
Approve136126792021-11-14 7:43:131563 days ago1636875793IN
0xB73473c8...201bf0Ba2
0 ETH0.00468609100.60107602
Approve136126772021-11-14 7:43:021563 days ago1636875782IN
0xB73473c8...201bf0Ba2
0 ETH0.00583486125.26272838
Approve136126682021-11-14 7:40:571563 days ago1636875657IN
0xB73473c8...201bf0Ba2
0 ETH0.00299611123.31218197
Approve136125572021-11-14 7:12:021563 days ago1636873922IN
0xB73473c8...201bf0Ba2
0 ETH0.00485682104.26629776
Approve136125452021-11-14 7:09:251563 days ago1636873765IN
0xB73473c8...201bf0Ba2
0 ETH0.0024081990.25886249
Approve136125392021-11-14 7:08:081563 days ago1636873688IN
0xB73473c8...201bf0Ba2
0 ETH0.0046543999.92048322
Approve136124702021-11-14 6:52:391563 days ago1636872759IN
0xB73473c8...201bf0Ba2
0 ETH0.0043953294.35870483
Approve136124552021-11-14 6:49:561563 days ago1636872596IN
0xB73473c8...201bf0Ba2
0 ETH0.0042616291.48842806
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer192230262024-02-14 1:45:23741 days ago1707875123
0xB73473c8...201bf0Ba2
0 ETH
Transfer192230262024-02-14 1:45:23741 days ago1707875123
0xB73473c8...201bf0Ba2
0 ETH
-136482142021-11-19 22:38:231557 days ago1637361503
0xB73473c8...201bf0Ba2
0.01149067 ETH
-136482142021-11-19 22:38:231557 days ago1637361503
0xB73473c8...201bf0Ba2
0.01149067 ETH
-136424912021-11-19 0:21:371558 days ago1637281297
0xB73473c8...201bf0Ba2
0.00311535 ETH
-136424912021-11-19 0:21:371558 days ago1637281297
0xB73473c8...201bf0Ba2
0.00311535 ETH
-136179812021-11-15 3:30:301562 days ago1636947030
0xB73473c8...201bf0Ba2
0.00492189 ETH
-136179812021-11-15 3:30:301562 days ago1636947030
0xB73473c8...201bf0Ba2
0.00492189 ETH
-136149112021-11-14 15:59:141563 days ago1636905554
0xB73473c8...201bf0Ba2
0.01954321 ETH
-136149112021-11-14 15:59:141563 days ago1636905554
0xB73473c8...201bf0Ba2
0.01954321 ETH
-136147172021-11-14 15:16:021563 days ago1636902962
0xB73473c8...201bf0Ba2
0.01439946 ETH
-136147172021-11-14 15:16:021563 days ago1636902962
0xB73473c8...201bf0Ba2
0.01439946 ETH
-136142092021-11-14 13:18:581563 days ago1636895938
0xB73473c8...201bf0Ba2
0.06770683 ETH
-136142092021-11-14 13:18:581563 days ago1636895938
0xB73473c8...201bf0Ba2
0.06770683 ETH
-136128692021-11-14 8:26:011563 days ago1636878361
0xB73473c8...201bf0Ba2
0.04114025 ETH
-136128692021-11-14 8:26:011563 days ago1636878361
0xB73473c8...201bf0Ba2
0.04114025 ETH
-136127142021-11-14 7:52:361563 days ago1636876356
0xB73473c8...201bf0Ba2
0.01274131 ETH
-136127142021-11-14 7:52:361563 days ago1636876356
0xB73473c8...201bf0Ba2
0.01274131 ETH
-136126832021-11-14 7:43:461563 days ago1636875826
0xB73473c8...201bf0Ba2
0.01138987 ETH
-136126832021-11-14 7:43:461563 days ago1636875826
0xB73473c8...201bf0Ba2
0.01138987 ETH
-136126362021-11-14 7:31:011563 days ago1636875061
0xB73473c8...201bf0Ba2
0.0129634 ETH
-136126362021-11-14 7:31:011563 days ago1636875061
0xB73473c8...201bf0Ba2
0.0129634 ETH
-136126322021-11-14 7:28:371563 days ago1636874917
0xB73473c8...201bf0Ba2
0.00705591 ETH
-136126322021-11-14 7:28:371563 days ago1636874917
0xB73473c8...201bf0Ba2
0.00705591 ETH
-136125902021-11-14 7:17:591563 days ago1636874279
0xB73473c8...201bf0Ba2
0.01909113 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:
FTW

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license
/**
 *Submitted for verification at Etherscan.io on 2021-11-14
*/

/**
  
@FTWtokenETH

*/

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

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

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

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

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

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

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

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

}

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

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

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

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

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

}  

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

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

contract FTW is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _rOwned;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping (address => uint) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1000000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    
    uint256 private _feeAddr1;
    uint256 private _feeAddr2;
    address payable private _feeAddrWallet1;
    address payable private _feeAddrWallet2;
    
    string private constant _name = "For The Win";
    string private constant _symbol = "FTW";
    uint8 private constant _decimals = 9;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    bool private cooldownEnabled = false;
    uint256 private _maxTxAmount = _tTotal;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    constructor () {
        _feeAddrWallet1 = payable(0x429291D126656B681DeACeaE5B096FD604D4349D);
        _feeAddrWallet2 = payable(0x429291D126656B681DeACeaE5B096FD604D4349D);
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_feeAddrWallet1] = true;
        _isExcludedFromFee[_feeAddrWallet2] = true;
        emit Transfer(address(0xC5E0a7Fe9955e9FdeD6D4DEEd82866AcCE85e132), _msgSender(), _tTotal);
    }

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

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

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

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

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

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

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

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

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

    function setCooldownEnabled(bool onoff) external onlyOwner() {
        cooldownEnabled = onoff;
    }

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        _feeAddr1 = 0;
        _feeAddr2 = 10;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && cooldownEnabled) {
                // Cooldown
                require(amount <= _maxTxAmount);
                require(cooldown[to] < block.timestamp);
                cooldown[to] = block.timestamp + (30 seconds);
            }
            
            
            if (to == uniswapV2Pair && from != address(uniswapV2Router) && ! _isExcludedFromFee[from]) {
                _feeAddr1 = 0;
                _feeAddr2 = 10;
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && from != uniswapV2Pair && swapEnabled) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
		
        _tokenTransfer(from,to,amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }
        
    function sendETHToFee(uint256 amount) private {
        _feeAddrWallet2.transfer(amount);
    }
    
    function openTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        _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);
        swapEnabled = true;
        cooldownEnabled = true;
        _maxTxAmount = 50000000 * 10**9;
        tradingOpen = true;
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }
    
    function nonosquare(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }
    
    function delBot(address notbot) public onlyOwner {
        bots[notbot] = false;
    }
        
    function _tokenTransfer(address sender, address recipient, uint256 amount) private {
        _transferStandard(sender, recipient, amount);
    }

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

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

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

    receive() external payable {}
    
    function manualswap() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }
    
    function manualsend() external {
        require(_msgSender() == _feeAddrWallet1);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }
    

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

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

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

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

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

Contract Security Audit

Contract ABI

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":[{"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":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"nonosquare","outputs":[],"stateMutability":"nonpayable","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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","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"}]

60806040526200001a670de0b6b3a764000060001962000227565b620000289060001962000203565b600855600f805462ffffff60a81b19169055670de0b6b3a76400006010553480156200005357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600c805473429291d126656b681deaceae5b096fd604d4349d6001600160a01b03199182168117909255600d8054909116909117905560085460026000620000da3390565b6001600160a01b03166001600160a01b031681526020019081526020016000208190555060016005600062000114620001f460201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526005909352818320805485166001908117909155600c54821684528284208054861682179055600d54909116835291208054909216179055620001853390565b6001600160a01b031673c5e0a7fe9955e9fded6d4deed82866acce85e1326001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef670de0b6b3a7640000604051620001e691815260200190565b60405180910390a362000248565b6000546001600160a01b031690565b6000828210156200022257634e487b7160e01b81526011600452602481fd5b500390565b6000826200024357634e487b7160e01b81526012600452602481fd5b500690565b6119b280620002586000396000f3fe6080604052600436106101025760003560e01c80636fc3eaec1161009557806395d89b411161006457806395d89b41146102b9578063a9059cbb146102e5578063c3c8cd8014610305578063c9567bf91461031a578063dd62ed3e1461032f57600080fd5b80636fc3eaec1461024757806370a082311461025c578063715018a61461027c5780638da5cb5b1461029157600080fd5b806323b872dd116100d157806323b872dd146101cb578063273123b7146101eb578063313ce5671461020b5780635932ead11461022757600080fd5b806306fdde031461010e578063095ea7b31461015457806318160ddd146101845780631b3f71ae146101a957600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5060408051808201909152600b81526a2337b9102a3432902bb4b760a91b60208201525b60405161014b9190611784565b60405180910390f35b34801561016057600080fd5b5061017461016f36600461162d565b610375565b604051901515815260200161014b565b34801561019057600080fd5b50670de0b6b3a76400005b60405190815260200161014b565b3480156101b557600080fd5b506101c96101c4366004611658565b61038c565b005b3480156101d757600080fd5b506101746101e63660046115ed565b610439565b3480156101f757600080fd5b506101c961020636600461157d565b6104a2565b34801561021757600080fd5b506040516009815260200161014b565b34801561023357600080fd5b506101c961024236600461171f565b6104ed565b34801561025357600080fd5b506101c9610535565b34801561026857600080fd5b5061019b61027736600461157d565b610562565b34801561028857600080fd5b506101c9610584565b34801561029d57600080fd5b506000546040516001600160a01b03909116815260200161014b565b3480156102c557600080fd5b5060408051808201909152600381526246545760e81b602082015261013e565b3480156102f157600080fd5b5061017461030036600461162d565b6105f8565b34801561031157600080fd5b506101c9610605565b34801561032657600080fd5b506101c961063b565b34801561033b57600080fd5b5061019b61034a3660046115b5565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006103823384846109fc565b5060015b92915050565b6000546001600160a01b031633146103bf5760405162461bcd60e51b81526004016103b6906117d7565b60405180910390fd5b60005b8151811015610435576001600660008484815181106103f157634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061042d816118ea565b9150506103c2565b5050565b6000610446848484610b20565b610498843361049385604051806060016040528060288152602001611955602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610e6b565b6109fc565b5060019392505050565b6000546001600160a01b031633146104cc5760405162461bcd60e51b81526004016103b6906117d7565b6001600160a01b03166000908152600660205260409020805460ff19169055565b6000546001600160a01b031633146105175760405162461bcd60e51b81526004016103b6906117d7565b600f8054911515600160b81b0260ff60b81b19909216919091179055565b600c546001600160a01b0316336001600160a01b03161461055557600080fd5b4761055f81610ea5565b50565b6001600160a01b03811660009081526002602052604081205461038690610edf565b6000546001600160a01b031633146105ae5760405162461bcd60e51b81526004016103b6906117d7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610382338484610b20565b600c546001600160a01b0316336001600160a01b03161461062557600080fd5b600061063030610562565b905061055f81610f63565b6000546001600160a01b031633146106655760405162461bcd60e51b81526004016103b6906117d7565b600f54600160a01b900460ff16156106bf5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103b6565b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106fb3082670de0b6b3a76400006109fc565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561073457600080fd5b505afa158015610748573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076c9190611599565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156107b457600080fd5b505afa1580156107c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ec9190611599565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561083457600080fd5b505af1158015610848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086c9190611599565b600f80546001600160a01b0319166001600160a01b03928316179055600e541663f305d719473061089c81610562565b6000806108b16000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b15801561091457600080fd5b505af1158015610928573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061094d9190611757565b5050600f805466b1a2bc2ec5000060105563ffff00ff60a01b198116630101000160a01b17909155600e5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b1580156109c457600080fd5b505af11580156109d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610435919061173b565b6001600160a01b038316610a5e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b6565b6001600160a01b038216610abf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b6565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b845760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103b6565b6001600160a01b038216610be65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103b6565b60008111610c485760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103b6565b6000600a818155600b55546001600160a01b03848116911614801590610c7c57506000546001600160a01b03838116911614155b15610e5b576001600160a01b03831660009081526006602052604090205460ff16158015610cc357506001600160a01b03821660009081526006602052604090205460ff16155b610ccc57600080fd5b600f546001600160a01b038481169116148015610cf75750600e546001600160a01b03838116911614155b8015610d1c57506001600160a01b03821660009081526005602052604090205460ff16155b8015610d315750600f54600160b81b900460ff165b15610d8e57601054811115610d4557600080fd5b6001600160a01b0382166000908152600760205260409020544211610d6957600080fd5b610d7442601e61187c565b6001600160a01b0383166000908152600760205260409020555b600f546001600160a01b038381169116148015610db95750600e546001600160a01b03848116911614155b8015610dde57506001600160a01b03831660009081526005602052604090205460ff16155b15610dee576000600a908155600b555b6000610df930610562565b600f54909150600160a81b900460ff16158015610e245750600f546001600160a01b03858116911614155b8015610e395750600f54600160b01b900460ff165b15610e5957610e4781610f63565b478015610e5757610e5747610ea5565b505b505b610e66838383611108565b505050565b60008184841115610e8f5760405162461bcd60e51b81526004016103b69190611784565b506000610e9c84866118d3565b95945050505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610435573d6000803e3d6000fd5b6000600854821115610f465760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016103b6565b6000610f50611113565b9050610f5c8382611136565b9392505050565b600f805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fb957634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561100d57600080fd5b505afa158015611021573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110459190611599565b8160018151811061106657634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092010152600e5461108c91309116846109fc565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac947906110c590859060009086903090429060040161180c565b600060405180830381600087803b1580156110df57600080fd5b505af11580156110f3573d6000803e3d6000fd5b5050600f805460ff60a81b1916905550505050565b610e66838383611178565b600080600061112061126f565b909250905061112f8282611136565b9250505090565b6000610f5c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112af565b60008060008060008061118a876112dd565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111bc908761133a565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546111eb908661137c565b6001600160a01b03891660009081526002602052604090205561120d816113db565b6112178483611425565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161125c91815260200190565b60405180910390a3505050505050505050565b6008546000908190670de0b6b3a764000061128a8282611136565b8210156112a657505060085492670de0b6b3a764000092509050565b90939092509050565b600081836112d05760405162461bcd60e51b81526004016103b69190611784565b506000610e9c8486611894565b60008060008060008060008060006112fa8a600a54600b54611449565b925092509250600061130a611113565b9050600080600061131d8e87878761149e565b919e509c509a509598509396509194505050505091939550919395565b6000610f5c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e6b565b600080611389838561187c565b905083811015610f5c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103b6565b60006113e5611113565b905060006113f383836114ee565b30600090815260026020526040902054909150611410908261137c565b30600090815260026020526040902055505050565b600854611432908361133a565b600855600954611442908261137c565b6009555050565b6000808080611463606461145d89896114ee565b90611136565b90506000611476606461145d8a896114ee565b9050600061148e826114888b8661133a565b9061133a565b9992985090965090945050505050565b60008080806114ad88866114ee565b905060006114bb88876114ee565b905060006114c988886114ee565b905060006114db82611488868661133a565b939b939a50919850919650505050505050565b6000826114fd57506000610386565b600061150983856118b4565b9050826115168583611894565b14610f5c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103b6565b803561157881611931565b919050565b60006020828403121561158e578081fd5b8135610f5c81611931565b6000602082840312156115aa578081fd5b8151610f5c81611931565b600080604083850312156115c7578081fd5b82356115d281611931565b915060208301356115e281611931565b809150509250929050565b600080600060608486031215611601578081fd5b833561160c81611931565b9250602084013561161c81611931565b929592945050506040919091013590565b6000806040838503121561163f578182fd5b823561164a81611931565b946020939093013593505050565b6000602080838503121561166a578182fd5b823567ffffffffffffffff80821115611681578384fd5b818501915085601f830112611694578384fd5b8135818111156116a6576116a661191b565b8060051b604051601f19603f830116810181811085821117156116cb576116cb61191b565b604052828152858101935084860182860187018a10156116e9578788fd5b8795505b83861015611712576116fe8161156d565b8552600195909501949386019386016116ed565b5098975050505050505050565b600060208284031215611730578081fd5b8135610f5c81611946565b60006020828403121561174c578081fd5b8151610f5c81611946565b60008060006060848603121561176b578283fd5b8351925060208401519150604084015190509250925092565b6000602080835283518082850152825b818110156117b057858101830151858201604001528201611794565b818111156117c15783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b8181101561185b5784516001600160a01b031683529383019391830191600101611836565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561188f5761188f611905565b500190565b6000826118af57634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156118ce576118ce611905565b500290565b6000828210156118e5576118e5611905565b500390565b60006000198214156118fe576118fe611905565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461055f57600080fd5b801515811461055f57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a01dd728c948afe12ca67a2d6d2c9a5e708fbf8dbc3dc8d8152621abe758418264736f6c63430008040033

Deployed Bytecode

0x6080604052600436106101025760003560e01c80636fc3eaec1161009557806395d89b411161006457806395d89b41146102b9578063a9059cbb146102e5578063c3c8cd8014610305578063c9567bf91461031a578063dd62ed3e1461032f57600080fd5b80636fc3eaec1461024757806370a082311461025c578063715018a61461027c5780638da5cb5b1461029157600080fd5b806323b872dd116100d157806323b872dd146101cb578063273123b7146101eb578063313ce5671461020b5780635932ead11461022757600080fd5b806306fdde031461010e578063095ea7b31461015457806318160ddd146101845780631b3f71ae146101a957600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5060408051808201909152600b81526a2337b9102a3432902bb4b760a91b60208201525b60405161014b9190611784565b60405180910390f35b34801561016057600080fd5b5061017461016f36600461162d565b610375565b604051901515815260200161014b565b34801561019057600080fd5b50670de0b6b3a76400005b60405190815260200161014b565b3480156101b557600080fd5b506101c96101c4366004611658565b61038c565b005b3480156101d757600080fd5b506101746101e63660046115ed565b610439565b3480156101f757600080fd5b506101c961020636600461157d565b6104a2565b34801561021757600080fd5b506040516009815260200161014b565b34801561023357600080fd5b506101c961024236600461171f565b6104ed565b34801561025357600080fd5b506101c9610535565b34801561026857600080fd5b5061019b61027736600461157d565b610562565b34801561028857600080fd5b506101c9610584565b34801561029d57600080fd5b506000546040516001600160a01b03909116815260200161014b565b3480156102c557600080fd5b5060408051808201909152600381526246545760e81b602082015261013e565b3480156102f157600080fd5b5061017461030036600461162d565b6105f8565b34801561031157600080fd5b506101c9610605565b34801561032657600080fd5b506101c961063b565b34801561033b57600080fd5b5061019b61034a3660046115b5565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006103823384846109fc565b5060015b92915050565b6000546001600160a01b031633146103bf5760405162461bcd60e51b81526004016103b6906117d7565b60405180910390fd5b60005b8151811015610435576001600660008484815181106103f157634e487b7160e01b600052603260045260246000fd5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061042d816118ea565b9150506103c2565b5050565b6000610446848484610b20565b610498843361049385604051806060016040528060288152602001611955602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610e6b565b6109fc565b5060019392505050565b6000546001600160a01b031633146104cc5760405162461bcd60e51b81526004016103b6906117d7565b6001600160a01b03166000908152600660205260409020805460ff19169055565b6000546001600160a01b031633146105175760405162461bcd60e51b81526004016103b6906117d7565b600f8054911515600160b81b0260ff60b81b19909216919091179055565b600c546001600160a01b0316336001600160a01b03161461055557600080fd5b4761055f81610ea5565b50565b6001600160a01b03811660009081526002602052604081205461038690610edf565b6000546001600160a01b031633146105ae5760405162461bcd60e51b81526004016103b6906117d7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610382338484610b20565b600c546001600160a01b0316336001600160a01b03161461062557600080fd5b600061063030610562565b905061055f81610f63565b6000546001600160a01b031633146106655760405162461bcd60e51b81526004016103b6906117d7565b600f54600160a01b900460ff16156106bf5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103b6565b600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106fb3082670de0b6b3a76400006109fc565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561073457600080fd5b505afa158015610748573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076c9190611599565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156107b457600080fd5b505afa1580156107c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ec9190611599565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561083457600080fd5b505af1158015610848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086c9190611599565b600f80546001600160a01b0319166001600160a01b03928316179055600e541663f305d719473061089c81610562565b6000806108b16000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b15801561091457600080fd5b505af1158015610928573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061094d9190611757565b5050600f805466b1a2bc2ec5000060105563ffff00ff60a01b198116630101000160a01b17909155600e5460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b390604401602060405180830381600087803b1580156109c457600080fd5b505af11580156109d8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610435919061173b565b6001600160a01b038316610a5e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103b6565b6001600160a01b038216610abf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103b6565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b845760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103b6565b6001600160a01b038216610be65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103b6565b60008111610c485760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103b6565b6000600a818155600b55546001600160a01b03848116911614801590610c7c57506000546001600160a01b03838116911614155b15610e5b576001600160a01b03831660009081526006602052604090205460ff16158015610cc357506001600160a01b03821660009081526006602052604090205460ff16155b610ccc57600080fd5b600f546001600160a01b038481169116148015610cf75750600e546001600160a01b03838116911614155b8015610d1c57506001600160a01b03821660009081526005602052604090205460ff16155b8015610d315750600f54600160b81b900460ff165b15610d8e57601054811115610d4557600080fd5b6001600160a01b0382166000908152600760205260409020544211610d6957600080fd5b610d7442601e61187c565b6001600160a01b0383166000908152600760205260409020555b600f546001600160a01b038381169116148015610db95750600e546001600160a01b03848116911614155b8015610dde57506001600160a01b03831660009081526005602052604090205460ff16155b15610dee576000600a908155600b555b6000610df930610562565b600f54909150600160a81b900460ff16158015610e245750600f546001600160a01b03858116911614155b8015610e395750600f54600160b01b900460ff165b15610e5957610e4781610f63565b478015610e5757610e5747610ea5565b505b505b610e66838383611108565b505050565b60008184841115610e8f5760405162461bcd60e51b81526004016103b69190611784565b506000610e9c84866118d3565b95945050505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610435573d6000803e3d6000fd5b6000600854821115610f465760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016103b6565b6000610f50611113565b9050610f5c8382611136565b9392505050565b600f805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610fb957634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561100d57600080fd5b505afa158015611021573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110459190611599565b8160018151811061106657634e487b7160e01b600052603260045260246000fd5b6001600160a01b039283166020918202929092010152600e5461108c91309116846109fc565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac947906110c590859060009086903090429060040161180c565b600060405180830381600087803b1580156110df57600080fd5b505af11580156110f3573d6000803e3d6000fd5b5050600f805460ff60a81b1916905550505050565b610e66838383611178565b600080600061112061126f565b909250905061112f8282611136565b9250505090565b6000610f5c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112af565b60008060008060008061118a876112dd565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506111bc908761133a565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546111eb908661137c565b6001600160a01b03891660009081526002602052604090205561120d816113db565b6112178483611425565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161125c91815260200190565b60405180910390a3505050505050505050565b6008546000908190670de0b6b3a764000061128a8282611136565b8210156112a657505060085492670de0b6b3a764000092509050565b90939092509050565b600081836112d05760405162461bcd60e51b81526004016103b69190611784565b506000610e9c8486611894565b60008060008060008060008060006112fa8a600a54600b54611449565b925092509250600061130a611113565b9050600080600061131d8e87878761149e565b919e509c509a509598509396509194505050505091939550919395565b6000610f5c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e6b565b600080611389838561187c565b905083811015610f5c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103b6565b60006113e5611113565b905060006113f383836114ee565b30600090815260026020526040902054909150611410908261137c565b30600090815260026020526040902055505050565b600854611432908361133a565b600855600954611442908261137c565b6009555050565b6000808080611463606461145d89896114ee565b90611136565b90506000611476606461145d8a896114ee565b9050600061148e826114888b8661133a565b9061133a565b9992985090965090945050505050565b60008080806114ad88866114ee565b905060006114bb88876114ee565b905060006114c988886114ee565b905060006114db82611488868661133a565b939b939a50919850919650505050505050565b6000826114fd57506000610386565b600061150983856118b4565b9050826115168583611894565b14610f5c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103b6565b803561157881611931565b919050565b60006020828403121561158e578081fd5b8135610f5c81611931565b6000602082840312156115aa578081fd5b8151610f5c81611931565b600080604083850312156115c7578081fd5b82356115d281611931565b915060208301356115e281611931565b809150509250929050565b600080600060608486031215611601578081fd5b833561160c81611931565b9250602084013561161c81611931565b929592945050506040919091013590565b6000806040838503121561163f578182fd5b823561164a81611931565b946020939093013593505050565b6000602080838503121561166a578182fd5b823567ffffffffffffffff80821115611681578384fd5b818501915085601f830112611694578384fd5b8135818111156116a6576116a661191b565b8060051b604051601f19603f830116810181811085821117156116cb576116cb61191b565b604052828152858101935084860182860187018a10156116e9578788fd5b8795505b83861015611712576116fe8161156d565b8552600195909501949386019386016116ed565b5098975050505050505050565b600060208284031215611730578081fd5b8135610f5c81611946565b60006020828403121561174c578081fd5b8151610f5c81611946565b60008060006060848603121561176b578283fd5b8351925060208401519150604084015190509250925092565b6000602080835283518082850152825b818110156117b057858101830151858201604001528201611794565b818111156117c15783604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b8181101561185b5784516001600160a01b031683529383019391830191600101611836565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561188f5761188f611905565b500190565b6000826118af57634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156118ce576118ce611905565b500290565b6000828210156118e5576118e5611905565b500390565b60006000198214156118fe576118fe611905565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461055f57600080fd5b801515811461055f57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a01dd728c948afe12ca67a2d6d2c9a5e708fbf8dbc3dc8d8152621abe758418264736f6c63430008040033

Deployed Bytecode Sourcemap

3546:10297:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5429:83;;;;;;;;;;-1:-1:-1;5499:5:0;;;;;;;;;;;;-1:-1:-1;;;5499:5:0;;;;5429:83;;;;;;;:::i;:::-;;;;;;;;6281:161;;;;;;;;;;-1:-1:-1;6281:161:0;;;;;:::i;:::-;;:::i;:::-;;;5477:14:1;;5470:22;5452:41;;5440:2;5425:18;6281:161:0;5407:92:1;5706:95:0;;;;;;;;;;-1:-1:-1;4042:18:0;5706:95;;;10168:25:1;;;10156:2;10141:18;5706:95:0;10123:76:1;10391:167:0;;;;;;;;;;-1:-1:-1;10391:167:0;;;;;:::i;:::-;;:::i;:::-;;6450:313;;;;;;;;;;-1:-1:-1;6450:313:0;;;;;:::i;:::-;;:::i;10570:88::-;;;;;;;;;;-1:-1:-1;10570:88:0;;;;;:::i;:::-;;:::i;5615:83::-;;;;;;;;;;-1:-1:-1;5615:83:0;;4457:1;11334:36:1;;11322:2;11307:18;5615:83:0;11289:87:1;6771:103:0;;;;;;;;;;-1:-1:-1;6771:103:0;;;;;:::i;:::-;;:::i;11947:194::-;;;;;;;;;;;;;:::i;5809:138::-;;;;;;;;;;-1:-1:-1;5809:138:0;;;;;:::i;:::-;;:::i;2625:148::-;;;;;;;;;;;;;:::i;2411:79::-;;;;;;;;;;-1:-1:-1;2449:7:0;2476:6;2411:79;;-1:-1:-1;;;;;2476:6:0;;;4050:51:1;;4038:2;4023:18;2411:79:0;4005:102:1;5520:87:0;;;;;;;;;;-1:-1:-1;5592:7:0;;;;;;;;;;;;-1:-1:-1;;;5592:7:0;;;;5520:87;;5955:167;;;;;;;;;;-1:-1:-1;5955:167:0;;;;;:::i;:::-;;:::i;11740:195::-;;;;;;;;;;;;;:::i;9566:813::-;;;;;;;;;;;;;:::i;6130:143::-;;;;;;;;;;-1:-1:-1;6130:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6238:18:0;;;6211:7;6238:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6130:143;6281:161;6356:4;6373:39;209:10;6396:7;6405:6;6373:8;:39::i;:::-;-1:-1:-1;6430:4:0;6281:161;;;;;:::o;10391:167::-;2538:6;;-1:-1:-1;;;;;2538:6:0;209:10;2538:22;2530:67;;;;-1:-1:-1;;;2530:67:0;;;;;;;:::i;:::-;;;;;;;;;10468:6:::1;10463:88;10484:5;:12;10480:1;:16;10463:88;;;10535:4;10518;:14;10523:5;10529:1;10523:8;;;;;;-1:-1:-1::0;;;10523:8:0::1;;;;;;;;;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10518:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10518:14:0;:21;;-1:-1:-1;;10518:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10498:3;::::1;::::0;::::1;:::i;:::-;;;;10463:88;;;;10391:167:::0;:::o;6450:313::-;6548:4;6565:36;6575:6;6583:9;6594:6;6565:9;:36::i;:::-;6612:121;6621:6;209:10;6643:89;6681:6;6643:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6643:19:0;;;;;;:11;:19;;;;;;;;209:10;6643:33;;;;;;;;;;:37;:89::i;:::-;6612:8;:121::i;:::-;-1:-1:-1;6751:4:0;6450:313;;;;;:::o;10570:88::-;2538:6;;-1:-1:-1;;;;;2538:6:0;209:10;2538:22;2530:67;;;;-1:-1:-1;;;2530:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10630:12:0::1;10645:5;10630:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;10630:20:0::1;::::0;;10570:88::o;6771:103::-;2538:6;;-1:-1:-1;;;;;2538:6:0;209:10;2538:22;2530:67;;;;-1:-1:-1;;;2530:67:0;;;;;;;:::i;:::-;6843:15:::1;:23:::0;;;::::1;;-1:-1:-1::0;;;6843:23:0::1;-1:-1:-1::0;;;;6843:23:0;;::::1;::::0;;;::::1;::::0;;6771:103::o;11947:194::-;12013:15;;-1:-1:-1;;;;;12013:15:0;209:10;-1:-1:-1;;;;;11997:31:0;;11989:40;;;;;;12069:21;12101:32;12069:21;12101:12;:32::i;:::-;11947:194;:::o;5809:138::-;-1:-1:-1;;;;;5922:16:0;;5875:7;5922:16;;;:7;:16;;;;;;5902:37;;:19;:37::i;2625:148::-;2538:6;;-1:-1:-1;;;;;2538:6:0;209:10;2538:22;2530:67;;;;-1:-1:-1;;;2530:67:0;;;;;;;:::i;:::-;2732:1:::1;2716:6:::0;;2695:40:::1;::::0;-1:-1:-1;;;;;2716:6:0;;::::1;::::0;2695:40:::1;::::0;2732:1;;2695:40:::1;2763:1;2746:19:::0;;-1:-1:-1;;;;;;2746:19:0::1;::::0;;2625:148::o;5955:167::-;6033:4;6050:42;209:10;6074:9;6085:6;6050:9;:42::i;11740:195::-;11806:15;;-1:-1:-1;;;;;11806:15:0;209:10;-1:-1:-1;;;;;11790:31:0;;11782:40;;;;;;11833:23;11859:24;11877:4;11859:9;:24::i;:::-;11833:50;;11894:33;11911:15;11894:16;:33::i;9566:813::-;2538:6;;-1:-1:-1;;;;;2538:6:0;209:10;2538:22;2530:67;;;;-1:-1:-1;;;2530:67:0;;;;;;;:::i;:::-;9630:11:::1;::::0;-1:-1:-1;;;9630:11:0;::::1;;;9629:12;9621:47;;;::::0;-1:-1:-1;;;9621:47:0;;9872:2:1;9621:47:0::1;::::0;::::1;9854:21:1::0;9911:2;9891:18;;;9884:30;9950:25;9930:18;;;9923:53;9993:18;;9621:47:0::1;9844:173:1::0;9621:47:0::1;9790:15;:34:::0;;-1:-1:-1;;;;;;9790:34:0::1;9736:42;9790:34:::0;;::::1;::::0;;;9835:58:::1;9852:4;9736:42:::0;4042:18:::1;9835:8;:58::i;:::-;9938:16;-1:-1:-1::0;;;;;9938:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9920:56:0::1;;9985:4;9992:16;-1:-1:-1::0;;;;;9992:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9920:96;::::0;-1:-1:-1;;;;;;9920:96:0::1;::::0;;;;;;-1:-1:-1;;;;;4342:15:1;;;9920:96:0::1;::::0;::::1;4324:34:1::0;4394:15;;4374:18;;;4367:43;4259:18;;9920:96:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9904:13;:112:::0;;-1:-1:-1;;;;;;9904:112:0::1;-1:-1:-1::0;;;;;9904:112:0;;::::1;;::::0;;10027:15:::1;::::0;::::1;:31;10066:21;10097:4;10103:24;10097:4:::0;10103:9:::1;:24::i;:::-;10128:1;10130::::0;10132:7:::1;2449::::0;2476:6;-1:-1:-1;;;;;2476:6:0;;2411:79;10132:7:::1;10027:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10027:129:0;;;-1:-1:-1;;;;;5059:15:1;;;10027:129:0::1;::::0;::::1;5041:34:1::0;5091:18;;;5084:34;;;;5134:18;;;5127:34;;;;5177:18;;;5170:34;5241:15;;;5220:19;;;5213:44;10140:15:0::1;5273:19:1::0;;;5266:35;4975:19;;10027:129:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10167:11:0::1;:18:::0;;10244:16:::1;10229:12;:31:::0;-1:-1:-1;;;;10271:18:0;;-1:-1:-1;;;10271:18:0;;;;10338:15:::1;::::0;10300:71:::1;::::0;-1:-1:-1;;;10300:71:0;;-1:-1:-1;;;;;10338:15:0;;::::1;10300:71;::::0;::::1;4595:51:1::0;-1:-1:-1;;4662:18:1;;;4655:34;10307:13:0;;;-1:-1:-1;10300:29:0::1;::::0;4568:18:1;;10300:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7144:335::-:0;-1:-1:-1;;;;;7237:19:0;;7229:68;;;;-1:-1:-1;;;7229:68:0;;9467:2:1;7229:68:0;;;9449:21:1;9506:2;9486:18;;;9479:30;9545:34;9525:18;;;9518:62;-1:-1:-1;;;9596:18:1;;;9589:34;9640:19;;7229:68:0;9439:226:1;7229:68:0;-1:-1:-1;;;;;7316:21:0;;7308:68;;;;-1:-1:-1;;;7308:68:0;;7129:2:1;7308:68:0;;;7111:21:1;7168:2;7148:18;;;7141:30;7207:34;7187:18;;;7180:62;-1:-1:-1;;;7258:18:1;;;7251:32;7300:19;;7308:68:0;7101:224:1;7308:68:0;-1:-1:-1;;;;;7387:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7439:32;;10168:25:1;;;7439:32:0;;10141:18:1;7439:32:0;;;;;;;7144:335;;;:::o;7487:1463::-;-1:-1:-1;;;;;7575:18:0;;7567:68;;;;-1:-1:-1;;;7567:68:0;;9061:2:1;7567:68:0;;;9043:21:1;9100:2;9080:18;;;9073:30;9139:34;9119:18;;;9112:62;-1:-1:-1;;;9190:18:1;;;9183:35;9235:19;;7567:68:0;9033:227:1;7567:68:0;-1:-1:-1;;;;;7654:16:0;;7646:64;;;;-1:-1:-1;;;7646:64:0;;6314:2:1;7646:64:0;;;6296:21:1;6353:2;6333:18;;;6326:30;6392:34;6372:18;;;6365:62;-1:-1:-1;;;6443:18:1;;;6436:33;6486:19;;7646:64:0;6286:225:1;7646:64:0;7738:1;7729:6;:10;7721:64;;;;-1:-1:-1;;;7721:64:0;;8651:2:1;7721:64:0;;;8633:21:1;8690:2;8670:18;;;8663:30;8729:34;8709:18;;;8702:62;-1:-1:-1;;;8780:18:1;;;8773:39;8829:19;;7721:64:0;8623:231:1;7721:64:0;7808:1;7796:9;:13;;;7820:9;:14;2476:6;-1:-1:-1;;;;;7849:15:0;;;2476:6;;7849:15;;;;:32;;-1:-1:-1;2449:7:0;2476:6;-1:-1:-1;;;;;7868:13:0;;;2476:6;;7868:13;;7849:32;7845:1053;;;-1:-1:-1;;;;;7907:10:0;;;;;;:4;:10;;;;;;;;7906:11;:24;;;;-1:-1:-1;;;;;;7922:8:0;;;;;;:4;:8;;;;;;;;7921:9;7906:24;7898:33;;;;;;7958:13;;-1:-1:-1;;;;;7950:21:0;;;7958:13;;7950:21;:55;;;;-1:-1:-1;7989:15:0;;-1:-1:-1;;;;;7975:30:0;;;7989:15;;7975:30;;7950:55;:83;;;;-1:-1:-1;;;;;;8011:22:0;;;;;;:18;:22;;;;;;;;8009:24;7950:83;:102;;;;-1:-1:-1;8037:15:0;;-1:-1:-1;;;8037:15:0;;;;7950:102;7946:325;;;8120:12;;8110:6;:22;;8102:31;;;;;;-1:-1:-1;;;;;8160:12:0;;;;;;:8;:12;;;;;;8175:15;-1:-1:-1;8152:39:0;;;;;;8225:30;:15;8244:10;8225:30;:::i;:::-;-1:-1:-1;;;;;8210:12:0;;;;;;:8;:12;;;;;:45;7946:325;8323:13;;-1:-1:-1;;;;;8317:19:0;;;8323:13;;8317:19;:55;;;;-1:-1:-1;8356:15:0;;-1:-1:-1;;;;;8340:32:0;;;8356:15;;8340:32;;8317:55;:85;;;;-1:-1:-1;;;;;;8378:24:0;;;;;;:18;:24;;;;;;;;8376:26;8317:85;8313:172;;;8435:1;8423:9;:13;;;8455:9;:14;8313:172;8499:28;8530:24;8548:4;8530:9;:24::i;:::-;8574:6;;8499:55;;-1:-1:-1;;;;8574:6:0;;;;8573:7;:32;;;;-1:-1:-1;8592:13:0;;-1:-1:-1;;;;;8584:21:0;;;8592:13;;8584:21;;8573:32;:47;;;;-1:-1:-1;8609:11:0;;-1:-1:-1;;;8609:11:0;;;;8573:47;8569:318;;;8641:38;8658:20;8641:16;:38::i;:::-;8727:21;8770:22;;8767:105;;8817:35;8830:21;8817:12;:35::i;:::-;8569:318;;7845:1053;;8912:30;8927:4;8932:2;8935:6;8912:14;:30::i;:::-;7487:1463;;;:::o;1266:190::-;1352:7;1388:12;1380:6;;;;1372:29;;;;-1:-1:-1;;;1372:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1412:9:0;1424:5;1428:1;1424;:5;:::i;:::-;1412:17;1266:190;-1:-1:-1;;;;;1266:190:0:o;9457:97::-;9514:15;;:32;;-1:-1:-1;;;;;9514:15:0;;;;:32;;;;;9539:6;;9514:15;:32;:15;:32;9539:6;9514:15;:32;;;;;;;;;;;;;;;;;;;6882:254;6949:7;6988;;6977;:18;;6969:73;;;;-1:-1:-1;;;6969:73:0;;6718:2:1;6969:73:0;;;6700:21:1;6757:2;6737:18;;;6730:30;6796:34;6776:18;;;6769:62;-1:-1:-1;;;6847:18:1;;;6840:40;6897:19;;6969:73:0;6690:232:1;6969:73:0;7053:19;7076:10;:8;:10::i;:::-;7053:33;-1:-1:-1;7104:24:0;:7;7053:33;7104:11;:24::i;:::-;7097:31;6882:254;-1:-1:-1;;;6882:254:0:o;8958:483::-;4830:6;:13;;-1:-1:-1;;;;4830:13:0;-1:-1:-1;;;4830:13:0;;;9060:16:::1;::::0;;9074:1:::1;9060:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9060:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9060:16:0::1;9036:40;;9105:4;9087;9092:1;9087:7;;;;;;-1:-1:-1::0;;;9087:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;9087:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9131:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9131:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9087:7;;9131:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9121:4;9126:1;9121:7;;;;;;-1:-1:-1::0;;;9121:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;9121:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9196:15:::1;::::0;9164:62:::1;::::0;9181:4:::1;::::0;9196:15:::1;9214:11:::0;9164:8:::1;:62::i;:::-;9237:15;::::0;:196:::1;::::0;-1:-1:-1;;;9237:196:0;;-1:-1:-1;;;;;9237:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9318:11;;9237:15:::1;::::0;9360:4;;9387::::1;::::0;9407:15:::1;::::0;9237:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4866:6:0;:14;;-1:-1:-1;;;;4866:14:0;;;-1:-1:-1;;;;8958:483:0:o;10674:146::-;10768:44;10786:6;10794:9;10805:6;10768:17;:44::i;13407:163::-;13448:7;13469:15;13486;13505:19;:17;:19::i;:::-;13468:56;;-1:-1:-1;13468:56:0;-1:-1:-1;13542:20:0;13468:56;;13542:11;:20::i;:::-;13535:27;;;;13407:163;:::o;1718:132::-;1776:7;1803:39;1807:1;1810;1803:39;;;;;;;;;;;;;;;;;:3;:39::i;10828:488::-;10927:15;10944:23;10969:12;10983:23;11008:12;11022:13;11039:19;11050:7;11039:10;:19::i;:::-;-1:-1:-1;;;;;11087:15:0;;;;;;:7;:15;;;;;;10926:132;;-1:-1:-1;10926:132:0;;-1:-1:-1;10926:132:0;;-1:-1:-1;10926:132:0;-1:-1:-1;10926:132:0;-1:-1:-1;10926:132:0;-1:-1:-1;11087:28:0;;10926:132;11087:19;:28::i;:::-;-1:-1:-1;;;;;11069:15:0;;;;;;;:7;:15;;;;;;:46;;;;11147:18;;;;;;;:39;;11170:15;11147:22;:39::i;:::-;-1:-1:-1;;;;;11126:18:0;;;;;;:7;:18;;;;;:60;11198:16;11208:5;11198:9;:16::i;:::-;11225:23;11237:4;11243;11225:11;:23::i;:::-;11281:9;-1:-1:-1;;;;;11264:44:0;11273:6;-1:-1:-1;;;;;11264:44:0;;11292:15;11264:44;;;;10168:25:1;;10156:2;10141:18;;10123:76;11264:44:0;;;;;;;;10828:488;;;;;;;;;:::o;13578:262::-;13675:7;;13628;;;;4042:18;13749:20;13675:7;4042:18;13749:11;:20::i;:::-;13739:7;:30;13735:61;;;-1:-1:-1;;13779:7:0;;;4042:18;;-1:-1:-1;13578:262:0;-1:-1:-1;13578:262:0:o;13735:61::-;13815:7;;13824;;-1:-1:-1;13578:262:0;-1:-1:-1;13578:262:0:o;1858:189::-;1944:7;1979:12;1972:5;1964:28;;;;-1:-1:-1;;;1964:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2003:9:0;2015:5;2019:1;2015;:5;:::i;12155:471::-;12214:7;12223;12232;12241;12250;12259;12280:23;12305:12;12319:13;12336:42;12348:7;12357:9;;12368;;12336:11;:42::i;:::-;12279:99;;;;;;12389:19;12412:10;:8;:10::i;:::-;12389:33;;12434:15;12451:23;12476:12;12492:46;12504:7;12513:4;12519:5;12526:11;12492;:46::i;:::-;12433:105;;-1:-1:-1;12433:105:0;-1:-1:-1;12433:105:0;-1:-1:-1;12589:15:0;;-1:-1:-1;12606:4:0;;-1:-1:-1;12612:5:0;;-1:-1:-1;;;;;12155:471:0;;;;;;;:::o;1122:136::-;1180:7;1207:43;1211:1;1214;1207:43;;;;;;;;;;;;;;;;;:3;:43::i;935:179::-;993:7;;1025:5;1029:1;1025;:5;:::i;:::-;1013:17;;1054:1;1049;:6;;1041:46;;;;-1:-1:-1;;;1041:46:0;;7532:2:1;1041:46:0;;;7514:21:1;7571:2;7551:18;;;7544:30;7610:29;7590:18;;;7583:57;7657:18;;1041:46:0;7504:177:1;11324:212:0;11377:19;11400:10;:8;:10::i;:::-;11377:33;-1:-1:-1;11421:13:0;11437:22;:5;11377:33;11437:9;:22::i;:::-;11511:4;11495:22;;;;:7;:22;;;;;;11421:38;;-1:-1:-1;11495:33:0;;11421:38;11495:26;:33::i;:::-;11486:4;11470:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;11324:212:0:o;11544:147::-;11622:7;;:17;;11634:4;11622:11;:17::i;:::-;11612:7;:27;11663:10;;:20;;11678:4;11663:14;:20::i;:::-;11650:10;:33;-1:-1:-1;;11544:147:0:o;12634:351::-;12727:7;;;;12780:28;12804:3;12780:19;:7;12792:6;12780:11;:19::i;:::-;:23;;:28::i;:::-;12765:43;-1:-1:-1;12819:13:0;12835:29;12860:3;12835:20;:7;12847;12835:11;:20::i;:29::-;12819:45;-1:-1:-1;12875:23:0;12901:28;12819:45;12901:17;:7;12913:4;12901:11;:17::i;:::-;:21;;:28::i;:::-;12875:54;12965:4;;-1:-1:-1;12971:5:0;;-1:-1:-1;12634:351:0;;-1:-1:-1;;;;;12634:351:0:o;12993:409::-;13103:7;;;;13159:24;:7;13171:11;13159;:24::i;:::-;13141:42;-1:-1:-1;13194:12:0;13209:21;:4;13218:11;13209:8;:21::i;:::-;13194:36;-1:-1:-1;13241:13:0;13257:22;:5;13267:11;13257:9;:22::i;:::-;13241:38;-1:-1:-1;13290:23:0;13316:28;13241:38;13316:17;:7;13328:4;13316:11;:17::i;:28::-;13363:7;;;;-1:-1:-1;13389:4:0;;-1:-1:-1;12993:409:0;;-1:-1:-1;;;;;;;12993:409:0:o;1464:246::-;1522:7;1546:6;1542:47;;-1:-1:-1;1576:1:0;1569:8;;1542:47;1599:9;1611:5;1615:1;1611;:5;:::i;:::-;1599:17;-1:-1:-1;1644:1:0;1635:5;1639:1;1599:17;1635:5;:::i;:::-;:10;1627:56;;;;-1:-1:-1;;;1627:56:0;;7888:2:1;1627:56:0;;;7870:21:1;7927:2;7907:18;;;7900:30;7966:34;7946:18;;;7939:62;-1:-1:-1;;;8017:18:1;;;8010:31;8058:19;;1627:56:0;7860:223:1;14:134;82:20;;111:31;82:20;111:31;:::i;:::-;63:85;;;:::o;153:257::-;212:6;265:2;253:9;244:7;240:23;236:32;233:2;;;286:6;278;271:22;233:2;330:9;317:23;349:31;374:5;349:31;:::i;415:261::-;485:6;538:2;526:9;517:7;513:23;509:32;506:2;;;559:6;551;544:22;506:2;596:9;590:16;615:31;640:5;615:31;:::i;681:398::-;749:6;757;810:2;798:9;789:7;785:23;781:32;778:2;;;831:6;823;816:22;778:2;875:9;862:23;894:31;919:5;894:31;:::i;:::-;944:5;-1:-1:-1;1001:2:1;986:18;;973:32;1014:33;973:32;1014:33;:::i;:::-;1066:7;1056:17;;;768:311;;;;;:::o;1084:466::-;1161:6;1169;1177;1230:2;1218:9;1209:7;1205:23;1201:32;1198:2;;;1251:6;1243;1236:22;1198:2;1295:9;1282:23;1314:31;1339:5;1314:31;:::i;:::-;1364:5;-1:-1:-1;1421:2:1;1406:18;;1393:32;1434:33;1393:32;1434:33;:::i;:::-;1188:362;;1486:7;;-1:-1:-1;;;1540:2:1;1525:18;;;;1512:32;;1188:362::o;1555:325::-;1623:6;1631;1684:2;1672:9;1663:7;1659:23;1655:32;1652:2;;;1705:6;1697;1690:22;1652:2;1749:9;1736:23;1768:31;1793:5;1768:31;:::i;:::-;1818:5;1870:2;1855:18;;;;1842:32;;-1:-1:-1;;;1642:238:1:o;1885:1177::-;1969:6;2000:2;2043;2031:9;2022:7;2018:23;2014:32;2011:2;;;2064:6;2056;2049:22;2011:2;2109:9;2096:23;2138:18;2179:2;2171:6;2168:14;2165:2;;;2200:6;2192;2185:22;2165:2;2243:6;2232:9;2228:22;2218:32;;2288:7;2281:4;2277:2;2273:13;2269:27;2259:2;;2315:6;2307;2300:22;2259:2;2356;2343:16;2378:2;2374;2371:10;2368:2;;;2384:18;;:::i;:::-;2430:2;2427:1;2423:10;2462:2;2456:9;2525:2;2521:7;2516:2;2512;2508:11;2504:25;2496:6;2492:38;2580:6;2568:10;2565:22;2560:2;2548:10;2545:18;2542:46;2539:2;;;2591:18;;:::i;:::-;2627:2;2620:22;2677:18;;;2711:15;;;;-1:-1:-1;2746:11:1;;;2776;;;2772:20;;2769:33;-1:-1:-1;2766:2:1;;;2820:6;2812;2805:22;2766:2;2847:6;2838:15;;2862:169;2876:2;2873:1;2870:9;2862:169;;;2933:23;2952:3;2933:23;:::i;:::-;2921:36;;2894:1;2887:9;;;;;2977:12;;;;3009;;2862:169;;;-1:-1:-1;3050:6:1;1980:1082;-1:-1:-1;;;;;;;;1980:1082:1:o;3067:251::-;3123:6;3176:2;3164:9;3155:7;3151:23;3147:32;3144:2;;;3197:6;3189;3182:22;3144:2;3241:9;3228:23;3260:28;3282:5;3260:28;:::i;3323:255::-;3390:6;3443:2;3431:9;3422:7;3418:23;3414:32;3411:2;;;3464:6;3456;3449:22;3411:2;3501:9;3495:16;3520:28;3542:5;3520:28;:::i;3583:316::-;3671:6;3679;3687;3740:2;3728:9;3719:7;3715:23;3711:32;3708:2;;;3761:6;3753;3746:22;3708:2;3795:9;3789:16;3779:26;;3845:2;3834:9;3830:18;3824:25;3814:35;;3889:2;3878:9;3874:18;3868:25;3858:35;;3698:201;;;;;:::o;5504:603::-;5616:4;5645:2;5674;5663:9;5656:21;5706:6;5700:13;5749:6;5744:2;5733:9;5729:18;5722:34;5774:4;5787:140;5801:6;5798:1;5795:13;5787:140;;;5896:14;;;5892:23;;5886:30;5862:17;;;5881:2;5858:26;5851:66;5816:10;;5787:140;;;5945:6;5942:1;5939:13;5936:2;;;6015:4;6010:2;6001:6;5990:9;5986:22;5982:31;5975:45;5936:2;-1:-1:-1;6091:2:1;6070:15;-1:-1:-1;;6066:29:1;6051:45;;;;6098:2;6047:54;;5625:482;-1:-1:-1;;;5625:482:1:o;8088:356::-;8290:2;8272:21;;;8309:18;;;8302:30;8368:34;8363:2;8348:18;;8341:62;8435:2;8420:18;;8262:182::o;10204:983::-;10466:4;10514:3;10503:9;10499:19;10545:6;10534:9;10527:25;10571:2;10609:6;10604:2;10593:9;10589:18;10582:34;10652:3;10647:2;10636:9;10632:18;10625:31;10676:6;10711;10705:13;10742:6;10734;10727:22;10780:3;10769:9;10765:19;10758:26;;10819:2;10811:6;10807:15;10793:29;;10840:4;10853:195;10867:6;10864:1;10861:13;10853:195;;;10932:13;;-1:-1:-1;;;;;10928:39:1;10916:52;;11023:15;;;;10988:12;;;;10964:1;10882:9;10853:195;;;-1:-1:-1;;;;;;;11104:32:1;;;;11099:2;11084:18;;11077:60;-1:-1:-1;;;11168:3:1;11153:19;11146:35;11065:3;10475:712;-1:-1:-1;;;10475:712:1:o;11381:128::-;11421:3;11452:1;11448:6;11445:1;11442:13;11439:2;;;11458:18;;:::i;:::-;-1:-1:-1;11494:9:1;;11429:80::o;11514:217::-;11554:1;11580;11570:2;;-1:-1:-1;;;11605:31:1;;11659:4;11656:1;11649:15;11687:4;11612:1;11677:15;11570:2;-1:-1:-1;11716:9:1;;11560:171::o;11736:168::-;11776:7;11842:1;11838;11834:6;11830:14;11827:1;11824:21;11819:1;11812:9;11805:17;11801:45;11798:2;;;11849:18;;:::i;:::-;-1:-1:-1;11889:9:1;;11788:116::o;11909:125::-;11949:4;11977:1;11974;11971:8;11968:2;;;11982:18;;:::i;:::-;-1:-1:-1;12019:9:1;;11958:76::o;12039:135::-;12078:3;-1:-1:-1;;12099:17:1;;12096:2;;;12119:18;;:::i;:::-;-1:-1:-1;12166:1:1;12155:13;;12086:88::o;12179:127::-;12240:10;12235:3;12231:20;12228:1;12221:31;12271:4;12268:1;12261:15;12295:4;12292:1;12285:15;12311:127;12372:10;12367:3;12363:20;12360:1;12353:31;12403:4;12400:1;12393:15;12427:4;12424:1;12417:15;12443:131;-1:-1:-1;;;;;12518:31:1;;12508:42;;12498:2;;12564:1;12561;12554:12;12579:118;12665:5;12658:13;12651:21;12644:5;12641:32;12631:2;;12687:1;12684;12677:12

Swarm Source

ipfs://a01dd728c948afe12ca67a2d6d2c9a5e708fbf8dbc3dc8d8152621abe7584182

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.