ETH Price: $4,447.25 (-4.81%)

Contract

0xFc4b4ec763722B71eB1D729749B447A9645f5F30
 

Overview

ETH Balance

0.060065001355511517 ETH

Eth Value

$267.12 (@ $4,447.25/ETH)

Token Holdings

More Info

Private Name Tags

TokenTracker

DumbMoney (GME) ($0.0012)

Multichain Info

1 address found via
Transaction Hash
Method
Block
From
To
Approve234953162025-10-03 5:59:115 days ago1759471151IN
DumbMoney: GME Token
0 ETH0.00000950.20174731
Transfer234787192025-09-30 22:14:117 days ago1759270451IN
DumbMoney: GME Token
0 ETH0.000091951.29265065
Approve234732892025-09-30 4:01:238 days ago1759204883IN
DumbMoney: GME Token
0 ETH0.000017580.37524001
Transfer234338752025-09-24 15:45:2313 days ago1758728723IN
DumbMoney: GME Token
0 ETH0.000128361.69095694
Transfer234134412025-09-21 19:14:3516 days ago1758482075IN
DumbMoney: GME Token
0 ETH0.000022440.31552921
Approve233885832025-09-18 7:50:3519 days ago1758181835IN
DumbMoney: GME Token
0 ETH0.00004370.92746236
Approve233872422025-09-18 3:21:3520 days ago1758165695IN
DumbMoney: GME Token
0 ETH0.000009760.36212437
Manual Swap233725542025-09-16 2:08:5922 days ago1757988539IN
DumbMoney: GME Token
0 ETH0.000187671.24610265
Transfer233595082025-09-14 6:24:3523 days ago1757831075IN
DumbMoney: GME Token
0 ETH0.000016980.22372281
Approve233561592025-09-13 19:12:1124 days ago1757790731IN
DumbMoney: GME Token
0 ETH0.000006940.25754852
Transfer233459682025-09-12 9:04:4725 days ago1757667887IN
DumbMoney: GME Token
0 ETH0.000018580.31583936
Approve233328922025-09-10 13:10:2327 days ago1757509823IN
DumbMoney: GME Token
0 ETH0.000055191.1775454
Approve233261342025-09-09 14:27:3528 days ago1757428055IN
DumbMoney: GME Token
0 ETH0.000128192.72007677
Approve233156752025-09-08 3:25:1130 days ago1757301911IN
DumbMoney: GME Token
0 ETH0.000016150.648839
Transfer232895062025-09-04 11:39:2333 days ago1756985963IN
DumbMoney: GME Token
0 ETH0.000130961.84132412
Approve232841202025-09-03 17:36:5934 days ago1756921019IN
DumbMoney: GME Token
0 ETH0.000077071.63549323
Transfer232824492025-09-03 12:00:5934 days ago1756900859IN
DumbMoney: GME Token
0 ETH0.000100521.41318493
Approve232731442025-09-02 4:47:4736 days ago1756788467IN
DumbMoney: GME Token
0 ETH0.000017810.71718028
Approve232648992025-09-01 1:07:1137 days ago1756688831IN
DumbMoney: GME Token
0 ETH0.000012650.27045559
Approve232554372025-08-30 17:26:3538 days ago1756574795IN
DumbMoney: GME Token
0 ETH0.00003080.65283963
Transfer232545272025-08-30 14:23:3538 days ago1756563815IN
DumbMoney: GME Token
0 ETH0.000082471.15958448
Approve232462462025-08-29 10:40:4739 days ago1756464047IN
DumbMoney: GME Token
0 ETH0.000008980.36156587
Approve232259692025-08-26 14:45:3542 days ago1756219535IN
DumbMoney: GME Token
0 ETH0.000072331.53286626
Approve232158692025-08-25 4:56:4744 days ago1756097807IN
DumbMoney: GME Token
0 ETH0.000014850.31683197
Approve232153892025-08-25 3:20:2344 days ago1756092023IN
DumbMoney: GME Token
0 ETH0.000010680.22669052
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer233725542025-09-16 2:08:5922 days ago1757988539
DumbMoney: GME Token
0.00238931 ETH
Transfer230053222025-07-26 19:11:2373 days ago1753557083
DumbMoney: GME Token
0.00005198 ETH
Transfer230052742025-07-26 19:01:4773 days ago1753556507
DumbMoney: GME Token
0.00520412 ETH
Transfer226983992025-06-13 21:44:11116 days ago1749851051
DumbMoney: GME Token
0.00976036 ETH
Transfer226978192025-06-13 19:46:59116 days ago1749844019
DumbMoney: GME Token
0.00658492 ETH
Transfer226978162025-06-13 19:46:23116 days ago1749843983
DumbMoney: GME Token
0.00330301 ETH
Transfer226978112025-06-13 19:45:23116 days ago1749843923
DumbMoney: GME Token
0.00331149 ETH
Transfer226011452025-05-31 7:13:11129 days ago1748675591
DumbMoney: GME Token
0.01814799 ETH
Transfer225950712025-05-30 10:51:47130 days ago1748602307
DumbMoney: GME Token
0.01835806 ETH
Transfer225852322025-05-29 1:48:23132 days ago1748483303
DumbMoney: GME Token
0.01835806 ETH
Transfer225849792025-05-29 0:57:35132 days ago1748480255
DumbMoney: GME Token
0.00524501 ETH
Transfer225848562025-05-29 0:32:47132 days ago1748478767
DumbMoney: GME Token
0.00531178 ETH
Transfer225848412025-05-29 0:29:47132 days ago1748478587
DumbMoney: GME Token
0.00526532 ETH
Transfer225848402025-05-29 0:29:35132 days ago1748478575
DumbMoney: GME Token
0.00525871 ETH
Transfer225756702025-05-27 17:39:59133 days ago1748367599
DumbMoney: GME Token
0.01017996 ETH
Transfer225672042025-05-26 13:16:35134 days ago1748265395
DumbMoney: GME Token
0.01017996 ETH
Transfer225672012025-05-26 13:15:59134 days ago1748265359
DumbMoney: GME Token
0.01017996 ETH
Transfer222054522025-04-05 21:39:23185 days ago1743889163
DumbMoney: GME Token
0.05775058 ETH
Transfer222054522025-04-05 21:39:23185 days ago1743889163
DumbMoney: GME Token
0.01130139 ETH
Transfer219017952025-02-22 12:13:35227 days ago1740226415
DumbMoney: GME Token
0.01079946 ETH
Transfer214989642024-12-28 5:46:47284 days ago1735364807
DumbMoney: GME Token
0.01820698 ETH
Transfer212476542024-11-23 3:09:11319 days ago1732331351
DumbMoney: GME Token
0.0098397 ETH
Transfer211058722024-11-03 8:19:11338 days ago1730621951
DumbMoney: GME Token
0.00760303 ETH
Transfer210383672024-10-24 22:12:11348 days ago1729807931
DumbMoney: GME Token
0.05458175 ETH
Transfer210383672024-10-24 22:12:11348 days ago1729807931
DumbMoney: GME Token
0.02769174 ETH
View All Internal Transactions
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

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

Contract Source Code Verified (Exact Match)

Contract Name:
DumbMoney

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2023-09-28
*/

/**
DumbMoney | $GME

Web: https://www.dumbmoneytoken.vip/

TG: https://t.me/DumbMoneyERC

X: https://twitter.com/DumbMoneyERC

**/

