ETH Price: $2,503.09 (-0.87%)

Token

Influence Sync Bot (ISYB)
 

Overview

Max Total Supply

300,000,000 ISYB

Holders

42

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,910,673.086704875168 ISYB

Value
$0.00
0x835804dAFB911451EBAc7294895802BAFb90A9C3
Loading...
Loading
Loading...
Loading
Loading...
Loading

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

Contract Source Code Verified (Exact Match)

Contract Name:
InfluenceSyncToken

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion
File 1 of 7 : InfluenceSync.sol
/*

At Influence Sync, our commitment is to keep you at the forefront of the ever-changing realm of social media.
Through our groundbreaking Telegram bot, you can receive instant notifications about influencer registrations
on the friend.tech platform. Whether you’re an investor, a passionate enthusiast, or simply intrigued by rising
influencers, Influence Sync equips you with the resources to remain engaged and well-informed.

Telegram: https://t.me/influencesync
Twitter: https://twitter.com/InfluenceSync
Website: https://www.influencesync.com

*/

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

import "./IERC20.sol";
import "./SafeMath.sol";
import "./Context.sol";
import "./Ownable.sol";
import "./IUniswapV2Factory.sol";
import "./IUniswapV2Router02.sol";

interface IUniswapV2Pair {
    function sync() external;
}

