ETH Price: $2,067.34 (+11.59%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve190051922024-01-14 12:41:35773 days ago1705236095IN
0x25AFed7d...a815d3FE2
0 ETH0.0012167745.7711113
Approve190013652024-01-13 23:51:23773 days ago1705189883IN
0x25AFed7d...a815d3FE2
0 ETH0.0007150715.40304204
Approve190002242024-01-13 20:02:11773 days ago1705176131IN
0x25AFed7d...a815d3FE2
0 ETH0.0007532516.20454856
Approve189985412024-01-13 14:23:11774 days ago1705155791IN
0x25AFed7d...a815d3FE2
0 ETH0.0007873816.9607068
Approve189985402024-01-13 14:22:59774 days ago1705155779IN
0x25AFed7d...a815d3FE2
0 ETH0.0008063117.36856965
Approve189984702024-01-13 14:08:59774 days ago1705154939IN
0x25AFed7d...a815d3FE2
0 ETH0.00109923.79629673
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.000622423.41285914
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.000622423.41285914
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.000622423.41285914
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.000622423.41285914
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.000622423.41285914
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.000622423.41285914
Approve189984632024-01-13 14:07:35774 days ago1705154855IN
0x25AFed7d...a815d3FE2
0 ETH0.0010883223.41285914
Approve189984322024-01-13 14:01:23774 days ago1705154483IN
0x25AFed7d...a815d3FE2
0 ETH0.0009524420.64969083
Approve189984082024-01-13 13:56:23774 days ago1705154183IN
0x25AFed7d...a815d3FE2
0 ETH0.0008968919.41999777
Approve189984042024-01-13 13:55:35774 days ago1705154135IN
0x25AFed7d...a815d3FE2
0 ETH0.0009240519.90461938
Approve189983272024-01-13 13:39:47774 days ago1705153187IN
0x25AFed7d...a815d3FE2
0 ETH0.0008307217.89433128
Approve189982962024-01-13 13:33:35774 days ago1705152815IN
0x25AFed7d...a815d3FE2
0 ETH0.0011470124.85524775
Approve189982622024-01-13 13:26:47774 days ago1705152407IN
0x25AFed7d...a815d3FE2
0 ETH0.0008770618.86813015
Approve189982522024-01-13 13:24:47774 days ago1705152287IN
0x25AFed7d...a815d3FE2
0 ETH0.0011979525.95893517
Approve189982512024-01-13 13:24:35774 days ago1705152275IN
0x25AFed7d...a815d3FE2
0 ETH0.0011979525.95893517
Approve189982512024-01-13 13:24:35774 days ago1705152275IN
0x25AFed7d...a815d3FE2
0 ETH0.0011979525.95893517
Approve189982512024-01-13 13:24:35774 days ago1705152275IN
0x25AFed7d...a815d3FE2
0 ETH0.0011979525.95893517
Approve189982512024-01-13 13:24:35774 days ago1705152275IN
0x25AFed7d...a815d3FE2
0 ETH0.0011979525.95893517
Approve189982382024-01-13 13:21:59774 days ago1705152119IN
0x25AFed7d...a815d3FE2
0 ETH0.0008848519.03579142
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer190051942024-01-14 12:41:59773 days ago1705236119
0x25AFed7d...a815d3FE2
0 ETH
Transfer190051942024-01-14 12:41:59773 days ago1705236119
0x25AFed7d...a815d3FE2
0 ETH
Transfer189984652024-01-13 14:07:59774 days ago1705154879
0x25AFed7d...a815d3FE2
0.03173676 ETH
Transfer189984652024-01-13 14:07:59774 days ago1705154879
0x25AFed7d...a815d3FE2
0.03173676 ETH
Transfer189984642024-01-13 14:07:47774 days ago1705154867
0x25AFed7d...a815d3FE2
0.0317374 ETH
Transfer189984642024-01-13 14:07:47774 days ago1705154867
0x25AFed7d...a815d3FE2
0.0317374 ETH
Transfer189984632024-01-13 14:07:35774 days ago1705154855
0x25AFed7d...a815d3FE2
0.0317374 ETH
Transfer189984632024-01-13 14:07:35774 days ago1705154855
0x25AFed7d...a815d3FE2
0.0317374 ETH
Transfer189983292024-01-13 13:40:11774 days ago1705153211
0x25AFed7d...a815d3FE2
0.0041303 ETH
Transfer189983292024-01-13 13:40:11774 days ago1705153211
0x25AFed7d...a815d3FE2
0.0041303 ETH
Transfer189982982024-01-13 13:33:59774 days ago1705152839
0x25AFed7d...a815d3FE2
0.00160606 ETH
Transfer189982982024-01-13 13:33:59774 days ago1705152839
0x25AFed7d...a815d3FE2
0.00160606 ETH
Transfer189982952024-01-13 13:33:23774 days ago1705152803
0x25AFed7d...a815d3FE2
0.00333507 ETH
Transfer189982952024-01-13 13:33:23774 days ago1705152803
0x25AFed7d...a815d3FE2
0.00333507 ETH
Transfer189982812024-01-13 13:30:35774 days ago1705152635
0x25AFed7d...a815d3FE2
0.00076715 ETH
Transfer189982812024-01-13 13:30:35774 days ago1705152635
0x25AFed7d...a815d3FE2
0.00076715 ETH
Transfer189982782024-01-13 13:29:59774 days ago1705152599
0x25AFed7d...a815d3FE2
0.00246609 ETH
Transfer189982782024-01-13 13:29:59774 days ago1705152599
0x25AFed7d...a815d3FE2
0.00246609 ETH
Transfer189982682024-01-13 13:27:59774 days ago1705152479
0x25AFed7d...a815d3FE2
0.00192747 ETH
Transfer189982682024-01-13 13:27:59774 days ago1705152479
0x25AFed7d...a815d3FE2
0.00192747 ETH
Transfer189982632024-01-13 13:26:59774 days ago1705152419
0x25AFed7d...a815d3FE2
0.0031793 ETH
Transfer189982632024-01-13 13:26:59774 days ago1705152419
0x25AFed7d...a815d3FE2
0.0031793 ETH
Transfer189982532024-01-13 13:24:59774 days ago1705152299
0x25AFed7d...a815d3FE2
0.00056621 ETH
Transfer189982532024-01-13 13:24:59774 days ago1705152299
0x25AFed7d...a815d3FE2
0.00056621 ETH
Transfer189982532024-01-13 13:24:59774 days ago1705152299
0x25AFed7d...a815d3FE2
0.00615326 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CTO

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2024-01-13
*/

// SPDX-License-Identifier: MIT

/*
Website: https://www.ctocoin.xyz
Telegram: https://t.me/cto_erc
Twitter: https://twitter.com/cto_erc20
*/

pragma solidity 0.8.19;

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

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

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

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

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

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

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

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

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

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    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);
}

