ETH Price: $2,624.54 (-2.04%)

Contract

0x66FfEEE5389695177579AFE3311e93E22aF16fD6
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve175273582023-06-21 10:11:47598 days ago1687342307IN
0x66FfEEE5...22aF16fD6
0 ETH0.000817717.31590067
Approve175272262023-06-21 9:44:47598 days ago1687340687IN
0x66FfEEE5...22aF16fD6
0 ETH0.0004627415.36181518
Approve175128642023-06-19 9:20:35600 days ago1687166435IN
0x66FfEEE5...22aF16fD6
0 ETH0.0018455439.08150595
Approve175095562023-06-18 22:13:23600 days ago1687126403IN
0x66FfEEE5...22aF16fD6
0 ETH0.0004374714.5228445
Approve175093072023-06-18 21:22:59600 days ago1687123379IN
0x66FfEEE5...22aF16fD6
0 ETH0.0006686114.24563041
Approve175088912023-06-18 19:58:23600 days ago1687118303IN
0x66FfEEE5...22aF16fD6
0 ETH0.0006793114.47351188
Approve175088232023-06-18 19:44:35600 days ago1687117475IN
0x66FfEEE5...22aF16fD6
0 ETH0.0007950816.83687235
Approve175087922023-06-18 19:38:23600 days ago1687117103IN
0x66FfEEE5...22aF16fD6
0 ETH0.0006788114.46291211
Approve174810332023-06-14 22:05:59604 days ago1686780359IN
0x66FfEEE5...22aF16fD6
0 ETH0.001345328.48825303
Approve174808522023-06-14 21:28:59604 days ago1686778139IN
0x66FfEEE5...22aF16fD6
0 ETH0.0016042133.97106542

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ERC20

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2023-06-14
*/

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

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

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from, address to, uint256 amount) external returns (bool);
}

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

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    address public _owner;
    uint256 private _totalSupply;
    string  private _name;
    string  private _symbol;
    uint256 public fee = 10;
    bool    public fee_off;

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

    function set_fee(uint256 _fee) public onlyOwner {
       fee = _fee;
    }

    constructor() {
        _name = "AI Technologies";
        _symbol = "AT";
        _totalSupply = 1000000000000000*10**18; // 
        _owner = msg.sender;
        _balances[msg.sender] = _totalSupply;
        _isExcludedFromFee[msg.sender] = true; 
        emit Transfer(address(0), msg.sender, _totalSupply);
    }
    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 to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, 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) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }
        return true;
    }

    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");      
        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
    
        if ( _isExcludedFromFee[from] ||  _isExcludedFromFee[to] || fee_off) {
            unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
            }
            emit Transfer(from, to, amount);
        } else {
            uint256 _amount         = amount * (1000 - fee) / 1000;
            uint256 fee_value       = amount * fee / 1000;
            //transfer
            _balances[from]         = fromBalance - amount;
            _balances[to]           += _amount;
            emit Transfer(from, to, _amount);
             //burn
            _totalSupply            -= fee_value;
            emit Transfer(from, address(0), fee_value);
        }
    }

    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 _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function exclude_from_fee(address account) public onlyOwner {
        _isExcludedFromFee[account] = true;
    }
    
    function include_in_fee(address account) public onlyOwner {
        _isExcludedFromFee[account] = false;
    }

    function fee_on_off() public onlyOwner {
        fee_off = !fee_off;
    }   

}

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":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"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":[{"internalType":"address","name":"account","type":"address"}],"name":"exclude_from_fee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"fee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fee_off","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"fee_on_off","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"include_in_fee","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":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"set_fee","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":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

