ETH Price: $3,185.81 (-7.45%)
Gas: 3 Gwei

Contract

0x8025D6C18807c4FF46F316c1942462b907119c7E
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve183059542023-10-08 13:06:35290 days ago1696770395IN
0x8025D6C1...907119c7E
0 ETH0.00032276.93679213
Approve178383792023-08-04 1:35:47356 days ago1691112947IN
0x8025D6C1...907119c7E
0 ETH0.0006710414.42464995
Manual Swap176290952023-07-05 17:13:59385 days ago1688577239IN
0x8025D6C1...907119c7E
0 ETH0.0084782257.03519022
Approve175881032023-06-29 23:02:59391 days ago1688079779IN
0x8025D6C1...907119c7E
0 ETH0.0014038730.34168569
Approve175691652023-06-27 7:15:35393 days ago1687850135IN
0x8025D6C1...907119c7E
0 ETH0.000719315.54202595
Approve175455082023-06-23 23:23:59397 days ago1687562639IN
0x8025D6C1...907119c7E
0 ETH0.0006284913.49254873
Approve174454462023-06-09 21:51:23411 days ago1686347483IN
0x8025D6C1...907119c7E
0 ETH0.0011246224.17449775
Approve173851282023-06-01 9:39:35419 days ago1685612375IN
0x8025D6C1...907119c7E
0 ETH0.0012514227.03971519
Approve172618192023-05-15 1:04:35437 days ago1684112675IN
0x8025D6C1...907119c7E
0 ETH0.001571933.74567045
Approve172550082023-05-14 1:52:59438 days ago1684029179IN
0x8025D6C1...907119c7E
0 ETH0.0015097632.67251939
Approve172533762023-05-13 20:20:35438 days ago1684009235IN
0x8025D6C1...907119c7E
0 ETH0.0018090939.08931457
Approve172531442023-05-13 19:32:59438 days ago1684006379IN
0x8025D6C1...907119c7E
0 ETH0.0030875766.28392223
Transfer172185262023-05-08 21:45:23443 days ago1683582323IN
0x8025D6C1...907119c7E
0 ETH0.0042439382.55232694
Transfer172185212023-05-08 21:44:23443 days ago1683582263IN
0x8025D6C1...907119c7E
0 ETH0.0057943784.59311782
Approve172100072023-05-07 17:00:11444 days ago1683478811IN
0x8025D6C1...907119c7E
0 ETH0.00685676147.20088568
Approve172067502023-05-07 6:00:11444 days ago1683439211IN
0x8025D6C1...907119c7E
0 ETH0.0038242482.09878165
Approve172046982023-05-06 23:05:47445 days ago1683414347IN
0x8025D6C1...907119c7E
0 ETH0.00394141135.3459889
Approve172000662023-05-06 7:27:59445 days ago1683358079IN
0x8025D6C1...907119c7E
0 ETH0.00503162108.15815311
Approve172000242023-05-06 7:19:35445 days ago1683357575IN
0x8025D6C1...907119c7E
0 ETH0.00595242127.95139655
Approve171998722023-05-06 6:48:47445 days ago1683355727IN
0x8025D6C1...907119c7E
0 ETH0.00791591170.15783517
Transfer171997722023-05-06 6:28:35445 days ago1683354515IN
0x8025D6C1...907119c7E
0 ETH0.00807845110.2154194
Approve171997012023-05-06 6:14:23445 days ago1683353663IN
0x8025D6C1...907119c7E
0 ETH0.00583986125.37008357
Approve171984352023-05-06 1:56:35446 days ago1683338195IN
0x8025D6C1...907119c7E
0 ETH0.00568586123.01475551
Approve171981612023-05-06 1:00:59446 days ago1683334859IN
0x8025D6C1...907119c7E
0 ETH0.00601504129.29749412
Approve171975502023-05-05 22:57:47446 days ago1683327467IN
0x8025D6C1...907119c7E
0 ETH0.0082036176.34196109
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
176290952023-07-05 17:13:59385 days ago1688577239
0x8025D6C1...907119c7E
0.34193646 ETH
176290952023-07-05 17:13:59385 days ago1688577239
0x8025D6C1...907119c7E
0.34193646 ETH
176118192023-07-03 7:00:11387 days ago1688367611
0x8025D6C1...907119c7E
0.0022689 ETH
176118192023-07-03 7:00:11387 days ago1688367611
0x8025D6C1...907119c7E
0.0022689 ETH
175691662023-06-27 7:15:47393 days ago1687850147
0x8025D6C1...907119c7E
0.00419964 ETH
175691662023-06-27 7:15:47393 days ago1687850147
0x8025D6C1...907119c7E
0.00419964 ETH
174726592023-06-13 17:49:23407 days ago1686678563
0x8025D6C1...907119c7E
0.00426851 ETH
174726592023-06-13 17:49:23407 days ago1686678563
0x8025D6C1...907119c7E
0.00426851 ETH
174454462023-06-09 21:51:23411 days ago1686347483
0x8025D6C1...907119c7E
0.00436407 ETH
174454462023-06-09 21:51:23411 days ago1686347483
0x8025D6C1...907119c7E
0.00436407 ETH
173851302023-06-01 9:39:59419 days ago1685612399
0x8025D6C1...907119c7E
0.00447645 ETH
173851302023-06-01 9:39:59419 days ago1685612399
0x8025D6C1...907119c7E
0.00447645 ETH
173815132023-05-31 21:27:35420 days ago1685568455
0x8025D6C1...907119c7E
0.00452081 ETH
173815132023-05-31 21:27:35420 days ago1685568455
0x8025D6C1...907119c7E
0.00452081 ETH
172827082023-05-17 23:52:35434 days ago1684367555
0x8025D6C1...907119c7E
0.00472912 ETH
172827082023-05-17 23:52:35434 days ago1684367555
0x8025D6C1...907119c7E
0.00472912 ETH
172618192023-05-15 1:04:35437 days ago1684112675
0x8025D6C1...907119c7E
0.00483075 ETH
172618192023-05-15 1:04:35437 days ago1684112675
0x8025D6C1...907119c7E
0.00483075 ETH
172533802023-05-13 20:21:23438 days ago1684009283
0x8025D6C1...907119c7E
0.00491634 ETH
172533802023-05-13 20:21:23438 days ago1684009283
0x8025D6C1...907119c7E
0.00491634 ETH
172531592023-05-13 19:35:59438 days ago1684006559
0x8025D6C1...907119c7E
0.00502009 ETH
172531592023-05-13 19:35:59438 days ago1684006559
0x8025D6C1...907119c7E
0.00502009 ETH
172460152023-05-12 19:22:59439 days ago1683919379
0x8025D6C1...907119c7E
0.00515914 ETH
172460152023-05-12 19:22:59439 days ago1683919379
0x8025D6C1...907119c7E
0.00515914 ETH
172438292023-05-12 11:27:35439 days ago1683890855
0x8025D6C1...907119c7E
0.00524223 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Pepega

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-04
*/