abstract contract Ownable {
    address internal _owner;

    constructor(address owner) {
        _owner = owner;
    }

    modifier onlyOwner() {
        require(_isOwner(msg.sender), "!OWNER");
        _;
    }

    function _isOwner(address account) internal view returns (bool) {
        return account == _owner;
    }

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

    event OwnershipTransferred(address owner);
}

contract CTO is IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = "Chief Troll Officier";
    string private constant _symbol = "CTO";

    uint8 private constant _decimals = 9;
    uint256 private _totalSupply = 10 ** 9 * (10 ** _decimals);

    uint256 _maxTxAmount = (_totalSupply * 20) / 1000;
    address _teamAddress;
    IUniswapV2Router public uniswapRouter;
    address _uniswapPair;

    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) _hasNoFee;
    mapping (address => bool) _hasnoMaxTx;

    bool _isTaxSwapEnabled = true;
    uint256 _swapThreshold = _totalSupply / 100000; // 0.1%
    bool _swappingInProgress;

    uint256 private _lpTax = 0; 
    uint256 private _marketingTax = 20;
    uint256 private _totalTax = _lpTax + _marketingTax;
    uint256 private _denominators = 100;

    address private _routerAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address private _deadAddress = 0x000000000000000000000000000000000000dEaD;

    modifier lockSwap() { _swappingInProgress = true; _; _swappingInProgress = false; }

    constructor (address CTOAddress) Ownable(msg.sender) {
        uniswapRouter = IUniswapV2Router(_routerAddress);
        _uniswapPair = IUniswapV2Factory(uniswapRouter.factory()).createPair(uniswapRouter.WETH(), address(this));
        _allowances[address(this)][address(uniswapRouter)] = type(uint256).max;
        address _owner = _owner;
        _teamAddress = CTOAddress;
        _hasNoFee[_teamAddress] = true;
        _hasnoMaxTx[_owner] = true;
        _hasnoMaxTx[_teamAddress] = true;
        _hasnoMaxTx[_deadAddress] = true;
        _balances[_owner] = _totalSupply;
        emit Transfer(address(0), _owner, _totalSupply);
    }

    receive() external payable { }

    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return _owner; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }
                  
    function _verifySwapRequirement(address sender, address recipient, uint256 amount) private returns (bool) {
        return validateSwapRequirement() && 
            exemptFees(sender) && 
            _isSell(recipient) && 
            amount > _swapThreshold;
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(_swappingInProgress){ return _basicTransfer(sender, recipient, amount); }
        
        if (recipient != _uniswapPair && recipient != _deadAddress) {
            require(_hasnoMaxTx[recipient] || _balances[recipient] + amount <= _maxTxAmount, "Transfer amount exceeds the bag size.");
        }        
        if(_verifySwapRequirement(sender, recipient, amount)){ 
            performCTOSwap(); 
        } 
        bool shouldTax = exemptFees(sender);
        if (shouldTax) {
            _balances[recipient] = _balances[recipient].add(_calcTransferFee(sender, amount));
        } else {
            _balances[recipient] = _balances[recipient].add(amount);
        }

        emit Transfer(sender, recipient, amount);
        return true;
    }
    
    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function performCTOSwap() internal lockSwap {
        uint256 contractTokenBalance = balanceOf(address(this));
        uint256 tokensToLp = contractTokenBalance.mul(_lpTax).div(_totalTax).div(2);
        uint256 amountToSwap = contractTokenBalance.sub(tokensToLp);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapRouter.WETH();

        uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 amountETH = address(this).balance;
        uint256 totalFeeTokens = _totalTax.sub(_lpTax.div(2));
        uint256 ethToLp = amountETH.mul(_lpTax).div(totalFeeTokens).div(2);
        uint256 ethToMarketing = amountETH.mul(_marketingTax).div(totalFeeTokens);

        payable(_teamAddress).transfer(ethToMarketing);
        if(tokensToLp > 0){
            uniswapRouter.addLiquidityETH{value: ethToLp}(
                address(this),
                tokensToLp,
                0,
                0,
                _teamAddress,
                block.timestamp
            );
        }
    }

    function _calcTransferFee(address sender, uint256 amount) internal returns (uint256) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        uint256 feeTokens = amount.mul(_totalTax).div(_denominators);
        bool hasNoFee = sender == _owner;
        if (hasNoFee) {
            feeTokens = 0;
        }
        _balances[address(this)] = _balances[address(this)].add(feeTokens);
        emit Transfer(sender, address(this), feeTokens);
        return amount.sub(feeTokens);
    }

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transferFrom(sender, recipient, amount);
    }
    
    function exemptFees(address sender) internal view returns (bool) {
        return !_hasNoFee[sender];
    }
    
    function adjustCTOWalletSize(uint256 percent) external onlyOwner {
        _maxTxAmount = (_totalSupply * percent) / 1000;
    }
    
    function updateCTOTax(uint256 lpFee, uint256 devFee) external onlyOwner {
         _lpTax = lpFee; 
         _marketingTax = devFee;
         _totalTax = _lpTax + _marketingTax;
    }    
    
    function _isSell(address recipient) private returns (bool){
        return recipient == _uniswapPair;
    }

    function validateSwapRequirement() internal view returns (bool) {
        return !_swappingInProgress
        && _isTaxSwapEnabled
        && _balances[address(this)] >= _swapThreshold;
    }
    
    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"CTOAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"uint256","name":"percent","type":"uint256"}],"name":"adjustCTOWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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":[],"name":"uniswapRouter","outputs":[{"internalType":"contract IUniswapV2Router","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"lpFee","type":"uint256"},{"internalType":"uint256","name":"devFee","type":"uint256"}],"name":"updateCTOTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000482565b6200002290633b9aca006200049a565b6001556103e860015460146200003991906200049a565b620000459190620004b4565b600255600a805460ff19166001908117909155546200006990620186a090620004b4565b600b556000600d8190556014600e8190556200008591620004d7565b600f556064601055601180546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d179091556012805490911661dead179055348015620000d057600080fd5b506040516200172038038062001720833981016040819052620000f391620004ed565b60008054336001600160a01b031991821617909155601154600480546001600160a01b0390921691909216811782556040805163c45a015560e01b81529051919263c45a01559282820192602092908290030181865afa1580156200015c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001829190620004ed565b6001600160a01b031663c9c65396600460009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020a9190620004ed565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303816000875af115801562000257573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027d9190620004ed565b600580546001600160a01b039283166001600160a01b031991821617909155306000908152600760209081526040808320600454861684528252808320600019905582546003805488881696168617815594845260088352818420805460ff199081166001908117909255918716808652600985528386208054841683179055955487168552828520805483168217905560125490961684528184208054909116861790559354838352600682528483208190559351938452919283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505062000518565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003c4578160001904821115620003a857620003a86200036d565b80851615620003b657918102915b93841c939080029062000388565b509250929050565b600082620003dd575060016200047c565b81620003ec575060006200047c565b8160018114620004055760028114620004105762000430565b60019150506200047c565b60ff8411156200042457620004246200036d565b50506001821b6200047c565b5060208310610133831016604e8410600b841016171562000455575081810a6200047c565b62000461838362000383565b80600019048211156200047857620004786200036d565b0290505b92915050565b60006200049360ff841683620003cc565b9392505050565b80820281158282048414176200047c576200047c6200036d565b600082620004d257634e487b7160e01b600052601260045260246000fd5b500490565b808201808211156200047c576200047c6200036d565b6000602082840312156200050057600080fd5b81516001600160a01b03811681146200049357600080fd5b6111f880620005286000396000f3fe6080604052600436106100e15760003560e01c8063715018a61161007f57806395d89b411161005957806395d89b411461028a578063a0de96b3146102b6578063a9059cbb146102d6578063dd62ed3e146102f657600080fd5b8063715018a61461021f578063735de9f714610234578063893d20e81461026c57600080fd5b806323b872dd116100bb57806323b872dd1461018b578063313ce567146101ab5780634409ecc2146101c757806370a08231146101e957600080fd5b806306fdde03146100ed578063095ea7b31461013c57806318160ddd1461016c57600080fd5b366100e857005b600080fd5b3480156100f957600080fd5b5060408051808201909152601481527321b434b2b3102a3937b6361027b33334b1b4b2b960611b60208201525b6040516101339190610ef7565b60405180910390f35b34801561014857600080fd5b5061015c610157366004610f5d565b61033c565b6040519015158152602001610133565b34801561017857600080fd5b506001545b604051908152602001610133565b34801561019757600080fd5b5061015c6101a6366004610f89565b6103a9565b3480156101b757600080fd5b5060405160098152602001610133565b3480156101d357600080fd5b506101e76101e2366004610fca565b61046b565b005b3480156101f557600080fd5b5061017d610204366004610fec565b6001600160a01b031660009081526006602052604090205490565b34801561022b57600080fd5b506101e76104b9565b34801561024057600080fd5b50600454610254906001600160a01b031681565b6040516001600160a01b039091168152602001610133565b34801561027857600080fd5b506000546001600160a01b0316610254565b34801561029657600080fd5b5060408051808201909152600381526243544f60e81b6020820152610126565b3480156102c257600080fd5b506101e76102d1366004611009565b610528565b3480156102e257600080fd5b5061015c6102f1366004610f5d565b610573565b34801561030257600080fd5b5061017d610311366004611022565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b3360008181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103979086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260076020908152604080832033845290915281205460001914610456576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600782528381203382529091529190912054610431918490610580565b6001600160a01b03851660009081526007602090815260408083203384529091529020555b6104618484846105ba565b90505b9392505050565b6000546001600160a01b0316331461049e5760405162461bcd60e51b81526004016104959061105b565b60405180910390fd5b600d829055600e8190556104b28183611091565b600f555050565b6000546001600160a01b031633146104e35760405162461bcd60e51b81526004016104959061105b565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146105525760405162461bcd60e51b81526004016104959061105b565b6103e88160015461056391906110a4565b61056d91906110bb565b60025550565b60006104643384846105ba565b600081848411156105a45760405162461bcd60e51b81526004016104959190610ef7565b5060006105b184866110dd565b95945050505050565b600c5460009060ff16156105da576105d38484846107cb565b9050610464565b6005546001600160a01b0384811691161480159061060657506012546001600160a01b03848116911614155b156106b1576001600160a01b03831660009081526009602052604090205460ff168061065757506002546001600160a01b038416600090815260066020526040902054610654908490611091565b11155b6106b15760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610495565b6106bc8484846108b1565b156106c9576106c961090b565b6001600160a01b03841660009081526008602052604090205460ff16158015610736576107186106f98685610c0b565b6001600160a01b03861660009081526006602052604090205490610d2a565b6001600160a01b038516600090815260066020526040902055610773565b6001600160a01b0384166000908152600660205260409020546107599084610d2a565b6001600160a01b0385166000908152600660205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516107b891815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260069091529182205461081c918490610580565b6001600160a01b03808616600090815260066020526040808220939093559085168152205461084b9083610d2a565b6001600160a01b0380851660008181526006602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061089f9086815260200190565b60405180910390a35060019392505050565b60006108bb610d89565b80156108e057506001600160a01b03841660009081526008602052604090205460ff16155b80156108f957506005546001600160a01b038481169116145b8015610461575050600b541092915050565b600c805460ff191660011790553060009081526006602052604081205490506000610952600261094c600f5461094c600d5487610dc390919063ffffffff16565b90610e45565b905060006109608383610e87565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061099a5761099a6110f0565b60200260200101906001600160a01b031690816001600160a01b031681525050600460009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a319190611106565b81600181518110610a4457610a446110f0565b6001600160a01b0392831660209182029290920101526004805460405163791ac94760e01b815292169163791ac94791610a8991869160009187913091429101611123565b600060405180830381600087803b158015610aa357600080fd5b505af1158015610ab7573d6000803e3d6000fd5b5050600d5447925060009150610adb90610ad2906002610e45565b600f5490610e87565b90506000610afd600261094c8461094c600d5488610dc390919063ffffffff16565b90506000610b1a8361094c600e5487610dc390919063ffffffff16565b6003546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b55573d6000803e3d6000fd5b508615610bf7576004805460035460405163f305d71960e01b81523093810193909352602483018a905260006044840181905260648401526001600160a01b0390811660848401524260a4840152169063f305d71990849060c40160606040518083038185885af1158015610bce573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610bf39190611194565b5050505b5050600c805460ff19169055505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0385166000908152600690915291822054610c5c918490610580565b6001600160a01b038416600090815260066020526040812091909155601054600f54610c8e919061094c908690610dc3565b6000549091506001600160a01b038581169116148015610cad57600091505b30600090815260066020526040902054610cc79083610d2a565b30600081815260066020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d189086815260200190565b60405180910390a36105b18483610e87565b600080610d378385611091565b9050838110156104645760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610495565b600c5460009060ff16158015610da15750600a5460ff165b8015610dbe5750600b543060009081526006602052604090205410155b905090565b600082600003610dd5575060006103a3565b6000610de183856110a4565b905082610dee85836110bb565b146104645760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610495565b600061046483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610ec9565b600061046483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610580565b60008183610eea5760405162461bcd60e51b81526004016104959190610ef7565b5060006105b184866110bb565b600060208083528351808285015260005b81811015610f2457858101830151858201604001528201610f08565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610f5a57600080fd5b50565b60008060408385031215610f7057600080fd5b8235610f7b81610f45565b946020939093013593505050565b600080600060608486031215610f9e57600080fd5b8335610fa981610f45565b92506020840135610fb981610f45565b929592945050506040919091013590565b60008060408385031215610fdd57600080fd5b50508035926020909101359150565b600060208284031215610ffe57600080fd5b813561046481610f45565b60006020828403121561101b57600080fd5b5035919050565b6000806040838503121561103557600080fd5b823561104081610f45565b9150602083013561105081610f45565b809150509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156103a3576103a361107b565b80820281158282048414176103a3576103a361107b565b6000826110d857634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103a3576103a361107b565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561111857600080fd5b815161046481610f45565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156111735784516001600160a01b03168352938301939183019160010161114e565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156111a957600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220c5fa99378e34fb9f988567930ba449e003582dd26785e35e6cc57bde304039ce64736f6c63430008130033000000000000000000000000933d9132e516dd278679a4a8ec70c491d6dc9700

