ETH Price: $3,065.07 (+3.24%)
Gas: 11 Gwei

Contract

0x861950d091704C80B2a0F69D4B3431F0aeD7Dc7A
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve198489132024-05-11 19:35:2358 days ago1715456123IN
0x861950d0...0aeD7Dc7A
0 ETH0.000090893.73687269
Approve198488372024-05-11 19:20:1158 days ago1715455211IN
0x861950d0...0aeD7Dc7A
0 ETH0.0000943.86451572
Transfer198216722024-05-08 0:09:4762 days ago1715126987IN
0x861950d0...0aeD7Dc7A
0 ETH0.000288265.87535295
Approve195948022024-04-06 6:09:3594 days ago1712383775IN
0x861950d0...0aeD7Dc7A
0 ETH0.0005595312.02042064
Approve195163312024-03-26 4:46:47105 days ago1711428407IN
0x861950d0...0aeD7Dc7A
0 ETH0.000849718.25399431
Approve194955052024-03-23 6:26:35108 days ago1711175195IN
0x861950d0...0aeD7Dc7A
0 ETH0.0007002315.11305688
Approve194933912024-03-22 23:19:35108 days ago1711149575IN
0x861950d0...0aeD7Dc7A
0 ETH0.0010645722.86993374
Approve194803282024-03-21 3:19:59110 days ago1710991199IN
0x861950d0...0aeD7Dc7A
0 ETH0.0006122525.16976247
Approve194803282024-03-21 3:19:59110 days ago1710991199IN
0x861950d0...0aeD7Dc7A
0 ETH0.0006122525.16976247
Transfer From194307092024-03-14 3:54:11117 days ago1710388451IN
0x861950d0...0aeD7Dc7A
0 ETH0.0036547964.19461695
Approve194307082024-03-14 3:53:59117 days ago1710388439IN
0x861950d0...0aeD7Dc7A
0 ETH0.0025801955.48686696
Approve193373872024-03-01 2:37:23130 days ago1709260643IN
0x861950d0...0aeD7Dc7A
0 ETH0.0011244546.3406952
Approve192003502024-02-10 21:23:59149 days ago1707600239IN
0x861950d0...0aeD7Dc7A
0 ETH0.0009412238.78930178
Approve191300792024-02-01 0:38:23159 days ago1706747903IN
0x861950d0...0aeD7Dc7A
0 ETH0.0006361326.1516578
Approve191231442024-01-31 1:17:11160 days ago1706663831IN
0x861950d0...0aeD7Dc7A
0 ETH0.0004587718.86021793
Transfer191024632024-01-28 3:48:23163 days ago1706413703IN
0x861950d0...0aeD7Dc7A
0 ETH0.0003462710.90728947
Approve191024572024-01-28 3:47:11163 days ago1706413631IN
0x861950d0...0aeD7Dc7A
0 ETH0.0005073910.95108456
Approve190976132024-01-27 11:27:23164 days ago1706354843IN
0x861950d0...0aeD7Dc7A
0 ETH0.0005354511.50308338
Approve190934342024-01-26 21:24:23164 days ago1706304263IN
0x861950d0...0aeD7Dc7A
0 ETH0.0006498813.94329009
Approve190664252024-01-23 2:31:59168 days ago1705977119IN
0x861950d0...0aeD7Dc7A
0 ETH0.000448329.63115738
Approve190434472024-01-19 20:58:35171 days ago1705697915IN
0x861950d0...0aeD7Dc7A
0 ETH0.0004893120.1156133
Approve190033682024-01-14 6:34:23177 days ago1705214063IN
0x861950d0...0aeD7Dc7A
0 ETH0.0033327471.50441122
Transfer190025722024-01-14 3:54:23177 days ago1705204463IN
0x861950d0...0aeD7Dc7A
0 ETH0.0008672517.68491281
Approve189040532023-12-31 7:43:59191 days ago1704008639IN
0x861950d0...0aeD7Dc7A
0 ETH0.0004564618.76530321
Approve188127192023-12-18 11:56:47204 days ago1702900607IN
0x861950d0...0aeD7Dc7A
0 ETH0.0015691633.91092805
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MAGIC

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-13
*/

// ░██████╗░█████╗░███████╗██╗░░░██╗  ██████╗░██╗░░░██╗
// ██╔════╝██╔══██╗██╔════╝██║░░░██║  ██╔══██╗╚██╗░██╔╝
// ╚█████╗░███████║█████╗░░██║░░░██║  ██████╦╝░╚████╔╝░
// ░╚═══██╗██╔══██║██╔══╝░░██║░░░██║  ██╔══██╗░░╚██╔╝░░
// ██████╔╝██║░░██║██║░░░░░╚██████╔╝  ██████╦╝░░░██║░░░
// ╚═════╝░╚═╝░░╚═╝╚═╝░░░░░░╚═════╝░  ╚═════╝░░░░╚═╝░░░

