ETH Price: $2,462.49 (-5.93%)

Contract

0xC0bB399cEE28B6901dD2DA3F2f59daf52C8e07F6
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer207519222024-09-14 22:46:3517 days ago1726353995IN
0xC0bB399c...52C8e07F6
0 ETH0.000092561.59403488
Transfer207441872024-09-13 20:49:5918 days ago1726260599IN
0xC0bB399c...52C8e07F6
0 ETH0.000506068.71452318
Approve207433542024-09-13 18:02:4718 days ago1726250567IN
0xC0bB399c...52C8e07F6
0 ETH0.0005574111.90430343
Approve207433102024-09-13 17:53:5918 days ago1726250039IN
0xC0bB399c...52C8e07F6
0 ETH0.0005215411.15238824
Approve207228102024-09-10 21:11:1121 days ago1726002671IN
0xC0bB399c...52C8e07F6
0 ETH0.000279175.93164045
Approve206300052024-08-28 22:15:1134 days ago1724883311IN
0xC0bB399c...52C8e07F6
0 ETH0.00009742.07221375
Transfer206299662024-08-28 22:07:1134 days ago1724882831IN
0xC0bB399c...52C8e07F6
0 ETH0.00006571.60329199
Approve203922222024-07-26 17:29:5967 days ago1722014999IN
0xC0bB399c...52C8e07F6
0 ETH0.000118722.52577083
Transfer203921582024-07-26 17:17:1167 days ago1722014231IN
0xC0bB399c...52C8e07F6
0 ETH0.000172062.96478327
Approve202401972024-07-05 12:06:4788 days ago1720181207IN
0xC0bB399c...52C8e07F6
0 ETH0.000439269.38090204
Approve202040822024-06-30 11:03:4793 days ago1719745427IN
0xC0bB399c...52C8e07F6
0 ETH0.00012282.61261299
Approve202040692024-06-30 11:01:1193 days ago1719745271IN
0xC0bB399c...52C8e07F6
0 ETH0.000130772.77853212
Approve201532422024-06-23 8:36:47100 days ago1719131807IN
0xC0bB399c...52C8e07F6
0 ETH0.000095043.50662804
Approve201532392024-06-23 8:36:11100 days ago1719131771IN
0xC0bB399c...52C8e07F6
0 ETH0.000142413.02980114
Approve201040502024-06-16 11:27:23107 days ago1718537243IN
0xC0bB399c...52C8e07F6
0 ETH0.000152183.25509898
Approve201040252024-06-16 11:22:23107 days ago1718536943IN
0xC0bB399c...52C8e07F6
0 ETH0.000115834.30411976
Approve201040232024-06-16 11:21:59107 days ago1718536919IN
0xC0bB399c...52C8e07F6
0 ETH0.000206314.40723203
Transfer201040032024-06-16 11:17:59107 days ago1718536679IN
0xC0bB399c...52C8e07F6
0 ETH0.000380176.5467351
Approve201039742024-06-16 11:12:11107 days ago1718536331IN
0xC0bB399c...52C8e07F6
0 ETH0.000197464.19556193
Approve200950642024-06-15 5:18:11108 days ago1718428691IN
0xC0bB399c...52C8e07F6
0 ETH0.000287646.11161125
Approve200950552024-06-15 5:16:23108 days ago1718428583IN
0xC0bB399c...52C8e07F6
0 ETH0.000339357.21038073
Approve200950252024-06-15 5:10:23108 days ago1718428223IN
0xC0bB399c...52C8e07F6
0 ETH0.00031676.73775656
Approve200680852024-06-11 10:47:47112 days ago1718102867IN
0xC0bB399c...52C8e07F6
0 ETH0.0007142915.1767414
Transfer200680112024-06-11 10:32:47112 days ago1718101967IN
0xC0bB399c...52C8e07F6
0 ETH0.0008488114.61387647
Transfer200451012024-06-08 5:44:11115 days ago1717825451IN
0xC0bB399c...52C8e07F6
0 ETH0.000313344.98495653
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:
CobraCoin

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2023-05-09
*/

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

/**
 * @title CobraCoin
 * @dev A simple ERC20 token with a tax mechanism on transfers.
 * Use $COBRA to support $MONG community creators
 * COBRA/MONG Pair
 * From Congress a culture a vibe a stick it to the man moniker.
 * Mongoose Coin --> Cobra Coin --> Hampster Coin --> Doge Coin --> Ethereum --> Bitcoin
 */