Deployed Bytecode

0x6080604052600436106100e15760003560e01c8063715018a61161007f57806395d89b411161005957806395d89b411461028a578063a0de96b3146102b6578063a9059cbb146102d6578063dd62ed3e146102f657600080fd5b8063715018a61461021f578063735de9f714610234578063893d20e81461026c57600080fd5b806323b872dd116100bb57806323b872dd1461018b578063313ce567146101ab5780634409ecc2146101c757806370a08231146101e957600080fd5b806306fdde03146100ed578063095ea7b31461013c57806318160ddd1461016c57600080fd5b366100e857005b600080fd5b3480156100f957600080fd5b5060408051808201909152601481527321b434b2b3102a3937b6361027b33334b1b4b2b960611b60208201525b6040516101339190610ef7565b60405180910390f35b34801561014857600080fd5b5061015c610157366004610f5d565b61033c565b6040519015158152602001610133565b34801561017857600080fd5b506001545b604051908152602001610133565b34801561019757600080fd5b5061015c6101a6366004610f89565b6103a9565b3480156101b757600080fd5b5060405160098152602001610133565b3480156101d357600080fd5b506101e76101e2366004610fca565b61046b565b005b3480156101f557600080fd5b5061017d610204366004610fec565b6001600160a01b031660009081526006602052604090205490565b34801561022b57600080fd5b506101e76104b9565b34801561024057600080fd5b50600454610254906001600160a01b031681565b6040516001600160a01b039091168152602001610133565b34801561027857600080fd5b506000546001600160a01b0316610254565b34801561029657600080fd5b5060408051808201909152600381526243544f60e81b6020820152610126565b3480156102c257600080fd5b506101e76102d1366004611009565b610528565b3480156102e257600080fd5b5061015c6102f1366004610f5d565b610573565b34801561030257600080fd5b5061017d610311366004611022565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b3360008181526007602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103979086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260076020908152604080832033845290915281205460001914610456576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600782528381203382529091529190912054610431918490610580565b6001600160a01b03851660009081526007602090815260408083203384529091529020555b6104618484846105ba565b90505b9392505050565b6000546001600160a01b0316331461049e5760405162461bcd60e51b81526004016104959061105b565b60405180910390fd5b600d829055600e8190556104b28183611091565b600f555050565b6000546001600160a01b031633146104e35760405162461bcd60e51b81526004016104959061105b565b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b6000546001600160a01b031633146105525760405162461bcd60e51b81526004016104959061105b565b6103e88160015461056391906110a4565b61056d91906110bb565b60025550565b60006104643384846105ba565b600081848411156105a45760405162461bcd60e51b81526004016104959190610ef7565b5060006105b184866110dd565b95945050505050565b600c5460009060ff16156105da576105d38484846107cb565b9050610464565b6005546001600160a01b0384811691161480159061060657506012546001600160a01b03848116911614155b156106b1576001600160a01b03831660009081526009602052604090205460ff168061065757506002546001600160a01b038416600090815260066020526040902054610654908490611091565b11155b6106b15760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610495565b6106bc8484846108b1565b156106c9576106c961090b565b6001600160a01b03841660009081526008602052604090205460ff16158015610736576107186106f98685610c0b565b6001600160a01b03861660009081526006602052604090205490610d2a565b6001600160a01b038516600090815260066020526040902055610773565b6001600160a01b0384166000908152600660205260409020546107599084610d2a565b6001600160a01b0385166000908152600660205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516107b891815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260069091529182205461081c918490610580565b6001600160a01b03808616600090815260066020526040808220939093559085168152205461084b9083610d2a565b6001600160a01b0380851660008181526006602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061089f9086815260200190565b60405180910390a35060019392505050565b60006108bb610d89565b80156108e057506001600160a01b03841660009081526008602052604090205460ff16155b80156108f957506005546001600160a01b038481169116145b8015610461575050600b541092915050565b600c805460ff191660011790553060009081526006602052604081205490506000610952600261094c600f5461094c600d5487610dc390919063ffffffff16565b90610e45565b905060006109608383610e87565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061099a5761099a6110f0565b60200260200101906001600160a01b031690816001600160a01b031681525050600460009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a319190611106565b81600181518110610a4457610a446110f0565b6001600160a01b0392831660209182029290920101526004805460405163791ac94760e01b815292169163791ac94791610a8991869160009187913091429101611123565b600060405180830381600087803b158015610aa357600080fd5b505af1158015610ab7573d6000803e3d6000fd5b5050600d5447925060009150610adb90610ad2906002610e45565b600f5490610e87565b90506000610afd600261094c8461094c600d5488610dc390919063ffffffff16565b90506000610b1a8361094c600e5487610dc390919063ffffffff16565b6003546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b55573d6000803e3d6000fd5b508615610bf7576004805460035460405163f305d71960e01b81523093810193909352602483018a905260006044840181905260648401526001600160a01b0390811660848401524260a4840152169063f305d71990849060c40160606040518083038185885af1158015610bce573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610bf39190611194565b5050505b5050600c805460ff19169055505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0385166000908152600690915291822054610c5c918490610580565b6001600160a01b038416600090815260066020526040812091909155601054600f54610c8e919061094c908690610dc3565b6000549091506001600160a01b038581169116148015610cad57600091505b30600090815260066020526040902054610cc79083610d2a565b30600081815260066020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d189086815260200190565b60405180910390a36105b18483610e87565b600080610d378385611091565b9050838110156104645760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610495565b600c5460009060ff16158015610da15750600a5460ff165b8015610dbe5750600b543060009081526006602052604090205410155b905090565b600082600003610dd5575060006103a3565b6000610de183856110a4565b905082610dee85836110bb565b146104645760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610495565b600061046483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610ec9565b600061046483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610580565b60008183610eea5760405162461bcd60e51b81526004016104959190610ef7565b5060006105b184866110bb565b600060208083528351808285015260005b81811015610f2457858101830151858201604001528201610f08565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610f5a57600080fd5b50565b60008060408385031215610f7057600080fd5b8235610f7b81610f45565b946020939093013593505050565b600080600060608486031215610f9e57600080fd5b8335610fa981610f45565b92506020840135610fb981610f45565b929592945050506040919091013590565b60008060408385031215610fdd57600080fd5b50508035926020909101359150565b600060208284031215610ffe57600080fd5b813561046481610f45565b60006020828403121561101b57600080fd5b5035919050565b6000806040838503121561103557600080fd5b823561104081610f45565b9150602083013561105081610f45565b809150509250929050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156103a3576103a361107b565b80820281158282048414176103a3576103a361107b565b6000826110d857634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156103a3576103a361107b565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561111857600080fd5b815161046481610f45565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156111735784516001600160a01b03168352938301939183019160010161114e565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156111a957600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220c5fa99378e34fb9f988567930ba449e003582dd26785e35e6cc57bde304039ce64736f6c63430008130033

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

