ETH Price: $2,103.36 (-11.14%)
Gas: 1.06 Gwei

Token

SULEK (SLK)
 

Overview

Max Total Supply

405,000,000 SLK

Holders

82

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
Uniswap V2: SLK 7
Balance
241,670,266.979652342 SLK

Value
$0.00
0xe3ed80fed526744b7b57299afff5314b649f7197
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:
Sulek

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
No with 200 runs

Other Settings:
paris EvmVersion
File 1 of 1 : Sulek.sol
/*

Telegram - https://t.me/onlysulek 
Twitter  - https://twitter.com/onlysulek
Website  - https://sulek.tech

..............,,,,,,...........,+?S#S%*,..............,,..............
...........,:++++;;;,.........,S@@@@@@@S:...........,:++++;::,........
.........,:+%SS%??*+:.........:@@@#S#@@@@?:,........;+**?%S%?+:.......
......,,:;+?S?;+?%%?,........+S#??%%??%#@##%,.......:%SSS%?%S+;:,.....
....,,:;;+?%;.....,,........;#@*:;+*+;+*#@@S,........,:,,..,**+;:,....
...,:;;;+*?+...............,%@#+*??**++*#@@#*...............:*+;;;:...
.,:;;;;+***,...............:S@@SS###SS%S#@@@#+..............,+;;;;;:,.
.;********+:,,,,,,,,,,,,,..,%@@S%SSSSSS%#@@@@%..............:++;;;;+:.
:*?%?**++;;;;;;:::+;:::::::+@@#%#@@##S%%#@@S?;::::::,,,:::,,:++***?**:
;%%%?*++++*?%%?+++*+::::;?SSSS%SS######S#?;:::::+?+;:;;;;+++;;+**%%%%*
.:*%SS%%????%SSS%?**+;:+S#SSSSS#SSSSSSSS#+::;;++**++*???***+;+*?%%SSS?
...,;*SS#SSSSSSS#SS#%**####SSSS##S%%%SS##?;;+?%SS%SSS%%%%????%%SSS#S?:
......,;*%SSS###%*+?%?S######S###SSS#####S+*%SSS%SS##SSSSSSSS###%?+:..
..........,,::;++;:;*S###########S#######@?*??*;;;+?#######S%?+:......
...............,*+;:*#@##@##############@@S+++;;+++*%+;;;;:,,.........
................+*++#@@#@@###########@@@@@@+;;;+*?%%+.................
................,*+%@@##@####@########@@@@@S+++*?%S*,.................
.................:?#@@#@@####@@#######@@@@@@%??%S%;,..................
..................;#@@@@##@##@@#####@@@@@@@@#SSS?,....................
..................:@@@@@@@@#@@@@@@@@@@@@@@@@@#S+,.....................
.................,S@@@@@@@@@@@@@@@@@@@@@@@@@@#:.......................
.................:@@@#@@@@@#@@@@@@@@@@@@@@@@@#,.......................
.................+@@##@@@@@#@@@@@@@@@@@@@@@@@@,.......................

*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.21;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(
        address recipient,
        uint256 amount
    ) external returns (bool);

    function allowance(
        address owner,
        address spender
    ) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

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

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

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

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

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

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

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

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

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

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

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

contract Sulek is Context, IERC20, Ownable {
    using SafeMath for uint256;

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;

    bool public transferDelayEnabled = true;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 405_000_000 * 10 ** _decimals;
    string private constant _name = "SULEK";
    string private constant _symbol = "SLK";

    uint256 public _maxTxAmount = (_tTotal / 1000) * 15;
    uint256 public _maxWalletSize = (_tTotal / 1000) * 20;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;

    bool private tradingOpen;
    bool private inSwap = false;

    address public taxWallet;
    uint256 public initialBlock;

    event MaxTxAmountUpdated(uint256 _maxTxAmount);

    constructor(address _taxWallet) {
        taxWallet = _taxWallet;
        _balances[_msgSender()] = _tTotal;

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

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

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

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

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

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

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

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

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

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

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

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

        uint256 taxAmount = 0;
        uint256 amountAfterTax = amount;
        uint256 currentTaxFee = 0;

        if (
            from != owner() &&
            to != owner() &&
            from != taxWallet &&
            to != taxWallet
        ) {
            if (transferDelayEnabled) {
                if (
                    to != address(uniswapV2Router) &&
                    to != address(uniswapV2Pair)
                ) {
                    require(
                        _holderLastTransferTimestamp[tx.origin] < block.number,
                        "Transfer Delay enabled. Only one purchase per block allowed."
                    );
                    _holderLastTransferTimestamp[tx.origin] = block.number;
                }
            }

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

            if (to == uniswapV2Pair && from != address(this)) {
                currentTaxFee = calculateSellTaxFee();
            }

            if (currentTaxFee > 0) {
                taxAmount = amount.mul(currentTaxFee).div(100);
                amountAfterTax = amount.sub(taxAmount);
            }
        }

        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amountAfterTax);

        if (taxAmount > 0) {
            _balances[taxWallet] = _balances[taxWallet].add(taxAmount);
            emit Transfer(from, taxWallet, taxAmount);
        }

        emit Transfer(from, to, amountAfterTax);
    }

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

    function withdrawStuckEth(address receiver) public onlyOwner {
        address payable _to = payable(receiver);
        address _thisContract = address(this);
        _to.transfer(_thisContract.balance);
    }

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

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

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

    function calculateSellTaxFee() internal view returns (uint256) {
        uint256 blocksPassed = block.number - initialBlock;
        if (blocksPassed >= 100) {
            return 0;
        }

        uint256 taxDecreaseIntervals = blocksPassed;
        uint256 currentTaxFee = 100 - taxDecreaseIntervals;

        return currentTaxFee;
    }

    function calculateBuyTaxFee() internal view returns (uint256) {
        uint256 blocksPassed = block.number - initialBlock;
        if (blocksPassed >= 20) {
            return 0;
        }

        uint256 taxDecreaseIntervals = blocksPassed;
        uint256 currentTaxFee = 20 - taxDecreaseIntervals;

        return currentTaxFee;
    }

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

        initialBlock = block.number;
        tradingOpen = true;
    }

    receive() external payable {}
}

Settings
{
  "evmVersion": "paris",
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "metadata": {
    "useLiteralContent": true
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_taxWallet","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":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"taxWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"withdrawStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526001600560006101000a81548160ff021916908315150217905550600f6103e86009600a62000034919062000493565b631823cf40620000459190620004e4565b6200005191906200055e565b6200005d9190620004e4565b60065560146103e86009600a62000075919062000493565b631823cf40620000869190620004e4565b6200009291906200055e565b6200009e9190620004e4565b6007556000600960156101000a81548160ff021916908315150217905550348015620000c957600080fd5b50604051620038a6380380620038a68339818101604052810190620000ef919062000600565b600062000101620002f160201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620001f0919062000493565b631823cf40620002019190620004e4565b6001600062000215620002f160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000263620002f160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620002c2919062000493565b631823cf40620002d39190620004e4565b604051620002e2919062000643565b60405180910390a35062000660565b600033905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000387578086048111156200035f576200035e620002f9565b5b60018516156200036f5780820291505b80810290506200037f8562000328565b94506200033f565b94509492505050565b600082620003a2576001905062000475565b81620003b2576000905062000475565b8160018114620003cb5760028114620003d6576200040c565b600191505062000475565b60ff841115620003eb57620003ea620002f9565b5b8360020a915084821115620004055762000404620002f9565b5b5062000475565b5060208310610133831016604e8410600b8410161715620004465782820a90508381111562000440576200043f620002f9565b5b62000475565b62000455848484600162000335565b925090508184048111156200046f576200046e620002f9565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b6000620004a0826200047c565b9150620004ad8362000486565b9250620004dc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000390565b905092915050565b6000620004f1826200047c565b9150620004fe836200047c565b92508282026200050e816200047c565b91508282048414831517620005285762000527620002f9565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006200056b826200047c565b915062000578836200047c565b9250826200058b576200058a6200052f565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620005c8826200059b565b9050919050565b620005da81620005bb565b8114620005e657600080fd5b50565b600081519050620005fa81620005cf565b92915050565b60006020828403121562000619576200061862000596565b5b60006200062984828501620005e9565b91505092915050565b6200063d816200047c565b82525050565b60006020820190506200065a600083018462000632565b92915050565b61323680620006706000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab57806395d89b411161006f57806395d89b4114610411578063a9059cbb1461043c578063c876d0b914610479578063c9567bf9146104a4578063d34628cc146104bb578063dd62ed3e146104e457610140565b8063751039fc146103505780637ca8448a146103675780637d1db4a5146103905780638da5cb5b146103bb5780638f9a55c0146103e657610140565b80632dc0562d116100fd5780632dc0562d14610240578063313ce5671461026b57806331c2d847146102965780633bbac579146102bf57806370a08231146102fc578063715018a61461033957610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806323b872dd146101d85780632cb158641461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610521565b6040516101679190612279565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612343565b61055e565b6040516101a4919061239e565b60405180910390f35b3480156101b957600080fd5b506101c261057c565b6040516101cf91906123c8565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa91906123e3565b6105a0565b60405161020c919061239e565b60405180910390f35b34801561022157600080fd5b5061022a610679565b60405161023791906123c8565b60405180910390f35b34801561024c57600080fd5b5061025561067f565b6040516102629190612445565b60405180910390f35b34801561027757600080fd5b506102806106a5565b60405161028d919061247c565b60405180910390f35b3480156102a257600080fd5b506102bd60048036038101906102b891906125df565b6106ae565b005b3480156102cb57600080fd5b506102e660048036038101906102e19190612628565b6107d8565b6040516102f3919061239e565b60405180910390f35b34801561030857600080fd5b50610323600480360381019061031e9190612628565b61082e565b60405161033091906123c8565b60405180910390f35b34801561034557600080fd5b5061034e610877565b005b34801561035c57600080fd5b506103656109ca565b005b34801561037357600080fd5b5061038e60048036038101906103899190612628565b610b15565b005b34801561039c57600080fd5b506103a5610c17565b6040516103b291906123c8565b60405180910390f35b3480156103c757600080fd5b506103d0610c1d565b6040516103dd9190612445565b60405180910390f35b3480156103f257600080fd5b506103fb610c46565b60405161040891906123c8565b60405180910390f35b34801561041d57600080fd5b50610426610c4c565b6040516104339190612279565b60405180910390f35b34801561044857600080fd5b50610463600480360381019061045e9190612343565b610c89565b604051610470919061239e565b60405180910390f35b34801561048557600080fd5b5061048e610ca7565b60405161049b919061239e565b60405180910390f35b3480156104b057600080fd5b506104b9610cba565b005b3480156104c757600080fd5b506104e260048036038101906104dd91906125df565b6111de565b005b3480156104f057600080fd5b5061050b60048036038101906105069190612655565b611308565b60405161051891906123c8565b60405180910390f35b60606040518060400160405280600581526020017f53554c454b000000000000000000000000000000000000000000000000000000815250905090565b600061057261056b61138f565b8484611397565b6001905092915050565b60006009600a61058c91906127f7565b631823cf4061059b9190612842565b905090565b60006105ad848484611560565b61066e846105b961138f565b610669856040518060600160405280602881526020016131d960289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061061f61138f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2c9092919063ffffffff16565b611397565b600190509392505050565b600b5481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006009905090565b6106b661138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610743576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073a906128d0565b60405180910390fd5b60005b81518110156107d457600060036000848481518110610768576107676128f0565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107cc9061291f565b915050610746565b5050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61087f61138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461090c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610903906128d0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6109d261138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a56906128d0565b60405180910390fd5b6009600a610a6d91906127f7565b631823cf40610a7c9190612842565b6006819055506009600a610a9091906127f7565b631823cf40610a9f9190612842565b6007819055506000600560006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610aef91906127f7565b631823cf40610afe9190612842565b604051610b0b91906123c8565b60405180910390a1565b610b1d61138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610baa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba1906128d0565b60405180910390fd5b600081905060003090508173ffffffffffffffffffffffffffffffffffffffff166108fc8273ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015610c11573d6000803e3d6000fd5b50505050565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600381526020017f534c4b0000000000000000000000000000000000000000000000000000000000815250905090565b6000610c9d610c9661138f565b8484611560565b6001905092915050565b600560009054906101000a900460ff1681565b610cc261138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d46906128d0565b60405180910390fd5b600960149054906101000a900460ff1615610d9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d96906129b3565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610e3d30600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610e2991906127f7565b631823cf40610e389190612842565b611397565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ece91906129e8565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7b91906129e8565b6040518363ffffffff1660e01b8152600401610f98929190612a15565b6020604051808303816000875af1158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb91906129e8565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306110643061082e565b60008061106f610c1d565b426040518863ffffffff1660e01b815260040161109196959493929190612a83565b60606040518083038185885af11580156110af573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110d49190612af9565b505050600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611176929190612b4c565b6020604051808303816000875af1158015611195573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b99190612ba1565b5043600b819055506001600960146101000a81548160ff021916908315150217905550565b6111e661138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611273576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126a906128d0565b60405180910390fd5b60005b815181101561130457600160036000848481518110611298576112976128f0565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806112fc9061291f565b915050611276565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd90612c40565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611475576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146c90612cd2565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161155391906123c8565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c690612d64565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361163e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163590612df6565b60405180910390fd5b60008111611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167890612e88565b60405180910390fd5b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156117255750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61172e57600080fd5b600080829050600061173e610c1d565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141580156117ac575061177c610c1d565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156118065750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b80156118605750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15611c2b57600560009054906101000a900460ff16156119f257600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119265750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156119f15743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106119ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119a390612f1a565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16148015611a9d5750600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15611b4a57600654841115611ae7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ade90612f86565b60405180910390fd5b60075484611af48761082e565b611afe9190612fa6565b1115611b3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3690613026565b60405180910390fd5b611b47611f90565b90505b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148015611bd357503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b15611be357611be0611fd5565b90505b6000811115611c2a57611c126064611c04838761201a90919063ffffffff16565b61209490919063ffffffff16565b9250611c2783856120de90919063ffffffff16565b91505b5b611c7d84600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120de90919063ffffffff16565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611d1282600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461212890919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831115611ebf57611dd28360016000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461212890919063ffffffff16565b60016000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611eb691906123c8565b60405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611f1c91906123c8565b60405180910390a3505050505050565b6000838311158290611f74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6b9190612279565b60405180910390fd5b5060008385611f839190613046565b9050809150509392505050565b600080600b5443611fa19190613046565b905060148110611fb5576000915050611fd2565b60008190506000816014611fc99190613046565b90508093505050505b90565b600080600b5443611fe69190613046565b905060648110611ffa576000915050612017565b6000819050600081606461200e9190613046565b90508093505050505b90565b600080830361202c576000905061208e565b6000828461203a9190612842565b905082848261204991906130a9565b14612089576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120809061314c565b60405180910390fd5b809150505b92915050565b60006120d683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612186565b905092915050565b600061212083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f2c565b905092915050565b60008082846121379190612fa6565b90508381101561217c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612173906131b8565b60405180910390fd5b8091505092915050565b600080831182906121cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c49190612279565b60405180910390fd5b50600083856121dc91906130a9565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612223578082015181840152602081019050612208565b60008484015250505050565b6000601f19601f8301169050919050565b600061224b826121e9565b61225581856121f4565b9350612265818560208601612205565b61226e8161222f565b840191505092915050565b600060208201905081810360008301526122938184612240565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122da826122af565b9050919050565b6122ea816122cf565b81146122f557600080fd5b50565b600081359050612307816122e1565b92915050565b6000819050919050565b6123208161230d565b811461232b57600080fd5b50565b60008135905061233d81612317565b92915050565b6000806040838503121561235a576123596122a5565b5b6000612368858286016122f8565b92505060206123798582860161232e565b9150509250929050565b60008115159050919050565b61239881612383565b82525050565b60006020820190506123b3600083018461238f565b92915050565b6123c28161230d565b82525050565b60006020820190506123dd60008301846123b9565b92915050565b6000806000606084860312156123fc576123fb6122a5565b5b600061240a868287016122f8565b935050602061241b868287016122f8565b925050604061242c8682870161232e565b9150509250925092565b61243f816122cf565b82525050565b600060208201905061245a6000830184612436565b92915050565b600060ff82169050919050565b61247681612460565b82525050565b6000602082019050612491600083018461246d565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6124d48261222f565b810181811067ffffffffffffffff821117156124f3576124f261249c565b5b80604052505050565b600061250661229b565b905061251282826124cb565b919050565b600067ffffffffffffffff8211156125325761253161249c565b5b602082029050602081019050919050565b600080fd5b600061255b61255684612517565b6124fc565b9050808382526020820190506020840283018581111561257e5761257d612543565b5b835b818110156125a7578061259388826122f8565b845260208401935050602081019050612580565b5050509392505050565b600082601f8301126125c6576125c5612497565b5b81356125d6848260208601612548565b91505092915050565b6000602082840312156125f5576125f46122a5565b5b600082013567ffffffffffffffff811115612613576126126122aa565b5b61261f848285016125b1565b91505092915050565b60006020828403121561263e5761263d6122a5565b5b600061264c848285016122f8565b91505092915050565b6000806040838503121561266c5761266b6122a5565b5b600061267a858286016122f8565b925050602061268b858286016122f8565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561271b578086048111156126f7576126f6612695565b5b60018516156127065780820291505b8081029050612714856126c4565b94506126db565b94509492505050565b60008261273457600190506127f0565b8161274257600090506127f0565b8160018114612758576002811461276257612791565b60019150506127f0565b60ff84111561277457612773612695565b5b8360020a91508482111561278b5761278a612695565b5b506127f0565b5060208310610133831016604e8410600b84101617156127c65782820a9050838111156127c1576127c0612695565b5b6127f0565b6127d384848460016126d1565b925090508184048111156127ea576127e9612695565b5b81810290505b9392505050565b60006128028261230d565b915061280d83612460565b925061283a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612724565b905092915050565b600061284d8261230d565b91506128588361230d565b92508282026128668161230d565b9150828204841483151761287d5761287c612695565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006128ba6020836121f4565b91506128c582612884565b602082019050919050565b600060208201905081810360008301526128e9816128ad565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061292a8261230d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361295c5761295b612695565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061299d6017836121f4565b91506129a882612967565b602082019050919050565b600060208201905081810360008301526129cc81612990565b9050919050565b6000815190506129e2816122e1565b92915050565b6000602082840312156129fe576129fd6122a5565b5b6000612a0c848285016129d3565b91505092915050565b6000604082019050612a2a6000830185612436565b612a376020830184612436565b9392505050565b6000819050919050565b6000819050919050565b6000612a6d612a68612a6384612a3e565b612a48565b61230d565b9050919050565b612a7d81612a52565b82525050565b600060c082019050612a986000830189612436565b612aa560208301886123b9565b612ab26040830187612a74565b612abf6060830186612a74565b612acc6080830185612436565b612ad960a08301846123b9565b979650505050505050565b600081519050612af381612317565b92915050565b600080600060608486031215612b1257612b116122a5565b5b6000612b2086828701612ae4565b9350506020612b3186828701612ae4565b9250506040612b4286828701612ae4565b9150509250925092565b6000604082019050612b616000830185612436565b612b6e60208301846123b9565b9392505050565b612b7e81612383565b8114612b8957600080fd5b50565b600081519050612b9b81612b75565b92915050565b600060208284031215612bb757612bb66122a5565b5b6000612bc584828501612b8c565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612c2a6024836121f4565b9150612c3582612bce565b604082019050919050565b60006020820190508181036000830152612c5981612c1d565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612cbc6022836121f4565b9150612cc782612c60565b604082019050919050565b60006020820190508181036000830152612ceb81612caf565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612d4e6025836121f4565b9150612d5982612cf2565b604082019050919050565b60006020820190508181036000830152612d7d81612d41565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612de06023836121f4565b9150612deb82612d84565b604082019050919050565b60006020820190508181036000830152612e0f81612dd3565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612e726029836121f4565b9150612e7d82612e16565b604082019050919050565b60006020820190508181036000830152612ea181612e65565b9050919050565b7f5472616e736665722044656c617920656e61626c65642e204f6e6c79206f6e6560008201527f2070757263686173652070657220626c6f636b20616c6c6f7765642e00000000602082015250565b6000612f04603c836121f4565b9150612f0f82612ea8565b604082019050919050565b60006020820190508181036000830152612f3381612ef7565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612f706019836121f4565b9150612f7b82612f3a565b602082019050919050565b60006020820190508181036000830152612f9f81612f63565b9050919050565b6000612fb18261230d565b9150612fbc8361230d565b9250828201905080821115612fd457612fd3612695565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613010601a836121f4565b915061301b82612fda565b602082019050919050565b6000602082019050818103600083015261303f81613003565b9050919050565b60006130518261230d565b915061305c8361230d565b925082820390508181111561307457613073612695565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006130b48261230d565b91506130bf8361230d565b9250826130cf576130ce61307a565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006131366021836121f4565b9150613141826130da565b604082019050919050565b6000602082019050818103600083015261316581613129565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131a2601b836121f4565b91506131ad8261316c565b602082019050919050565b600060208201905081810360008301526131d181613195565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200d9327aae6696bcaf7e6c6589f6196b13ea61847ff87268e90a3be53fecf769464736f6c6343000815003300000000000000000000000045b1f3a8f1b8ca481dc51e3d8b3ce448f4959f8e

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063751039fc116100ab57806395d89b411161006f57806395d89b4114610411578063a9059cbb1461043c578063c876d0b914610479578063c9567bf9146104a4578063d34628cc146104bb578063dd62ed3e146104e457610140565b8063751039fc146103505780637ca8448a146103675780637d1db4a5146103905780638da5cb5b146103bb5780638f9a55c0146103e657610140565b80632dc0562d116100fd5780632dc0562d14610240578063313ce5671461026b57806331c2d847146102965780633bbac579146102bf57806370a08231146102fc578063715018a61461033957610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806323b872dd146101d85780632cb158641461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610521565b6040516101679190612279565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612343565b61055e565b6040516101a4919061239e565b60405180910390f35b3480156101b957600080fd5b506101c261057c565b6040516101cf91906123c8565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa91906123e3565b6105a0565b60405161020c919061239e565b60405180910390f35b34801561022157600080fd5b5061022a610679565b60405161023791906123c8565b60405180910390f35b34801561024c57600080fd5b5061025561067f565b6040516102629190612445565b60405180910390f35b34801561027757600080fd5b506102806106a5565b60405161028d919061247c565b60405180910390f35b3480156102a257600080fd5b506102bd60048036038101906102b891906125df565b6106ae565b005b3480156102cb57600080fd5b506102e660048036038101906102e19190612628565b6107d8565b6040516102f3919061239e565b60405180910390f35b34801561030857600080fd5b50610323600480360381019061031e9190612628565b61082e565b60405161033091906123c8565b60405180910390f35b34801561034557600080fd5b5061034e610877565b005b34801561035c57600080fd5b506103656109ca565b005b34801561037357600080fd5b5061038e60048036038101906103899190612628565b610b15565b005b34801561039c57600080fd5b506103a5610c17565b6040516103b291906123c8565b60405180910390f35b3480156103c757600080fd5b506103d0610c1d565b6040516103dd9190612445565b60405180910390f35b3480156103f257600080fd5b506103fb610c46565b60405161040891906123c8565b60405180910390f35b34801561041d57600080fd5b50610426610c4c565b6040516104339190612279565b60405180910390f35b34801561044857600080fd5b50610463600480360381019061045e9190612343565b610c89565b604051610470919061239e565b60405180910390f35b34801561048557600080fd5b5061048e610ca7565b60405161049b919061239e565b60405180910390f35b3480156104b057600080fd5b506104b9610cba565b005b3480156104c757600080fd5b506104e260048036038101906104dd91906125df565b6111de565b005b3480156104f057600080fd5b5061050b60048036038101906105069190612655565b611308565b60405161051891906123c8565b60405180910390f35b60606040518060400160405280600581526020017f53554c454b000000000000000000000000000000000000000000000000000000815250905090565b600061057261056b61138f565b8484611397565b6001905092915050565b60006009600a61058c91906127f7565b631823cf4061059b9190612842565b905090565b60006105ad848484611560565b61066e846105b961138f565b610669856040518060600160405280602881526020016131d960289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061061f61138f565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2c9092919063ffffffff16565b611397565b600190509392505050565b600b5481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006009905090565b6106b661138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610743576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161073a906128d0565b60405180910390fd5b60005b81518110156107d457600060036000848481518110610768576107676128f0565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107cc9061291f565b915050610746565b5050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61087f61138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461090c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610903906128d0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6109d261138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a5f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a56906128d0565b60405180910390fd5b6009600a610a6d91906127f7565b631823cf40610a7c9190612842565b6006819055506009600a610a9091906127f7565b631823cf40610a9f9190612842565b6007819055506000600560006101000a81548160ff0219169083151502179055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6009600a610aef91906127f7565b631823cf40610afe9190612842565b604051610b0b91906123c8565b60405180910390a1565b610b1d61138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610baa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba1906128d0565b60405180910390fd5b600081905060003090508173ffffffffffffffffffffffffffffffffffffffff166108fc8273ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015610c11573d6000803e3d6000fd5b50505050565b60065481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600381526020017f534c4b0000000000000000000000000000000000000000000000000000000000815250905090565b6000610c9d610c9661138f565b8484611560565b6001905092915050565b600560009054906101000a900460ff1681565b610cc261138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d46906128d0565b60405180910390fd5b600960149054906101000a900460ff1615610d9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d96906129b3565b60405180910390fd5b737a250d5630b4cf539739df2c5dacb4c659f2488d600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610e3d30600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a610e2991906127f7565b631823cf40610e389190612842565b611397565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ece91906129e8565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7b91906129e8565b6040518363ffffffff1660e01b8152600401610f98929190612a15565b6020604051808303816000875af1158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb91906129e8565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71947306110643061082e565b60008061106f610c1d565b426040518863ffffffff1660e01b815260040161109196959493929190612a83565b60606040518083038185885af11580156110af573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906110d49190612af9565b505050600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611176929190612b4c565b6020604051808303816000875af1158015611195573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111b99190612ba1565b5043600b819055506001600960146101000a81548160ff021916908315150217905550565b6111e661138f565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611273576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126a906128d0565b60405180910390fd5b60005b815181101561130457600160036000848481518110611298576112976128f0565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806112fc9061291f565b915050611276565b5050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd90612c40565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611475576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161146c90612cd2565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161155391906123c8565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036115cf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115c690612d64565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361163e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163590612df6565b60405180910390fd5b60008111611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167890612e88565b60405180910390fd5b600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156117255750600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61172e57600080fd5b600080829050600061173e610c1d565b73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141580156117ac575061177c610c1d565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b80156118065750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b80156118605750600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15611c2b57600560009054906101000a900460ff16156119f257600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119265750600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156119f15743600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106119ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119a390612f1a565b60405180910390fd5b43600460003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16148015611a9d5750600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15611b4a57600654841115611ae7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ade90612f86565b60405180910390fd5b60075484611af48761082e565b611afe9190612fa6565b1115611b3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b3690613026565b60405180910390fd5b611b47611f90565b90505b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148015611bd357503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614155b15611be357611be0611fd5565b90505b6000811115611c2a57611c126064611c04838761201a90919063ffffffff16565b61209490919063ffffffff16565b9250611c2783856120de90919063ffffffff16565b91505b5b611c7d84600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120de90919063ffffffff16565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611d1282600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461212890919063ffffffff16565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000831115611ebf57611dd28360016000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461212890919063ffffffff16565b60016000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611eb691906123c8565b60405180910390a35b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611f1c91906123c8565b60405180910390a3505050505050565b6000838311158290611f74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6b9190612279565b60405180910390fd5b5060008385611f839190613046565b9050809150509392505050565b600080600b5443611fa19190613046565b905060148110611fb5576000915050611fd2565b60008190506000816014611fc99190613046565b90508093505050505b90565b600080600b5443611fe69190613046565b905060648110611ffa576000915050612017565b6000819050600081606461200e9190613046565b90508093505050505b90565b600080830361202c576000905061208e565b6000828461203a9190612842565b905082848261204991906130a9565b14612089576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120809061314c565b60405180910390fd5b809150505b92915050565b60006120d683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612186565b905092915050565b600061212083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f2c565b905092915050565b60008082846121379190612fa6565b90508381101561217c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612173906131b8565b60405180910390fd5b8091505092915050565b600080831182906121cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c49190612279565b60405180910390fd5b50600083856121dc91906130a9565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612223578082015181840152602081019050612208565b60008484015250505050565b6000601f19601f8301169050919050565b600061224b826121e9565b61225581856121f4565b9350612265818560208601612205565b61226e8161222f565b840191505092915050565b600060208201905081810360008301526122938184612240565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006122da826122af565b9050919050565b6122ea816122cf565b81146122f557600080fd5b50565b600081359050612307816122e1565b92915050565b6000819050919050565b6123208161230d565b811461232b57600080fd5b50565b60008135905061233d81612317565b92915050565b6000806040838503121561235a576123596122a5565b5b6000612368858286016122f8565b92505060206123798582860161232e565b9150509250929050565b60008115159050919050565b61239881612383565b82525050565b60006020820190506123b3600083018461238f565b92915050565b6123c28161230d565b82525050565b60006020820190506123dd60008301846123b9565b92915050565b6000806000606084860312156123fc576123fb6122a5565b5b600061240a868287016122f8565b935050602061241b868287016122f8565b925050604061242c8682870161232e565b9150509250925092565b61243f816122cf565b82525050565b600060208201905061245a6000830184612436565b92915050565b600060ff82169050919050565b61247681612460565b82525050565b6000602082019050612491600083018461246d565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6124d48261222f565b810181811067ffffffffffffffff821117156124f3576124f261249c565b5b80604052505050565b600061250661229b565b905061251282826124cb565b919050565b600067ffffffffffffffff8211156125325761253161249c565b5b602082029050602081019050919050565b600080fd5b600061255b61255684612517565b6124fc565b9050808382526020820190506020840283018581111561257e5761257d612543565b5b835b818110156125a7578061259388826122f8565b845260208401935050602081019050612580565b5050509392505050565b600082601f8301126125c6576125c5612497565b5b81356125d6848260208601612548565b91505092915050565b6000602082840312156125f5576125f46122a5565b5b600082013567ffffffffffffffff811115612613576126126122aa565b5b61261f848285016125b1565b91505092915050565b60006020828403121561263e5761263d6122a5565b5b600061264c848285016122f8565b91505092915050565b6000806040838503121561266c5761266b6122a5565b5b600061267a858286016122f8565b925050602061268b858286016122f8565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561271b578086048111156126f7576126f6612695565b5b60018516156127065780820291505b8081029050612714856126c4565b94506126db565b94509492505050565b60008261273457600190506127f0565b8161274257600090506127f0565b8160018114612758576002811461276257612791565b60019150506127f0565b60ff84111561277457612773612695565b5b8360020a91508482111561278b5761278a612695565b5b506127f0565b5060208310610133831016604e8410600b84101617156127c65782820a9050838111156127c1576127c0612695565b5b6127f0565b6127d384848460016126d1565b925090508184048111156127ea576127e9612695565b5b81810290505b9392505050565b60006128028261230d565b915061280d83612460565b925061283a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612724565b905092915050565b600061284d8261230d565b91506128588361230d565b92508282026128668161230d565b9150828204841483151761287d5761287c612695565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006128ba6020836121f4565b91506128c582612884565b602082019050919050565b600060208201905081810360008301526128e9816128ad565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061292a8261230d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361295c5761295b612695565b5b600182019050919050565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b600061299d6017836121f4565b91506129a882612967565b602082019050919050565b600060208201905081810360008301526129cc81612990565b9050919050565b6000815190506129e2816122e1565b92915050565b6000602082840312156129fe576129fd6122a5565b5b6000612a0c848285016129d3565b91505092915050565b6000604082019050612a2a6000830185612436565b612a376020830184612436565b9392505050565b6000819050919050565b6000819050919050565b6000612a6d612a68612a6384612a3e565b612a48565b61230d565b9050919050565b612a7d81612a52565b82525050565b600060c082019050612a986000830189612436565b612aa560208301886123b9565b612ab26040830187612a74565b612abf6060830186612a74565b612acc6080830185612436565b612ad960a08301846123b9565b979650505050505050565b600081519050612af381612317565b92915050565b600080600060608486031215612b1257612b116122a5565b5b6000612b2086828701612ae4565b9350506020612b3186828701612ae4565b9250506040612b4286828701612ae4565b9150509250925092565b6000604082019050612b616000830185612436565b612b6e60208301846123b9565b9392505050565b612b7e81612383565b8114612b8957600080fd5b50565b600081519050612b9b81612b75565b92915050565b600060208284031215612bb757612bb66122a5565b5b6000612bc584828501612b8c565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612c2a6024836121f4565b9150612c3582612bce565b604082019050919050565b60006020820190508181036000830152612c5981612c1d565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612cbc6022836121f4565b9150612cc782612c60565b604082019050919050565b60006020820190508181036000830152612ceb81612caf565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612d4e6025836121f4565b9150612d5982612cf2565b604082019050919050565b60006020820190508181036000830152612d7d81612d41565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612de06023836121f4565b9150612deb82612d84565b604082019050919050565b60006020820190508181036000830152612e0f81612dd3565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612e726029836121f4565b9150612e7d82612e16565b604082019050919050565b60006020820190508181036000830152612ea181612e65565b9050919050565b7f5472616e736665722044656c617920656e61626c65642e204f6e6c79206f6e6560008201527f2070757263686173652070657220626c6f636b20616c6c6f7765642e00000000602082015250565b6000612f04603c836121f4565b9150612f0f82612ea8565b604082019050919050565b60006020820190508181036000830152612f3381612ef7565b9050919050565b7f4578636565647320746865205f6d61785478416d6f756e742e00000000000000600082015250565b6000612f706019836121f4565b9150612f7b82612f3a565b602082019050919050565b60006020820190508181036000830152612f9f81612f63565b9050919050565b6000612fb18261230d565b9150612fbc8361230d565b9250828201905080821115612fd457612fd3612695565b5b92915050565b7f4578636565647320746865206d617857616c6c657453697a652e000000000000600082015250565b6000613010601a836121f4565b915061301b82612fda565b602082019050919050565b6000602082019050818103600083015261303f81613003565b9050919050565b60006130518261230d565b915061305c8361230d565b925082820390508181111561307457613073612695565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006130b48261230d565b91506130bf8361230d565b9250826130cf576130ce61307a565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b60006131366021836121f4565b9150613141826130da565b604082019050919050565b6000602082019050818103600083015261316581613129565b9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006131a2601b836121f4565b91506131ad8261316c565b602082019050919050565b600060208201905081810360008301526131d181613195565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200d9327aae6696bcaf7e6c6589f6196b13ea61847ff87268e90a3be53fecf769464736f6c63430008150033

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

00000000000000000000000045b1f3a8f1b8ca481dc51e3d8b3ce448f4959f8e

-----Decoded View---------------
Arg [0] : _taxWallet (address): 0x45b1F3A8F1b8CA481Dc51e3d8b3ce448F4959F8E

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000045b1f3a8f1b8ca481dc51e3d8b3ce448f4959f8e


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.