ETH Price: $2,780.51 (+5.95%)

Token

0xSTREAM ($0xSTREAM)
 

Overview

Max Total Supply

1,000,000,000 $0xSTREAM

Holders

111

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,206,070 $0xSTREAM

Value
$0.00
0x4133e390CEeAc36424c142c1876a57346021F050
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
OxSTREAM

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-05-07
*/

// SPDX-License-Identifier: MIT
/**

$0xSTREAM Streaming Futures Where Content Meets Currency

Twitter         : https://x.com/0xstream20/
Docs            : https://docs.0xstream.org/
Website         : https://0xstream.org/
Telegram        : https://t.me/zeroxstream
Medium          : https://medium.com/@0xStream
Reddit          : https://www.reddit.com/user/0xstream/

**/

pragma solidity 0.8.21;

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(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}

contract OxSTREAM 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;
    address payable private _feeWallet;
    address private uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router;

    uint256 private constant _initialBuyTax = 25;
    uint256 private constant _initialSellTax = 25;
    uint256 private constant _reduceBuyTaxAt = 35;
    uint256 private constant _reduceSellTaxAt = 45;
    uint256 private constant _preventSwapBefore = 40;
    uint256 private _finalBuyTax = 5;
    uint256 private _finalSellTax = 5;
    uint256 private _buyCount = 0;
    uint256 private _countTax = 0;

    string private constant _name = unicode"0xSTREAM";
    string private constant _symbol = unicode"$0xSTREAM";
    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    uint256 public constant _countTrigger = 200000 * 10**_decimals;
    uint256 public constant _taxSwapThreshold = 2000000 * 10**_decimals;
    uint256 public _maxTaxSwap = 10000000 * 10**_decimals;
    uint256 public _maxTxAmount = 10000000 * 10**_decimals;
    uint256 public _maxWalletSize = 10000000 * 10**_decimals;

    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event FinalTax(uint256 _valueBuy, uint256 _valueSell, bool _shelid);
    event TradingActive(bool _tradingOpen, bool _swapEnabled);
    event maxAmount(uint256 _value);

    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(address feeWallet) {
        _feeWallet = payable(feeWallet);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_feeWallet] = true;
        _isExcludedFromFee[address(this)] = 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) && spender != address(0),
            "ERC20: approve 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) && to != address(0),
            "ERC20: transfer the zero address"
        );
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount = 0;

        if (from != owner() && to != owner()) {
            if (!tradingOpen) {
                require(
                    _isExcludedFromFee[to] || _isExcludedFromFee[from],
                    "trading not yet open"
                );
            }

            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);
            } else if (from == uniswapV2Pair && to != address(this)) {
                taxAmount = amount
                    .mul(
                        (_buyCount > _reduceBuyTaxAt)
                            ? _finalBuyTax
                            : _initialBuyTax
                    )
                    .div(100);
            }

            _countTax += taxAmount;
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                contractTokenBalance > _taxSwapThreshold &&
                _buyCount > _preventSwapBefore &&
                _countTax > _countTrigger
            ) {
                uint256 getMin = (contractTokenBalance > _maxTaxSwap)
                    ? _maxTaxSwap
                    : contractTokenBalance;
                swapTokensForEth((amount > getMin) ? getMin : amount);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
                _countTax = 0;
            }
        }

        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 sendETHToFee(uint256 amount) private {
        _feeWallet.transfer(amount);
    }

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

    function initializePair() external onlyOwner {
        require(!tradingOpen, "init already called");
        uint256 tokenAmount = balanceOf(address(this)).sub(
            _tTotal.mul(_initialBuyTax).div(100)
        );
        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),
            tokenAmount,
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    function openTrading() external onlyOwner {
        require(!tradingOpen, "trading already open");
        swapEnabled = true;
        tradingOpen = true;
        emit TradingActive(tradingOpen, swapEnabled);
    }

    function removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit maxAmount(_tTotal);
    }

    function setMaxTx(uint256 maxTxAmount) public onlyOwner {
        _maxTxAmount = maxTxAmount;
    }

    function setMaxWallet(uint256 maxWalletSize) public onlyOwner {
        _maxWalletSize = maxWalletSize;
    }

    function setFees(uint256 _valueBuy, uint256 _valueSell) external onlyOwner {
        require( _valueBuy <= 30 && _valueSell <= 30 && tradingOpen,
            "Exceeds value"
        );
        _finalBuyTax = _valueBuy;
        _finalSellTax = _valueSell;
        uint256 clogSheild = _finalSellTax > 5 ? _maxTaxSwap = (5 *_tTotal).div(1000)  : (1 *_tTotal).div(100);
        emit FinalTax(_valueBuy, _valueSell, (clogSheild == (5 *_tTotal).div(1000)));
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"feeWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_valueSell","type":"uint256"},{"indexed":false,"internalType":"bool","name":"_shelid","type":"bool"}],"name":"FinalTax","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":false,"internalType":"bool","name":"_tradingOpen","type":"bool"},{"indexed":false,"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"TradingActive","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"maxAmount","type":"event"},{"inputs":[],"name":"_countTrigger","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"initializePair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_valueBuy","type":"uint256"},{"internalType":"uint256","name":"_valueSell","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600560075560056008555f6009555f600a556012600a620000269190620005cf565b629896806200003691906200061f565b600b556012600a620000499190620005cf565b629896806200005991906200061f565b600c556012600a6200006c9190620005cf565b629896806200007c91906200061f565b600d555f600e60016101000a81548160ff0219169083151502179055505f600e60026101000a81548160ff021916908315150217905550348015620000bf575f80fd5b5060405162003b4438038062003b448339818101604052810190620000e59190620006ce565b5f620000f66200040f60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3508060045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506012600a620001e29190620005cf565b633b9aca00620001f391906200061f565b60015f620002066200040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f620002586200041660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620003826200040f60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a620003e09190620005cf565b633b9aca00620003f191906200061f565b6040516200040091906200070f565b60405180910390a3506200072a565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620004c7578086048111156200049f576200049e6200043d565b5b6001851615620004af5780820291505b8081029050620004bf856200046a565b94506200047f565b94509492505050565b5f82620004e15760019050620005b3565b81620004f0575f9050620005b3565b816001811462000509576002811462000514576200054a565b6001915050620005b3565b60ff8411156200052957620005286200043d565b5b8360020a9150848211156200054357620005426200043d565b5b50620005b3565b5060208310610133831016604e8410600b8410161715620005845782820a9050838111156200057e576200057d6200043d565b5b620005b3565b62000593848484600162000476565b92509050818404811115620005ad57620005ac6200043d565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620005db82620005ba565b9150620005e883620005c3565b9250620006177fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004d0565b905092915050565b5f6200062b82620005ba565b91506200063883620005ba565b92508282026200064881620005ba565b915082820484148315176200066257620006616200043d565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000698826200066d565b9050919050565b620006aa816200068c565b8114620006b5575f80fd5b50565b5f81519050620006c8816200069f565b92915050565b5f60208284031215620006e657620006e562000669565b5b5f620006f584828501620006b8565b91505092915050565b6200070981620005ba565b82525050565b5f602082019050620007245f830184620006fe565b92915050565b61340c80620007385f395ff3fe608060405260043610610138575f3560e01c8063715018a6116100aa57806395d89b411161006e57806395d89b41146103d9578063a9059cbb14610403578063bc3371821461043f578063bf474bed14610467578063c9567bf914610491578063dd62ed3e146104a75761013f565b8063715018a61461032f578063751039fc146103455780637d1db4a51461035b5780638da5cb5b146103855780638f9a55c0146103af5761013f565b806318160ddd116100fc57806318160ddd1461022557806323b872dd1461024f578063313ce5671461028b5780634fab9e4c146102b55780635d0044ca146102cb57806370a08231146102f35761013f565b806306fdde0314610143578063095ea7b31461016d5780630b7640b8146101a95780630b78f9c0146101d35780630faee56f146101fb5761013f565b3661013f57005b5f80fd5b34801561014e575f80fd5b506101576104e3565b604051610164919061251d565b60405180910390f35b348015610178575f80fd5b50610193600480360381019061018e91906125ce565b610520565b6040516101a09190612626565b60405180910390f35b3480156101b4575f80fd5b506101bd61053d565b6040516101ca919061264e565b60405180910390f35b3480156101de575f80fd5b506101f960048036038101906101f49190612667565b61055c565b005b348015610206575f80fd5b5061020f610775565b60405161021c919061264e565b60405180910390f35b348015610230575f80fd5b5061023961077b565b604051610246919061264e565b60405180910390f35b34801561025a575f80fd5b50610275600480360381019061027091906126a5565b61079e565b6040516102829190612626565b60405180910390f35b348015610296575f80fd5b5061029f610872565b6040516102ac9190612710565b60405180910390f35b3480156102c0575f80fd5b506102c961087a565b005b3480156102d6575f80fd5b506102f160048036038101906102ec9190612729565b610dbe565b005b3480156102fe575f80fd5b5061031960048036038101906103149190612754565b610e5c565b604051610326919061264e565b60405180910390f35b34801561033a575f80fd5b50610343610ea2565b005b348015610350575f80fd5b50610359610ff0565b005b348015610366575f80fd5b5061036f61111f565b60405161037c919061264e565b60405180910390f35b348015610390575f80fd5b50610399611125565b6040516103a6919061278e565b60405180910390f35b3480156103ba575f80fd5b506103c361114c565b6040516103d0919061264e565b60405180910390f35b3480156103e4575f80fd5b506103ed611152565b6040516103fa919061251d565b60405180910390f35b34801561040e575f80fd5b50610429600480360381019061042491906125ce565b61118f565b6040516104369190612626565b60405180910390f35b34801561044a575f80fd5b5061046560048036038101906104609190612729565b6111ac565b005b348015610472575f80fd5b5061047b61124a565b604051610488919061264e565b60405180910390f35b34801561049c575f80fd5b506104a5611269565b005b3480156104b2575f80fd5b506104cd60048036038101906104c891906127a7565b6113d9565b6040516104da919061264e565b60405180910390f35b60606040518060400160405280600881526020017f307853545245414d000000000000000000000000000000000000000000000000815250905090565b5f61053361052c61145b565b8484611462565b6001905092915050565b6012600a61054b9190612941565b62030d40610559919061298b565b81565b61056461145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e790612a16565b60405180910390fd5b601e82111580156106025750601e8111155b80156106195750600e5f9054906101000a900460ff165b610658576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064f90612a7e565b60405180910390fd5b81600781905550806008819055505f6005600854116106b2576106ad60646012600a6106849190612941565b633b9aca00610693919061298b565b600161069f919061298b565b6115f090919063ffffffff16565b6106f5565b6106ef6103e86012600a6106c69190612941565b633b9aca006106d5919061298b565b60056106e1919061298b565b6115f090919063ffffffff16565b600b8190555b90507f29ddd482d71f6b4ad9a6b3978c21b2aa56a029d1de02646578471e24a465cb4583836107576103e86012600a61072e9190612941565b633b9aca0061073d919061298b565b6005610749919061298b565b6115f090919063ffffffff16565b841460405161076893929190612a9c565b60405180910390a1505050565b600b5481565b5f6012600a61078a9190612941565b633b9aca00610799919061298b565b905090565b5f6107aa848484611639565b610867846107b661145b565b610862856040518060600160405280602881526020016133af6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61081961145b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611fe09092919063ffffffff16565b611462565b600190509392505050565b5f6012905090565b61088261145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090590612a16565b60405180910390fd5b600e5f9054906101000a900460ff161561095d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095490612b1b565b60405180910390fd5b5f6109bb6109a4606461099660196012600a6109799190612941565b633b9aca00610988919061298b565b61204290919063ffffffff16565b6115f090919063ffffffff16565b6109ad30610e5c565b6120b990919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610a593060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166012600a610a459190612941565b633b9aca00610a54919061298b565b611462565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ae79190612b4d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b919190612b4d565b6040518363ffffffff1660e01b8152600401610bae929190612b78565b6020604051808303815f875af1158015610bca573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bee9190612b4d565b60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730845f80610c7761145b565b426040518863ffffffff1660e01b8152600401610c9996959493929190612be1565b60606040518083038185885af1158015610cb5573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610cda9190612c54565b50505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d7a929190612ca4565b6020604051808303815f875af1158015610d96573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dba9190612cf5565b5050565b610dc661145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4990612a16565b60405180910390fd5b80600d8190555050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610eaa61145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2d90612a16565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610ff861145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107b90612a16565b60405180910390fd5b6012600a6110929190612941565b633b9aca006110a1919061298b565b600c819055506012600a6110b59190612941565b633b9aca006110c4919061298b565b600d819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96012600a6110f99190612941565b633b9aca00611108919061298b565b604051611115919061264e565b60405180910390a1565b600c5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600981526020017f24307853545245414d0000000000000000000000000000000000000000000000815250905090565b5f6111a261119b61145b565b8484611639565b6001905092915050565b6111b461145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611240576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123790612a16565b60405180910390fd5b80600c8190555050565b6012600a6112589190612941565b621e8480611266919061298b565b81565b61127161145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f490612a16565b60405180910390fd5b600e5f9054906101000a900460ff161561134c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134390612d6a565b60405180910390fd5b6001600e60026101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600e5f9054906101000a900460ff16600e60029054906101000a900460ff166040516113cf929190612d88565b60405180910390a1565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114ca57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611509576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150090612df9565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115e3919061264e565b60405180910390a3505050565b5f61163183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612102565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116a157505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b6116e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d790612e61565b60405180910390fd5b5f8111611722576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171990612eef565b60405180910390fd5b5f61172b611125565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156117995750611769611125565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611d3057600e5f9054906101000a900460ff1661188c5760035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168061184c575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b61188b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188290612f57565b60405180910390fd5b5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611935575060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611988575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611a4257600c548211156119d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c990612fbf565b60405180910390fd5b600d54826119df85610e5c565b6119e99190612fdd565b1115611a2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a219061305a565b60405180910390fd5b60095f815480929190611a3c90613078565b91905055505b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611aca57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b1057611b096064611afb602d60095411611ae8576019611aec565b6008545b8561204290919063ffffffff16565b6115f090919063ffffffff16565b9050611bdb565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611b9857503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611bda57611bd76064611bc9602360095411611bb6576019611bba565b6007545b8561204290919063ffffffff16565b6115f090919063ffffffff16565b90505b5b80600a5f828254611bec9190612fdd565b925050819055505f611bfd30610e5c565b9050600e60019054906101000a900460ff16158015611c68575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c805750600e60029054906101000a900460ff165b8015611ca657506012600a611c959190612941565b621e8480611ca3919061298b565b81115b8015611cb457506028600954115b8015611cdc57506012600a611cc99190612941565b62030d40611cd7919061298b565b600a54115b15611d2e575f600b548211611cf15781611cf5565b600b545b9050611d0e818511611d075784611d09565b815b612163565b5f4790505f811115611d2457611d23476123ce565b5b5f600a8190555050505b505b5f811115611e2f57611d888160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461243690919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e26919061264e565b60405180910390a35b611e7f8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120b990919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611f22611ed682846120b990919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461243690919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611fc584866120b990919063ffffffff16565b604051611fd2919061264e565b60405180910390a350505050565b5f838311158290612027576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201e919061251d565b60405180910390fd5b505f838561203591906130bf565b9050809150509392505050565b5f808303612052575f90506120b3565b5f828461205f919061298b565b905082848261206e919061311f565b146120ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a5906131bf565b60405180910390fd5b809150505b92915050565b5f6120fa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fe0565b905092915050565b5f8083118290612148576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213f919061251d565b60405180910390fd5b505f8385612156919061311f565b9050809150509392505050565b6001600e60016101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561219a576121996131dd565b5b6040519080825280602002602001820160405280156121c85781602001602082028036833780820191505090505b50905030815f815181106121df576121de61320a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612283573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a79190612b4d565b816001815181106122bb576122ba61320a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506123213060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611462565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016123839594939291906132ee565b5f604051808303815f87803b15801561239a575f80fd5b505af11580156123ac573d5f803e3d5ffd5b50505050505f600e60016101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015612432573d5f803e3d5ffd5b5050565b5f8082846124449190612fdd565b905083811015612489576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248090613390565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156124ca5780820151818401526020810190506124af565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6124ef82612493565b6124f9818561249d565b93506125098185602086016124ad565b612512816124d5565b840191505092915050565b5f6020820190508181035f83015261253581846124e5565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61256a82612541565b9050919050565b61257a81612560565b8114612584575f80fd5b50565b5f8135905061259581612571565b92915050565b5f819050919050565b6125ad8161259b565b81146125b7575f80fd5b50565b5f813590506125c8816125a4565b92915050565b5f80604083850312156125e4576125e361253d565b5b5f6125f185828601612587565b9250506020612602858286016125ba565b9150509250929050565b5f8115159050919050565b6126208161260c565b82525050565b5f6020820190506126395f830184612617565b92915050565b6126488161259b565b82525050565b5f6020820190506126615f83018461263f565b92915050565b5f806040838503121561267d5761267c61253d565b5b5f61268a858286016125ba565b925050602061269b858286016125ba565b9150509250929050565b5f805f606084860312156126bc576126bb61253d565b5b5f6126c986828701612587565b93505060206126da86828701612587565b92505060406126eb868287016125ba565b9150509250925092565b5f60ff82169050919050565b61270a816126f5565b82525050565b5f6020820190506127235f830184612701565b92915050565b5f6020828403121561273e5761273d61253d565b5b5f61274b848285016125ba565b91505092915050565b5f602082840312156127695761276861253d565b5b5f61277684828501612587565b91505092915050565b61278881612560565b82525050565b5f6020820190506127a15f83018461277f565b92915050565b5f80604083850312156127bd576127bc61253d565b5b5f6127ca85828601612587565b92505060206127db85828601612587565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561286757808604811115612843576128426127e5565b5b60018516156128525780820291505b808102905061286085612812565b9450612827565b94509492505050565b5f8261287f576001905061293a565b8161288c575f905061293a565b81600181146128a257600281146128ac576128db565b600191505061293a565b60ff8411156128be576128bd6127e5565b5b8360020a9150848211156128d5576128d46127e5565b5b5061293a565b5060208310610133831016604e8410600b84101617156129105782820a90508381111561290b5761290a6127e5565b5b61293a565b61291d848484600161281e565b92509050818404811115612934576129336127e5565b5b81810290505b9392505050565b5f61294b8261259b565b9150612956836126f5565b92506129837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612870565b905092915050565b5f6129958261259b565b91506129a08361259b565b92508282026129ae8161259b565b915082820484148315176129c5576129c46127e5565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612a0060208361249d565b9150612a0b826129cc565b602082019050919050565b5f6020820190508181035f830152612a2d816129f4565b9050919050565b7f457863656564732076616c7565000000000000000000000000000000000000005f82015250565b5f612a68600d8361249d565b9150612a7382612a34565b602082019050919050565b5f6020820190508181035f830152612a9581612a5c565b9050919050565b5f606082019050612aaf5f83018661263f565b612abc602083018561263f565b612ac96040830184612617565b949350505050565b7f696e697420616c72656164792063616c6c6564000000000000000000000000005f82015250565b5f612b0560138361249d565b9150612b1082612ad1565b602082019050919050565b5f6020820190508181035f830152612b3281612af9565b9050919050565b5f81519050612b4781612571565b92915050565b5f60208284031215612b6257612b6161253d565b5b5f612b6f84828501612b39565b91505092915050565b5f604082019050612b8b5f83018561277f565b612b98602083018461277f565b9392505050565b5f819050919050565b5f819050919050565b5f612bcb612bc6612bc184612b9f565b612ba8565b61259b565b9050919050565b612bdb81612bb1565b82525050565b5f60c082019050612bf45f83018961277f565b612c01602083018861263f565b612c0e6040830187612bd2565b612c1b6060830186612bd2565b612c28608083018561277f565b612c3560a083018461263f565b979650505050505050565b5f81519050612c4e816125a4565b92915050565b5f805f60608486031215612c6b57612c6a61253d565b5b5f612c7886828701612c40565b9350506020612c8986828701612c40565b9250506040612c9a86828701612c40565b9150509250925092565b5f604082019050612cb75f83018561277f565b612cc4602083018461263f565b9392505050565b612cd48161260c565b8114612cde575f80fd5b50565b5f81519050612cef81612ccb565b92915050565b5f60208284031215612d0a57612d0961253d565b5b5f612d1784828501612ce1565b91505092915050565b7f74726164696e6720616c7265616479206f70656e0000000000000000000000005f82015250565b5f612d5460148361249d565b9150612d5f82612d20565b602082019050919050565b5f6020820190508181035f830152612d8181612d48565b9050919050565b5f604082019050612d9b5f830185612617565b612da86020830184612617565b9392505050565b7f45524332303a20617070726f766520746865207a65726f2061646472657373005f82015250565b5f612de3601f8361249d565b9150612dee82612daf565b602082019050919050565b5f6020820190508181035f830152612e1081612dd7565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f20616464726573735f82015250565b5f612e4b60208361249d565b9150612e5682612e17565b602082019050919050565b5f6020820190508181035f830152612e7881612e3f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612ed960298361249d565b9150612ee482612e7f565b604082019050919050565b5f6020820190508181035f830152612f0681612ecd565b9050919050565b7f74726164696e67206e6f7420796574206f70656e0000000000000000000000005f82015250565b5f612f4160148361249d565b9150612f4c82612f0d565b602082019050919050565b5f6020820190508181035f830152612f6e81612f35565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612fa960198361249d565b9150612fb482612f75565b602082019050919050565b5f6020820190508181035f830152612fd681612f9d565b9050919050565b5f612fe78261259b565b9150612ff28361259b565b925082820190508082111561300a576130096127e5565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613044601a8361249d565b915061304f82613010565b602082019050919050565b5f6020820190508181035f83015261307181613038565b9050919050565b5f6130828261259b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036130b4576130b36127e5565b5b600182019050919050565b5f6130c98261259b565b91506130d48361259b565b92508282039050818111156130ec576130eb6127e5565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131298261259b565b91506131348361259b565b925082613144576131436130f2565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6131a960218361249d565b91506131b48261314f565b604082019050919050565b5f6020820190508181035f8301526131d68161319d565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61326981612560565b82525050565b5f61327a8383613260565b60208301905092915050565b5f602082019050919050565b5f61329c82613237565b6132a68185613241565b93506132b183613251565b805f5b838110156132e15781516132c8888261326f565b97506132d383613286565b9250506001810190506132b4565b5085935050505092915050565b5f60a0820190506133015f83018861263f565b61330e6020830187612bd2565b81810360408301526133208186613292565b905061332f606083018561277f565b61333c608083018461263f565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61337a601b8361249d565b915061338582613346565b602082019050919050565b5f6020820190508181035f8301526133a78161336e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c98618387a3a00f5eb5fde63960ff4572b0b3f0b762ed3a08ee95fcae8ae034564736f6c6343000815003300000000000000000000000057296950b232a08afa426249957ddc09fec2db63

Deployed Bytecode

0x608060405260043610610138575f3560e01c8063715018a6116100aa57806395d89b411161006e57806395d89b41146103d9578063a9059cbb14610403578063bc3371821461043f578063bf474bed14610467578063c9567bf914610491578063dd62ed3e146104a75761013f565b8063715018a61461032f578063751039fc146103455780637d1db4a51461035b5780638da5cb5b146103855780638f9a55c0146103af5761013f565b806318160ddd116100fc57806318160ddd1461022557806323b872dd1461024f578063313ce5671461028b5780634fab9e4c146102b55780635d0044ca146102cb57806370a08231146102f35761013f565b806306fdde0314610143578063095ea7b31461016d5780630b7640b8146101a95780630b78f9c0146101d35780630faee56f146101fb5761013f565b3661013f57005b5f80fd5b34801561014e575f80fd5b506101576104e3565b604051610164919061251d565b60405180910390f35b348015610178575f80fd5b50610193600480360381019061018e91906125ce565b610520565b6040516101a09190612626565b60405180910390f35b3480156101b4575f80fd5b506101bd61053d565b6040516101ca919061264e565b60405180910390f35b3480156101de575f80fd5b506101f960048036038101906101f49190612667565b61055c565b005b348015610206575f80fd5b5061020f610775565b60405161021c919061264e565b60405180910390f35b348015610230575f80fd5b5061023961077b565b604051610246919061264e565b60405180910390f35b34801561025a575f80fd5b50610275600480360381019061027091906126a5565b61079e565b6040516102829190612626565b60405180910390f35b348015610296575f80fd5b5061029f610872565b6040516102ac9190612710565b60405180910390f35b3480156102c0575f80fd5b506102c961087a565b005b3480156102d6575f80fd5b506102f160048036038101906102ec9190612729565b610dbe565b005b3480156102fe575f80fd5b5061031960048036038101906103149190612754565b610e5c565b604051610326919061264e565b60405180910390f35b34801561033a575f80fd5b50610343610ea2565b005b348015610350575f80fd5b50610359610ff0565b005b348015610366575f80fd5b5061036f61111f565b60405161037c919061264e565b60405180910390f35b348015610390575f80fd5b50610399611125565b6040516103a6919061278e565b60405180910390f35b3480156103ba575f80fd5b506103c361114c565b6040516103d0919061264e565b60405180910390f35b3480156103e4575f80fd5b506103ed611152565b6040516103fa919061251d565b60405180910390f35b34801561040e575f80fd5b50610429600480360381019061042491906125ce565b61118f565b6040516104369190612626565b60405180910390f35b34801561044a575f80fd5b5061046560048036038101906104609190612729565b6111ac565b005b348015610472575f80fd5b5061047b61124a565b604051610488919061264e565b60405180910390f35b34801561049c575f80fd5b506104a5611269565b005b3480156104b2575f80fd5b506104cd60048036038101906104c891906127a7565b6113d9565b6040516104da919061264e565b60405180910390f35b60606040518060400160405280600881526020017f307853545245414d000000000000000000000000000000000000000000000000815250905090565b5f61053361052c61145b565b8484611462565b6001905092915050565b6012600a61054b9190612941565b62030d40610559919061298b565b81565b61056461145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105e790612a16565b60405180910390fd5b601e82111580156106025750601e8111155b80156106195750600e5f9054906101000a900460ff165b610658576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161064f90612a7e565b60405180910390fd5b81600781905550806008819055505f6005600854116106b2576106ad60646012600a6106849190612941565b633b9aca00610693919061298b565b600161069f919061298b565b6115f090919063ffffffff16565b6106f5565b6106ef6103e86012600a6106c69190612941565b633b9aca006106d5919061298b565b60056106e1919061298b565b6115f090919063ffffffff16565b600b8190555b90507f29ddd482d71f6b4ad9a6b3978c21b2aa56a029d1de02646578471e24a465cb4583836107576103e86012600a61072e9190612941565b633b9aca0061073d919061298b565b6005610749919061298b565b6115f090919063ffffffff16565b841460405161076893929190612a9c565b60405180910390a1505050565b600b5481565b5f6012600a61078a9190612941565b633b9aca00610799919061298b565b905090565b5f6107aa848484611639565b610867846107b661145b565b610862856040518060600160405280602881526020016133af6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61081961145b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611fe09092919063ffffffff16565b611462565b600190509392505050565b5f6012905090565b61088261145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090590612a16565b60405180910390fd5b600e5f9054906101000a900460ff161561095d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095490612b1b565b60405180910390fd5b5f6109bb6109a4606461099660196012600a6109799190612941565b633b9aca00610988919061298b565b61204290919063ffffffff16565b6115f090919063ffffffff16565b6109ad30610e5c565b6120b990919063ffffffff16565b9050737a250d5630b4cf539739df2c5dacb4c659f2488d60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610a593060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166012600a610a459190612941565b633b9aca00610a54919061298b565b611462565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ac3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ae79190612b4d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b6d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b919190612b4d565b6040518363ffffffff1660e01b8152600401610bae929190612b78565b6020604051808303815f875af1158015610bca573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bee9190612b4d565b60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730845f80610c7761145b565b426040518863ffffffff1660e01b8152600401610c9996959493929190612be1565b60606040518083038185885af1158015610cb5573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610cda9190612c54565b50505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b360065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401610d7a929190612ca4565b6020604051808303815f875af1158015610d96573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dba9190612cf5565b5050565b610dc661145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4990612a16565b60405180910390fd5b80600d8190555050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610eaa61145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2d90612a16565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610ff861145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107b90612a16565b60405180910390fd5b6012600a6110929190612941565b633b9aca006110a1919061298b565b600c819055506012600a6110b59190612941565b633b9aca006110c4919061298b565b600d819055507f69ada53addde5123341ce3a822c5f66292103b2771e41e1f3c00c2de8a63a7f96012600a6110f99190612941565b633b9aca00611108919061298b565b604051611115919061264e565b60405180910390a1565b600c5481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600d5481565b60606040518060400160405280600981526020017f24307853545245414d0000000000000000000000000000000000000000000000815250905090565b5f6111a261119b61145b565b8484611639565b6001905092915050565b6111b461145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611240576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123790612a16565b60405180910390fd5b80600c8190555050565b6012600a6112589190612941565b621e8480611266919061298b565b81565b61127161145b565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f490612a16565b60405180910390fd5b600e5f9054906101000a900460ff161561134c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134390612d6a565b60405180910390fd5b6001600e60026101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff0219169083151502179055507f41a09f17206aad1ccd4bae176b5c5e0b2154e569947545c9019e6bb0cb4ef59c600e5f9054906101000a900460ff16600e60029054906101000a900460ff166040516113cf929190612d88565b60405180910390a1565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156114ca57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611509576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150090612df9565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516115e3919061264e565b60405180910390a3505050565b5f61163183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612102565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156116a157505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b6116e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d790612e61565b60405180910390fd5b5f8111611722576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171990612eef565b60405180910390fd5b5f61172b611125565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156117995750611769611125565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611d3057600e5f9054906101000a900460ff1661188c5760035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168061184c575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b61188b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188290612f57565b60405180910390fd5b5b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611935575060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b8015611988575060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611a4257600c548211156119d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c990612fbf565b60405180910390fd5b600d54826119df85610e5c565b6119e99190612fdd565b1115611a2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a219061305a565b60405180910390fd5b60095f815480929190611a3c90613078565b91905055505b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611aca57503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611b1057611b096064611afb602d60095411611ae8576019611aec565b6008545b8561204290919063ffffffff16565b6115f090919063ffffffff16565b9050611bdb565b60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611b9857503073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611bda57611bd76064611bc9602360095411611bb6576019611bba565b6007545b8561204290919063ffffffff16565b6115f090919063ffffffff16565b90505b5b80600a5f828254611bec9190612fdd565b925050819055505f611bfd30610e5c565b9050600e60019054906101000a900460ff16158015611c68575060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b8015611c805750600e60029054906101000a900460ff165b8015611ca657506012600a611c959190612941565b621e8480611ca3919061298b565b81115b8015611cb457506028600954115b8015611cdc57506012600a611cc99190612941565b62030d40611cd7919061298b565b600a54115b15611d2e575f600b548211611cf15781611cf5565b600b545b9050611d0e818511611d075784611d09565b815b612163565b5f4790505f811115611d2457611d23476123ce565b5b5f600a8190555050505b505b5f811115611e2f57611d888160015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461243690919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611e26919061264e565b60405180910390a35b611e7f8260015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546120b990919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550611f22611ed682846120b990919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461243690919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611fc584866120b990919063ffffffff16565b604051611fd2919061264e565b60405180910390a350505050565b5f838311158290612027576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201e919061251d565b60405180910390fd5b505f838561203591906130bf565b9050809150509392505050565b5f808303612052575f90506120b3565b5f828461205f919061298b565b905082848261206e919061311f565b146120ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120a5906131bf565b60405180910390fd5b809150505b92915050565b5f6120fa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611fe0565b905092915050565b5f8083118290612148576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161213f919061251d565b60405180910390fd5b505f8385612156919061311f565b9050809150509392505050565b6001600e60016101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561219a576121996131dd565b5b6040519080825280602002602001820160405280156121c85781602001602082028036833780820191505090505b50905030815f815181106121df576121de61320a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015612283573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122a79190612b4d565b816001815181106122bb576122ba61320a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506123213060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611462565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016123839594939291906132ee565b5f604051808303815f87803b15801561239a575f80fd5b505af11580156123ac573d5f803e3d5ffd5b50505050505f600e60016101000a81548160ff02191690831515021790555050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015612432573d5f803e3d5ffd5b5050565b5f8082846124449190612fdd565b905083811015612489576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161248090613390565b60405180910390fd5b8091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156124ca5780820151818401526020810190506124af565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6124ef82612493565b6124f9818561249d565b93506125098185602086016124ad565b612512816124d5565b840191505092915050565b5f6020820190508181035f83015261253581846124e5565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61256a82612541565b9050919050565b61257a81612560565b8114612584575f80fd5b50565b5f8135905061259581612571565b92915050565b5f819050919050565b6125ad8161259b565b81146125b7575f80fd5b50565b5f813590506125c8816125a4565b92915050565b5f80604083850312156125e4576125e361253d565b5b5f6125f185828601612587565b9250506020612602858286016125ba565b9150509250929050565b5f8115159050919050565b6126208161260c565b82525050565b5f6020820190506126395f830184612617565b92915050565b6126488161259b565b82525050565b5f6020820190506126615f83018461263f565b92915050565b5f806040838503121561267d5761267c61253d565b5b5f61268a858286016125ba565b925050602061269b858286016125ba565b9150509250929050565b5f805f606084860312156126bc576126bb61253d565b5b5f6126c986828701612587565b93505060206126da86828701612587565b92505060406126eb868287016125ba565b9150509250925092565b5f60ff82169050919050565b61270a816126f5565b82525050565b5f6020820190506127235f830184612701565b92915050565b5f6020828403121561273e5761273d61253d565b5b5f61274b848285016125ba565b91505092915050565b5f602082840312156127695761276861253d565b5b5f61277684828501612587565b91505092915050565b61278881612560565b82525050565b5f6020820190506127a15f83018461277f565b92915050565b5f80604083850312156127bd576127bc61253d565b5b5f6127ca85828601612587565b92505060206127db85828601612587565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561286757808604811115612843576128426127e5565b5b60018516156128525780820291505b808102905061286085612812565b9450612827565b94509492505050565b5f8261287f576001905061293a565b8161288c575f905061293a565b81600181146128a257600281146128ac576128db565b600191505061293a565b60ff8411156128be576128bd6127e5565b5b8360020a9150848211156128d5576128d46127e5565b5b5061293a565b5060208310610133831016604e8410600b84101617156129105782820a90508381111561290b5761290a6127e5565b5b61293a565b61291d848484600161281e565b92509050818404811115612934576129336127e5565b5b81810290505b9392505050565b5f61294b8261259b565b9150612956836126f5565b92506129837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612870565b905092915050565b5f6129958261259b565b91506129a08361259b565b92508282026129ae8161259b565b915082820484148315176129c5576129c46127e5565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f612a0060208361249d565b9150612a0b826129cc565b602082019050919050565b5f6020820190508181035f830152612a2d816129f4565b9050919050565b7f457863656564732076616c7565000000000000000000000000000000000000005f82015250565b5f612a68600d8361249d565b9150612a7382612a34565b602082019050919050565b5f6020820190508181035f830152612a9581612a5c565b9050919050565b5f606082019050612aaf5f83018661263f565b612abc602083018561263f565b612ac96040830184612617565b949350505050565b7f696e697420616c72656164792063616c6c6564000000000000000000000000005f82015250565b5f612b0560138361249d565b9150612b1082612ad1565b602082019050919050565b5f6020820190508181035f830152612b3281612af9565b9050919050565b5f81519050612b4781612571565b92915050565b5f60208284031215612b6257612b6161253d565b5b5f612b6f84828501612b39565b91505092915050565b5f604082019050612b8b5f83018561277f565b612b98602083018461277f565b9392505050565b5f819050919050565b5f819050919050565b5f612bcb612bc6612bc184612b9f565b612ba8565b61259b565b9050919050565b612bdb81612bb1565b82525050565b5f60c082019050612bf45f83018961277f565b612c01602083018861263f565b612c0e6040830187612bd2565b612c1b6060830186612bd2565b612c28608083018561277f565b612c3560a083018461263f565b979650505050505050565b5f81519050612c4e816125a4565b92915050565b5f805f60608486031215612c6b57612c6a61253d565b5b5f612c7886828701612c40565b9350506020612c8986828701612c40565b9250506040612c9a86828701612c40565b9150509250925092565b5f604082019050612cb75f83018561277f565b612cc4602083018461263f565b9392505050565b612cd48161260c565b8114612cde575f80fd5b50565b5f81519050612cef81612ccb565b92915050565b5f60208284031215612d0a57612d0961253d565b5b5f612d1784828501612ce1565b91505092915050565b7f74726164696e6720616c7265616479206f70656e0000000000000000000000005f82015250565b5f612d5460148361249d565b9150612d5f82612d20565b602082019050919050565b5f6020820190508181035f830152612d8181612d48565b9050919050565b5f604082019050612d9b5f830185612617565b612da86020830184612617565b9392505050565b7f45524332303a20617070726f766520746865207a65726f2061646472657373005f82015250565b5f612de3601f8361249d565b9150612dee82612daf565b602082019050919050565b5f6020820190508181035f830152612e1081612dd7565b9050919050565b7f45524332303a207472616e7366657220746865207a65726f20616464726573735f82015250565b5f612e4b60208361249d565b9150612e5682612e17565b602082019050919050565b5f6020820190508181035f830152612e7881612e3f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612ed960298361249d565b9150612ee482612e7f565b604082019050919050565b5f6020820190508181035f830152612f0681612ecd565b9050919050565b7f74726164696e67206e6f7420796574206f70656e0000000000000000000000005f82015250565b5f612f4160148361249d565b9150612f4c82612f0d565b602082019050919050565b5f6020820190508181035f830152612f6e81612f35565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e000000000000005f82015250565b5f612fa960198361249d565b9150612fb482612f75565b602082019050919050565b5f6020820190508181035f830152612fd681612f9d565b9050919050565b5f612fe78261259b565b9150612ff28361259b565b925082820190508082111561300a576130096127e5565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e0000000000005f82015250565b5f613044601a8361249d565b915061304f82613010565b602082019050919050565b5f6020820190508181035f83015261307181613038565b9050919050565b5f6130828261259b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036130b4576130b36127e5565b5b600182019050919050565b5f6130c98261259b565b91506130d48361259b565b92508282039050818111156130ec576130eb6127e5565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131298261259b565b91506131348361259b565b925082613144576131436130f2565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f6131a960218361249d565b91506131b48261314f565b604082019050919050565b5f6020820190508181035f8301526131d68161319d565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61326981612560565b82525050565b5f61327a8383613260565b60208301905092915050565b5f602082019050919050565b5f61329c82613237565b6132a68185613241565b93506132b183613251565b805f5b838110156132e15781516132c8888261326f565b97506132d383613286565b9250506001810190506132b4565b5085935050505092915050565b5f60a0820190506133015f83018861263f565b61330e6020830187612bd2565b81810360408301526133208186613292565b905061332f606083018561277f565b61333c608083018461263f565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61337a601b8361249d565b915061338582613346565b602082019050919050565b5f6020820190508181035f8301526133a78161336e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c98618387a3a00f5eb5fde63960ff4572b0b3f0b762ed3a08ee95fcae8ae034564736f6c63430008150033

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

00000000000000000000000057296950b232a08afa426249957ddc09fec2db63

-----Decoded View---------------
Arg [0] : feeWallet (address): 0x57296950B232A08AFA426249957DdC09feC2DB63

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000057296950b232a08afa426249957ddc09fec2db63


Deployed Bytecode Sourcemap

4172:9645:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6266:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7172:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5215:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13311:466;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5358:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6543:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7373:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6452:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11766:921;;;;;;;;;;;;;:::i;:::-;;13192:111;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6646:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3124:148;;;;;;;;;;;;;:::i;:::-;;12922:153;;;;;;;;;;;;;:::i;:::-;;5418:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2910:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5479:56;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6357:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6773:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13083:101;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5284:67;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12695:219;;;;;;;;;;;;;:::i;:::-;;6980:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6266:83;6303:13;6336:5;;;;;;;;;;;;;;;;;6329:12;;6266:83;:::o;7172:193::-;7274:4;7296:39;7305:12;:10;:12::i;:::-;7319:7;7328:6;7296:8;:39::i;:::-;7353:4;7346:11;;7172:193;;;;:::o;5215:62::-;5138:2;5264;:13;;;;:::i;:::-;5255:6;:22;;;;:::i;:::-;5215:62;:::o;13311:466::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13419:2:::1;13406:9;:15;;:35;;;;;13439:2;13425:10;:16;;13406:35;:50;;;;;13445:11;;;;;;;;;;;13406:50;13397:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;13523:9;13508:12;:24;;;;13559:10;13543:13;:26;;;;13580:18;13617:1;13601:13;;:17;:81;;13661:21;13678:3;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;13662:1;:10;;;;:::i;:::-;13661:16;;:21;;;;:::i;:::-;13601:81;;;13635:22;13652:4;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;13636:1;:10;;;;:::i;:::-;13635:16;;:22;;;;:::i;:::-;13621:11;:36;;;13601:81;13580:102;;13698:71;13707:9;13718:10;13745:22;13762:4;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;13746:1;:10;;;;:::i;:::-;13745:16;;:22;;;;:::i;:::-;13731:10;:36;13698:71;;;;;;;;:::i;:::-;;;;;;;;13386:391;13311:466:::0;;:::o;5358:53::-;;;;:::o;6543:95::-;6596:7;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;6616:14;;6543:95;:::o;7373:446::-;7505:4;7522:36;7532:6;7540:9;7551:6;7522:9;:36::i;:::-;7569:220;7592:6;7613:12;:10;:12::i;:::-;7640:138;7696:6;7640:138;;;;;;;;;;;;;;;;;:11;:19;7652:6;7640:19;;;;;;;;;;;;;;;:33;7660:12;:10;:12::i;:::-;7640:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7569:8;:220::i;:::-;7807:4;7800:11;;7373:446;;;;;:::o;6452:83::-;6493:5;5138:2;6511:16;;6452:83;:::o;11766:921::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11831:11:::1;;;;;;;;;;;11830:12;11822:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;11877:19;11899:90;11942:36;11974:3;11942:27;4614:2;5138;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;11942:11;;:27;;;;:::i;:::-;:31;;:36;;;;:::i;:::-;11899:24;11917:4;11899:9;:24::i;:::-;:28;;:90;;;;:::i;:::-;11877:112;;12051:42;12000:15;;:104;;;;;;;;;;;;;;;;;;12115:58;12132:4;12147:15;;;;;;;;;;;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;12115:8;:58::i;:::-;12218:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12200:55;;;12278:4;12298:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12200:131;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12184:13;;:147;;;;;;;;;;;;;;;;;;12342:15;;;;;;;;;;;:31;;;12381:21;12426:4;12446:11;12472:1;12488::::0;12504:12:::1;:10;:12::i;:::-;12531:15;12342:215;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12575:13;;;;;;;;;;;12568:29;;;12620:15;;;;;;;;;;;12651:17;12568:111;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11811:876;11766:921::o:0;13192:111::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13282:13:::1;13265:14;:30;;;;13192:111:::0;:::o;6646:119::-;6712:7;6739:9;:18;6749:7;6739:18;;;;;;;;;;;;;;;;6732:25;;6646:119;;;:::o;3124:148::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3231:1:::1;3194:40;;3215:6;::::0;::::1;;;;;;;;3194:40;;;;;;;;;;;;3262:1;3245:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3124:148::o:0;12922:153::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5138:2:::1;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;12976:12;:22;;;;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;13009:14;:24;;;;13049:18;5138:2;5195;:13;;;;:::i;:::-;5182:10;:26;;;;:::i;:::-;13049:18;;;;;;:::i;:::-;;;;;;;;12922:153::o:0;5418:54::-;;;;:::o;2910:79::-;2948:7;2975:6;;;;;;;;;;;2968:13;;2910:79;:::o;5479:56::-;;;;:::o;6357:87::-;6396:13;6429:7;;;;;;;;;;;;;;;;;6422:14;;6357:87;:::o;6773:199::-;6878:4;6900:42;6910:12;:10;:12::i;:::-;6924:9;6935:6;6900:9;:42::i;:::-;6960:4;6953:11;;6773:199;;;;:::o;13083:101::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13165:11:::1;13150:12;:26;;;;13083:101:::0;:::o;5284:67::-;5138:2;5338;:13;;;;:::i;:::-;5328:7;:23;;;;:::i;:::-;5284:67;:::o;12695:219::-;3047:12;:10;:12::i;:::-;3037:22;;:6;;;;;;;;;;:22;;;3029:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12757:11:::1;;;;;;;;;;;12756:12;12748:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;12818:4;12804:11;;:18;;;;;;;;;;;;;;;;;;12847:4;12833:11;;:18;;;;;;;;;;;;;;;;;;12867:39;12881:11;;;;;;;;;;;12894;;;;;;;;;;;12867:39;;;;;;;:::i;:::-;;;;;;;;12695:219::o:0;6980:184::-;7097:7;7129:11;:18;7141:5;7129:18;;;;;;;;;;;;;;;:27;7148:7;7129:27;;;;;;;;;;;;;;;;7122:34;;6980:184;;;;:::o;450:98::-;503:7;530:10;523:17;;450:98;:::o;7827:347::-;7985:1;7968:19;;:5;:19;;;;:44;;;;;8010:1;7991:21;;:7;:21;;;;7968:44;7946:125;;;;;;;;;;;;:::i;:::-;;;;;;;;;8112:6;8082:11;:18;8094:5;8082:18;;;;;;;;;;;;;;;:27;8101:7;8082:27;;;;;;;;;;;;;;;:36;;;;8150:7;8134:32;;8143:5;8134:32;;;8159:6;8134:32;;;;;;:::i;:::-;;;;;;;;7827:347;;;:::o;2198:132::-;2256:7;2283:39;2287:1;2290;2283:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2276:46;;2198:132;;;;:::o;8182:2985::-;8334:1;8318:18;;:4;:18;;;;:38;;;;;8354:1;8340:16;;:2;:16;;;;8318:38;8296:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;8444:1;8435:6;:10;8427:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8502:17;8548:7;:5;:7::i;:::-;8540:15;;:4;:15;;;;:32;;;;;8565:7;:5;:7::i;:::-;8559:13;;:2;:13;;;;8540:32;8536:2260;;;8594:11;;;;;;;;;;;8589:197;;8656:18;:22;8675:2;8656:22;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;8682:18;:24;8701:4;8682:24;;;;;;;;;;;;;;;;;;;;;;;;;8656:50;8626:144;;;;;;;;;;;;:::i;:::-;;;;;;;;;8589:197;8832:13;;;;;;;;;;;8824:21;;:4;:21;;;:72;;;;;8880:15;;;;;;;;;;;8866:30;;:2;:30;;;;8824:72;:116;;;;;8918:18;:22;8937:2;8918:22;;;;;;;;;;;;;;;;;;;;;;;;;8917:23;8824:116;8802:438;;;8993:12;;8983:6;:22;;8975:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;9110:14;;9100:6;9084:13;9094:2;9084:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;9054:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;9213:9;;:11;;;;;;;;;:::i;:::-;;;;;;8802:438;9266:13;;;;;;;;;;;9260:19;;:2;:19;;;:44;;;;;9299:4;9283:21;;:4;:21;;;;9260:44;9256:667;;;9337:235;9568:3;9337:204;4771:2;9397:9;;:28;9396:122;;4666:2;9396:122;;;9458:13;;9396:122;9337:6;:32;;:204;;;;:::i;:::-;:230;;:235;;;;:::i;:::-;9325:247;;9256:667;;;9606:13;;;;;;;;;;;9598:21;;:4;:21;;;:44;;;;;9637:4;9623:19;;:2;:19;;;;9598:44;9594:329;;;9675:232;9903:3;9675:201;4718:2;9735:9;;:27;9734:119;;4614:2;9734:119;;;9795:12;;9734:119;9675:6;:32;;:201;;;;:::i;:::-;:227;;:232;;;;:::i;:::-;9663:244;;9594:329;9256:667;9952:9;9939;;:22;;;;;;;:::i;:::-;;;;;;;;9976:28;10007:24;10025:4;10007:9;:24::i;:::-;9976:55;;10069:6;;;;;;;;;;;10068:7;:47;;;;;10102:13;;;;;;;;;;;10096:19;;:2;:19;;;10068:47;:79;;;;;10136:11;;;;;;;;;;;10068:79;:140;;;;;5138:2;5338;:13;;;;:::i;:::-;5328:7;:23;;;;:::i;:::-;10168:20;:40;10068:140;:191;;;;;4826:2;10229:9;;:30;10068:191;:237;;;;;5138:2;5264;:13;;;;:::i;:::-;5255:6;:22;;;;:::i;:::-;10280:9;;:25;10068:237;10046:739;;;10340:14;10381:11;;10358:20;:34;10357:115;;10452:20;10357:115;;;10417:11;;10357:115;10340:132;;10491:53;10518:6;10509;:15;10508:35;;10537:6;10508:35;;;10528:6;10508:35;10491:16;:53::i;:::-;10563:26;10592:21;10563:50;;10657:1;10636:18;:22;10632:106;;;10683:35;10696:21;10683:12;:35::i;:::-;10632:106;10768:1;10756:9;:13;;;;10321:464;;10046:739;8574:2222;8536:2260;10824:1;10812:9;:13;10808:172;;;10869:39;10898:9;10869;:24;10887:4;10869:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10842:9;:24;10860:4;10842:24;;;;;;;;;;;;;;;:66;;;;10951:4;10928:40;;10937:4;10928:40;;;10958:9;10928:40;;;;;;:::i;:::-;;;;;;;;10808:172;11008:27;11028:6;11008:9;:15;11018:4;11008:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;10990:9;:15;11000:4;10990:15;;;;;;;;;;;;;;;:45;;;;11062:40;11080:21;11091:9;11080:6;:10;;:21;;;;:::i;:::-;11062:9;:13;11072:2;11062:13;;;;;;;;;;;;;;;;:17;;:40;;;;:::i;:::-;11046:9;:13;11056:2;11046:13;;;;;;;;;;;;;;;:56;;;;11133:2;11118:41;;11127:4;11118:41;;;11137:21;11148:9;11137:6;:10;;:21;;;;:::i;:::-;11118:41;;;;;;:::i;:::-;;;;;;;;8285:2882;8182:2985;;;:::o;1712:224::-;1832:7;1865:1;1860;:6;;1868:12;1852:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1892:9;1908:1;1904;:5;;;;:::i;:::-;1892:17;;1927:1;1920:8;;;1712:224;;;;;:::o;1944:246::-;2002:7;2031:1;2026;:6;2022:47;;2056:1;2049:8;;;;2022:47;2079:9;2095:1;2091;:5;;;;:::i;:::-;2079:17;;2124:1;2119;2115;:5;;;;:::i;:::-;:10;2107:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2181:1;2174:8;;;1944:246;;;;;:::o;1568:136::-;1626:7;1653:43;1657:1;1660;1653:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1646:50;;1568:136;;;;:::o;2338:223::-;2458:7;2490:1;2486;:5;2493:12;2478:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2517:9;2533:1;2529;:5;;;;:::i;:::-;2517:17;;2552:1;2545:8;;;2338:223;;;;;:::o;11275:483::-;5871:4;5862:6;;:13;;;;;;;;;;;;;;;;;;11353:21:::1;11391:1;11377:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11353:40;;11422:4;11404;11409:1;11404:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;11448:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11438:4;11443:1;11438:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;11481:62;11498:4;11513:15;;;;;;;;;;;11531:11;11481:8;:62::i;:::-;11554:15;;;;;;;;;;;:66;;;11635:11;11661:1;11677:4;11704;11724:15;11554:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11342:416;5907:5:::0;5898:6;;:14;;;;;;;;;;;;;;;;;;11275:483;:::o;11175:92::-;11232:10;;;;;;;;;;;:19;;:27;11252:6;11232:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11175:92;:::o;1381:179::-;1439:7;1459:9;1475:1;1471;:5;;;;:::i;:::-;1459:17;;1500:1;1495;:6;;1487:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1551:1;1544:8;;;1381:179;;;;:::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:474::-;3866:6;3874;3923:2;3911:9;3902:7;3898:23;3894:32;3891:119;;;3929:79;;:::i;:::-;3891:119;4049:1;4074:53;4119:7;4110:6;4099:9;4095:22;4074:53;:::i;:::-;4064:63;;4020:117;4176:2;4202:53;4247:7;4238:6;4227:9;4223:22;4202:53;:::i;:::-;4192:63;;4147:118;3798:474;;;;;:::o;4278:619::-;4355:6;4363;4371;4420:2;4408:9;4399:7;4395:23;4391:32;4388:119;;;4426:79;;:::i;:::-;4388:119;4546:1;4571:53;4616:7;4607:6;4596:9;4592:22;4571:53;:::i;:::-;4561:63;;4517:117;4673:2;4699:53;4744:7;4735:6;4724:9;4720:22;4699:53;:::i;:::-;4689:63;;4644:118;4801:2;4827:53;4872:7;4863:6;4852:9;4848:22;4827:53;:::i;:::-;4817:63;;4772:118;4278:619;;;;;:::o;4903:86::-;4938:7;4978:4;4971:5;4967:16;4956:27;;4903:86;;;:::o;4995:112::-;5078:22;5094:5;5078:22;:::i;:::-;5073:3;5066:35;4995:112;;:::o;5113:214::-;5202:4;5240:2;5229:9;5225:18;5217:26;;5253:67;5317:1;5306:9;5302:17;5293:6;5253:67;:::i;:::-;5113:214;;;;:::o;5333:329::-;5392:6;5441:2;5429:9;5420:7;5416:23;5412:32;5409:119;;;5447:79;;:::i;:::-;5409:119;5567:1;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5538:117;5333:329;;;;:::o;5668:::-;5727:6;5776:2;5764:9;5755:7;5751:23;5747:32;5744:119;;;5782:79;;:::i;:::-;5744:119;5902:1;5927:53;5972:7;5963:6;5952:9;5948:22;5927:53;:::i;:::-;5917:63;;5873:117;5668:329;;;;:::o;6003:118::-;6090:24;6108:5;6090:24;:::i;:::-;6085:3;6078:37;6003:118;;:::o;6127:222::-;6220:4;6258:2;6247:9;6243:18;6235:26;;6271:71;6339:1;6328:9;6324:17;6315:6;6271:71;:::i;:::-;6127:222;;;;:::o;6355:474::-;6423:6;6431;6480:2;6468:9;6459:7;6455:23;6451:32;6448:119;;;6486:79;;:::i;:::-;6448:119;6606:1;6631:53;6676:7;6667:6;6656:9;6652:22;6631:53;:::i;:::-;6621:63;;6577:117;6733:2;6759:53;6804:7;6795:6;6784:9;6780:22;6759:53;:::i;:::-;6749:63;;6704:118;6355:474;;;;;:::o;6835:180::-;6883:77;6880:1;6873:88;6980:4;6977:1;6970:15;7004:4;7001:1;6994:15;7021:102;7063:8;7110:5;7107:1;7103:13;7082:34;;7021:102;;;:::o;7129:848::-;7190:5;7197:4;7221:6;7212:15;;7245:5;7236:14;;7259:712;7280:1;7270:8;7267:15;7259:712;;;7375:4;7370:3;7366:14;7360:4;7357:24;7354:50;;;7384:18;;:::i;:::-;7354:50;7434:1;7424:8;7420:16;7417:451;;;7849:4;7842:5;7838:16;7829:25;;7417:451;7899:4;7893;7889:15;7881:23;;7929:32;7952:8;7929:32;:::i;:::-;7917:44;;7259:712;;;7129:848;;;;;;;:::o;7983:1073::-;8037:5;8228:8;8218:40;;8249:1;8240:10;;8251:5;;8218:40;8277:4;8267:36;;8294:1;8285:10;;8296:5;;8267:36;8363:4;8411:1;8406:27;;;;8447:1;8442:191;;;;8356:277;;8406:27;8424:1;8415:10;;8426:5;;;8442:191;8487:3;8477:8;8474:17;8471:43;;;8494:18;;:::i;:::-;8471:43;8543:8;8540:1;8536:16;8527:25;;8578:3;8571:5;8568:14;8565:40;;;8585:18;;:::i;:::-;8565:40;8618:5;;;8356:277;;8742:2;8732:8;8729:16;8723:3;8717:4;8714:13;8710:36;8692:2;8682:8;8679:16;8674:2;8668:4;8665:12;8661:35;8645:111;8642:246;;;8798:8;8792:4;8788:19;8779:28;;8833:3;8826:5;8823:14;8820:40;;;8840:18;;:::i;:::-;8820:40;8873:5;;8642:246;8913:42;8951:3;8941:8;8935:4;8932:1;8913:42;:::i;:::-;8898:57;;;;8987:4;8982:3;8978:14;8971:5;8968:25;8965:51;;;8996:18;;:::i;:::-;8965:51;9045:4;9038:5;9034:16;9025:25;;7983:1073;;;;;;:::o;9062:281::-;9120:5;9144:23;9162:4;9144:23;:::i;:::-;9136:31;;9188:25;9204:8;9188:25;:::i;:::-;9176:37;;9232:104;9269:66;9259:8;9253:4;9232:104;:::i;:::-;9223:113;;9062:281;;;;:::o;9349:410::-;9389:7;9412:20;9430:1;9412:20;:::i;:::-;9407:25;;9446:20;9464:1;9446:20;:::i;:::-;9441:25;;9501:1;9498;9494:9;9523:30;9541:11;9523:30;:::i;:::-;9512:41;;9702:1;9693:7;9689:15;9686:1;9683:22;9663:1;9656:9;9636:83;9613:139;;9732:18;;:::i;:::-;9613:139;9397:362;9349:410;;;;:::o;9765:182::-;9905:34;9901:1;9893:6;9889:14;9882:58;9765:182;:::o;9953:366::-;10095:3;10116:67;10180:2;10175:3;10116:67;:::i;:::-;10109:74;;10192:93;10281:3;10192:93;:::i;:::-;10310:2;10305:3;10301:12;10294:19;;9953:366;;;:::o;10325:419::-;10491:4;10529:2;10518:9;10514:18;10506:26;;10578:9;10572:4;10568:20;10564:1;10553:9;10549:17;10542:47;10606:131;10732:4;10606:131;:::i;:::-;10598:139;;10325:419;;;:::o;10750:163::-;10890:15;10886:1;10878:6;10874:14;10867:39;10750:163;:::o;10919:366::-;11061:3;11082:67;11146:2;11141:3;11082:67;:::i;:::-;11075:74;;11158:93;11247:3;11158:93;:::i;:::-;11276:2;11271:3;11267:12;11260:19;;10919:366;;;:::o;11291:419::-;11457:4;11495:2;11484:9;11480:18;11472:26;;11544:9;11538:4;11534:20;11530:1;11519:9;11515:17;11508:47;11572:131;11698:4;11572:131;:::i;:::-;11564:139;;11291:419;;;:::o;11716:430::-;11859:4;11897:2;11886:9;11882:18;11874:26;;11910:71;11978:1;11967:9;11963:17;11954:6;11910:71;:::i;:::-;11991:72;12059:2;12048:9;12044:18;12035:6;11991:72;:::i;:::-;12073:66;12135:2;12124:9;12120:18;12111:6;12073:66;:::i;:::-;11716:430;;;;;;:::o;12152:169::-;12292:21;12288:1;12280:6;12276:14;12269:45;12152:169;:::o;12327:366::-;12469:3;12490:67;12554:2;12549:3;12490:67;:::i;:::-;12483:74;;12566:93;12655:3;12566:93;:::i;:::-;12684:2;12679:3;12675:12;12668:19;;12327:366;;;:::o;12699:419::-;12865:4;12903:2;12892:9;12888:18;12880:26;;12952:9;12946:4;12942:20;12938:1;12927:9;12923:17;12916:47;12980:131;13106:4;12980:131;:::i;:::-;12972:139;;12699:419;;;:::o;13124:143::-;13181:5;13212:6;13206:13;13197:22;;13228:33;13255:5;13228:33;:::i;:::-;13124:143;;;;:::o;13273:351::-;13343:6;13392:2;13380:9;13371:7;13367:23;13363:32;13360:119;;;13398:79;;:::i;:::-;13360:119;13518:1;13543:64;13599:7;13590:6;13579:9;13575:22;13543:64;:::i;:::-;13533:74;;13489:128;13273:351;;;;:::o;13630:332::-;13751:4;13789:2;13778:9;13774:18;13766:26;;13802:71;13870:1;13859:9;13855:17;13846:6;13802:71;:::i;:::-;13883:72;13951:2;13940:9;13936:18;13927:6;13883:72;:::i;:::-;13630:332;;;;;:::o;13968:85::-;14013:7;14042:5;14031:16;;13968:85;;;:::o;14059:60::-;14087:3;14108:5;14101:12;;14059:60;;;:::o;14125:158::-;14183:9;14216:61;14234:42;14243:32;14269:5;14243:32;:::i;:::-;14234:42;:::i;:::-;14216:61;:::i;:::-;14203:74;;14125:158;;;:::o;14289:147::-;14384:45;14423:5;14384:45;:::i;:::-;14379:3;14372:58;14289:147;;:::o;14442:807::-;14691:4;14729:3;14718:9;14714:19;14706:27;;14743:71;14811:1;14800:9;14796:17;14787:6;14743:71;:::i;:::-;14824:72;14892:2;14881:9;14877:18;14868:6;14824:72;:::i;:::-;14906:80;14982:2;14971:9;14967:18;14958:6;14906:80;:::i;:::-;14996;15072:2;15061:9;15057:18;15048:6;14996:80;:::i;:::-;15086:73;15154:3;15143:9;15139:19;15130:6;15086:73;:::i;:::-;15169;15237:3;15226:9;15222:19;15213:6;15169:73;:::i;:::-;14442:807;;;;;;;;;:::o;15255:143::-;15312:5;15343:6;15337:13;15328:22;;15359:33;15386:5;15359:33;:::i;:::-;15255:143;;;;:::o;15404:663::-;15492:6;15500;15508;15557:2;15545:9;15536:7;15532:23;15528:32;15525:119;;;15563:79;;:::i;:::-;15525:119;15683:1;15708:64;15764:7;15755:6;15744:9;15740:22;15708:64;:::i;:::-;15698:74;;15654:128;15821:2;15847:64;15903:7;15894:6;15883:9;15879:22;15847:64;:::i;:::-;15837:74;;15792:129;15960:2;15986:64;16042:7;16033:6;16022:9;16018:22;15986:64;:::i;:::-;15976:74;;15931:129;15404:663;;;;;:::o;16073:332::-;16194:4;16232:2;16221:9;16217:18;16209:26;;16245:71;16313:1;16302:9;16298:17;16289:6;16245:71;:::i;:::-;16326:72;16394:2;16383:9;16379:18;16370:6;16326:72;:::i;:::-;16073:332;;;;;:::o;16411:116::-;16481:21;16496:5;16481:21;:::i;:::-;16474:5;16471:32;16461:60;;16517:1;16514;16507:12;16461:60;16411:116;:::o;16533:137::-;16587:5;16618:6;16612:13;16603:22;;16634:30;16658:5;16634:30;:::i;:::-;16533:137;;;;:::o;16676:345::-;16743:6;16792:2;16780:9;16771:7;16767:23;16763:32;16760:119;;;16798:79;;:::i;:::-;16760:119;16918:1;16943:61;16996:7;16987:6;16976:9;16972:22;16943:61;:::i;:::-;16933:71;;16889:125;16676:345;;;;:::o;17027:170::-;17167:22;17163:1;17155:6;17151:14;17144:46;17027:170;:::o;17203:366::-;17345:3;17366:67;17430:2;17425:3;17366:67;:::i;:::-;17359:74;;17442:93;17531:3;17442:93;:::i;:::-;17560:2;17555:3;17551:12;17544:19;;17203:366;;;:::o;17575:419::-;17741:4;17779:2;17768:9;17764:18;17756:26;;17828:9;17822:4;17818:20;17814:1;17803:9;17799:17;17792:47;17856:131;17982:4;17856:131;:::i;:::-;17848:139;;17575:419;;;:::o;18000:308::-;18109:4;18147:2;18136:9;18132:18;18124:26;;18160:65;18222:1;18211:9;18207:17;18198:6;18160:65;:::i;:::-;18235:66;18297:2;18286:9;18282:18;18273:6;18235:66;:::i;:::-;18000:308;;;;;:::o;18314:181::-;18454:33;18450:1;18442:6;18438:14;18431:57;18314:181;:::o;18501:366::-;18643:3;18664:67;18728:2;18723:3;18664:67;:::i;:::-;18657:74;;18740:93;18829:3;18740:93;:::i;:::-;18858:2;18853:3;18849:12;18842:19;;18501:366;;;:::o;18873:419::-;19039:4;19077:2;19066:9;19062:18;19054:26;;19126:9;19120:4;19116:20;19112:1;19101:9;19097:17;19090:47;19154:131;19280:4;19154:131;:::i;:::-;19146:139;;18873:419;;;:::o;19298:182::-;19438:34;19434:1;19426:6;19422:14;19415:58;19298:182;:::o;19486:366::-;19628:3;19649:67;19713:2;19708:3;19649:67;:::i;:::-;19642:74;;19725:93;19814:3;19725:93;:::i;:::-;19843:2;19838:3;19834:12;19827:19;;19486:366;;;:::o;19858:419::-;20024:4;20062:2;20051:9;20047:18;20039:26;;20111:9;20105:4;20101:20;20097:1;20086:9;20082:17;20075:47;20139:131;20265:4;20139:131;:::i;:::-;20131:139;;19858:419;;;:::o;20283:228::-;20423:34;20419:1;20411:6;20407:14;20400:58;20492:11;20487:2;20479:6;20475:15;20468:36;20283:228;:::o;20517:366::-;20659:3;20680:67;20744:2;20739:3;20680:67;:::i;:::-;20673:74;;20756:93;20845:3;20756:93;:::i;:::-;20874:2;20869:3;20865:12;20858:19;;20517:366;;;:::o;20889:419::-;21055:4;21093:2;21082:9;21078:18;21070:26;;21142:9;21136:4;21132:20;21128:1;21117:9;21113:17;21106:47;21170:131;21296:4;21170:131;:::i;:::-;21162:139;;20889:419;;;:::o;21314:170::-;21454:22;21450:1;21442:6;21438:14;21431:46;21314:170;:::o;21490:366::-;21632:3;21653:67;21717:2;21712:3;21653:67;:::i;:::-;21646:74;;21729:93;21818:3;21729:93;:::i;:::-;21847:2;21842:3;21838:12;21831:19;;21490:366;;;:::o;21862:419::-;22028:4;22066:2;22055:9;22051:18;22043:26;;22115:9;22109:4;22105:20;22101:1;22090:9;22086:17;22079:47;22143:131;22269:4;22143:131;:::i;:::-;22135:139;;21862:419;;;:::o;22287:175::-;22427:27;22423:1;22415:6;22411:14;22404:51;22287:175;:::o;22468:366::-;22610:3;22631:67;22695:2;22690:3;22631:67;:::i;:::-;22624:74;;22707:93;22796:3;22707:93;:::i;:::-;22825:2;22820:3;22816:12;22809:19;;22468:366;;;:::o;22840:419::-;23006:4;23044:2;23033:9;23029:18;23021:26;;23093:9;23087:4;23083:20;23079:1;23068:9;23064:17;23057:47;23121:131;23247:4;23121:131;:::i;:::-;23113:139;;22840:419;;;:::o;23265:191::-;23305:3;23324:20;23342:1;23324:20;:::i;:::-;23319:25;;23358:20;23376:1;23358:20;:::i;:::-;23353:25;;23401:1;23398;23394:9;23387:16;;23422:3;23419:1;23416:10;23413:36;;;23429:18;;:::i;:::-;23413:36;23265:191;;;;:::o;23462:176::-;23602:28;23598:1;23590:6;23586:14;23579:52;23462:176;:::o;23644:366::-;23786:3;23807:67;23871:2;23866:3;23807:67;:::i;:::-;23800:74;;23883:93;23972:3;23883:93;:::i;:::-;24001:2;23996:3;23992:12;23985:19;;23644:366;;;:::o;24016:419::-;24182:4;24220:2;24209:9;24205:18;24197:26;;24269:9;24263:4;24259:20;24255:1;24244:9;24240:17;24233:47;24297:131;24423:4;24297:131;:::i;:::-;24289:139;;24016:419;;;:::o;24441:233::-;24480:3;24503:24;24521:5;24503:24;:::i;:::-;24494:33;;24549:66;24542:5;24539:77;24536:103;;24619:18;;:::i;:::-;24536:103;24666:1;24659:5;24655:13;24648:20;;24441:233;;;:::o;24680:194::-;24720:4;24740:20;24758:1;24740:20;:::i;:::-;24735:25;;24774:20;24792:1;24774:20;:::i;:::-;24769:25;;24818:1;24815;24811:9;24803:17;;24842:1;24836:4;24833:11;24830:37;;;24847:18;;:::i;:::-;24830:37;24680:194;;;;:::o;24880:180::-;24928:77;24925:1;24918:88;25025:4;25022:1;25015:15;25049:4;25046:1;25039:15;25066:185;25106:1;25123:20;25141:1;25123:20;:::i;:::-;25118:25;;25157:20;25175:1;25157:20;:::i;:::-;25152:25;;25196:1;25186:35;;25201:18;;:::i;:::-;25186:35;25243:1;25240;25236:9;25231:14;;25066:185;;;;:::o;25257:220::-;25397:34;25393:1;25385:6;25381:14;25374:58;25466:3;25461:2;25453:6;25449:15;25442:28;25257:220;:::o;25483:366::-;25625:3;25646:67;25710:2;25705:3;25646:67;:::i;:::-;25639:74;;25722:93;25811:3;25722:93;:::i;:::-;25840:2;25835:3;25831:12;25824:19;;25483:366;;;:::o;25855:419::-;26021:4;26059:2;26048:9;26044:18;26036:26;;26108:9;26102:4;26098:20;26094:1;26083:9;26079:17;26072:47;26136:131;26262:4;26136:131;:::i;:::-;26128:139;;25855:419;;;:::o;26280:180::-;26328:77;26325:1;26318:88;26425:4;26422:1;26415:15;26449:4;26446:1;26439:15;26466:180;26514:77;26511:1;26504:88;26611:4;26608:1;26601:15;26635:4;26632:1;26625:15;26652:114;26719:6;26753:5;26747:12;26737:22;;26652:114;;;:::o;26772:184::-;26871:11;26905:6;26900:3;26893:19;26945:4;26940:3;26936:14;26921:29;;26772:184;;;;:::o;26962:132::-;27029:4;27052:3;27044:11;;27082:4;27077:3;27073:14;27065:22;;26962:132;;;:::o;27100:108::-;27177:24;27195:5;27177:24;:::i;:::-;27172:3;27165:37;27100:108;;:::o;27214:179::-;27283:10;27304:46;27346:3;27338:6;27304:46;:::i;:::-;27382:4;27377:3;27373:14;27359:28;;27214:179;;;;:::o;27399:113::-;27469:4;27501;27496:3;27492:14;27484:22;;27399:113;;;:::o;27548:732::-;27667:3;27696:54;27744:5;27696:54;:::i;:::-;27766:86;27845:6;27840:3;27766:86;:::i;:::-;27759:93;;27876:56;27926:5;27876:56;:::i;:::-;27955:7;27986:1;27971:284;27996:6;27993:1;27990:13;27971:284;;;28072:6;28066:13;28099:63;28158:3;28143:13;28099:63;:::i;:::-;28092:70;;28185:60;28238:6;28185:60;:::i;:::-;28175:70;;28031:224;28018:1;28015;28011:9;28006:14;;27971:284;;;27975:14;28271:3;28264:10;;27672:608;;;27548:732;;;;:::o;28286:831::-;28549:4;28587:3;28576:9;28572:19;28564:27;;28601:71;28669:1;28658:9;28654:17;28645:6;28601:71;:::i;:::-;28682:80;28758:2;28747:9;28743:18;28734:6;28682:80;:::i;:::-;28809:9;28803:4;28799:20;28794:2;28783:9;28779:18;28772:48;28837:108;28940:4;28931:6;28837:108;:::i;:::-;28829:116;;28955:72;29023:2;29012:9;29008:18;28999:6;28955:72;:::i;:::-;29037:73;29105:3;29094:9;29090:19;29081:6;29037:73;:::i;:::-;28286:831;;;;;;;;:::o;29123:177::-;29263:29;29259:1;29251:6;29247:14;29240:53;29123:177;:::o;29306:366::-;29448:3;29469:67;29533:2;29528:3;29469:67;:::i;:::-;29462:74;;29545:93;29634:3;29545:93;:::i;:::-;29663:2;29658:3;29654:12;29647:19;;29306:366;;;:::o;29678:419::-;29844:4;29882:2;29871:9;29867:18;29859:26;;29931:9;29925:4;29921:20;29917:1;29906:9;29902:17;29895:47;29959:131;30085:4;29959:131;:::i;:::-;29951:139;;29678:419;;;:::o

Swarm Source

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

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