ETH Price: $2,988.79 (-2.18%)
Gas: 1 Gwei

Contract

0x33D5ac1aE5b3d3ACA28872601273531016dbD9a5
 

Overview

ETH Balance

1 wei

Eth Value

Less Than $0.01 (@ $2,988.79/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve198674972024-05-14 9:56:2354 days ago1715680583IN
0x33D5ac1a...016dbD9a5
0 ETH0.000182457.32003621
Approve198674852024-05-14 9:53:5954 days ago1715680439IN
0x33D5ac1a...016dbD9a5
0 ETH0.000170676.83129532
Transfer195385162024-03-29 8:37:23100 days ago1711701443IN
0x33D5ac1a...016dbD9a5
0 ETH0.0015703224.42143209
Approve192150012024-02-12 22:43:47145 days ago1707777827IN
0x33D5ac1a...016dbD9a5
0 ETH0.00476667100.96964055
Approve189223462024-01-02 21:22:59186 days ago1704230579IN
0x33D5ac1a...016dbD9a5
0 ETH0.0010050121.26151365
Approve189210972024-01-02 17:11:11187 days ago1704215471IN
0x33D5ac1a...016dbD9a5
0 ETH0.0012208925.82863048
Approve189166862024-01-02 2:18:59187 days ago1704161939IN
0x33D5ac1a...016dbD9a5
0 ETH0.0004064916.26955082
Approve189166802024-01-02 2:17:47187 days ago1704161867IN
0x33D5ac1a...016dbD9a5
0 ETH0.0005974712.63990791
Approve188985672023-12-30 13:16:35190 days ago1703942195IN
0x33D5ac1a...016dbD9a5
0 ETH0.0007346315.56143123
Approve188851782023-12-28 16:04:35192 days ago1703779475IN
0x33D5ac1a...016dbD9a5
0 ETH0.0017324136.65019168
Approve188801522023-12-27 23:08:35192 days ago1703718515IN
0x33D5ac1a...016dbD9a5
0 ETH0.0010676322.6150572
Approve188783292023-12-27 16:57:47193 days ago1703696267IN
0x33D5ac1a...016dbD9a5
0 ETH0.0020736943.92581648
Approve188773832023-12-27 13:46:23193 days ago1703684783IN
0x33D5ac1a...016dbD9a5
0 ETH0.0014642431.19057177
Approve188720372023-12-26 19:46:35193 days ago1703619995IN
0x33D5ac1a...016dbD9a5
0 ETH0.000915319.38846352
Approve188711592023-12-26 16:47:59194 days ago1703609279IN
0x33D5ac1a...016dbD9a5
0 ETH0.0014021729.66372766
Approve188711592023-12-26 16:47:59194 days ago1703609279IN
0x33D5ac1a...016dbD9a5
0 ETH0.0014021729.66372766
Approve188711592023-12-26 16:47:59194 days ago1703609279IN
0x33D5ac1a...016dbD9a5
0 ETH0.0014021729.66372766
Approve188711582023-12-26 16:47:47194 days ago1703609267IN
0x33D5ac1a...016dbD9a5
0 ETH0.001423130.10654159
Approve188665682023-12-26 1:22:47194 days ago1703553767IN
0x33D5ac1a...016dbD9a5
0 ETH0.0006389513.61072459
Approve188660502023-12-25 23:38:23194 days ago1703547503IN
0x33D5ac1a...016dbD9a5
0 ETH0.00057912.33684456
Approve188651192023-12-25 20:29:11194 days ago1703536151IN
0x33D5ac1a...016dbD9a5
0 ETH0.0008867318.75936725
Approve188649032023-12-25 19:45:35194 days ago1703533535IN
0x33D5ac1a...016dbD9a5
0 ETH0.0007157415.24639831
Approve188648482023-12-25 19:34:35194 days ago1703532875IN
0x33D5ac1a...016dbD9a5
0 ETH0.000511818.95766316
Approve188648402023-12-25 19:32:59194 days ago1703532779IN
0x33D5ac1a...016dbD9a5
0 ETH0.0009108119.40672376
Approve188648312023-12-25 19:31:11194 days ago1703532671IN
0x33D5ac1a...016dbD9a5
0 ETH0.0009624420.3869015
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
191457632024-02-03 5:31:11155 days ago1706938271
0x33D5ac1a...016dbD9a5
0.009563 ETH
191457632024-02-03 5:31:11155 days ago1706938271
0x33D5ac1a...016dbD9a5
0.00592906 ETH
191457632024-02-03 5:31:11155 days ago1706938271
0x33D5ac1a...016dbD9a5
0.00363394 ETH
191457632024-02-03 5:31:11155 days ago1706938271
0x33D5ac1a...016dbD9a5
0.0047815 ETH
191457632024-02-03 5:31:11155 days ago1706938271
0x33D5ac1a...016dbD9a5
0.02390751 ETH
188711672023-12-26 16:49:35194 days ago1703609375
0x33D5ac1a...016dbD9a5
0.01473039 ETH
188711672023-12-26 16:49:35194 days ago1703609375
0x33D5ac1a...016dbD9a5
0.00913284 ETH
188711672023-12-26 16:49:35194 days ago1703609375
0x33D5ac1a...016dbD9a5
0.00559755 ETH
188711672023-12-26 16:49:35194 days ago1703609375
0x33D5ac1a...016dbD9a5
0.00736519 ETH
188711672023-12-26 16:49:35194 days ago1703609375
0x33D5ac1a...016dbD9a5
0.03682599 ETH
188648052023-12-25 19:25:59194 days ago1703532359
0x33D5ac1a...016dbD9a5
0.02515607 ETH
188648052023-12-25 19:25:59194 days ago1703532359
0x33D5ac1a...016dbD9a5
0.01559676 ETH
188648052023-12-25 19:25:59194 days ago1703532359
0x33D5ac1a...016dbD9a5
0.0095593 ETH
188648052023-12-25 19:25:59194 days ago1703532359
0x33D5ac1a...016dbD9a5
0.01257803 ETH
188648052023-12-25 19:25:59194 days ago1703532359
0x33D5ac1a...016dbD9a5
0.06289018 ETH
188641822023-12-25 17:20:11195 days ago1703524811
0x33D5ac1a...016dbD9a5
0.0401325 ETH
188641822023-12-25 17:20:11195 days ago1703524811
0x33D5ac1a...016dbD9a5
0.02488215 ETH
188641822023-12-25 17:20:11195 days ago1703524811
0x33D5ac1a...016dbD9a5
0.01525035 ETH
188641822023-12-25 17:20:11195 days ago1703524811
0x33D5ac1a...016dbD9a5
0.02006625 ETH
188641822023-12-25 17:20:11195 days ago1703524811
0x33D5ac1a...016dbD9a5
0.10033126 ETH
188637252023-12-25 15:47:47195 days ago1703519267
0x33D5ac1a...016dbD9a5
0.08537593 ETH
188637252023-12-25 15:47:47195 days ago1703519267
0x33D5ac1a...016dbD9a5
0.05293307 ETH
188637252023-12-25 15:47:47195 days ago1703519267
0x33D5ac1a...016dbD9a5
0.03244285 ETH
188637252023-12-25 15:47:47195 days ago1703519267
0x33D5ac1a...016dbD9a5
0.04268796 ETH
188637252023-12-25 15:47:47195 days ago1703519267
0x33D5ac1a...016dbD9a5
0.21343983 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Sandwich

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : sandwich.sol
// SPDX-License-Identifier: MIT
//https://sandwich.bot/
//https://twitter.com/SandwichERC20
//https://t.me/SandwichChat
//https://archives.sandwich.bot/

pragma solidity 0.8.19;

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

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

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "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, " multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "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() payable {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

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

    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0), "new owner is zero address");
        _owner = newOwner;
        emit OwnershipTransferred(_owner, newOwner);
    }

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
}

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

    mapping(address => uint256) private _balance;
    mapping(address => bool) private _isExcludedWallet;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint8 private constant _decimals = 18;
    uint256 private _totalSupply = 5_000_000 * 10 ** _decimals;

    string private constant _name = "Sandwich";
    string private constant _symbol = "Sandwich";

    uint256 public buyFee = 10;
    uint256 public sellFee = 10;
    uint256 public maxAmountPerTx = (_totalSupply * 1) / 100;
    uint256 public maxAmountPerWallet = (_totalSupply * 1) / 100;
    uint256 public phoenixPercent = 20;
    uint256 private maxSwapTokenAmount = 250_000 * 10 ** _decimals;

    IUniswapV2Router02 private constant uniswapV2Router =
        IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address public uniswapV2Pair;
    address public stakingWallet;
    address payable private taxWallet;
    address payable private phoenixWallet;
    address payable private devWallet1;
    address payable private devWallet2;

    bool private swapEnabled = false;
    bool private inSwapAndLiquify = false;

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

    constructor(
        address owner,
        address _taxWallet,
        address _phoenixWallet
    ) payable {
        taxWallet = payable(_taxWallet);
        phoenixWallet = payable(_phoenixWallet);
        devWallet1 = payable(0xb5ef669ffB567d9fc6dBa54934fcf8618Edc003d);
        devWallet2 = payable(0xDb26CD2AB5968e7189201e50F332b80d1f9e2efc);
        address cexWallet = 0xbE51c0Aa0Fe35A16bDD1dB48c8Ef335B518c7912;
        stakingWallet = 0x687d8E292CecA0cB77d71490ed9682ccba71E27C;
        _isExcludedWallet[_msgSender()] = true;
        _isExcludedWallet[address(this)] = true;
        _isExcludedWallet[taxWallet] = true;
        _isExcludedWallet[phoenixWallet] = true;
        _isExcludedWallet[devWallet1] = true;
        _isExcludedWallet[devWallet2] = true;
        _isExcludedWallet[owner] = true;
        _mint(_msgSender(), _totalSupply);
        _transfer(_msgSender(), stakingWallet, _totalSupply.mul(11).div(100));
        _transfer(_msgSender(), cexWallet, _totalSupply.mul(9).div(100));

        _approve(address(this), address(uniswapV2Router), type(uint256).max);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );

        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    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 view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balance[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, "low allowance")
        );
        return true;
    }

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

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

        uint256 _tax = 0;
        if (from != owner() && to != owner()) {
            require(swapEnabled, "Trading is not allowed");
        }
        if (!_isExcludedWallet[from] && !_isExcludedWallet[to]) {
            if (from == uniswapV2Pair && to != address(uniswapV2Router)) {
                require(
                    _balance[to] + amount <= maxAmountPerWallet ||
                        maxAmountPerWallet == 0,
                    "Exceed max amount per wallet"
                );
                require(
                    amount <= maxAmountPerTx || maxAmountPerTx == 0,
                    "Exceed max amount per tx"
                );
                _tax = buyFee;
            } else if (to == uniswapV2Pair) {
                require(
                    amount <= maxAmountPerTx || maxAmountPerTx == 0,
                    "Exceed max amount per tx"
                );
                _tax = sellFee;
            } else {
                _tax = 0;
            }
        }

        uint256 taxAmount = amount.mul( _tax).div(100);
        uint256 transferAmount = amount.sub(taxAmount);

        _balance[from] = _balance[from].sub(amount);
        _balance[address(this)] = _balance[address(this)] + taxAmount;

        uint256 cAmount = _balance[address(this)];
        if (
            !inSwapAndLiquify &&
            from != uniswapV2Pair &&
            to == uniswapV2Pair &&
            swapEnabled
        ) {
            if (cAmount >= maxSwapTokenAmount) {
                swapTokensForEth(cAmount);
                uint256 ethBalance = address(this).balance;
                if (ethBalance > 0) {
                    sendETHToFee(ethBalance);
                }
            }
        }

        _balance[to] = _balance[to] + transferAmount;

        if (taxAmount > 0) {
            emit Transfer(from, address(this), taxAmount);
        }

        emit Transfer(from, to, transferAmount);
    }

    function _mint(address to, uint256 amount) private {
        _balance[to] = amount;
        emit Transfer(address(0), to, amount);
    }

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

    function buyBackAndBurn() public payable {
        address[] memory path = new address[](2);
        path[0] = uniswapV2Router.WETH();
        path[1] = address(this);

        uniswapV2Router.swapExactETHForTokensSupportingFeeOnTransferTokens{
            value: msg.value
        }(0, path, _msgSender(), block.timestamp);
        uint256 burnAmount = _balance[_msgSender()];
        _burn(_msgSender(), burnAmount);
    }

    function burn(uint256 value) public {
        _burn(msg.sender, value);
    }

    function _burn(address account, uint256 value) internal {
        require(_balance[account] >= value, "Invalid amount");
        unchecked {
            _totalSupply -= value;
            _balance[account] -= value;
        }

        emit Transfer(account, address(0), value);
    }
 
    function sendETHToFee(uint256 _amount) private {
        uint256 phoenixAmount = (_amount * phoenixPercent) / 100;
        uint256 feeAmount = _amount.sub(phoenixAmount);
        phoenixWallet.transfer(phoenixAmount);
        devWallet1.transfer(feeAmount * 19 / 100);
        devWallet2.transfer(feeAmount * 31 / 100);
        taxWallet.transfer(feeAmount * 50 / 100);
    }

    function manualSwap() external {
        require(
            _msgSender() == owner() ||
                _msgSender() == taxWallet ||
                _msgSender() == devWallet1 ||
                _msgSender() == devWallet2,
            "Invalid permission"
        );

        uint256 tokenBalance = _balance[address(this)];
        if (tokenBalance > 0) {
            swapTokensForEth(tokenBalance);
        }

        uint256 ethBalance = address(this).balance;
        if (ethBalance > 0) {
            sendETHToFee(ethBalance);
        }
    }

    function openTrading() public onlyOwner {
        require(!swapEnabled, "token is already enabled for trading");
        swapEnabled = true;
    }

    function _setFee(uint256 _buyFee, uint256 _sellFee) private {
        buyFee = _buyFee;
        sellFee = _sellFee;
    }

    function _setMaxAmountPerTx(uint256 _maxAmountPerTx) private {
        maxAmountPerTx = _maxAmountPerTx;
    }

    function _setMaxAmountPerWallet(uint256 _maxAmountPerWallet) private {
        maxAmountPerWallet = _maxAmountPerWallet;
    }

    function _setMaxSwapTokenAmount(uint256 _maxSwapTokenAmount) private {
        maxSwapTokenAmount = _maxSwapTokenAmount;
    }

    function _setPhoenixPercent(uint256 _phoenixPercent) private {
        phoenixPercent = _phoenixPercent;
    }

    function setFee(uint256 _buyFee, uint256 _sellFee) external {
        require(
            _msgSender() == owner() ||
            _msgSender() == taxWallet ||
            _msgSender() == devWallet1 ||
            _msgSender() == devWallet2,
            "Invalid permission"
        );
        require(_buyFee <= 5 && _sellFee <=5, "limited to 5 percent" );
        _setFee(_buyFee, _sellFee);
    }

    function setMaxAmountPerTx(uint256 _maxAmountPerTx) external onlyOwner {
        require (_maxAmountPerTx >= _totalSupply.mul(5).div(1000), "maxTx is limited to 0.5%");
        _setMaxAmountPerTx(_maxAmountPerTx);
    }

    function setMaxAmountPerWallet(
        uint256 _maxAmountPerWallet
    ) external onlyOwner {
        require (_maxAmountPerWallet >= _totalSupply.mul(5).div(1000), "maxWallet is limited to 0.5%");
        _setMaxAmountPerWallet(_maxAmountPerWallet);
    }

    function setPhoenixPercent(uint256 _phoenixPercent) external {
        require(
            _msgSender() == owner() || _msgSender() == phoenixWallet,
            "Invalid permission"
        );
        _setPhoenixPercent(_phoenixPercent);
    }

    function setMaxSwapTokenAmount(
        uint256 _maxSwapTokenAmount
    ) external {
        require(
            _msgSender() == owner() ||
            _msgSender() == taxWallet ||
            _msgSender() == devWallet1 ||
            _msgSender() == devWallet2,
            "Invalid permission"
        );
        _setMaxSwapTokenAmount(_maxSwapTokenAmount);
    }

    function setTaxWallet(address _taxWallet) external onlyOwner {
        taxWallet = payable(_taxWallet);
    }

    function setPhoenixWallet(address _phoenixWallet) external onlyOwner {
        phoenixWallet = payable(_phoenixWallet);
    }

    function setDevWallet1(address _devWallet) external {
        require(_msgSender() == devWallet1);
        devWallet1 = payable(_devWallet);
    }

    function setDevWallet2(address _devWallet) external {
        require(_msgSender() == devWallet2);
        devWallet2 = payable(_devWallet);
    }

    receive() external payable {}
}