// SPDX-License-Identifier: MIT


/*
Website: https://pepegaerc.vip/

Twitter: https://twitter.com/PepegaERC20

Twitch: https://www.twitch.tv/pepegaerc

Telegram: https://t.me/Pepega_ERC20

The First ever meme coin launched LIVE on Twitch, Join us on twitch for the livestream

WHERE DID PEPEGA COME FROM?
The first known usage of Pepega is from a Discord conversation in April 2018 where a user named “adew” has misspelled a meme's Discord code, missing its second colon, 
which is apparently where the name is derived from. It was added to the FrankerFaceZ Twitch extension.

Tax: 0%

Supply: 1,000,000,000
**/
pragma solidity 0.8.19;

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

    uint256 private _initialBuyTax=20;
    uint256 private _initialSellTax=40;
    uint256 private _finalBuyTax=0;
    uint256 private _finalSellTax=0;
    uint256 private _reduceBuyTaxAt=50;
    uint256 private _reduceSellTaxAt=50;
    uint256 private _preventSwapBefore=40;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 8;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Pepega";
    string private constant _symbol = unicode"PEPEGA";
    uint256 public _maxTxAmount =   20000000 * 10**_decimals;
    uint256 public _maxWalletSize = 20000000 * 10**_decimals;
    uint256 public _taxSwapThreshold=1000000 * 10**_decimals;
    uint256 public _maxTaxSwap=1000000 * 10**_decimals;

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

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

    constructor () {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

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

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

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

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

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

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

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

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);

            if (tradingOpen && transferDelayEnabled) {
              if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                require(_holderLastTransferTimestamp[tx.origin] < block.number,"Only one transfer per block allowed.");
                _holderLastTransferTimestamp[tx.origin] = block.number;
              }
            }

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

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


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

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


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

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

    function removeLimits() external onlyOwner{
        _maxTxAmount = _tTotal;
        _maxWalletSize=_tTotal;
        transferDelayEnabled=false;
        emit MaxTxAmountUpdated(_tTotal);
    }

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

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

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

    receive() external payable {}

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

    
    
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"}]

