ETH Price: $3,174.68 (-8.26%)
Gas: 3 Gwei

Token

Bezos Billions (BB)
 

Overview

Max Total Supply

131,000,000,000 BB

Holders

46

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,119,040,105.194674298 BB

Value
$0.00
0x3ec52292aef4039bcbf00cc10d0dcc4c05676141
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:
BezosBillions

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-07-17
*/

/*

Bezos Billions (BB) 

https://bezosbillions.com
Telegram : https://t.me/bezosbillions

*/

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.8.4;

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
    );
}

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

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

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

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

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

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;
    }
}

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 BezosBillions is Context, IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = "Bezos Billions";
    string private constant _symbol = "BB";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 131000000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    
    uint256 private _taxFee = 1;
    uint256 private _teamFee = 6;

    uint256 private _previousTaxFee = _taxFee;
    uint256 private _previousteamFee = _teamFee;
    
    // Bot detection
    mapping(address => bool) private bots;
    mapping(address => uint256) private cooldown;
    address payable private _teamAddress;
    address payable private _marketingFunds;
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = true;
    uint256 public _maxTxAmount = 1310000000 * 10**9;

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

    constructor(address payable addr1, address payable addr2) {
        _teamAddress = addr1;
        _marketingFunds = addr2;
        _rOwned[_msgSender()] = _rTotal;
        
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_teamAddress] = true;
        _isExcludedFromFee[_marketingFunds] = 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 tokenFromReflection(_rOwned[account]);
    }

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

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

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

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

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

    function removeAllFee() private {
        if (_taxFee == 0 && _teamFee == 0) return;
    
        _previousTaxFee = _taxFee;
        _previousteamFee = _teamFee;
        
        _taxFee = 0;
        _teamFee = 0;
    }

    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _teamFee = _previousteamFee;
    }

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

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

        if (from != owner() && to != owner()) {
            
            //Trade start check
            if (from == uniswapV2Pair || to == uniswapV2Pair) { 
                require(tradingOpen, "Trading is not enabled yet");
            }
              
            require(amount <= _maxTxAmount);
            require(!bots[from] && !bots[to]);
            
            uint256 contractTokenBalance = balanceOf(address(this));
            if(contractTokenBalance >= _maxTxAmount)
            {
                contractTokenBalance = _maxTxAmount;
            }
            
            if (!inSwap && from != uniswapV2Pair && swapEnabled) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        bool takeFee = true;

        if (_isExcludedFromFee[from] || _isExcludedFromFee[to]) {
            takeFee = false;
        }

        _tokenTransfer(from, to, amount, takeFee);
    }

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

    function sendETHToFee(uint256 amount) private {
        _teamAddress.transfer(amount.div(2));
        _marketingFunds.transfer(amount.div(2));
    }

    function startTrading() external onlyOwner() {
        require(!tradingOpen, "trading is already started");
        tradingOpen = true;
    }

    function manualswap() external {
        require(_msgSender() == _teamAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualsend() external {
        require(_msgSender() == _teamAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

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

    function unblockBot(address notbot) public onlyOwner {
        bots[notbot] = false;
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

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

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

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

    receive() external payable {}

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

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

        return (tTransferAmount, tFee, tTeam);
    }

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

        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();

        return rSupply.div(tSupply);
    }

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

        return (rSupply, tSupply);
    }

    function setMaxTxPercent(uint256 maxTxPercent) external onlyOwner() {
        require(maxTxPercent > 0, "Amount must be greater than 0");
        _maxTxAmount = _tTotal.mul(maxTxPercent).div(10**2);
        emit MaxTxAmountUpdated(_maxTxAmount);
    }
    
    function setTaxFee(uint256 taxFee) external onlyOwner() {
        require(taxFee >= 0 && taxFee <= 25, 'taxFee should be in 0 - 25');
        _taxFee = taxFee;
    }

    function setTeamFee(uint256 teamFee) external onlyOwner() {
        require(teamFee >= 0 && teamFee <= 25, 'teamFee should be in 0 - 25');
        _teamFee = teamFee;
    }
 
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"addr1","type":"address"},{"internalType":"address payable","name":"addr2","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","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":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"blockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxPercent","type":"uint256"}],"name":"setMaxTxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"taxFee","type":"uint256"}],"name":"setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"teamFee","type":"uint256"}],"name":"setTeamFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrading","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"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"unblockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052680719fd7deea82c00006000196200001d91906200087d565b6000196200002c9190620007f0565b60065560016008556006600955600854600a55600954600b556000601160156101000a81548160ff0219169083151502179055506001601160166101000a81548160ff02191690831515021790555067122e0e0f2fc300006012553480156200009457600080fd5b5060405162003bf538038062003bf58339818101604052810190620000ba91906200073d565b6000620000cc620006ac60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506006546002600062000203620006ac60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620002e257600080fd5b505afa158015620002f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031d91906200070b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200038057600080fd5b505afa15801562000395573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003bb91906200070b565b6040518363ffffffff1660e01b8152600401620003da929190620007a6565b602060405180830381600087803b158015620003f557600080fd5b505af11580156200040a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200043091906200070b565b601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016005600062000486620006b460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000633620006ac60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef680719fd7deea82c00006040516200069b9190620007d3565b60405180910390a35050506200094c565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050620006ee8162000918565b92915050565b600081519050620007058162000932565b92915050565b60006020828403121562000724576200072362000913565b5b60006200073484828501620006dd565b91505092915050565b6000806040838503121562000757576200075662000913565b5b60006200076785828601620006f4565b92505060206200077a85828601620006f4565b9150509250929050565b6200078f816200082b565b82525050565b620007a08162000873565b82525050565b6000604082019050620007bd600083018562000784565b620007cc602083018462000784565b9392505050565b6000602082019050620007ea600083018462000795565b92915050565b6000620007fd8262000873565b91506200080a8362000873565b92508282101562000820576200081f620008b5565b5b828203905092915050565b6000620008388262000853565b9050919050565b60006200084c8262000853565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60006200088a8262000873565b9150620008978362000873565b925082620008aa57620008a9620008e4565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b62000923816200082b565b81146200092f57600080fd5b50565b6200093d816200083f565b81146200094957600080fd5b50565b613299806200095c6000396000f3fe6080604052600436106101385760003560e01c806370a08231116100ab578063a9059cbb1161006f578063a9059cbb146103ea578063c3c8cd8014610427578063c4081a4c1461043e578063d543dbeb14610467578063dd62ed3e14610490578063e6ec64ec146104cd5761013f565b806370a0823114610315578063715018a6146103525780637d1db4a5146103695780638da5cb5b1461039457806395d89b41146103bf5761013f565b806323b872dd116100fd57806323b872dd1461022b578063293230b814610268578063313ce5671461027f57806349bd5a5e146102aa5780636b999053146102d55780636fc3eaec146102fe5761013f565b8062b8cf2a1461014457806306fdde031461016d578063095ea7b3146101985780631694505e146101d557806318160ddd146102005761013f565b3661013f57005b600080fd5b34801561015057600080fd5b5061016b600480360381019061016691906124b6565b6104f6565b005b34801561017957600080fd5b50610182610620565b60405161018f919061287f565b60405180910390f35b3480156101a457600080fd5b506101bf60048036038101906101ba9190612476565b61065d565b6040516101cc9190612849565b60405180910390f35b3480156101e157600080fd5b506101ea61067b565b6040516101f79190612864565b60405180910390f35b34801561020c57600080fd5b506102156106a1565b6040516102229190612a61565b60405180910390f35b34801561023757600080fd5b50610252600480360381019061024d9190612423565b6106b2565b60405161025f9190612849565b60405180910390f35b34801561027457600080fd5b5061027d61078b565b005b34801561028b57600080fd5b5061029461088d565b6040516102a19190612ad6565b60405180910390f35b3480156102b657600080fd5b506102bf610896565b6040516102cc919061282e565b60405180910390f35b3480156102e157600080fd5b506102fc60048036038101906102f79190612389565b6108bc565b005b34801561030a57600080fd5b506103136109ac565b005b34801561032157600080fd5b5061033c60048036038101906103379190612389565b610a1e565b6040516103499190612a61565b60405180910390f35b34801561035e57600080fd5b50610367610a6f565b005b34801561037557600080fd5b5061037e610bc2565b60405161038b9190612a61565b60405180910390f35b3480156103a057600080fd5b506103a9610bc8565b6040516103b6919061282e565b60405180910390f35b3480156103cb57600080fd5b506103d4610bf1565b6040516103e1919061287f565b60405180910390f35b3480156103f657600080fd5b50610411600480360381019061040c9190612476565b610c2e565b60405161041e9190612849565b60405180910390f35b34801561043357600080fd5b5061043c610c4c565b005b34801561044a57600080fd5b50610465600480360381019061046091906124ff565b610cc6565b005b34801561047357600080fd5b5061048e600480360381019061048991906124ff565b610db6565b005b34801561049c57600080fd5b506104b760048036038101906104b291906123e3565b610eff565b6040516104c49190612a61565b60405180910390f35b3480156104d957600080fd5b506104f460048036038101906104ef91906124ff565b610f86565b005b6104fe611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461058b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610582906129a1565b60405180910390fd5b60005b815181101561061c576001600c60008484815181106105b0576105af612e42565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061061490612d9b565b91505061058e565b5050565b60606040518060400160405280600e81526020017f42657a6f732042696c6c696f6e73000000000000000000000000000000000000815250905090565b600061067161066a611076565b848461107e565b6001905092915050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000680719fd7deea82c0000905090565b60006106bf848484611249565b610780846106cb611076565b61077b8560405180606001604052806028815260200161323c60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610731611076565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461172d9092919063ffffffff16565b61107e565b600190509392505050565b610793611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610820576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610817906129a1565b60405180910390fd5b601160149054906101000a900460ff1615610870576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610867906128c1565b60405180910390fd5b6001601160146101000a81548160ff021916908315150217905550565b60006009905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6108c4611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610951576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610948906129a1565b60405180910390fd5b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109ed611076565b73ffffffffffffffffffffffffffffffffffffffff1614610a0d57600080fd5b6000479050610a1b81611791565b50565b6000610a68600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461188c565b9050919050565b610a77611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b04576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610afb906129a1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60125481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017f4242000000000000000000000000000000000000000000000000000000000000815250905090565b6000610c42610c3b611076565b8484611249565b6001905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c8d611076565b73ffffffffffffffffffffffffffffffffffffffff1614610cad57600080fd5b6000610cb830610a1e565b9050610cc3816118fa565b50565b610cce611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d52906129a1565b60405180910390fd5b60008110158015610d6d575060198111155b610dac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da390612a41565b60405180910390fd5b8060088190555050565b610dbe611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e42906129a1565b60405180910390fd5b60008111610e8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8590612961565b60405180910390fd5b610ebd6064610eaf83680719fd7deea82c0000611b8290919063ffffffff16565b611bfd90919063ffffffff16565b6012819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf601254604051610ef49190612a61565b60405180910390a150565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f8e611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461101b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611012906129a1565b60405180910390fd5b6000811015801561102d575060198111155b61106c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611063906129c1565b60405180910390fd5b8060098190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e590612a21565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561115e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115590612921565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161123c9190612a61565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b090612a01565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611329576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611320906128a1565b60405180910390fd5b6000811161136c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611363906129e1565b60405180910390fd5b611374610bc8565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113e257506113b2610bc8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561166a57601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806114905750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156114e557601160149054906101000a900460ff166114e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114db906128e1565b60405180910390fd5b5b6012548111156114f457600080fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156115985750600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6115a157600080fd5b60006115ac30610a1e565b905060125481106115bd5760125490505b601160159054906101000a900460ff161580156116285750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156116405750601160169054906101000a900460ff165b156116685761164e816118fa565b600047905060008111156116665761166547611791565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806117115750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561171b57600090505b61172784848484611c47565b50505050565b6000838311158290611775576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176c919061287f565b60405180910390fd5b50600083856117849190612c78565b9050809150509392505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6117e1600284611bfd90919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561180c573d6000803e3d6000fd5b50600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc61185d600284611bfd90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611888573d6000803e3d6000fd5b5050565b60006006548211156118d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ca90612901565b60405180910390fd5b60006118dd611c74565b90506118f28184611bfd90919063ffffffff16565b915050919050565b6001601160156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561193257611931612e71565b5b6040519080825280602002602001820160405280156119605781602001602082028036833780820191505090505b509050308160008151811061197857611977612e42565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611a1a57600080fd5b505afa158015611a2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a5291906123b6565b81600181518110611a6657611a65612e42565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611acd30601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461107e565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611b31959493929190612a7c565b600060405180830381600087803b158015611b4b57600080fd5b505af1158015611b5f573d6000803e3d6000fd5b50505050506000601160156101000a81548160ff02191690831515021790555050565b600080831415611b955760009050611bf7565b60008284611ba39190612c1e565b9050828482611bb29190612bed565b14611bf2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611be990612981565b60405180910390fd5b809150505b92915050565b6000611c3f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c9f565b905092915050565b80611c5557611c54611d02565b5b611c60848484611d45565b80611c6e57611c6d611f10565b5b50505050565b6000806000611c81611f24565b91509150611c988183611bfd90919063ffffffff16565b9250505090565b60008083118290611ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdd919061287f565b60405180910390fd5b5060008385611cf59190612bed565b9050809150509392505050565b6000600854148015611d1657506000600954145b15611d2057611d43565b600854600a81905550600954600b81905550600060088190555060006009819055505b565b600080600080600080611d5787611f86565b955095509550955095509550611db586600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fee90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e4a85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461203890919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e9681612096565b611ea08483612153565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611efd9190612a61565b60405180910390a3505050505050505050565b600a54600881905550600b54600981905550565b600080600060065490506000680719fd7deea82c00009050611f5a680719fd7deea82c0000600654611bfd90919063ffffffff16565b821015611f7957600654680719fd7deea82c0000935093505050611f82565b81819350935050505b9091565b6000806000806000806000806000611fa38a60085460095461218d565b9250925092506000611fb3611c74565b90506000806000611fc68e878787612223565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061203083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061172d565b905092915050565b60008082846120479190612b97565b90508381101561208c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208390612941565b60405180910390fd5b8091505092915050565b60006120a0611c74565b905060006120b78284611b8290919063ffffffff16565b905061210b81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461203890919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b61216882600654611fee90919063ffffffff16565b6006819055506121838160075461203890919063ffffffff16565b6007819055505050565b6000806000806121b960646121ab888a611b8290919063ffffffff16565b611bfd90919063ffffffff16565b905060006121e360646121d5888b611b8290919063ffffffff16565b611bfd90919063ffffffff16565b9050600061220c826121fe858c611fee90919063ffffffff16565b611fee90919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061223c8589611b8290919063ffffffff16565b905060006122538689611b8290919063ffffffff16565b9050600061226a8789611b8290919063ffffffff16565b90506000612293826122858587611fee90919063ffffffff16565b611fee90919063ffffffff16565b9050838184965096509650505050509450945094915050565b60006122bf6122ba84612b16565b612af1565b905080838252602082019050828560208602820111156122e2576122e1612ea5565b5b60005b8581101561231257816122f8888261231c565b8452602084019350602083019250506001810190506122e5565b5050509392505050565b60008135905061232b8161320d565b92915050565b6000815190506123408161320d565b92915050565b600082601f83011261235b5761235a612ea0565b5b813561236b8482602086016122ac565b91505092915050565b60008135905061238381613224565b92915050565b60006020828403121561239f5761239e612eaf565b5b60006123ad8482850161231c565b91505092915050565b6000602082840312156123cc576123cb612eaf565b5b60006123da84828501612331565b91505092915050565b600080604083850312156123fa576123f9612eaf565b5b60006124088582860161231c565b92505060206124198582860161231c565b9150509250929050565b60008060006060848603121561243c5761243b612eaf565b5b600061244a8682870161231c565b935050602061245b8682870161231c565b925050604061246c86828701612374565b9150509250925092565b6000806040838503121561248d5761248c612eaf565b5b600061249b8582860161231c565b92505060206124ac85828601612374565b9150509250929050565b6000602082840312156124cc576124cb612eaf565b5b600082013567ffffffffffffffff8111156124ea576124e9612eaa565b5b6124f684828501612346565b91505092915050565b60006020828403121561251557612514612eaf565b5b600061252384828501612374565b91505092915050565b60006125388383612544565b60208301905092915050565b61254d81612cac565b82525050565b61255c81612cac565b82525050565b600061256d82612b52565b6125778185612b75565b935061258283612b42565b8060005b838110156125b357815161259a888261252c565b97506125a583612b68565b925050600181019050612586565b5085935050505092915050565b6125c981612cbe565b82525050565b6125d881612d01565b82525050565b6125e781612d25565b82525050565b60006125f882612b5d565b6126028185612b86565b9350612612818560208601612d37565b61261b81612eb4565b840191505092915050565b6000612633602383612b86565b915061263e82612ec5565b604082019050919050565b6000612656601a83612b86565b915061266182612f14565b602082019050919050565b6000612679601a83612b86565b915061268482612f3d565b602082019050919050565b600061269c602a83612b86565b91506126a782612f66565b604082019050919050565b60006126bf602283612b86565b91506126ca82612fb5565b604082019050919050565b60006126e2601b83612b86565b91506126ed82613004565b602082019050919050565b6000612705601d83612b86565b91506127108261302d565b602082019050919050565b6000612728602183612b86565b915061273382613056565b604082019050919050565b600061274b602083612b86565b9150612756826130a5565b602082019050919050565b600061276e601b83612b86565b9150612779826130ce565b602082019050919050565b6000612791602983612b86565b915061279c826130f7565b604082019050919050565b60006127b4602583612b86565b91506127bf82613146565b604082019050919050565b60006127d7602483612b86565b91506127e282613195565b604082019050919050565b60006127fa601a83612b86565b9150612805826131e4565b602082019050919050565b61281981612cea565b82525050565b61282881612cf4565b82525050565b60006020820190506128436000830184612553565b92915050565b600060208201905061285e60008301846125c0565b92915050565b600060208201905061287960008301846125cf565b92915050565b6000602082019050818103600083015261289981846125ed565b905092915050565b600060208201905081810360008301526128ba81612626565b9050919050565b600060208201905081810360008301526128da81612649565b9050919050565b600060208201905081810360008301526128fa8161266c565b9050919050565b6000602082019050818103600083015261291a8161268f565b9050919050565b6000602082019050818103600083015261293a816126b2565b9050919050565b6000602082019050818103600083015261295a816126d5565b9050919050565b6000602082019050818103600083015261297a816126f8565b9050919050565b6000602082019050818103600083015261299a8161271b565b9050919050565b600060208201905081810360008301526129ba8161273e565b9050919050565b600060208201905081810360008301526129da81612761565b9050919050565b600060208201905081810360008301526129fa81612784565b9050919050565b60006020820190508181036000830152612a1a816127a7565b9050919050565b60006020820190508181036000830152612a3a816127ca565b9050919050565b60006020820190508181036000830152612a5a816127ed565b9050919050565b6000602082019050612a766000830184612810565b92915050565b600060a082019050612a916000830188612810565b612a9e60208301876125de565b8181036040830152612ab08186612562565b9050612abf6060830185612553565b612acc6080830184612810565b9695505050505050565b6000602082019050612aeb600083018461281f565b92915050565b6000612afb612b0c565b9050612b078282612d6a565b919050565b6000604051905090565b600067ffffffffffffffff821115612b3157612b30612e71565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ba282612cea565b9150612bad83612cea565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612be257612be1612de4565b5b828201905092915050565b6000612bf882612cea565b9150612c0383612cea565b925082612c1357612c12612e13565b5b828204905092915050565b6000612c2982612cea565b9150612c3483612cea565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612c6d57612c6c612de4565b5b828202905092915050565b6000612c8382612cea565b9150612c8e83612cea565b925082821015612ca157612ca0612de4565b5b828203905092915050565b6000612cb782612cca565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612d0c82612d13565b9050919050565b6000612d1e82612cca565b9050919050565b6000612d3082612cea565b9050919050565b60005b83811015612d55578082015181840152602081019050612d3a565b83811115612d64576000848401525b50505050565b612d7382612eb4565b810181811067ffffffffffffffff82111715612d9257612d91612e71565b5b80604052505050565b6000612da682612cea565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612dd957612dd8612de4565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c72656164792073746172746564000000000000600082015250565b7f54726164696e67206973206e6f7420656e61626c656420796574000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f7465616d4665652073686f756c6420626520696e2030202d2032350000000000600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f7461784665652073686f756c6420626520696e2030202d203235000000000000600082015250565b61321681612cac565b811461322157600080fd5b50565b61322d81612cea565b811461323857600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207ab3fd021026bbe9fcda064a6a2687811f2255606552da17b64beec33db1d26464736f6c6343000806003300000000000000000000000043e053f25bfe55fd77a87ab6880f962ebc48f70900000000000000000000000091dd323bcd5c3d7243374a1bc71538143cd70647