// ░█████╗░░█████╗░██╗███╗░░██╗░██████╗██╗░░░██╗██╗░░░░░████████╗░░░███╗░░██╗███████╗████████╗
// ██╔══██╗██╔══██╗██║████╗░██║██╔════╝██║░░░██║██║░░░░░╚══██╔══╝░░░████╗░██║██╔════╝╚══██╔══╝
// ██║░░╚═╝██║░░██║██║██╔██╗██║╚█████╗░██║░░░██║██║░░░░░░░░██║░░░░░░██╔██╗██║█████╗░░░░░██║░░░
// ██║░░██╗██║░░██║██║██║╚████║░╚═══██╗██║░░░██║██║░░░░░░░░██║░░░░░░██║╚████║██╔══╝░░░░░██║░░░
// ╚█████╔╝╚█████╔╝██║██║░╚███║██████╔╝╚██████╔╝███████╗░░░██║░░░██╗██║░╚███║███████╗░░░██║░░░
// ░╚════╝░░╚════╝░╚═╝╚═╝░░╚══╝╚═════╝░░╚═════╝░╚══════╝░░░╚═╝░░░╚═╝╚═╝░░╚══╝╚══════╝░░░╚═╝░░░

// Get your SAFU contract now via Coinsult.net

// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
   
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

library Address {
    function sendValue(address payable recipient, uint256 amount) internal returns(bool){
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        return success;
    }
}

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

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

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

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

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

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - amount);
            }
        }

        _transfer(sender, recipient, 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) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        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 _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}