contract InfluenceSyncToken is Context, IERC20, Ownable {
    using SafeMath for uint256;
    IUniswapV2Router02 public router;

    address public pair;

    mapping(address => uint256) private balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;

    string private constant _name = "Influence Sync Bot";
    string private constant _symbol = "ISYB";
    uint8 private constant _decimals = 18;

    uint256 private _tTotal = 300000000 * 10 ** _decimals;

    uint256 public _maxAmtWlt = 2000000 * 10 ** _decimals;
    uint256 public _maxAmtTx = 2000000 * 10 ** _decimals;
    uint256 public swapThreshold = 1000000 * 10 ** _decimals;
    uint256 public forceSwapCnt;

    address public lWallet;
    address public mWallet;
    bool public isTradingEnabled = false;

    struct bFees {
        uint256 liq;
        uint256 mark;
    }

    struct sFees {
        uint256 liq;
        uint256 mark;
    }

    bFees public bFee;
    sFees public sFee;

    uint256 private lFee;
    uint256 private mFee;

    bool private isInSwap;

    event SwapAndLiquify(uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiquidity);

    constructor (address markAddress, address liqAddress) {
        mWallet = markAddress;
        lWallet = liqAddress;

        balances[_msgSender()] = _tTotal;

        bFee.liq = 2;
        bFee.mark = 2;

        sFee.liq = 2;
        sFee.mark = 2;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _uniPair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        router = _uniswapV2Router;
        pair = _uniPair;

        _isExcludedFromFee[msg.sender] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[address(0x00)] = true;
        _isExcludedFromFee[address(0xdead)] = true;


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

    function enableTrading() external onlyOwner {
        isTradingEnabled = true;
    }

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

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()] - amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] - subtractedValue);
        return true;
    }

    function excludeFromFees(address account, bool excluded) public onlyOwner {
        _isExcludedFromFee[address(account)] = excluded;
    }

    receive() external payable {}

    function reduceBFees(uint256 amount, address from) private returns (uint256) {
        uint256 liquidityFeeToken = amount * bFee.liq / 100;
        uint256 marketingFeeTokens = amount * bFee.mark / 100;

        balances[address(this)] += liquidityFeeToken + marketingFeeTokens;
        emit Transfer(from, address(this), marketingFeeTokens + liquidityFeeToken);
        return (amount - liquidityFeeToken - marketingFeeTokens);
    }

    function reduceSFees(uint256 amount, address from) private returns (uint256) {
        uint256 liquidityFeeToken = amount * sFee.liq / 100;
        uint256 marketingFeeTokens = amount * sFee.mark / 100;

        balances[address(this)] += liquidityFeeToken + marketingFeeTokens;
        emit Transfer(from, address(this), marketingFeeTokens + liquidityFeeToken);
        return (amount - liquidityFeeToken - marketingFeeTokens);
    }

    function isExcludedFromFee(address account) public view returns (bool) {
        return _isExcludedFromFee[account];
    }

    function setTransactionFees(uint256 _buyMarketingFee, uint256 _buyLiquidityFee, uint256 _sellMarketingFee, uint256 _sellLiquidityFee) public onlyOwner {
        require(_buyMarketingFee + _buyLiquidityFee < 500 || _sellLiquidityFee + _sellMarketingFee < 500, "Can't change fee higher than 24%");

        bFee.liq = _buyLiquidityFee;
        bFee.mark = _buyMarketingFee;

        sFee.liq = _sellLiquidityFee;
        sFee.mark = _sellMarketingFee;
    }

    function setMaximumTxValue(uint256 _maxTx, uint256 _maxWallet) public onlyOwner {
        require(_maxTx + _maxWallet > _tTotal / 1000, "Should be bigger than 0,1%");
        _maxAmtTx = _maxTx;
        _maxAmtWlt = _maxWallet;
    }

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

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

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

        balances[from] -= amount;
        uint256 transferAmount = amount;

        bool takeFee;

        if (!isTradingEnabled) {
            require(_isExcludedFromFee[from] || _isExcludedFromFee[to], "Trading is not active.");
        }
        if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
            takeFee = true;
        }

        if (takeFee) {
            if (to != pair) {
                require(amount <= _maxAmtTx, "Transfer Amount exceeds the maxTxnsAmount");
                require(balanceOf(to) + amount <= _maxAmtWlt, "Transfer amount exceeds the maxWalletAmount.");
                transferAmount = reduceBFees(amount, to);
            }

            if (from != pair) {
                require(amount <= _maxAmtTx, "Transfer Amount exceeds the maxTxnsAmount");
                transferAmount = reduceSFees(amount, from);
                forceSwapCnt += 1;

                if (balanceOf(address(this)) >= swapThreshold && !isInSwap) {
                    isInSwap = true;
                    swapAndAddLiquidity(swapThreshold);
                    isInSwap = false;
                    forceSwapCnt = 0;
                }

                if (forceSwapCnt > 5 && !isInSwap) {
                    isInSwap = true;
                    swapAndAddLiquidity(balanceOf(address(this)));
                    isInSwap = false;
                    forceSwapCnt = 0;
                }
            }

            if (to != pair && from != pair) {
                require(amount <= _maxAmtTx, "Transfer Amount exceeds the maxTxnsAmount");
                require(balanceOf(to) + amount <= _maxAmtWlt, "Transfer amount exceeds the maxWalletAmount.");
            }
        }

        balances[to] += transferAmount;
        emit Transfer(from, to, transferAmount);
    }

    function swapAndAddLiquidity(uint256 amount) private {
        uint256 contractBalance = amount;
        uint256 liquidityTokens = contractBalance * (bFee.liq + sFee.liq) / (bFee.mark + bFee.liq + sFee.mark + sFee.liq);
        uint256 marketingTokens = contractBalance * (bFee.mark + sFee.mark) / (bFee.mark + bFee.liq + sFee.mark + sFee.liq);
        uint256 totalTokensToSwap = liquidityTokens + marketingTokens;

        uint256 tokensForLiquidity = liquidityTokens.div(2);
        uint256 amountToSwapForETH = contractBalance.sub(tokensForLiquidity);
        uint256 initialETHBalance = address(this).balance;
        swapTokensForEth(amountToSwapForETH);
        uint256 ethBalance = address(this).balance.sub(initialETHBalance);

        uint256 ethForLiquidity = ethBalance.mul(liquidityTokens).div(totalTokensToSwap);
        addLiquidity(tokensForLiquidity, ethForLiquidity);
        payable(mWallet).transfer(address(this).balance);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        _approve(address(this), address(router), tokenAmount);

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        _approve(address(this), address(router), tokenAmount);

        router.addLiquidityETH{value: ethAmount} (
            address(this),
            tokenAmount,
            0,
            0,
            lWallet,
            block.timestamp
        );
    }
}

File 2 of 7 : Context.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

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

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

File 3 of 7 : IERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

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

File 4 of 7 : IUniswapV2Factory.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

interface IUniswapV2Factory {
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);

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

File 5 of 7 : IUniswapV2Router02.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

interface IUniswapV2Router02 {
    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 swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;

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