60806040526006805460ff1916905560146007556028600881815560006009819055600a8181556032600b819055600c55600d93909355600e5562000044916200034f565b62000054906301312d0062000367565b600f55620000656008600a6200034f565b62000075906301312d0062000367565b601055620000866008600a6200034f565b6200009590620f424062000367565b601155620000a66008600a6200034f565b620000b590620f424062000367565b6012556014805461ffff60a81b19169055348015620000d357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b03191661010033021790556200013a6008600a6200034f565b6200014a90633b9aca0062000367565b336000908152600160208190526040822092909255600390620001756000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001d93390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002136008600a6200034f565b6200022390633b9aca0062000367565b60405190815260200160405180910390a362000381565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002915781600019048211156200027557620002756200023a565b808516156200028357918102915b93841c939080029062000255565b509250929050565b600082620002aa5750600162000349565b81620002b95750600062000349565b8160018114620002d25760028114620002dd57620002fd565b600191505062000349565b60ff841115620002f157620002f16200023a565b50506001821b62000349565b5060208310610133831016604e8410600b841016171562000322575081810a62000349565b6200032e838362000250565b80600019048211156200034557620003456200023a565b0290505b92915050565b60006200036060ff84168362000299565b9392505050565b80820281158282048414176200034957620003496200023a565b61191c80620003916000396000f3fe6080604052600436106101235760003560e01c8063751039fc116100a0578063a9059cbb11610064578063a9059cbb14610348578063bf474bed14610368578063c876d0b91461037e578063c9567bf914610398578063dd62ed3e146103ad57600080fd5b8063751039fc146102b05780637d1db4a5146102c55780638da5cb5b146102db5780638f9a55c01461030357806395d89b411461031957600080fd5b8063313ce567116100e7578063313ce567146101f95780633bbac5791461021557806351bc3c851461024e57806370a0823114610265578063715018a61461029b57600080fd5b806306fdde031461012f578063095ea7b3146101705780630faee56f146101a057806318160ddd146101c457806323b872dd146101d957600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5060408051808201909152600681526550657065676160d01b60208201525b60405161016791906114eb565b60405180910390f35b34801561017c57600080fd5b5061019061018b366004611551565b6103f3565b6040519015158152602001610167565b3480156101ac57600080fd5b506101b660125481565b604051908152602001610167565b3480156101d057600080fd5b506101b661040a565b3480156101e557600080fd5b506101906101f436600461157d565b61042b565b34801561020557600080fd5b5060405160088152602001610167565b34801561022157600080fd5b506101906102303660046115be565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561025a57600080fd5b50610263610494565b005b34801561027157600080fd5b506101b66102803660046115be565b6001600160a01b031660009081526001602052604090205490565b3480156102a757600080fd5b506102636104ec565b3480156102bc57600080fd5b50610263610569565b3480156102d157600080fd5b506101b6600f5481565b3480156102e757600080fd5b506000546040516001600160a01b039091168152602001610167565b34801561030f57600080fd5b506101b660105481565b34801561032557600080fd5b5060408051808201909152600681526550455045474160d01b602082015261015a565b34801561035457600080fd5b50610190610363366004611551565b610625565b34801561037457600080fd5b506101b660115481565b34801561038a57600080fd5b506006546101909060ff1681565b3480156103a457600080fd5b50610263610632565b3480156103b957600080fd5b506101b66103c83660046115db565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006104003384846109ee565b5060015b92915050565b60006104186008600a61170e565b61042690633b9aca0061171d565b905090565b6000610438848484610b12565b61048a8433610485856040518060600160405280602881526020016118bf602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611131565b6109ee565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b0316146104b957600080fd5b3060009081526001602052604090205480156104d8576104d88161116b565b4780156104e8576104e8816112fe565b5050565b6000546001600160a01b0316331461051f5760405162461bcd60e51b815260040161051690611734565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105935760405162461bcd60e51b815260040161051690611734565b61059f6008600a61170e565b6105ad90633b9aca0061171d565b600f556105bc6008600a61170e565b6105ca90633b9aca0061171d565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106046008600a61170e565b61061290633b9aca0061171d565b60405190815260200160405180910390a1565b6000610400338484610b12565b6000546001600160a01b0316331461065c5760405162461bcd60e51b815260040161051690611734565b601454600160a01b900460ff16156106b65760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610516565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106ff9030906106f16008600a61170e565b61048590633b9aca0061171d565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107769190611769565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fc9190611769565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086d9190611769565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306108b5816001600160a01b031660009081526001602052604090205490565b6000806108ca6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610932573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109579190611786565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906117b4565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a505760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610516565b6001600160a01b038216610ab15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610516565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b765760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610516565b6001600160a01b038216610bd85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610516565b60008111610c3a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610516565b600080546001600160a01b03858116911614801590610c6757506000546001600160a01b03848116911614155b15610fee576001600160a01b03841660009081526004602052604090205460ff16158015610cae57506001600160a01b03831660009081526004602052604090205460ff16155b610cb757600080fd5b601454600160a01b900460ff168015610cd2575060065460ff165b15610d85576013546001600160a01b03848116911614801590610d0357506014546001600160a01b03848116911614155b15610d8557326000908152600560205260409020544311610d725760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b6064820152608401610516565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610db057506013546001600160a01b03848116911614155b8015610dd557506001600160a01b03831660009081526003602052604090205460ff16155b15610ebd57600f54821115610e2c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610516565b60105482610e4f856001600160a01b031660009081526001602052604090205490565b610e5991906117d6565b1115610ea75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610516565b600e8054906000610eb7836117e9565b91905055505b601454600160a81b900460ff16610f5057610efa6064610ef4600b54600e5411610ee957600754610eed565b6009545b859061133c565b906113c5565b6014549091506001600160a01b038481169116148015610f2357506001600160a01b0384163014155b15610f5057610f4d6064610ef4600c54600e5411610f4357600854610eed565b600a54859061133c565b90505b30600090815260016020526040902054601454600160a81b900460ff16158015610f8757506014546001600160a01b038581169116145b8015610f9c5750601454600160b01b900460ff165b8015610fa9575060115481115b8015610fb85750600d54600e54115b15610fec57610fda610fd584610fd084601254611407565b611407565b61116b565b478015610fea57610fea476112fe565b505b505b8015611068573060009081526001602052604090205461100e908261141c565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061105f9085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461108b908361147b565b6001600160a01b0385166000908152600160205260409020556110d06110b1838361147b565b6001600160a01b0385166000908152600160205260409020549061141c565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61111a858561147b565b60405190815260200160405180910390a350505050565b600081848411156111555760405162461bcd60e51b815260040161051691906114eb565b5060006111628486611802565b95945050505050565b6014805460ff60a81b1916600160a81b17905580156112ee57601454600160a01b900460ff16156112ee5760408051600280825260608201835260009260208301908036833701905050905030816000815181106111cb576111cb611815565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611224573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112489190611769565b8160018151811061125b5761125b611815565b6001600160a01b03928316602091820292909201015260135461128191309116846109ee565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906112ba90859060009086903090429060040161182b565b600060405180830381600087803b1580156112d457600080fd5b505af11580156112e8573d6000803e3d6000fd5b50505050505b506014805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156104e8573d6000803e3d6000fd5b60008260000361134e57506000610404565b600061135a838561171d565b905082611367858361189c565b146113be5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610516565b9392505050565b60006113be83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114bd565b600081831161141657826113be565b50919050565b60008061142983856117d6565b9050838110156113be5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610516565b60006113be83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611131565b600081836114de5760405162461bcd60e51b815260040161051691906114eb565b506000611162848661189c565b600060208083528351808285015260005b81811015611518578581018301518582016040015282016114fc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461154e57600080fd5b50565b6000806040838503121561156457600080fd5b823561156f81611539565b946020939093013593505050565b60008060006060848603121561159257600080fd5b833561159d81611539565b925060208401356115ad81611539565b929592945050506040919091013590565b6000602082840312156115d057600080fd5b81356113be81611539565b600080604083850312156115ee57600080fd5b82356115f981611539565b9150602083013561160981611539565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561166557816000190482111561164b5761164b611614565b8085161561165857918102915b93841c939080029061162f565b509250929050565b60008261167c57506001610404565b8161168957506000610404565b816001811461169f57600281146116a9576116c5565b6001915050610404565b60ff8411156116ba576116ba611614565b50506001821b610404565b5060208310610133831016604e8410600b84101617156116e8575081810a610404565b6116f2838361162a565b806000190482111561170657611706611614565b029392505050565b60006113be60ff84168361166d565b808202811582820484141761040457610404611614565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561177b57600080fd5b81516113be81611539565b60008060006060848603121561179b57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156117c657600080fd5b815180151581146113be57600080fd5b8082018082111561040457610404611614565b6000600182016117fb576117fb611614565b5060010190565b8181038181111561040457610404611614565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561187b5784516001600160a01b031683529383019391830191600101611856565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826118b957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202bc3135395403d62f08a089f991c90aff66c1c318dc1086d5f303352781700fc64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101235760003560e01c8063751039fc116100a0578063a9059cbb11610064578063a9059cbb14610348578063bf474bed14610368578063c876d0b91461037e578063c9567bf914610398578063dd62ed3e146103ad57600080fd5b8063751039fc146102b05780637d1db4a5146102c55780638da5cb5b146102db5780638f9a55c01461030357806395d89b411461031957600080fd5b8063313ce567116100e7578063313ce567146101f95780633bbac5791461021557806351bc3c851461024e57806370a0823114610265578063715018a61461029b57600080fd5b806306fdde031461012f578063095ea7b3146101705780630faee56f146101a057806318160ddd146101c457806323b872dd146101d957600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b5060408051808201909152600681526550657065676160d01b60208201525b60405161016791906114eb565b60405180910390f35b34801561017c57600080fd5b5061019061018b366004611551565b6103f3565b6040519015158152602001610167565b3480156101ac57600080fd5b506101b660125481565b604051908152602001610167565b3480156101d057600080fd5b506101b661040a565b3480156101e557600080fd5b506101906101f436600461157d565b61042b565b34801561020557600080fd5b5060405160088152602001610167565b34801561022157600080fd5b506101906102303660046115be565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561025a57600080fd5b50610263610494565b005b34801561027157600080fd5b506101b66102803660046115be565b6001600160a01b031660009081526001602052604090205490565b3480156102a757600080fd5b506102636104ec565b3480156102bc57600080fd5b50610263610569565b3480156102d157600080fd5b506101b6600f5481565b3480156102e757600080fd5b506000546040516001600160a01b039091168152602001610167565b34801561030f57600080fd5b506101b660105481565b34801561032557600080fd5b5060408051808201909152600681526550455045474160d01b602082015261015a565b34801561035457600080fd5b50610190610363366004611551565b610625565b34801561037457600080fd5b506101b660115481565b34801561038a57600080fd5b506006546101909060ff1681565b3480156103a457600080fd5b50610263610632565b3480156103b957600080fd5b506101b66103c83660046115db565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006104003384846109ee565b5060015b92915050565b60006104186008600a61170e565b61042690633b9aca0061171d565b905090565b6000610438848484610b12565b61048a8433610485856040518060600160405280602881526020016118bf602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190611131565b6109ee565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b0316146104b957600080fd5b3060009081526001602052604090205480156104d8576104d88161116b565b4780156104e8576104e8816112fe565b5050565b6000546001600160a01b0316331461051f5760405162461bcd60e51b815260040161051690611734565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105935760405162461bcd60e51b815260040161051690611734565b61059f6008600a61170e565b6105ad90633b9aca0061171d565b600f556105bc6008600a61170e565b6105ca90633b9aca0061171d565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106046008600a61170e565b61061290633b9aca0061171d565b60405190815260200160405180910390a1565b6000610400338484610b12565b6000546001600160a01b0316331461065c5760405162461bcd60e51b815260040161051690611734565b601454600160a01b900460ff16156106b65760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610516565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106ff9030906106f16008600a61170e565b61048590633b9aca0061171d565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107769190611769565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107fc9190611769565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061086d9190611769565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d71947306108b5816001600160a01b031660009081526001602052604090205490565b6000806108ca6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610932573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109579190611786565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156109b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d491906117b4565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a505760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610516565b6001600160a01b038216610ab15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610516565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b765760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610516565b6001600160a01b038216610bd85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610516565b60008111610c3a5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610516565b600080546001600160a01b03858116911614801590610c6757506000546001600160a01b03848116911614155b15610fee576001600160a01b03841660009081526004602052604090205460ff16158015610cae57506001600160a01b03831660009081526004602052604090205460ff16155b610cb757600080fd5b601454600160a01b900460ff168015610cd2575060065460ff165b15610d85576013546001600160a01b03848116911614801590610d0357506014546001600160a01b03848116911614155b15610d8557326000908152600560205260409020544311610d725760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b6064820152608401610516565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015610db057506013546001600160a01b03848116911614155b8015610dd557506001600160a01b03831660009081526003602052604090205460ff16155b15610ebd57600f54821115610e2c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610516565b60105482610e4f856001600160a01b031660009081526001602052604090205490565b610e5991906117d6565b1115610ea75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610516565b600e8054906000610eb7836117e9565b91905055505b601454600160a81b900460ff16610f5057610efa6064610ef4600b54600e5411610ee957600754610eed565b6009545b859061133c565b906113c5565b6014549091506001600160a01b038481169116148015610f2357506001600160a01b0384163014155b15610f5057610f4d6064610ef4600c54600e5411610f4357600854610eed565b600a54859061133c565b90505b30600090815260016020526040902054601454600160a81b900460ff16158015610f8757506014546001600160a01b038581169116145b8015610f9c5750601454600160b01b900460ff165b8015610fa9575060115481115b8015610fb85750600d54600e54115b15610fec57610fda610fd584610fd084601254611407565b611407565b61116b565b478015610fea57610fea476112fe565b505b505b8015611068573060009081526001602052604090205461100e908261141c565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061105f9085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461108b908361147b565b6001600160a01b0385166000908152600160205260409020556110d06110b1838361147b565b6001600160a01b0385166000908152600160205260409020549061141c565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61111a858561147b565b60405190815260200160405180910390a350505050565b600081848411156111555760405162461bcd60e51b815260040161051691906114eb565b5060006111628486611802565b95945050505050565b6014805460ff60a81b1916600160a81b17905580156112ee57601454600160a01b900460ff16156112ee5760408051600280825260608201835260009260208301908036833701905050905030816000815181106111cb576111cb611815565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611224573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112489190611769565b8160018151811061125b5761125b611815565b6001600160a01b03928316602091820292909201015260135461128191309116846109ee565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906112ba90859060009086903090429060040161182b565b600060405180830381600087803b1580156112d457600080fd5b505af11580156112e8573d6000803e3d6000fd5b50505050505b506014805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156104e8573d6000803e3d6000fd5b60008260000361134e57506000610404565b600061135a838561171d565b905082611367858361189c565b146113be5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610516565b9392505050565b60006113be83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114bd565b600081831161141657826113be565b50919050565b60008061142983856117d6565b9050838110156113be5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610516565b60006113be83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611131565b600081836114de5760405162461bcd60e51b815260040161051691906114eb565b506000611162848661189c565b600060208083528351808285015260005b81811015611518578581018301518582016040015282016114fc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461154e57600080fd5b50565b6000806040838503121561156457600080fd5b823561156f81611539565b946020939093013593505050565b60008060006060848603121561159257600080fd5b833561159d81611539565b925060208401356115ad81611539565b929592945050506040919091013590565b6000602082840312156115d057600080fd5b81356113be81611539565b600080604083850312156115ee57600080fd5b82356115f981611539565b9150602083013561160981611539565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561166557816000190482111561164b5761164b611614565b8085161561165857918102915b93841c939080029061162f565b509250929050565b60008261167c57506001610404565b8161168957506000610404565b816001811461169f57600281146116a9576116c5565b6001915050610404565b60ff8411156116ba576116ba611614565b50506001821b610404565b5060208310610133831016604e8410600b84101617156116e8575081810a610404565b6116f2838361162a565b806000190482111561170657611706611614565b029392505050565b60006113be60ff84168361166d565b808202811582820484141761040457610404611614565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561177b57600080fd5b81516113be81611539565b60008060006060848603121561179b57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156117c657600080fd5b815180151581146113be57600080fd5b8082018082111561040457610404611614565b6000600182016117fb576117fb611614565b5060010190565b8181038181111561040457610404611614565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561187b5784516001600160a01b031683529383019391830191600101611856565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826118b957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202bc3135395403d62f08a089f991c90aff66c1c318dc1086d5f303352781700fc64736f6c63430008130033