contract Factory is Context, Ownable {
    Sandwich public sandwich;
    IUniswapV2Router02 private constant uniswapV2Router =
        IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

    event SandwichTokenDeployed(address tokenAddress);

    constructor(address _taxWallet, address _phoenixWallet) payable {
        sandwich = new Sandwich(_msgSender(), _taxWallet, _phoenixWallet); // creating new contract inside another parent contract
        emit SandwichTokenDeployed(address(sandwich));
        sandwich.approve(address(uniswapV2Router), type(uint256).max);
        uniswapV2Router.addLiquidityETH{value: msg.value}(
            address(sandwich),
            sandwich.balanceOf(address(this)),
            0,
            0,
            _msgSender(),
            block.timestamp
        );
        sandwich.transferOwnership(_msgSender());
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"_taxWallet","type":"address"},{"internalType":"address","name":"_phoenixWallet","type":"address"}],"stateMutability":"payable","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":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":[{"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":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyBackAndBurn","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxAmountPerTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxAmountPerWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"phoenixPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_devWallet","type":"address"}],"name":"setDevWallet1","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_devWallet","type":"address"}],"name":"setDevWallet2","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxAmountPerTx","type":"uint256"}],"name":"setMaxAmountPerTx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxAmountPerWallet","type":"uint256"}],"name":"setMaxAmountPerWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxSwapTokenAmount","type":"uint256"}],"name":"setMaxSwapTokenAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_phoenixPercent","type":"uint256"}],"name":"setPhoenixPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_phoenixWallet","type":"address"}],"name":"setPhoenixWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_taxWallet","type":"address"}],"name":"setTaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","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":"view","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":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526012600a62000014919062001e08565b624c4b4062000024919062001e59565b600455600a600555600a6006556064600160045462000044919062001e59565b62000050919062001ed3565b6007556064600160045462000066919062001e59565b62000072919062001ed3565b60085560146009556012600a6200008a919062001e08565b6203d0906200009a919062001e59565b600a556000601060146101000a81548160ff0219169083151502179055506000601060156101000a81548160ff0219169083151502179055506040516200658c3803806200658c8339818101604052810190620000f8919062001f75565b60006200010a62000a1a60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073b5ef669ffb567d9fc6dba54934fcf8618edc003d600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073db26cd2ab5968e7189201e50f332b80d1f9e2efc601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073be51c0aa0fe35a16bdd1db48c8ef335b518c7912905073687d8e292ceca0cb77d71490ed9682ccba71e27c600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260006200035862000a1a60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160026000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160026000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160026000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160026000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620006646200065562000a1a60201b60201c565b60045462000a2260201b60201c565b620006d46200067862000a1a60201b60201c565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16620006c86064620006b9600b60045462000ad260201b90919060201c565b62000b5560201b90919060201c565b62000ba760201b60201c565b62000722620006e862000a1a60201b60201c565b8262000716606462000707600960045462000ad260201b90919060201c565b62000b5560201b90919060201c565b62000ba760201b60201c565b6200076930737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200150b60201b60201c565b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620007c9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007ef919062001fd1565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200086b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000891919062001fd1565b6040518363ffffffff1660e01b8152600401620008b092919062002014565b6020604051808303816000875af1158015620008d0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008f6919062001fd1565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3737a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401620009c992919062002052565b6020604051808303816000875af1158015620009e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a0f9190620020bc565b50505050506200281e565b600033905090565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000ac69190620020ee565b60405180910390a35050565b600080830362000ae6576000905062000b4f565b6000828462000af6919062001e59565b905082848262000b07919062001ed3565b1462000b4a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b41906200216c565b60405180910390fd5b809150505b92915050565b600062000b9f83836040518060400160405280601081526020017f6469766973696f6e206279207a65726f00000000000000000000000000000000815250620016a560201b60201c565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000c19576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000c109062002204565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000c8b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000c82906200229c565b60405180910390fd5b6000811162000cd1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000cc89062002334565b60405180910390fd5b600062000ce36200170d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801562000d5a575062000d2a6200170d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1562000db357601060149054906101000a900460ff1662000db2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000da990620023a6565b60405180910390fd5b5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801562000e585750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15620010c357600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801562000efc5750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15620010055760085482600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000f529190620023c8565b11158062000f6257506000600854145b62000fa4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000f9b9062002453565b60405180910390fd5b6007548211158062000fb857506000600754145b62000ffa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000ff190620024c5565b60405180910390fd5b6005549050620010c2565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620010bc57600754821115806200106f57506000600754145b620010b1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620010a890620024c5565b60405180910390fd5b6006549050620010c1565b600090505b5b5b6000620010ef6064620010e0848662000ad260201b90919060201c565b62000b5560201b90919060201c565b905060006200110882856200173660201b90919060201c565b90506200115e84600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200173660201b90919060201c565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620011ee9190620023c8565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601060159054906101000a900460ff16158015620012e15750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b80156200133b5750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b8015620013545750601060149054906101000a900460ff165b156200139957600a548110620013985762001375816200178860201b60201c565b6000479050600081111562001396576200139581620019c960201b60201c565b5b505b5b81600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620013e69190620023c8565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008311156200149b573073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051620014929190620020ee565b60405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051620014fa9190620020ee565b60405180910390a350505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015620015765750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b620015b8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620015af9062002537565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051620016989190620020ee565b60405180910390a3505050565b60008083118290620016ef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620016e69190620025e2565b60405180910390fd5b506000838562001700919062001ed3565b9050809150509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006200178083836040518060400160405280601481526020017f7375627472616374696f6e206f766572666c6f7700000000000000000000000081525062001c0560201b60201c565b905092915050565b6001601060156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115620017c357620017c262002606565b5b604051908082528060200260200182016040528015620017f25781602001602082028036833780820191505090505b50905030816000815181106200180d576200180c62002635565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620018a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620018cd919062001fd1565b81600181518110620018e457620018e362002635565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401620019769594939291906200277f565b600060405180830381600087803b1580156200199157600080fd5b505af1158015620019a6573d6000803e3d6000fd5b50505050506000601060156101000a81548160ff02191690831515021790555050565b6000606460095483620019dd919062001e59565b620019e9919062001ed3565b9050600062001a0282846200173660201b90919060201c565b9050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015801562001a6d573d6000803e3d6000fd5b50600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc606460138462001abb919062001e59565b62001ac7919062001ed3565b9081150290604051600060405180830381858888f1935050505015801562001af3573d6000803e3d6000fd5b50601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064601f8462001b41919062001e59565b62001b4d919062001ed3565b9081150290604051600060405180830381858888f1935050505015801562001b79573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc606460328462001bc7919062001e59565b62001bd3919062001ed3565b9081150290604051600060405180830381858888f1935050505015801562001bff573d6000803e3d6000fd5b50505050565b600083831115829062001c50576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162001c479190620025e2565b60405180910390fd5b506000838562001c619190620027e3565b9050809150509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562001cfc5780860481111562001cd45762001cd362001c6e565b5b600185161562001ce45780820291505b808102905062001cf48562001c9d565b945062001cb4565b94509492505050565b60008262001d17576001905062001dea565b8162001d27576000905062001dea565b816001811462001d40576002811462001d4b5762001d81565b600191505062001dea565b60ff84111562001d605762001d5f62001c6e565b5b8360020a91508482111562001d7a5762001d7962001c6e565b5b5062001dea565b5060208310610133831016604e8410600b841016171562001dbb5782820a90508381111562001db55762001db462001c6e565b5b62001dea565b62001dca848484600162001caa565b9250905081840481111562001de45762001de362001c6e565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062001e158262001df1565b915062001e228362001dfb565b925062001e517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462001d05565b905092915050565b600062001e668262001df1565b915062001e738362001df1565b925082820262001e838162001df1565b9150828204841483151762001e9d5762001e9c62001c6e565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062001ee08262001df1565b915062001eed8362001df1565b92508262001f005762001eff62001ea4565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062001f3d8262001f10565b9050919050565b62001f4f8162001f30565b811462001f5b57600080fd5b50565b60008151905062001f6f8162001f44565b92915050565b60008060006060848603121562001f915762001f9062001f0b565b5b600062001fa18682870162001f5e565b935050602062001fb48682870162001f5e565b925050604062001fc78682870162001f5e565b9150509250925092565b60006020828403121562001fea5762001fe962001f0b565b5b600062001ffa8482850162001f5e565b91505092915050565b6200200e8162001f30565b82525050565b60006040820190506200202b600083018562002003565b6200203a602083018462002003565b9392505050565b6200204c8162001df1565b82525050565b600060408201905062002069600083018562002003565b62002078602083018462002041565b9392505050565b60008115159050919050565b62002096816200207f565b8114620020a257600080fd5b50565b600081519050620020b6816200208b565b92915050565b600060208284031215620020d557620020d462001f0b565b5b6000620020e584828501620020a5565b91505092915050565b600060208201905062002105600083018462002041565b92915050565b600082825260208201905092915050565b7f206d756c7469706c69636174696f6e206f766572666c6f770000000000000000600082015250565b6000620021546018836200210b565b915062002161826200211c565b602082019050919050565b60006020820190508181036000830152620021878162002145565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000620021ec6025836200210b565b9150620021f9826200218e565b604082019050919050565b600060208201905081810360008301526200221f81620021dd565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000620022846023836200210b565b9150620022918262002226565b604082019050919050565b60006020820190508181036000830152620022b78162002275565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006200231c6029836200210b565b91506200232982620022be565b604082019050919050565b600060208201905081810360008301526200234f816200230d565b9050919050565b7f54726164696e67206973206e6f7420616c6c6f77656400000000000000000000600082015250565b60006200238e6016836200210b565b91506200239b8262002356565b602082019050919050565b60006020820190508181036000830152620023c1816200237f565b9050919050565b6000620023d58262001df1565b9150620023e28362001df1565b9250828201905080821115620023fd57620023fc62001c6e565b5b92915050565b7f457863656564206d617820616d6f756e74207065722077616c6c657400000000600082015250565b60006200243b601c836200210b565b9150620024488262002403565b602082019050919050565b600060208201905081810360008301526200246e816200242c565b9050919050565b7f457863656564206d617820616d6f756e74207065722074780000000000000000600082015250565b6000620024ad6018836200210b565b9150620024ba8262002475565b602082019050919050565b60006020820190508181036000830152620024e0816200249e565b9050919050565b7f617070726f7665207a65726f2061646472657373000000000000000000000000600082015250565b60006200251f6014836200210b565b91506200252c82620024e7565b602082019050919050565b60006020820190508181036000830152620025528162002510565b9050919050565b600081519050919050565b60005b838110156200258457808201518184015260208101905062002567565b60008484015250505050565b6000601f19601f8301169050919050565b6000620025ae8262002559565b620025ba81856200210b565b9350620025cc81856020860162002564565b620025d78162002590565b840191505092915050565b60006020820190508181036000830152620025fe8184620025a1565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b600062002699620026936200268d8462002664565b6200266e565b62001df1565b9050919050565b620026ab8162002678565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b620026e88162001f30565b82525050565b6000620026fc8383620026dd565b60208301905092915050565b6000602082019050919050565b60006200272282620026b1565b6200272e8185620026bc565b93506200273b83620026cd565b8060005b8381101562002772578151620027568882620026ee565b9750620027638362002708565b9250506001810190506200273f565b5085935050505092915050565b600060a08201905062002796600083018862002041565b620027a56020830187620026a0565b8181036040830152620027b9818662002715565b9050620027ca606083018562002003565b620027d9608083018462002041565b9695505050505050565b6000620027f08262001df1565b9150620027fd8362001df1565b925082820390508181111562002818576200281762001c6e565b5b92915050565b613d5e806200282e6000396000f3fe6080604052600436106101e75760003560e01c8063715018a611610102578063b906b1bf11610095578063ea414b2811610064578063ea414b2814610696578063f26a9816146106bf578063f2fde38b146106e8578063fcf03f5d14610711576101ee565b8063b906b1bf1461060f578063c9567bf914610638578063c970e99f1461064f578063dd62ed3e14610659576101ee565b80638da5cb5b116100d15780638da5cb5b1461055157806395d89b411461057c5780639f836d7b146105a7578063a9059cbb146105d2576101ee565b8063715018a6146104bd57806382eb71cd146104d457806385266ec6146104fd57806385b27c8514610526576101ee565b806336db71291161017a57806351bc3c851161014957806351bc3c851461041757806352f7c9881461042e57806364998def1461045757806370a0823114610480576101ee565b806336db71291461036d57806342966c681461039857806347062402146103c157806349bd5a5e146103ec576101ee565b806318160ddd116101b657806318160ddd146102af57806323b872dd146102da5780632b14ca5614610317578063313ce56714610342576101ee565b806306ee6ad8146101f357806306fdde031461021e578063095ea7b3146102495780630f23619414610286576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861073a565b6040516102159190612f16565b60405180910390f35b34801561022a57600080fd5b50610233610760565b6040516102409190612fc1565b60405180910390f35b34801561025557600080fd5b50610270600480360381019061026b919061304a565b61079d565b60405161027d91906130a5565b60405180910390f35b34801561029257600080fd5b506102ad60048036038101906102a891906130c0565b6107bb565b005b3480156102bb57600080fd5b506102c4610860565b6040516102d191906130fc565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190613117565b61086a565b60405161030e91906130a5565b60405180910390f35b34801561032357600080fd5b5061032c610960565b60405161033991906130fc565b60405180910390f35b34801561034e57600080fd5b50610357610966565b6040516103649190613186565b60405180910390f35b34801561037957600080fd5b5061038261096f565b60405161038f91906130fc565b60405180910390f35b3480156103a457600080fd5b506103bf60048036038101906103ba91906131a1565b610975565b005b3480156103cd57600080fd5b506103d6610982565b6040516103e391906130fc565b60405180910390f35b3480156103f857600080fd5b50610401610988565b60405161040e9190612f16565b60405180910390f35b34801561042357600080fd5b5061042c6109ae565b005b34801561043a57600080fd5b50610455600480360381019061045091906131ce565b610bba565b005b34801561046357600080fd5b5061047e600480360381019061047991906131a1565b610db2565b005b34801561048c57600080fd5b506104a760048036038101906104a291906130c0565b610f57565b6040516104b491906130fc565b60405180910390f35b3480156104c957600080fd5b506104d2610fa0565b005b3480156104e057600080fd5b506104fb60048036038101906104f691906130c0565b6110f3565b005b34801561050957600080fd5b50610524600480360381019061051f91906131a1565b611198565b005b34801561053257600080fd5b5061053b6112a5565b60405161054891906130fc565b60405180910390f35b34801561055d57600080fd5b506105666112ab565b6040516105739190612f16565b60405180910390f35b34801561058857600080fd5b506105916112d4565b60405161059e9190612fc1565b60405180910390f35b3480156105b357600080fd5b506105bc611311565b6040516105c991906130fc565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f4919061304a565b611317565b60405161060691906130a5565b60405180910390f35b34801561061b57600080fd5b50610636600480360381019061063191906131a1565b611335565b005b34801561064457600080fd5b5061064d61141c565b005b61065761151e565b005b34801561066557600080fd5b50610680600480360381019061067b919061320e565b61177a565b60405161068d91906130fc565b60405180910390f35b3480156106a257600080fd5b506106bd60048036038101906106b891906130c0565b611801565b005b3480156106cb57600080fd5b506106e660048036038101906106e191906131a1565b6118da565b005b3480156106f457600080fd5b5061070f600480360381019061070a91906130c0565b6119e7565b005b34801561071d57600080fd5b50610738600480360381019061073391906130c0565b611ba8565b005b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600881526020017f53616e6477696368000000000000000000000000000000000000000000000000815250905090565b60006107b16107aa611c81565b8484611c89565b6001905092915050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107fc611c81565b73ffffffffffffffffffffffffffffffffffffffff161461081c57600080fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600454905090565b6000610877848484611e1d565b61095584610883611c81565b610950856040518060400160405280600d81526020017f6c6f7720616c6c6f77616e636500000000000000000000000000000000000000815250600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610906611c81565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127279092919063ffffffff16565b611c89565b600190509392505050565b60065481565b60006012905090565b60085481565b61097f338261278b565b50565b60055481565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6109b66112ab565b73ffffffffffffffffffffffffffffffffffffffff166109d4611c81565b73ffffffffffffffffffffffffffffffffffffffff161480610a4a5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a32611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610aa95750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a91611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610b085750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610af0611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b610b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3e9061329a565b60405180910390fd5b6000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000811115610b9e57610b9d816128d4565b5b60004790506000811115610bb657610bb581612b04565b5b5050565b610bc26112ab565b73ffffffffffffffffffffffffffffffffffffffff16610be0611c81565b73ffffffffffffffffffffffffffffffffffffffff161480610c565750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c3e611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610cb55750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c9d611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610d145750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610cfc611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b610d53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4a9061329a565b60405180910390fd5b60058211158015610d65575060058111155b610da4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9b90613306565b60405180910390fd5b610dae8282612d2a565b5050565b610dba6112ab565b73ffffffffffffffffffffffffffffffffffffffff16610dd8611c81565b73ffffffffffffffffffffffffffffffffffffffff161480610e4e5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e36611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610ead5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e95611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610f0c5750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ef4611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b610f4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f429061329a565b60405180910390fd5b610f5481612d3c565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fa8611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611035576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102c90613372565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611134611c81565b73ffffffffffffffffffffffffffffffffffffffff161461115457600080fd5b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6111a0611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122490613372565b60405180910390fd5b6112576103e86112496005600454612d4690919063ffffffff16565b612dc090919063ffffffff16565b811015611299576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611290906133de565b60405180910390fd5b6112a281612e0a565b50565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f53616e6477696368000000000000000000000000000000000000000000000000815250905090565b60095481565b600061132b611324611c81565b8484611e1d565b6001905092915050565b61133d6112ab565b73ffffffffffffffffffffffffffffffffffffffff1661135b611c81565b73ffffffffffffffffffffffffffffffffffffffff1614806113d15750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113b9611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b611410576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114079061329a565b60405180910390fd5b61141981612e14565b50565b611424611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a890613372565b60405180910390fd5b601060149054906101000a900460ff1615611501576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114f890613470565b60405180910390fd5b6001601060146101000a81548160ff021916908315150217905550565b6000600267ffffffffffffffff81111561153b5761153a613490565b5b6040519080825280602002602001820160405280156115695781602001602082028036833780820191505090505b509050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ef91906134d4565b8160008151811061160357611602613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050308160018151811061165257611651613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663b6f9de95346000846116c8611c81565b426040518663ffffffff1660e01b81526004016116e89493929190613633565b6000604051808303818588803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b5050505050600060016000611728611c81565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611776611770611c81565b8261278b565b5050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611809611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611896576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188d90613372565b60405180910390fd5b80600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6118e2611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461196f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196690613372565b60405180910390fd5b6119996103e861198b6005600454612d4690919063ffffffff16565b612dc090919063ffffffff16565b8110156119db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d2906136cb565b60405180910390fd5b6119e481612e1e565b50565b6119ef611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7390613372565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611aeb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae290613737565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b611bb0611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3490613372565b60405180910390fd5b80600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611cf35750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611d32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d29906137a3565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611e1091906130fc565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8390613835565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611efb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef2906138c7565b60405180910390fd5b60008111611f3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3590613959565b60405180910390fd5b6000611f486112ab565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611fb65750611f866112ab565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561200b57601060149054906101000a900460ff1661200a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612001906139c5565b60405180910390fd5b5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156120af5750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561230657600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156121515750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561224e5760085482600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121a49190613a14565b1115806121b357506000600854145b6121f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e990613a94565b60405180910390fd5b6007548211158061220557506000600754145b612244576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223b90613b00565b60405180910390fd5b6005549050612305565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036122ff57600754821115806122b657506000600754145b6122f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ec90613b00565b60405180910390fd5b6006549050612304565b600090505b5b5b600061232e60646123208486612d4690919063ffffffff16565b612dc090919063ffffffff16565b905060006123458285612e2890919063ffffffff16565b905061239984600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612e2890919063ffffffff16565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124279190613a14565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601060159054906101000a900460ff161580156125195750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b80156125725750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b801561258a5750601060149054906101000a900460ff165b156125bc57600a5481106125bb576125a1816128d4565b600047905060008111156125b9576125b881612b04565b5b505b5b81600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126079190613a14565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008311156126b9573073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516126b091906130fc565b60405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161271691906130fc565b60405180910390a350505050505050565b600083831115829061276f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127669190612fc1565b60405180910390fd5b506000838561277e9190613b20565b9050809150509392505050565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561280d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161280490613ba0565b60405180910390fd5b8060046000828254039250508190555080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516128c891906130fc565b60405180910390a35050565b6001601060156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561290c5761290b613490565b5b60405190808252806020026020018201604052801561293a5781602001602082028036833780820191505090505b509050308160008151811061295257612951613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129eb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a0f91906134d4565b81600181518110612a2357612a22613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612ab3959493929190613bc0565b600060405180830381600087803b158015612acd57600080fd5b505af1158015612ae1573d6000803e3d6000fd5b50505050506000601060156101000a81548160ff02191690831515021790555050565b6000606460095483612b169190613c1a565b612b209190613c8b565b90506000612b378284612e2890919063ffffffff16565b9050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612ba1573d6000803e3d6000fd5b50600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064601384612bed9190613c1a565b612bf79190613c8b565b9081150290604051600060405180830381858888f19350505050158015612c22573d6000803e3d6000fd5b50601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064601f84612c6e9190613c1a565b612c789190613c8b565b9081150290604051600060405180830381858888f19350505050158015612ca3573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064603284612cef9190613c1a565b612cf99190613c8b565b9081150290604051600060405180830381858888f19350505050158015612d24573d6000803e3d6000fd5b50505050565b81600581905550806006819055505050565b80600a8190555050565b6000808303612d585760009050612dba565b60008284612d669190613c1a565b9050828482612d759190613c8b565b14612db5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dac90613d08565b60405180910390fd5b809150505b92915050565b6000612e0283836040518060400160405280601081526020017f6469766973696f6e206279207a65726f00000000000000000000000000000000815250612e72565b905092915050565b8060088190555050565b8060098190555050565b8060078190555050565b6000612e6a83836040518060400160405280601481526020017f7375627472616374696f6e206f766572666c6f77000000000000000000000000815250612727565b905092915050565b60008083118290612eb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb09190612fc1565b60405180910390fd5b5060008385612ec89190613c8b565b9050809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612f0082612ed5565b9050919050565b612f1081612ef5565b82525050565b6000602082019050612f2b6000830184612f07565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612f6b578082015181840152602081019050612f50565b60008484015250505050565b6000601f19601f8301169050919050565b6000612f9382612f31565b612f9d8185612f3c565b9350612fad818560208601612f4d565b612fb681612f77565b840191505092915050565b60006020820190508181036000830152612fdb8184612f88565b905092915050565b600080fd5b612ff181612ef5565b8114612ffc57600080fd5b50565b60008135905061300e81612fe8565b92915050565b6000819050919050565b61302781613014565b811461303257600080fd5b50565b6000813590506130448161301e565b92915050565b6000806040838503121561306157613060612fe3565b5b600061306f85828601612fff565b925050602061308085828601613035565b9150509250929050565b60008115159050919050565b61309f8161308a565b82525050565b60006020820190506130ba6000830184613096565b92915050565b6000602082840312156130d6576130d5612fe3565b5b60006130e484828501612fff565b91505092915050565b6130f681613014565b82525050565b600060208201905061311160008301846130ed565b92915050565b6000806000606084860312156131305761312f612fe3565b5b600061313e86828701612fff565b935050602061314f86828701612fff565b925050604061316086828701613035565b9150509250925092565b600060ff82169050919050565b6131808161316a565b82525050565b600060208201905061319b6000830184613177565b92915050565b6000602082840312156131b7576131b6612fe3565b5b60006131c584828501613035565b91505092915050565b600080604083850312156131e5576131e4612fe3565b5b60006131f385828601613035565b925050602061320485828601613035565b9150509250929050565b6000806040838503121561322557613224612fe3565b5b600061323385828601612fff565b925050602061324485828601612fff565b9150509250929050565b7f496e76616c6964207065726d697373696f6e0000000000000000000000000000600082015250565b6000613284601283612f3c565b915061328f8261324e565b602082019050919050565b600060208201905081810360008301526132b381613277565b9050919050565b7f6c696d6974656420746f20352070657263656e74000000000000000000000000600082015250565b60006132f0601483612f3c565b91506132fb826132ba565b602082019050919050565b6000602082019050818103600083015261331f816132e3565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b600061335c601783612f3c565b915061336782613326565b602082019050919050565b6000602082019050818103600083015261338b8161334f565b9050919050565b7f6d617857616c6c6574206973206c696d6974656420746f20302e352500000000600082015250565b60006133c8601c83612f3c565b91506133d382613392565b602082019050919050565b600060208201905081810360008301526133f7816133bb565b9050919050565b7f746f6b656e20697320616c726561647920656e61626c656420666f722074726160008201527f64696e6700000000000000000000000000000000000000000000000000000000602082015250565b600061345a602483612f3c565b9150613465826133fe565b604082019050919050565b600060208201905081810360008301526134898161344d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000815190506134ce81612fe8565b92915050565b6000602082840312156134ea576134e9612fe3565b5b60006134f8848285016134bf565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b600061355f61355a61355584613530565b61353a565b613014565b9050919050565b61356f81613544565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6135aa81612ef5565b82525050565b60006135bc83836135a1565b60208301905092915050565b6000602082019050919050565b60006135e082613575565b6135ea8185613580565b93506135f583613591565b8060005b8381101561362657815161360d88826135b0565b9750613618836135c8565b9250506001810190506135f9565b5085935050505092915050565b60006080820190506136486000830187613566565b818103602083015261365a81866135d5565b90506136696040830185612f07565b61367660608301846130ed565b95945050505050565b7f6d61785478206973206c696d6974656420746f20302e35250000000000000000600082015250565b60006136b5601883612f3c565b91506136c08261367f565b602082019050919050565b600060208201905081810360008301526136e4816136a8565b9050919050565b7f6e6577206f776e6572206973207a65726f206164647265737300000000000000600082015250565b6000613721601983612f3c565b915061372c826136eb565b602082019050919050565b6000602082019050818103600083015261375081613714565b9050919050565b7f617070726f7665207a65726f2061646472657373000000000000000000000000600082015250565b600061378d601483612f3c565b915061379882613757565b602082019050919050565b600060208201905081810360008301526137bc81613780565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061381f602583612f3c565b915061382a826137c3565b604082019050919050565b6000602082019050818103600083015261384e81613812565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006138b1602383612f3c565b91506138bc82613855565b604082019050919050565b600060208201905081810360008301526138e0816138a4565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000613943602983612f3c565b915061394e826138e7565b604082019050919050565b6000602082019050818103600083015261397281613936565b9050919050565b7f54726164696e67206973206e6f7420616c6c6f77656400000000000000000000600082015250565b60006139af601683612f3c565b91506139ba82613979565b602082019050919050565b600060208201905081810360008301526139de816139a2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613a1f82613014565b9150613a2a83613014565b9250828201905080821115613a4257613a416139e5565b5b92915050565b7f457863656564206d617820616d6f756e74207065722077616c6c657400000000600082015250565b6000613a7e601c83612f3c565b9150613a8982613a48565b602082019050919050565b60006020820190508181036000830152613aad81613a71565b9050919050565b7f457863656564206d617820616d6f756e74207065722074780000000000000000600082015250565b6000613aea601883612f3c565b9150613af582613ab4565b602082019050919050565b60006020820190508181036000830152613b1981613add565b9050919050565b6000613b2b82613014565b9150613b3683613014565b9250828203905081811115613b4e57613b4d6139e5565b5b92915050565b7f496e76616c696420616d6f756e74000000000000000000000000000000000000600082015250565b6000613b8a600e83612f3c565b9150613b9582613b54565b602082019050919050565b60006020820190508181036000830152613bb981613b7d565b9050919050565b600060a082019050613bd560008301886130ed565b613be26020830187613566565b8181036040830152613bf481866135d5565b9050613c036060830185612f07565b613c1060808301846130ed565b9695505050505050565b6000613c2582613014565b9150613c3083613014565b9250828202613c3e81613014565b91508282048414831517613c5557613c546139e5565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613c9682613014565b9150613ca183613014565b925082613cb157613cb0613c5c565b5b828204905092915050565b7f206d756c7469706c69636174696f6e206f766572666c6f770000000000000000600082015250565b6000613cf2601883612f3c565b9150613cfd82613cbc565b602082019050919050565b60006020820190508181036000830152613d2181613ce5565b905091905056fea2646970667358221220453300510d092212db18b82e0c0cc524251e26fbaa2a6c54784474d6dcbbdf2864736f6c6343000813003300000000000000000000000016474f796fdcabd96f7df799abd821a18b96cfeb000000000000000000000000162cef44dd6eb82612499b918eaec568a23443d000000000000000000000000038cad30ea365c7cd2e821b235215983a36578452