    function removeLiquidityETHSupportingFeeOnTransferTokens(
        address token,
        uint liquidity,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external returns (uint amountETH);
}

File 6 of 7 : Ownable.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

import "./Context.sol";

contract Ownable is Context {
    address private _owner;

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

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

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

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

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

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

File 7 of 7 : SafeMath.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

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

        return c;
    }

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

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

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

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

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"markAddress","type":"address"},{"internalType":"address","name":"liqAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiquidity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxAmtTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxAmtWlt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"bFee","outputs":[{"internalType":"uint256","name":"liq","type":"uint256"},{"internalType":"uint256","name":"mark","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"forceSwapCnt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isTradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sFee","outputs":[{"internalType":"uint256","name":"liq","type":"uint256"},{"internalType":"uint256","name":"mark","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxTx","type":"uint256"},{"internalType":"uint256","name":"_maxWallet","type":"uint256"}],"name":"setMaximumTxValue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyMarketingFee","type":"uint256"},{"internalType":"uint256","name":"_buyLiquidityFee","type":"uint256"},{"internalType":"uint256","name":"_sellMarketingFee","type":"uint256"},{"internalType":"uint256","name":"_sellLiquidityFee","type":"uint256"}],"name":"setTransactionFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126012600a620004eb565b62000022906311e1a30062000502565b600655620000336012600a620004eb565b6200004290621e848062000502565b600755620000536012600a620004eb565b6200006290621e848062000502565b600855620000736012600a620004eb565b6200008290620f424062000502565b600955600c805460ff60a01b191690553480156200009e575f80fd5b506040516200223538038062002235833981016040819052620000c19162000538565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600c80546001600160a01b038085166001600160a01b031992831617909255600b80549284169290911691909117905560065460035f6200013f3390565b6001600160a01b0316815260208082019290925260409081015f908120939093556002600d819055600e819055600f819055601055805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9392849263c45a015592600480830193928290030181865afa158015620001c0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001e691906200056e565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000232573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200025891906200056e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015620002a3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002c991906200056e565b600180546001600160a01b038086166001600160a01b03199283161783556002805491851691909216179055335f90815260056020526040808220805460ff19908116851790915530835290822080548216841790557f05b8ccbb9d4d8fb16ea74ce3c29a41f1b461fbdaff4714a0d9a8eb05499746bc805482168417905561dead9091527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba805490911690911790559050620003833390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600654604051620003ca91815260200190565b60405180910390a3505050506200058a565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200043057815f1904821115620004145762000414620003dc565b808516156200042257918102915b93841c9390800290620003f5565b509250929050565b5f826200044857506001620004e5565b816200045657505f620004e5565b81600181146200046f57600281146200047a576200049a565b6001915050620004e5565b60ff8411156200048e576200048e620003dc565b50506001821b620004e5565b5060208310610133831016604e8410600b8410161715620004bf575081810a620004e5565b620004cb8383620003f0565b805f1904821115620004e157620004e1620003dc565b0290505b92915050565b5f620004fb60ff84168362000438565b9392505050565b8082028115828204841417620004e557620004e5620003dc565b80516001600160a01b038116811462000533575f80fd5b919050565b5f80604083850312156200054a575f80fd5b62000555836200051c565b915062000565602084016200051c565b90509250929050565b5f602082840312156200057f575f80fd5b620004fb826200051c565b611c9d80620005985f395ff3fe6080604052600436106101c8575f3560e01c8063715018a6116100f2578063a8aa1b3111610092578063dd62ed3e11610062578063dd62ed3e14610579578063f2512348146105bd578063f2fde38b146105d7578063f887ea40146105f6575f80fd5b8063a8aa1b3114610507578063a9059cbb14610526578063c024666814610545578063cf2853d814610564575f80fd5b806392ec16ed116100cd57806392ec16ed14610455578063953635141461048457806395d89b41146104a3578063a457c2d7146104e8575f80fd5b8063715018a6146104115780638a8c523c146104255780638da5cb5b14610439575f80fd5b806329e1cf41116101685780635342acb4116101385780635342acb41461035057806358526a82146103875780635f7236be146103a657806370a08231146103dd575f80fd5b806329e1cf41146102e05780632cbb0ef9146102f5578063313ce567146103165780633950935114610331575f80fd5b8063095ea7b3116101a3578063095ea7b31461027957806318160ddd14610298578063204f251c146102ac57806323b872dd146102c1575f80fd5b80630445b667146101d3578063064a59d0146101fb57806306fdde031461022b575f80fd5b366101cf57005b5f80fd5b3480156101de575f80fd5b506101e860095481565b6040519081526020015b60405180910390f35b348015610206575f80fd5b50600c5461021b90600160a01b900460ff1681565b60405190151581526020016101f2565b348015610236575f80fd5b5060408051808201909152601281527f496e666c75656e63652053796e6320426f74000000000000000000000000000060208201525b6040516101f29190611993565b348015610284575f80fd5b5061021b6102933660046119f5565b610615565b3480156102a3575f80fd5b506006546101e8565b3480156102b7575f80fd5b506101e860085481565b3480156102cc575f80fd5b5061021b6102db366004611a1f565b61062b565b3480156102eb575f80fd5b506101e8600a5481565b348015610300575f80fd5b5061031461030f366004611a5d565b61067b565b005b348015610321575f80fd5b50604051601281526020016101f2565b34801561033c575f80fd5b5061021b61034b3660046119f5565b61075c565b34801561035b575f80fd5b5061021b61036a366004611a8c565b6001600160a01b03165f9081526005602052604090205460ff1690565b348015610392575f80fd5b506103146103a1366004611aa7565b610792565b3480156103b1575f80fd5b50600b546103c5906001600160a01b031681565b6040516001600160a01b0390911681526020016101f2565b3480156103e8575f80fd5b506101e86103f7366004611a8c565b6001600160a01b03165f9081526003602052604090205490565b34801561041c575f80fd5b5061031461085d565b348015610430575f80fd5b5061031461090b565b348015610444575f80fd5b505f546001600160a01b03166103c5565b348015610460575f80fd5b50600d54600e5461046f919082565b604080519283526020830191909152016101f2565b34801561048f575f80fd5b50600c546103c5906001600160a01b031681565b3480156104ae575f80fd5b5060408051808201909152600481527f4953594200000000000000000000000000000000000000000000000000000000602082015261026c565b3480156104f3575f80fd5b5061021b6105023660046119f5565b610994565b348015610512575f80fd5b506002546103c5906001600160a01b031681565b348015610531575f80fd5b5061021b6105403660046119f5565b6109ca565b348015610550575f80fd5b5061031461055f366004611ac7565b6109d6565b34801561056f575f80fd5b506101e860075481565b348015610584575f80fd5b506101e8610593366004611b02565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b3480156105c8575f80fd5b50600f5460105461046f919082565b3480156105e2575f80fd5b506103146105f1366004611a8c565b610a59565b348015610601575f80fd5b506001546103c5906001600160a01b031681565b5f610621338484610b94565b5060015b92915050565b5f610637848484610ceb565b6001600160a01b0384165f9081526004602090815260408083203380855292529091205461067191869161066c908690611b42565b610b94565b5060019392505050565b5f546001600160a01b031633146106d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6101f46106e68486611b55565b10806106fc57506101f46106fa8383611b55565b105b6107485760405162461bcd60e51b815260206004820181905260248201527f43616e2774206368616e67652066656520686967686572207468616e2032342560448201526064016106d0565b600d92909255600e92909255600f55601055565b335f8181526004602090815260408083206001600160a01b0387168452909152812054909161062191859061066c908690611b55565b5f546001600160a01b031633146107eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b6103e86006546107fb9190611b68565b6108058284611b55565b116108525760405162461bcd60e51b815260206004820152601a60248201527f53686f756c6420626520626967676572207468616e20302c312500000000000060448201526064016106d0565b600891909155600755565b5f546001600160a01b031633146108b65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f805473ffffffffffffffffffffffffffffffffffffffff19169055565b5f546001600160a01b031633146109645760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b600c80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b179055565b335f8181526004602090815260408083206001600160a01b0387168452909152812054909161062191859061066c908690611b42565b5f610621338484610ceb565b5f546001600160a01b03163314610a2f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b6001600160a01b03919091165f908152600560205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610ab25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b6001600160a01b038116610b2e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106d0565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6001600160a01b038316610c0f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b038216610c8b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d675760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b038216610de35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016106d0565b5f8111610e585760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d75737420626520677265617465722060448201527f7468616e207a65726f000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b0383165f9081526003602052604081208054839290610e7f908490611b42565b9091555050600c5481905f90600160a01b900460ff16610f22576001600160a01b0385165f9081526005602052604090205460ff1680610ed657506001600160a01b0384165f9081526005602052604090205460ff165b610f225760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e0000000000000000000060448201526064016106d0565b6001600160a01b0385165f9081526005602052604090205460ff16158015610f6257506001600160a01b0384165f9081526005602052604090205460ff16155b15610f6b575060015b80156112f2576002546001600160a01b0385811691161461108657600854831115610fea5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546044820152681e1b9cd05b5bdd5b9d60ba1b60648201526084016106d0565b6007548361100c866001600160a01b03165f9081526003602052604090205490565b6110169190611b55565b11156110795760405162461bcd60e51b815260206004820152602c60248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526b30b63632ba20b6b7bab73a1760a11b60648201526084016106d0565b6110838385611374565b91505b6002546001600160a01b038681169116146111ce576008548311156110ff5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546044820152681e1b9cd05b5bdd5b9d60ba1b60648201526084016106d0565b6111098386611447565b91506001600a5f82825461111d9190611b55565b9091555050600954305f9081526003602052604090205410158015611145575060135460ff16155b15611172576013805460ff191660011790556009546111639061147b565b6013805460ff191690555f600a555b6005600a54118015611187575060135460ff16155b156111ce576013805460ff191660011790556111bf6111ba306001600160a01b03165f9081526003602052604090205490565b61147b565b6013805460ff191690555f600a555b6002546001600160a01b038581169116148015906111fa57506002546001600160a01b03868116911614155b156112f2576008548311156112635760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546044820152681e1b9cd05b5bdd5b9d60ba1b60648201526084016106d0565b60075483611285866001600160a01b03165f9081526003602052604090205490565b61128f9190611b55565b11156112f25760405162461bcd60e51b815260206004820152602c60248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526b30b63632ba20b6b7bab73a1760a11b60648201526084016106d0565b6001600160a01b0384165f9081526003602052604081208054849290611319908490611b55565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161136591815260200190565b60405180910390a35050505050565b5f806064600d5f0154856113889190611b87565b6113929190611b68565b90505f6064600d60010154866113a89190611b87565b6113b29190611b68565b90506113be8183611b55565b305f90815260036020526040812080549091906113dc908490611b55565b909155503090506001600160a01b0385167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114188585611b55565b60405190815260200160405180910390a3806114348387611b42565b61143e9190611b42565b95945050505050565b5f806064600f5f01548561145b9190611b87565b6114659190611b68565b90505f6064600f60010154866113a89190611b87565b600f54601054600d54600e5484935f93909290916114999190611b55565b6114a39190611b55565b6114ad9190611b55565b600f54600d546114bd9190611b55565b6114c79084611b87565b6114d19190611b68565b600f54601054600d54600e549394505f936114ec9190611b55565b6114f69190611b55565b6115009190611b55565b601054600e546115109190611b55565b61151a9085611b87565b6115249190611b68565b90505f6115318284611b55565b90505f61153f8460026115c9565b90505f61154c8683611611565b90504761155882611652565b5f6115634783611611565b90505f61157a86611574848b6117d4565b906115c9565b9050611586858261186e565b600c546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156115bc573d5f803e3d5ffd5b5050505050505050505050565b5f61160a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611938565b9392505050565b5f61160a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611964565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061168557611685611b9e565b6001600160a01b03928316602091820292909201810191909152600154604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa1580156116f5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117199190611bb2565b8160018151811061172c5761172c611b9e565b6001600160a01b0392831660209182029290920101526001546117529130911684610b94565b6001546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063791ac947906117a39085905f90869030904290600401611bcd565b5f604051808303815f87803b1580156117ba575f80fd5b505af11580156117cc573d5f803e3d5ffd5b505050505050565b5f825f036117e357505f610625565b5f6117ee8385611b87565b9050826117fb8583611b68565b1461160a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f770000000000000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001546118869030906001600160a01b031684610b94565b600154600b546040517ff305d719000000000000000000000000000000000000000000000000000000008152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af115801561190c573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906119319190611c3c565b5050505050565b5f81836119585760405162461bcd60e51b81526004016106d09190611993565b505f61143e8486611b68565b5f81848411156119875760405162461bcd60e51b81526004016106d09190611993565b505f61143e8486611b42565b5f6020808352835180828501525f5b818110156119be578581018301518582016040015282016119a2565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146119f2575f80fd5b50565b5f8060408385031215611a06575f80fd5b8235611a11816119de565b946020939093013593505050565b5f805f60608486031215611a31575f80fd5b8335611a3c816119de565b92506020840135611a4c816119de565b929592945050506040919091013590565b5f805f8060808587031215611a70575f80fd5b5050823594602084013594506040840135936060013592509050565b5f60208284031215611a9c575f80fd5b813561160a816119de565b5f8060408385031215611ab8575f80fd5b50508035926020909101359150565b5f8060408385031215611ad8575f80fd5b8235611ae3816119de565b915060208301358015158114611af7575f80fd5b809150509250929050565b5f8060408385031215611b13575f80fd5b8235611b1e816119de565b91506020830135611af7816119de565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561062557610625611b2e565b8082018082111561062557610625611b2e565b5f82611b8257634e487b7160e01b5f52601260045260245ffd5b500490565b808202811582820484141761062557610625611b2e565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611bc2575f80fd5b815161160a816119de565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611c1b5784516001600160a01b031683529383019391830191600101611bf6565b50506001600160a01b03969096166060850152505050608001529392505050565b5f805f60608486031215611c4e575f80fd5b835192506020840151915060408401519050925092509256fea26469706673582212204fc234fcf61f7c3dbbeea9c6c816bd2a09a761fda3d7b787cf79fb998e4d170064736f6c63430008150033000000000000000000000000a49cde636dc4dd8dba6a68420e39963eb08304e8000000000000000000000000a49cde636dc4dd8dba6a68420e39963eb08304e8