Deployed Bytecode

0x6080604052600436106101385760003560e01c806370a08231116100ab578063a9059cbb1161006f578063a9059cbb146103ea578063c3c8cd8014610427578063c4081a4c1461043e578063d543dbeb14610467578063dd62ed3e14610490578063e6ec64ec146104cd5761013f565b806370a0823114610315578063715018a6146103525780637d1db4a5146103695780638da5cb5b1461039457806395d89b41146103bf5761013f565b806323b872dd116100fd57806323b872dd1461022b578063293230b814610268578063313ce5671461027f57806349bd5a5e146102aa5780636b999053146102d55780636fc3eaec146102fe5761013f565b8062b8cf2a1461014457806306fdde031461016d578063095ea7b3146101985780631694505e146101d557806318160ddd146102005761013f565b3661013f57005b600080fd5b34801561015057600080fd5b5061016b600480360381019061016691906124b6565b6104f6565b005b34801561017957600080fd5b50610182610620565b60405161018f919061287f565b60405180910390f35b3480156101a457600080fd5b506101bf60048036038101906101ba9190612476565b61065d565b6040516101cc9190612849565b60405180910390f35b3480156101e157600080fd5b506101ea61067b565b6040516101f79190612864565b60405180910390f35b34801561020c57600080fd5b506102156106a1565b6040516102229190612a61565b60405180910390f35b34801561023757600080fd5b50610252600480360381019061024d9190612423565b6106b2565b60405161025f9190612849565b60405180910390f35b34801561027457600080fd5b5061027d61078b565b005b34801561028b57600080fd5b5061029461088d565b6040516102a19190612ad6565b60405180910390f35b3480156102b657600080fd5b506102bf610896565b6040516102cc919061282e565b60405180910390f35b3480156102e157600080fd5b506102fc60048036038101906102f79190612389565b6108bc565b005b34801561030a57600080fd5b506103136109ac565b005b34801561032157600080fd5b5061033c60048036038101906103379190612389565b610a1e565b6040516103499190612a61565b60405180910390f35b34801561035e57600080fd5b50610367610a6f565b005b34801561037557600080fd5b5061037e610bc2565b60405161038b9190612a61565b60405180910390f35b3480156103a057600080fd5b506103a9610bc8565b6040516103b6919061282e565b60405180910390f35b3480156103cb57600080fd5b506103d4610bf1565b6040516103e1919061287f565b60405180910390f35b3480156103f657600080fd5b50610411600480360381019061040c9190612476565b610c2e565b60405161041e9190612849565b60405180910390f35b34801561043357600080fd5b5061043c610c4c565b005b34801561044a57600080fd5b50610465600480360381019061046091906124ff565b610cc6565b005b34801561047357600080fd5b5061048e600480360381019061048991906124ff565b610db6565b005b34801561049c57600080fd5b506104b760048036038101906104b291906123e3565b610eff565b6040516104c49190612a61565b60405180910390f35b3480156104d957600080fd5b506104f460048036038101906104ef91906124ff565b610f86565b005b6104fe611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461058b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610582906129a1565b60405180910390fd5b60005b815181101561061c576001600c60008484815181106105b0576105af612e42565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061061490612d9b565b91505061058e565b5050565b60606040518060400160405280600e81526020017f42657a6f732042696c6c696f6e73000000000000000000000000000000000000815250905090565b600061067161066a611076565b848461107e565b6001905092915050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000680719fd7deea82c0000905090565b60006106bf848484611249565b610780846106cb611076565b61077b8560405180606001604052806028815260200161323c60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610731611076565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461172d9092919063ffffffff16565b61107e565b600190509392505050565b610793611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610820576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610817906129a1565b60405180910390fd5b601160149054906101000a900460ff1615610870576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610867906128c1565b60405180910390fd5b6001601160146101000a81548160ff021916908315150217905550565b60006009905090565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6108c4611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610951576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610948906129a1565b60405180910390fd5b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109ed611076565b73ffffffffffffffffffffffffffffffffffffffff1614610a0d57600080fd5b6000479050610a1b81611791565b50565b6000610a68600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461188c565b9050919050565b610a77611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b04576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610afb906129a1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60125481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600281526020017f4242000000000000000000000000000000000000000000000000000000000000815250905090565b6000610c42610c3b611076565b8484611249565b6001905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c8d611076565b73ffffffffffffffffffffffffffffffffffffffff1614610cad57600080fd5b6000610cb830610a1e565b9050610cc3816118fa565b50565b610cce611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d52906129a1565b60405180910390fd5b60008110158015610d6d575060198111155b610dac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da390612a41565b60405180910390fd5b8060088190555050565b610dbe611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e42906129a1565b60405180910390fd5b60008111610e8e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e8590612961565b60405180910390fd5b610ebd6064610eaf83680719fd7deea82c0000611b8290919063ffffffff16565b611bfd90919063ffffffff16565b6012819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf601254604051610ef49190612a61565b60405180910390a150565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f8e611076565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461101b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611012906129a1565b60405180910390fd5b6000811015801561102d575060198111155b61106c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611063906129c1565b60405180910390fd5b8060098190555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e590612a21565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561115e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115590612921565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161123c9190612a61565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b090612a01565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611329576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611320906128a1565b60405180910390fd5b6000811161136c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611363906129e1565b60405180910390fd5b611374610bc8565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156113e257506113b2610bc8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561166a57601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806114905750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156114e557601160149054906101000a900460ff166114e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114db906128e1565b60405180910390fd5b5b6012548111156114f457600080fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156115985750600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6115a157600080fd5b60006115ac30610a1e565b905060125481106115bd5760125490505b601160159054906101000a900460ff161580156116285750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b80156116405750601160169054906101000a900460ff165b156116685761164e816118fa565b600047905060008111156116665761166547611791565b5b505b505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806117115750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561171b57600090505b61172784848484611c47565b50505050565b6000838311158290611775576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176c919061287f565b60405180910390fd5b50600083856117849190612c78565b9050809150509392505050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6117e1600284611bfd90919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561180c573d6000803e3d6000fd5b50600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc61185d600284611bfd90919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611888573d6000803e3d6000fd5b5050565b60006006548211156118d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ca90612901565b60405180910390fd5b60006118dd611c74565b90506118f28184611bfd90919063ffffffff16565b915050919050565b6001601160156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561193257611931612e71565b5b6040519080825280602002602001820160405280156119605781602001602082028036833780820191505090505b509050308160008151811061197857611977612e42565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611a1a57600080fd5b505afa158015611a2e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a5291906123b6565b81600181518110611a6657611a65612e42565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611acd30601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461107e565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611b31959493929190612a7c565b600060405180830381600087803b158015611b4b57600080fd5b505af1158015611b5f573d6000803e3d6000fd5b50505050506000601160156101000a81548160ff02191690831515021790555050565b600080831415611b955760009050611bf7565b60008284611ba39190612c1e565b9050828482611bb29190612bed565b14611bf2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611be990612981565b60405180910390fd5b809150505b92915050565b6000611c3f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c9f565b905092915050565b80611c5557611c54611d02565b5b611c60848484611d45565b80611c6e57611c6d611f10565b5b50505050565b6000806000611c81611f24565b91509150611c988183611bfd90919063ffffffff16565b9250505090565b60008083118290611ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cdd919061287f565b60405180910390fd5b5060008385611cf59190612bed565b9050809150509392505050565b6000600854148015611d1657506000600954145b15611d2057611d43565b600854600a81905550600954600b81905550600060088190555060006009819055505b565b600080600080600080611d5787611f86565b955095509550955095509550611db586600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fee90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e4a85600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461203890919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e9681612096565b611ea08483612153565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611efd9190612a61565b60405180910390a3505050505050505050565b600a54600881905550600b54600981905550565b600080600060065490506000680719fd7deea82c00009050611f5a680719fd7deea82c0000600654611bfd90919063ffffffff16565b821015611f7957600654680719fd7deea82c0000935093505050611f82565b81819350935050505b9091565b6000806000806000806000806000611fa38a60085460095461218d565b9250925092506000611fb3611c74565b90506000806000611fc68e878787612223565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061203083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061172d565b905092915050565b60008082846120479190612b97565b90508381101561208c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208390612941565b60405180910390fd5b8091505092915050565b60006120a0611c74565b905060006120b78284611b8290919063ffffffff16565b905061210b81600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461203890919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b61216882600654611fee90919063ffffffff16565b6006819055506121838160075461203890919063ffffffff16565b6007819055505050565b6000806000806121b960646121ab888a611b8290919063ffffffff16565b611bfd90919063ffffffff16565b905060006121e360646121d5888b611b8290919063ffffffff16565b611bfd90919063ffffffff16565b9050600061220c826121fe858c611fee90919063ffffffff16565b611fee90919063ffffffff16565b905080838395509550955050505093509350939050565b60008060008061223c8589611b8290919063ffffffff16565b905060006122538689611b8290919063ffffffff16565b9050600061226a8789611b8290919063ffffffff16565b90506000612293826122858587611fee90919063ffffffff16565b611fee90919063ffffffff16565b9050838184965096509650505050509450945094915050565b60006122bf6122ba84612b16565b612af1565b905080838252602082019050828560208602820111156122e2576122e1612ea5565b5b60005b8581101561231257816122f8888261231c565b8452602084019350602083019250506001810190506122e5565b5050509392505050565b60008135905061232b8161320d565b92915050565b6000815190506123408161320d565b92915050565b600082601f83011261235b5761235a612ea0565b5b813561236b8482602086016122ac565b91505092915050565b60008135905061238381613224565b92915050565b60006020828403121561239f5761239e612eaf565b5b60006123ad8482850161231c565b91505092915050565b6000602082840312156123cc576123cb612eaf565b5b60006123da84828501612331565b91505092915050565b600080604083850312156123fa576123f9612eaf565b5b60006124088582860161231c565b92505060206124198582860161231c565b9150509250929050565b60008060006060848603121561243c5761243b612eaf565b5b600061244a8682870161231c565b935050602061245b8682870161231c565b925050604061246c86828701612374565b9150509250925092565b6000806040838503121561248d5761248c612eaf565b5b600061249b8582860161231c565b92505060206124ac85828601612374565b9150509250929050565b6000602082840312156124cc576124cb612eaf565b5b600082013567ffffffffffffffff8111156124ea576124e9612eaa565b5b6124f684828501612346565b91505092915050565b60006020828403121561251557612514612eaf565b5b600061252384828501612374565b91505092915050565b60006125388383612544565b60208301905092915050565b61254d81612cac565b82525050565b61255c81612cac565b82525050565b600061256d82612b52565b6125778185612b75565b935061258283612b42565b8060005b838110156125b357815161259a888261252c565b97506125a583612b68565b925050600181019050612586565b5085935050505092915050565b6125c981612cbe565b82525050565b6125d881612d01565b82525050565b6125e781612d25565b82525050565b60006125f882612b5d565b6126028185612b86565b9350612612818560208601612d37565b61261b81612eb4565b840191505092915050565b6000612633602383612b86565b915061263e82612ec5565b604082019050919050565b6000612656601a83612b86565b915061266182612f14565b602082019050919050565b6000612679601a83612b86565b915061268482612f3d565b602082019050919050565b600061269c602a83612b86565b91506126a782612f66565b604082019050919050565b60006126bf602283612b86565b91506126ca82612fb5565b604082019050919050565b60006126e2601b83612b86565b91506126ed82613004565b602082019050919050565b6000612705601d83612b86565b91506127108261302d565b602082019050919050565b6000612728602183612b86565b915061273382613056565b604082019050919050565b600061274b602083612b86565b9150612756826130a5565b602082019050919050565b600061276e601b83612b86565b9150612779826130ce565b602082019050919050565b6000612791602983612b86565b915061279c826130f7565b604082019050919050565b60006127b4602583612b86565b91506127bf82613146565b604082019050919050565b60006127d7602483612b86565b91506127e282613195565b604082019050919050565b60006127fa601a83612b86565b9150612805826131e4565b602082019050919050565b61281981612cea565b82525050565b61282881612cf4565b82525050565b60006020820190506128436000830184612553565b92915050565b600060208201905061285e60008301846125c0565b92915050565b600060208201905061287960008301846125cf565b92915050565b6000602082019050818103600083015261289981846125ed565b905092915050565b600060208201905081810360008301526128ba81612626565b9050919050565b600060208201905081810360008301526128da81612649565b9050919050565b600060208201905081810360008301526128fa8161266c565b9050919050565b6000602082019050818103600083015261291a8161268f565b9050919050565b6000602082019050818103600083015261293a816126b2565b9050919050565b6000602082019050818103600083015261295a816126d5565b9050919050565b6000602082019050818103600083015261297a816126f8565b9050919050565b6000602082019050818103600083015261299a8161271b565b9050919050565b600060208201905081810360008301526129ba8161273e565b9050919050565b600060208201905081810360008301526129da81612761565b9050919050565b600060208201905081810360008301526129fa81612784565b9050919050565b60006020820190508181036000830152612a1a816127a7565b9050919050565b60006020820190508181036000830152612a3a816127ca565b9050919050565b60006020820190508181036000830152612a5a816127ed565b9050919050565b6000602082019050612a766000830184612810565b92915050565b600060a082019050612a916000830188612810565b612a9e60208301876125de565b8181036040830152612ab08186612562565b9050612abf6060830185612553565b612acc6080830184612810565b9695505050505050565b6000602082019050612aeb600083018461281f565b92915050565b6000612afb612b0c565b9050612b078282612d6a565b919050565b6000604051905090565b600067ffffffffffffffff821115612b3157612b30612e71565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ba282612cea565b9150612bad83612cea565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612be257612be1612de4565b5b828201905092915050565b6000612bf882612cea565b9150612c0383612cea565b925082612c1357612c12612e13565b5b828204905092915050565b6000612c2982612cea565b9150612c3483612cea565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612c6d57612c6c612de4565b5b828202905092915050565b6000612c8382612cea565b9150612c8e83612cea565b925082821015612ca157612ca0612de4565b5b828203905092915050565b6000612cb782612cca565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612d0c82612d13565b9050919050565b6000612d1e82612cca565b9050919050565b6000612d3082612cea565b9050919050565b60005b83811015612d55578082015181840152602081019050612d3a565b83811115612d64576000848401525b50505050565b612d7382612eb4565b810181811067ffffffffffffffff82111715612d9257612d91612e71565b5b80604052505050565b6000612da682612cea565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612dd957612dd8612de4565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c72656164792073746172746564000000000000600082015250565b7f54726164696e67206973206e6f7420656e61626c656420796574000000000000600082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f7465616d4665652073686f756c6420626520696e2030202d2032350000000000600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f7461784665652073686f756c6420626520696e2030202d203235000000000000600082015250565b61321681612cac565b811461322157600080fd5b50565b61322d81612cea565b811461323857600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207ab3fd021026bbe9fcda064a6a2687811f2255606552da17b64beec33db1d26464736f6c63430008060033

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