pragma solidity 0.8.21;
// SPDX-License-Identifier: MIT
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 DumbMoney 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 => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = true;
    address payable private _taxWallet;

    uint256 private _initialBuyTax=19;
    uint256 private _initialSellTax=25;
    uint256 private _finalBuyTax=1;
    uint256 private _finalSellTax=1;
    uint256 private _reduceBuyTaxAt=35;
    uint256 private _reduceSellTaxAt=25;
    uint256 private _preventSwapBefore=10;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;
    string private constant _name = unicode"DumbMoney";
    string private constant _symbol = unicode"GME";
    uint256 public _maxTxAmount = 1000000 * 10**_decimals;
    uint256 public _maxWalletSize = 2000000 * 10**_decimals;
    uint256 public _taxSwapThreshold= 100000 * 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()) {
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (transferDelayEnabled) {
                  if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                      require(
                          _holderLastTransferTimestamp[tx.origin] <
                              block.number,
                          "_transfer:: Transfer Delay enabled.  Only one purchase 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(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 > 50000000000000000) {
                    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 {
        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 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>3000000000000000000){
          sendETHToFee(ethBalance);
        }
    }
}

Contract Security Audit

Contract ABI

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

6080604052600160055f6101000a81548160ff02191690831515021790555060136006556019600755600160085560016009556023600a556019600b55600a600c555f600d556009600a6200005591906200060c565b620f42406200006591906200065c565b600e556009600a6200007891906200060c565b621e84806200008891906200065c565b600f556009600a6200009b91906200060c565b620186a0620000ab91906200065c565b6010556009600a620000be91906200060c565b620f4240620000ce91906200065c565b6011555f601360156101000a81548160ff0219169083151502179055505f601360166101000a81548160ff02191690831515021790555034801562000111575f80fd5b505f620001236200044c60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001cf6200044c60201b60201c565b600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a6200021f91906200060c565b6305f5e1006200023091906200065c565b60015f620002436200044c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002956200045360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003c06200044c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6200041e91906200060c565b6305f5e1006200042f91906200065c565b6040516200043e9190620006b7565b60405180910390a3620006d2565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156200050457808604811115620004dc57620004db6200047a565b5b6001851615620004ec5780820291505b8081029050620004fc85620004a7565b9450620004bc565b94509492505050565b5f826200051e5760019050620005f0565b816200052d575f9050620005f0565b8160018114620005465760028114620005515762000587565b6001915050620005f0565b60ff8411156200056657620005656200047a565b5b8360020a91508482111562000580576200057f6200047a565b5b50620005f0565b5060208310610133831016604e8410600b8410161715620005c15782820a905083811115620005bb57620005ba6200047a565b5b620005f0565b620005d08484846001620004b3565b92509050818404811115620005ea57620005e96200047a565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6200061882620005f7565b9150620006258362000600565b9250620006547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200050d565b905092915050565b5f6200066882620005f7565b91506200067583620005f7565b92508282026200068581620005f7565b915082820484148315176200069f576200069e6200047a565b5b5092915050565b620006b181620005f7565b82525050565b5f602082019050620006cc5f830184620006a6565b92915050565b612f6180620006e05f395ff3fe608060405260043610610117575f3560e01c80637d1db4a51161009f578063a9059cbb11610063578063a9059cbb14610368578063bf474bed146103a4578063c876d0b9146103ce578063c9567bf9146103f8578063dd62ed3e1461040e5761011e565b80637d1db4a5146102aa5780638da5cb5b146102d45780638f9a55c0146102fe57806395d89b4114610328578063a1780c18146103525761011e565b806323b872dd116100e657806323b872dd146101dc578063313ce5671461021857806370a0823114610242578063715018a61461027e578063751039fc146102945761011e565b806306fdde0314610122578063095ea7b31461014c5780630faee56f1461018857806318160ddd146101b25761011e565b3661011e57005b5f80fd5b34801561012d575f80fd5b5061013661044a565b6040516101439190612053565b60405180910390f35b348015610157575f80fd5b50610172600480360381019061016d9190612104565b610487565b60405161017f919061215c565b60405180910390f35b348015610193575f80fd5b5061019c6104a4565b6040516101a99190612184565b60405180910390f35b3480156101bd575f80fd5b506101c66104aa565b6040516101d39190612184565b60405180910390f35b3480156101e7575f80fd5b5061020260048036038101906101fd919061219d565b6104cd565b60405161020f919061215c565b60405180910390f35b348015610223575f80fd5b5061022c6105a1565b6040516102399190612208565b60405180910390f35b34801561024d575f80fd5b5061026860048036038101906102639190612221565b6105a9565b6040516102759190612184565b60405180910390f35b348015610289575f80fd5b506102926105ef565b005b34801561029f575f80fd5b506102a861073d565b005b3480156102b5575f80fd5b506102be610885565b6040516102cb9190612184565b60405180910390f35b3480156102df575f80fd5b506102e861088b565b6040516102f5919061225b565b60405180910390f35b348015610309575f80fd5b506103126108b2565b60405161031f9190612184565b60405180910390f35b348015610333575f80fd5b5061033c6108b8565b6040516103499190612053565b60405180910390f35b34801561035d575f80fd5b506103666108f5565b005b348015610373575f80fd5b5061038e60048036038101906103899190612104565b610995565b60405161039b919061215c565b60405180910390f35b3480156103af575f80fd5b506103b86109b2565b6040516103c59190612184565b60405180910390f35b3480156103d9575f80fd5b506103e26109b8565b6040516103ef919061215c565b60405180910390f35b348015610403575f80fd5b5061040c6109ca565b005b348015610419575f80fd5b50610434600480360381019061042f9190612274565b610eec565b6040516104419190612184565b60405180910390f35b60606040518060400160405280600981526020017f44756d624d6f6e65790000000000000000000000000000000000000000000000815250905090565b5f61049a610493610f6e565b8484610f75565b6001905092915050565b60115481565b5f6009600a6104b9919061240e565b6305f5e1006104c89190612458565b905090565b5f6104d9848484611138565b610596846104e5610f6e565b61059185604051806060016040528060288152602001612f046028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610548610f6e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab49092919063ffffffff16565b610f75565b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105f7610f6e565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610683576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067a906124e3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610745610f6e565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c8906124e3565b60405180910390fd5b6009600a6107df919061240e565b6305f5e1006107ee9190612458565b600e819055506009600a610802919061240e565b6305f5e1006108119190612458565b600f819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61085f919061240e565b6305f5e10061086e9190612458565b60405161087b9190612184565b60405180910390a1565b600e5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f474d450000000000000000000000000000000000000000000000000000000000815250905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610936610f6e565b73ffffffffffffffffffffffffffffffffffffffff1614610955575f80fd5b5f61095f306105a9565b90505f8111156109735761097281611b16565b5b5f4790506729a2241af62c00008111156109915761099081611d81565b5b5050565b5f6109a86109a1610f6e565b8484611138565b6001905092915050565b60105481565b60055f9054906101000a900460ff1681565b6109d2610f6e565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a55906124e3565b60405180910390fd5b601360149054906101000a900460ff1615610aae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa59061254b565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b4a3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610b36919061240e565b6305f5e100610b459190612458565b610f75565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd8919061257d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c5e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c82919061257d565b6040518363ffffffff1660e01b8152600401610c9f9291906125a8565b6020604051808303815f875af1158015610cbb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cdf919061257d565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d66306105a9565b5f80610d7061088b565b426040518863ffffffff1660e01b8152600401610d9296959493929190612611565b60606040518083038185885af1158015610dae573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610dd39190612684565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610e739291906126d4565b6020604051808303815f875af1158015610e8f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eb39190612725565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fe3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fda906127c0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611051576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110489061284e565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161112b9190612184565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119d906128dc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120b9061296a565b60405180910390fd5b5f8111611256576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124d906129f8565b60405180910390fd5b5f61125f61088b565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156112cd575061129d61088b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118045761130e6064611300600a54600d54116112ed576006546112f1565b6008545b85611dea90919063ffffffff16565b611e6190919063ffffffff16565b905060055f9054906101000a900460ff16156114965760125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113ce575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611495574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410611452576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144990612aac565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561153f575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611592575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561164c57600e548211156115dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d390612b14565b60405180910390fd5b600f54826115e9856105a9565b6115f39190612b32565b1115611634576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162b90612baf565b60405180910390fd5b600d5f81548092919061164690612bcd565b91905055505b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156116d457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611718576117156064611707600b54600d54116116f4576007546116f8565b6009545b85611dea90919063ffffffff16565b611e6190919063ffffffff16565b90505b5f611722306105a9565b9050601360159054906101000a900460ff1615801561178d575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156117a55750601360169054906101000a900460ff165b80156117b2575060105481115b80156117c15750600c54600d54115b15611802576117e36117de846117d984601154611eaa565b611eaa565b611b16565b5f47905066b1a2bc2ec50000811115611800576117ff47611d81565b5b505b505b5f8111156119035761185c8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ec290919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118fa9190612184565b60405180910390a35b6119538260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f1f90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506119f66119aa8284611f1f90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ec290919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611a998486611f1f90919063ffffffff16565b604051611aa69190612184565b60405180910390a350505050565b5f838311158290611afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af29190612053565b60405180910390fd5b505f8385611b099190612c14565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611b4d57611b4c612c47565b5b604051908082528060200260200182016040528015611b7b5781602001602082028036833780820191505090505b50905030815f81518110611b9257611b91612c74565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c36573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c5a919061257d565b81600181518110611c6e57611c6d612c74565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cd43060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f75565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611d36959493929190612d58565b5f604051808303815f87803b158015611d4d575f80fd5b505af1158015611d5f573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611de6573d5f803e3d5ffd5b5050565b5f808303611dfa575f9050611e5b565b5f8284611e079190612458565b9050828482611e169190612ddd565b14611e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4d90612e7d565b60405180910390fd5b809150505b92915050565b5f611ea283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f68565b905092915050565b5f818311611eb85782611eba565b815b905092915050565b5f808284611ed09190612b32565b905083811015611f15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0c90612ee5565b60405180910390fd5b8091505092915050565b5f611f6083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ab4565b905092915050565b5f8083118290611fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa59190612053565b60405180910390fd5b505f8385611fbc9190612ddd565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015612000578082015181840152602081019050611fe5565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61202582611fc9565b61202f8185611fd3565b935061203f818560208601611fe3565b6120488161200b565b840191505092915050565b5f6020820190508181035f83015261206b818461201b565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6120a082612077565b9050919050565b6120b081612096565b81146120ba575f80fd5b50565b5f813590506120cb816120a7565b92915050565b5f819050919050565b6120e3816120d1565b81146120ed575f80fd5b50565b5f813590506120fe816120da565b92915050565b5f806040838503121561211a57612119612073565b5b5f612127858286016120bd565b9250506020612138858286016120f0565b9150509250929050565b5f8115159050919050565b61215681612142565b82525050565b5f60208201905061216f5f83018461214d565b92915050565b61217e816120d1565b82525050565b5f6020820190506121975f830184612175565b92915050565b5f805f606084860312156121b4576121b3612073565b5b5f6121c1868287016120bd565b93505060206121d2868287016120bd565b92505060406121e3868287016120f0565b9150509250925092565b5f60ff82169050919050565b612202816121ed565b82525050565b5f60208201905061221b5f8301846121f9565b92915050565b5f6020828403121561223657612235612073565b5b5f612243848285016120bd565b91505092915050565b61225581612096565b82525050565b5f60208201905061226e5f83018461224c565b92915050565b5f806040838503121561228a57612289612073565b5b5f612297858286016120bd565b92505060206122a8858286016120bd565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612334578086048111156123105761230f6122b2565b5b600185161561231f5780820291505b808102905061232d856122df565b94506122f4565b94509492505050565b5f8261234c5760019050612407565b81612359575f9050612407565b816001811461236f5760028114612379576123a8565b6001915050612407565b60ff84111561238b5761238a6122b2565b5b8360020a9150848211156123a2576123a16122b2565b5b50612407565b5060208310610133831016604e8410600b84101617156123dd5782820a9050838111156123d8576123d76122b2565b5b612407565b6123ea84848460016122eb565b92509050818404811115612401576124006122b2565b5b81810290505b9392505050565b5f612418826120d1565b9150612423836121ed565b92506124507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461233d565b905092915050565b5f612462826120d1565b915061246d836120d1565b925082820261247b816120d1565b91508282048414831517612492576124916122b2565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6124cd602083611fd3565b91506124d882612499565b602082019050919050565b5f6020820190508181035f8301526124fa816124c1565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612535601783611fd3565b915061254082612501565b602082019050919050565b5f6020820190508181035f83015261256281612529565b9050919050565b5f81519050612577816120a7565b92915050565b5f6020828403121561259257612591612073565b5b5f61259f84828501612569565b91505092915050565b5f6040820190506125bb5f83018561224c565b6125c8602083018461224c565b9392505050565b5f819050919050565b5f819050919050565b5f6125fb6125f66125f1846125cf565b6125d8565b6120d1565b9050919050565b61260b816125e1565b82525050565b5f60c0820190506126245f83018961224c565b6126316020830188612175565b61263e6040830187612602565b61264b6060830186612602565b612658608083018561224c565b61266560a0830184612175565b979650505050505050565b5f8151905061267e816120da565b92915050565b5f805f6060848603121561269b5761269a612073565b5b5f6126a886828701612670565b93505060206126b986828701612670565b92505060406126ca86828701612670565b9150509250925092565b5f6040820190506126e75f83018561224c565b6126f46020830184612175565b9392505050565b61270481612142565b811461270e575f80fd5b50565b5f8151905061271f816126fb565b92915050565b5f6020828403121561273a57612739612073565b5b5f61274784828501612711565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6127aa602483611fd3565b91506127b582612750565b604082019050919050565b5f6020820190508181035f8301526127d78161279e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612838602283611fd3565b9150612843826127de565b604082019050919050565b5f6020820190508181035f8301526128658161282c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6128c6602583611fd3565b91506128d18261286c565b604082019050919050565b5f6020820190508181035f8301526128f3816128ba565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612954602383611fd3565b915061295f826128fa565b604082019050919050565b5f6020820190508181035f83015261298181612948565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6129e2602983611fd3565b91506129ed82612988565b604082019050919050565b5f6020820190508181035f830152612a0f816129d6565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612a96604983611fd3565b9150612aa182612a16565b606082019050919050565b5f6020820190508181035f830152612ac381612a8a565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612afe601983611fd3565b9150612b0982612aca565b602082019050919050565b5f6020820190508181035f830152612b2b81612af2565b9050919050565b5f612b3c826120d1565b9150612b47836120d1565b9250828201905080821115612b5f57612b5e6122b2565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612b99601a83611fd3565b9150612ba482612b65565b602082019050919050565b5f6020820190508181035f830152612bc681612b8d565b9050919050565b5f612bd7826120d1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c0957612c086122b2565b5b600182019050919050565b5f612c1e826120d1565b9150612c29836120d1565b9250828203905081811115612c4157612c406122b2565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612cd381612096565b82525050565b5f612ce48383612cca565b60208301905092915050565b5f602082019050919050565b5f612d0682612ca1565b612d108185612cab565b9350612d1b83612cbb565b805f5b83811015612d4b578151612d328882612cd9565b9750612d3d83612cf0565b925050600181019050612d1e565b5085935050505092915050565b5f60a082019050612d6b5f830188612175565b612d786020830187612602565b8181036040830152612d8a8186612cfc565b9050612d99606083018561224c565b612da66080830184612175565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612de7826120d1565b9150612df2836120d1565b925082612e0257612e01612db0565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612e67602183611fd3565b9150612e7282612e0d565b604082019050919050565b5f6020820190508181035f830152612e9481612e5b565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612ecf601b83611fd3565b9150612eda82612e9b565b602082019050919050565b5f6020820190508181035f830152612efc81612ec3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122085bbcf27e3f6ee45578e270cdd527c29ccf786a9c778e41cb8ed8f052184a55f64736f6c63430008150033

Deployed Bytecode

0x608060405260043610610117575f3560e01c80637d1db4a51161009f578063a9059cbb11610063578063a9059cbb14610368578063bf474bed146103a4578063c876d0b9146103ce578063c9567bf9146103f8578063dd62ed3e1461040e5761011e565b80637d1db4a5146102aa5780638da5cb5b146102d45780638f9a55c0146102fe57806395d89b4114610328578063a1780c18146103525761011e565b806323b872dd116100e657806323b872dd146101dc578063313ce5671461021857806370a0823114610242578063715018a61461027e578063751039fc146102945761011e565b806306fdde0314610122578063095ea7b31461014c5780630faee56f1461018857806318160ddd146101b25761011e565b3661011e57005b5f80fd5b34801561012d575f80fd5b5061013661044a565b6040516101439190612053565b60405180910390f35b348015610157575f80fd5b50610172600480360381019061016d9190612104565b610487565b60405161017f919061215c565b60405180910390f35b348015610193575f80fd5b5061019c6104a4565b6040516101a99190612184565b60405180910390f35b3480156101bd575f80fd5b506101c66104aa565b6040516101d39190612184565b60405180910390f35b3480156101e7575f80fd5b5061020260048036038101906101fd919061219d565b6104cd565b60405161020f919061215c565b60405180910390f35b348015610223575f80fd5b5061022c6105a1565b6040516102399190612208565b60405180910390f35b34801561024d575f80fd5b5061026860048036038101906102639190612221565b6105a9565b6040516102759190612184565b60405180910390f35b348015610289575f80fd5b506102926105ef565b005b34801561029f575f80fd5b506102a861073d565b005b3480156102b5575f80fd5b506102be610885565b6040516102cb9190612184565b60405180910390f35b3480156102df575f80fd5b506102e861088b565b6040516102f5919061225b565b60405180910390f35b348015610309575f80fd5b506103126108b2565b60405161031f9190612184565b60405180910390f35b348015610333575f80fd5b5061033c6108b8565b6040516103499190612053565b60405180910390f35b34801561035d575f80fd5b506103666108f5565b005b348015610373575f80fd5b5061038e60048036038101906103899190612104565b610995565b60405161039b919061215c565b60405180910390f35b3480156103af575f80fd5b506103b86109b2565b6040516103c59190612184565b60405180910390f35b3480156103d9575f80fd5b506103e26109b8565b6040516103ef919061215c565b60405180910390f35b348015610403575f80fd5b5061040c6109ca565b005b348015610419575f80fd5b50610434600480360381019061042f9190612274565b610eec565b6040516104419190612184565b60405180910390f35b60606040518060400160405280600981526020017f44756d624d6f6e65790000000000000000000000000000000000000000000000815250905090565b5f61049a610493610f6e565b8484610f75565b6001905092915050565b60115481565b5f6009600a6104b9919061240e565b6305f5e1006104c89190612458565b905090565b5f6104d9848484611138565b610596846104e5610f6e565b61059185604051806060016040528060288152602001612f046028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f610548610f6e565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ab49092919063ffffffff16565b610f75565b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105f7610f6e565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610683576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067a906124e3565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610745610f6e565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107c8906124e3565b60405180910390fd5b6009600a6107df919061240e565b6305f5e1006107ee9190612458565b600e819055506009600a610802919061240e565b6305f5e1006108119190612458565b600f819055505f60055f6101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a61085f919061240e565b6305f5e10061086e9190612458565b60405161087b9190612184565b60405180910390a1565b600e5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f5481565b60606040518060400160405280600381526020017f474d450000000000000000000000000000000000000000000000000000000000815250905090565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610936610f6e565b73ffffffffffffffffffffffffffffffffffffffff1614610955575f80fd5b5f61095f306105a9565b90505f8111156109735761097281611b16565b5b5f4790506729a2241af62c00008111156109915761099081611d81565b5b5050565b5f6109a86109a1610f6e565b8484611138565b6001905092915050565b60105481565b60055f9054906101000a900460ff1681565b6109d2610f6e565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a55906124e3565b60405180910390fd5b601360149054906101000a900460ff1615610aae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa59061254b565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b4a3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610b36919061240e565b6305f5e100610b459190612458565b610f75565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd8919061257d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c5e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c82919061257d565b6040518363ffffffff1660e01b8152600401610c9f9291906125a8565b6020604051808303815f875af1158015610cbb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cdf919061257d565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610d66306105a9565b5f80610d7061088b565b426040518863ffffffff1660e01b8152600401610d9296959493929190612611565b60606040518083038185885af1158015610dae573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610dd39190612684565b50505060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610e739291906126d4565b6020604051808303815f875af1158015610e8f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eb39190612725565b506001601360166101000a81548160ff0219169083151502179055506001601360146101000a81548160ff021916908315150217905550565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fe3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fda906127c0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611051576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110489061284e565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161112b9190612184565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036111a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161119d906128dc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120b9061296a565b60405180910390fd5b5f8111611256576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161124d906129f8565b60405180910390fd5b5f61125f61088b565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156112cd575061129d61088b565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156118045761130e6064611300600a54600d54116112ed576006546112f1565b6008545b85611dea90919063ffffffff16565b611e6190919063ffffffff16565b905060055f9054906101000a900460ff16156114965760125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113ce575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611495574360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410611452576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161144990612aac565b60405180910390fd5b4360045f3273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b5b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561153f575060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611592575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561164c57600e548211156115dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d390612b14565b60405180910390fd5b600f54826115e9856105a9565b6115f39190612b32565b1115611634576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162b90612baf565b60405180910390fd5b600d5f81548092919061164690612bcd565b91905055505b60135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156116d457503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611718576117156064611707600b54600d54116116f4576007546116f8565b6009545b85611dea90919063ffffffff16565b611e6190919063ffffffff16565b90505b5f611722306105a9565b9050601360159054906101000a900460ff1615801561178d575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b80156117a55750601360169054906101000a900460ff165b80156117b2575060105481115b80156117c15750600c54600d54115b15611802576117e36117de846117d984601154611eaa565b611eaa565b611b16565b5f47905066b1a2bc2ec50000811115611800576117ff47611d81565b5b505b505b5f8111156119035761185c8160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ec290919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118fa9190612184565b60405180910390a35b6119538260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611f1f90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506119f66119aa8284611f1f90919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611ec290919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611a998486611f1f90919063ffffffff16565b604051611aa69190612184565b60405180910390a350505050565b5f838311158290611afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611af29190612053565b60405180910390fd5b505f8385611b099190612c14565b9050809150509392505050565b6001601360156101000a81548160ff0219169083151502179055505f600267ffffffffffffffff811115611b4d57611b4c612c47565b5b604051908082528060200260200182016040528015611b7b5781602001602082028036833780820191505090505b50905030815f81518110611b9257611b91612c74565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c36573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c5a919061257d565b81600181518110611c6e57611c6d612c74565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611cd43060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610f75565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b8152600401611d36959493929190612d58565b5f604051808303815f87803b158015611d4d575f80fd5b505af1158015611d5f573d5f803e3d5ffd5b50505050505f601360156101000a81548160ff02191690831515021790555050565b600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015611de6573d5f803e3d5ffd5b5050565b5f808303611dfa575f9050611e5b565b5f8284611e079190612458565b9050828482611e169190612ddd565b14611e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4d90612e7d565b60405180910390fd5b809150505b92915050565b5f611ea283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f68565b905092915050565b5f818311611eb85782611eba565b815b905092915050565b5f808284611ed09190612b32565b905083811015611f15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f0c90612ee5565b60405180910390fd5b8091505092915050565b5f611f6083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611ab4565b905092915050565b5f8083118290611fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fa59190612053565b60405180910390fd5b505f8385611fbc9190612ddd565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015612000578082015181840152602081019050611fe5565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61202582611fc9565b61202f8185611fd3565b935061203f818560208601611fe3565b6120488161200b565b840191505092915050565b5f6020820190508181035f83015261206b818461201b565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6120a082612077565b9050919050565b6120b081612096565b81146120ba575f80fd5b50565b5f813590506120cb816120a7565b92915050565b5f819050919050565b6120e3816120d1565b81146120ed575f80fd5b50565b5f813590506120fe816120da565b92915050565b5f806040838503121561211a57612119612073565b5b5f612127858286016120bd565b9250506020612138858286016120f0565b9150509250929050565b5f8115159050919050565b61215681612142565b82525050565b5f60208201905061216f5f83018461214d565b92915050565b61217e816120d1565b82525050565b5f6020820190506121975f830184612175565b92915050565b5f805f606084860312156121b4576121b3612073565b5b5f6121c1868287016120bd565b93505060206121d2868287016120bd565b92505060406121e3868287016120f0565b9150509250925092565b5f60ff82169050919050565b612202816121ed565b82525050565b5f60208201905061221b5f8301846121f9565b92915050565b5f6020828403121561223657612235612073565b5b5f612243848285016120bd565b91505092915050565b61225581612096565b82525050565b5f60208201905061226e5f83018461224c565b92915050565b5f806040838503121561228a57612289612073565b5b5f612297858286016120bd565b92505060206122a8858286016120bd565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115612334578086048111156123105761230f6122b2565b5b600185161561231f5780820291505b808102905061232d856122df565b94506122f4565b94509492505050565b5f8261234c5760019050612407565b81612359575f9050612407565b816001811461236f5760028114612379576123a8565b6001915050612407565b60ff84111561238b5761238a6122b2565b5b8360020a9150848211156123a2576123a16122b2565b5b50612407565b5060208310610133831016604e8410600b84101617156123dd5782820a9050838111156123d8576123d76122b2565b5b612407565b6123ea84848460016122eb565b92509050818404811115612401576124006122b2565b5b81810290505b9392505050565b5f612418826120d1565b9150612423836121ed565b92506124507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461233d565b905092915050565b5f612462826120d1565b915061246d836120d1565b925082820261247b816120d1565b91508282048414831517612492576124916122b2565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6124cd602083611fd3565b91506124d882612499565b602082019050919050565b5f6020820190508181035f8301526124fa816124c1565b9050919050565b7f74726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f612535601783611fd3565b915061254082612501565b602082019050919050565b5f6020820190508181035f83015261256281612529565b9050919050565b5f81519050612577816120a7565b92915050565b5f6020828403121561259257612591612073565b5b5f61259f84828501612569565b91505092915050565b5f6040820190506125bb5f83018561224c565b6125c8602083018461224c565b9392505050565b5f819050919050565b5f819050919050565b5f6125fb6125f66125f1846125cf565b6125d8565b6120d1565b9050919050565b61260b816125e1565b82525050565b5f60c0820190506126245f83018961224c565b6126316020830188612175565b61263e6040830187612602565b61264b6060830186612602565b612658608083018561224c565b61266560a0830184612175565b979650505050505050565b5f8151905061267e816120da565b92915050565b5f805f6060848603121561269b5761269a612073565b5b5f6126a886828701612670565b93505060206126b986828701612670565b92505060406126ca86828701612670565b9150509250925092565b5f6040820190506126e75f83018561224c565b6126f46020830184612175565b9392505050565b61270481612142565b811461270e575f80fd5b50565b5f8151905061271f816126fb565b92915050565b5f6020828403121561273a57612739612073565b5b5f61274784828501612711565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6127aa602483611fd3565b91506127b582612750565b604082019050919050565b5f6020820190508181035f8301526127d78161279e565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612838602283611fd3565b9150612843826127de565b604082019050919050565b5f6020820190508181035f8301526128658161282c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6128c6602583611fd3565b91506128d18261286c565b604082019050919050565b5f6020820190508181035f8301526128f3816128ba565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612954602383611fd3565b915061295f826128fa565b604082019050919050565b5f6020820190508181035f83015261298181612948565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f6129e2602983611fd3565b91506129ed82612988565b604082019050919050565b5f6020820190508181035f830152612a0f816129d6565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c5f8201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b5f612a96604983611fd3565b9150612aa182612a16565b606082019050919050565b5f6020820190508181035f830152612ac381612a8a565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612afe601983611fd3565b9150612b0982612aca565b602082019050919050565b5f6020820190508181035f830152612b2b81612af2565b9050919050565b5f612b3c826120d1565b9150612b47836120d1565b9250828201905080821115612b5f57612b5e6122b2565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f612b99601a83611fd3565b9150612ba482612b65565b602082019050919050565b5f6020820190508181035f830152612bc681612b8d565b9050919050565b5f612bd7826120d1565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c0957612c086122b2565b5b600182019050919050565b5f612c1e826120d1565b9150612c29836120d1565b9250828203905081811115612c4157612c406122b2565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b612cd381612096565b82525050565b5f612ce48383612cca565b60208301905092915050565b5f602082019050919050565b5f612d0682612ca1565b612d108185612cab565b9350612d1b83612cbb565b805f5b83811015612d4b578151612d328882612cd9565b9750612d3d83612cf0565b925050600181019050612d1e565b5085935050505092915050565b5f60a082019050612d6b5f830188612175565b612d786020830187612602565b8181036040830152612d8a8186612cfc565b9050612d99606083018561224c565b612da66080830184612175565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f612de7826120d1565b9150612df2836120d1565b925082612e0257612e01612db0565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f612e67602183611fd3565b9150612e7282612e0d565b604082019050919050565b5f6020820190508181035f830152612e9481612e5b565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612ecf601b83611fd3565b9150612eda82612e9b565b602082019050919050565b5f6020820190508181035f830152612efc81612ec3565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122085bbcf27e3f6ee45578e270cdd527c29ccf786a9c778e41cb8ed8f052184a55f64736f6c63430008150033

Deployed Bytecode Sourcemap

3613:7961:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5496:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6329:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4772:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5773:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6498:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5682:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5876:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2694:148;;;;;;;;;;;;;:::i;:::-;;10183:196;;;;;;;;;;;;;:::i;:::-;;4587:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2480:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4647:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5587:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11205:366;;;;;;;;;;;;;:::i;:::-;;6003:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4709:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3959:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10489:671;;;;;;;;;;;;;:::i;:::-;;6178:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5496:83;5533:13;5566:5;;;;;;;;;;;;;;;;;5559:12;;5496:83;:::o;6329:161::-;6404:4;6421:39;6430:12;:10;:12::i;:::-;6444:7;6453:6;6421:8;:39::i;:::-;6478:4;6471:11;;6329:161;;;;:::o;4772:51::-;;;;:::o;5773:95::-;5826:7;4402:1;4457:2;:13;;;;:::i;:::-;4445:9;:25;;;;:::i;:::-;5846:14;;5773:95;:::o;6498:313::-;6596:4;6613:36;6623:6;6631:9;6642:6;6613:9;:36::i;:::-;6660:121;6669:6;6677:12;:10;:12::i;:::-;6691:89;6729:6;6691:89;;;;;;;;;;;;;;;;;:11;:19;6703:6;6691:19;;;;;;;;;;;;;;;:33;6711:12;:10;:12::i;:::-;6691:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6660:8;:121::i;:::-;6799:4;6792:11;;6498:313;;;;;:::o;5682:83::-;5723:5;4402:1;5741:16;;5682:83;:::o;5876:119::-;5942:7;5969:9;:18;5979:7;5969:18;;;;;;;;;;;;;;;;5962:25;;5876:119;;;:::o;2694:148::-;2617:12;:10;:12::i;:::-;2607:22;;:6;;;;;;;;;;:22;;;2599:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2801:1:::1;2764:40;;2785:6;::::0;::::1;;;;;;;;2764:40;;;;;;;;;;;;2832:1;2815:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2694:148::o:0;10183:196::-;2617:12;:10;:12::i;:::-;2607:22;;:6;;;;;;;;;;:22;;;2599:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4402:1:::1;4457:2;:13;;;;:::i;:::-;4445:9;:25;;;;:::i;:::-;10236:12;:22;;;;4402:1;4457:2;:13;;;;:::i;:::-;4445:9;:25;;;;:::i;:::-;10269:14;:22;;;;10323:5;10302:20;;:26;;;;;;;;;;;;;;;;;;10344:27;4402:1;4457:2;:13;;;;:::i;:::-;4445:9;:25;;;;:::i;:::-;10344:27;;;;;;:::i;:::-;;;;;;;;10183:196::o:0;4587:53::-;;;;:::o;2480:79::-;2518:7;2545:6;;;;;;;;;;;2538:13;;2480:79;:::o;4647:55::-;;;;:::o;5587:87::-;5626:13;5659:7;;;;;;;;;;;;;;;;;5652:14;;5587:87;:::o;11205:366::-;11269:10;;;;;;;;;;;11255:24;;:12;:10;:12::i;:::-;:24;;;11247:33;;;;;;11291:20;11312:24;11330:4;11312:9;:24::i;:::-;11291:45;;11363:1;11350:12;:14;11347:73;;;11378:30;11395:12;11378:16;:30::i;:::-;11347:73;11430:18;11449:21;11430:40;;11495:19;11484:10;:30;11481:83;;;11528:24;11541:10;11528:12;:24::i;:::-;11481:83;11236:335;;11205:366::o;6003:167::-;6081:4;6098:42;6108:12;:10;:12::i;:::-;6122:9;6133:6;6098:9;:42::i;:::-;6158:4;6151:11;;6003:167;;;;:::o;4709:56::-;;;;:::o;3959:39::-;;;;;;;;;;;;;:::o;10489:671::-;2617:12;:10;:12::i;:::-;2607:22;;:6;;;;;;;;;;:22;;;2599:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10553:11:::1;;;;;;;;;;;10552:12;10544:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;10639:42;10602:15;;:80;;;;;;;;;;;;;;;;;;10693:58;10710:4;10725:15;;;;;;;;;;;4402:1;4457:2;:13;;;;:::i;:::-;4445:9;:25;;;;:::i;:::-;10693:8;:58::i;:::-;10796:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10778:55;;;10842:4;10849:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10778:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10762:13;;:110;;;;;;;;;;;;;;;;;;10883:15;;;;;;;;;;;:31;;;10922:21;10953:4;10959:24;10977:4;10959:9;:24::i;:::-;10984:1;10986::::0;10988:7:::1;:5;:7::i;:::-;10996:15;10883:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11030:13;;;;;;;;;;;11023:29;;;11061:15;;;;;;;;;;;11079:14;11023:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11119:4;11105:11;;:18;;;;;;;;;;;;;;;;;;11148:4;11134:11;;:18;;;;;;;;;;;;;;;;;;10489:671::o:0;6178:143::-;6259:7;6286:11;:18;6298:5;6286:18;;;;;;;;;;;;;;;:27;6305:7;6286:27;;;;;;;;;;;;;;;;6279:34;;6178:143;;;;:::o;235:98::-;288:7;315:10;308:17;;235:98;:::o;6819:335::-;6929:1;6912:19;;:5;:19;;;6904:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7010:1;6991:21;;:7;:21;;;6983:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7092:6;7062:11;:18;7074:5;7062:18;;;;;;;;;;;;;;;:27;7081:7;7062:27;;;;;;;;;;;;;;;:36;;;;7130:7;7114:32;;7123:5;7114:32;;;7139:6;7114:32;;;;;;:::i;:::-;;;;;;;;6819:335;;;:::o;7162:2414::-;7266:1;7250:18;;:4;:18;;;7242:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7343:1;7329:16;;:2;:16;;;7321:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7413:1;7404:6;:10;7396:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7471:17;7513:7;:5;:7::i;:::-;7505:15;;:4;:15;;;;:32;;;;;7530:7;:5;:7::i;:::-;7524:13;;:2;:13;;;;7505:32;7501:1719;;;7566:76;7638:3;7566:67;7588:15;;7578:9;;:25;7577:55;;7618:14;;7577:55;;;7605:12;;7577:55;7566:6;:10;;:67;;;;:::i;:::-;:71;;:76;;;;:::i;:::-;7554:88;;7663:20;;;;;;;;;;;7659:508;;;7724:15;;;;;;;;;;;7710:30;;:2;:30;;;;:62;;;;;7758:13;;;;;;;;;;;7744:28;;:2;:28;;;;7710:62;7706:444;;;7908:12;7835:28;:39;7864:9;7835:39;;;;;;;;;;;;;;;;:85;7799:250;;;;;;;;;;;;:::i;:::-;;;;;;;;;8116:12;8074:28;:39;8103:9;8074:39;;;;;;;;;;;;;;;:54;;;;7706:444;7659:508;8195:13;;;;;;;;;;;8187:21;;:4;:21;;;:55;;;;;8226:15;;;;;;;;;;;8212:30;;:2;:30;;;;8187:55;:83;;;;;8248:18;:22;8267:2;8248:22;;;;;;;;;;;;;;;;;;;;;;;;;8246:24;8187:83;8183:313;;;8310:12;;8300:6;:22;;8292:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;8405:14;;8395:6;8379:13;8389:2;8379:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8371:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;8469:9;;:11;;;;;;;;;:::i;:::-;;;;;;8183:313;8521:13;;;;;;;;;;;8515:19;;:2;:19;;;:43;;;;;8553:4;8538:20;;:4;:20;;;;8515:43;8512:174;;;8591:79;8666:3;8591:70;8613:16;;8603:9;;:26;8602:58;;8645:15;;8602:58;;;8631:13;;8602:58;8591:6;:10;;:70;;;;:::i;:::-;:74;;:79;;;;:::i;:::-;8579:91;;8512:174;8702:28;8733:24;8751:4;8733:9;:24::i;:::-;8702:55;;8777:6;;;;;;;;;;;8776:7;:32;;;;;8795:13;;;;;;;;;;;8787:21;;:2;:21;;;8776:32;:47;;;;;8812:11;;;;;;;;;;;8776:47;:89;;;;;8848:17;;8827:20;:38;8776:89;:121;;;;;8879:18;;8869:9;;:28;8776:121;8772:437;;;8918:67;8935:49;8939:6;8946:37;8950:20;8971:11;;8946:3;:37::i;:::-;8935:3;:49::i;:::-;8918:16;:67::i;:::-;9004:26;9033:21;9004:50;;9097:17;9076:18;:38;9073:121;;;9139:35;9152:21;9139:12;:35::i;:::-;9073:121;8899:310;8772:437;7539:1681;7501:1719;9245:1;9235:9;:11;9232:161;;;9285:39;9314:9;9285;:24;9303:4;9285:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9260:9;:24;9278:4;9260:24;;;;;;;;;;;;;;;:64;;;;9365:4;9342:39;;9351:4;9342:39;;;9371:9;9342:39;;;;;;:::i;:::-;;;;;;;;9232:161;9419:27;9439:6;9419:9;:15;9429:4;9419:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9403:9;:15;9413:4;9403:15;;;;;;;;;;;;;;;:43;;;;9471:40;9489:21;9500:9;9489:6;:10;;:21;;;;:::i;:::-;9471:9;:13;9481:2;9471:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;9457:9;:13;9467:2;9457:13;;;;;;;;;;;;;;;:54;;;;9542:2;9527:41;;9536:4;9527:41;;;9546:21;9557:9;9546:6;:10;;:21;;;;:::i;:::-;9527:41;;;;;;:::i;:::-;;;;;;;;7231:2345;7162:2414;;;:::o;1372:190::-;1458:7;1491:1;1486;:6;;1494:12;1478:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1518:9;1534:1;1530;:5;;;;:::i;:::-;1518:17;;1553:1;1546:8;;;1372:190;;;;;:::o;9692:483::-;5114:4;5105:6;;:13;;;;;;;;;;;;;;;;;;9770:21:::1;9808:1;9794:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9770:40;;9839:4;9821;9826:1;9821:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9865:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9855:4;9860:1;9855:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9898:62;9915:4;9930:15;;;;;;;;;;;9948:11;9898:8;:62::i;:::-;9971:15;;;;;;;;;;;:66;;;10052:11;10078:1;10094:4;10121;10141:15;9971:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9759:416;5150:5:::0;5141:6;;:14;;;;;;;;;;;;;;;;;;9692:483;:::o;10387:92::-;10444:10;;;;;;;;;;;:19;;:27;10464:6;10444:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10387:92;:::o;1570:246::-;1628:7;1657:1;1652;:6;1648:47;;1682:1;1675:8;;;;1648:47;1705:9;1721:1;1717;:5;;;;:::i;:::-;1705:17;;1750:1;1745;1741;:5;;;;:::i;:::-;:10;1733:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1807:1;1800:8;;;1570:246;;;;;:::o;1824:132::-;1882:7;1909:39;1913:1;1916;1909:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1902:46;;1824:132;;;;:::o;9586:98::-;9643:7;9670:1;9668;:3;9667:9;;9675:1;9667:9;;;9673:1;9667:9;9660:16;;9586:98;;;;:::o;1041:179::-;1099:7;1119:9;1135:1;1131;:5;;;;:::i;:::-;1119:17;;1160:1;1155;:6;;1147:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1211:1;1204:8;;;1041:179;;;;:::o;1228:136::-;1286:7;1313:43;1317:1;1320;1313:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1306:50;;1228:136;;;;:::o;1964:189::-;2050:7;2082:1;2078;:5;2085:12;2070:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2109:9;2125:1;2121;:5;;;;:::i;:::-;2109:17;;2144:1;2137:8;;;1964:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:180::-;6068:77;6065:1;6058:88;6165:4;6162:1;6155:15;6189:4;6186:1;6179:15;6206:102;6248:8;6295:5;6292:1;6288:13;6267:34;;6206:102;;;:::o;6314:848::-;6375:5;6382:4;6406:6;6397:15;;6430:5;6421:14;;6444:712;6465:1;6455:8;6452:15;6444:712;;;6560:4;6555:3;6551:14;6545:4;6542:24;6539:50;;;6569:18;;:::i;:::-;6539:50;6619:1;6609:8;6605:16;6602:451;;;7034:4;7027:5;7023:16;7014:25;;6602:451;7084:4;7078;7074:15;7066:23;;7114:32;7137:8;7114:32;:::i;:::-;7102:44;;6444:712;;;6314:848;;;;;;;:::o;7168:1073::-;7222:5;7413:8;7403:40;;7434:1;7425:10;;7436:5;;7403:40;7462:4;7452:36;;7479:1;7470:10;;7481:5;;7452:36;7548:4;7596:1;7591:27;;;;7632:1;7627:191;;;;7541:277;;7591:27;7609:1;7600:10;;7611:5;;;7627:191;7672:3;7662:8;7659:17;7656:43;;;7679:18;;:::i;:::-;7656:43;7728:8;7725:1;7721:16;7712:25;;7763:3;7756:5;7753:14;7750:40;;;7770:18;;:::i;:::-;7750:40;7803:5;;;7541:277;;7927:2;7917:8;7914:16;7908:3;7902:4;7899:13;7895:36;7877:2;7867:8;7864:16;7859:2;7853:4;7850:12;7846:35;7830:111;7827:246;;;7983:8;7977:4;7973:19;7964:28;;8018:3;8011:5;8008:14;8005:40;;;8025:18;;:::i;:::-;8005:40;8058:5;;7827:246;8098:42;8136:3;8126:8;8120:4;8117:1;8098:42;:::i;:::-;8083:57;;;;8172:4;8167:3;8163:14;8156:5;8153:25;8150:51;;;8181:18;;:::i;:::-;8150:51;8230:4;8223:5;8219:16;8210:25;;7168:1073;;;;;;:::o;8247:281::-;8305:5;8329:23;8347:4;8329:23;:::i;:::-;8321:31;;8373:25;8389:8;8373:25;:::i;:::-;8361:37;;8417:104;8454:66;8444:8;8438:4;8417:104;:::i;:::-;8408:113;;8247:281;;;;:::o;8534:410::-;8574:7;8597:20;8615:1;8597:20;:::i;:::-;8592:25;;8631:20;8649:1;8631:20;:::i;:::-;8626:25;;8686:1;8683;8679:9;8708:30;8726:11;8708:30;:::i;:::-;8697:41;;8887:1;8878:7;8874:15;8871:1;8868:22;8848:1;8841:9;8821:83;8798:139;;8917:18;;:::i;:::-;8798:139;8582:362;8534:410;;;;:::o;8950:182::-;9090:34;9086:1;9078:6;9074:14;9067:58;8950:182;:::o;9138:366::-;9280:3;9301:67;9365:2;9360:3;9301:67;:::i;:::-;9294:74;;9377:93;9466:3;9377:93;:::i;:::-;9495:2;9490:3;9486:12;9479:19;;9138:366;;;:::o;9510:419::-;9676:4;9714:2;9703:9;9699:18;9691:26;;9763:9;9757:4;9753:20;9749:1;9738:9;9734:17;9727:47;9791:131;9917:4;9791:131;:::i;:::-;9783:139;;9510:419;;;:::o;9935:173::-;10075:25;10071:1;10063:6;10059:14;10052:49;9935:173;:::o;10114:366::-;10256:3;10277:67;10341:2;10336:3;10277:67;:::i;:::-;10270:74;;10353:93;10442:3;10353:93;:::i;:::-;10471:2;10466:3;10462:12;10455:19;;10114:366;;;:::o;10486:419::-;10652:4;10690:2;10679:9;10675:18;10667:26;;10739:9;10733:4;10729:20;10725:1;10714:9;10710:17;10703:47;10767:131;10893:4;10767:131;:::i;:::-;10759:139;;10486:419;;;:::o;10911:143::-;10968:5;10999:6;10993:13;10984:22;;11015:33;11042:5;11015:33;:::i;:::-;10911:143;;;;:::o;11060:351::-;11130:6;11179:2;11167:9;11158:7;11154:23;11150:32;11147:119;;;11185:79;;:::i;:::-;11147:119;11305:1;11330:64;11386:7;11377:6;11366:9;11362:22;11330:64;:::i;:::-;11320:74;;11276:128;11060:351;;;;:::o;11417:332::-;11538:4;11576:2;11565:9;11561:18;11553:26;;11589:71;11657:1;11646:9;11642:17;11633:6;11589:71;:::i;:::-;11670:72;11738:2;11727:9;11723:18;11714:6;11670:72;:::i;:::-;11417:332;;;;;:::o;11755:85::-;11800:7;11829:5;11818:16;;11755:85;;;:::o;11846:60::-;11874:3;11895:5;11888:12;;11846:60;;;:::o;11912:158::-;11970:9;12003:61;12021:42;12030:32;12056:5;12030:32;:::i;:::-;12021:42;:::i;:::-;12003:61;:::i;:::-;11990:74;;11912:158;;;:::o;12076:147::-;12171:45;12210:5;12171:45;:::i;:::-;12166:3;12159:58;12076:147;;:::o;12229:807::-;12478:4;12516:3;12505:9;12501:19;12493:27;;12530:71;12598:1;12587:9;12583:17;12574:6;12530:71;:::i;:::-;12611:72;12679:2;12668:9;12664:18;12655:6;12611:72;:::i;:::-;12693:80;12769:2;12758:9;12754:18;12745:6;12693:80;:::i;:::-;12783;12859:2;12848:9;12844:18;12835:6;12783:80;:::i;:::-;12873:73;12941:3;12930:9;12926:19;12917:6;12873:73;:::i;:::-;12956;13024:3;13013:9;13009:19;13000:6;12956:73;:::i;:::-;12229:807;;;;;;;;;:::o;13042:143::-;13099:5;13130:6;13124:13;13115:22;;13146:33;13173:5;13146:33;:::i;:::-;13042:143;;;;:::o;13191:663::-;13279:6;13287;13295;13344:2;13332:9;13323:7;13319:23;13315:32;13312:119;;;13350:79;;:::i;:::-;13312:119;13470:1;13495:64;13551:7;13542:6;13531:9;13527:22;13495:64;:::i;:::-;13485:74;;13441:128;13608:2;13634:64;13690:7;13681:6;13670:9;13666:22;13634:64;:::i;:::-;13624:74;;13579:129;13747:2;13773:64;13829:7;13820:6;13809:9;13805:22;13773:64;:::i;:::-;13763:74;;13718:129;13191:663;;;;;:::o;13860:332::-;13981:4;14019:2;14008:9;14004:18;13996:26;;14032:71;14100:1;14089:9;14085:17;14076:6;14032:71;:::i;:::-;14113:72;14181:2;14170:9;14166:18;14157:6;14113:72;:::i;:::-;13860:332;;;;;:::o;14198:116::-;14268:21;14283:5;14268:21;:::i;:::-;14261:5;14258:32;14248:60;;14304:1;14301;14294:12;14248:60;14198:116;:::o;14320:137::-;14374:5;14405:6;14399:13;14390:22;;14421:30;14445:5;14421:30;:::i;:::-;14320:137;;;;:::o;14463:345::-;14530:6;14579:2;14567:9;14558:7;14554:23;14550:32;14547:119;;;14585:79;;:::i;:::-;14547:119;14705:1;14730:61;14783:7;14774:6;14763:9;14759:22;14730:61;:::i;:::-;14720:71;;14676:125;14463:345;;;;:::o;14814:223::-;14954:34;14950:1;14942:6;14938:14;14931:58;15023:6;15018:2;15010:6;15006:15;14999:31;14814:223;:::o;15043:366::-;15185:3;15206:67;15270:2;15265:3;15206:67;:::i;:::-;15199:74;;15282:93;15371:3;15282:93;:::i;:::-;15400:2;15395:3;15391:12;15384:19;;15043:366;;;:::o;15415:419::-;15581:4;15619:2;15608:9;15604:18;15596:26;;15668:9;15662:4;15658:20;15654:1;15643:9;15639:17;15632:47;15696:131;15822:4;15696:131;:::i;:::-;15688:139;;15415:419;;;:::o;15840:221::-;15980:34;15976:1;15968:6;15964:14;15957:58;16049:4;16044:2;16036:6;16032:15;16025:29;15840:221;:::o;16067:366::-;16209:3;16230:67;16294:2;16289:3;16230:67;:::i;:::-;16223:74;;16306:93;16395:3;16306:93;:::i;:::-;16424:2;16419:3;16415:12;16408:19;;16067:366;;;:::o;16439:419::-;16605:4;16643:2;16632:9;16628:18;16620:26;;16692:9;16686:4;16682:20;16678:1;16667:9;16663:17;16656:47;16720:131;16846:4;16720:131;:::i;:::-;16712:139;;16439:419;;;:::o;16864:224::-;17004:34;17000:1;16992:6;16988:14;16981:58;17073:7;17068:2;17060:6;17056:15;17049:32;16864:224;:::o;17094:366::-;17236:3;17257:67;17321:2;17316:3;17257:67;:::i;:::-;17250:74;;17333:93;17422:3;17333:93;:::i;:::-;17451:2;17446:3;17442:12;17435:19;;17094:366;;;:::o;17466:419::-;17632:4;17670:2;17659:9;17655:18;17647:26;;17719:9;17713:4;17709:20;17705:1;17694:9;17690:17;17683:47;17747:131;17873:4;17747:131;:::i;:::-;17739:139;;17466:419;;;:::o;17891:222::-;18031:34;18027:1;18019:6;18015:14;18008:58;18100:5;18095:2;18087:6;18083:15;18076:30;17891:222;:::o;18119:366::-;18261:3;18282:67;18346:2;18341:3;18282:67;:::i;:::-;18275:74;;18358:93;18447:3;18358:93;:::i;:::-;18476:2;18471:3;18467:12;18460:19;;18119:366;;;:::o;18491:419::-;18657:4;18695:2;18684:9;18680:18;18672:26;;18744:9;18738:4;18734:20;18730:1;18719:9;18715:17;18708:47;18772:131;18898:4;18772:131;:::i;:::-;18764:139;;18491:419;;;:::o;18916:228::-;19056:34;19052:1;19044:6;19040:14;19033:58;19125:11;19120:2;19112:6;19108:15;19101:36;18916:228;:::o;19150:366::-;19292:3;19313:67;19377:2;19372:3;19313:67;:::i;:::-;19306:74;;19389:93;19478:3;19389:93;:::i;:::-;19507:2;19502:3;19498:12;19491:19;;19150:366;;;:::o;19522:419::-;19688:4;19726:2;19715:9;19711:18;19703:26;;19775:9;19769:4;19765:20;19761:1;19750:9;19746:17;19739:47;19803:131;19929:4;19803:131;:::i;:::-;19795:139;;19522:419;;;:::o;19947:297::-;20087:34;20083:1;20075:6;20071:14;20064:58;20156:34;20151:2;20143:6;20139:15;20132:59;20225:11;20220:2;20212:6;20208:15;20201:36;19947:297;:::o;20250:366::-;20392:3;20413:67;20477:2;20472:3;20413:67;:::i;:::-;20406:74;;20489:93;20578:3;20489:93;:::i;:::-;20607:2;20602:3;20598:12;20591:19;;20250:366;;;:::o;20622:419::-;20788:4;20826:2;20815:9;20811:18;20803:26;;20875:9;20869:4;20865:20;20861:1;20850:9;20846:17;20839:47;20903:131;21029:4;20903:131;:::i;:::-;20895:139;;20622:419;;;:::o;21047:175::-;21187:27;21183:1;21175:6;21171:14;21164:51;21047:175;:::o;21228:366::-;21370:3;21391:67;21455:2;21450:3;21391:67;:::i;:::-;21384:74;;21467:93;21556:3;21467:93;:::i;:::-;21585:2;21580:3;21576:12;21569:19;;21228:366;;;:::o;21600:419::-;21766:4;21804:2;21793:9;21789:18;21781:26;;21853:9;21847:4;21843:20;21839:1;21828:9;21824:17;21817:47;21881:131;22007:4;21881:131;:::i;:::-;21873:139;;21600:419;;;:::o;22025:191::-;22065:3;22084:20;22102:1;22084:20;:::i;:::-;22079:25;;22118:20;22136:1;22118:20;:::i;:::-;22113:25;;22161:1;22158;22154:9;22147:16;;22182:3;22179:1;22176:10;22173:36;;;22189:18;;:::i;:::-;22173:36;22025:191;;;;:::o;22222:176::-;22362:28;22358:1;22350:6;22346:14;22339:52;22222:176;:::o;22404:366::-;22546:3;22567:67;22631:2;22626:3;22567:67;:::i;:::-;22560:74;;22643:93;22732:3;22643:93;:::i;:::-;22761:2;22756:3;22752:12;22745:19;;22404:366;;;:::o;22776:419::-;22942:4;22980:2;22969:9;22965:18;22957:26;;23029:9;23023:4;23019:20;23015:1;23004:9;23000:17;22993:47;23057:131;23183:4;23057:131;:::i;:::-;23049:139;;22776:419;;;:::o;23201:233::-;23240:3;23263:24;23281:5;23263:24;:::i;:::-;23254:33;;23309:66;23302:5;23299:77;23296:103;;23379:18;;:::i;:::-;23296:103;23426:1;23419:5;23415:13;23408:20;;23201:233;;;:::o;23440:194::-;23480:4;23500:20;23518:1;23500:20;:::i;:::-;23495:25;;23534:20;23552:1;23534:20;:::i;:::-;23529:25;;23578:1;23575;23571:9;23563:17;;23602:1;23596:4;23593:11;23590:37;;;23607:18;;:::i;:::-;23590:37;23440:194;;;;:::o;23640:180::-;23688:77;23685:1;23678:88;23785:4;23782:1;23775:15;23809:4;23806:1;23799:15;23826:180;23874:77;23871:1;23864:88;23971:4;23968:1;23961:15;23995:4;23992:1;23985:15;24012:114;24079:6;24113:5;24107:12;24097:22;;24012:114;;;:::o;24132:184::-;24231:11;24265:6;24260:3;24253:19;24305:4;24300:3;24296:14;24281:29;;24132:184;;;;:::o;24322:132::-;24389:4;24412:3;24404:11;;24442:4;24437:3;24433:14;24425:22;;24322:132;;;:::o;24460:108::-;24537:24;24555:5;24537:24;:::i;:::-;24532:3;24525:37;24460:108;;:::o;24574:179::-;24643:10;24664:46;24706:3;24698:6;24664:46;:::i;:::-;24742:4;24737:3;24733:14;24719:28;;24574:179;;;;:::o;24759:113::-;24829:4;24861;24856:3;24852:14;24844:22;;24759:113;;;:::o;24908:732::-;25027:3;25056:54;25104:5;25056:54;:::i;:::-;25126:86;25205:6;25200:3;25126:86;:::i;:::-;25119:93;;25236:56;25286:5;25236:56;:::i;:::-;25315:7;25346:1;25331:284;25356:6;25353:1;25350:13;25331:284;;;25432:6;25426:13;25459:63;25518:3;25503:13;25459:63;:::i;:::-;25452:70;;25545:60;25598:6;25545:60;:::i;:::-;25535:70;;25391:224;25378:1;25375;25371:9;25366:14;;25331:284;;;25335:14;25631:3;25624:10;;25032:608;;;24908:732;;;;:::o;25646:831::-;25909:4;25947:3;25936:9;25932:19;25924:27;;25961:71;26029:1;26018:9;26014:17;26005:6;25961:71;:::i;:::-;26042:80;26118:2;26107:9;26103:18;26094:6;26042:80;:::i;:::-;26169:9;26163:4;26159:20;26154:2;26143:9;26139:18;26132:48;26197:108;26300:4;26291:6;26197:108;:::i;:::-;26189:116;;26315:72;26383:2;26372:9;26368:18;26359:6;26315:72;:::i;:::-;26397:73;26465:3;26454:9;26450:19;26441:6;26397:73;:::i;:::-;25646:831;;;;;;;;:::o;26483:180::-;26531:77;26528:1;26521:88;26628:4;26625:1;26618:15;26652:4;26649:1;26642:15;26669:185;26709:1;26726:20;26744:1;26726:20;:::i;:::-;26721:25;;26760:20;26778:1;26760:20;:::i;:::-;26755:25;;26799:1;26789:35;;26804:18;;:::i;:::-;26789:35;26846:1;26843;26839:9;26834:14;;26669:185;;;;:::o;26860:220::-;27000:34;26996:1;26988:6;26984:14;26977:58;27069:3;27064:2;27056:6;27052:15;27045:28;26860:220;:::o;27086:366::-;27228:3;27249:67;27313:2;27308:3;27249:67;:::i;:::-;27242:74;;27325:93;27414:3;27325:93;:::i;:::-;27443:2;27438:3;27434:12;27427:19;;27086:366;;;:::o;27458:419::-;27624:4;27662:2;27651:9;27647:18;27639:26;;27711:9;27705:4;27701:20;27697:1;27686:9;27682:17;27675:47;27739:131;27865:4;27739:131;:::i;:::-;27731:139;;27458:419;;;:::o;27883:177::-;28023:29;28019:1;28011:6;28007:14;28000:53;27883:177;:::o;28066:366::-;28208:3;28229:67;28293:2;28288:3;28229:67;:::i;:::-;28222:74;;28305:93;28394:3;28305:93;:::i;:::-;28423:2;28418:3;28414:12;28407:19;;28066:366;;;:::o;28438:419::-;28604:4;28642:2;28631:9;28627:18;28619:26;;28691:9;28685:4;28681:20;28677:1;28666:9;28662:17;28655:47;28719:131;28845:4;28719:131;:::i;:::-;28711:139;;28438:419;;;:::o

Swarm Source

ipfs://85bbcf27e3f6ee45578e270cdd527c29ccf786a9c778e41cb8ed8f052184a55f

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

OVERVIEW

GME reigniting the GameStop saga for all Apes. Challenging norms and bringing decentralized power back to the community.

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.