Deployed Bytecode

0x6080604052600436106101c8575f3560e01c8063715018a6116100f2578063a8aa1b3111610092578063dd62ed3e11610062578063dd62ed3e14610579578063f2512348146105bd578063f2fde38b146105d7578063f887ea40146105f6575f80fd5b8063a8aa1b3114610507578063a9059cbb14610526578063c024666814610545578063cf2853d814610564575f80fd5b806392ec16ed116100cd57806392ec16ed14610455578063953635141461048457806395d89b41146104a3578063a457c2d7146104e8575f80fd5b8063715018a6146104115780638a8c523c146104255780638da5cb5b14610439575f80fd5b806329e1cf41116101685780635342acb4116101385780635342acb41461035057806358526a82146103875780635f7236be146103a657806370a08231146103dd575f80fd5b806329e1cf41146102e05780632cbb0ef9146102f5578063313ce567146103165780633950935114610331575f80fd5b8063095ea7b3116101a3578063095ea7b31461027957806318160ddd14610298578063204f251c146102ac57806323b872dd146102c1575f80fd5b80630445b667146101d3578063064a59d0146101fb57806306fdde031461022b575f80fd5b366101cf57005b5f80fd5b3480156101de575f80fd5b506101e860095481565b6040519081526020015b60405180910390f35b348015610206575f80fd5b50600c5461021b90600160a01b900460ff1681565b60405190151581526020016101f2565b348015610236575f80fd5b5060408051808201909152601281527f496e666c75656e63652053796e6320426f74000000000000000000000000000060208201525b6040516101f29190611993565b348015610284575f80fd5b5061021b6102933660046119f5565b610615565b3480156102a3575f80fd5b506006546101e8565b3480156102b7575f80fd5b506101e860085481565b3480156102cc575f80fd5b5061021b6102db366004611a1f565b61062b565b3480156102eb575f80fd5b506101e8600a5481565b348015610300575f80fd5b5061031461030f366004611a5d565b61067b565b005b348015610321575f80fd5b50604051601281526020016101f2565b34801561033c575f80fd5b5061021b61034b3660046119f5565b61075c565b34801561035b575f80fd5b5061021b61036a366004611a8c565b6001600160a01b03165f9081526005602052604090205460ff1690565b348015610392575f80fd5b506103146103a1366004611aa7565b610792565b3480156103b1575f80fd5b50600b546103c5906001600160a01b031681565b6040516001600160a01b0390911681526020016101f2565b3480156103e8575f80fd5b506101e86103f7366004611a8c565b6001600160a01b03165f9081526003602052604090205490565b34801561041c575f80fd5b5061031461085d565b348015610430575f80fd5b5061031461090b565b348015610444575f80fd5b505f546001600160a01b03166103c5565b348015610460575f80fd5b50600d54600e5461046f919082565b604080519283526020830191909152016101f2565b34801561048f575f80fd5b50600c546103c5906001600160a01b031681565b3480156104ae575f80fd5b5060408051808201909152600481527f4953594200000000000000000000000000000000000000000000000000000000602082015261026c565b3480156104f3575f80fd5b5061021b6105023660046119f5565b610994565b348015610512575f80fd5b506002546103c5906001600160a01b031681565b348015610531575f80fd5b5061021b6105403660046119f5565b6109ca565b348015610550575f80fd5b5061031461055f366004611ac7565b6109d6565b34801561056f575f80fd5b506101e860075481565b348015610584575f80fd5b506101e8610593366004611b02565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b3480156105c8575f80fd5b50600f5460105461046f919082565b3480156105e2575f80fd5b506103146105f1366004611a8c565b610a59565b348015610601575f80fd5b506001546103c5906001600160a01b031681565b5f610621338484610b94565b5060015b92915050565b5f610637848484610ceb565b6001600160a01b0384165f9081526004602090815260408083203380855292529091205461067191869161066c908690611b42565b610b94565b5060019392505050565b5f546001600160a01b031633146106d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6101f46106e68486611b55565b10806106fc57506101f46106fa8383611b55565b105b6107485760405162461bcd60e51b815260206004820181905260248201527f43616e2774206368616e67652066656520686967686572207468616e2032342560448201526064016106d0565b600d92909255600e92909255600f55601055565b335f8181526004602090815260408083206001600160a01b0387168452909152812054909161062191859061066c908690611b55565b5f546001600160a01b031633146107eb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b6103e86006546107fb9190611b68565b6108058284611b55565b116108525760405162461bcd60e51b815260206004820152601a60248201527f53686f756c6420626520626967676572207468616e20302c312500000000000060448201526064016106d0565b600891909155600755565b5f546001600160a01b031633146108b65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f805473ffffffffffffffffffffffffffffffffffffffff19169055565b5f546001600160a01b031633146109645760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b600c80547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16600160a01b179055565b335f8181526004602090815260408083206001600160a01b0387168452909152812054909161062191859061066c908690611b42565b5f610621338484610ceb565b5f546001600160a01b03163314610a2f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b6001600160a01b03919091165f908152600560205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610ab25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016106d0565b6001600160a01b038116610b2e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106d0565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6001600160a01b038316610c0f5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b038216610c8b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f737300000000000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d675760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b038216610de35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f657373000000000000000000000000000000000000000000000000000000000060648201526084016106d0565b5f8111610e585760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d75737420626520677265617465722060448201527f7468616e207a65726f000000000000000000000000000000000000000000000060648201526084016106d0565b6001600160a01b0383165f9081526003602052604081208054839290610e7f908490611b42565b9091555050600c5481905f90600160a01b900460ff16610f22576001600160a01b0385165f9081526005602052604090205460ff1680610ed657506001600160a01b0384165f9081526005602052604090205460ff165b610f225760405162461bcd60e51b815260206004820152601660248201527f54726164696e67206973206e6f74206163746976652e0000000000000000000060448201526064016106d0565b6001600160a01b0385165f9081526005602052604090205460ff16158015610f6257506001600160a01b0384165f9081526005602052604090205460ff16155b15610f6b575060015b80156112f2576002546001600160a01b0385811691161461108657600854831115610fea5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546044820152681e1b9cd05b5bdd5b9d60ba1b60648201526084016106d0565b6007548361100c866001600160a01b03165f9081526003602052604090205490565b6110169190611b55565b11156110795760405162461bcd60e51b815260206004820152602c60248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526b30b63632ba20b6b7bab73a1760a11b60648201526084016106d0565b6110838385611374565b91505b6002546001600160a01b038681169116146111ce576008548311156110ff5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546044820152681e1b9cd05b5bdd5b9d60ba1b60648201526084016106d0565b6111098386611447565b91506001600a5f82825461111d9190611b55565b9091555050600954305f9081526003602052604090205410158015611145575060135460ff16155b15611172576013805460ff191660011790556009546111639061147b565b6013805460ff191690555f600a555b6005600a54118015611187575060135460ff16155b156111ce576013805460ff191660011790556111bf6111ba306001600160a01b03165f9081526003602052604090205490565b61147b565b6013805460ff191690555f600a555b6002546001600160a01b038581169116148015906111fa57506002546001600160a01b03868116911614155b156112f2576008548311156112635760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220416d6f756e74206578636565647320746865206d6178546044820152681e1b9cd05b5bdd5b9d60ba1b60648201526084016106d0565b60075483611285866001600160a01b03165f9081526003602052604090205490565b61128f9190611b55565b11156112f25760405162461bcd60e51b815260206004820152602c60248201527f5472616e7366657220616d6f756e74206578636565647320746865206d61785760448201526b30b63632ba20b6b7bab73a1760a11b60648201526084016106d0565b6001600160a01b0384165f9081526003602052604081208054849290611319908490611b55565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161136591815260200190565b60405180910390a35050505050565b5f806064600d5f0154856113889190611b87565b6113929190611b68565b90505f6064600d60010154866113a89190611b87565b6113b29190611b68565b90506113be8183611b55565b305f90815260036020526040812080549091906113dc908490611b55565b909155503090506001600160a01b0385167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114188585611b55565b60405190815260200160405180910390a3806114348387611b42565b61143e9190611b42565b95945050505050565b5f806064600f5f01548561145b9190611b87565b6114659190611b68565b90505f6064600f60010154866113a89190611b87565b600f54601054600d54600e5484935f93909290916114999190611b55565b6114a39190611b55565b6114ad9190611b55565b600f54600d546114bd9190611b55565b6114c79084611b87565b6114d19190611b68565b600f54601054600d54600e549394505f936114ec9190611b55565b6114f69190611b55565b6115009190611b55565b601054600e546115109190611b55565b61151a9085611b87565b6115249190611b68565b90505f6115318284611b55565b90505f61153f8460026115c9565b90505f61154c8683611611565b90504761155882611652565b5f6115634783611611565b90505f61157a86611574848b6117d4565b906115c9565b9050611586858261186e565b600c546040516001600160a01b03909116904780156108fc02915f818181858888f193505050501580156115bc573d5f803e3d5ffd5b5050505050505050505050565b5f61160a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611938565b9392505050565b5f61160a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611964565b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061168557611685611b9e565b6001600160a01b03928316602091820292909201810191909152600154604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa1580156116f5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117199190611bb2565b8160018151811061172c5761172c611b9e565b6001600160a01b0392831660209182029290920101526001546117529130911684610b94565b6001546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063791ac947906117a39085905f90869030904290600401611bcd565b5f604051808303815f87803b1580156117ba575f80fd5b505af11580156117cc573d5f803e3d5ffd5b505050505050565b5f825f036117e357505f610625565b5f6117ee8385611b87565b9050826117fb8583611b68565b1461160a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f770000000000000000000000000000000000000000000000000000000000000060648201526084016106d0565b6001546118869030906001600160a01b031684610b94565b600154600b546040517ff305d719000000000000000000000000000000000000000000000000000000008152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990839060c40160606040518083038185885af115801561190c573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906119319190611c3c565b5050505050565b5f81836119585760405162461bcd60e51b81526004016106d09190611993565b505f61143e8486611b68565b5f81848411156119875760405162461bcd60e51b81526004016106d09190611993565b505f61143e8486611b42565b5f6020808352835180828501525f5b818110156119be578581018301518582016040015282016119a2565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146119f2575f80fd5b50565b5f8060408385031215611a06575f80fd5b8235611a11816119de565b946020939093013593505050565b5f805f60608486031215611a31575f80fd5b8335611a3c816119de565b92506020840135611a4c816119de565b929592945050506040919091013590565b5f805f8060808587031215611a70575f80fd5b5050823594602084013594506040840135936060013592509050565b5f60208284031215611a9c575f80fd5b813561160a816119de565b5f8060408385031215611ab8575f80fd5b50508035926020909101359150565b5f8060408385031215611ad8575f80fd5b8235611ae3816119de565b915060208301358015158114611af7575f80fd5b809150509250929050565b5f8060408385031215611b13575f80fd5b8235611b1e816119de565b91506020830135611af7816119de565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561062557610625611b2e565b8082018082111561062557610625611b2e565b5f82611b8257634e487b7160e01b5f52601260045260245ffd5b500490565b808202811582820484141761062557610625611b2e565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611bc2575f80fd5b815161160a816119de565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611c1b5784516001600160a01b031683529383019391830191600101611bf6565b50506001600160a01b03969096166060850152505050608001529392505050565b5f805f60608486031215611c4e575f80fd5b835192506020840151915060408401519050925092509256fea26469706673582212204fc234fcf61f7c3dbbeea9c6c816bd2a09a761fda3d7b787cf79fb998e4d170064736f6c63430008150033

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

000000000000000000000000a49cde636dc4dd8dba6a68420e39963eb08304e8000000000000000000000000a49cde636dc4dd8dba6a68420e39963eb08304e8

-----Decoded View---------------
Arg [0] : markAddress (address): 0xa49CDE636Dc4DD8dbA6A68420e39963eB08304e8
Arg [1] : liqAddress (address): 0xa49CDE636Dc4DD8dbA6A68420e39963eB08304e8

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000a49cde636dc4dd8dba6a68420e39963eb08304e8
Arg [1] : 000000000000000000000000a49cde636dc4dd8dba6a68420e39963eb08304e8


Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

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