6080604052600a6007553480156200001657600080fd5b506040518060400160405280600f81526020017f414920546563686e6f6c6f676965730000000000000000000000000000000000815250600590816200005d919062000482565b506040518060400160405280600281526020017f415400000000000000000000000000000000000000000000000000000000000081525060069081620000a4919062000482565b506d314dc6448d9338c15b0a0000000060048190555033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506004546000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600454604051620001fa91906200057a565b60405180910390a362000597565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200028a57607f821691505b602082108103620002a0576200029f62000242565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200030a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620002cb565b620003168683620002cb565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620003636200035d62000357846200032e565b62000338565b6200032e565b9050919050565b6000819050919050565b6200037f8362000342565b620003976200038e826200036a565b848454620002d8565b825550505050565b600090565b620003ae6200039f565b620003bb81848462000374565b505050565b5b81811015620003e357620003d7600082620003a4565b600181019050620003c1565b5050565b601f8211156200043257620003fc81620002a6565b6200040784620002bb565b8101602085101562000417578190505b6200042f6200042685620002bb565b830182620003c0565b50505b505050565b600082821c905092915050565b6000620004576000198460080262000437565b1980831691505092915050565b600062000472838362000444565b9150826002028217905092915050565b6200048d8262000208565b67ffffffffffffffff811115620004a957620004a862000213565b5b620004b5825462000271565b620004c2828285620003e7565b600060209050601f831160018114620004fa5760008415620004e5578287015190505b620004f1858262000464565b86555062000561565b601f1984166200050a86620002a6565b60005b8281101562000534578489015182556001820191506020850194506020810190506200050d565b8683101562000554578489015162000550601f89168262000444565b8355505b6001600288020188555050505b505050505050565b62000574816200032e565b82525050565b600060208201905062000591600083018462000569565b92915050565b611c4680620005a76000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80634d732db1116100ad578063a9059cbb11610071578063a9059cbb146102f8578063b2bdfa7b14610328578063dd62ed3e14610346578063ddca3f4314610376578063e09b48131461039457610121565b80634d732db11461025257806370a0823114610270578063715018a6146102a057806395d89b41146102aa578063a457c2d7146102c857610121565b8063210ab5d6116100f4578063210ab5d6146101ae57806323b872dd146101ca578063313ce567146101fa578063395093511461021857806344193ea61461024857610121565b806306fdde0314610126578063095ea7b31461014457806318160ddd146101745780631aa02d5914610192575b600080fd5b61012e6103b0565b60405161013b919061138a565b60405180910390f35b61015e60048036038101906101599190611445565b610442565b60405161016b91906114a0565b60405180910390f35b61017c610465565b60405161018991906114ca565b60405180910390f35b6101ac60048036038101906101a791906114e5565b61046f565b005b6101c860048036038101906101c39190611512565b610509565b005b6101e460048036038101906101df919061153f565b6105f4565b6040516101f191906114a0565b60405180910390f35b610202610623565b60405161020f91906115ae565b60405180910390f35b610232600480360381019061022d9190611445565b61062c565b60405161023f91906114a0565b60405180910390f35b610250610663565b005b61025a61071f565b60405161026791906114a0565b60405180910390f35b61028a60048036038101906102859190611512565b610732565b60405161029791906114ca565b60405180910390f35b6102a861077a565b005b6102b2610816565b6040516102bf919061138a565b60405180910390f35b6102e260048036038101906102dd9190611445565b6108a8565b6040516102ef91906114a0565b60405180910390f35b610312600480360381019061030d9190611445565b61091f565b60405161031f91906114a0565b60405180910390f35b610330610942565b60405161033d91906115d8565b60405180910390f35b610360600480360381019061035b91906115f3565b610968565b60405161036d91906114ca565b60405180910390f35b61037e6109ef565b60405161038b91906114ca565b60405180910390f35b6103ae60048036038101906103a99190611512565b6109f5565b005b6060600580546103bf90611662565b80601f01602080910402602001604051908101604052809291908181526020018280546103eb90611662565b80156104385780601f1061040d57610100808354040283529160200191610438565b820191906000526020600020905b81548152906001019060200180831161041b57829003601f168201915b5050505050905090565b60008061044d610ae0565b905061045a818585610ae8565b600191505092915050565b6000600454905090565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f6906116df565b60405180910390fd5b8060078190555050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610599576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610590906116df565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000806105ff610ae0565b905061060c858285610cb1565b610617858585610d3d565b60019150509392505050565b60006012905090565b600080610637610ae0565b90506106588185856106498589610968565b610653919061172e565b610ae8565b600191505092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea906116df565b60405180910390fd5b600860009054906101000a900460ff1615600860006101000a81548160ff021916908315150217905550565b600860009054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461080a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610801906116df565b60405180910390fd5b6108146000611234565b565b60606006805461082590611662565b80601f016020809104026020016040519081016040528092919081815260200182805461085190611662565b801561089e5780601f106108735761010080835404028352916020019161089e565b820191906000526020600020905b81548152906001019060200180831161088157829003601f168201915b5050505050905090565b6000806108b3610ae0565b905060006108c18286610968565b905083811015610906576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fd906117d4565b60405180910390fd5b6109138286868403610ae8565b60019250505092915050565b60008061092a610ae0565b9050610937818585610d3d565b600191505092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60075481565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7c906116df565b60405180910390fd5b6001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4e90611866565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bc6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbd906118f8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ca491906114ca565b60405180910390a3505050565b6000610cbd8484610968565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610d375781811015610d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2090611964565b60405180910390fd5b610d368484848403610ae8565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da3906119f6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1290611a88565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610ea1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9890611b1a565b60405180910390fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f425750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80610f595750600860009054906101000a900460ff165b15611059578181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161104c91906114ca565b60405180910390a361122e565b60006103e86007546103e861106e9190611b3a565b846110799190611b6e565b6110839190611bdf565b905060006103e8600754856110989190611b6e565b6110a29190611bdf565b905083836110b09190611b3a565b6000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611140919061172e565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111a491906114ca565b60405180910390a380600460008282546111be9190611b3a565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161122391906114ca565b60405180910390a350505b50505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611334578082015181840152602081019050611319565b60008484015250505050565b6000601f19601f8301169050919050565b600061135c826112fa565b6113668185611305565b9350611376818560208601611316565b61137f81611340565b840191505092915050565b600060208201905081810360008301526113a48184611351565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006113dc826113b1565b9050919050565b6113ec816113d1565b81146113f757600080fd5b50565b600081359050611409816113e3565b92915050565b6000819050919050565b6114228161140f565b811461142d57600080fd5b50565b60008135905061143f81611419565b92915050565b6000806040838503121561145c5761145b6113ac565b5b600061146a858286016113fa565b925050602061147b85828601611430565b9150509250929050565b60008115159050919050565b61149a81611485565b82525050565b60006020820190506114b56000830184611491565b92915050565b6114c48161140f565b82525050565b60006020820190506114df60008301846114bb565b92915050565b6000602082840312156114fb576114fa6113ac565b5b600061150984828501611430565b91505092915050565b600060208284031215611528576115276113ac565b5b6000611536848285016113fa565b91505092915050565b600080600060608486031215611558576115576113ac565b5b6000611566868287016113fa565b9350506020611577868287016113fa565b925050604061158886828701611430565b9150509250925092565b600060ff82169050919050565b6115a881611592565b82525050565b60006020820190506115c3600083018461159f565b92915050565b6115d2816113d1565b82525050565b60006020820190506115ed60008301846115c9565b92915050565b6000806040838503121561160a576116096113ac565b5b6000611618858286016113fa565b9250506020611629858286016113fa565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061167a57607f821691505b60208210810361168d5761168c611633565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006116c9602083611305565b91506116d482611693565b602082019050919050565b600060208201905081810360008301526116f8816116bc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006117398261140f565b91506117448361140f565b925082820190508082111561175c5761175b6116ff565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006117be602583611305565b91506117c982611762565b604082019050919050565b600060208201905081810360008301526117ed816117b1565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611850602483611305565b915061185b826117f4565b604082019050919050565b6000602082019050818103600083015261187f81611843565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006118e2602283611305565b91506118ed82611886565b604082019050919050565b60006020820190508181036000830152611911816118d5565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600061194e601d83611305565b915061195982611918565b602082019050919050565b6000602082019050818103600083015261197d81611941565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006119e0602583611305565b91506119eb82611984565b604082019050919050565b60006020820190508181036000830152611a0f816119d3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611a72602383611305565b9150611a7d82611a16565b604082019050919050565b60006020820190508181036000830152611aa181611a65565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611b04602683611305565b9150611b0f82611aa8565b604082019050919050565b60006020820190508181036000830152611b3381611af7565b9050919050565b6000611b458261140f565b9150611b508361140f565b9250828203905081811115611b6857611b676116ff565b5b92915050565b6000611b798261140f565b9150611b848361140f565b9250828202611b928161140f565b91508282048414831517611ba957611ba86116ff565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611bea8261140f565b9150611bf58361140f565b925082611c0557611c04611bb0565b5b82820490509291505056fea26469706673582212200b6a0fc1d63d20e8d5f52dcf60148331ebadb064c9853042c0eb3d203b3db00564736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c80634d732db1116100ad578063a9059cbb11610071578063a9059cbb146102f8578063b2bdfa7b14610328578063dd62ed3e14610346578063ddca3f4314610376578063e09b48131461039457610121565b80634d732db11461025257806370a0823114610270578063715018a6146102a057806395d89b41146102aa578063a457c2d7146102c857610121565b8063210ab5d6116100f4578063210ab5d6146101ae57806323b872dd146101ca578063313ce567146101fa578063395093511461021857806344193ea61461024857610121565b806306fdde0314610126578063095ea7b31461014457806318160ddd146101745780631aa02d5914610192575b600080fd5b61012e6103b0565b60405161013b919061138a565b60405180910390f35b61015e60048036038101906101599190611445565b610442565b60405161016b91906114a0565b60405180910390f35b61017c610465565b60405161018991906114ca565b60405180910390f35b6101ac60048036038101906101a791906114e5565b61046f565b005b6101c860048036038101906101c39190611512565b610509565b005b6101e460048036038101906101df919061153f565b6105f4565b6040516101f191906114a0565b60405180910390f35b610202610623565b60405161020f91906115ae565b60405180910390f35b610232600480360381019061022d9190611445565b61062c565b60405161023f91906114a0565b60405180910390f35b610250610663565b005b61025a61071f565b60405161026791906114a0565b60405180910390f35b61028a60048036038101906102859190611512565b610732565b60405161029791906114ca565b60405180910390f35b6102a861077a565b005b6102b2610816565b6040516102bf919061138a565b60405180910390f35b6102e260048036038101906102dd9190611445565b6108a8565b6040516102ef91906114a0565b60405180910390f35b610312600480360381019061030d9190611445565b61091f565b60405161031f91906114a0565b60405180910390f35b610330610942565b60405161033d91906115d8565b60405180910390f35b610360600480360381019061035b91906115f3565b610968565b60405161036d91906114ca565b60405180910390f35b61037e6109ef565b60405161038b91906114ca565b60405180910390f35b6103ae60048036038101906103a99190611512565b6109f5565b005b6060600580546103bf90611662565b80601f01602080910402602001604051908101604052809291908181526020018280546103eb90611662565b80156104385780601f1061040d57610100808354040283529160200191610438565b820191906000526020600020905b81548152906001019060200180831161041b57829003601f168201915b5050505050905090565b60008061044d610ae0565b905061045a818585610ae8565b600191505092915050565b6000600454905090565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f6906116df565b60405180910390fd5b8060078190555050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610599576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610590906116df565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000806105ff610ae0565b905061060c858285610cb1565b610617858585610d3d565b60019150509392505050565b60006012905090565b600080610637610ae0565b90506106588185856106498589610968565b610653919061172e565b610ae8565b600191505092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea906116df565b60405180910390fd5b600860009054906101000a900460ff1615600860006101000a81548160ff021916908315150217905550565b600860009054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461080a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610801906116df565b60405180910390fd5b6108146000611234565b565b60606006805461082590611662565b80601f016020809104026020016040519081016040528092919081815260200182805461085190611662565b801561089e5780601f106108735761010080835404028352916020019161089e565b820191906000526020600020905b81548152906001019060200180831161088157829003601f168201915b5050505050905090565b6000806108b3610ae0565b905060006108c18286610968565b905083811015610906576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fd906117d4565b60405180910390fd5b6109138286868403610ae8565b60019250505092915050565b60008061092a610ae0565b9050610937818585610d3d565b600191505092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60075481565b3373ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7c906116df565b60405180910390fd5b6001600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4e90611866565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610bc6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bbd906118f8565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610ca491906114ca565b60405180910390a3505050565b6000610cbd8484610968565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610d375781811015610d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2090611964565b60405180910390fd5b610d368484848403610ae8565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da3906119f6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e1290611a88565b60405180910390fd5b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610ea1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e9890611b1a565b60405180910390fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f425750600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80610f595750600860009054906101000a900460ff165b15611059578181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161104c91906114ca565b60405180910390a361122e565b60006103e86007546103e861106e9190611b3a565b846110799190611b6e565b6110839190611bdf565b905060006103e8600754856110989190611b6e565b6110a29190611bdf565b905083836110b09190611b3a565b6000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611140919061172e565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111a491906114ca565b60405180910390a380600460008282546111be9190611b3a565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161122391906114ca565b60405180910390a350505b50505050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611334578082015181840152602081019050611319565b60008484015250505050565b6000601f19601f8301169050919050565b600061135c826112fa565b6113668185611305565b9350611376818560208601611316565b61137f81611340565b840191505092915050565b600060208201905081810360008301526113a48184611351565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006113dc826113b1565b9050919050565b6113ec816113d1565b81146113f757600080fd5b50565b600081359050611409816113e3565b92915050565b6000819050919050565b6114228161140f565b811461142d57600080fd5b50565b60008135905061143f81611419565b92915050565b6000806040838503121561145c5761145b6113ac565b5b600061146a858286016113fa565b925050602061147b85828601611430565b9150509250929050565b60008115159050919050565b61149a81611485565b82525050565b60006020820190506114b56000830184611491565b92915050565b6114c48161140f565b82525050565b60006020820190506114df60008301846114bb565b92915050565b6000602082840312156114fb576114fa6113ac565b5b600061150984828501611430565b91505092915050565b600060208284031215611528576115276113ac565b5b6000611536848285016113fa565b91505092915050565b600080600060608486031215611558576115576113ac565b5b6000611566868287016113fa565b9350506020611577868287016113fa565b925050604061158886828701611430565b9150509250925092565b600060ff82169050919050565b6115a881611592565b82525050565b60006020820190506115c3600083018461159f565b92915050565b6115d2816113d1565b82525050565b60006020820190506115ed60008301846115c9565b92915050565b6000806040838503121561160a576116096113ac565b5b6000611618858286016113fa565b9250506020611629858286016113fa565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061167a57607f821691505b60208210810361168d5761168c611633565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006116c9602083611305565b91506116d482611693565b602082019050919050565b600060208201905081810360008301526116f8816116bc565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006117398261140f565b91506117448361140f565b925082820190508082111561175c5761175b6116ff565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006117be602583611305565b91506117c982611762565b604082019050919050565b600060208201905081810360008301526117ed816117b1565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000611850602483611305565b915061185b826117f4565b604082019050919050565b6000602082019050818103600083015261187f81611843565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006118e2602283611305565b91506118ed82611886565b604082019050919050565b60006020820190508181036000830152611911816118d5565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b600061194e601d83611305565b915061195982611918565b602082019050919050565b6000602082019050818103600083015261197d81611941565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006119e0602583611305565b91506119eb82611984565b604082019050919050565b60006020820190508181036000830152611a0f816119d3565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611a72602383611305565b9150611a7d82611a16565b604082019050919050565b60006020820190508181036000830152611aa181611a65565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000611b04602683611305565b9150611b0f82611aa8565b604082019050919050565b60006020820190508181036000830152611b3381611af7565b9050919050565b6000611b458261140f565b9150611b508361140f565b9250828203905081811115611b6857611b676116ff565b5b92915050565b6000611b798261140f565b9150611b848361140f565b9250828202611b928161140f565b91508282048414831517611ba957611ba86116ff565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611bea8261140f565b9150611bf58361140f565b925082611c0557611c04611bb0565b5b82820490509291505056fea26469706673582212200b6a0fc1d63d20e8d5f52dcf60148331ebadb064c9853042c0eb3d203b3db00564736f6c63430008120033

