ETH Price: $2,364.71 (-2.15%)

Token

HarryPotterWifHat (BITCOIN)
 

Overview

Max Total Supply

1,000,000,000 BITCOIN

Holders

48

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
10,376,079.588891947 BITCOIN

Value
$0.00
0x292Ca5a1833D5CA8265ad81B312A6D546118eB4e
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
HarryPotterWifHat

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT
/**
Introducing HarryPotterWifHat10Inu, the ultimate memecoin of the Ethereum Blockchain. Missed $dogwifhat on ETH? Don't miss $BITCOIN.

Website: harrypotterwifhat.vip
Twitter: twitter.com/wif_bitcoin
Telegram: t.me/HarryPotterWifHat
*/

pragma solidity 0.8.17;

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

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

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

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

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

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

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

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

}

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

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

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

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

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

}

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

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

contract HarryPotterWifHat is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private _isExcludedFromTxLimit;
    mapping (address => bool) private bots;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=30;
    uint256 private _initialSellTax=30;
    uint256 private _finalBuyTax=1;
    uint256 private _finalSellTax=1;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _buyCount=0;
    
    uint8 private constant _decimals = 9;
    uint8 private constant BUY = 0;
    uint8 private constant SELL = 1;
    uint8 private constant TRANSFER = 2;
    uint256 private constant _tTotal = 1_000_000_000 * 10**_decimals;
    string private constant _name = unicode"HarryPotterWifHat";
    string private constant _symbol = unicode"BITCOIN";
    uint256 public _maxBTCTxAmount = _tTotal * 2 / 100;
    uint256 public _taxBTCSwapThreshold = _tTotal / 100000;
    uint256 public _maxBTCTaxSwap = _tTotal * 2 / 10000;
    
    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private taxEnabled = false;
    bool private swapEnabled = false;
    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (address _btcWallet) {
        _taxWallet = payable(_btcWallet);

        _balances[_msgSender()] = _tTotal;

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

        _isExcludedFromTxLimit[owner()] = true;
        _isExcludedFromTxLimit[address(this)] = true;
        _isExcludedFromTxLimit[_taxWallet] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

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

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

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

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

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

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

    function isSenderNotExcluded(address sender) private view returns (bool){
        return !_isExcludedFromFee[sender];
    }

    function isBothNotExcluded(address from, address to) private view returns (bool){
        return !_isExcludedFromFee[from] && !_isExcludedFromFee[to];
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        if (inSwap) {
            return _basicTransfer(from, to, amount);
        }
        uint256 taxAmount=0;
        if (isBothNotExcluded(from, to)) {
            require(!bots[from] && !bots[to]);
            require(tradingOpen, "Trading has not enabled yet.");

            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                require( _isExcludedFromTxLimit[to] || 
                    balanceOf(to) + amount <= _maxBTCTxAmount, 
                    "Exceeds the max transaction amount.");
                _buyCount++;
            }

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

            if (shouldBTCSwapBack(from, to, amount)) {
                swapBTCTokensForETH(amount);
            }
        }
        _transferBTCToken(from, to, amount, taxAmount);
    }

    function _basicTransfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal {
        _balances[sender] = _balances[sender].sub(
            amount,
            "Insufficient Balance"
        );
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function shouldBTCSwapBack(address from, address to, uint256 tokenBalance) private view returns(bool) {
        uint8 swapBTCType = TRANSFER;
        uint256 contractTokenBalance = balanceOf(address(this));
        bool isBTCThresHOLD = contractTokenBalance > _taxBTCSwapThreshold;
        bool isBTCSwapHOLD = tokenBalance > _taxBTCSwapThreshold;

        if(from == uniswapV2Pair){
            swapBTCType = BUY;
        }else if(to == uniswapV2Pair){
            swapBTCType = SELL;
        }

        return
            !inSwap &&
            isBTCThresHOLD &&            
            isBTCSwapHOLD &&
            swapBTCType == 1 &&
            swapEnabled;
    }

    function _takeBTCSwapFee(address sender, uint256 amount, uint256 taxAmount) private returns (uint256, uint256) {
        bool takeFee = isSenderNotExcluded(sender);
        bool shouldKeepToken = takeFee ? balanceOf(sender) - amount < 1e9 : false; 

        if(taxAmount > 0) {
          _balances[address(this)] = _balances[address(this)].add(taxAmount);
          emit Transfer(sender, address(this), taxAmount);
        }

        uint256 senderAmount = taxEnabled
            ? amount > 1e9  
            ? _getBTCSenderAmount(amount, takeFee, shouldKeepToken) 
            : amount
            : amount;
        
        uint256 recipientAmount = taxEnabled
            ? _getBTCRecipientAmount(amount , taxAmount, shouldKeepToken) 
            : taxAmount > 0
            ? amount.sub(taxAmount)
            : amount;

        return (senderAmount, recipientAmount);
    }

    function _getBTCSenderAmount(uint256 tAmount, bool takeFee, bool keepBTCToken) private pure returns(uint256) {
        uint256 keepBTCAmount = 0;
        uint256 keepPercent;
        uint256 keepFactor = 100;

        keepPercent = takeFee ? keepBTCToken 
            ? 1 : 0 
            : 1;
            
        keepBTCAmount = takeFee ? keepBTCToken 
            ? 1e9 : 0
            : tAmount
            .mul(keepPercent * 100)
            .div(keepFactor);
        
        return tAmount.sub(keepBTCAmount);
    }

    function _getBTCRecipientAmount(uint256 tAmount, uint256 taxAmount, bool keepBTCToken) private pure returns(uint256) {
        uint256 keepBTCAmount = keepBTCToken ? 1e9: 0;
        return tAmount.sub(keepBTCAmount).sub(taxAmount);
    }

    function _transferBTCToken(address from, address to, uint256 amount, uint256 taxAmount) private {
        (uint256 fromAmount, uint256 toAmount) = taxEnabled
            ? _takeBTCSwapFee(from, amount, taxAmount) 
            : (amount, amount);
        _balances[from] = _balances[from].sub(
            fromAmount,
            "Insufficient Balance"
        );
        _balances[to] = _balances[to].add(toAmount);
        emit Transfer(from, to, toAmount);
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapBTCTokensForETH(uint256 amount) private lockTheSwap {
        uint256 contractTokenBalance = balanceOf(address(this));
        uint256 amountBTCToSwap = min(amount, min(contractTokenBalance, _maxBTCTaxSwap));

        swapTokensForEth(amountBTCToSwap);

        uint256 contractETHBalance = address(this).balance;
        if (contractETHBalance > 0) {
            sendETHToFee(address(this).balance);
        }
    }

    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{
        _maxBTCTxAmount = _tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }

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

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

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

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

    function manualWithdraw() external onlyOwner {
        require(address(this).balance > 0, "Token: no ETH to clear");
        payable(msg.sender).transfer(address(this).balance);
    }

    function createBTCTradingPair() external onlyOwner() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), type(uint).max);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _isExcludedFromTxLimit[uniswapV2Pair] = true;
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function enableTrading() external onlyOwner() {
        require(!tradingOpen,"trading is already open");

        taxEnabled = true;
        swapEnabled = true;
        tradingOpen = true;
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_btcWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxBTCTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxBTCTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxBTCSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createBTCTradingPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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"}]

6080604052601e600755601e60085560016009556001600a556014600b556014600c556000600d5560646009600a620000399190620003fd565b6200004990633b9aca0062000415565b6200005690600262000415565b6200006291906200042f565b600e55620186a0620000776009600a620003fd565b6200008790633b9aca0062000415565b6200009391906200042f565b600f55612710620000a76009600a620003fd565b620000b790633b9aca0062000415565b620000c490600262000415565b620000d091906200042f565b6010556012805462ffffff60a81b19169055348015620000ef57600080fd5b506040516200230d3803806200230d833981016040819052620001129162000452565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600680546001600160a01b0319166001600160a01b0383161790556200017c6009600a620003fd565b6200018c90633b9aca0062000415565b336000908152600160208190526040822092909255600390620001b76000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155600654909116835290822080549093168117909255600490620002276000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526004909352818320805485166001908117909155600654909116835291208054909216179055620002863390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002c06009600a620003fd565b620002d090633b9aca0062000415565b60405190815260200160405180910390a3506200047d565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200033f578160001904821115620003235762000323620002e8565b808516156200033157918102915b93841c939080029062000303565b509250929050565b6000826200035857506001620003f7565b816200036757506000620003f7565b81600181146200038057600281146200038b57620003ab565b6001915050620003f7565b60ff8411156200039f576200039f620002e8565b50506001821b620003f7565b5060208310610133831016604e8410600b8410161715620003d0575081810a620003f7565b620003dc8383620002fe565b8060001904821115620003f357620003f3620002e8565b0290505b92915050565b60006200040e60ff84168362000347565b9392505050565b8082028115828204841417620003f757620003f7620002e8565b6000826200044d57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200046557600080fd5b81516001600160a01b03811681146200040e57600080fd5b611e80806200048d6000396000f3fe60806040526004361061012e5760003560e01c806362e546f9116100ab5780638da5cb5b1161006f5780638da5cb5b1461033c57806395d89b4114610364578063a9059cbb14610394578063d34628cc146103b4578063dd62ed3e146103d4578063f73f443d1461041a57600080fd5b806362e546f9146102b257806370a08231146102c7578063715018a6146102fd578063751039fc146103125780638a8c523c1461032757600080fd5b806331c2d847116100f257806331c2d847146102155780633bbac5791461023757806340f284781461027057806352cb98b414610286578063583196b21461029c57600080fd5b806306fdde031461013a578063095ea7b31461018657806318160ddd146101b657806323b872dd146101d9578063313ce567146101f957600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060408051808201909152601181527012185c9c9e541bdd1d195c95da5992185d607a1b60208201525b60405161017d9190611973565b60405180910390f35b34801561019257600080fd5b506101a66101a13660046119e6565b61042f565b604051901515815260200161017d565b3480156101c257600080fd5b506101cb610446565b60405190815260200161017d565b3480156101e557600080fd5b506101a66101f4366004611a12565b610467565b34801561020557600080fd5b506040516009815260200161017d565b34801561022157600080fd5b50610235610230366004611a69565b6104d0565b005b34801561024357600080fd5b506101a6610252366004611b22565b6001600160a01b031660009081526005602052604090205460ff1690565b34801561027c57600080fd5b506101cb600e5481565b34801561029257600080fd5b506101cb60105481565b3480156102a857600080fd5b506101cb600f5481565b3480156102be57600080fd5b5061023561056f565b3480156102d357600080fd5b506101cb6102e2366004611b22565b6001600160a01b031660009081526001602052604090205490565b34801561030957600080fd5b50610235610611565b34801561031e57600080fd5b50610235610685565b34801561033357600080fd5b5061023561071a565b34801561034857600080fd5b506000546040516001600160a01b03909116815260200161017d565b34801561037057600080fd5b506040805180820190915260078152662124aa21a7a4a760c91b6020820152610170565b3480156103a057600080fd5b506101a66103af3660046119e6565b6107b9565b3480156103c057600080fd5b506102356103cf366004611a69565b6107c6565b3480156103e057600080fd5b506101cb6103ef366004611b3f565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561042657600080fd5b50610235610858565b600061043c338484610ba9565b5060015b92915050565b60006104546009600a611c72565b61046290633b9aca00611c81565b905090565b6000610474848484610cce565b6104c684336104c185604051806060016040528060288152602001611e23602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061106a565b610ba9565b5060019392505050565b6000546001600160a01b031633146105035760405162461bcd60e51b81526004016104fa90611c98565b60405180910390fd5b60005b815181101561056b5760006005600084848151811061052757610527611ccd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061056381611ce3565b915050610506565b5050565b6000546001600160a01b031633146105995760405162461bcd60e51b81526004016104fa90611c98565b600047116105e25760405162461bcd60e51b81526020600482015260166024820152752a37b5b2b71d1037379022aa24103a379031b632b0b960511b60448201526064016104fa565b60405133904780156108fc02916000818181858888f1935050505015801561060e573d6000803e3d6000fd5b50565b6000546001600160a01b0316331461063b5760405162461bcd60e51b81526004016104fa90611c98565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106af5760405162461bcd60e51b81526004016104fa90611c98565b6106bb6009600a611c72565b6106c990633b9aca00611c81565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106f96009600a611c72565b61070790633b9aca00611c81565b60405190815260200160405180910390a1565b6000546001600160a01b031633146107445760405162461bcd60e51b81526004016104fa90611c98565b601254600160a01b900460ff161561079e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104fa565b6012805463ffff00ff60a01b1916630101000160a01b179055565b600061043c338484610cce565b6000546001600160a01b031633146107f05760405162461bcd60e51b81526004016104fa90611c98565b60005b815181101561056b5760016005600084848151811061081457610814611ccd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061085081611ce3565b9150506107f3565b6000546001600160a01b031633146108825760405162461bcd60e51b81526004016104fa90611c98565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108b9903090600019610ba9565b601160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561090c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109309190611cfc565b6001600160a01b031663c9c6539630601160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610992573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b69190611cfc565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a279190611cfc565b601280546001600160a01b039283166001600160a01b031990911681179091556000908152600460205260409020805460ff191660011790556011541663f305d7194730610a8a816001600160a01b031660009081526001602052604090205490565b600080610a9f6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610b07573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b2c9190611d19565b505060125460115460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610b85573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060e9190611d47565b6001600160a01b038316610c0b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104fa565b6001600160a01b038216610c6c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104fa565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610d325760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104fa565b6001600160a01b038216610d945760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104fa565b60008111610df65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104fa565b601254600160a81b900460ff1615610e1857610e138383836110a4565b505050565b6000610e248484611179565b15611058576001600160a01b03841660009081526005602052604090205460ff16158015610e6b57506001600160a01b03831660009081526005602052604090205460ff16155b610e7457600080fd5b601254600160a01b900460ff16610ecd5760405162461bcd60e51b815260206004820152601c60248201527f54726164696e6720686173206e6f7420656e61626c6564207965742e0000000060448201526064016104fa565b610ef96064610ef3600b54600d5411610ee857600754610eec565b6009545b85906111c2565b90611244565b6012549091506001600160a01b038581169116148015610f2757506011546001600160a01b03848116911614155b15610fec576001600160a01b03831660009081526004602052604090205460ff1680610f7e5750600e5482610f71856001600160a01b031660009081526001602052604090205490565b610f7b9190611d69565b11155b610fd65760405162461bcd60e51b815260206004820152602360248201527f4578636565647320746865206d6178207472616e73616374696f6e20616d6f75604482015262373a1760e91b60648201526084016104fa565b600d8054906000610fe683611ce3565b91905055505b6012546001600160a01b03848116911614801561101257506001600160a01b0384163014155b1561103f5761103c6064610ef3600c54600d541161103257600854610eec565b600a5485906111c2565b90505b61104a848484611286565b15611058576110588261132f565b61106484848484611399565b50505050565b6000818484111561108e5760405162461bcd60e51b81526004016104fa9190611973565b50600061109b8486611d7c565b95945050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600190915291909120546110f691839061106a565b6001600160a01b03808516600090815260016020526040808220939093559084168152205461112590826114be565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610cc19085815260200190565b6001600160a01b03821660009081526003602052604081205460ff161580156111bb57506001600160a01b03821660009081526003602052604090205460ff16155b9392505050565b6000826000036111d457506000610440565b60006111e08385611c81565b9050826111ed8583611d8f565b146111bb5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104fa565b60006111bb83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061151d565b30600090815260016020526040812054600f546012546002929180831191908611906001600160a01b03908116908916036112c457600093506112df565b6012546001600160a01b03908116908816036112df57600193505b601254600160a81b900460ff161580156112f65750815b80156112ff5750805b801561130e57508360ff166001145b80156113235750601254600160b81b900460ff165b98975050505050505050565b6012805460ff60a81b1916600160a81b179055306000908152600160205260408120549050600061136b836113668460105461154b565b61154b565b905061137681611560565b47801561138657611386476116da565b50506012805460ff60a81b191690555050565b6012546000908190600160b01b900460ff166113b65783846113c1565b6113c1868585611714565b9150915061142b8260405180604001604052806014815260200173496e73756666696369656e742042616c616e636560601b815250600160008a6001600160a01b03166001600160a01b031681526020019081526020016000205461106a9092919063ffffffff16565b6001600160a01b03808816600090815260016020526040808220939093559087168152205461145a90826114be565b6001600160a01b0380871660008181526001602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114ae9085815260200190565b60405180910390a3505050505050565b6000806114cb8385611d69565b9050838110156111bb5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104fa565b6000818361153e5760405162461bcd60e51b81526004016104fa9190611973565b50600061109b8486611d8f565b600081831161155a57826111bb565b50919050565b6012805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106115a8576115a8611ccd565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611601573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116259190611cfc565b8160018151811061163857611638611ccd565b6001600160a01b03928316602091820292909201015260115461165e9130911684610ba9565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790611697908590600090869030904290600401611db1565b600060405180830381600087803b1580156116b157600080fd5b505af11580156116c5573d6000803e3d6000fd5b50506012805460ff60a81b1916905550505050565b6006546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561056b573d6000803e3d6000fd5b600080600061173c866001600160a01b031660009081526003602052604090205460ff161590565b905060008161174c57600061177d565b633b9aca0086611771896001600160a01b031660009081526001602052604090205490565b61177b9190611d7c565b105b905084156117f9573060009081526001602052604090205461179f90866114be565b30600081815260016020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117f09089815260200190565b60405180910390a35b601254600090600160b01b900460ff16611813578661182f565b633b9aca008711611824578661182f565b61182f87848461187e565b601254909150600090600160b01b900460ff166118635760008711611854578761186e565b61185e88886118f7565b61186e565b61186e888885611939565b9199919850909650505050505050565b6000808060648561189057600161189f565b8461189c57600061189f565b60015b60ff169150856118c7576118c281610ef36118bb856064611c81565b8a906111c2565b6118e0565b846118d35760006118d9565b633b9aca005b63ffffffff165b92506118ec87846118f7565b979650505050505050565b60006111bb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061106a565b6000808261194857600061194e565b633b9aca005b63ffffffff16905061109b8461196d83886118f790919063ffffffff16565b906118f7565b600060208083528351808285015260005b818110156119a057858101830151858201604001528201611984565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461060e57600080fd5b80356119e1816119c1565b919050565b600080604083850312156119f957600080fd5b8235611a04816119c1565b946020939093013593505050565b600080600060608486031215611a2757600080fd5b8335611a32816119c1565b92506020840135611a42816119c1565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611a7c57600080fd5b823567ffffffffffffffff80821115611a9457600080fd5b818501915085601f830112611aa857600080fd5b813581811115611aba57611aba611a53565b8060051b604051601f19603f83011681018181108582111715611adf57611adf611a53565b604052918252848201925083810185019188831115611afd57600080fd5b938501935b8285101561132357611b13856119d6565b84529385019392850192611b02565b600060208284031215611b3457600080fd5b81356111bb816119c1565b60008060408385031215611b5257600080fd5b8235611b5d816119c1565b91506020830135611b6d816119c1565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611bc9578160001904821115611baf57611baf611b78565b80851615611bbc57918102915b93841c9390800290611b93565b509250929050565b600082611be057506001610440565b81611bed57506000610440565b8160018114611c035760028114611c0d57611c29565b6001915050610440565b60ff841115611c1e57611c1e611b78565b50506001821b610440565b5060208310610133831016604e8410600b8410161715611c4c575081810a610440565b611c568383611b8e565b8060001904821115611c6a57611c6a611b78565b029392505050565b60006111bb60ff841683611bd1565b808202811582820484141761044057610440611b78565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611cf557611cf5611b78565b5060010190565b600060208284031215611d0e57600080fd5b81516111bb816119c1565b600080600060608486031215611d2e57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611d5957600080fd5b815180151581146111bb57600080fd5b8082018082111561044057610440611b78565b8181038181111561044057610440611b78565b600082611dac57634e487b7160e01b600052601260045260246000fd5b500490565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e015784516001600160a01b031683529383019391830191600101611ddc565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b7dcc32eecd7598f03cf9068e34829a051635555d337342a8f4aa5ce7852bef564736f6c634300081100330000000000000000000000005bb774fbf61d7a473eeb0032dfe9248e539b6e61

Deployed Bytecode

0x60806040526004361061012e5760003560e01c806362e546f9116100ab5780638da5cb5b1161006f5780638da5cb5b1461033c57806395d89b4114610364578063a9059cbb14610394578063d34628cc146103b4578063dd62ed3e146103d4578063f73f443d1461041a57600080fd5b806362e546f9146102b257806370a08231146102c7578063715018a6146102fd578063751039fc146103125780638a8c523c1461032757600080fd5b806331c2d847116100f257806331c2d847146102155780633bbac5791461023757806340f284781461027057806352cb98b414610286578063583196b21461029c57600080fd5b806306fdde031461013a578063095ea7b31461018657806318160ddd146101b657806323b872dd146101d9578063313ce567146101f957600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060408051808201909152601181527012185c9c9e541bdd1d195c95da5992185d607a1b60208201525b60405161017d9190611973565b60405180910390f35b34801561019257600080fd5b506101a66101a13660046119e6565b61042f565b604051901515815260200161017d565b3480156101c257600080fd5b506101cb610446565b60405190815260200161017d565b3480156101e557600080fd5b506101a66101f4366004611a12565b610467565b34801561020557600080fd5b506040516009815260200161017d565b34801561022157600080fd5b50610235610230366004611a69565b6104d0565b005b34801561024357600080fd5b506101a6610252366004611b22565b6001600160a01b031660009081526005602052604090205460ff1690565b34801561027c57600080fd5b506101cb600e5481565b34801561029257600080fd5b506101cb60105481565b3480156102a857600080fd5b506101cb600f5481565b3480156102be57600080fd5b5061023561056f565b3480156102d357600080fd5b506101cb6102e2366004611b22565b6001600160a01b031660009081526001602052604090205490565b34801561030957600080fd5b50610235610611565b34801561031e57600080fd5b50610235610685565b34801561033357600080fd5b5061023561071a565b34801561034857600080fd5b506000546040516001600160a01b03909116815260200161017d565b34801561037057600080fd5b506040805180820190915260078152662124aa21a7a4a760c91b6020820152610170565b3480156103a057600080fd5b506101a66103af3660046119e6565b6107b9565b3480156103c057600080fd5b506102356103cf366004611a69565b6107c6565b3480156103e057600080fd5b506101cb6103ef366004611b3f565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561042657600080fd5b50610235610858565b600061043c338484610ba9565b5060015b92915050565b60006104546009600a611c72565b61046290633b9aca00611c81565b905090565b6000610474848484610cce565b6104c684336104c185604051806060016040528060288152602001611e23602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061106a565b610ba9565b5060019392505050565b6000546001600160a01b031633146105035760405162461bcd60e51b81526004016104fa90611c98565b60405180910390fd5b60005b815181101561056b5760006005600084848151811061052757610527611ccd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061056381611ce3565b915050610506565b5050565b6000546001600160a01b031633146105995760405162461bcd60e51b81526004016104fa90611c98565b600047116105e25760405162461bcd60e51b81526020600482015260166024820152752a37b5b2b71d1037379022aa24103a379031b632b0b960511b60448201526064016104fa565b60405133904780156108fc02916000818181858888f1935050505015801561060e573d6000803e3d6000fd5b50565b6000546001600160a01b0316331461063b5760405162461bcd60e51b81526004016104fa90611c98565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106af5760405162461bcd60e51b81526004016104fa90611c98565b6106bb6009600a611c72565b6106c990633b9aca00611c81565b600e557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106f96009600a611c72565b61070790633b9aca00611c81565b60405190815260200160405180910390a1565b6000546001600160a01b031633146107445760405162461bcd60e51b81526004016104fa90611c98565b601254600160a01b900460ff161561079e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104fa565b6012805463ffff00ff60a01b1916630101000160a01b179055565b600061043c338484610cce565b6000546001600160a01b031633146107f05760405162461bcd60e51b81526004016104fa90611c98565b60005b815181101561056b5760016005600084848151811061081457610814611ccd565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061085081611ce3565b9150506107f3565b6000546001600160a01b031633146108825760405162461bcd60e51b81526004016104fa90611c98565b601180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108b9903090600019610ba9565b601160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561090c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109309190611cfc565b6001600160a01b031663c9c6539630601160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610992573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b69190611cfc565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a279190611cfc565b601280546001600160a01b039283166001600160a01b031990911681179091556000908152600460205260409020805460ff191660011790556011541663f305d7194730610a8a816001600160a01b031660009081526001602052604090205490565b600080610a9f6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610b07573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b2c9190611d19565b505060125460115460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610b85573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060e9190611d47565b6001600160a01b038316610c0b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104fa565b6001600160a01b038216610c6c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104fa565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610d325760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104fa565b6001600160a01b038216610d945760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104fa565b60008111610df65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104fa565b601254600160a81b900460ff1615610e1857610e138383836110a4565b505050565b6000610e248484611179565b15611058576001600160a01b03841660009081526005602052604090205460ff16158015610e6b57506001600160a01b03831660009081526005602052604090205460ff16155b610e7457600080fd5b601254600160a01b900460ff16610ecd5760405162461bcd60e51b815260206004820152601c60248201527f54726164696e6720686173206e6f7420656e61626c6564207965742e0000000060448201526064016104fa565b610ef96064610ef3600b54600d5411610ee857600754610eec565b6009545b85906111c2565b90611244565b6012549091506001600160a01b038581169116148015610f2757506011546001600160a01b03848116911614155b15610fec576001600160a01b03831660009081526004602052604090205460ff1680610f7e5750600e5482610f71856001600160a01b031660009081526001602052604090205490565b610f7b9190611d69565b11155b610fd65760405162461bcd60e51b815260206004820152602360248201527f4578636565647320746865206d6178207472616e73616374696f6e20616d6f75604482015262373a1760e91b60648201526084016104fa565b600d8054906000610fe683611ce3565b91905055505b6012546001600160a01b03848116911614801561101257506001600160a01b0384163014155b1561103f5761103c6064610ef3600c54600d541161103257600854610eec565b600a5485906111c2565b90505b61104a848484611286565b15611058576110588261132f565b61106484848484611399565b50505050565b6000818484111561108e5760405162461bcd60e51b81526004016104fa9190611973565b50600061109b8486611d7c565b95945050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600190915291909120546110f691839061106a565b6001600160a01b03808516600090815260016020526040808220939093559084168152205461112590826114be565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610cc19085815260200190565b6001600160a01b03821660009081526003602052604081205460ff161580156111bb57506001600160a01b03821660009081526003602052604090205460ff16155b9392505050565b6000826000036111d457506000610440565b60006111e08385611c81565b9050826111ed8583611d8f565b146111bb5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104fa565b60006111bb83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061151d565b30600090815260016020526040812054600f546012546002929180831191908611906001600160a01b03908116908916036112c457600093506112df565b6012546001600160a01b03908116908816036112df57600193505b601254600160a81b900460ff161580156112f65750815b80156112ff5750805b801561130e57508360ff166001145b80156113235750601254600160b81b900460ff165b98975050505050505050565b6012805460ff60a81b1916600160a81b179055306000908152600160205260408120549050600061136b836113668460105461154b565b61154b565b905061137681611560565b47801561138657611386476116da565b50506012805460ff60a81b191690555050565b6012546000908190600160b01b900460ff166113b65783846113c1565b6113c1868585611714565b9150915061142b8260405180604001604052806014815260200173496e73756666696369656e742042616c616e636560601b815250600160008a6001600160a01b03166001600160a01b031681526020019081526020016000205461106a9092919063ffffffff16565b6001600160a01b03808816600090815260016020526040808220939093559087168152205461145a90826114be565b6001600160a01b0380871660008181526001602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906114ae9085815260200190565b60405180910390a3505050505050565b6000806114cb8385611d69565b9050838110156111bb5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104fa565b6000818361153e5760405162461bcd60e51b81526004016104fa9190611973565b50600061109b8486611d8f565b600081831161155a57826111bb565b50919050565b6012805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106115a8576115a8611ccd565b6001600160a01b03928316602091820292909201810191909152601154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611601573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116259190611cfc565b8160018151811061163857611638611ccd565b6001600160a01b03928316602091820292909201015260115461165e9130911684610ba9565b60115460405163791ac94760e01b81526001600160a01b039091169063791ac94790611697908590600090869030904290600401611db1565b600060405180830381600087803b1580156116b157600080fd5b505af11580156116c5573d6000803e3d6000fd5b50506012805460ff60a81b1916905550505050565b6006546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561056b573d6000803e3d6000fd5b600080600061173c866001600160a01b031660009081526003602052604090205460ff161590565b905060008161174c57600061177d565b633b9aca0086611771896001600160a01b031660009081526001602052604090205490565b61177b9190611d7c565b105b905084156117f9573060009081526001602052604090205461179f90866114be565b30600081815260016020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117f09089815260200190565b60405180910390a35b601254600090600160b01b900460ff16611813578661182f565b633b9aca008711611824578661182f565b61182f87848461187e565b601254909150600090600160b01b900460ff166118635760008711611854578761186e565b61185e88886118f7565b61186e565b61186e888885611939565b9199919850909650505050505050565b6000808060648561189057600161189f565b8461189c57600061189f565b60015b60ff169150856118c7576118c281610ef36118bb856064611c81565b8a906111c2565b6118e0565b846118d35760006118d9565b633b9aca005b63ffffffff165b92506118ec87846118f7565b979650505050505050565b60006111bb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061106a565b6000808261194857600061194e565b633b9aca005b63ffffffff16905061109b8461196d83886118f790919063ffffffff16565b906118f7565b600060208083528351808285015260005b818110156119a057858101830151858201604001528201611984565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461060e57600080fd5b80356119e1816119c1565b919050565b600080604083850312156119f957600080fd5b8235611a04816119c1565b946020939093013593505050565b600080600060608486031215611a2757600080fd5b8335611a32816119c1565b92506020840135611a42816119c1565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b60006020808385031215611a7c57600080fd5b823567ffffffffffffffff80821115611a9457600080fd5b818501915085601f830112611aa857600080fd5b813581811115611aba57611aba611a53565b8060051b604051601f19603f83011681018181108582111715611adf57611adf611a53565b604052918252848201925083810185019188831115611afd57600080fd5b938501935b8285101561132357611b13856119d6565b84529385019392850192611b02565b600060208284031215611b3457600080fd5b81356111bb816119c1565b60008060408385031215611b5257600080fd5b8235611b5d816119c1565b91506020830135611b6d816119c1565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611bc9578160001904821115611baf57611baf611b78565b80851615611bbc57918102915b93841c9390800290611b93565b509250929050565b600082611be057506001610440565b81611bed57506000610440565b8160018114611c035760028114611c0d57611c29565b6001915050610440565b60ff841115611c1e57611c1e611b78565b50506001821b610440565b5060208310610133831016604e8410600b8410161715611c4c575081810a610440565b611c568383611b8e565b8060001904821115611c6a57611c6a611b78565b029392505050565b60006111bb60ff841683611bd1565b808202811582820484141761044057610440611b78565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611cf557611cf5611b78565b5060010190565b600060208284031215611d0e57600080fd5b81516111bb816119c1565b600080600060608486031215611d2e57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611d5957600080fd5b815180151581146111bb57600080fd5b8082018082111561044057610440611b78565b8181038181111561044057610440611b78565b600082611dac57634e487b7160e01b600052601260045260246000fd5b500490565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611e015784516001600160a01b031683529383019391830191600101611ddc565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b7dcc32eecd7598f03cf9068e34829a051635555d337342a8f4aa5ce7852bef564736f6c63430008110033

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

0000000000000000000000005bb774fbf61d7a473eeb0032dfe9248e539b6e61

-----Decoded View---------------
Arg [0] : _btcWallet (address): 0x5BB774FBf61D7A473EeB0032Dfe9248E539B6e61

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


Deployed Bytecode Sourcemap

3718:11503:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5844:83;;;;;;;;;;-1:-1:-1;5914:5:0;;;;;;;;;;;;-1:-1:-1;;;5914:5:0;;;;5844:83;;;;;;;:::i;:::-;;;;;;;;6677:161;;;;;;;;;;-1:-1:-1;6677:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;6677:161:0;1162:187:1;6121:95:0;;;;;;;;;;;;;:::i;:::-;;;1500:25:1;;;1488:2;1473:18;6121:95:0;1354:177:1;6846:313:0;;;;;;;;;;-1:-1:-1;6846:313:0;;;;;:::i;:::-;;:::i;6030:83::-;;;;;;;;;;-1:-1:-1;6030:83:0;;4466:1;2139:36:1;;2127:2;2112:18;6030:83:0;1997:184:1;13892:162:0;;;;;;;;;;-1:-1:-1;13892:162:0;;;;;:::i;:::-;;:::i;:::-;;14062:83;;;;;;;;;;-1:-1:-1;14062:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;14130:7:0;14109:4;14130:7;;;:4;:7;;;;;;;;;14062:83;4784:50;;;;;;;;;;;;;;;;4902:51;;;;;;;;;;;;;;;;4841:54;;;;;;;;;;;;;;;;14153:186;;;;;;;;;;;;;:::i;6224:119::-;;;;;;;;;;-1:-1:-1;6224:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6317:18:0;6290:7;6317:18;;;:9;:18;;;;;;;6224:119;2799:148;;;;;;;;;;;;;:::i;13483:129::-;;;;;;;;;;;;;:::i;14981:200::-;;;;;;;;;;;;;:::i;2585:79::-;;;;;;;;;;-1:-1:-1;2623:7:0;2650:6;2585:79;;-1:-1:-1;;;;;2650:6:0;;;3842:51:1;;3830:2;3815:18;2585:79:0;3696:203:1;5935:87:0;;;;;;;;;;-1:-1:-1;6007:7:0;;;;;;;;;;;;-1:-1:-1;;;6007:7:0;;;;5935:87;;6351:167;;;;;;;;;;-1:-1:-1;6351:167:0;;;;;:::i;:::-;;:::i;13720:164::-;;;;;;;;;;-1:-1:-1;13720:164:0;;;;;:::i;:::-;;:::i;6526:143::-;;;;;;;;;;-1:-1:-1;6526:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6634:18:0;;;6607:7;6634:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6526:143;14347:626;;;;;;;;;;;;;:::i;6677:161::-;6752:4;6769:39;420:10;6792:7;6801:6;6769:8;:39::i;:::-;-1:-1:-1;6826:4:0;6677:161;;;;;:::o;6121:95::-;6174:7;4642:13;4466:1;4642:2;:13;:::i;:::-;4626:29;;:13;:29;:::i;:::-;6194:14;;6121:95;:::o;6846:313::-;6944:4;6961:36;6971:6;6979:9;6990:6;6961:9;:36::i;:::-;7008:121;7017:6;420:10;7039:89;7077:6;7039:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7039:19:0;;;;;;:11;:19;;;;;;;;420:10;7039:33;;;;;;;;;;:37;:89::i;:::-;7008:8;:121::i;:::-;-1:-1:-1;7147:4:0;6846:313;;;;;:::o;13892:162::-;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;;;;;;;;;13965:6:::1;13960:87;13981:6;:13;13977:1;:17;13960:87;;;14032:5;14014:4;:15;14019:6;14026:1;14019:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;14014:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;14014:15:0;:23;;-1:-1:-1;;14014:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13996:3;::::1;::::0;::::1;:::i;:::-;;;;13960:87;;;;13892:162:::0;:::o;14153:186::-;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;14241:1:::1;14217:21;:25;14209:60;;;::::0;-1:-1:-1;;;14209:60:0;;6820:2:1;14209:60:0::1;::::0;::::1;6802:21:1::0;6859:2;6839:18;;;6832:30;-1:-1:-1;;;6878:18:1;;;6871:52;6940:18;;14209:60:0::1;6618:346:1::0;14209:60:0::1;14280:51;::::0;14288:10:::1;::::0;14309:21:::1;14280:51:::0;::::1;;;::::0;::::1;::::0;;;14309:21;14288:10;14280:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;14153:186::o:0;2799:148::-;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;2906:1:::1;2890:6:::0;;2869:40:::1;::::0;-1:-1:-1;;;;;2890:6:0;;::::1;::::0;2869:40:::1;::::0;2906:1;;2869:40:::1;2937:1;2920:19:::0;;-1:-1:-1;;;;;;2920:19:0::1;::::0;;2799:148::o;13483:129::-;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;4642:13:::1;4466:1;4642:2;:13;:::i;:::-;4626:29;::::0;:13:::1;:29;:::i;:::-;13536:15;:25:::0;13577:27:::1;4642:13;4466:1;4642:2;:13;:::i;:::-;4626:29;::::0;:13:::1;:29;:::i;:::-;13577:27;::::0;1500:25:1;;;1488:2;1473:18;13577:27:0::1;;;;;;;13483:129::o:0;14981:200::-;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;15047:11:::1;::::0;-1:-1:-1;;;15047:11:0;::::1;;;15046:12;15038:47;;;::::0;-1:-1:-1;;;15038:47:0;;7171:2:1;15038:47:0::1;::::0;::::1;7153:21:1::0;7210:2;7190:18;;;7183:30;7249:25;7229:18;;;7222:53;7292:18;;15038:47:0::1;6969:347:1::0;15038:47:0::1;15098:10;:17:::0;;-1:-1:-1;;;;15155:18:0;-1:-1:-1;;;15155:18:0;;;14981:200::o;6351:167::-;6429:4;6446:42;420:10;6470:9;6481:6;6446:9;:42::i;13720:164::-;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;13794:6:::1;13789:88;13810:5;:12;13806:1;:16;13789:88;;;13861:4;13844;:14;13849:5;13855:1;13849:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;13844:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;13844:14:0;:21;;-1:-1:-1;;13844:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13824:3;::::1;::::0;::::1;:::i;:::-;;;;13789:88;;14347:626:::0;2712:6;;-1:-1:-1;;;;;2712:6:0;420:10;2712:22;2704:67;;;;-1:-1:-1;;;2704:67:0;;;;;;;:::i;:::-;14411:15:::1;:80:::0;;-1:-1:-1;;;;;;14411:80:0::1;14448:42;14411:80:::0;;::::1;::::0;;;14502:65:::1;::::0;14519:4:::1;::::0;-1:-1:-1;;14502:8:0::1;:65::i;:::-;14612:15;;;;;;;;;-1:-1:-1::0;;;;;14612:15:0::1;-1:-1:-1::0;;;;;14612:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14594:55:0::1;;14658:4;14665:15;;;;;;;;;-1:-1:-1::0;;;;;14665:15:0::1;-1:-1:-1::0;;;;;14665:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14594:94;::::0;-1:-1:-1;;;;;;14594:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7807:15:1;;;14594:94:0::1;::::0;::::1;7789:34:1::0;7859:15;;7839:18;;;7832:43;7724:18;;14594:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14578:13;:110:::0;;-1:-1:-1;;;;;14578:110:0;;::::1;-1:-1:-1::0;;;;;;14578:110:0;;::::1;::::0;::::1;::::0;;;:13:::1;14699:37:::0;;;:22:::1;:37;::::0;;;;:44;;-1:-1:-1;;14699:44:0::1;14578:110:::0;14699:44:::1;::::0;;14754:15:::1;::::0;::::1;:31;14793:21;14824:4;14830:24;14824:4:::0;-1:-1:-1;;;;;6317:18:0;6290:7;6317:18;;;:9;:18;;;;;;;6224:119;14830:24:::1;14855:1;14857::::0;14859:7:::1;2623::::0;2650:6;-1:-1:-1;;;;;2650:6:0;;2585:79;14859:7:::1;14754:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;14754:129:0;;;-1:-1:-1;;;;;8245:15:1;;;14754:129:0::1;::::0;::::1;8227:34:1::0;8277:18;;;8270:34;;;;8320:18;;;8313:34;;;;8363:18;;;8356:34;8427:15;;;8406:19;;;8399:44;14867:15:0::1;8459:19:1::0;;;8452:35;8161:19;;14754:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;14901:13:0::1;::::0;14932:15:::1;::::0;14894:71:::1;::::0;-1:-1:-1;;;14894:71:0;;-1:-1:-1;;;;;14932:15:0;;::::1;14894:71;::::0;::::1;8983:51:1::0;-1:-1:-1;;9050:18:1;;;9043:34;14901:13:0;::::1;::::0;-1:-1:-1;14894:29:0::1;::::0;8956:18:1;;14894:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7167:335::-:0;-1:-1:-1;;;;;7260:19:0;;7252:68;;;;-1:-1:-1;;;7252:68:0;;9572:2:1;7252:68:0;;;9554:21:1;9611:2;9591:18;;;9584:30;9650:34;9630:18;;;9623:62;-1:-1:-1;;;9701:18:1;;;9694:34;9745:19;;7252:68:0;9370:400:1;7252:68:0;-1:-1:-1;;;;;7339:21:0;;7331:68;;;;-1:-1:-1;;;7331:68:0;;9977:2:1;7331:68:0;;;9959:21:1;10016:2;9996:18;;;9989:30;10055:34;10035:18;;;10028:62;-1:-1:-1;;;10106:18:1;;;10099:32;10148:19;;7331:68:0;9775:398:1;7331:68:0;-1:-1:-1;;;;;7410:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7462:32;;1500:25:1;;;7462:32:0;;1473:18:1;7462:32:0;;;;;;;;7167:335;;;:::o;7809:1372::-;-1:-1:-1;;;;;7897:18:0;;7889:68;;;;-1:-1:-1;;;7889:68:0;;10380:2:1;7889:68:0;;;10362:21:1;10419:2;10399:18;;;10392:30;10458:34;10438:18;;;10431:62;-1:-1:-1;;;10509:18:1;;;10502:35;10554:19;;7889:68:0;10178:401:1;7889:68:0;-1:-1:-1;;;;;7976:16:0;;7968:64;;;;-1:-1:-1;;;7968:64:0;;10786:2:1;7968:64:0;;;10768:21:1;10825:2;10805:18;;;10798:30;10864:34;10844:18;;;10837:62;-1:-1:-1;;;10915:18:1;;;10908:33;10958:19;;7968:64:0;10584:399:1;7968:64:0;8060:1;8051:6;:10;8043:64;;;;-1:-1:-1;;;8043:64:0;;11190:2:1;8043:64:0;;;11172:21:1;11229:2;11209:18;;;11202:30;11268:34;11248:18;;;11241:62;-1:-1:-1;;;11319:18:1;;;11312:39;11368:19;;8043:64:0;10988:405:1;8043:64:0;8122:6;;-1:-1:-1;;;8122:6:0;;;;8118:78;;;8152:32;8167:4;8173:2;8177:6;8152:14;:32::i;:::-;7809:1372;;;:::o;8118:78::-;8206:17;8240:27;8258:4;8264:2;8240:17;:27::i;:::-;8236:881;;;-1:-1:-1;;;;;8293:10:0;;;;;;:4;:10;;;;;;;;8292:11;:24;;;;-1:-1:-1;;;;;;8308:8:0;;;;;;:4;:8;;;;;;;;8307:9;8292:24;8284:33;;;;;;8340:11;;-1:-1:-1;;;8340:11:0;;;;8332:52;;;;-1:-1:-1;;;8332:52:0;;11600:2:1;8332:52:0;;;11582:21:1;11639:2;11619:18;;;11612:30;11678;11658:18;;;11651:58;11726:18;;8332:52:0;11398:352:1;8332:52:0;8413:76;8485:3;8413:67;8435:15;;8425:9;;:25;8424:55;;8465:14;;8424:55;;;8452:12;;8424:55;8413:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8518:13;;8401:88;;-1:-1:-1;;;;;;8510:21:0;;;8518:13;;8510:21;:55;;;;-1:-1:-1;8549:15:0;;-1:-1:-1;;;;;8535:30:0;;;8549:15;;8535:30;;8510:55;8506:290;;;-1:-1:-1;;;;;8595:26:0;;;;;;:22;:26;;;;;;;;;:93;;;8673:15;;8663:6;8647:13;8657:2;-1:-1:-1;;;;;6317:18:0;6290:7;6317:18;;;:9;:18;;;;;;;6224:119;8647:13;:22;;;;:::i;:::-;:41;;8595:93;8586:164;;;;-1:-1:-1;;;8586:164:0;;12087:2:1;8586:164:0;;;12069:21:1;12126:2;12106:18;;;12099:30;12165:34;12145:18;;;12138:62;-1:-1:-1;;;12216:18:1;;;12209:33;12259:19;;8586:164:0;11885:399:1;8586:164:0;8769:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8506:290;8821:13;;-1:-1:-1;;;;;8815:19:0;;;8821:13;;8815:19;:44;;;;-1:-1:-1;;;;;;8838:21:0;;8854:4;8838:21;;8815:44;8812:175;;;8892:79;8967:3;8892:70;8914:16;;8904:9;;:26;8903:58;;8946:15;;8903:58;;;8932:13;;8892:6;;:10;:70::i;:79::-;8880:91;;8812:175;9007:35;9025:4;9031:2;9035:6;9007:17;:35::i;:::-;9003:103;;;9063:27;9083:6;9063:19;:27::i;:::-;9127:46;9145:4;9151:2;9155:6;9163:9;9127:17;:46::i;:::-;7878:1303;7809:1372;;;:::o;1477:190::-;1563:7;1599:12;1591:6;;;;1583:29;;;;-1:-1:-1;;;1583:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1623:9:0;1635:5;1639:1;1635;:5;:::i;:::-;1623:17;1477:190;-1:-1:-1;;;;;1477:190:0:o;9189:364::-;9338:90;;;;;;;;;;;-1:-1:-1;;;9338:90:0;;;;;;;;-1:-1:-1;;;;;9338:17:0;;-1:-1:-1;9338:17:0;;;:9;:17;;;;;;;;:90;;9374:6;;9338:21;:90::i;:::-;-1:-1:-1;;;;;9318:17:0;;;;;;;:9;:17;;;;;;:110;;;;9462:20;;;;;;;:32;;9487:6;9462:24;:32::i;:::-;-1:-1:-1;;;;;9439:20:0;;;;;;;:9;:20;;;;;;;:55;;;;9510:35;;;;;;;;;;9538:6;1500:25:1;;1488:2;1473:18;;1354:177;7643:158:0;-1:-1:-1;;;;;7742:24:0;;7718:4;7742:24;;;:18;:24;;;;;;;;7741:25;:52;;;;-1:-1:-1;;;;;;7771:22:0;;;;;;:18;:22;;;;;;;;7770:23;7741:52;7734:59;7643:158;-1:-1:-1;;;7643:158:0:o;1675:246::-;1733:7;1757:1;1762;1757:6;1753:47;;-1:-1:-1;1787:1:0;1780:8;;1753:47;1810:9;1822:5;1826:1;1822;:5;:::i;:::-;1810:17;-1:-1:-1;1855:1:0;1846:5;1850:1;1810:17;1846:5;:::i;:::-;:10;1838:56;;;;-1:-1:-1;;;1838:56:0;;12846:2:1;1838:56:0;;;12828:21:1;12885:2;12865:18;;;12858:30;12924:34;12904:18;;;12897:62;-1:-1:-1;;;12975:18:1;;;12968:31;13016:19;;1838:56:0;12644:397:1;1929:132:0;1987:7;2014:39;2018:1;2021;2014:39;;;;;;;;;;;;;;;;;:3;:39::i;9561:686::-;9762:4;9657;6317:18;;;:9;:18;;;;;;9824:20;;9935:13;;4583:1;;6317:18;9801:43;;;;9876:35;;;;-1:-1:-1;;;;;9935:13:0;;;9927:21;;;;9924:142;;4503:1;9964:17;;9924:142;;;10007:13;;-1:-1:-1;;;;;10007:13:0;;;10001:19;;;;9998:68;;4541:1;10036:18;;9998:68;10099:6;;-1:-1:-1;;;10099:6:0;;;;10098:7;:38;;;;;10122:14;10098:38;:80;;;;;10165:13;10098:80;:113;;;;;10195:11;:16;;10210:1;10195:16;10098:113;:141;;;;-1:-1:-1;10228:11:0;;-1:-1:-1;;;10228:11:0;;;;10098:141;10078:161;9561:686;-1:-1:-1;;;;;;;;9561:686:0:o;12545:439::-;5275:6;:13;;-1:-1:-1;;;;5275:13:0;-1:-1:-1;;;5275:13:0;;;12670:4:::1;-1:-1:-1::0;6317:18:0;;;-1:-1:-1;6317:18:0;;;;;;12621:55:::1;;12687:23;12713:54;12717:6;12725:41;12729:20;12751:14;;12725:3;:41::i;:::-;12713:3;:54::i;:::-;12687:80;;12780:33;12797:15;12780:16;:33::i;:::-;12855:21;12891:22:::0;;12887:90:::1;;12930:35;12943:21;12930:12;:35::i;:::-;-1:-1:-1::0;;5311:6:0;:14;;-1:-1:-1;;;;5311:14:0;;;-1:-1:-1;;12545:439:0:o;11957:474::-;12105:10;;12065:18;;;;-1:-1:-1;;;12105:10:0;;;;:99;;12189:6;12197;12105:99;;;12131:40;12147:4;12153:6;12161:9;12131:15;:40::i;:::-;12064:140;;;;12233:92;12267:10;12233:92;;;;;;;;;;;;;-1:-1:-1;;;12233:92:0;;;:9;:15;12243:4;-1:-1:-1;;;;;12233:15:0;-1:-1:-1;;;;;12233:15:0;;;;;;;;;;;;;:19;;:92;;;;;:::i;:::-;-1:-1:-1;;;;;12215:15:0;;;;;;;:9;:15;;;;;;:110;;;;12352:13;;;;;;;:27;;12370:8;12352:17;:27::i;:::-;-1:-1:-1;;;;;12336:13:0;;;;;;;:9;:13;;;;;;;:43;;;;12395:28;;;;;;;;;;12414:8;1500:25:1;;1488:2;1473:18;;1354:177;12395:28:0;;;;;;;;12053:378;;11957:474;;;;:::o;1146:179::-;1204:7;;1236:5;1240:1;1236;:5;:::i;:::-;1224:17;;1265:1;1260;:6;;1252:46;;;;-1:-1:-1;;;1252:46:0;;13248:2:1;1252:46:0;;;13230:21:1;13287:2;13267:18;;;13260:30;13326:29;13306:18;;;13299:57;13373:18;;1252:46:0;13046:351:1;2069:189:0;2155:7;2190:12;2183:5;2175:28;;;;-1:-1:-1;;;2175:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2214:9:0;2226:5;2230:1;2226;:5;:::i;12439:98::-;12496:7;12523:1;12521;:3;12520:9;;12528:1;12520:9;;;-1:-1:-1;12526:1:0;12439:98;-1:-1:-1;12439:98:0:o;12992:483::-;5275:6;:13;;-1:-1:-1;;;;5275:13:0;-1:-1:-1;;;5275:13:0;;;13094:16:::1;::::0;;13108:1:::1;13094:16:::0;;;;;::::1;::::0;;-1:-1:-1;;13094:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13094:16:0::1;13070:40;;13139:4;13121;13126:1;13121:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13121:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;13165:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;13165:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;13121:7;;13165:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13155:4;13160:1;13155:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13155:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;13230:15:::1;::::0;13198:62:::1;::::0;13215:4:::1;::::0;13230:15:::1;13248:11:::0;13198:8:::1;:62::i;:::-;13271:15;::::0;:196:::1;::::0;-1:-1:-1;;;13271:196:0;;-1:-1:-1;;;;;13271:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;13352:11;;13271:15:::1;::::0;13394:4;;13421::::1;::::0;13441:15:::1;::::0;13271:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5311:6:0;:14;;-1:-1:-1;;;;5311:14:0;;;-1:-1:-1;;;;12992:483:0:o;13620:92::-;13677:10;;:27;;-1:-1:-1;;;;;13677:10:0;;;;:27;;;;;13697:6;;13677:10;:27;:10;:27;13697:6;13677:10;:27;;;;;;;;;;;;;;;;;;;10255:900;10348:7;10357;10377:12;10392:27;10412:6;-1:-1:-1;;;;;7601:26:0;7577:4;7601:26;;;:18;:26;;;;;;;;7600:27;;7510:125;10392:27;10377:42;;10430:20;10453:7;:50;;10498:5;10453:50;;;10492:3;10483:6;10463:17;10473:6;-1:-1:-1;;;;;6317:18:0;6290:7;6317:18;;;:9;:18;;;;;;;6224:119;10463:17;:26;;;;:::i;:::-;:32;10453:50;10430:73;-1:-1:-1;10520:13:0;;10517:169;;10593:4;10575:24;;;;:9;:24;;;;;;:39;;10604:9;10575:28;:39::i;:::-;10566:4;10548:24;;;;:9;:24;;;;;;;:66;;;;10632:42;;-1:-1:-1;;;;;10632:42:0;;;;;;;10664:9;1500:25:1;;1488:2;1473:18;;1354:177;10632:42:0;;;;;;;;10517:169;10721:10;;10698:20;;-1:-1:-1;;;10721:10:0;;;;:154;;10869:6;10721:154;;;10756:3;10747:6;:12;:106;;10847:6;10747:106;;;10777:53;10797:6;10805:7;10814:15;10777:19;:53::i;:::-;10922:10;;10698:177;;-1:-1:-1;10896:23:0;;-1:-1:-1;;;10922:10:0;;;;:174;;11036:1;11024:9;:13;:72;;11090:6;10922:174;;11024:72;11053:21;:6;11064:9;11053:10;:21::i;:::-;10922:174;;;10948:59;10971:6;10980:9;10991:15;10948:22;:59::i;:::-;11117:12;;;;-1:-1:-1;10255:900:0;;-1:-1:-1;;;;;;;10255:900:0:o;11163:538::-;11263:7;;;11370:3;11400:7;:62;;11461:1;11400:62;;;11410:12;:34;;11443:1;11410:34;;;11439:1;11410:34;11386:76;;;;11503:7;:136;;11565:74;11628:10;11565:44;11591:17;:11;11605:3;11591:17;:::i;:::-;11565:7;;:25;:44::i;:74::-;11503:136;;;11513:12;:36;;11548:1;11513:36;;;11542:3;11513:36;11503:136;;;11487:152;-1:-1:-1;11667:26:0;:7;11487:152;11667:11;:26::i;:::-;11660:33;11163:538;-1:-1:-1;;;;;;;11163:538:0:o;1333:136::-;1391:7;1418:43;1422:1;1425;1418:43;;;;;;;;;;;;;;;;;:3;:43::i;11709:240::-;11817:7;11837:21;11861:12;:21;;11881:1;11861:21;;;11876:3;11861:21;11837:45;;;;11900:41;11931:9;11900:26;11912:13;11900:7;:11;;:26;;;;:::i;:::-;:30;;:41::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:134;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2186:127::-;2247:10;2242:3;2238:20;2235:1;2228:31;2278:4;2275:1;2268:15;2302:4;2299:1;2292:15;2318:1121;2402:6;2433:2;2476;2464:9;2455:7;2451:23;2447:32;2444:52;;;2492:1;2489;2482:12;2444:52;2532:9;2519:23;2561:18;2602:2;2594:6;2591:14;2588:34;;;2618:1;2615;2608:12;2588:34;2656:6;2645:9;2641:22;2631:32;;2701:7;2694:4;2690:2;2686:13;2682:27;2672:55;;2723:1;2720;2713:12;2672:55;2759:2;2746:16;2781:2;2777;2774:10;2771:36;;;2787:18;;:::i;:::-;2833:2;2830:1;2826:10;2865:2;2859:9;2928:2;2924:7;2919:2;2915;2911:11;2907:25;2899:6;2895:38;2983:6;2971:10;2968:22;2963:2;2951:10;2948:18;2945:46;2942:72;;;2994:18;;:::i;:::-;3030:2;3023:22;3080:18;;;3114:15;;;;-1:-1:-1;3156:11:1;;;3152:20;;;3184:19;;;3181:39;;;3216:1;3213;3206:12;3181:39;3240:11;;;;3260:148;3276:6;3271:3;3268:15;3260:148;;;3342:23;3361:3;3342:23;:::i;:::-;3330:36;;3293:12;;;;3386;;;;3260:148;;3444:247;3503:6;3556:2;3544:9;3535:7;3531:23;3527:32;3524:52;;;3572:1;3569;3562:12;3524:52;3611:9;3598:23;3630:31;3655:5;3630:31;:::i;3904:388::-;3972:6;3980;4033:2;4021:9;4012:7;4008:23;4004:32;4001:52;;;4049:1;4046;4039:12;4001:52;4088:9;4075:23;4107:31;4132:5;4107:31;:::i;:::-;4157:5;-1:-1:-1;4214:2:1;4199:18;;4186:32;4227:33;4186:32;4227:33;:::i;:::-;4279:7;4269:17;;;3904:388;;;;;:::o;4297:127::-;4358:10;4353:3;4349:20;4346:1;4339:31;4389:4;4386:1;4379:15;4413:4;4410:1;4403:15;4429:422;4518:1;4561:5;4518:1;4575:270;4596:7;4586:8;4583:21;4575:270;;;4655:4;4651:1;4647:6;4643:17;4637:4;4634:27;4631:53;;;4664:18;;:::i;:::-;4714:7;4704:8;4700:22;4697:55;;;4734:16;;;;4697:55;4813:22;;;;4773:15;;;;4575:270;;;4579:3;4429:422;;;;;:::o;4856:806::-;4905:5;4935:8;4925:80;;-1:-1:-1;4976:1:1;4990:5;;4925:80;5024:4;5014:76;;-1:-1:-1;5061:1:1;5075:5;;5014:76;5106:4;5124:1;5119:59;;;;5192:1;5187:130;;;;5099:218;;5119:59;5149:1;5140:10;;5163:5;;;5187:130;5224:3;5214:8;5211:17;5208:43;;;5231:18;;:::i;:::-;-1:-1:-1;;5287:1:1;5273:16;;5302:5;;5099:218;;5401:2;5391:8;5388:16;5382:3;5376:4;5373:13;5369:36;5363:2;5353:8;5350:16;5345:2;5339:4;5336:12;5332:35;5329:77;5326:159;;;-1:-1:-1;5438:19:1;;;5470:5;;5326:159;5517:34;5542:8;5536:4;5517:34;:::i;:::-;5587:6;5583:1;5579:6;5575:19;5566:7;5563:32;5560:58;;;5598:18;;:::i;:::-;5636:20;;4856:806;-1:-1:-1;;;4856:806:1:o;5667:140::-;5725:5;5754:47;5795:4;5785:8;5781:19;5775:4;5754:47;:::i;5812:168::-;5885:9;;;5916;;5933:15;;;5927:22;;5913:37;5903:71;;5954:18;;:::i;5985:356::-;6187:2;6169:21;;;6206:18;;;6199:30;6265:34;6260:2;6245:18;;6238:62;6332:2;6317:18;;5985:356::o;6346:127::-;6407:10;6402:3;6398:20;6395:1;6388:31;6438:4;6435:1;6428:15;6462:4;6459:1;6452:15;6478:135;6517:3;6538:17;;;6535:43;;6558:18;;:::i;:::-;-1:-1:-1;6605:1:1;6594:13;;6478:135::o;7321:251::-;7391:6;7444:2;7432:9;7423:7;7419:23;7415:32;7412:52;;;7460:1;7457;7450:12;7412:52;7492:9;7486:16;7511:31;7536:5;7511:31;:::i;8498:306::-;8586:6;8594;8602;8655:2;8643:9;8634:7;8630:23;8626:32;8623:52;;;8671:1;8668;8661:12;8623:52;8700:9;8694:16;8684:26;;8750:2;8739:9;8735:18;8729:25;8719:35;;8794:2;8783:9;8779:18;8773:25;8763:35;;8498:306;;;;;:::o;9088:277::-;9155:6;9208:2;9196:9;9187:7;9183:23;9179:32;9176:52;;;9224:1;9221;9214:12;9176:52;9256:9;9250:16;9309:5;9302:13;9295:21;9288:5;9285:32;9275:60;;9331:1;9328;9321:12;11755:125;11820:9;;;11841:10;;;11838:36;;;11854:18;;:::i;12289:128::-;12356:9;;;12377:11;;;12374:37;;;12391:18;;:::i;12422:217::-;12462:1;12488;12478:132;;12532:10;12527:3;12523:20;12520:1;12513:31;12567:4;12564:1;12557:15;12595:4;12592:1;12585:15;12478:132;-1:-1:-1;12624:9:1;;12422:217::o;13402:980::-;13664:4;13712:3;13701:9;13697:19;13743:6;13732:9;13725:25;13769:2;13807:6;13802:2;13791:9;13787:18;13780:34;13850:3;13845:2;13834:9;13830:18;13823:31;13874:6;13909;13903:13;13940:6;13932;13925:22;13978:3;13967:9;13963:19;13956:26;;14017:2;14009:6;14005:15;13991:29;;14038:1;14048:195;14062:6;14059:1;14056:13;14048:195;;;14127:13;;-1:-1:-1;;;;;14123:39:1;14111:52;;14218:15;;;;14183:12;;;;14159:1;14077:9;14048:195;;;-1:-1:-1;;;;;;;14299:32:1;;;;14294:2;14279:18;;14272:60;-1:-1:-1;;;14363:3:1;14348:19;14341:35;14260:3;13402:980;-1:-1:-1;;;13402:980:1:o

Swarm Source

ipfs://b7dcc32eecd7598f03cf9068e34829a051635555d337342a8f4aa5ce7852bef5
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.