Deployed Bytecode Sourcemap

4077:8101:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6007:83;;;;;;;;;;-1:-1:-1;6077:5:0;;;;;;;;;;;;-1:-1:-1;;;6077:5:0;;;;6007:83;;;;;;;:::i;:::-;;;;;;;;6840:161;;;;;;;;;;-1:-1:-1;6840:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6840:161:0;1023:187:1;5284:50:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;5284:50:0;1215:177:1;6284:95:0;;;;;;;;;;;;;:::i;7009:313::-;;;;;;;;;;-1:-1:-1;7009:313:0;;;;;:::i;:::-;;:::i;6193:83::-;;;;;;;;;;-1:-1:-1;6193:83:0;;4909:1;2000:36:1;;1988:2;1973:18;6193:83:0;1858:184:1;11006:83:0;;;;;;;;;;-1:-1:-1;11006:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;11074:7:0;11053:4;11074:7;;;:4;:7;;;;;;;;;11006:83;11813:348;;;;;;;;;;;;;:::i;:::-;;6387:119;;;;;;;;;;-1:-1:-1;6387:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6480:18:0;6453:7;6480:18;;;:9;:18;;;;;;;6387:119;3158:148;;;;;;;;;;;;;:::i;10702:196::-;;;;;;;;;;;;;:::i;5095:56::-;;;;;;;;;;;;;;;;2944:79;;;;;;;;;;-1:-1:-1;2982:7:0;3009:6;2944:79;;-1:-1:-1;;;;;3009:6:0;;;2445:51:1;;2433:2;2418:18;2944:79:0;2299:203:1;5158:56:0;;;;;;;;;;;;;;;;6098:87;;;;;;;;;;-1:-1:-1;6170:7:0;;;;;;;;;;;;-1:-1:-1;;;6170:7:0;;;;6098:87;;6514:167;;;;;;;;;;-1:-1:-1;6514:167:0;;;;;:::i;:::-;;:::i;5221:56::-;;;;;;;;;;;;;;;;4465:40;;;;;;;;;;-1:-1:-1;4465:40:0;;;;;;;;11097:671;;;;;;;;;;;;;:::i;6689:143::-;;;;;;;;;;-1:-1:-1;6689:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6797:18:0;;;6770:7;6797:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6689:143;6840:161;6915:4;6932:39;779:10;6955:7;6964:6;6932:8;:39::i;:::-;-1:-1:-1;6989:4:0;6840:161;;;;;:::o;6284:95::-;6337:7;4965:13;4909:1;4965:2;:13;:::i;:::-;4952:26;;:10;:26;:::i;:::-;6357:14;;6284:95;:::o;7009:313::-;7107:4;7124:36;7134:6;7142:9;7153:6;7124:9;:36::i;:::-;7171:121;7180:6;779:10;7202:89;7240:6;7202:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7202:19:0;;;;;;:11;:19;;;;;;;;779:10;7202:33;;;;;;;;;;:37;:89::i;:::-;7171:8;:121::i;:::-;-1:-1:-1;7310:4:0;7009:313;;;;;:::o;11813:348::-;11877:10;;;;;-1:-1:-1;;;;;11877:10:0;779;-1:-1:-1;;;;;11863:24:0;;11855:33;;;;;;11938:4;11899:20;6480:18;;;:9;:18;;;;;;11958:14;;11955:73;;11986:30;12003:12;11986:16;:30::i;:::-;12057:21;12092:12;;12089:65;;12118:24;12131:10;12118:12;:24::i;:::-;11844:317;;11813:348::o;3158:148::-;3071:6;;-1:-1:-1;;;;;3071:6:0;779:10;3071:22;3063:67;;;;-1:-1:-1;;;3063:67:0;;;;;;;:::i;:::-;;;;;;;;;3265:1:::1;3249:6:::0;;3228:40:::1;::::0;-1:-1:-1;;;;;3249:6:0;;::::1;::::0;3228:40:::1;::::0;3265:1;;3228:40:::1;3296:1;3279:19:::0;;-1:-1:-1;;;;;;3279:19:0::1;::::0;;3158:148::o;10702:196::-;3071:6;;-1:-1:-1;;;;;3071:6:0;779:10;3071:22;3063:67;;;;-1:-1:-1;;;3063:67:0;;;;;;;:::i;:::-;4965:13:::1;4909:1;4965:2;:13;:::i;:::-;4952:26;::::0;:10:::1;:26;:::i;:::-;10755:12;:22:::0;4965:13:::1;4909:1;4965:2;:13;:::i;:::-;4952:26;::::0;:10:::1;:26;:::i;:::-;10788:14;:22:::0;10821:20:::1;:26:::0;;-1:-1:-1;;10821:26:0::1;::::0;;10863:27:::1;4965:13;4909:1;-1:-1:-1::0;4965:13:0::1;:::i;:::-;4952:26;::::0;:10:::1;:26;:::i;:::-;10863:27;::::0;1361:25:1;;;1349:2;1334:18;10863:27:0::1;;;;;;;10702:196::o:0;6514:167::-;6592:4;6609:42;779:10;6633:9;6644:6;6609:9;:42::i;11097:671::-;3071:6;;-1:-1:-1;;;;;3071:6:0;779:10;3071:22;3063:67;;;;-1:-1:-1;;;3063:67:0;;;;;;;:::i;:::-;11161:11:::1;::::0;-1:-1:-1;;;11161:11:0;::::1;;;11160:12;11152:47;;;::::0;-1:-1:-1;;;11152:47:0;;5151:2:1;11152:47:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;5229:25;5209:18;;;5202:53;5272:18;;11152:47:0::1;4949:347:1::0;11152:47:0::1;11210:15;:80:::0;;-1:-1:-1;;;;;;11210:80:0::1;11247:42;11210:80:::0;;::::1;::::0;;;11301:58:::1;::::0;11318:4:::1;::::0;4965:13:::1;4909:1;4965:2;:13;:::i;:::-;4952:26;::::0;:10:::1;:26;:::i;11301:58::-;11404:15;;;;;;;;;-1:-1:-1::0;;;;;11404:15:0::1;-1:-1:-1::0;;;;;11404:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11386:55:0::1;;11450:4;11457:15;;;;;;;;;-1:-1:-1::0;;;;;11457:15:0::1;-1:-1:-1::0;;;;;11457:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11386:94;::::0;-1:-1:-1;;;;;;11386:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;11386:94:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;11386:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11370:13;:110:::0;;-1:-1:-1;;;;;11370:110:0;;::::1;-1:-1:-1::0;;;;;;11370:110:0;;::::1;;::::0;;11491:15:::1;::::0;::::1;:31;11530:21;11561:4;11567:24;11561:4:::0;-1:-1:-1;;;;;6480:18:0;6453:7;6480:18;;;:9;:18;;;;;;;6387:119;11567:24:::1;11592:1;11594::::0;11596:7:::1;2982::::0;3009:6;-1:-1:-1;;;;;3009:6:0;;2944:79;11596:7:::1;11491:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11491:129:0;;;-1:-1:-1;;;;;6225:15:1;;;11491:129:0::1;::::0;::::1;6207:34:1::0;6257:18;;;6250:34;;;;6300:18;;;6293:34;;;;6343:18;;;6336:34;6407:15;;;6386:19;;;6379:44;11604:15:0::1;6439:19:1::0;;;6432:35;6141:19;;11491:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11638:13:0::1;::::0;11669:15:::1;::::0;11631:71:::1;::::0;-1:-1:-1;;;11631:71:0;;-1:-1:-1;;;;;11669:15:0;;::::1;11631:71;::::0;::::1;6963:51:1::0;-1:-1:-1;;7030:18:1;;;7023:34;11638:13:0;::::1;::::0;-1:-1:-1;11631:29:0::1;::::0;6936:18:1;;11631:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11713:11:0::1;:18:::0;;-1:-1:-1;;;;11742:18:0;-1:-1:-1;;;11742:18:0;;;11097:671::o;7330:335::-;-1:-1:-1;;;;;7423:19:0;;7415:68;;;;-1:-1:-1;;;7415:68:0;;7552:2:1;7415:68:0;;;7534:21:1;7591:2;7571:18;;;7564:30;7630:34;7610:18;;;7603:62;-1:-1:-1;;;7681:18:1;;;7674:34;7725:19;;7415:68:0;7350:400:1;7415:68:0;-1:-1:-1;;;;;7502:21:0;;7494:68;;;;-1:-1:-1;;;7494:68:0;;7957:2:1;7494:68:0;;;7939:21:1;7996:2;7976:18;;;7969:30;8035:34;8015:18;;;8008:62;-1:-1:-1;;;8086:18:1;;;8079:32;8128:19;;7494:68:0;7755:398:1;7494:68:0;-1:-1:-1;;;;;7573:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7625:32;;1361:25:1;;;7625:32:0;;1334:18:1;7625:32:0;;;;;;;7330:335;;;:::o;7673:2350::-;-1:-1:-1;;;;;7761:18:0;;7753:68;;;;-1:-1:-1;;;7753:68:0;;8360:2:1;7753:68:0;;;8342:21:1;8399:2;8379:18;;;8372:30;8438:34;8418:18;;;8411:62;-1:-1:-1;;;8489:18:1;;;8482:35;8534:19;;7753:68:0;8158:401:1;7753:68:0;-1:-1:-1;;;;;7840:16:0;;7832:64;;;;-1:-1:-1;;;7832:64:0;;8766:2:1;7832:64:0;;;8748:21:1;8805:2;8785:18;;;8778:30;8844:34;8824:18;;;8817:62;-1:-1:-1;;;8895:18:1;;;8888:33;8938:19;;7832:64:0;8564:399:1;7832:64:0;7924:1;7915:6;:10;7907:64;;;;-1:-1:-1;;;7907:64:0;;9170:2:1;7907:64:0;;;9152:21:1;9209:2;9189:18;;;9182:30;9248:34;9228:18;;;9221:62;-1:-1:-1;;;9299:18:1;;;9292:39;9348:19;;7907:64:0;8968:405:1;7907:64:0;7982:17;3009:6;;-1:-1:-1;;;;;8016:15:0;;;3009:6;;8016:15;;;;:32;;-1:-1:-1;2982:7:0;3009:6;-1:-1:-1;;;;;8035:13:0;;;3009:6;;8035:13;;8016:32;8012:1655;;;-1:-1:-1;;;;;8074:10:0;;;;;;:4;:10;;;;;;;;8073:11;:24;;;;-1:-1:-1;;;;;;8089:8:0;;;;;;:4;:8;;;;;;;;8088:9;8073:24;8065:33;;;;;;8119:11;;-1:-1:-1;;;8119:11:0;;;;:35;;;;-1:-1:-1;8134:20:0;;;;8119:35;8115:353;;;8191:15;;-1:-1:-1;;;;;8177:30:0;;;8191:15;;8177:30;;;;:62;;-1:-1:-1;8225:13:0;;-1:-1:-1;;;;;8211:28:0;;;8225:13;;8211:28;;8177:62;8173:280;;;8297:9;8268:39;;;;:28;:39;;;;;;8310:12;-1:-1:-1;8260:102:0;;;;-1:-1:-1;;;8260:102:0;;9580:2:1;8260:102:0;;;9562:21:1;9619:2;9599:18;;;9592:30;9658:34;9638:18;;;9631:62;-1:-1:-1;;;9709:18:1;;;9702:34;9753:19;;8260:102:0;9378:400:1;8260:102:0;8410:9;8381:39;;;;:28;:39;;;;;8423:12;8381:54;;8173:280;8496:13;;-1:-1:-1;;;;;8488:21:0;;;8496:13;;8488:21;:55;;;;-1:-1:-1;8527:15:0;;-1:-1:-1;;;;;8513:30:0;;;8527:15;;8513:30;;8488:55;:83;;;;-1:-1:-1;;;;;;8549:22:0;;;;;;:18;:22;;;;;;;;8547:24;8488:83;8484:313;;;8611:12;;8601:6;:22;;8593:60;;;;-1:-1:-1;;;8593:60:0;;9985:2:1;8593:60:0;;;9967:21:1;10024:2;10004:18;;;9997:30;10063:27;10043:18;;;10036:55;10108:18;;8593:60:0;9783:349:1;8593:60:0;8706:14;;8696:6;8680:13;8690:2;-1:-1:-1;;;;;6480:18:0;6453:7;6480:18;;;:9;:18;;;;;;;6387:119;8680:13;:22;;;;:::i;:::-;:40;;8672:79;;;;-1:-1:-1;;;8672:79:0;;10469:2:1;8672:79:0;;;10451:21:1;10508:2;10488:18;;;10481:30;10547:28;10527:18;;;10520:56;10593:18;;8672:79:0;10267:350:1;8672:79:0;8770:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8484:313;8817:6;;-1:-1:-1;;;8817:6:0;;;;8813:334;;8855:76;8927:3;8855:67;8877:15;;8867:9;;:25;8866:55;;8907:14;;8866:55;;;8894:12;;8866:55;8855:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8959:13;;8843:88;;-1:-1:-1;;;;;;8953:19:0;;;8959:13;;8953:19;:43;;;;-1:-1:-1;;;;;;8976:20:0;;8991:4;8976:20;;8953:43;8950:182;;;9033:79;9108:3;9033:70;9055:16;;9045:9;;:26;9044:58;;9087:15;;9044:58;;;9073:13;;9033:6;;:10;:70::i;:79::-;9021:91;;8950:182;9214:4;9165:28;6480:18;;;:9;:18;;;;;;9240:6;;-1:-1:-1;;;9240:6:0;;;;9239:7;:32;;;;-1:-1:-1;9258:13:0;;-1:-1:-1;;;;;9250:21:0;;;9258:13;;9250:21;9239:32;:47;;;;-1:-1:-1;9275:11:0;;-1:-1:-1;;;9275:11:0;;;;9239:47;:89;;;;;9311:17;;9290:20;:38;9239:89;:121;;;;;9342:18;;9332:9;;:28;9239:121;9235:421;;;9381:67;9398:49;9402:6;9409:37;9413:20;9434:11;;9409:3;:37::i;:::-;9398:3;:49::i;:::-;9381:16;:67::i;:::-;9496:21;9539:22;;9536:105;;9586:35;9599:21;9586:12;:35::i;:::-;9362:294;9235:421;8050:1617;8012:1655;9682:11;;9679:161;;9750:4;9732:24;;;;:9;:24;;;;;;:39;;9761:9;9732:28;:39::i;:::-;9725:4;9707:24;;;;:9;:24;;;;;;;:64;;;;9789:39;;-1:-1:-1;;;;;9789:39:0;;;;;;;9818:9;1361:25:1;;1349:2;1334:18;;1215:177;9789:39:0;;;;;;;;9679:161;-1:-1:-1;;;;;9866:15:0;;;;;;:9;:15;;;;;;:27;;9886:6;9866:19;:27::i;:::-;-1:-1:-1;;;;;9850:15:0;;;;;;:9;:15;;;;;:43;9918:40;9936:21;:6;9947:9;9936:10;:21::i;:::-;-1:-1:-1;;;;;9918:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9904:13:0;;;;;;;:9;:13;;;;;:54;;;;9974:41;;;9993:21;:6;10004:9;9993:10;:21::i;:::-;9974:41;;1361:25:1;;;1349:2;1334:18;9974:41:0;;;;;;;7742:2281;7673:2350;;;:::o;1836:190::-;1922:7;1958:12;1950:6;;;;1942:29;;;;-1:-1:-1;;;1942:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1982:9:0;1994:5;1998:1;1994;:5;:::i;:::-;1982:17;1836:190;-1:-1:-1;;;;;1836:190:0:o;10139:555::-;5616:6;:13;;-1:-1:-1;;;;5616:13:0;-1:-1:-1;;;5616:13:0;;;10217:27;;10236:7:::1;10217:27;10258:11;::::0;-1:-1:-1;;;10258:11:0;::::1;;;10254:25:::0;10271:7:::1;10254:25;10313:16;::::0;;10327:1:::1;10313:16:::0;;;;;::::1;::::0;;10289:21:::1;::::0;10313:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10313:16:0::1;10289:40;;10358:4;10340;10345:1;10340:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10340:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10384:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10384:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10340:7;;10384:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10374:4;10379:1;10374:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10374:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10449:15:::1;::::0;10417:62:::1;::::0;10434:4:::1;::::0;10449:15:::1;10467:11:::0;10417:8:::1;:62::i;:::-;10490:15;::::0;:196:::1;::::0;-1:-1:-1;;;10490:196:0;;-1:-1:-1;;;;;10490:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10571:11;;10490:15:::1;::::0;10613:4;;10640::::1;::::0;10660:15:::1;::::0;10490:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10206:488;5640:1;-1:-1:-1::0;5652:6:0;:14;;-1:-1:-1;;;;5652:14:0;;;10139:555::o;10906:92::-;10963:10;;:27;;:10;;;;-1:-1:-1;;;;;10963:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;2034:246;2092:7;2116:1;2121;2116:6;2112:47;;-1:-1:-1;2146:1:0;2139:8;;2112:47;2169:9;2181:5;2185:1;2181;:5;:::i;:::-;2169:17;-1:-1:-1;2214:1:0;2205:5;2209:1;2169:17;2205:5;:::i;:::-;:10;2197:56;;;;-1:-1:-1;;;2197:56:0;;12568:2:1;2197:56:0;;;12550:21:1;12607:2;12587:18;;;12580:30;12646:34;12626:18;;;12619:62;-1:-1:-1;;;12697:18:1;;;12690:31;12738:19;;2197:56:0;12366:397:1;2197:56:0;2271:1;2034:246;-1:-1:-1;;;2034:246:0:o;2288:132::-;2346:7;2373:39;2377:1;2380;2373:39;;;;;;;;;;;;;;;;;:3;:39::i;10033:98::-;10090:7;10117:1;10115;:3;10114:9;;10122:1;10114:9;;;-1:-1:-1;10120:1:0;10033:98;-1:-1:-1;10033:98:0:o;1505:179::-;1563:7;;1595:5;1599:1;1595;:5;:::i;:::-;1583:17;;1624:1;1619;:6;;1611:46;;;;-1:-1:-1;;;1611:46:0;;12970:2:1;1611:46:0;;;12952:21:1;13009:2;12989:18;;;12982:30;13048:29;13028:18;;;13021:57;13095:18;;1611:46:0;12768:351:1;1692:136:0;1750:7;1777:43;1781:1;1784;1777:43;;;;;;;;;;;;;;;;;:3;:43::i;2428:189::-;2514:7;2549:12;2542:5;2534:28;;;;-1:-1:-1;;;2534:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2573:9:0;2585:5;2589:1;2585;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5301:251::-;5371:6;5424:2;5412:9;5403:7;5399:23;5395:32;5392:52;;;5440:1;5437;5430:12;5392:52;5472:9;5466:16;5491:31;5516:5;5491:31;:::i;6478:306::-;6566:6;6574;6582;6635:2;6623:9;6614:7;6610:23;6606:32;6603:52;;;6651:1;6648;6641:12;6603:52;6680:9;6674:16;6664:26;;6730:2;6719:9;6715:18;6709:25;6699:35;;6774:2;6763:9;6759:18;6753:25;6743:35;;6478:306;;;;;:::o;7068:277::-;7135:6;7188:2;7176:9;7167:7;7163:23;7159:32;7156:52;;;7204:1;7201;7194:12;7156:52;7236:9;7230:16;7289:5;7282:13;7275:21;7268:5;7265:32;7255:60;;7311:1;7308;7301:12;10137:125;10202:9;;;10223:10;;;10220:36;;;10236:18;;:::i;10622:135::-;10661:3;10682:17;;;10679:43;;10702:18;;:::i;:::-;-1:-1:-1;10749:1:1;10738:13;;10622:135::o;10762:128::-;10829:9;;;10850:11;;;10847:37;;;10864:18;;:::i;11027:127::-;11088:10;11083:3;11079:20;11076:1;11069:31;11119:4;11116:1;11109:15;11143:4;11140:1;11133:15;11159:980;11421:4;11469:3;11458:9;11454:19;11500:6;11489:9;11482:25;11526:2;11564:6;11559:2;11548:9;11544:18;11537:34;11607:3;11602:2;11591:9;11587:18;11580:31;11631:6;11666;11660:13;11697:6;11689;11682:22;11735:3;11724:9;11720:19;11713:26;;11774:2;11766:6;11762:15;11748:29;;11795:1;11805:195;11819:6;11816:1;11813:13;11805:195;;;11884:13;;-1:-1:-1;;;;;11880:39:1;11868:52;;11975:15;;;;11940:12;;;;11916:1;11834:9;11805:195;;;-1:-1:-1;;;;;;;12056:32:1;;;;12051:2;12036:18;;12029:60;-1:-1:-1;;;12120:3:1;12105:19;12098:35;12017:3;11159:980;-1:-1:-1;;;11159:980:1:o;12144:217::-;12184:1;12210;12200:132;;12254:10;12249:3;12245:20;12242:1;12235:31;12289:4;12286:1;12279:15;12317:4;12314:1;12307:15;12200:132;-1:-1:-1;12346:9:1;;12144:217::o

Swarm Source

ipfs://2bc3135395403d62f08a089f991c90aff66c1c318dc1086d5f303352781700fc

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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