Deployed Bytecode Sourcemap

1187:5669:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2149:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3068:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2465:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1735:76;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6652:112;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3277:261;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2366:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3546:238;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6772:76;;;:::i;:::-;;1579:22;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2579:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6416:103;;;:::i;:::-;;2255:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3792:434;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2712:193;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1428:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2911:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1549:23;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6527:113;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2149:100;2203:13;2236:5;2229:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2149:100;:::o;3068:201::-;3151:4;3168:13;3184:12;:10;:12::i;:::-;3168:28;;3207:32;3216:5;3223:7;3232:6;3207:8;:32::i;:::-;3257:4;3250:11;;;3068:201;;;;:::o;2465:108::-;2526:7;2553:12;;2546:19;;2465:108;:::o;1735:76::-;1660:10;1650:20;;:6;;;;;;;;;;;:20;;;1642:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;1799:4:::1;1793:3;:10;;;;1735:76:::0;:::o;6652:112::-;1660:10;1650:20;;:6;;;;;;;;;;;:20;;;1642:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;6751:5:::1;6721:18;:27;6740:7;6721:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;6652:112:::0;:::o;3277:261::-;3374:4;3391:15;3409:12;:10;:12::i;:::-;3391:30;;3432:38;3448:4;3454:7;3463:6;3432:15;:38::i;:::-;3481:27;3491:4;3497:2;3501:6;3481:9;:27::i;:::-;3526:4;3519:11;;;3277:261;;;;;:::o;2366:93::-;2424:5;2449:2;2442:9;;2366:93;:::o;3546:238::-;3634:4;3651:13;3667:12;:10;:12::i;:::-;3651:28;;3690:64;3699:5;3706:7;3743:10;3715:25;3725:5;3732:7;3715:9;:25::i;:::-;:38;;;;:::i;:::-;3690:8;:64::i;:::-;3772:4;3765:11;;;3546:238;;;;:::o;6772:76::-;1660:10;1650:20;;:6;;;;;;;;;;;:20;;;1642:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;6833:7:::1;;;;;;;;;;;6832:8;6822:7;;:18;;;;;;;;;;;;;;;;;;6772:76::o:0;1579:22::-;;;;;;;;;;;;;:::o;2579:127::-;2653:7;2680:9;:18;2690:7;2680:18;;;;;;;;;;;;;;;;2673:25;;2579:127;;;:::o;6416:103::-;1660:10;1650:20;;:6;;;;;;;;;;;:20;;;1642:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;6481:30:::1;6508:1;6481:18;:30::i;:::-;6416:103::o:0;2255:104::-;2311:13;2344:7;2337:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2255:104;:::o;3792:434::-;3885:4;3902:13;3918:12;:10;:12::i;:::-;3902:28;;3941:24;3968:25;3978:5;3985:7;3968:9;:25::i;:::-;3941:52;;4032:15;4012:16;:35;;4004:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;4125:60;4134:5;4141:7;4169:15;4150:16;:34;4125:8;:60::i;:::-;4214:4;4207:11;;;;3792:434;;;;:::o;2712:193::-;2791:4;2808:13;2824:12;:10;:12::i;:::-;2808:28;;2847;2857:5;2864:2;2868:6;2847:9;:28::i;:::-;2893:4;2886:11;;;2712:193;;;;:::o;1428:21::-;;;;;;;;;;;;;:::o;2911:151::-;3000:7;3027:11;:18;3039:5;3027:18;;;;;;;;;;;;;;;:27;3046:7;3027:27;;;;;;;;;;;;;;;;3020:34;;2911:151;;;;:::o;1549:23::-;;;;:::o;6527:113::-;1660:10;1650:20;;:6;;;;;;;;;;;:20;;;1642:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;6628:4:::1;6598:18;:27;6617:7;6598:27;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;6527:113:::0;:::o;93:98::-;146:7;173:10;166:17;;93:98;:::o;5350:344::-;5469:1;5452:19;;:5;:19;;;5444:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5550:1;5531:21;;:7;:21;;;5523:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5632:6;5602:11;:18;5614:5;5602:18;;;;;;;;;;;;;;;:27;5621:7;5602:27;;;;;;;;;;;;;;;:36;;;;5670:7;5654:32;;5663:5;5654:32;;;5679:6;5654:32;;;;;;:::i;:::-;;;;;;;;5350:344;;;:::o;5702:419::-;5803:24;5830:25;5840:5;5847:7;5830:9;:25::i;:::-;5803:52;;5890:17;5870:16;:37;5866:248;;5952:6;5932:16;:26;;5924:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6036:51;6045:5;6052:7;6080:6;6061:16;:25;6036:8;:51::i;:::-;5866:248;5792:329;5702:419;;;:::o;4234:1108::-;4347:1;4331:18;;:4;:18;;;4323:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4424:1;4410:16;;:2;:16;;;4402:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4483:19;4505:9;:15;4515:4;4505:15;;;;;;;;;;;;;;;;4483:37;;4554:6;4539:11;:21;;4531:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;4625:18;:24;4644:4;4625:24;;;;;;;;;;;;;;;;;;;;;;;;;:51;;;;4654:18;:22;4673:2;4654:22;;;;;;;;;;;;;;;;;;;;;;;;;4625:51;:62;;;;4680:7;;;;;;;;;;;4625:62;4620:715;;;4761:6;4747:11;:20;4729:9;:15;4739:4;4729:15;;;;;;;;;;;;;;;:38;;;;4799:6;4782:9;:13;4792:2;4782:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;4855:2;4840:26;;4849:4;4840:26;;;4859:6;4840:26;;;;;;:::i;:::-;;;;;;;;4620:715;;;4899:15;4949:4;4942:3;;4935:4;:10;;;;:::i;:::-;4925:6;:21;;;;:::i;:::-;:28;;;;:::i;:::-;4899:54;;4968:17;5009:4;5003:3;;4994:6;:12;;;;:::i;:::-;:19;;;;:::i;:::-;4968:45;;5092:6;5078:11;:20;;;;:::i;:::-;5052:9;:15;5062:4;5052:15;;;;;;;;;;;;;;;:46;;;;5140:7;5113:9;:13;5123:2;5113:13;;;;;;;;;;;;;;;;:34;;;;;;;:::i;:::-;;;;;;;;5182:2;5167:27;;5176:4;5167:27;;;5186:7;5167:27;;;;;;:::i;:::-;;;;;;;;5257:9;5230:12;;:36;;;;;;;:::i;:::-;;;;;;;;5309:1;5286:37;;5295:4;5286:37;;;5313:9;5286:37;;;;;;:::i;:::-;;;;;;;;4884:451;;4620:715;4312:1030;4234:1108;;;:::o;6219:191::-;6293:16;6312:6;;;;;;;;;;;6293:25;;6338:8;6329:6;;:17;;;;;;;;;;;;;;;;;;6393:8;6362:40;;6383:8;6362:40;;;;;;;;;;;;6282:128;6219: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:329::-;3857:6;3906:2;3894:9;3885:7;3881:23;3877:32;3874:119;;;3912:79;;:::i;:::-;3874:119;4032:1;4057:53;4102:7;4093:6;4082:9;4078:22;4057:53;:::i;:::-;4047:63;;4003:117;3798:329;;;;:::o;4133:::-;4192:6;4241:2;4229:9;4220:7;4216:23;4212:32;4209:119;;;4247:79;;:::i;:::-;4209:119;4367:1;4392:53;4437:7;4428:6;4417:9;4413:22;4392:53;:::i;:::-;4382:63;;4338:117;4133:329;;;;:::o;4468:619::-;4545:6;4553;4561;4610:2;4598:9;4589:7;4585:23;4581:32;4578:119;;;4616:79;;:::i;:::-;4578:119;4736:1;4761:53;4806:7;4797:6;4786:9;4782:22;4761:53;:::i;:::-;4751:63;;4707:117;4863:2;4889:53;4934:7;4925:6;4914:9;4910:22;4889:53;:::i;:::-;4879:63;;4834:118;4991:2;5017:53;5062:7;5053:6;5042:9;5038:22;5017:53;:::i;:::-;5007:63;;4962:118;4468:619;;;;;:::o;5093:86::-;5128:7;5168:4;5161:5;5157:16;5146:27;;5093:86;;;:::o;5185:112::-;5268:22;5284:5;5268:22;:::i;:::-;5263:3;5256:35;5185:112;;:::o;5303:214::-;5392:4;5430:2;5419:9;5415:18;5407:26;;5443:67;5507:1;5496:9;5492:17;5483:6;5443:67;:::i;:::-;5303:214;;;;:::o;5523:118::-;5610:24;5628:5;5610:24;:::i;:::-;5605:3;5598:37;5523:118;;:::o;5647:222::-;5740:4;5778:2;5767:9;5763:18;5755:26;;5791:71;5859:1;5848:9;5844:17;5835:6;5791:71;:::i;:::-;5647:222;;;;:::o;5875:474::-;5943:6;5951;6000:2;5988:9;5979:7;5975:23;5971:32;5968:119;;;6006:79;;:::i;:::-;5968:119;6126:1;6151:53;6196:7;6187:6;6176:9;6172:22;6151:53;:::i;:::-;6141:63;;6097:117;6253:2;6279:53;6324:7;6315:6;6304:9;6300:22;6279:53;:::i;:::-;6269:63;;6224:118;5875:474;;;;;:::o;6355:180::-;6403:77;6400:1;6393:88;6500:4;6497:1;6490:15;6524:4;6521:1;6514:15;6541:320;6585:6;6622:1;6616:4;6612:12;6602:22;;6669:1;6663:4;6659:12;6690:18;6680:81;;6746:4;6738:6;6734:17;6724:27;;6680:81;6808:2;6800:6;6797:14;6777:18;6774:38;6771:84;;6827:18;;:::i;:::-;6771:84;6592:269;6541:320;;;:::o;6867:182::-;7007:34;7003:1;6995:6;6991:14;6984:58;6867:182;:::o;7055:366::-;7197:3;7218:67;7282:2;7277:3;7218:67;:::i;:::-;7211:74;;7294:93;7383:3;7294:93;:::i;:::-;7412:2;7407:3;7403:12;7396:19;;7055:366;;;:::o;7427:419::-;7593:4;7631:2;7620:9;7616:18;7608:26;;7680:9;7674:4;7670:20;7666:1;7655:9;7651:17;7644:47;7708:131;7834:4;7708:131;:::i;:::-;7700:139;;7427:419;;;:::o;7852:180::-;7900:77;7897:1;7890:88;7997:4;7994:1;7987:15;8021:4;8018:1;8011:15;8038:191;8078:3;8097:20;8115:1;8097:20;:::i;:::-;8092:25;;8131:20;8149:1;8131:20;:::i;:::-;8126:25;;8174:1;8171;8167:9;8160:16;;8195:3;8192:1;8189:10;8186:36;;;8202:18;;:::i;:::-;8186:36;8038:191;;;;:::o;8235:224::-;8375:34;8371:1;8363:6;8359:14;8352:58;8444:7;8439:2;8431:6;8427:15;8420:32;8235:224;:::o;8465:366::-;8607:3;8628:67;8692:2;8687:3;8628:67;:::i;:::-;8621:74;;8704:93;8793:3;8704:93;:::i;:::-;8822:2;8817:3;8813:12;8806:19;;8465:366;;;:::o;8837:419::-;9003:4;9041:2;9030:9;9026:18;9018:26;;9090:9;9084:4;9080:20;9076:1;9065:9;9061:17;9054:47;9118:131;9244:4;9118:131;:::i;:::-;9110:139;;8837:419;;;:::o;9262:223::-;9402:34;9398:1;9390:6;9386:14;9379:58;9471:6;9466:2;9458:6;9454:15;9447:31;9262:223;:::o;9491:366::-;9633:3;9654:67;9718:2;9713:3;9654:67;:::i;:::-;9647:74;;9730:93;9819:3;9730:93;:::i;:::-;9848:2;9843:3;9839:12;9832:19;;9491:366;;;:::o;9863:419::-;10029:4;10067:2;10056:9;10052:18;10044:26;;10116:9;10110:4;10106:20;10102:1;10091:9;10087:17;10080:47;10144:131;10270:4;10144:131;:::i;:::-;10136:139;;9863:419;;;:::o;10288:221::-;10428:34;10424:1;10416:6;10412:14;10405:58;10497:4;10492:2;10484:6;10480:15;10473:29;10288:221;:::o;10515:366::-;10657:3;10678:67;10742:2;10737:3;10678:67;:::i;:::-;10671:74;;10754:93;10843:3;10754:93;:::i;:::-;10872:2;10867:3;10863:12;10856:19;;10515:366;;;:::o;10887:419::-;11053:4;11091:2;11080:9;11076:18;11068:26;;11140:9;11134:4;11130:20;11126:1;11115:9;11111:17;11104:47;11168:131;11294:4;11168:131;:::i;:::-;11160:139;;10887:419;;;:::o;11312:179::-;11452:31;11448:1;11440:6;11436:14;11429:55;11312:179;:::o;11497:366::-;11639:3;11660:67;11724:2;11719:3;11660:67;:::i;:::-;11653:74;;11736:93;11825:3;11736:93;:::i;:::-;11854:2;11849:3;11845:12;11838:19;;11497:366;;;:::o;11869:419::-;12035:4;12073:2;12062:9;12058:18;12050:26;;12122:9;12116:4;12112:20;12108:1;12097:9;12093:17;12086:47;12150:131;12276:4;12150:131;:::i;:::-;12142:139;;11869:419;;;:::o;12294:224::-;12434:34;12430:1;12422:6;12418:14;12411:58;12503:7;12498:2;12490:6;12486:15;12479:32;12294:224;:::o;12524:366::-;12666:3;12687:67;12751:2;12746:3;12687:67;:::i;:::-;12680:74;;12763:93;12852:3;12763:93;:::i;:::-;12881:2;12876:3;12872:12;12865:19;;12524:366;;;:::o;12896:419::-;13062:4;13100:2;13089:9;13085:18;13077:26;;13149:9;13143:4;13139:20;13135:1;13124:9;13120:17;13113:47;13177:131;13303:4;13177:131;:::i;:::-;13169:139;;12896:419;;;:::o;13321:222::-;13461:34;13457:1;13449:6;13445:14;13438:58;13530:5;13525:2;13517:6;13513:15;13506:30;13321:222;:::o;13549:366::-;13691:3;13712:67;13776:2;13771:3;13712:67;:::i;:::-;13705:74;;13788:93;13877:3;13788:93;:::i;:::-;13906:2;13901:3;13897:12;13890:19;;13549:366;;;:::o;13921:419::-;14087:4;14125:2;14114:9;14110:18;14102:26;;14174:9;14168:4;14164:20;14160:1;14149:9;14145:17;14138:47;14202:131;14328:4;14202:131;:::i;:::-;14194:139;;13921:419;;;:::o;14346:225::-;14486:34;14482:1;14474:6;14470:14;14463:58;14555:8;14550:2;14542:6;14538:15;14531:33;14346:225;:::o;14577:366::-;14719:3;14740:67;14804:2;14799:3;14740:67;:::i;:::-;14733:74;;14816:93;14905:3;14816:93;:::i;:::-;14934:2;14929:3;14925:12;14918:19;;14577:366;;;:::o;14949:419::-;15115:4;15153:2;15142:9;15138:18;15130:26;;15202:9;15196:4;15192:20;15188:1;15177:9;15173:17;15166:47;15230:131;15356:4;15230:131;:::i;:::-;15222:139;;14949:419;;;:::o;15374:194::-;15414:4;15434:20;15452:1;15434:20;:::i;:::-;15429:25;;15468:20;15486:1;15468:20;:::i;:::-;15463:25;;15512:1;15509;15505:9;15497:17;;15536:1;15530:4;15527:11;15524:37;;;15541:18;;:::i;:::-;15524:37;15374:194;;;;:::o;15574:410::-;15614:7;15637:20;15655:1;15637:20;:::i;:::-;15632:25;;15671:20;15689:1;15671:20;:::i;:::-;15666:25;;15726:1;15723;15719:9;15748:30;15766:11;15748:30;:::i;:::-;15737:41;;15927:1;15918:7;15914:15;15911:1;15908:22;15888:1;15881:9;15861:83;15838:139;;15957:18;;:::i;:::-;15838:139;15622:362;15574:410;;;;:::o;15990:180::-;16038:77;16035:1;16028:88;16135:4;16132:1;16125:15;16159:4;16156:1;16149:15;16176:185;16216:1;16233:20;16251:1;16233:20;:::i;:::-;16228:25;;16267:20;16285:1;16267:20;:::i;:::-;16262:25;;16306:1;16296:35;;16311:18;;:::i;:::-;16296:35;16353:1;16350;16346:9;16341:14;;16176:185;;;;:::o

Swarm Source

ipfs://0b6a0fc1d63d20e8d5f52dcf60148331ebadb064c9853042c0eb3d203b3db005

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.