Deployed Bytecode

0x6080604052600436106101e75760003560e01c8063715018a611610102578063b906b1bf11610095578063ea414b2811610064578063ea414b2814610696578063f26a9816146106bf578063f2fde38b146106e8578063fcf03f5d14610711576101ee565b8063b906b1bf1461060f578063c9567bf914610638578063c970e99f1461064f578063dd62ed3e14610659576101ee565b80638da5cb5b116100d15780638da5cb5b1461055157806395d89b411461057c5780639f836d7b146105a7578063a9059cbb146105d2576101ee565b8063715018a6146104bd57806382eb71cd146104d457806385266ec6146104fd57806385b27c8514610526576101ee565b806336db71291161017a57806351bc3c851161014957806351bc3c851461041757806352f7c9881461042e57806364998def1461045757806370a0823114610480576101ee565b806336db71291461036d57806342966c681461039857806347062402146103c157806349bd5a5e146103ec576101ee565b806318160ddd116101b657806318160ddd146102af57806323b872dd146102da5780632b14ca5614610317578063313ce56714610342576101ee565b806306ee6ad8146101f357806306fdde031461021e578063095ea7b3146102495780630f23619414610286576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861073a565b6040516102159190612f16565b60405180910390f35b34801561022a57600080fd5b50610233610760565b6040516102409190612fc1565b60405180910390f35b34801561025557600080fd5b50610270600480360381019061026b919061304a565b61079d565b60405161027d91906130a5565b60405180910390f35b34801561029257600080fd5b506102ad60048036038101906102a891906130c0565b6107bb565b005b3480156102bb57600080fd5b506102c4610860565b6040516102d191906130fc565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190613117565b61086a565b60405161030e91906130a5565b60405180910390f35b34801561032357600080fd5b5061032c610960565b60405161033991906130fc565b60405180910390f35b34801561034e57600080fd5b50610357610966565b6040516103649190613186565b60405180910390f35b34801561037957600080fd5b5061038261096f565b60405161038f91906130fc565b60405180910390f35b3480156103a457600080fd5b506103bf60048036038101906103ba91906131a1565b610975565b005b3480156103cd57600080fd5b506103d6610982565b6040516103e391906130fc565b60405180910390f35b3480156103f857600080fd5b50610401610988565b60405161040e9190612f16565b60405180910390f35b34801561042357600080fd5b5061042c6109ae565b005b34801561043a57600080fd5b50610455600480360381019061045091906131ce565b610bba565b005b34801561046357600080fd5b5061047e600480360381019061047991906131a1565b610db2565b005b34801561048c57600080fd5b506104a760048036038101906104a291906130c0565b610f57565b6040516104b491906130fc565b60405180910390f35b3480156104c957600080fd5b506104d2610fa0565b005b3480156104e057600080fd5b506104fb60048036038101906104f691906130c0565b6110f3565b005b34801561050957600080fd5b50610524600480360381019061051f91906131a1565b611198565b005b34801561053257600080fd5b5061053b6112a5565b60405161054891906130fc565b60405180910390f35b34801561055d57600080fd5b506105666112ab565b6040516105739190612f16565b60405180910390f35b34801561058857600080fd5b506105916112d4565b60405161059e9190612fc1565b60405180910390f35b3480156105b357600080fd5b506105bc611311565b6040516105c991906130fc565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f4919061304a565b611317565b60405161060691906130a5565b60405180910390f35b34801561061b57600080fd5b50610636600480360381019061063191906131a1565b611335565b005b34801561064457600080fd5b5061064d61141c565b005b61065761151e565b005b34801561066557600080fd5b50610680600480360381019061067b919061320e565b61177a565b60405161068d91906130fc565b60405180910390f35b3480156106a257600080fd5b506106bd60048036038101906106b891906130c0565b611801565b005b3480156106cb57600080fd5b506106e660048036038101906106e191906131a1565b6118da565b005b3480156106f457600080fd5b5061070f600480360381019061070a91906130c0565b6119e7565b005b34801561071d57600080fd5b50610738600480360381019061073391906130c0565b611ba8565b005b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600881526020017f53616e6477696368000000000000000000000000000000000000000000000000815250905090565b60006107b16107aa611c81565b8484611c89565b6001905092915050565b601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166107fc611c81565b73ffffffffffffffffffffffffffffffffffffffff161461081c57600080fd5b80601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600454905090565b6000610877848484611e1d565b61095584610883611c81565b610950856040518060400160405280600d81526020017f6c6f7720616c6c6f77616e636500000000000000000000000000000000000000815250600360008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610906611c81565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546127279092919063ffffffff16565b611c89565b600190509392505050565b60065481565b60006012905090565b60085481565b61097f338261278b565b50565b60055481565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6109b66112ab565b73ffffffffffffffffffffffffffffffffffffffff166109d4611c81565b73ffffffffffffffffffffffffffffffffffffffff161480610a4a5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a32611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610aa95750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610a91611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610b085750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610af0611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b610b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3e9061329a565b60405180910390fd5b6000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000811115610b9e57610b9d816128d4565b5b60004790506000811115610bb657610bb581612b04565b5b5050565b610bc26112ab565b73ffffffffffffffffffffffffffffffffffffffff16610be0611c81565b73ffffffffffffffffffffffffffffffffffffffff161480610c565750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c3e611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610cb55750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610c9d611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610d145750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610cfc611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b610d53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4a9061329a565b60405180910390fd5b60058211158015610d65575060058111155b610da4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d9b90613306565b60405180910390fd5b610dae8282612d2a565b5050565b610dba6112ab565b73ffffffffffffffffffffffffffffffffffffffff16610dd8611c81565b73ffffffffffffffffffffffffffffffffffffffff161480610e4e5750600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e36611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610ead5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610e95611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b80610f0c5750601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ef4611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b610f4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f429061329a565b60405180910390fd5b610f5481612d3c565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610fa8611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611035576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102c90613372565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611134611c81565b73ffffffffffffffffffffffffffffffffffffffff161461115457600080fd5b80600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6111a0611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122490613372565b60405180910390fd5b6112576103e86112496005600454612d4690919063ffffffff16565b612dc090919063ffffffff16565b811015611299576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611290906133de565b60405180910390fd5b6112a281612e0a565b50565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f53616e6477696368000000000000000000000000000000000000000000000000815250905090565b60095481565b600061132b611324611c81565b8484611e1d565b6001905092915050565b61133d6112ab565b73ffffffffffffffffffffffffffffffffffffffff1661135b611c81565b73ffffffffffffffffffffffffffffffffffffffff1614806113d15750600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166113b9611c81565b73ffffffffffffffffffffffffffffffffffffffff16145b611410576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114079061329a565b60405180910390fd5b61141981612e14565b50565b611424611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114a890613372565b60405180910390fd5b601060149054906101000a900460ff1615611501576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114f890613470565b60405180910390fd5b6001601060146101000a81548160ff021916908315150217905550565b6000600267ffffffffffffffff81111561153b5761153a613490565b5b6040519080825280602002602001820160405280156115695781602001602082028036833780820191505090505b509050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115cb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ef91906134d4565b8160008151811061160357611602613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050308160018151811061165257611651613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663b6f9de95346000846116c8611c81565b426040518663ffffffff1660e01b81526004016116e89493929190613633565b6000604051808303818588803b15801561170157600080fd5b505af1158015611715573d6000803e3d6000fd5b5050505050600060016000611728611c81565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611776611770611c81565b8261278b565b5050565b6000600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611809611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611896576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188d90613372565b60405180910390fd5b80600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6118e2611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461196f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196690613372565b60405180910390fd5b6119996103e861198b6005600454612d4690919063ffffffff16565b612dc090919063ffffffff16565b8110156119db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d2906136cb565b60405180910390fd5b6119e481612e1e565b50565b6119ef611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a7c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7390613372565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611aeb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ae290613737565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b611bb0611c81565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c3490613372565b60405180910390fd5b80600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611cf35750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611d32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d29906137a3565b60405180910390fd5b80600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611e1091906130fc565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611e8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8390613835565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611efb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef2906138c7565b60405180910390fd5b60008111611f3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3590613959565b60405180910390fd5b6000611f486112ab565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611fb65750611f866112ab565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561200b57601060149054906101000a900460ff1661200a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612001906139c5565b60405180910390fd5b5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161580156120af5750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561230657600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156121515750737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561224e5760085482600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546121a49190613a14565b1115806121b357506000600854145b6121f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e990613a94565b60405180910390fd5b6007548211158061220557506000600754145b612244576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223b90613b00565b60405180910390fd5b6005549050612305565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036122ff57600754821115806122b657506000600754145b6122f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122ec90613b00565b60405180910390fd5b6006549050612304565b600090505b5b5b600061232e60646123208486612d4690919063ffffffff16565b612dc090919063ffffffff16565b905060006123458285612e2890919063ffffffff16565b905061239984600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612e2890919063ffffffff16565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124279190613a14565b600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050601060159054906101000a900460ff161580156125195750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff1614155b80156125725750600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b801561258a5750601060149054906101000a900460ff165b156125bc57600a5481106125bb576125a1816128d4565b600047905060008111156125b9576125b881612b04565b5b505b5b81600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126079190613a14565b600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060008311156126b9573073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516126b091906130fc565b60405180910390a35b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161271691906130fc565b60405180910390a350505050505050565b600083831115829061276f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127669190612fc1565b60405180910390fd5b506000838561277e9190613b20565b9050809150509392505050565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561280d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161280490613ba0565b60405180910390fd5b8060046000828254039250508190555080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516128c891906130fc565b60405180910390a35050565b6001601060156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561290c5761290b613490565b5b60405190808252806020026020018201604052801561293a5781602001602082028036833780820191505090505b509050308160008151811061295257612951613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129eb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a0f91906134d4565b81600181518110612a2357612a22613501565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401612ab3959493929190613bc0565b600060405180830381600087803b158015612acd57600080fd5b505af1158015612ae1573d6000803e3d6000fd5b50505050506000601060156101000a81548160ff02191690831515021790555050565b6000606460095483612b169190613c1a565b612b209190613c8b565b90506000612b378284612e2890919063ffffffff16565b9050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015612ba1573d6000803e3d6000fd5b50600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064601384612bed9190613c1a565b612bf79190613c8b565b9081150290604051600060405180830381858888f19350505050158015612c22573d6000803e3d6000fd5b50601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064601f84612c6e9190613c1a565b612c789190613c8b565b9081150290604051600060405180830381858888f19350505050158015612ca3573d6000803e3d6000fd5b50600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6064603284612cef9190613c1a565b612cf99190613c8b565b9081150290604051600060405180830381858888f19350505050158015612d24573d6000803e3d6000fd5b50505050565b81600581905550806006819055505050565b80600a8190555050565b6000808303612d585760009050612dba565b60008284612d669190613c1a565b9050828482612d759190613c8b565b14612db5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dac90613d08565b60405180910390fd5b809150505b92915050565b6000612e0283836040518060400160405280601081526020017f6469766973696f6e206279207a65726f00000000000000000000000000000000815250612e72565b905092915050565b8060088190555050565b8060098190555050565b8060078190555050565b6000612e6a83836040518060400160405280601481526020017f7375627472616374696f6e206f766572666c6f77000000000000000000000000815250612727565b905092915050565b60008083118290612eb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb09190612fc1565b60405180910390fd5b5060008385612ec89190613c8b565b9050809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612f0082612ed5565b9050919050565b612f1081612ef5565b82525050565b6000602082019050612f2b6000830184612f07565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612f6b578082015181840152602081019050612f50565b60008484015250505050565b6000601f19601f8301169050919050565b6000612f9382612f31565b612f9d8185612f3c565b9350612fad818560208601612f4d565b612fb681612f77565b840191505092915050565b60006020820190508181036000830152612fdb8184612f88565b905092915050565b600080fd5b612ff181612ef5565b8114612ffc57600080fd5b50565b60008135905061300e81612fe8565b92915050565b6000819050919050565b61302781613014565b811461303257600080fd5b50565b6000813590506130448161301e565b92915050565b6000806040838503121561306157613060612fe3565b5b600061306f85828601612fff565b925050602061308085828601613035565b9150509250929050565b60008115159050919050565b61309f8161308a565b82525050565b60006020820190506130ba6000830184613096565b92915050565b6000602082840312156130d6576130d5612fe3565b5b60006130e484828501612fff565b91505092915050565b6130f681613014565b82525050565b600060208201905061311160008301846130ed565b92915050565b6000806000606084860312156131305761312f612fe3565b5b600061313e86828701612fff565b935050602061314f86828701612fff565b925050604061316086828701613035565b9150509250925092565b600060ff82169050919050565b6131808161316a565b82525050565b600060208201905061319b6000830184613177565b92915050565b6000602082840312156131b7576131b6612fe3565b5b60006131c584828501613035565b91505092915050565b600080604083850312156131e5576131e4612fe3565b5b60006131f385828601613035565b925050602061320485828601613035565b9150509250929050565b6000806040838503121561322557613224612fe3565b5b600061323385828601612fff565b925050602061324485828601612fff565b9150509250929050565b7f496e76616c6964207065726d697373696f6e0000000000000000000000000000600082015250565b6000613284601283612f3c565b915061328f8261324e565b602082019050919050565b600060208201905081810360008301526132b381613277565b9050919050565b7f6c696d6974656420746f20352070657263656e74000000000000000000000000600082015250565b60006132f0601483612f3c565b91506132fb826132ba565b602082019050919050565b6000602082019050818103600083015261331f816132e3565b9050919050565b7f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b600061335c601783612f3c565b915061336782613326565b602082019050919050565b6000602082019050818103600083015261338b8161334f565b9050919050565b7f6d617857616c6c6574206973206c696d6974656420746f20302e352500000000600082015250565b60006133c8601c83612f3c565b91506133d382613392565b602082019050919050565b600060208201905081810360008301526133f7816133bb565b9050919050565b7f746f6b656e20697320616c726561647920656e61626c656420666f722074726160008201527f64696e6700000000000000000000000000000000000000000000000000000000602082015250565b600061345a602483612f3c565b9150613465826133fe565b604082019050919050565b600060208201905081810360008301526134898161344d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000815190506134ce81612fe8565b92915050565b6000602082840312156134ea576134e9612fe3565b5b60006134f8848285016134bf565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b600061355f61355a61355584613530565b61353a565b613014565b9050919050565b61356f81613544565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6135aa81612ef5565b82525050565b60006135bc83836135a1565b60208301905092915050565b6000602082019050919050565b60006135e082613575565b6135ea8185613580565b93506135f583613591565b8060005b8381101561362657815161360d88826135b0565b9750613618836135c8565b9250506001810190506135f9565b5085935050505092915050565b60006080820190506136486000830187613566565b818103602083015261365a81866135d5565b90506136696040830185612f07565b61367660608301846130ed565b95945050505050565b7f6d61785478206973206c696d6974656420746f20302e35250000000000000000600082015250565b60006136b5601883612f3c565b91506136c08261367f565b602082019050919050565b600060208201905081810360008301526136e4816136a8565b9050919050565b7f6e6577206f776e6572206973207a65726f206164647265737300000000000000600082015250565b6000613721601983612f3c565b915061372c826136eb565b602082019050919050565b6000602082019050818103600083015261375081613714565b9050919050565b7f617070726f7665207a65726f2061646472657373000000000000000000000000600082015250565b600061378d601483612f3c565b915061379882613757565b602082019050919050565b600060208201905081810360008301526137bc81613780565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061381f602583612f3c565b915061382a826137c3565b604082019050919050565b6000602082019050818103600083015261384e81613812565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006138b1602383612f3c565b91506138bc82613855565b604082019050919050565b600060208201905081810360008301526138e0816138a4565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000613943602983612f3c565b915061394e826138e7565b604082019050919050565b6000602082019050818103600083015261397281613936565b9050919050565b7f54726164696e67206973206e6f7420616c6c6f77656400000000000000000000600082015250565b60006139af601683612f3c565b91506139ba82613979565b602082019050919050565b600060208201905081810360008301526139de816139a2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613a1f82613014565b9150613a2a83613014565b9250828201905080821115613a4257613a416139e5565b5b92915050565b7f457863656564206d617820616d6f756e74207065722077616c6c657400000000600082015250565b6000613a7e601c83612f3c565b9150613a8982613a48565b602082019050919050565b60006020820190508181036000830152613aad81613a71565b9050919050565b7f457863656564206d617820616d6f756e74207065722074780000000000000000600082015250565b6000613aea601883612f3c565b9150613af582613ab4565b602082019050919050565b60006020820190508181036000830152613b1981613add565b9050919050565b6000613b2b82613014565b9150613b3683613014565b9250828203905081811115613b4e57613b4d6139e5565b5b92915050565b7f496e76616c696420616d6f756e74000000000000000000000000000000000000600082015250565b6000613b8a600e83612f3c565b9150613b9582613b54565b602082019050919050565b60006020820190508181036000830152613bb981613b7d565b9050919050565b600060a082019050613bd560008301886130ed565b613be26020830187613566565b8181036040830152613bf481866135d5565b9050613c036060830185612f07565b613c1060808301846130ed565b9695505050505050565b6000613c2582613014565b9150613c3083613014565b9250828202613c3e81613014565b91508282048414831517613c5557613c546139e5565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000613c9682613014565b9150613ca183613014565b925082613cb157613cb0613c5c565b5b828204905092915050565b7f206d756c7469706c69636174696f6e206f766572666c6f770000000000000000600082015250565b6000613cf2601883612f3c565b9150613cfd82613cbc565b602082019050919050565b60006020820190508181036000830152613d2181613ce5565b905091905056fea2646970667358221220453300510d092212db18b82e0c0cc524251e26fbaa2a6c54784474d6dcbbdf2864736f6c63430008130033

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

00000000000000000000000016474f796fdcabd96f7df799abd821a18b96cfeb000000000000000000000000162cef44dd6eb82612499b918eaec568a23443d000000000000000000000000038cad30ea365c7cd2e821b235215983a36578452

-----Decoded View---------------
Arg [0] : owner (address): 0x16474f796FDcaBD96f7Df799Abd821a18B96CfeB
Arg [1] : _taxWallet (address): 0x162cEF44dD6eb82612499b918eaEC568a23443d0
Arg [2] : _phoenixWallet (address): 0x38CAd30Ea365c7cd2e821b235215983A36578452

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 00000000000000000000000016474f796fdcabd96f7df799abd821a18b96cfeb
Arg [1] : 000000000000000000000000162cef44dd6eb82612499b918eaec568a23443d0
Arg [2] : 00000000000000000000000038cad30ea365c7cd2e821b235215983a36578452


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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