contract MAGIC is ERC20, Ownable {
    using Address for address payable;
    mapping (address => bool) private _isExcludedFromFees;

    string  public creator;

    constructor () ERC20("Magic-BOT", "$MAGIC") 
    {   
        creator = "coinsult.net";

        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[0x71B5759d73262FBb223956913ecF4ecC51057641] = true; //pinklock

        _mint(owner(), 1e6 * (10 ** decimals()));
    }

    receive() external payable {}

    function claimStuckTokens(address token) external onlyOwner {
        require(token != address(this), "Owner cannot claim contract's balance of its own tokens");
        if (token == address(0x0)) {
            payable(msg.sender).sendValue(address(this).balance);
            return;
        }
        IERC20 ERC20token = IERC20(token);
        uint256 balance = ERC20token.balanceOf(address(this));
        ERC20token.transfer(msg.sender, balance);
    }

    function excludeFromFees(address account, bool excluded) external onlyOwner{
        require(_isExcludedFromFees[account] != excluded,"Account is already the value of 'excluded'");
        _isExcludedFromFees[account] = excluded;
    }

    function isExcludedFromFees(address account) public view returns(bool) {
        return _isExcludedFromFees[account];
    }

    bool public tradingEnabled;

    function enableTrading() external onlyOwner{
        require(!tradingEnabled, "Trading already enabled.");
        tradingEnabled = true;
    }

    function _transfer(address from,address to,uint256 amount) internal  override {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(tradingEnabled || _isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading not yet enabled!");
       
        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }

        super._transfer(from, to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"claimStuckTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","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":[{"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":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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"}]

60806040523480156200001157600080fd5b5060405180604001604052806009815260200168135859da58cb5093d560ba1b81525060405180604001604052806006815260200165244d4147494360d01b815250816003908162000064919062000367565b50600462000073828262000367565b505050600062000088620001d260201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060408051808201909152600c81526b18dbda5b9cdd5b1d0b9b995d60a21b602082015260079062000108908262000367565b50600160066000620001226005546001600160a01b031690565b6001600160a01b031681526020808201929092526040016000908120805493151560ff199485161790557371b5759d73262fbb223956913ecf4ecc510576419052600690527f91cf82735ad11faba8c476248d680ef8ce47b92116c1526250e8434207e3f0ee80549091166001179055620001cc620001a96005546001600160a01b031690565b620001b76012600a62000548565b620001c690620f424062000560565b620001d6565b62000590565b3390565b6001600160a01b038216620002315760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200024591906200057a565b90915550506001600160a01b03821660009081526020819052604081208054839290620002749084906200057a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002ee57607f821691505b6020821081036200030f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002be57600081815260208120601f850160051c810160208610156200033e5750805b601f850160051c820191505b818110156200035f578281556001016200034a565b505050505050565b81516001600160401b03811115620003835762000383620002c3565b6200039b81620003948454620002d9565b8462000315565b602080601f831160018114620003d35760008415620003ba5750858301515b600019600386901b1c1916600185901b1785556200035f565b600085815260208120601f198616915b828110156200040457888601518255948401946001909101908401620003e3565b5085821015620004235787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200048a5781600019048211156200046e576200046e62000433565b808516156200047c57918102915b93841c93908002906200044e565b509250929050565b600082620004a35750600162000542565b81620004b25750600062000542565b8160018114620004cb5760028114620004d657620004f6565b600191505062000542565b60ff841115620004ea57620004ea62000433565b50506001821b62000542565b5060208310610133831016604e8410600b84101617156200051b575081810a62000542565b62000527838362000449565b80600019048211156200053e576200053e62000433565b0290505b92915050565b60006200055960ff84168362000492565b9392505050565b808202811582820484141762000542576200054262000433565b8082018082111562000542576200054262000433565b61125c80620005a06000396000f3fe6080604052600436106101235760003560e01c8063715018a6116100a0578063a9059cbb11610064578063a9059cbb1461032c578063c02466681461034c578063dd62ed3e1461036c578063f2fde38b146103b2578063f9d0831a146103d257600080fd5b8063715018a6146102a35780638a8c523c146102ba5780638da5cb5b146102cf57806395d89b41146102f7578063a457c2d71461030c57600080fd5b8063313ce567116100e7578063313ce567146101de57806339509351146101fa5780634ada218b1461021a5780634fbee1931461023457806370a082311461026d57600080fd5b806302d05d3f1461012f57806306fdde031461015a578063095ea7b31461016f57806318160ddd1461019f57806323b872dd146101be57600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b506101446103f2565b6040516101519190610f6e565b60405180910390f35b34801561016657600080fd5b50610144610480565b34801561017b57600080fd5b5061018f61018a366004610fd8565b610512565b6040519015158152602001610151565b3480156101ab57600080fd5b506002545b604051908152602001610151565b3480156101ca57600080fd5b5061018f6101d9366004611002565b610529565b3480156101ea57600080fd5b5060405160128152602001610151565b34801561020657600080fd5b5061018f610215366004610fd8565b6105df565b34801561022657600080fd5b5060085461018f9060ff1681565b34801561024057600080fd5b5061018f61024f36600461103e565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561027957600080fd5b506101b061028836600461103e565b6001600160a01b031660009081526020819052604090205490565b3480156102af57600080fd5b506102b861061b565b005b3480156102c657600080fd5b506102b861068f565b3480156102db57600080fd5b506005546040516001600160a01b039091168152602001610151565b34801561030357600080fd5b5061014461071b565b34801561031857600080fd5b5061018f610327366004610fd8565b61072a565b34801561033857600080fd5b5061018f610347366004610fd8565b6107c3565b34801561035857600080fd5b506102b861036736600461106e565b6107d0565b34801561037857600080fd5b506101b06103873660046110a5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156103be57600080fd5b506102b86103cd36600461103e565b6108a8565b3480156103de57600080fd5b506102b86103ed36600461103e565b610993565b600780546103ff906110d8565b80601f016020809104026020016040519081016040528092919081815260200182805461042b906110d8565b80156104785780601f1061044d57610100808354040283529160200191610478565b820191906000526020600020905b81548152906001019060200180831161045b57829003601f168201915b505050505081565b60606003805461048f906110d8565b80601f01602080910402602001604051908101604052809291908181526020018280546104bb906110d8565b80156105085780601f106104dd57610100808354040283529160200191610508565b820191906000526020600020905b8154815290600101906020018083116104eb57829003601f168201915b5050505050905090565b600061051f338484610b3f565b5060015b92915050565b6001600160a01b038316600090815260016020908152604080832033845290915281205460001981146105c957828110156105bc5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6105c98533858403610b3f565b6105d4858585610c63565b506001949350505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161051f918590610616908690611112565b610b3f565b6005546001600160a01b031633146106455760405162461bcd60e51b81526004016105b390611133565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146106b95760405162461bcd60e51b81526004016105b390611133565b60085460ff161561070c5760405162461bcd60e51b815260206004820152601860248201527f54726164696e6720616c726561647920656e61626c65642e000000000000000060448201526064016105b3565b6008805460ff19166001179055565b60606004805461048f906110d8565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156107ac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105b3565b6107b93385858403610b3f565b5060019392505050565b600061051f338484610c63565b6005546001600160a01b031633146107fa5760405162461bcd60e51b81526004016105b390611133565b6001600160a01b03821660009081526006602052604090205481151560ff90911615150361087d5760405162461bcd60e51b815260206004820152602a60248201527f4163636f756e7420697320616c7265616479207468652076616c7565206f6620604482015269276578636c756465642760b01b60648201526084016105b3565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6005546001600160a01b031633146108d25760405162461bcd60e51b81526004016105b390611133565b6001600160a01b0381166109375760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105b3565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146109bd5760405162461bcd60e51b81526004016105b390611133565b306001600160a01b03821603610a3b5760405162461bcd60e51b815260206004820152603760248201527f4f776e65722063616e6e6f7420636c61696d20636f6e7472616374277320626160448201527f6c616e6365206f6620697473206f776e20746f6b656e7300000000000000000060648201526084016105b3565b6001600160a01b038116610a5757610a533347610d6b565b5050565b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610aa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac49190611168565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b389190611181565b5050505b50565b6001600160a01b038316610ba15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b3565b6001600160a01b038216610c025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b3565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c895760405162461bcd60e51b81526004016105b39061119e565b6001600160a01b038216610caf5760405162461bcd60e51b81526004016105b3906111e3565b60085460ff1680610cd857506001600160a01b03831660009081526006602052604090205460ff165b80610cfb57506001600160a01b03821660009081526006602052604090205460ff165b610d475760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016105b3565b80600003610d6057610d5b83836000610e1a565b505050565b610d5b838383610e1a565b600081471015610dbd5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016105b3565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114610e0a576040519150601f19603f3d011682016040523d82523d6000602084013e610e0f565b606091505b509095945050505050565b6001600160a01b038316610e405760405162461bcd60e51b81526004016105b39061119e565b6001600160a01b038216610e665760405162461bcd60e51b81526004016105b3906111e3565b6001600160a01b03831660009081526020819052604090205481811015610ede5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105b3565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290610f15908490611112565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f6191815260200190565b60405180910390a3610b38565b600060208083528351808285015260005b81811015610f9b57858101830151858201604001528201610f7f565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610fd357600080fd5b919050565b60008060408385031215610feb57600080fd5b610ff483610fbc565b946020939093013593505050565b60008060006060848603121561101757600080fd5b61102084610fbc565b925061102e60208501610fbc565b9150604084013590509250925092565b60006020828403121561105057600080fd5b61105982610fbc565b9392505050565b8015158114610b3c57600080fd5b6000806040838503121561108157600080fd5b61108a83610fbc565b9150602083013561109a81611060565b809150509250929050565b600080604083850312156110b857600080fd5b6110c183610fbc565b91506110cf60208401610fbc565b90509250929050565b600181811c908216806110ec57607f821691505b60208210810361110c57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561052357634e487b7160e01b600052601160045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561117a57600080fd5b5051919050565b60006020828403121561119357600080fd5b815161105981611060565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b60608201526080019056fea26469706673582212205e66f67ca5a6a7a1c3f6843da6c8c783f073efa6cd5083de5dc8fc216e91129464736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101235760003560e01c8063715018a6116100a0578063a9059cbb11610064578063a9059cbb1461032c578063c02466681461034c578063dd62ed3e1461036c578063f2fde38b146103b2578063f9d0831a146103d257600080fd5b8063715018a6146102a35780638a8c523c146102ba5780638da5cb5b146102cf57806395d89b41146102f7578063a457c2d71461030c57600080fd5b8063313ce567116100e7578063313ce567146101de57806339509351146101fa5780634ada218b1461021a5780634fbee1931461023457806370a082311461026d57600080fd5b806302d05d3f1461012f57806306fdde031461015a578063095ea7b31461016f57806318160ddd1461019f57806323b872dd146101be57600080fd5b3661012a57005b600080fd5b34801561013b57600080fd5b506101446103f2565b6040516101519190610f6e565b60405180910390f35b34801561016657600080fd5b50610144610480565b34801561017b57600080fd5b5061018f61018a366004610fd8565b610512565b6040519015158152602001610151565b3480156101ab57600080fd5b506002545b604051908152602001610151565b3480156101ca57600080fd5b5061018f6101d9366004611002565b610529565b3480156101ea57600080fd5b5060405160128152602001610151565b34801561020657600080fd5b5061018f610215366004610fd8565b6105df565b34801561022657600080fd5b5060085461018f9060ff1681565b34801561024057600080fd5b5061018f61024f36600461103e565b6001600160a01b031660009081526006602052604090205460ff1690565b34801561027957600080fd5b506101b061028836600461103e565b6001600160a01b031660009081526020819052604090205490565b3480156102af57600080fd5b506102b861061b565b005b3480156102c657600080fd5b506102b861068f565b3480156102db57600080fd5b506005546040516001600160a01b039091168152602001610151565b34801561030357600080fd5b5061014461071b565b34801561031857600080fd5b5061018f610327366004610fd8565b61072a565b34801561033857600080fd5b5061018f610347366004610fd8565b6107c3565b34801561035857600080fd5b506102b861036736600461106e565b6107d0565b34801561037857600080fd5b506101b06103873660046110a5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156103be57600080fd5b506102b86103cd36600461103e565b6108a8565b3480156103de57600080fd5b506102b86103ed36600461103e565b610993565b600780546103ff906110d8565b80601f016020809104026020016040519081016040528092919081815260200182805461042b906110d8565b80156104785780601f1061044d57610100808354040283529160200191610478565b820191906000526020600020905b81548152906001019060200180831161045b57829003601f168201915b505050505081565b60606003805461048f906110d8565b80601f01602080910402602001604051908101604052809291908181526020018280546104bb906110d8565b80156105085780601f106104dd57610100808354040283529160200191610508565b820191906000526020600020905b8154815290600101906020018083116104eb57829003601f168201915b5050505050905090565b600061051f338484610b3f565b5060015b92915050565b6001600160a01b038316600090815260016020908152604080832033845290915281205460001981146105c957828110156105bc5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6105c98533858403610b3f565b6105d4858585610c63565b506001949350505050565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161051f918590610616908690611112565b610b3f565b6005546001600160a01b031633146106455760405162461bcd60e51b81526004016105b390611133565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146106b95760405162461bcd60e51b81526004016105b390611133565b60085460ff161561070c5760405162461bcd60e51b815260206004820152601860248201527f54726164696e6720616c726561647920656e61626c65642e000000000000000060448201526064016105b3565b6008805460ff19166001179055565b60606004805461048f906110d8565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156107ac5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105b3565b6107b93385858403610b3f565b5060019392505050565b600061051f338484610c63565b6005546001600160a01b031633146107fa5760405162461bcd60e51b81526004016105b390611133565b6001600160a01b03821660009081526006602052604090205481151560ff90911615150361087d5760405162461bcd60e51b815260206004820152602a60248201527f4163636f756e7420697320616c7265616479207468652076616c7565206f6620604482015269276578636c756465642760b01b60648201526084016105b3565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6005546001600160a01b031633146108d25760405162461bcd60e51b81526004016105b390611133565b6001600160a01b0381166109375760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105b3565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b031633146109bd5760405162461bcd60e51b81526004016105b390611133565b306001600160a01b03821603610a3b5760405162461bcd60e51b815260206004820152603760248201527f4f776e65722063616e6e6f7420636c61696d20636f6e7472616374277320626160448201527f6c616e6365206f6620697473206f776e20746f6b656e7300000000000000000060648201526084016105b3565b6001600160a01b038116610a5757610a533347610d6b565b5050565b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015610aa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac49190611168565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af1158015610b14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b389190611181565b5050505b50565b6001600160a01b038316610ba15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105b3565b6001600160a01b038216610c025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105b3565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c895760405162461bcd60e51b81526004016105b39061119e565b6001600160a01b038216610caf5760405162461bcd60e51b81526004016105b3906111e3565b60085460ff1680610cd857506001600160a01b03831660009081526006602052604090205460ff165b80610cfb57506001600160a01b03821660009081526006602052604090205460ff165b610d475760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016105b3565b80600003610d6057610d5b83836000610e1a565b505050565b610d5b838383610e1a565b600081471015610dbd5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016105b3565b6000836001600160a01b03168360405160006040518083038185875af1925050503d8060008114610e0a576040519150601f19603f3d011682016040523d82523d6000602084013e610e0f565b606091505b509095945050505050565b6001600160a01b038316610e405760405162461bcd60e51b81526004016105b39061119e565b6001600160a01b038216610e665760405162461bcd60e51b81526004016105b3906111e3565b6001600160a01b03831660009081526020819052604090205481811015610ede5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016105b3565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290610f15908490611112565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f6191815260200190565b60405180910390a3610b38565b600060208083528351808285015260005b81811015610f9b57858101830151858201604001528201610f7f565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610fd357600080fd5b919050565b60008060408385031215610feb57600080fd5b610ff483610fbc565b946020939093013593505050565b60008060006060848603121561101757600080fd5b61102084610fbc565b925061102e60208501610fbc565b9150604084013590509250925092565b60006020828403121561105057600080fd5b61105982610fbc565b9392505050565b8015158114610b3c57600080fd5b6000806040838503121561108157600080fd5b61108a83610fbc565b9150602083013561109a81611060565b809150509250929050565b600080604083850312156110b857600080fd5b6110c183610fbc565b91506110cf60208401610fbc565b90509250929050565b600181811c908216806110ec57607f821691505b60208210810361110c57634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561052357634e487b7160e01b600052601160045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561117a57600080fd5b5051919050565b60006020828403121561119357600080fd5b815161105981611060565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b60608201526080019056fea26469706673582212205e66f67ca5a6a7a1c3f6843da6c8c783f073efa6cd5083de5dc8fc216e91129464736f6c63430008130033

Deployed Bytecode Sourcemap

10437:2067:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10579:22;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5720:100;;;;;;;;;;;;;:::i;6634:169::-;;;;;;;;;;-1:-1:-1;6634:169:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;6634:169:0;1004:187:1;6041:108:0;;;;;;;;;;-1:-1:-1;6129:12:0;;6041:108;;;1342:25:1;;;1330:2;1315:18;6041:108:0;1196:177:1;6811:573:0;;;;;;;;;;-1:-1:-1;6811:573:0;;;;;:::i;:::-;;:::i;5940:93::-;;;;;;;;;;-1:-1:-1;5940:93:0;;6023:2;1853:36:1;;1841:2;1826:18;5940:93:0;1711:184:1;7392:215:0;;;;;;;;;;-1:-1:-1;7392:215:0;;;;;:::i;:::-;;:::i;11796:26::-;;;;;;;;;;-1:-1:-1;11796:26:0;;;;;;;;11663:125;;;;;;;;;;-1:-1:-1;11663:125:0;;;;;:::i;:::-;-1:-1:-1;;;;;11752:28:0;11728:4;11752:28;;;:19;:28;;;;;;;;;11663:125;6157:127;;;;;;;;;;-1:-1:-1;6157:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;6258:18:0;6231:7;6258:18;;;;;;;;;;;;6157:127;4907:148;;;;;;;;;;;;;:::i;:::-;;11831:146;;;;;;;;;;;;;:::i;4693:79::-;;;;;;;;;;-1:-1:-1;4758:6:0;;4693:79;;-1:-1:-1;;;;;4758:6:0;;;2237:51:1;;2225:2;2210:18;4693:79:0;2091:203:1;5828:104:0;;;;;;;;;;;;;:::i;7615:413::-;;;;;;;;;;-1:-1:-1;7615:413:0;;;;;:::i;:::-;;:::i;6292:175::-;;;;;;;;;;-1:-1:-1;6292:175:0;;;;;:::i;:::-;;:::i;11417:238::-;;;;;;;;;;-1:-1:-1;11417:238:0;;;;;:::i;:::-;;:::i;6475:151::-;;;;;;;;;;-1:-1:-1;6475:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;6591:18:0;;;6564:7;6591:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6475:151;5063:244;;;;;;;;;;-1:-1:-1;5063:244:0;;;;;:::i;:::-;;:::i;10944:465::-;;;;;;;;;;-1:-1:-1;10944:465:0;;;;;:::i;:::-;;:::i;10579:22::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5720:100::-;5774:13;5807:5;5800:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5720:100;:::o;6634:169::-;6717:4;6734:39;4096:10;6757:7;6766:6;6734:8;:39::i;:::-;-1:-1:-1;6791:4:0;6634:169;;;;;:::o;6811:573::-;-1:-1:-1;;;;;6995:19:0;;6951:4;6995:19;;;:11;:19;;;;;;;;4096:10;6995:33;;;;;;;;-1:-1:-1;;7043:37:0;;7039:265;;7125:6;7105:16;:26;;7097:79;;;;-1:-1:-1;;;7097:79:0;;3594:2:1;7097:79:0;;;3576:21:1;3633:2;3613:18;;;3606:30;3672:34;3652:18;;;3645:62;-1:-1:-1;;;3723:18:1;;;3716:38;3771:19;;7097:79:0;;;;;;;;;7220:57;7229:6;4096:10;7270:6;7251:16;:25;7220:8;:57::i;:::-;7316:36;7326:6;7334:9;7345:6;7316:9;:36::i;:::-;-1:-1:-1;7372:4:0;;6811:573;-1:-1:-1;;;;6811:573:0:o;7392:215::-;4096:10;7480:4;7529:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;7529:34:0;;;;;;;;;;7480:4;;7497:80;;7520:7;;7529:47;;7566:10;;7529:47;:::i;:::-;7497:8;:80::i;4907:148::-;4820:6;;-1:-1:-1;;;;;4820:6:0;4096:10;4820:22;4812:67;;;;-1:-1:-1;;;4812:67:0;;;;;;;:::i;:::-;4998:6:::1;::::0;4977:40:::1;::::0;5014:1:::1;::::0;-1:-1:-1;;;;;4998:6:0::1;::::0;4977:40:::1;::::0;5014:1;;4977:40:::1;5028:6;:19:::0;;-1:-1:-1;;;;;;5028:19:0::1;::::0;;4907:148::o;11831:146::-;4820:6;;-1:-1:-1;;;;;4820:6:0;4096:10;4820:22;4812:67;;;;-1:-1:-1;;;4812:67:0;;;;;;;:::i;:::-;11894:14:::1;::::0;::::1;;11893:15;11885:52;;;::::0;-1:-1:-1;;;11885:52:0;;4591:2:1;11885:52:0::1;::::0;::::1;4573:21:1::0;4630:2;4610:18;;;4603:30;4669:26;4649:18;;;4642:54;4713:18;;11885:52:0::1;4389:348:1::0;11885:52:0::1;11948:14;:21:::0;;-1:-1:-1;;11948:21:0::1;11965:4;11948:21;::::0;;11831:146::o;5828:104::-;5884:13;5917:7;5910:14;;;;;:::i;7615:413::-;4096:10;7708:4;7752:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;7752:34:0;;;;;;;;;;7805:35;;;;7797:85;;;;-1:-1:-1;;;7797:85:0;;4944:2:1;7797:85:0;;;4926:21:1;4983:2;4963:18;;;4956:30;5022:34;5002:18;;;4995:62;-1:-1:-1;;;5073:18:1;;;5066:35;5118:19;;7797:85:0;4742:401:1;7797:85:0;7918:67;4096:10;7941:7;7969:15;7950:16;:34;7918:8;:67::i;:::-;-1:-1:-1;8016:4:0;;7615:413;-1:-1:-1;;;7615:413:0:o;6292:175::-;6378:4;6395:42;4096:10;6419:9;6430:6;6395:9;:42::i;11417:238::-;4820:6;;-1:-1:-1;;;;;4820:6:0;4096:10;4820:22;4812:67;;;;-1:-1:-1;;;4812:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11511:28:0;::::1;;::::0;;;:19:::1;:28;::::0;;;;;:40;::::1;;:28;::::0;;::::1;:40;;::::0;11503:94:::1;;;::::0;-1:-1:-1;;;11503:94:0;;5350:2:1;11503:94:0::1;::::0;::::1;5332:21:1::0;5389:2;5369:18;;;5362:30;5428:34;5408:18;;;5401:62;-1:-1:-1;;;5479:18:1;;;5472:40;5529:19;;11503:94:0::1;5148:406:1::0;11503:94:0::1;-1:-1:-1::0;;;;;11608:28:0;;;::::1;;::::0;;;:19:::1;:28;::::0;;;;:39;;-1:-1:-1;;11608:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11417:238::o;5063:244::-;4820:6;;-1:-1:-1;;;;;4820:6:0;4096:10;4820:22;4812:67;;;;-1:-1:-1;;;4812:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5152:22:0;::::1;5144:73;;;::::0;-1:-1:-1;;;5144:73:0;;5761:2:1;5144:73:0::1;::::0;::::1;5743:21:1::0;5800:2;5780:18;;;5773:30;5839:34;5819:18;;;5812:62;-1:-1:-1;;;5890:18:1;;;5883:36;5936:19;;5144:73:0::1;5559:402:1::0;5144:73:0::1;5254:6;::::0;5233:38:::1;::::0;-1:-1:-1;;;;;5233:38:0;;::::1;::::0;5254:6:::1;::::0;5233:38:::1;::::0;5254:6:::1;::::0;5233:38:::1;5282:6;:17:::0;;-1:-1:-1;;;;;;5282:17:0::1;-1:-1:-1::0;;;;;5282:17:0;;;::::1;::::0;;;::::1;::::0;;5063:244::o;10944:465::-;4820:6;;-1:-1:-1;;;;;4820:6:0;4096:10;4820:22;4812:67;;;;-1:-1:-1;;;4812:67:0;;;;;;;:::i;:::-;11040:4:::1;-1:-1:-1::0;;;;;11023:22:0;::::1;::::0;11015:90:::1;;;::::0;-1:-1:-1;;;11015:90:0;;6168:2:1;11015:90:0::1;::::0;::::1;6150:21:1::0;6207:2;6187:18;;;6180:30;6246:34;6226:18;;;6219:62;6317:25;6297:18;;;6290:53;6360:19;;11015:90:0::1;5966:419:1::0;11015:90:0::1;-1:-1:-1::0;;;;;11120:21:0;::::1;11116:127;;11158:52;11166:10;11188:21;11158:29;:52::i;:::-;;10944:465:::0;:::o;11116:127::-:1;11315:35;::::0;-1:-1:-1;;;11315:35:0;;11344:4:::1;11315:35;::::0;::::1;2237:51:1::0;11280:5:0;;11253:17:::1;::::0;-1:-1:-1;;;;;11315:20:0;::::1;::::0;::::1;::::0;2210:18:1;;11315:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11361:40;::::0;-1:-1:-1;;;11361:40:0;;11381:10:::1;11361:40;::::0;::::1;6753:51:1::0;6820:18;;;6813:34;;;11297:53:0;;-1:-1:-1;;;;;;11361:19:0;::::1;::::0;::::1;::::0;6726:18:1;;11361:40:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11004:405;;4890:1;10944:465:::0;:::o;9783:380::-;-1:-1:-1;;;;;9919:19:0;;9911:68;;;;-1:-1:-1;;;9911:68:0;;7310:2:1;9911:68:0;;;7292:21:1;7349:2;7329:18;;;7322:30;7388:34;7368:18;;;7361:62;-1:-1:-1;;;7439:18:1;;;7432:34;7483:19;;9911:68:0;7108:400:1;9911:68:0;-1:-1:-1;;;;;9998:21:0;;9990:68;;;;-1:-1:-1;;;9990:68:0;;7715:2:1;9990:68:0;;;7697:21:1;7754:2;7734:18;;;7727:30;7793:34;7773:18;;;7766:62;-1:-1:-1;;;7844:18:1;;;7837:32;7886:19;;9990:68:0;7513:398:1;9990:68:0;-1:-1:-1;;;;;10071:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10123:32;;1342:25:1;;;10123:32:0;;1315:18:1;10123:32:0;;;;;;;9783:380;;;:::o;11985:516::-;-1:-1:-1;;;;;12082:18:0;;12074:68;;;;-1:-1:-1;;;12074:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12161:16:0;;12153:64;;;;-1:-1:-1;;;12153:64:0;;;;;;;:::i;:::-;12236:14;;;;;:43;;-1:-1:-1;;;;;;12254:25:0;;;;;;:19;:25;;;;;;;;12236:43;:70;;;-1:-1:-1;;;;;;12283:23:0;;;;;;:19;:23;;;;;;;;12236:70;12228:107;;;;-1:-1:-1;;;12228:107:0;;8928:2:1;12228:107:0;;;8910:21:1;8967:2;8947:18;;;8940:30;9006:26;8986:18;;;8979:54;9050:18;;12228:107:0;8726:348:1;12228:107:0;12359:6;12369:1;12359:11;12355:93;;12387:28;12403:4;12409:2;12413:1;12387:15;:28::i;:::-;11985:516;;;:::o;12355:93::-;12460:33;12476:4;12482:2;12486:6;12460:15;:33::i;3710:266::-;3789:4;3838:6;3813:21;:31;;3805:73;;;;-1:-1:-1;;;3805:73:0;;9281:2:1;3805:73:0;;;9263:21:1;9320:2;9300:18;;;9293:30;9359:31;9339:18;;;9332:59;9408:18;;3805:73:0;9079:353:1;3805:73:0;3892:12;3910:9;-1:-1:-1;;;;;3910:14:0;3932:6;3910:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3891:52:0;;3710:266;-1:-1:-1;;;;;3710:266:0:o;8036:733::-;-1:-1:-1;;;;;8176:20:0;;8168:70;;;;-1:-1:-1;;;8168:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8257:23:0;;8249:71;;;;-1:-1:-1;;;8249:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8417:17:0;;8393:21;8417:17;;;;;;;;;;;8453:23;;;;8445:74;;;;-1:-1:-1;;;8445:74:0;;9849:2:1;8445:74:0;;;9831:21:1;9888:2;9868:18;;;9861:30;9927:34;9907:18;;;9900:62;-1:-1:-1;;;9978:18:1;;;9971:36;10024:19;;8445:74:0;9647:402:1;8445:74:0;-1:-1:-1;;;;;8555:17:0;;;:9;:17;;;;;;;;;;;8575:22;;;8555:42;;8619:20;;;;;;;;:30;;8591:6;;8555:9;8619:30;;8591:6;;8619:30;:::i;:::-;;;;;;;;8684:9;-1:-1:-1;;;;;8667:35:0;8676:6;-1:-1:-1;;;;;8667:35:0;;8695:6;8667:35;;;;1342:25:1;;1330:2;1315:18;;1196:177;8667:35:0;;;;;;;;8715:46;11985:516;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:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;:::-;2041:39;1900:186;-1:-1:-1;;;1900:186:1:o;2299:118::-;2385:5;2378:13;2371:21;2364:5;2361:32;2351:60;;2407:1;2404;2397:12;2422:315;2487:6;2495;2548:2;2536:9;2527:7;2523:23;2519:32;2516:52;;;2564:1;2561;2554:12;2516:52;2587:29;2606:9;2587:29;:::i;:::-;2577:39;;2666:2;2655:9;2651:18;2638:32;2679:28;2701:5;2679:28;:::i;:::-;2726:5;2716:15;;;2422:315;;;;;:::o;2742:260::-;2810:6;2818;2871:2;2859:9;2850:7;2846:23;2842:32;2839:52;;;2887:1;2884;2877:12;2839:52;2910:29;2929:9;2910:29;:::i;:::-;2900:39;;2958:38;2992:2;2981:9;2977:18;2958:38;:::i;:::-;2948:48;;2742:260;;;;;:::o;3007:380::-;3086:1;3082:12;;;;3129;;;3150:61;;3204:4;3196:6;3192:17;3182:27;;3150:61;3257:2;3249:6;3246:14;3226:18;3223:38;3220:161;;3303:10;3298:3;3294:20;3291:1;3284:31;3338:4;3335:1;3328:15;3366:4;3363:1;3356:15;3220:161;;3007:380;;;:::o;3801:222::-;3866:9;;;3887:10;;;3884:133;;;3939:10;3934:3;3930:20;3927:1;3920:31;3974:4;3971:1;3964:15;4002:4;3999:1;3992:15;4028:356;4230:2;4212:21;;;4249:18;;;4242:30;4308:34;4303:2;4288:18;;4281:62;4375:2;4360:18;;4028:356::o;6390:184::-;6460:6;6513:2;6501:9;6492:7;6488:23;6484:32;6481:52;;;6529:1;6526;6519:12;6481:52;-1:-1:-1;6552:16:1;;6390:184;-1:-1:-1;6390:184:1:o;6858:245::-;6925:6;6978:2;6966:9;6957:7;6953:23;6949:32;6946:52;;;6994:1;6991;6984:12;6946:52;7026:9;7020:16;7045:28;7067:5;7045:28;:::i;7916:401::-;8118:2;8100:21;;;8157:2;8137:18;;;8130:30;8196:34;8191:2;8176:18;;8169:62;-1:-1:-1;;;8262:2:1;8247:18;;8240:35;8307:3;8292:19;;7916:401::o;8322:399::-;8524:2;8506:21;;;8563:2;8543:18;;;8536:30;8602:34;8597:2;8582:18;;8575:62;-1:-1:-1;;;8668:2:1;8653:18;;8646:33;8711:3;8696:19;;8322:399::o

Swarm Source

ipfs://5e66f67ca5a6a7a1c3f6843da6c8c783f073efa6cd5083de5dc8fc216e911294

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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.