000000000000000000000000933d9132e516dd278679a4a8ec70c491d6dc9700

-----Decoded View---------------
Arg [0] : CTOAddress (address): 0x933D9132E516dd278679a4a8ec70C491d6dC9700

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000933d9132e516dd278679a4a8ec70c491d6dc9700


Deployed Bytecode Sourcemap

4263:7462:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6450:80;;;;;;;;;;-1:-1:-1;6522:5:0;;;;;;;;;;;;-1:-1:-1;;;6522:5:0;;;;6450:80;;;;;;;:::i;:::-;;;;;;;;11506:216;;;;;;;;;;-1:-1:-1;11506:216:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;11506:216:0;1023:187:1;6180:88:0;;;;;;;;;;-1:-1:-1;6253:12:0;;6180:88;;;1361:25:1;;;1349:2;1334:18;6180:88:0;1215:177:1;10334:370:0;;;;;;;;;;-1:-1:-1;10334:370:0;;;;;:::i;:::-;;:::i;6274:80::-;;;;;;;;;;-1:-1:-1;6274:80:0;;4481:1;2000:36:1;;1988:2;1973:18;6274:80:0;1858:184:1;10979:187:0;;;;;;;;;;-1:-1:-1;10979:187:0;;;;;:::i;:::-;;:::i;:::-;;6621:105;;;;;;;;;;-1:-1:-1;6621:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;6705:18:0;6687:7;6705:18;;;:9;:18;;;;;;;6621:105;4074:132;;;;;;;;;;;;;:::i;4639:37::-;;;;;;;;;;-1:-1:-1;4639:37:0;;;;-1:-1:-1;;;;;4639:37:0;;;;;;-1:-1:-1;;;;;2739:32:1;;;2721:51;;2709:2;2694:18;4639:37:0;2552:226:1;6536:79:0;;;;;;;;;;-1:-1:-1;6588:7:0;6606:6;-1:-1:-1;;;;;6606:6:0;6536:79;;6360:84;;;;;;;;;;-1:-1:-1;6434:7:0;;;;;;;;;;;;-1:-1:-1;;;6434:7:0;;;;6360:84;;10837:130;;;;;;;;;;-1:-1:-1;10837:130:0;;;;;:::i;:::-;;:::i;8060:156::-;;;;;;;;;;-1:-1:-1;8060:156:0;;;;;:::i;:::-;;:::i;6732:133::-;;;;;;;;;;-1:-1:-1;6732:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;6834:19:0;;;6816:7;6834:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;6732:133;11506:216;11610:10;11581:4;11598:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;11598:32:0;;;;;;;;;;:41;;;11655:37;11581:4;;11598:32;;11655:37;;;;11633:6;1361:25:1;;1349:2;1334:18;;1215:177;11655:37:0;;;;;;;;-1:-1:-1;11710:4:0;11506:216;;;;;:::o;10334:370::-;-1:-1:-1;;;;;10454:19:0;;10434:4;10454:19;;;:11;:19;;;;;;;;10474:10;10454:31;;;;;;;;-1:-1:-1;;10454:52:0;10451:186;;10556:69;;;;;;;;;;;-1:-1:-1;;;10556:69:0;;;;;;;;-1:-1:-1;;;;;10556:19:0;;-1:-1:-1;10556:19:0;;;:11;:19;;;;;10576:10;10556:31;;;;;;;;;;:69;;10592:6;;10556:35;:69::i;:::-;-1:-1:-1;;;;;10522:19:0;;;;;;:11;:19;;;;;;;;10542:10;10522:31;;;;;;;:103;10451:186;10656:40;10670:6;10678:9;10689:6;10656:13;:40::i;:::-;10649:47;;10334:370;;;;;;:::o;10979:187::-;4017:4;4052:6;-1:-1:-1;;;;;4052:6:0;3909:10;4041:17;3892:39;;;;-1:-1:-1;;;3892:39:0;;;;;;;:::i;:::-;;;;;;;;;11063:6:::1;:14:::0;;;11090:13:::1;:22:::0;;;11136::::1;11106:6:::0;11072:5;11136:22:::1;:::i;:::-;11124:9;:34:::0;-1:-1:-1;;10979:187:0:o;4074:132::-;4017:4;4052:6;-1:-1:-1;;;;;4052:6:0;3909:10;4041:17;3892:39;;;;-1:-1:-1;;;3892:39:0;;;;;;;:::i;:::-;4148:1:::1;4131:19:::0;;-1:-1:-1;;;;;;4131:19:0::1;::::0;;4166:32:::1;::::0;2721:51:1;;;4166:32:0::1;::::0;2709:2:1;2694:18;4166:32:0::1;;;;;;;4074:132::o:0;10837:130::-;4017:4;4052:6;-1:-1:-1;;;;;4052:6:0;3909:10;4041:17;3892:39;;;;-1:-1:-1;;;3892:39:0;;;;;;;:::i;:::-;10955:4:::1;10944:7;10929:12;;:22;;;;:::i;:::-;10928:31;;;;:::i;:::-;10913:12;:46:::0;-1:-1:-1;10837:130:0:o;8060:156::-;8140:4;8164:44;8178:10;8190:9;8201:6;8164:13;:44::i;2026:190::-;2112:7;2148:12;2140:6;;;;2132:29;;;;-1:-1:-1;;;2132:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2172:9:0;2184:5;2188:1;2184;:5;:::i;:::-;2172:17;2026:190;-1:-1:-1;;;;;2026:190:0:o;7169:879::-;7281:19;;7261:4;;7281:19;;7278:76;;;7310:41;7325:6;7333:9;7344:6;7310:14;:41::i;:::-;7303:48;;;;7278:76;7391:12;;-1:-1:-1;;;;;7378:25:0;;;7391:12;;7378:25;;;;:54;;-1:-1:-1;7420:12:0;;-1:-1:-1;;;;;7407:25:0;;;7420:12;;7407:25;;7378:54;7374:208;;;-1:-1:-1;;;;;7457:22:0;;;;;;:11;:22;;;;;;;;;:71;;-1:-1:-1;7516:12:0;;-1:-1:-1;;;;;7483:20:0;;;;;;:9;:20;;;;;;:29;;7506:6;;7483:29;:::i;:::-;:45;;7457:71;7449:121;;;;-1:-1:-1;;;7449:121:0;;4895:2:1;7449:121:0;;;4877:21:1;4934:2;4914:18;;;4907:30;4973:34;4953:18;;;4946:62;-1:-1:-1;;;5024:18:1;;;5017:35;5069:19;;7449:121:0;4693:401:1;7449:121:0;7603:49;7626:6;7634:9;7645:6;7603:22;:49::i;:::-;7600:98;;;7669:16;:14;:16::i;:::-;-1:-1:-1;;;;;10800:17:0;;7709:14;10800:17;;;:9;:17;;;;;;;;10799:18;7755:211;;;;7808:58;7833:32;7850:6;7858;7833:16;:32::i;:::-;-1:-1:-1;;;;;7808:20:0;;;;;;:9;:20;;;;;;;:24;:58::i;:::-;-1:-1:-1;;;;;7785:20:0;;;;;;:9;:20;;;;;:81;7755:211;;;-1:-1:-1;;;;;7922:20:0;;;;;;:9;:20;;;;;;:32;;7947:6;7922:24;:32::i;:::-;-1:-1:-1;;;;;7899:20:0;;;;;;:9;:20;;;;;:55;7755:211;8000:9;-1:-1:-1;;;;;7983:35:0;7992:6;-1:-1:-1;;;;;7983:35:0;;8011:6;7983:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;7983:35:0;;;;;;;;-1:-1:-1;8036:4:0;;7169:879;-1:-1:-1;;;;7169:879:0:o;9996:330::-;10126:53;;;;;;;;;;;-1:-1:-1;;;10126:53:0;;;;;;;;-1:-1:-1;;;;;10126:17:0;;10089:4;10126:17;;;:9;:17;;;;;;;:53;;10148:6;;10126:21;:53::i;:::-;-1:-1:-1;;;;;10106:17:0;;;;;;;:9;:17;;;;;;:73;;;;10213:20;;;;;;;:32;;10238:6;10213:24;:32::i;:::-;-1:-1:-1;;;;;10190:20:0;;;;;;;:9;:20;;;;;;;:55;;;;10261:35;;;;;;;;;;10289:6;1361:25:1;;1349:2;1334:18;;1215:177;10261:35:0;;;;;;;;-1:-1:-1;10314:4:0;9996:330;;;;;:::o;6891:270::-;6991:4;7015:25;:23;:25::i;:::-;:61;;;;-1:-1:-1;;;;;;10800:17:0;;10775:4;10800:17;;;:9;:17;;;;;;;;10799:18;7058;7015:97;;;;-1:-1:-1;11271:12:0;;-1:-1:-1;;;;;11258:25:0;;;11271:12;;11258:25;7094:18;7015:138;;;;-1:-1:-1;;7139:14:0;;-1:-1:-1;7130:23:0;6891:270;-1:-1:-1;;6891:270:0:o;8224:1227::-;5413:19;:26;;-1:-1:-1;;5413:26:0;5435:4;5413:26;;;8328:4:::1;-1:-1:-1::0;6705:18:0;;;:9;:18;;;;;;8279:55:::1;;8345:18;8366:54;8418:1;8366:47;8403:9;;8366:32;8391:6;;8366:20;:24;;:32;;;;:::i;:::-;:36:::0;::::1;:47::i;:54::-;8345:75:::0;-1:-1:-1;8431:20:0::1;8454:36;:20:::0;8345:75;8454:24:::1;:36::i;:::-;8527:16;::::0;;8541:1:::1;8527:16:::0;;;;;::::1;::::0;;8431:59;;-1:-1:-1;8503:21:0::1;::::0;8527:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8527:16:0::1;8503:40;;8572:4;8554;8559:1;8554:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8554:23:0::1;;;-1:-1:-1::0;;;;;8554:23:0::1;;;::::0;::::1;8598:13;;;;;;;;;-1:-1:-1::0;;;;;8598:13:0::1;-1:-1:-1::0;;;;;8598:18:0::1;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8588:4;8593:1;8588:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8588:30:0;;::::1;:7;::::0;;::::1;::::0;;;;;:30;8631:13:::1;::::0;;:195:::1;::::0;-1:-1:-1;;;8631:195:0;;:13;::::1;::::0;:64:::1;::::0;:195:::1;::::0;8710:12;;8631:13:::1;::::0;8753:4;;8780::::1;::::0;8800:15:::1;::::0;8631:195:::1;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;8928:6:0::1;::::0;8857:21:::1;::::0;-1:-1:-1;8837:17:0::1;::::0;-1:-1:-1;8914:28:0::1;::::0;8928:13:::1;::::0;8939:1:::1;8928:10;:13::i;:::-;8914:9;::::0;;:13:::1;:28::i;:::-;8889:53;;8953:15;8971:48;9017:1;8971:41;8997:14;8971:21;8985:6;;8971:9;:13;;:21;;;;:::i;:48::-;8953:66;;9030:22;9055:48;9088:14;9055:28;9069:13;;9055:9;:13;;:28;;;;:::i;:48::-;9124:12;::::0;9116:46:::1;::::0;9030:73;;-1:-1:-1;;;;;;9124:12:0::1;::::0;9116:46;::::1;;;::::0;9030:73;;9124:12:::1;9116:46:::0;9124:12;9116:46;9030:73;9124:12;9116:46;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;9176:14:0;;9173:271:::1;;9206:13;::::0;;9371:12:::1;::::0;9206:226:::1;::::0;-1:-1:-1;;;9206:226:0;;9278:4:::1;9206:226:::0;;::::1;6945:34:1::0;;;;6995:18;;;6988:34;;;9206:13:0::1;7038:18:1::0;;;7031:34;;;7081:18;;;7074:34;-1:-1:-1;;;;;9371:12:0;;::::1;7124:19:1::0;;;7117:44;9402:15:0::1;7177:19:1::0;;;7170:35;9206:13:0::1;::::0;:29:::1;::::0;9243:7;;6879:19:1;;9206:226:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;9173:271;-1:-1:-1::0;;5444:19:0;:27;;-1:-1:-1;;5444:27:0;;;-1:-1:-1;;;;;;8224:1227:0:o;9459:529::-;9575:53;;;;;;;;;;;-1:-1:-1;;;9575:53:0;;;;;;;;-1:-1:-1;;;;;9575:17:0;;9535:7;9575:17;;;:9;:17;;;;;;;:53;;9597:6;;9575:21;:53::i;:::-;-1:-1:-1;;;;;9555:17:0;;;;;;:9;:17;;;;;:73;;;;9685:13;;9670:9;;9659:40;;9685:13;9659:21;;:6;;:10;:21::i;:40::-;9710:13;9736:6;9639:60;;-1:-1:-1;;;;;;9726:16:0;;;9736:6;;9726:16;9753:54;;;;9794:1;9782:13;;9753:54;9862:4;9844:24;;;;:9;:24;;;;;;:39;;9873:9;9844:28;:39::i;:::-;9835:4;9817:24;;;;:9;:24;;;;;;;:66;;;;9899:42;;-1:-1:-1;;;;;9899:42:0;;;;;;;9931:9;1361:25:1;;1349:2;1334:18;;1215:177;9899:42:0;;;;;;;;9959:21;:6;9970:9;9959:10;:21::i;1695:179::-;1753:7;;1785:5;1789:1;1785;:5;:::i;:::-;1773:17;;1814:1;1809;:6;;1801:46;;;;-1:-1:-1;;;1801:46:0;;7729:2:1;1801:46:0;;;7711:21:1;7768:2;7748:18;;;7741:30;7807:29;7787:18;;;7780:57;7854:18;;1801:46:0;7527:351:1;11299:195:0;11382:19;;11357:4;;11382:19;;11381:20;:50;;;;-1:-1:-1;11414:17:0;;;;11381:50;:105;;;;-1:-1:-1;11472:14:0;;11462:4;11444:24;;;;:9;:24;;;;;;:42;;11381:105;11374:112;;11299:195;:::o;2224:246::-;2282:7;2306:1;2311;2306:6;2302:47;;-1:-1:-1;2336:1:0;2329:8;;2302:47;2359:9;2371:5;2375:1;2371;:5;:::i;:::-;2359:17;-1:-1:-1;2404:1:0;2395:5;2399:1;2359:17;2395:5;:::i;:::-;:10;2387:56;;;;-1:-1:-1;;;2387:56:0;;8085:2:1;2387:56:0;;;8067:21:1;8124:2;8104:18;;;8097:30;8163:34;8143:18;;;8136:62;-1:-1:-1;;;8214:18:1;;;8207:31;8255:19;;2387:56:0;7883:397:1;2478:132:0;2536:7;2563:39;2567:1;2570;2563:39;;;;;;;;;;;;;;;;;:3;:39::i;1882:136::-;1940:7;1967:43;1971:1;1974;1967:43;;;;;;;;;;;;;;;;;:3;:43::i;2618:189::-;2704:7;2739:12;2732:5;2724:28;;;;-1:-1:-1;;;2724:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2763:9:0;2775:5;2779:1;2775;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:248::-;2115:6;2123;2176:2;2164:9;2155:7;2151:23;2147:32;2144:52;;;2192:1;2189;2182:12;2144:52;-1:-1:-1;;2215:23:1;;;2285:2;2270:18;;;2257:32;;-1:-1:-1;2047:248:1:o;2300:247::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;2467:9;2454:23;2486:31;2511:5;2486:31;:::i;2991:180::-;3050:6;3103:2;3091:9;3082:7;3078:23;3074:32;3071:52;;;3119:1;3116;3109:12;3071:52;-1:-1:-1;3142:23:1;;2991:180;-1:-1:-1;2991:180:1:o;3176:388::-;3244:6;3252;3305:2;3293:9;3284:7;3280:23;3276:32;3273:52;;;3321:1;3318;3311:12;3273:52;3360:9;3347:23;3379:31;3404:5;3379:31;:::i;:::-;3429:5;-1:-1:-1;3486:2:1;3471:18;;3458:32;3499:33;3458:32;3499:33;:::i;:::-;3551:7;3541:17;;;3176:388;;;;;:::o;3569:329::-;3771:2;3753:21;;;3810:1;3790:18;;;3783:29;-1:-1:-1;;;3843:2:1;3828:18;;3821:36;3889:2;3874:18;;3569:329::o;3903:127::-;3964:10;3959:3;3955:20;3952:1;3945:31;3995:4;3992:1;3985:15;4019:4;4016:1;4009:15;4035:125;4100:9;;;4121:10;;;4118:36;;;4134:18;;:::i;4165:168::-;4238:9;;;4269;;4286:15;;;4280:22;;4266:37;4256:71;;4307:18;;:::i;4338:217::-;4378:1;4404;4394:132;;4448:10;4443:3;4439:20;4436:1;4429:31;4483:4;4480:1;4473:15;4511:4;4508:1;4501:15;4394:132;-1:-1:-1;4540:9:1;;4338:217::o;4560:128::-;4627:9;;;4648:11;;;4645:37;;;4662:18;;:::i;5231:127::-;5292:10;5287:3;5283:20;5280:1;5273:31;5323:4;5320:1;5313:15;5347:4;5344:1;5337:15;5363:251;5433:6;5486:2;5474:9;5465:7;5461:23;5457:32;5454:52;;;5502:1;5499;5492:12;5454:52;5534:9;5528:16;5553:31;5578:5;5553:31;:::i;5619:980::-;5881:4;5929:3;5918:9;5914:19;5960:6;5949:9;5942:25;5986:2;6024:6;6019:2;6008:9;6004:18;5997:34;6067:3;6062:2;6051:9;6047:18;6040:31;6091:6;6126;6120:13;6157:6;6149;6142:22;6195:3;6184:9;6180:19;6173:26;;6234:2;6226:6;6222:15;6208:29;;6255:1;6265:195;6279:6;6276:1;6273:13;6265:195;;;6344:13;;-1:-1:-1;;;;;6340:39:1;6328:52;;6435:15;;;;6400:12;;;;6376:1;6294:9;6265:195;;;-1:-1:-1;;;;;;;6516:32:1;;;;6511:2;6496:18;;6489:60;-1:-1:-1;;;6580:3:1;6565:19;6558:35;6477:3;5619:980;-1:-1:-1;;;5619:980:1:o;7216:306::-;7304:6;7312;7320;7373:2;7361:9;7352:7;7348:23;7344:32;7341:52;;;7389:1;7386;7379:12;7341:52;7418:9;7412:16;7402:26;;7468:2;7457:9;7453:18;7447:25;7437:35;;7512:2;7501:9;7497:18;7491:25;7481:35;;7216:306;;;;;:::o

Swarm Source

ipfs://c5fa99378e34fb9f988567930ba449e003582dd26785e35e6cc57bde304039ce

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.