00000000000000000000000043e053f25bfe55fd77a87ab6880f962ebc48f70900000000000000000000000091dd323bcd5c3d7243374a1bc71538143cd70647

-----Decoded View---------------
Arg [0] : addr1 (address): 0x43E053F25bFe55fd77a87Ab6880f962EbC48f709
Arg [1] : addr2 (address): 0x91Dd323bcD5C3d7243374A1bc71538143cd70647

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000043e053f25bfe55fd77a87ab6880f962ebc48f709
Arg [1] : 00000000000000000000000091dd323bcd5c3d7243374a1bc71538143cd70647


Deployed Bytecode Sourcemap

3920:11836:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11442:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6115:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7040:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4977:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6392:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7241:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10891:144;;;;;;;;;;;;;:::i;:::-;;6301:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5025:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11619:92;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11243:191;;;;;;;;;;;;;:::i;:::-;;6495:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1661:148;;;;;;;;;;;;;:::i;:::-;;5163:48;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1447:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6206:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6641:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11043:192;;;;;;;;;;;;;:::i;:::-;;15399:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15132:255;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6848:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15575:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11442:169;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11518:9:::1;11513:91;11537:5;:12;11533:1;:16;11513:91;;;11588:4;11571;:14;11576:5;11582:1;11576:8;;;;;;;;:::i;:::-;;;;;;;;11571:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;11551:3;;;;;:::i;:::-;;;;11513:91;;;;11442:169:::0;:::o;6115:83::-;6152:13;6185:5;;;;;;;;;;;;;;;;;6178:12;;6115:83;:::o;7040:193::-;7142:4;7164:39;7173:12;:10;:12::i;:::-;7187:7;7196:6;7164:8;:39::i;:::-;7221:4;7214:11;;7040:193;;;;:::o;4977:41::-;;;;;;;;;;;;;:::o;6392:95::-;6445:7;4474:20;6465:14;;6392:95;:::o;7241:446::-;7373:4;7390:36;7400:6;7408:9;7419:6;7390:9;:36::i;:::-;7437:220;7460:6;7481:12;:10;:12::i;:::-;7508:138;7564:6;7508:138;;;;;;;;;;;;;;;;;:11;:19;7520:6;7508:19;;;;;;;;;;;;;;;:33;7528:12;:10;:12::i;:::-;7508:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;7437:8;:220::i;:::-;7675:4;7668:11;;7241:446;;;;;:::o;10891:144::-;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10956:11:::1;;;;;;;;;;;10955:12;10947:51;;;;;;;;;;;;:::i;:::-;;;;;;;;;11023:4;11009:11;;:18;;;;;;;;;;;;;;;;;;10891:144::o:0;6301:83::-;6342:5;4148:1;6360:16;;6301:83;:::o;5025:28::-;;;;;;;;;;;;;:::o;11619:92::-;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11698:5:::1;11683:4;:12;11688:6;11683:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;11619:92:::0;:::o;11243:191::-;11309:12;;;;;;;;;;;11293:28;;:12;:10;:12::i;:::-;:28;;;11285:37;;;;;;11333:26;11362:21;11333:50;;11394:32;11407:18;11394:12;:32::i;:::-;11274:160;11243:191::o;6495:138::-;6561:7;6588:37;6608:7;:16;6616:7;6608:16;;;;;;;;;;;;;;;;6588:19;:37::i;:::-;6581:44;;6495:138;;;:::o;1661:148::-;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1768:1:::1;1731:40;;1752:6;::::0;::::1;;;;;;;;1731:40;;;;;;;;;;;;1799:1;1782:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1661:148::o:0;5163:48::-;;;;:::o;1447:79::-;1485:7;1512:6;;;;;;;;;;;1505:13;;1447:79;:::o;6206:87::-;6245:13;6278:7;;;;;;;;;;;;;;;;;6271:14;;6206:87;:::o;6641:199::-;6746:4;6768:42;6778:12;:10;:12::i;:::-;6792:9;6803:6;6768:9;:42::i;:::-;6828:4;6821:11;;6641:199;;;;:::o;11043:192::-;11109:12;;;;;;;;;;;11093:28;;:12;:10;:12::i;:::-;:28;;;11085:37;;;;;;11133:23;11159:24;11177:4;11159:9;:24::i;:::-;11133:50;;11194:33;11211:15;11194:16;:33::i;:::-;11074:161;11043:192::o;15399:168::-;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15484:1:::1;15474:6;:11;;:27;;;;;15499:2;15489:6;:12;;15474:27;15466:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;15553:6;15543:7;:16;;;;15399:168:::0;:::o;15132:255::-;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15234:1:::1;15219:12;:16;15211:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;15295:36;15325:5;15295:25;15307:12;4474:20;15295:11;;:25;;;;:::i;:::-;:29;;:36;;;;:::i;:::-;15280:12;:51;;;;15347:32;15366:12;;15347:32;;;;;;:::i;:::-;;;;;;;;15132:255:::0;:::o;6848:184::-;6965:7;6997:11;:18;7009:5;6997:18;;;;;;;;;;;;;;;:27;7016:7;6997:27;;;;;;;;;;;;;;;;6990:34;;6848:184;;;;:::o;15575:175::-;1584:12;:10;:12::i;:::-;1574:22;;:6;;;;;;;;;;:22;;;1566:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15663:1:::1;15652:7;:12;;:29;;;;;15679:2;15668:7;:13;;15652:29;15644:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;15735:7;15724:8;:18;;;;15575:175:::0;:::o;206:98::-;259:7;286:10;279:17;;206:98;:::o;8384:369::-;8528:1;8511:19;;:5;:19;;;;8503:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8609:1;8590:21;;:7;:21;;;;8582:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8691:6;8661:11;:18;8673:5;8661:18;;;;;;;;;;;;;;;:27;8680:7;8661:27;;;;;;;;;;;;;;;:36;;;;8729:7;8713:32;;8722:5;8713:32;;;8738:6;8713:32;;;;;;:::i;:::-;;;;;;;;8384:369;;;:::o;8761:1472::-;8899:1;8883:18;;:4;:18;;;;8875:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8976:1;8962:16;;:2;:16;;;;8954:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9046:1;9037:6;:10;9029:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9118:7;:5;:7::i;:::-;9110:15;;:4;:15;;;;:32;;;;;9135:7;:5;:7::i;:::-;9129:13;;:2;:13;;;;9110:32;9106:926;;;9218:13;;;;;;;;;;;9210:21;;:4;:21;;;:44;;;;9241:13;;;;;;;;;;;9235:19;;:2;:19;;;9210:44;9206:136;;;9284:11;;;;;;;;;;;9276:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;9206:136;9390:12;;9380:6;:22;;9372:31;;;;;;9427:4;:10;9432:4;9427:10;;;;;;;;;;;;;;;;;;;;;;;;;9426:11;:24;;;;;9442:4;:8;9447:2;9442:8;;;;;;;;;;;;;;;;;;;;;;;;;9441:9;9426:24;9418:33;;;;;;9480:28;9511:24;9529:4;9511:9;:24::i;:::-;9480:55;;9577:12;;9553:20;:36;9550:124;;9646:12;;9623:35;;9550:124;9707:6;;;;;;;;;;;9706:7;:32;;;;;9725:13;;;;;;;;;;;9717:21;;:4;:21;;;;9706:32;:47;;;;;9742:11;;;;;;;;;;;9706:47;9702:319;;;9774:38;9791:20;9774:16;:38::i;:::-;9831:26;9860:21;9831:50;;9925:1;9904:18;:22;9900:106;;;9951:35;9964:21;9951:12;:35::i;:::-;9900:106;9755:266;9702:319;9144:888;9106:926;10042:12;10057:4;10042:19;;10078:18;:24;10097:4;10078:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;10106:18;:22;10125:2;10106:22;;;;;;;;;;;;;;;;;;;;;;;;;10078:50;10074:98;;;10155:5;10145:15;;10074:98;10184:41;10199:4;10205:2;10209:6;10217:7;10184:14;:41::i;:::-;8864:1369;8761:1472;;;:::o;2171:224::-;2291:7;2324:1;2319;:6;;2327:12;2311:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2351:9;2367:1;2363;:5;;;;:::i;:::-;2351:17;;2386:1;2379:8;;;2171:224;;;;;:::o;10732:151::-;10789:12;;;;;;;;;;;:21;;:36;10811:13;10822:1;10811:6;:10;;:13;;;;:::i;:::-;10789:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10836:15;;;;;;;;;;;:24;;:39;10861:13;10872:1;10861:6;:10;;:13;;;;:::i;:::-;10836:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10732:151;:::o;7695:323::-;7790:7;7848;;7837;:18;;7815:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;7936:19;7958:10;:8;:10::i;:::-;7936:32;;7986:24;7998:11;7986:7;:11;;:24;;;;:::i;:::-;7979:31;;;7695:323;;;:::o;10241:483::-;5314:4;5305:6;;:13;;;;;;;;;;;;;;;;;;10319:21:::1;10357:1;10343:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10319:40;;10388:4;10370;10375:1;10370:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10414:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10404:4;10409:1;10404:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;10447:62;10464:4;10479:15;;;;;;;;;;;10497:11;10447:8;:62::i;:::-;10520:15;;;;;;;;;;;:66;;;10601:11;10627:1;10643:4;10670;10690:15;10520:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10308:416;5350:5:::0;5341:6;;:14;;;;;;;;;;;;;;;;;;10241:483;:::o;2403:246::-;2461:7;2490:1;2485;:6;2481:47;;;2515:1;2508:8;;;;2481:47;2538:9;2554:1;2550;:5;;;;:::i;:::-;2538:17;;2583:1;2578;2574;:5;;;;:::i;:::-;:10;2566:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2640:1;2633:8;;;2403:246;;;;;:::o;2657:132::-;2715:7;2742:39;2746:1;2749;2742:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2735:46;;2657:132;;;;:::o;11719:282::-;11875:7;11870:28;;11884:14;:12;:14::i;:::-;11870:28;11909:44;11927:6;11935:9;11946:6;11909:17;:44::i;:::-;11969:7;11964:29;;11978:15;:13;:15::i;:::-;11964:29;11719:282;;;;:::o;14691:166::-;14733:7;14754:15;14771;14790:19;:17;:19::i;:::-;14753:56;;;;14829:20;14841:7;14829;:11;;:20;;;;:::i;:::-;14822:27;;;;14691:166;:::o;2797:223::-;2917:7;2949:1;2945;:5;2952:12;2937:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2976:9;2992:1;2988;:5;;;;:::i;:::-;2976:17;;3011:1;3004:8;;;2797:223;;;;;:::o;8026:227::-;8084:1;8073:7;;:12;:29;;;;;8101:1;8089:8;;:13;8073:29;8069:42;;;8104:7;;8069:42;8145:7;;8127:15;:25;;;;8182:8;;8163:16;:27;;;;8221:1;8211:7;:11;;;;8244:1;8233:8;:12;;;;8026:227;:::o;12009:610::-;12156:15;12186:23;12224:12;12251:23;12289:12;12316:13;12343:19;12354:7;12343:10;:19::i;:::-;12141:221;;;;;;;;;;;;12391:28;12411:7;12391;:15;12399:6;12391:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;12373:7;:15;12381:6;12373:15;;;;;;;;;;;;;;;:46;;;;12451:39;12474:15;12451:7;:18;12459:9;12451:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;12430:7;:18;12438:9;12430:18;;;;;;;;;;;;;;;:60;;;;12501:16;12511:5;12501:9;:16::i;:::-;12528:23;12540:4;12546;12528:11;:23::i;:::-;12584:9;12567:44;;12576:6;12567:44;;;12595:15;12567:44;;;;;;:::i;:::-;;;;;;;;12130:489;;;;;;12009:610;;;:::o;8261:115::-;8315:15;;8305:7;:25;;;;8352:16;;8341:8;:27;;;;8261:115::o;14865:259::-;14916:7;14925;14945:15;14963:7;;14945:25;;14981:15;4474:20;14981:25;;15031:20;4474;15031:7;;:11;;:20;;;;:::i;:::-;15021:7;:30;15017:61;;;15061:7;;4474:20;15053:25;;;;;;;;15017:61;15099:7;15108;15091:25;;;;;;14865:259;;;:::o;13038:624::-;13138:7;13160;13182;13204;13226;13248;13284:23;13309:12;13323:13;13353:39;13365:7;13374;;13383:8;;13353:11;:39::i;:::-;13283:109;;;;;;13403:19;13425:10;:8;:10::i;:::-;13403:32;;13447:15;13464:23;13489:12;13518:46;13530:7;13539:4;13545:5;13552:11;13518;:46::i;:::-;13446:118;;;;;;13593:7;13602:15;13619:4;13625:15;13642:4;13648:5;13585:69;;;;;;;;;;;;;;;;;;;13038:624;;;;;;;:::o;2027:136::-;2085:7;2112:43;2116:1;2119;2112:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2105:50;;2027:136;;;;:::o;1840:179::-;1898:7;1918:9;1934:1;1930;:5;;;;:::i;:::-;1918:17;;1959:1;1954;:6;;1946:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2010:1;2003:8;;;1840:179;;;;:::o;12627:211::-;12680:19;12702:10;:8;:10::i;:::-;12680:32;;12723:13;12739:22;12749:11;12739:5;:9;;:22;;;;:::i;:::-;12723:38;;12797:33;12824:5;12797:7;:22;12813:4;12797:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;12772:7;:22;12788:4;12772:22;;;;;;;;;;;;;;;:58;;;;12669:169;;12627:211;:::o;12846:147::-;12924:17;12936:4;12924:7;;:11;;:17;;;;:::i;:::-;12914:7;:27;;;;12965:20;12980:4;12965:10;;:14;;:20;;;;:::i;:::-;12952:10;:33;;;;12846:147;;:::o;13670:469::-;13838:7;13860;13882;13917:12;13932:28;13956:3;13932:19;13944:6;13932:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;13917:43;;13971:13;13987:29;14012:3;13987:20;13999:7;13987;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;13971:45;;14027:23;14053:28;14075:5;14053:17;14065:4;14053:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;14027:54;;14102:15;14119:4;14125:5;14094:37;;;;;;;;;13670:469;;;;;;;:::o;14147:536::-;14341:7;14363;14385;14420:15;14438:24;14450:11;14438:7;:11;;:24;;;;:::i;:::-;14420:42;;14473:12;14488:21;14497:11;14488:4;:8;;:21;;;;:::i;:::-;14473:36;;14520:13;14536:22;14546:11;14536:5;:9;;:22;;;;:::i;:::-;14520:38;;14569:23;14595:28;14617:5;14595:17;14607:4;14595:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;14569:54;;14644:7;14653:15;14670:4;14636:39;;;;;;;;;;14147:536;;;;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:2;;;404:79;;:::i;:::-;350:2;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;804:87;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;960:80;;;;:::o;1063:370::-;1134:5;1183:3;1176:4;1168:6;1164:17;1160:27;1150:2;;1191:79;;:::i;:::-;1150:2;1308:6;1295:20;1333:94;1423:3;1415:6;1408:4;1400:6;1396:17;1333:94;:::i;:::-;1324:103;;1140:293;;;;;:::o;1439:139::-;1485:5;1523:6;1510:20;1501:29;;1539:33;1566:5;1539:33;:::i;:::-;1491:87;;;;:::o;1584:329::-;1643:6;1692:2;1680:9;1671:7;1667:23;1663:32;1660:2;;;1698:79;;:::i;:::-;1660:2;1818:1;1843:53;1888:7;1879:6;1868:9;1864:22;1843:53;:::i;:::-;1833:63;;1789:117;1650:263;;;;:::o;1919:351::-;1989:6;2038:2;2026:9;2017:7;2013:23;2009:32;2006:2;;;2044:79;;:::i;:::-;2006:2;2164:1;2189:64;2245:7;2236:6;2225:9;2221:22;2189:64;:::i;:::-;2179:74;;2135:128;1996:274;;;;:::o;2276:474::-;2344:6;2352;2401:2;2389:9;2380:7;2376:23;2372:32;2369:2;;;2407:79;;:::i;:::-;2369:2;2527:1;2552:53;2597:7;2588:6;2577:9;2573:22;2552:53;:::i;:::-;2542:63;;2498:117;2654:2;2680:53;2725:7;2716:6;2705:9;2701:22;2680:53;:::i;:::-;2670:63;;2625:118;2359:391;;;;;:::o;2756:619::-;2833:6;2841;2849;2898:2;2886:9;2877:7;2873:23;2869:32;2866:2;;;2904:79;;:::i;:::-;2866:2;3024:1;3049:53;3094:7;3085:6;3074:9;3070:22;3049:53;:::i;:::-;3039:63;;2995:117;3151:2;3177:53;3222:7;3213:6;3202:9;3198:22;3177:53;:::i;:::-;3167:63;;3122:118;3279:2;3305:53;3350:7;3341:6;3330:9;3326:22;3305:53;:::i;:::-;3295:63;;3250:118;2856:519;;;;;:::o;3381:474::-;3449:6;3457;3506:2;3494:9;3485:7;3481:23;3477:32;3474:2;;;3512:79;;:::i;:::-;3474:2;3632:1;3657:53;3702:7;3693:6;3682:9;3678:22;3657:53;:::i;:::-;3647:63;;3603:117;3759:2;3785:53;3830:7;3821:6;3810:9;3806:22;3785:53;:::i;:::-;3775:63;;3730:118;3464:391;;;;;:::o;3861:539::-;3945:6;3994:2;3982:9;3973:7;3969:23;3965:32;3962:2;;;4000:79;;:::i;:::-;3962:2;4148:1;4137:9;4133:17;4120:31;4178:18;4170:6;4167:30;4164:2;;;4200:79;;:::i;:::-;4164:2;4305:78;4375:7;4366:6;4355:9;4351:22;4305:78;:::i;:::-;4295:88;;4091:302;3952:448;;;;:::o;4406:329::-;4465:6;4514:2;4502:9;4493:7;4489:23;4485:32;4482:2;;;4520:79;;:::i;:::-;4482:2;4640:1;4665:53;4710:7;4701:6;4690:9;4686:22;4665:53;:::i;:::-;4655:63;;4611:117;4472:263;;;;:::o;4741:179::-;4810:10;4831:46;4873:3;4865:6;4831:46;:::i;:::-;4909:4;4904:3;4900:14;4886:28;;4821:99;;;;:::o;4926:108::-;5003:24;5021:5;5003:24;:::i;:::-;4998:3;4991:37;4981:53;;:::o;5040:118::-;5127:24;5145:5;5127:24;:::i;:::-;5122:3;5115:37;5105:53;;:::o;5194:732::-;5313:3;5342:54;5390:5;5342:54;:::i;:::-;5412:86;5491:6;5486:3;5412:86;:::i;:::-;5405:93;;5522:56;5572:5;5522:56;:::i;:::-;5601:7;5632:1;5617:284;5642:6;5639:1;5636:13;5617:284;;;5718:6;5712:13;5745:63;5804:3;5789:13;5745:63;:::i;:::-;5738:70;;5831:60;5884:6;5831:60;:::i;:::-;5821:70;;5677:224;5664:1;5661;5657:9;5652:14;;5617:284;;;5621:14;5917:3;5910:10;;5318:608;;;;;;;:::o;5932:109::-;6013:21;6028:5;6013:21;:::i;:::-;6008:3;6001:34;5991:50;;:::o;6047:183::-;6160:63;6217:5;6160:63;:::i;:::-;6155:3;6148:76;6138:92;;:::o;6236:147::-;6331:45;6370:5;6331:45;:::i;:::-;6326:3;6319:58;6309:74;;:::o;6389:364::-;6477:3;6505:39;6538:5;6505:39;:::i;:::-;6560:71;6624:6;6619:3;6560:71;:::i;:::-;6553:78;;6640:52;6685:6;6680:3;6673:4;6666:5;6662:16;6640:52;:::i;:::-;6717:29;6739:6;6717:29;:::i;:::-;6712:3;6708:39;6701:46;;6481:272;;;;;:::o;6759:366::-;6901:3;6922:67;6986:2;6981:3;6922:67;:::i;:::-;6915:74;;6998:93;7087:3;6998:93;:::i;:::-;7116:2;7111:3;7107:12;7100:19;;6905:220;;;:::o;7131:366::-;7273:3;7294:67;7358:2;7353:3;7294:67;:::i;:::-;7287:74;;7370:93;7459:3;7370:93;:::i;:::-;7488:2;7483:3;7479:12;7472:19;;7277:220;;;:::o;7503:366::-;7645:3;7666:67;7730:2;7725:3;7666:67;:::i;:::-;7659:74;;7742:93;7831:3;7742:93;:::i;:::-;7860:2;7855:3;7851:12;7844:19;;7649:220;;;:::o;7875:366::-;8017:3;8038:67;8102:2;8097:3;8038:67;:::i;:::-;8031:74;;8114:93;8203:3;8114:93;:::i;:::-;8232:2;8227:3;8223:12;8216:19;;8021:220;;;:::o;8247:366::-;8389:3;8410:67;8474:2;8469:3;8410:67;:::i;:::-;8403:74;;8486:93;8575:3;8486:93;:::i;:::-;8604:2;8599:3;8595:12;8588:19;;8393:220;;;:::o;8619:366::-;8761:3;8782:67;8846:2;8841:3;8782:67;:::i;:::-;8775:74;;8858:93;8947:3;8858:93;:::i;:::-;8976:2;8971:3;8967:12;8960:19;;8765:220;;;:::o;8991:366::-;9133:3;9154:67;9218:2;9213:3;9154:67;:::i;:::-;9147:74;;9230:93;9319:3;9230:93;:::i;:::-;9348:2;9343:3;9339:12;9332:19;;9137:220;;;:::o;9363:366::-;9505:3;9526:67;9590:2;9585:3;9526:67;:::i;:::-;9519:74;;9602:93;9691:3;9602:93;:::i;:::-;9720:2;9715:3;9711:12;9704:19;;9509:220;;;:::o;9735:366::-;9877:3;9898:67;9962:2;9957:3;9898:67;:::i;:::-;9891:74;;9974:93;10063:3;9974:93;:::i;:::-;10092:2;10087:3;10083:12;10076:19;;9881:220;;;:::o;10107:366::-;10249:3;10270:67;10334:2;10329:3;10270:67;:::i;:::-;10263:74;;10346:93;10435:3;10346:93;:::i;:::-;10464:2;10459:3;10455:12;10448:19;;10253:220;;;:::o;10479:366::-;10621:3;10642:67;10706:2;10701:3;10642:67;:::i;:::-;10635:74;;10718:93;10807:3;10718:93;:::i;:::-;10836:2;10831:3;10827:12;10820:19;;10625:220;;;:::o;10851:366::-;10993:3;11014:67;11078:2;11073:3;11014:67;:::i;:::-;11007:74;;11090:93;11179:3;11090:93;:::i;:::-;11208:2;11203:3;11199:12;11192:19;;10997:220;;;:::o;11223:366::-;11365:3;11386:67;11450:2;11445:3;11386:67;:::i;:::-;11379:74;;11462:93;11551:3;11462:93;:::i;:::-;11580:2;11575:3;11571:12;11564:19;;11369:220;;;:::o;11595:366::-;11737:3;11758:67;11822:2;11817:3;11758:67;:::i;:::-;11751:74;;11834:93;11923:3;11834:93;:::i;:::-;11952:2;11947:3;11943:12;11936:19;;11741:220;;;:::o;11967:118::-;12054:24;12072:5;12054:24;:::i;:::-;12049:3;12042:37;12032:53;;:::o;12091:112::-;12174:22;12190:5;12174:22;:::i;:::-;12169:3;12162:35;12152:51;;:::o;12209:222::-;12302:4;12340:2;12329:9;12325:18;12317:26;;12353:71;12421:1;12410:9;12406:17;12397:6;12353:71;:::i;:::-;12307:124;;;;:::o;12437:210::-;12524:4;12562:2;12551:9;12547:18;12539:26;;12575:65;12637:1;12626:9;12622:17;12613:6;12575:65;:::i;:::-;12529:118;;;;:::o;12653:274::-;12772:4;12810:2;12799:9;12795:18;12787:26;;12823:97;12917:1;12906:9;12902:17;12893:6;12823:97;:::i;:::-;12777:150;;;;:::o;12933:313::-;13046:4;13084:2;13073:9;13069:18;13061:26;;13133:9;13127:4;13123:20;13119:1;13108:9;13104:17;13097:47;13161:78;13234:4;13225:6;13161:78;:::i;:::-;13153:86;;13051:195;;;;:::o;13252:419::-;13418:4;13456:2;13445:9;13441:18;13433:26;;13505:9;13499:4;13495:20;13491:1;13480:9;13476:17;13469:47;13533:131;13659:4;13533:131;:::i;:::-;13525:139;;13423:248;;;:::o;13677:419::-;13843:4;13881:2;13870:9;13866:18;13858:26;;13930:9;13924:4;13920:20;13916:1;13905:9;13901:17;13894:47;13958:131;14084:4;13958:131;:::i;:::-;13950:139;;13848:248;;;:::o;14102:419::-;14268:4;14306:2;14295:9;14291:18;14283:26;;14355:9;14349:4;14345:20;14341:1;14330:9;14326:17;14319:47;14383:131;14509:4;14383:131;:::i;:::-;14375:139;;14273:248;;;:::o;14527:419::-;14693:4;14731:2;14720:9;14716:18;14708:26;;14780:9;14774:4;14770:20;14766:1;14755:9;14751:17;14744:47;14808:131;14934:4;14808:131;:::i;:::-;14800:139;;14698:248;;;:::o;14952:419::-;15118:4;15156:2;15145:9;15141:18;15133:26;;15205:9;15199:4;15195:20;15191:1;15180:9;15176:17;15169:47;15233:131;15359:4;15233:131;:::i;:::-;15225:139;;15123:248;;;:::o;15377:419::-;15543:4;15581:2;15570:9;15566:18;15558:26;;15630:9;15624:4;15620:20;15616:1;15605:9;15601:17;15594:47;15658:131;15784:4;15658:131;:::i;:::-;15650:139;;15548:248;;;:::o;15802:419::-;15968:4;16006:2;15995:9;15991:18;15983:26;;16055:9;16049:4;16045:20;16041:1;16030:9;16026:17;16019:47;16083:131;16209:4;16083:131;:::i;:::-;16075:139;;15973:248;;;:::o;16227:419::-;16393:4;16431:2;16420:9;16416:18;16408:26;;16480:9;16474:4;16470:20;16466:1;16455:9;16451:17;16444:47;16508:131;16634:4;16508:131;:::i;:::-;16500:139;;16398:248;;;:::o;16652:419::-;16818:4;16856:2;16845:9;16841:18;16833:26;;16905:9;16899:4;16895:20;16891:1;16880:9;16876:17;16869:47;16933:131;17059:4;16933:131;:::i;:::-;16925:139;;16823:248;;;:::o;17077:419::-;17243:4;17281:2;17270:9;17266:18;17258:26;;17330:9;17324:4;17320:20;17316:1;17305:9;17301:17;17294:47;17358:131;17484:4;17358:131;:::i;:::-;17350:139;;17248:248;;;:::o;17502:419::-;17668:4;17706:2;17695:9;17691:18;17683:26;;17755:9;17749:4;17745:20;17741:1;17730:9;17726:17;17719:47;17783:131;17909:4;17783:131;:::i;:::-;17775:139;;17673:248;;;:::o;17927:419::-;18093:4;18131:2;18120:9;18116:18;18108:26;;18180:9;18174:4;18170:20;18166:1;18155:9;18151:17;18144:47;18208:131;18334:4;18208:131;:::i;:::-;18200:139;;18098:248;;;:::o;18352:419::-;18518:4;18556:2;18545:9;18541:18;18533:26;;18605:9;18599:4;18595:20;18591:1;18580:9;18576:17;18569:47;18633:131;18759:4;18633:131;:::i;:::-;18625:139;;18523:248;;;:::o;18777:419::-;18943:4;18981:2;18970:9;18966:18;18958:26;;19030:9;19024:4;19020:20;19016:1;19005:9;19001:17;18994:47;19058:131;19184:4;19058:131;:::i;:::-;19050:139;;18948:248;;;:::o;19202:222::-;19295:4;19333:2;19322:9;19318:18;19310:26;;19346:71;19414:1;19403:9;19399:17;19390:6;19346:71;:::i;:::-;19300:124;;;;:::o;19430:831::-;19693:4;19731:3;19720:9;19716:19;19708:27;;19745:71;19813:1;19802:9;19798:17;19789:6;19745:71;:::i;:::-;19826:80;19902:2;19891:9;19887:18;19878:6;19826:80;:::i;:::-;19953:9;19947:4;19943:20;19938:2;19927:9;19923:18;19916:48;19981:108;20084:4;20075:6;19981:108;:::i;:::-;19973:116;;20099:72;20167:2;20156:9;20152:18;20143:6;20099:72;:::i;:::-;20181:73;20249:3;20238:9;20234:19;20225:6;20181:73;:::i;:::-;19698:563;;;;;;;;:::o;20267:214::-;20356:4;20394:2;20383:9;20379:18;20371:26;;20407:67;20471:1;20460:9;20456:17;20447:6;20407:67;:::i;:::-;20361:120;;;;:::o;20487:129::-;20521:6;20548:20;;:::i;:::-;20538:30;;20577:33;20605:4;20597:6;20577:33;:::i;:::-;20528:88;;;:::o;20622:75::-;20655:6;20688:2;20682:9;20672:19;;20662:35;:::o;20703:311::-;20780:4;20870:18;20862:6;20859:30;20856:2;;;20892:18;;:::i;:::-;20856:2;20942:4;20934:6;20930:17;20922:25;;21002:4;20996;20992:15;20984:23;;20785:229;;;:::o;21020:132::-;21087:4;21110:3;21102:11;;21140:4;21135:3;21131:14;21123:22;;21092:60;;;:::o;21158:114::-;21225:6;21259:5;21253:12;21243:22;;21232:40;;;:::o;21278:99::-;21330:6;21364:5;21358:12;21348:22;;21337:40;;;:::o;21383:113::-;21453:4;21485;21480:3;21476:14;21468:22;;21458:38;;;:::o;21502:184::-;21601:11;21635:6;21630:3;21623:19;21675:4;21670:3;21666:14;21651:29;;21613:73;;;;:::o;21692:169::-;21776:11;21810:6;21805:3;21798:19;21850:4;21845:3;21841:14;21826:29;;21788:73;;;;:::o;21867:305::-;21907:3;21926:20;21944:1;21926:20;:::i;:::-;21921:25;;21960:20;21978:1;21960:20;:::i;:::-;21955:25;;22114:1;22046:66;22042:74;22039:1;22036:81;22033:2;;;22120:18;;:::i;:::-;22033:2;22164:1;22161;22157:9;22150:16;;21911:261;;;;:::o;22178:185::-;22218:1;22235:20;22253:1;22235:20;:::i;:::-;22230:25;;22269:20;22287:1;22269:20;:::i;:::-;22264:25;;22308:1;22298:2;;22313:18;;:::i;:::-;22298:2;22355:1;22352;22348:9;22343:14;;22220:143;;;;:::o;22369:348::-;22409:7;22432:20;22450:1;22432:20;:::i;:::-;22427:25;;22466:20;22484:1;22466:20;:::i;:::-;22461:25;;22654:1;22586:66;22582:74;22579:1;22576:81;22571:1;22564:9;22557:17;22553:105;22550:2;;;22661:18;;:::i;:::-;22550:2;22709:1;22706;22702:9;22691:20;;22417:300;;;;:::o;22723:191::-;22763:4;22783:20;22801:1;22783:20;:::i;:::-;22778:25;;22817:20;22835:1;22817:20;:::i;:::-;22812:25;;22856:1;22853;22850:8;22847:2;;;22861:18;;:::i;:::-;22847:2;22906:1;22903;22899:9;22891:17;;22768:146;;;;:::o;22920:96::-;22957:7;22986:24;23004:5;22986:24;:::i;:::-;22975:35;;22965:51;;;:::o;23022:90::-;23056:7;23099:5;23092:13;23085:21;23074:32;;23064:48;;;:::o;23118:126::-;23155:7;23195:42;23188:5;23184:54;23173:65;;23163:81;;;:::o;23250:77::-;23287:7;23316:5;23305:16;;23295:32;;;:::o;23333:86::-;23368:7;23408:4;23401:5;23397:16;23386:27;;23376:43;;;:::o;23425:178::-;23501:9;23534:63;23591:5;23534:63;:::i;:::-;23521:76;;23511:92;;;:::o;23609:139::-;23685:9;23718:24;23736:5;23718:24;:::i;:::-;23705:37;;23695:53;;;:::o;23754:121::-;23812:9;23845:24;23863:5;23845:24;:::i;:::-;23832:37;;23822:53;;;:::o;23881:307::-;23949:1;23959:113;23973:6;23970:1;23967:13;23959:113;;;24058:1;24053:3;24049:11;24043:18;24039:1;24034:3;24030:11;24023:39;23995:2;23992:1;23988:10;23983:15;;23959:113;;;24090:6;24087:1;24084:13;24081:2;;;24170:1;24161:6;24156:3;24152:16;24145:27;24081:2;23930:258;;;;:::o;24194:281::-;24277:27;24299:4;24277:27;:::i;:::-;24269:6;24265:40;24407:6;24395:10;24392:22;24371:18;24359:10;24356:34;24353:62;24350:2;;;24418:18;;:::i;:::-;24350:2;24458:10;24454:2;24447:22;24237:238;;;:::o;24481:233::-;24520:3;24543:24;24561:5;24543:24;:::i;:::-;24534:33;;24589:66;24582:5;24579:77;24576:2;;;24659:18;;:::i;:::-;24576:2;24706:1;24699:5;24695:13;24688:20;;24524:190;;;:::o;24720:180::-;24768:77;24765:1;24758:88;24865:4;24862:1;24855:15;24889:4;24886:1;24879:15;24906:180;24954:77;24951:1;24944:88;25051:4;25048:1;25041:15;25075:4;25072:1;25065:15;25092:180;25140:77;25137:1;25130:88;25237:4;25234:1;25227:15;25261:4;25258:1;25251:15;25278:180;25326:77;25323:1;25316:88;25423:4;25420:1;25413:15;25447:4;25444:1;25437:15;25464:117;25573:1;25570;25563:12;25587:117;25696:1;25693;25686:12;25710:117;25819:1;25816;25809:12;25833:117;25942:1;25939;25932:12;25956:102;25997:6;26048:2;26044:7;26039:2;26032:5;26028:14;26024:28;26014:38;;26004:54;;;:::o;26064:222::-;26204:34;26200:1;26192:6;26188:14;26181:58;26273:5;26268:2;26260:6;26256:15;26249:30;26170:116;:::o;26292:176::-;26432:28;26428:1;26420:6;26416:14;26409:52;26398:70;:::o;26474:176::-;26614:28;26610:1;26602:6;26598:14;26591:52;26580:70;:::o;26656:229::-;26796:34;26792:1;26784:6;26780:14;26773:58;26865:12;26860:2;26852:6;26848:15;26841:37;26762:123;:::o;26891:221::-;27031:34;27027:1;27019:6;27015:14;27008:58;27100:4;27095:2;27087:6;27083:15;27076:29;26997:115;:::o;27118:177::-;27258:29;27254:1;27246:6;27242:14;27235:53;27224:71;:::o;27301:179::-;27441:31;27437:1;27429:6;27425:14;27418:55;27407:73;:::o;27486:220::-;27626:34;27622:1;27614:6;27610:14;27603:58;27695:3;27690:2;27682:6;27678:15;27671:28;27592:114;:::o;27712:182::-;27852:34;27848:1;27840:6;27836:14;27829:58;27818:76;:::o;27900:177::-;28040:29;28036:1;28028:6;28024:14;28017:53;28006:71;:::o;28083:228::-;28223:34;28219:1;28211:6;28207:14;28200:58;28292:11;28287:2;28279:6;28275:15;28268:36;28189:122;:::o;28317:224::-;28457:34;28453:1;28445:6;28441:14;28434:58;28526:7;28521:2;28513:6;28509:15;28502:32;28423:118;:::o;28547:223::-;28687:34;28683:1;28675:6;28671:14;28664:58;28756:6;28751:2;28743:6;28739:15;28732:31;28653:117;:::o;28776:176::-;28916:28;28912:1;28904:6;28900:14;28893:52;28882:70;:::o;28958:122::-;29031:24;29049:5;29031:24;:::i;:::-;29024:5;29021:35;29011:2;;29070:1;29067;29060:12;29011:2;29001:79;:::o;29086:122::-;29159:24;29177:5;29159:24;:::i;:::-;29152:5;29149:35;29139:2;;29198:1;29195;29188:12;29139:2;29129:79;:::o

Swarm Source

ipfs://7ab3fd021026bbe9fcda064a6a2687811f2255606552da17b64beec33db1d264
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.