contract CobraCoin {
    string public name = "Cobra Coin";
    string public symbol = "COBRA";
    uint256 public constant totalSupply = 69_000_000_000 * 10 ** 18;
    uint8 public constant decimals = 18;
    address public taxWallet = 0xD81895407B375389dC5e4E5d0CFEC65C1bd9dAb3;
    uint256 public constant TAX_PERCENT_BASIS = 169;
    mapping(address => uint256) private balances;
    mapping(address => mapping(address => uint256)) private allowed;
    address private _owner;

    error TransferToZeroAddress(address _address);
    error InsufficientBalance(uint256 _balance, uint256 _value);
    error InsufficientAllowance(uint256 _allowance, uint256 _value);

    error CallerIsNotTheOwner(address _caller);

    /**
     * @dev Constructor that sets the initial balance and tax wallet address.
     */
    constructor() {
        _transferOwnership(msg.sender);
        balances[msg.sender] = totalSupply;
        emit Transfer(address(0), msg.sender, totalSupply);
    }

    /**
     * @dev Returns the balance of the given address.
     * @param _holder The address to query the balance of.
     * @return balance The balance of the specified address.
     */
    function balanceOf(address _holder) public view returns (uint256 balance) {
        return balances[_holder];
    }

    /**
     * @dev Transfers tokens to a specified address after applying the tax, if applicable.
     * @param _to The address to transfer to.
     * @param _value The amount of tokens to be transferred.
     * @return success A boolean that indicates if the operation was successful.
     */
    function transfer(
        address _to,
        uint256 _value
    ) public returns (bool success) {
        if (_to == address(0)) {
            revert TransferToZeroAddress(_to);
        }
        if (_value > balances[msg.sender]) {
            revert InsufficientBalance(balances[msg.sender], _value);
        }
        (uint256 taxAmount, uint256 taxedAmount) = getTaxedAmount(
            _value,
            msg.sender == taxWallet
        );
        balances[msg.sender] -= _value;
        balances[taxWallet] += taxAmount; // tax wallet gets the tax amount
        balances[_to] += taxedAmount;
        emit Transfer(msg.sender, _to, taxedAmount);
        emit Transfer(msg.sender, taxWallet, taxAmount);
        return true;
    }

    /**
     * @dev Transfers tokens from one address to another after applying the tax, if applicable.
     * @param _from The address which you want to send tokens from.
     * @param _to The address which you want to transfer to.
     * @param _value The amount of tokens to be transferred.
     * @return success A boolean that indicates if the operation was successful.
     */
    function transferFrom(
        address _from,
        address _to,
        uint256 _value
    ) public returns (bool success) {
        if (_to == address(0)) {
            revert TransferToZeroAddress(_to);
        }
        if (_value > balances[_from]) {
            revert InsufficientBalance(balances[_from], _value);
        }
        if (_value > allowed[_from][msg.sender]) {
            revert InsufficientAllowance(allowed[_from][msg.sender], _value);
        }
        (uint256 taxAmount, uint256 taxedAmount) = getTaxedAmount(
            _value,
            _from == taxWallet
        );
        balances[_from] -= _value;
        balances[taxWallet] += taxAmount; // tax wallet gets the tax amount
        allowed[_from][msg.sender] -= _value;
        balances[_to] += taxedAmount;
        emit Transfer(_from, _to, taxedAmount);
        emit Transfer(_from, taxWallet, taxAmount);
        return true;
    }

    /**
     * @dev Approves the passed address to spend the specified amount of tokens on behalf of msg.sender.
     * @param _spender The address which will spend the funds.
     * @param _value The amount of tokens to be spent.
     * @return success A boolean that indicates if the operation was successful.
     */
    function approve(
        address _spender,
        uint256 _value
    ) public returns (bool success) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    /**
     * @dev Returns the amount of tokens allowed by the owner (_holder) for a spender (_spender) to spend.
     * @param _holder The address which owns the tokens.
     * @param _spender The address which will spend the tokens.
     * @return remaining The amount of tokens still available for the spender.
     */
    function allowance(
        address _holder,
        address _spender
    ) public view returns (uint256 remaining) {
        return allowed[_holder][_spender];
    }

    /**
     * @dev Calculates the tax amount and the taxed amount based on the given value and tax exemption status.
     * @param _value The original amount to be taxed.
     * @param _isTaxWallet Indicates if the tax wallet is exempt from taxation.
     * @return taxAmount The calculated tax amount.
     * @return taxedAmount The remaining amount after taxation.
     */
    function getTaxedAmount(
        uint256 _value,
        bool _isTaxWallet
    ) internal pure returns (uint256 taxAmount, uint256 taxedAmount) {
        taxAmount = _isTaxWallet ? 0 : (_value * TAX_PERCENT_BASIS) / 10000;
        taxedAmount = _value - taxAmount;
    }

    /**
     * @dev Sets the tax wallet address. Can only be called by the contract owner.
     * @param _taxWallet The address to be set as the tax wallet.
     */
    function setTaxWallet(address _taxWallet) public onlyOwner {
        taxWallet = _taxWallet;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        if (owner() != msg.sender) {
            revert CallerIsNotTheOwner(msg.sender);
        }
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        if (newOwner == address(0)) {
            revert TransferToZeroAddress(newOwner);
        }
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }

    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(
        address indexed _owner,
        address indexed _spender,
        uint256 _value
    );
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"}],"name":"CallerIsNotTheOwner","type":"error"},{"inputs":[{"internalType":"uint256","name":"_allowance","type":"uint256"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"uint256","name":"_balance","type":"uint256"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"TransferToZeroAddress","type":"error"},{"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":[],"name":"TAX_PERCENT_BASIS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_holder","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_holder","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"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":[{"internalType":"address","name":"_taxWallet","type":"address"}],"name":"setTaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526040518060400160405280600a81526020017f436f62726120436f696e00000000000000000000000000000000000000000000815250600090816200004a919062000510565b506040518060400160405280600581526020017f434f4252410000000000000000000000000000000000000000000000000000008152506001908162000091919062000510565b5073d81895407b375389dc5e4e5d0cfec65c1bd9dab3600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620000f457600080fd5b506200010633620001d060201b60201c565b6bdef376571332906a88000000600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6bdef376571332906a88000000604051620001c2919062000608565b60405180910390a362000625565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200031857607f821691505b6020821081036200032e576200032d620002d0565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620003987fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000359565b620003a4868362000359565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003f1620003eb620003e584620003bc565b620003c6565b620003bc565b9050919050565b6000819050919050565b6200040d83620003d0565b620004256200041c82620003f8565b84845462000366565b825550505050565b600090565b6200043c6200042d565b6200044981848462000402565b505050565b5b8181101562000471576200046560008262000432565b6001810190506200044f565b5050565b601f821115620004c0576200048a8162000334565b620004958462000349565b81016020851015620004a5578190505b620004bd620004b48562000349565b8301826200044e565b50505b505050565b600082821c905092915050565b6000620004e560001984600802620004c5565b1980831691505092915050565b6000620005008383620004d2565b9150826002028217905092915050565b6200051b8262000296565b67ffffffffffffffff811115620005375762000536620002a1565b5b620005438254620002ff565b6200055082828562000475565b600060209050601f83116001811462000588576000841562000573578287015190505b6200057f8582620004f2565b865550620005ef565b601f198416620005988662000334565b60005b82811015620005c2578489015182556001820191506020850194506020810190506200059b565b86831015620005e25784890151620005de601f891682620004d2565b8355505b6001600288020188555050505b505050505050565b6200060281620003bc565b82525050565b60006020820190506200061f6000830184620005f7565b92915050565b6116ea80620006356000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb14610266578063dd62ed3e14610296578063ea414b28146102c6578063f2fde38b146102e2576100f5565b8063715018a61461020257806372685eab1461020c5780638da5cb5b1461022a57806395d89b4114610248576100f5565b806323b872dd116100d357806323b872dd146101665780632dc0562d14610196578063313ce567146101b457806370a08231146101d2576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b6101026102fe565b60405161010f9190611276565b60405180910390f35b610132600480360381019061012d9190611331565b61038c565b60405161013f919061138c565b60405180910390f35b61015061047e565b60405161015d91906113b6565b60405180910390f35b610180600480360381019061017b91906113d1565b61048e565b60405161018d919061138c565b60405180910390f35b61019e610a15565b6040516101ab9190611433565b60405180910390f35b6101bc610a3b565b6040516101c9919061146a565b60405180910390f35b6101ec60048036038101906101e79190611485565b610a40565b6040516101f991906113b6565b60405180910390f35b61020a610a89565b005b610214610a9d565b60405161022191906113b6565b60405180910390f35b610232610aa2565b60405161023f9190611433565b60405180910390f35b610250610acc565b60405161025d9190611276565b60405180910390f35b610280600480360381019061027b9190611331565b610b5a565b60405161028d919061138c565b60405180910390f35b6102b060048036038101906102ab91906114b2565b610f0e565b6040516102bd91906113b6565b60405180910390f35b6102e060048036038101906102db9190611485565b610f95565b005b6102fc60048036038101906102f79190611485565b610fe1565b005b6000805461030b90611521565b80601f016020809104026020016040519081016040528092919081815260200182805461033790611521565b80156103845780601f1061035957610100808354040283529160200191610384565b820191906000526020600020905b81548152906001019060200180831161036757829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161046c91906113b6565b60405180910390a36001905092915050565b6bdef376571332906a8800000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361050057826040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016104f79190611433565b60405180910390fd5b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156105c557600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf4791810000000000000000000000000000000000000000000000000000000081526004016105bc929190611552565b60405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561070457600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517f2a1b2dd80000000000000000000000000000000000000000000000000000000081526004016106fb929190611552565b60405180910390fd5b60008061076184600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546107b491906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461082c91906115de565b9250508190555083600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108bf91906115aa565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461091591906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161097991906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a0091906113b6565b60405180910390a36001925050509392505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601281565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a916110a7565b610a9b6000611120565b565b60a981565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60018054610ad990611521565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0590611521565b8015610b525780601f10610b2757610100808354040283529160200191610b52565b820191906000526020600020905b815481529060010190602001808311610b3557829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bcc57826040517f01cc0e81000000000000000000000000000000000000000000000000000000008152600401610bc39190611433565b60405180910390fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610c9157600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf479181000000000000000000000000000000000000000000000000000000008152600401610c88929190611552565b60405180910390fd5b600080610cee84600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d4191906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db991906115de565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e0f91906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e7391906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610efa91906113b6565b60405180910390a360019250505092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f9d6110a7565b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610fe96110a7565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361105a57806040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016110519190611433565b60405180910390fd5b61106381611120565b50565b6000808261108d5761271060a98561107e9190611612565b6110889190611683565b611090565b60005b9150818461109e91906115aa565b90509250929050565b3373ffffffffffffffffffffffffffffffffffffffff166110c6610aa2565b73ffffffffffffffffffffffffffffffffffffffff161461111e57336040517fa815108e0000000000000000000000000000000000000000000000000000000081526004016111159190611433565b60405180910390fd5b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611220578082015181840152602081019050611205565b60008484015250505050565b6000601f19601f8301169050919050565b6000611248826111e6565b61125281856111f1565b9350611262818560208601611202565b61126b8161122c565b840191505092915050565b60006020820190508181036000830152611290818461123d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006112c88261129d565b9050919050565b6112d8816112bd565b81146112e357600080fd5b50565b6000813590506112f5816112cf565b92915050565b6000819050919050565b61130e816112fb565b811461131957600080fd5b50565b60008135905061132b81611305565b92915050565b6000806040838503121561134857611347611298565b5b6000611356858286016112e6565b92505060206113678582860161131c565b9150509250929050565b60008115159050919050565b61138681611371565b82525050565b60006020820190506113a1600083018461137d565b92915050565b6113b0816112fb565b82525050565b60006020820190506113cb60008301846113a7565b92915050565b6000806000606084860312156113ea576113e9611298565b5b60006113f8868287016112e6565b9350506020611409868287016112e6565b925050604061141a8682870161131c565b9150509250925092565b61142d816112bd565b82525050565b60006020820190506114486000830184611424565b92915050565b600060ff82169050919050565b6114648161144e565b82525050565b600060208201905061147f600083018461145b565b92915050565b60006020828403121561149b5761149a611298565b5b60006114a9848285016112e6565b91505092915050565b600080604083850312156114c9576114c8611298565b5b60006114d7858286016112e6565b92505060206114e8858286016112e6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061153957607f821691505b60208210810361154c5761154b6114f2565b5b50919050565b600060408201905061156760008301856113a7565b61157460208301846113a7565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006115b5826112fb565b91506115c0836112fb565b92508282039050818111156115d8576115d761157b565b5b92915050565b60006115e9826112fb565b91506115f4836112fb565b925082820190508082111561160c5761160b61157b565b5b92915050565b600061161d826112fb565b9150611628836112fb565b9250828202611636816112fb565b9150828204841483151761164d5761164c61157b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061168e826112fb565b9150611699836112fb565b9250826116a9576116a8611654565b5b82820490509291505056fea2646970667358221220b505bfb76a01a6da12b7f312b4ae7fcab70fc0d60af26be25b4d1688a3033b3e64736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb14610266578063dd62ed3e14610296578063ea414b28146102c6578063f2fde38b146102e2576100f5565b8063715018a61461020257806372685eab1461020c5780638da5cb5b1461022a57806395d89b4114610248576100f5565b806323b872dd116100d357806323b872dd146101665780632dc0562d14610196578063313ce567146101b457806370a08231146101d2576100f5565b806306fdde03146100fa578063095ea7b31461011857806318160ddd14610148575b600080fd5b6101026102fe565b60405161010f9190611276565b60405180910390f35b610132600480360381019061012d9190611331565b61038c565b60405161013f919061138c565b60405180910390f35b61015061047e565b60405161015d91906113b6565b60405180910390f35b610180600480360381019061017b91906113d1565b61048e565b60405161018d919061138c565b60405180910390f35b61019e610a15565b6040516101ab9190611433565b60405180910390f35b6101bc610a3b565b6040516101c9919061146a565b60405180910390f35b6101ec60048036038101906101e79190611485565b610a40565b6040516101f991906113b6565b60405180910390f35b61020a610a89565b005b610214610a9d565b60405161022191906113b6565b60405180910390f35b610232610aa2565b60405161023f9190611433565b60405180910390f35b610250610acc565b60405161025d9190611276565b60405180910390f35b610280600480360381019061027b9190611331565b610b5a565b60405161028d919061138c565b60405180910390f35b6102b060048036038101906102ab91906114b2565b610f0e565b6040516102bd91906113b6565b60405180910390f35b6102e060048036038101906102db9190611485565b610f95565b005b6102fc60048036038101906102f79190611485565b610fe1565b005b6000805461030b90611521565b80601f016020809104026020016040519081016040528092919081815260200182805461033790611521565b80156103845780601f1061035957610100808354040283529160200191610384565b820191906000526020600020905b81548152906001019060200180831161036757829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161046c91906113b6565b60405180910390a36001905092915050565b6bdef376571332906a8800000081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361050057826040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016104f79190611433565b60405180910390fd5b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156105c557600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf4791810000000000000000000000000000000000000000000000000000000081526004016105bc929190611552565b60405180910390fd5b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561070457600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517f2a1b2dd80000000000000000000000000000000000000000000000000000000081526004016106fb929190611552565b60405180910390fd5b60008061076184600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546107b491906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461082c91906115de565b9250508190555083600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546108bf91906115aa565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461091591906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161097991906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a0091906113b6565b60405180910390a36001925050509392505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601281565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a916110a7565b610a9b6000611120565b565b60a981565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60018054610ad990611521565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0590611521565b8015610b525780601f10610b2757610100808354040283529160200191610b52565b820191906000526020600020905b815481529060010190602001808311610b3557829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bcc57826040517f01cc0e81000000000000000000000000000000000000000000000000000000008152600401610bc39190611433565b60405180910390fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115610c9157600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054826040517fcf479181000000000000000000000000000000000000000000000000000000008152600401610c88929190611552565b60405180910390fd5b600080610cee84600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611066565b9150915083600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d4191906115aa565b925050819055508160036000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db991906115de565b9250508190555080600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e0f91906115de565b925050819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e7391906113b6565b60405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610efa91906113b6565b60405180910390a360019250505092915050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f9d6110a7565b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610fe96110a7565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361105a57806040517f01cc0e810000000000000000000000000000000000000000000000000000000081526004016110519190611433565b60405180910390fd5b61106381611120565b50565b6000808261108d5761271060a98561107e9190611612565b6110889190611683565b611090565b60005b9150818461109e91906115aa565b90509250929050565b3373ffffffffffffffffffffffffffffffffffffffff166110c6610aa2565b73ffffffffffffffffffffffffffffffffffffffff161461111e57336040517fa815108e0000000000000000000000000000000000000000000000000000000081526004016111159190611433565b60405180910390fd5b565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611220578082015181840152602081019050611205565b60008484015250505050565b6000601f19601f8301169050919050565b6000611248826111e6565b61125281856111f1565b9350611262818560208601611202565b61126b8161122c565b840191505092915050565b60006020820190508181036000830152611290818461123d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006112c88261129d565b9050919050565b6112d8816112bd565b81146112e357600080fd5b50565b6000813590506112f5816112cf565b92915050565b6000819050919050565b61130e816112fb565b811461131957600080fd5b50565b60008135905061132b81611305565b92915050565b6000806040838503121561134857611347611298565b5b6000611356858286016112e6565b92505060206113678582860161131c565b9150509250929050565b60008115159050919050565b61138681611371565b82525050565b60006020820190506113a1600083018461137d565b92915050565b6113b0816112fb565b82525050565b60006020820190506113cb60008301846113a7565b92915050565b6000806000606084860312156113ea576113e9611298565b5b60006113f8868287016112e6565b9350506020611409868287016112e6565b925050604061141a8682870161131c565b9150509250925092565b61142d816112bd565b82525050565b60006020820190506114486000830184611424565b92915050565b600060ff82169050919050565b6114648161144e565b82525050565b600060208201905061147f600083018461145b565b92915050565b60006020828403121561149b5761149a611298565b5b60006114a9848285016112e6565b91505092915050565b600080604083850312156114c9576114c8611298565b5b60006114d7858286016112e6565b92505060206114e8858286016112e6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061153957607f821691505b60208210810361154c5761154b6114f2565b5b50919050565b600060408201905061156760008301856113a7565b61157460208301846113a7565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006115b5826112fb565b91506115c0836112fb565b92508282039050818111156115d8576115d761157b565b5b92915050565b60006115e9826112fb565b91506115f4836112fb565b925082820190508082111561160c5761160b61157b565b5b92915050565b600061161d826112fb565b9150611628836112fb565b9250828202611636816112fb565b9150828204841483151761164d5761164c61157b565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061168e826112fb565b9150611699836112fb565b9250826116a9576116a8611654565b5b82820490509291505056fea2646970667358221220b505bfb76a01a6da12b7f312b4ae7fcab70fc0d60af26be25b4d1688a3033b3e64736f6c63430008120033

Deployed Bytecode Sourcemap

383:7824:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;409:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4455:239;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;486:63;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3174:947;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;598:69;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;556:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1590:117;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7056:103;;;:::i;:::-;;674:47;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6385:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;449:30;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2016:760;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5031:171;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6046:100;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7314:220;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;409:33;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4455:239::-;4547:12;4604:6;4572:7;:19;4580:10;4572:19;;;;;;;;;;;;;;;:29;4592:8;4572:29;;;;;;;;;;;;;;;:38;;;;4647:8;4626:38;;4635:10;4626:38;;;4657:6;4626:38;;;;;;:::i;:::-;;;;;;;;4682:4;4675:11;;4455:239;;;;:::o;486:63::-;524:25;486:63;:::o;3174:947::-;3290:12;3334:1;3319:17;;:3;:17;;;3315:83;;3382:3;3360:26;;;;;;;;;;;:::i;:::-;;;;;;;;3315:83;3421:8;:15;3430:5;3421:15;;;;;;;;;;;;;;;;3412:6;:24;3408:108;;;3480:8;:15;3489:5;3480:15;;;;;;;;;;;;;;;;3497:6;3460:44;;;;;;;;;;;;:::i;:::-;;;;;;;;3408:108;3539:7;:14;3547:5;3539:14;;;;;;;;;;;;;;;:26;3554:10;3539:26;;;;;;;;;;;;;;;;3530:6;:35;3526:132;;;3611:7;:14;3619:5;3611:14;;;;;;;;;;;;;;;:26;3626:10;3611:26;;;;;;;;;;;;;;;;3639:6;3589:57;;;;;;;;;;;;:::i;:::-;;;;;;;;3526:132;3669:17;3688:19;3711:79;3740:6;3770:9;;;;;;;;;;;3761:18;;:5;:18;;;3711:14;:79::i;:::-;3668:122;;;;3820:6;3801:8;:15;3810:5;3801:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;3860:9;3837:8;:19;3846:9;;;;;;;;;;;3837:19;;;;;;;;;;;;;;;;:32;;;;;;;:::i;:::-;;;;;;;;3944:6;3914:7;:14;3922:5;3914:14;;;;;;;;;;;;;;;:26;3929:10;3914:26;;;;;;;;;;;;;;;;:36;;;;;;;:::i;:::-;;;;;;;;3978:11;3961:8;:13;3970:3;3961:13;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;4021:3;4005:33;;4014:5;4005:33;;;4026:11;4005:33;;;;;;:::i;:::-;;;;;;;;4070:9;;;;;;;;;;;4054:37;;4063:5;4054:37;;;4081:9;4054:37;;;;;;:::i;:::-;;;;;;;;4109:4;4102:11;;;;3174:947;;;;;:::o;598:69::-;;;;;;;;;;;;;:::o;556:35::-;589:2;556:35;:::o;1590:117::-;1647:15;1682:8;:17;1691:7;1682:17;;;;;;;;;;;;;;;;1675:24;;1590:117;;;:::o;7056:103::-;6271:13;:11;:13::i;:::-;7121:30:::1;7148:1;7121:18;:30::i;:::-;7056:103::o:0;674:47::-;718:3;674:47;:::o;6385:87::-;6431:7;6458:6;;;;;;;;;;;6451:13;;6385:87;:::o;449:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2016:760::-;2104:12;2148:1;2133:17;;:3;:17;;;2129:83;;2196:3;2174:26;;;;;;;;;;;:::i;:::-;;;;;;;;2129:83;2235:8;:20;2244:10;2235:20;;;;;;;;;;;;;;;;2226:6;:29;2222:118;;;2299:8;:20;2308:10;2299:20;;;;;;;;;;;;;;;;2321:6;2279:49;;;;;;;;;;;;:::i;:::-;;;;;;;;2222:118;2351:17;2370:19;2393:84;2422:6;2457:9;;;;;;;;;;;2443:23;;:10;:23;;;2393:14;:84::i;:::-;2350:127;;;;2512:6;2488:8;:20;2497:10;2488:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;2552:9;2529:8;:19;2538:9;;;;;;;;;;;2529:19;;;;;;;;;;;;;;;;:32;;;;;;;:::i;:::-;;;;;;;;2623:11;2606:8;:13;2615:3;2606:13;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;2671:3;2650:38;;2659:10;2650:38;;;2676:11;2650:38;;;;;;:::i;:::-;;;;;;;;2725:9;;;;;;;;;;;2704:42;;2713:10;2704:42;;;2736:9;2704:42;;;;;;:::i;:::-;;;;;;;;2764:4;2757:11;;;;2016:760;;;;:::o;5031:171::-;5131:17;5168:7;:16;5176:7;5168:16;;;;;;;;;;;;;;;:26;5185:8;5168:26;;;;;;;;;;;;;;;;5161:33;;5031:171;;;;:::o;6046:100::-;6271:13;:11;:13::i;:::-;6128:10:::1;6116:9;;:22;;;;;;;;;;;;;;;;;;6046:100:::0;:::o;7314:220::-;6271:13;:11;:13::i;:::-;7419:1:::1;7399:22;;:8;:22;;::::0;7395:93:::1;;7467:8;7445:31;;;;;;;;;;;:::i;:::-;;;;;;;;7395:93;7498:28;7517:8;7498:18;:28::i;:::-;7314:220:::0;:::o;5593:276::-;5700:17;5719:19;5763:12;:55;;5813:5;718:3;5783:6;:26;;;;:::i;:::-;5782:36;;;;:::i;:::-;5763:55;;;5778:1;5763:55;5751:67;;5852:9;5843:6;:18;;;;:::i;:::-;5829:32;;5593:276;;;;;:::o;6550:155::-;6621:10;6610:21;;:7;:5;:7::i;:::-;:21;;;6606:92;;6675:10;6655:31;;;;;;;;;;;:::i;:::-;;;;;;;;6606:92;6550:155::o;7694:191::-;7768:16;7787:6;;;;;;;;;;;7768:25;;7813:8;7804:6;;:17;;;;;;;;;;;;;;;;;;7868:8;7837:40;;7858:8;7837:40;;;;;;;;;;;;7757:128;7694:191;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:118::-;4510:24;4528:5;4510:24;:::i;:::-;4505:3;4498:37;4423:118;;:::o;4547:222::-;4640:4;4678:2;4667:9;4663:18;4655:26;;4691:71;4759:1;4748:9;4744:17;4735:6;4691:71;:::i;:::-;4547:222;;;;:::o;4775:86::-;4810:7;4850:4;4843:5;4839:16;4828:27;;4775:86;;;:::o;4867:112::-;4950:22;4966:5;4950:22;:::i;:::-;4945:3;4938:35;4867:112;;:::o;4985:214::-;5074:4;5112:2;5101:9;5097:18;5089:26;;5125:67;5189:1;5178:9;5174:17;5165:6;5125:67;:::i;:::-;4985:214;;;;:::o;5205:329::-;5264:6;5313:2;5301:9;5292:7;5288:23;5284:32;5281:119;;;5319:79;;:::i;:::-;5281:119;5439:1;5464:53;5509:7;5500:6;5489:9;5485:22;5464:53;:::i;:::-;5454:63;;5410:117;5205:329;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:180::-;6068:77;6065:1;6058:88;6165:4;6162:1;6155:15;6189:4;6186:1;6179:15;6206:320;6250:6;6287:1;6281:4;6277:12;6267:22;;6334:1;6328:4;6324:12;6355:18;6345:81;;6411:4;6403:6;6399:17;6389:27;;6345:81;6473:2;6465:6;6462:14;6442:18;6439:38;6436:84;;6492:18;;:::i;:::-;6436:84;6257:269;6206:320;;;:::o;6532:332::-;6653:4;6691:2;6680:9;6676:18;6668:26;;6704:71;6772:1;6761:9;6757:17;6748:6;6704:71;:::i;:::-;6785:72;6853:2;6842:9;6838:18;6829:6;6785:72;:::i;:::-;6532:332;;;;;:::o;6870:180::-;6918:77;6915:1;6908:88;7015:4;7012:1;7005:15;7039:4;7036:1;7029:15;7056:194;7096:4;7116:20;7134:1;7116:20;:::i;:::-;7111:25;;7150:20;7168:1;7150:20;:::i;:::-;7145:25;;7194:1;7191;7187:9;7179:17;;7218:1;7212:4;7209:11;7206:37;;;7223:18;;:::i;:::-;7206:37;7056:194;;;;:::o;7256:191::-;7296:3;7315:20;7333:1;7315:20;:::i;:::-;7310:25;;7349:20;7367:1;7349:20;:::i;:::-;7344:25;;7392:1;7389;7385:9;7378:16;;7413:3;7410:1;7407:10;7404:36;;;7420:18;;:::i;:::-;7404:36;7256:191;;;;:::o;7453:410::-;7493:7;7516:20;7534:1;7516:20;:::i;:::-;7511:25;;7550:20;7568:1;7550:20;:::i;:::-;7545:25;;7605:1;7602;7598:9;7627:30;7645:11;7627:30;:::i;:::-;7616:41;;7806:1;7797:7;7793:15;7790:1;7787:22;7767:1;7760:9;7740:83;7717:139;;7836:18;;:::i;:::-;7717:139;7501:362;7453:410;;;;:::o;7869:180::-;7917:77;7914:1;7907:88;8014:4;8011:1;8004:15;8038:4;8035:1;8028:15;8055:185;8095:1;8112:20;8130:1;8112:20;:::i;:::-;8107:25;;8146:20;8164:1;8146:20;:::i;:::-;8141:25;;8185:1;8175:35;;8190:18;;:::i;:::-;8175:35;8232:1;8229;8225:9;8220:14;;8055:185;;;;:::o

Swarm Source

ipfs://b505bfb76a01a6da12b7f312b4ae7fcab70fc0d60af26be25b4d1688a3033b3e

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.