ETH Price: $2,077.89 (-1.88%)

Contract

0x0257fFD7eA2eBba4aAA090C7AdBDD032A08c1F74
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

ZELIX (ZELIX) ($0.00)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer245436782026-02-26 21:07:357 days ago1772140055IN
Zelix: ZELIX Token
0 ETH0.000048330.82502903
Transfer245268422026-02-24 12:44:479 days ago1771937087IN
Zelix: ZELIX Token
0 ETH0.000004660.08669612
Transfer243770772026-02-03 14:58:2330 days ago1770130703IN
Zelix: ZELIX Token
0 ETH0.000042041.14564932
Transfer243770762026-02-03 14:58:1130 days ago1770130691IN
Zelix: ZELIX Token
0 ETH0.000154532.63754835
Transfer243427312026-01-29 19:53:5935 days ago1769716439IN
Zelix: ZELIX Token
0 ETH0.000032270.87895287
Transfer243427302026-01-29 19:53:4735 days ago1769716427IN
Zelix: ZELIX Token
0 ETH0.000013380.24869501
Approve243111782026-01-25 10:18:2339 days ago1769336303IN
Zelix: ZELIX Token
0 ETH0.000005140.11050491
Transfer243010802026-01-24 0:30:5941 days ago1769214659IN
Zelix: ZELIX Token
0 ETH0.000027630.75251454
Transfer243010792026-01-24 0:30:4741 days ago1769214647IN
Zelix: ZELIX Token
0 ETH0.000003780.07027418
Approve242995832026-01-23 19:29:4741 days ago1769196587IN
Zelix: ZELIX Token
0 ETH0.000099582.1511388
Approve242526562026-01-17 6:25:4748 days ago1768631147IN
Zelix: ZELIX Token
0 ETH0.000048021.03122228
Approve242525952026-01-17 6:13:3548 days ago1768630415IN
Zelix: ZELIX Token
0 ETH0.00009442.02965996
Transfer241998472026-01-09 21:35:1155 days ago1767994511IN
Zelix: ZELIX Token
0 ETH0.000063711.08728107
Approve241992842026-01-09 19:41:5955 days ago1767987719IN
Zelix: ZELIX Token
0 ETH0.000006220.13358044
Transfer241882252026-01-08 6:39:2357 days ago1767854363IN
Zelix: ZELIX Token
0 ETH0.000038011.03500189
Transfer241876052026-01-08 4:34:4757 days ago1767846887IN
Zelix: ZELIX Token
0 ETH0.000001760.04800523
Transfer241875752026-01-08 4:28:4757 days ago1767846527IN
Zelix: ZELIX Token
0 ETH0.000001760.04800523
Transfer241875752026-01-08 4:28:4757 days ago1767846527IN
Zelix: ZELIX Token
0 ETH0.000001760.04800523
Approve241798942026-01-07 2:43:3558 days ago1767753815IN
Zelix: ZELIX Token
0 ETH0.000094282.03547532
Approve240853882025-12-24 22:12:4771 days ago1766614367IN
Zelix: ZELIX Token
0 ETH0.000005980.12921566
Approve240803682025-12-24 5:24:1172 days ago1766553851IN
Zelix: ZELIX Token
0 ETH0.000005620.12158571
Transfer240761872025-12-23 15:24:1172 days ago1766503451IN
Zelix: ZELIX Token
0 ETH0.000029970.81626113
Transfer240761862025-12-23 15:23:5972 days ago1766503439IN
Zelix: ZELIX Token
0 ETH0.000033160.61639013
Approve240735552025-12-23 6:34:2373 days ago1766471663IN
Zelix: ZELIX Token
0 ETH0.000094222.03575747
Transfer240466442025-12-19 12:29:1176 days ago1766147351IN
Zelix: ZELIX Token
0 ETH0.000046381.26300445
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer245183242026-02-23 8:14:1111 days ago1771834451
Zelix: ZELIX Token
0 ETH
Balance Of245183242026-02-23 8:14:1111 days ago1771834451
Zelix: ZELIX Token
0 ETH
Balance Of245183242026-02-23 8:14:1111 days ago1771834451
Zelix: ZELIX Token
0 ETH
Balance Of245183242026-02-23 8:14:1111 days ago1771834451
Zelix: ZELIX Token
0 ETH
Transfer245183242026-02-23 8:14:1111 days ago1771834451
Zelix: ZELIX Token
0 ETH
Transfer245183242026-02-23 8:14:1111 days ago1771834451
Zelix: ZELIX Token
0 ETH
Transfer244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Balance Of244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Transfer244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Balance Of244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Balance Of244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Balance Of244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Transfer244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Transfer244788682026-02-17 20:13:3516 days ago1771359215
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Transfer243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Transfer243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Balance Of243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
Transfer243427262026-01-29 19:52:5935 days ago1769716379
Zelix: ZELIX Token
0 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

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

Contract Source Code Verified (Exact Match)

Contract Name:
ZELIX

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

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

/**
 *Submitted for verification at Etherscan.io on 2021-10-29
*/

/**
 *Submitted for verification at Etherscan.io on 2021-03-10
*/

// Sources flattened with hardhat v2.1.1 https://hardhat.org

// File contracts/erc20/ERC20.sol

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.2;

abstract contract ERC20 {

    uint256 private _totalSupply;
    mapping(address => uint256) internal _balances;
    mapping(address => mapping(address => uint256)) internal _allowances;

    event Transfer(address indexed from, address indexed to, uint256 amount);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 amount
    );

    /*
   * Internal Functions for ERC20 standard logics
   */

    function _transfer(address from, address to, uint256 amount)
        internal
        returns (bool success)
    {
        _balances[from] = _balances[from] - amount;
        _balances[to] = _balances[to] + amount;
        emit Transfer(from, to, amount);
        success = true;
    }

    function _approve(address owner, address spender, uint256 amount)
        internal
        returns (bool success)
    {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
        success = true;
    }

    function _mint(address recipient, uint256 amount)
        internal
        returns (bool success)
    {
        _totalSupply = _totalSupply + amount;
        _balances[recipient] = _balances[recipient] + amount;
        emit Transfer(address(0), recipient, amount);
        success = true;
    }

    function _burn(address burned, uint256 amount)
        internal
        returns (bool success)
    {
        _balances[burned] = _balances[burned] - amount;
        _totalSupply = _totalSupply - amount;
        emit Transfer(burned, address(0), amount);
        success = true;
    }

    /*
   * public view functions to view common data
   */

    function totalSupply() external view returns (uint256 total) {
        total = _totalSupply;
    }
    function balanceOf(address owner) external view returns (uint256 balance) {
        balance = _balances[owner];
    }

    function allowance(address owner, address spender)
        external
        view
        returns (uint256 remaining)
    {
        remaining = _allowances[owner][spender];
    }

    /*
   * External view Function Interface to implement on final contract
   */
    function name() virtual external view returns (string memory tokenName);
    function symbol() virtual external view returns (string memory tokenSymbol);
    function decimals() virtual external view returns (uint8 tokenDecimals);

    /*
   * External Function Interface to implement on final contract
   */
    function transfer(address to, uint256 amount)
        virtual
        external
        returns (bool success);
    function transferFrom(address from, address to, uint256 amount)
        virtual
        external
        returns (bool success);
    function approve(address spender, uint256 amount)
        virtual
        external
        returns (bool success);
}

abstract contract Ownable {
    address internal _owner;

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

    constructor() {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), msg.sender);
    }

    modifier onlyOwner() {
        require(
            msg.sender == _owner,
            "Ownable : Function called by unauthorized user."
        );
        _;
    }

    function owner() external view returns (address ownerAddress) {
        ownerAddress = _owner;
    }

    function transferOwnership(address newOwner)
        public
        onlyOwner
        returns (bool success)
    {
        require(newOwner != address(0), "Ownable/transferOwnership : cannot transfer ownership to zero address");
        success = _transferOwnership(newOwner);
    }

    function renounceOwnership() external onlyOwner returns (bool success) {
        success = _transferOwnership(address(0));
    }

    function _transferOwnership(address newOwner) internal returns (bool success) {
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
        success = true;
    }
}


abstract contract ERC20Lockable is ERC20, Ownable {
    struct LockInfo {
        uint256 amount;
        uint256 due;
    }

    mapping(address => LockInfo[]) internal _locks;
    mapping(address => bool) public admin;

    event Lock(address indexed from, uint256 amount, uint256 due);
    event Unlock(address indexed from, uint256 amount);

    modifier checkLock(address from, uint256 amount) {
        require(_balances[from] >= totalLocked(from) + amount, "Cannot send more than unlocked amount");
        _;
    }

    modifier onlyAdmin() {
        require(admin[msg.sender] == true, "Function called by admin user.");
        _;
    }
    function setAdmin(address _admin, bool _approved) external onlyOwner {
        admin[_admin] = _approved;
    }

    function totalLocked(address _from) public view returns (uint256) {
        uint256 lockedAmount;
        for (uint256 i = 0; i < _locks[_from].length; i++) {
            if (_locks[_from][i].due >= block.timestamp) {
                lockedAmount += _locks[_from][i].amount;
            }
        }
        return lockedAmount;
    }

    function lockIdx(address _from, uint256 _due) internal view returns (int256) {
    for (uint256 i = 0; i < _locks[_from].length; i++) {
        if (_locks[_from][i].due == _due) {
            return int256(i); // Return the index as a signed integer
        }
    }
    return -1;
}

    function _lock(address from, uint256 amount, uint256 due) internal returns (bool success) {
        require(due > block.timestamp, "Cannot set due to past");
        require(_balances[from] >= totalLocked(from) + amount, "Locked total should be smaller than balance");
        int256 idx = lockIdx(from, due);
        if (idx >= 0) {
            uint256 existingAmount = _locks[from][uint256(idx)].amount;
            _locks[from][uint256(idx)].amount = existingAmount + amount;
        } else {
            _locks[from].push(LockInfo(amount, due));
        }
        emit Lock(from, amount, due);
    return true;
}

    function _unlock(address from, uint256 due) internal returns (bool success) {
        require(totalLocked(from) != 0, "Cannot set due to past");
        for (uint256 i = 0; i < _locks[from].length; i++) {
            if (_locks[from][i].due == due) {
                uint256 unlockedAmount = _locks[from][i].amount;
                emit Unlock(from, unlockedAmount);
                _locks[from][i] = _locks[from][_locks[from].length - 1];
                _locks[from].pop();
                return true;
            }
        }
        return false;
    }

    function unlock(address from, uint256 due) external onlyAdmin returns (bool success) {
        return _unlock(from, due);
    }

    function unlockAll(address from) external onlyAdmin returns (bool success) {
        for (uint256 i = _locks[from].length; i > 0; i--) {
            _unlock(from, _locks[from][i - 1].due);
        }
        return true;
    }

    function transferWithLockUp(address recipient, uint256 amount, uint256 due) external onlyAdmin returns (bool success) {
        require(recipient != address(0), "Cannot send to zero address");
        _transfer(msg.sender, recipient, amount);
        _lock(recipient, amount, due);
        return true;
    }

    function lockInfo(address locked, uint256 index) external view returns (uint256 amount, uint256 due) {
        amount = _locks[locked][index].amount;
        due = _locks[locked][index].due;
    }
}

abstract contract ERC20Burnable is ERC20 {
    event Burn(address indexed burned, uint256 amount);

    function burn(uint256 amount) 
    external
    returns (bool success)
    {
        success = _burn(msg.sender, amount);
        emit Burn(msg.sender, amount);
        success = true;
    }

    function burnFrom(address burned, uint256 amount) 
    external
    returns (bool success)
    {
        _burn(burned, amount);
        emit Burn(burned, amount);
        success = _approve(
            burned,
            msg.sender,
            _allowances[burned][msg.sender] - amount
        );
    }
}

contract ZELIX is
    ERC20Lockable,
    ERC20Burnable
{
    string constant private _name = "ZELIX";
    string constant private _symbol = "ZELIX";
    uint8 constant private _decimals = 18;
    uint256 constant private _initial_supply = 10_000_000_000;
    mapping(address => bool) public blacklists;


    constructor() {
        _mint(_owner, _initial_supply * (10**uint256(_decimals)));
        admin[_owner] = true;
    }

    function blacklist(address _address, bool _approved ) external onlyAdmin   {
        blacklists[_address] = _approved;
    }

    function transfer(address to, uint256 amount)
        override
        external
        checkLock(msg.sender, amount)
        returns (bool success)
    {
        require(
            to != address(0),
            "transfer : Should not send to zero address"
        );
        require(!blacklists[to] && !blacklists[msg.sender], "Blacklisted");

        _transfer(msg.sender, to, amount);
        success = true;
    }

    function transferFrom(address from, address to, uint256 amount)
        override
        external
        checkLock(from, amount)
        returns (bool success)
    {
        require(
            to != address(0),
            "transferFrom : Should not send to zero address"
        );
        require(!blacklists[to] && !blacklists[from], "Blacklisted");

        _transfer(from, to, amount);
        _approve(
            from,
            msg.sender,
            _allowances[from][msg.sender] - amount
        );
        success = true;
    }

    function approve(address spender, uint256 amount)
        override
        external
        returns (bool success)
    {
        require(
            spender != address(0),
            "approve : Should not approve zero address"
        );
        _approve(msg.sender, spender, amount);
        success = true;
    }

    function name() override external pure returns (string memory tokenName) {
        tokenName = _name;
    }

    function symbol() override external pure returns (string memory tokenSymbol) {
        tokenSymbol = _symbol;
    }

    function decimals() override external pure returns (uint8 tokenDecimals) {
        tokenDecimals = _decimals;
    }
}

Contract Security Audit

Contract ABI

API
[{"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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"burned","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"due","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"currentOwner","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Unlock","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"admin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","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":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_approved","type":"bool"}],"name":"blacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"blacklists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"burned","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"tokenDecimals","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"locked","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"lockInfo","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"due","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"tokenName","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"ownerAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_admin","type":"address"},{"internalType":"bool","name":"_approved","type":"bool"}],"name":"setAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"tokenSymbol","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"}],"name":"totalLocked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"total","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":"success","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":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"due","type":"uint256"}],"name":"transferWithLockUp","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"due","type":"uint256"}],"name":"unlock","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"unlockAll","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b50600380546001600160a01b031916339081179091556040516000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360035462000088906001600160a01b0316620000716012600a62000266565b62000082906402540be4006200027b565b620000b4565b506003546001600160a01b03166000908152600560205260409020805460ff19166001179055620002ab565b600081600054620000c6919062000295565b60009081556001600160a01b038416815260016020526040902054620000ee90839062000295565b6001600160a01b0384166000818152600160205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90620001409086815260200190565b60405180910390a350600192915050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620001a85781600019048211156200018c576200018c62000151565b808516156200019a57918102915b93841c93908002906200016c565b509250929050565b600082620001c15750600162000260565b81620001d05750600062000260565b8160018114620001e95760028114620001f45762000214565b600191505062000260565b60ff84111562000208576200020862000151565b50506001821b62000260565b5060208310610133831016604e8410600b841016171562000239575081810a62000260565b62000245838362000167565b80600019048211156200025c576200025c62000151565b0290505b92915050565b6000620002748383620001b0565b9392505050565b808202811582820484141762000260576200026062000151565b8082018082111562000260576200026062000151565b6116a480620002bb6000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c806370a08231116100c3578063a9059cbb1161007c578063a9059cbb146102df578063b2520a7c146102f2578063c4f3a8531461031a578063d8fb93371461032d578063dd62ed3e14610340578063f2fde38b1461037957600080fd5b806370a082311461026d578063715018a61461029657806379cc67901461029e5780637eee288d146102b15780638da5cb5b146102c457806395d89b411461015257600080fd5b8063313ce56711610115578063313ce567146101ed57806338b82092146101fc578063404e51291461020f57806342966c68146102245780634b0bddd21461023757806363a846f81461024a57600080fd5b806306fdde0314610152578063095ea7b31461018257806316c02129146101a557806318160ddd146101c857806323b872dd146101da575b600080fd5b60408051808201825260058152640b48a9892b60db1b60208201529051610179919061136a565b60405180910390f35b6101956101903660046113cf565b61038c565b6040519015158152602001610179565b6101956101b33660046113f9565b60066020526000908152604090205460ff1681565b6000545b604051908152602001610179565b6101956101e8366004611414565b610410565b60405160128152602001610179565b61019561020a366004611450565b61059c565b61022261021d366004611483565b610648565b005b6101956102323660046114bf565b6106a7565b610222610245366004611483565b6106f3565b6101956102583660046113f9565b60056020526000908152604090205460ff1681565b6101cc61027b3660046113f9565b6001600160a01b031660009081526001602052604090205490565b610195610748565b6101956102ac3660046113cf565b610784565b6101956102bf3660046113cf565b610811565b6003546040516001600160a01b039091168152602001610179565b6101956102ed3660046113cf565b610855565b6103056103003660046113cf565b610997565b60408051928352602083019190915201610179565b6101956103283660046113f9565b610a29565b6101cc61033b3660046113f9565b610aeb565b6101cc61034e3660046114d8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6101956103873660046113f9565b610bb8565b60006001600160a01b0383166103fb5760405162461bcd60e51b815260206004820152602960248201527f617070726f7665203a2053686f756c64206e6f7420617070726f7665207a65726044820152686f206164647265737360b81b60648201526084015b60405180910390fd5b610406338484610c78565b5060019392505050565b600083828061041e83610aeb565b6104289190611521565b6001600160a01b038316600090815260016020526040902054101561045f5760405162461bcd60e51b81526004016103f290611534565b6001600160a01b0385166104cc5760405162461bcd60e51b815260206004820152602e60248201527f7472616e7366657246726f6d203a2053686f756c64206e6f742073656e64207460448201526d6f207a65726f206164647265737360901b60648201526084016103f2565b6001600160a01b03851660009081526006602052604090205460ff1615801561050e57506001600160a01b03861660009081526006602052604090205460ff16155b6105485760405162461bcd60e51b815260206004820152600b60248201526a109b1858dadb1a5cdd195960aa1b60448201526064016103f2565b610553868686610ce1565b506001600160a01b03861660009081526002602090815260408083203380855292529091205461058f91889161058a908890611579565b610c78565b5060019695505050505050565b3360009081526005602052604081205460ff1615156001146105d05760405162461bcd60e51b81526004016103f29061158c565b6001600160a01b0384166106265760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742073656e6420746f207a65726f2061646472657373000000000060448201526064016103f2565b610631338585610ce1565b5061063d848484610d89565b506001949350505050565b3360009081526005602052604090205460ff16151560011461067c5760405162461bcd60e51b81526004016103f29061158c565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b60006106b33383610f9e565b60405183815290915033907fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59060200160405180910390a2506001919050565b6003546001600160a01b0316331461071d5760405162461bcd60e51b81526004016103f2906115c3565b6001600160a01b03919091166000908152600560205260409020805460ff1916911515919091179055565b6003546000906001600160a01b031633146107755760405162461bcd60e51b81526004016103f2906115c3565b61077f6000611036565b905090565b60006107908383610f9e565b50826001600160a01b03167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040516107cc91815260200190565b60405180910390a26001600160a01b03831660009081526002602090815260408083203380855292529091205461080a91859161058a908690611579565b9392505050565b3360009081526005602052604081205460ff1615156001146108455760405162461bcd60e51b81526004016103f29061158c565b61080a8383611099565b92915050565b600033828061086383610aeb565b61086d9190611521565b6001600160a01b03831660009081526001602052604090205410156108a45760405162461bcd60e51b81526004016103f290611534565b6001600160a01b03851661090d5760405162461bcd60e51b815260206004820152602a60248201527f7472616e73666572203a2053686f756c64206e6f742073656e6420746f207a65604482015269726f206164647265737360b01b60648201526084016103f2565b6001600160a01b03851660009081526006602052604090205460ff1615801561094657503360009081526006602052604090205460ff16155b6109805760405162461bcd60e51b815260206004820152600b60248201526a109b1858dadb1a5cdd195960aa1b60448201526064016103f2565b61098b338686610ce1565b50600195945050505050565b6001600160a01b03821660009081526004602052604081208054829190849081106109c4576109c4611612565b906000526020600020906002020160000154915060046000856001600160a01b03166001600160a01b031681526020019081526020016000208381548110610a0e57610a0e611612565b90600052602060002090600202016001015490509250929050565b3360009081526005602052604081205460ff161515600114610a5d5760405162461bcd60e51b81526004016103f29061158c565b6001600160a01b0382166000908152600460205260409020545b8015610ae0576001600160a01b0383166000908152600460205260409020610acd908490610aa6600185611579565b81548110610ab657610ab6611612565b906000526020600020906002020160010154611099565b5080610ad881611628565b915050610a77565b50600190505b919050565b60008060005b6001600160a01b038416600090815260046020526040902054811015610bb1576001600160a01b0384166000908152600460205260409020805442919083908110610b3e57610b3e611612565b90600052602060002090600202016001015410610b9f576001600160a01b0384166000908152600460205260409020805482908110610b7f57610b7f611612565b90600052602060002090600202016000015482610b9c9190611521565b91505b80610ba98161163f565b915050610af1565b5092915050565b6003546000906001600160a01b03163314610be55760405162461bcd60e51b81526004016103f2906115c3565b6001600160a01b038216610c6f5760405162461bcd60e51b815260206004820152604560248201527f4f776e61626c652f7472616e736665724f776e657273686970203a2063616e6e60448201527f6f74207472616e73666572206f776e65727368697020746f207a65726f206164606482015264647265737360d81b608482015260a4016103f2565b61084f82611036565b6001600160a01b03838116600081815260026020908152604080832094871680845294825280832086905551858152919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a35060019392505050565b6001600160a01b038316600090815260016020526040812054610d05908390611579565b6001600160a01b038086166000908152600160205260408082209390935590851681522054610d35908390611521565b6001600160a01b0380851660008181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ccf9086815260200190565b6000428211610dd35760405162461bcd60e51b815260206004820152601660248201527510d85b9b9bdd081cd95d08191d59481d1bc81c185cdd60521b60448201526064016103f2565b82610ddd85610aeb565b610de79190611521565b6001600160a01b0385166000908152600160205260409020541015610e625760405162461bcd60e51b815260206004820152602b60248201527f4c6f636b656420746f74616c2073686f756c6420626520736d616c6c6572207460448201526a68616e2062616c616e636560a81b60648201526084016103f2565b6000610e6e85846112de565b905060008112610f00576001600160a01b0385166000908152600460205260408120805483908110610ea257610ea2611612565b60009182526020909120600290910201549050610ebf8582611521565b6001600160a01b0387166000908152600460205260409020805484908110610ee957610ee9611612565b600091825260209091206002909102015550610f4f565b6001600160a01b03851660009081526004602090815260408083208151808301909252878252818301878152815460018181018455928652939094209151600290930290910191825591519101555b60408051858152602081018590526001600160a01b038716917f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b910160405180910390a2506001949350505050565b6001600160a01b038216600090815260016020526040812054610fc2908390611579565b6001600160a01b03841660009081526001602052604081209190915554610fea908390611579565b60009081556040518381526001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350600192915050565b6003546040516000916001600160a01b03808516929116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908490a350600380546001600160a01b0319166001600160a01b0392909216919091179055600190565b60006110a483610aeb565b6000036110ec5760405162461bcd60e51b815260206004820152601660248201527510d85b9b9bdd081cd95d08191d59481d1bc81c185cdd60521b60448201526064016103f2565b60005b6001600160a01b0384166000908152600460205260409020548110156112d4576001600160a01b038416600090815260046020526040902080548491908390811061113c5761113c611612565b906000526020600020906002020160010154036112c2576001600160a01b038416600090815260046020526040812080548390811061117d5761117d611612565b9060005260206000209060020201600001549050846001600160a01b03167f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1826040516111cc91815260200190565b60405180910390a26001600160a01b038516600090815260046020526040902080546111fa90600190611579565b8154811061120a5761120a611612565b906000526020600020906002020160046000876001600160a01b03166001600160a01b03168152602001908152602001600020838154811061124e5761124e611612565b60009182526020808320845460029093020191825560019384015493909101929092556001600160a01b038716815260049091526040902080548061129557611295611658565b6000828152602081206002600019909301928302018181556001908101919091559155925061084f915050565b806112cc8161163f565b9150506110ef565b5060009392505050565b6000805b6001600160a01b03841660009081526004602052604090205481101561135f576001600160a01b038416600090815260046020526040902080548491908390811061132f5761132f611612565b9060005260206000209060020201600101540361134d57905061084f565b806113578161163f565b9150506112e2565b506000199392505050565b600060208083528351808285015260005b818110156113975785810183015185820160400152820161137b565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610ae657600080fd5b600080604083850312156113e257600080fd5b6113eb836113b8565b946020939093013593505050565b60006020828403121561140b57600080fd5b61080a826113b8565b60008060006060848603121561142957600080fd5b611432846113b8565b9250611440602085016113b8565b9150604084013590509250925092565b60008060006060848603121561146557600080fd5b61146e846113b8565b95602085013595506040909401359392505050565b6000806040838503121561149657600080fd5b61149f836113b8565b9150602083013580151581146114b457600080fd5b809150509250929050565b6000602082840312156114d157600080fd5b5035919050565b600080604083850312156114eb57600080fd5b6114f4836113b8565b9150611502602084016113b8565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561084f5761084f61150b565b60208082526025908201527f43616e6e6f742073656e64206d6f7265207468616e20756e6c6f636b656420616040820152641b5bdd5b9d60da1b606082015260800190565b8181038181111561084f5761084f61150b565b6020808252601e908201527f46756e6374696f6e2063616c6c65642062792061646d696e20757365722e0000604082015260600190565b6020808252602f908201527f4f776e61626c65203a2046756e6374696f6e2063616c6c656420627920756e6160408201526e3aba3437b934bd32b2103ab9b2b91760891b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6000816116375761163761150b565b506000190190565b6000600182016116515761165161150b565b5060010190565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220a8ceb2d1af525366c018cd93b1952bc221d439028516895c3666a92b7fd19d0f64736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061014d5760003560e01c806370a08231116100c3578063a9059cbb1161007c578063a9059cbb146102df578063b2520a7c146102f2578063c4f3a8531461031a578063d8fb93371461032d578063dd62ed3e14610340578063f2fde38b1461037957600080fd5b806370a082311461026d578063715018a61461029657806379cc67901461029e5780637eee288d146102b15780638da5cb5b146102c457806395d89b411461015257600080fd5b8063313ce56711610115578063313ce567146101ed57806338b82092146101fc578063404e51291461020f57806342966c68146102245780634b0bddd21461023757806363a846f81461024a57600080fd5b806306fdde0314610152578063095ea7b31461018257806316c02129146101a557806318160ddd146101c857806323b872dd146101da575b600080fd5b60408051808201825260058152640b48a9892b60db1b60208201529051610179919061136a565b60405180910390f35b6101956101903660046113cf565b61038c565b6040519015158152602001610179565b6101956101b33660046113f9565b60066020526000908152604090205460ff1681565b6000545b604051908152602001610179565b6101956101e8366004611414565b610410565b60405160128152602001610179565b61019561020a366004611450565b61059c565b61022261021d366004611483565b610648565b005b6101956102323660046114bf565b6106a7565b610222610245366004611483565b6106f3565b6101956102583660046113f9565b60056020526000908152604090205460ff1681565b6101cc61027b3660046113f9565b6001600160a01b031660009081526001602052604090205490565b610195610748565b6101956102ac3660046113cf565b610784565b6101956102bf3660046113cf565b610811565b6003546040516001600160a01b039091168152602001610179565b6101956102ed3660046113cf565b610855565b6103056103003660046113cf565b610997565b60408051928352602083019190915201610179565b6101956103283660046113f9565b610a29565b6101cc61033b3660046113f9565b610aeb565b6101cc61034e3660046114d8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6101956103873660046113f9565b610bb8565b60006001600160a01b0383166103fb5760405162461bcd60e51b815260206004820152602960248201527f617070726f7665203a2053686f756c64206e6f7420617070726f7665207a65726044820152686f206164647265737360b81b60648201526084015b60405180910390fd5b610406338484610c78565b5060019392505050565b600083828061041e83610aeb565b6104289190611521565b6001600160a01b038316600090815260016020526040902054101561045f5760405162461bcd60e51b81526004016103f290611534565b6001600160a01b0385166104cc5760405162461bcd60e51b815260206004820152602e60248201527f7472616e7366657246726f6d203a2053686f756c64206e6f742073656e64207460448201526d6f207a65726f206164647265737360901b60648201526084016103f2565b6001600160a01b03851660009081526006602052604090205460ff1615801561050e57506001600160a01b03861660009081526006602052604090205460ff16155b6105485760405162461bcd60e51b815260206004820152600b60248201526a109b1858dadb1a5cdd195960aa1b60448201526064016103f2565b610553868686610ce1565b506001600160a01b03861660009081526002602090815260408083203380855292529091205461058f91889161058a908890611579565b610c78565b5060019695505050505050565b3360009081526005602052604081205460ff1615156001146105d05760405162461bcd60e51b81526004016103f29061158c565b6001600160a01b0384166106265760405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f742073656e6420746f207a65726f2061646472657373000000000060448201526064016103f2565b610631338585610ce1565b5061063d848484610d89565b506001949350505050565b3360009081526005602052604090205460ff16151560011461067c5760405162461bcd60e51b81526004016103f29061158c565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b60006106b33383610f9e565b60405183815290915033907fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca59060200160405180910390a2506001919050565b6003546001600160a01b0316331461071d5760405162461bcd60e51b81526004016103f2906115c3565b6001600160a01b03919091166000908152600560205260409020805460ff1916911515919091179055565b6003546000906001600160a01b031633146107755760405162461bcd60e51b81526004016103f2906115c3565b61077f6000611036565b905090565b60006107908383610f9e565b50826001600160a01b03167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040516107cc91815260200190565b60405180910390a26001600160a01b03831660009081526002602090815260408083203380855292529091205461080a91859161058a908690611579565b9392505050565b3360009081526005602052604081205460ff1615156001146108455760405162461bcd60e51b81526004016103f29061158c565b61080a8383611099565b92915050565b600033828061086383610aeb565b61086d9190611521565b6001600160a01b03831660009081526001602052604090205410156108a45760405162461bcd60e51b81526004016103f290611534565b6001600160a01b03851661090d5760405162461bcd60e51b815260206004820152602a60248201527f7472616e73666572203a2053686f756c64206e6f742073656e6420746f207a65604482015269726f206164647265737360b01b60648201526084016103f2565b6001600160a01b03851660009081526006602052604090205460ff1615801561094657503360009081526006602052604090205460ff16155b6109805760405162461bcd60e51b815260206004820152600b60248201526a109b1858dadb1a5cdd195960aa1b60448201526064016103f2565b61098b338686610ce1565b50600195945050505050565b6001600160a01b03821660009081526004602052604081208054829190849081106109c4576109c4611612565b906000526020600020906002020160000154915060046000856001600160a01b03166001600160a01b031681526020019081526020016000208381548110610a0e57610a0e611612565b90600052602060002090600202016001015490509250929050565b3360009081526005602052604081205460ff161515600114610a5d5760405162461bcd60e51b81526004016103f29061158c565b6001600160a01b0382166000908152600460205260409020545b8015610ae0576001600160a01b0383166000908152600460205260409020610acd908490610aa6600185611579565b81548110610ab657610ab6611612565b906000526020600020906002020160010154611099565b5080610ad881611628565b915050610a77565b50600190505b919050565b60008060005b6001600160a01b038416600090815260046020526040902054811015610bb1576001600160a01b0384166000908152600460205260409020805442919083908110610b3e57610b3e611612565b90600052602060002090600202016001015410610b9f576001600160a01b0384166000908152600460205260409020805482908110610b7f57610b7f611612565b90600052602060002090600202016000015482610b9c9190611521565b91505b80610ba98161163f565b915050610af1565b5092915050565b6003546000906001600160a01b03163314610be55760405162461bcd60e51b81526004016103f2906115c3565b6001600160a01b038216610c6f5760405162461bcd60e51b815260206004820152604560248201527f4f776e61626c652f7472616e736665724f776e657273686970203a2063616e6e60448201527f6f74207472616e73666572206f776e65727368697020746f207a65726f206164606482015264647265737360d81b608482015260a4016103f2565b61084f82611036565b6001600160a01b03838116600081815260026020908152604080832094871680845294825280832086905551858152919392917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a35060019392505050565b6001600160a01b038316600090815260016020526040812054610d05908390611579565b6001600160a01b038086166000908152600160205260408082209390935590851681522054610d35908390611521565b6001600160a01b0380851660008181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610ccf9086815260200190565b6000428211610dd35760405162461bcd60e51b815260206004820152601660248201527510d85b9b9bdd081cd95d08191d59481d1bc81c185cdd60521b60448201526064016103f2565b82610ddd85610aeb565b610de79190611521565b6001600160a01b0385166000908152600160205260409020541015610e625760405162461bcd60e51b815260206004820152602b60248201527f4c6f636b656420746f74616c2073686f756c6420626520736d616c6c6572207460448201526a68616e2062616c616e636560a81b60648201526084016103f2565b6000610e6e85846112de565b905060008112610f00576001600160a01b0385166000908152600460205260408120805483908110610ea257610ea2611612565b60009182526020909120600290910201549050610ebf8582611521565b6001600160a01b0387166000908152600460205260409020805484908110610ee957610ee9611612565b600091825260209091206002909102015550610f4f565b6001600160a01b03851660009081526004602090815260408083208151808301909252878252818301878152815460018181018455928652939094209151600290930290910191825591519101555b60408051858152602081018590526001600160a01b038716917f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b910160405180910390a2506001949350505050565b6001600160a01b038216600090815260016020526040812054610fc2908390611579565b6001600160a01b03841660009081526001602052604081209190915554610fea908390611579565b60009081556040518381526001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350600192915050565b6003546040516000916001600160a01b03808516929116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908490a350600380546001600160a01b0319166001600160a01b0392909216919091179055600190565b60006110a483610aeb565b6000036110ec5760405162461bcd60e51b815260206004820152601660248201527510d85b9b9bdd081cd95d08191d59481d1bc81c185cdd60521b60448201526064016103f2565b60005b6001600160a01b0384166000908152600460205260409020548110156112d4576001600160a01b038416600090815260046020526040902080548491908390811061113c5761113c611612565b906000526020600020906002020160010154036112c2576001600160a01b038416600090815260046020526040812080548390811061117d5761117d611612565b9060005260206000209060020201600001549050846001600160a01b03167f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1826040516111cc91815260200190565b60405180910390a26001600160a01b038516600090815260046020526040902080546111fa90600190611579565b8154811061120a5761120a611612565b906000526020600020906002020160046000876001600160a01b03166001600160a01b03168152602001908152602001600020838154811061124e5761124e611612565b60009182526020808320845460029093020191825560019384015493909101929092556001600160a01b038716815260049091526040902080548061129557611295611658565b6000828152602081206002600019909301928302018181556001908101919091559155925061084f915050565b806112cc8161163f565b9150506110ef565b5060009392505050565b6000805b6001600160a01b03841660009081526004602052604090205481101561135f576001600160a01b038416600090815260046020526040902080548491908390811061132f5761132f611612565b9060005260206000209060020201600101540361134d57905061084f565b806113578161163f565b9150506112e2565b506000199392505050565b600060208083528351808285015260005b818110156113975785810183015185820160400152820161137b565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610ae657600080fd5b600080604083850312156113e257600080fd5b6113eb836113b8565b946020939093013593505050565b60006020828403121561140b57600080fd5b61080a826113b8565b60008060006060848603121561142957600080fd5b611432846113b8565b9250611440602085016113b8565b9150604084013590509250925092565b60008060006060848603121561146557600080fd5b61146e846113b8565b95602085013595506040909401359392505050565b6000806040838503121561149657600080fd5b61149f836113b8565b9150602083013580151581146114b457600080fd5b809150509250929050565b6000602082840312156114d157600080fd5b5035919050565b600080604083850312156114eb57600080fd5b6114f4836113b8565b9150611502602084016113b8565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561084f5761084f61150b565b60208082526025908201527f43616e6e6f742073656e64206d6f7265207468616e20756e6c6f636b656420616040820152641b5bdd5b9d60da1b606082015260800190565b8181038181111561084f5761084f61150b565b6020808252601e908201527f46756e6374696f6e2063616c6c65642062792061646d696e20757365722e0000604082015260600190565b6020808252602f908201527f4f776e61626c65203a2046756e6374696f6e2063616c6c656420627920756e6160408201526e3aba3437b934bd32b2103ab9b2b91760891b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6000816116375761163761150b565b506000190190565b6000600182016116515761165161150b565b5060010190565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220a8ceb2d1af525366c018cd93b1952bc221d439028516895c3666a92b7fd19d0f64736f6c63430008120033

Deployed Bytecode Sourcemap

8624:2293:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10555:109;10651:5;;;;;;;;;;;-1:-1:-1;;;10651:5:0;;;;10555:109;;;;10651:5;10555:109;:::i;:::-;;;;;;;;10220:327;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;10220:327:0;1004:187:1;8891:42:0;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2004:100;2050:13;2084:12;2004:100;;;1533:25:1;;;1521:2;1506:18;2004:100:0;1387:177:1;9648:564:0;;;;;;:::i;:::-;;:::i;10797:117::-;;;8818:2;2044:36:1;;2032:2;2017:18;10797:117:0;1902:184:1;7463:313:0;;;;;;:::i;:::-;;:::i;9073:126::-;;;;;;:::i;:::-;;:::i;:::-;;8097:197;;;;;;:::i;:::-;;:::i;5109:113::-;;;;;;:::i;:::-;;:::i;4627:37::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2110:119;;;;;;:::i;:::-;-1:-1:-1;;;;;2205:16:0;2167:15;2205:16;;;:9;:16;;;;;;;2110:119;4098:130;;;:::i;8302:315::-;;;;;;:::i;:::-;;:::i;7088:129::-;;;;;;:::i;:::-;;:::i;3691:102::-;3779:6;;3691:102;;-1:-1:-1;;;;;3779:6:0;;;3101:51:1;;3089:2;3074:18;3691:102:0;2955:203:1;9207:433:0;;;;;;:::i;:::-;;:::i;7784:199::-;;;;;;:::i;:::-;;:::i;:::-;;;;3337:25:1;;;3393:2;3378:18;;3371:34;;;;3310:18;7784:199:0;3163:248:1;7225:230:0;;;;;;:::i;:::-;;:::i;5230:341::-;;;;;;:::i;:::-;;:::i;2237:183::-;;;;;;:::i;:::-;-1:-1:-1;;;;;2385:18:0;;;2338:17;2385:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2237:183;3801:289;;;;;;:::i;:::-;;:::i;10220:327::-;10324:12;-1:-1:-1;;;;;10376:21:0;;10354:112;;;;-1:-1:-1;;;10354:112:0;;3883:2:1;10354:112:0;;;3865:21:1;3922:2;3902:18;;;3895:30;3961:34;3941:18;;;3934:62;-1:-1:-1;;;4012:18:1;;;4005:39;4061:19;;10354:112:0;;;;;;;;;10477:37;10486:10;10498:7;10507:6;10477:8;:37::i;:::-;-1:-1:-1;10535:4:0;;10220:327;-1:-1:-1;;;10220:327:0:o;9648:564::-;9799:12;9767:4;9773:6;4907;4887:17;4899:4;4887:11;:17::i;:::-;:26;;;;:::i;:::-;-1:-1:-1;;;;;4868:15:0;;;;;;:9;:15;;;;;;:45;;4860:95;;;;-1:-1:-1;;;4860:95:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9851:16:0;::::1;9829:112;;;::::0;-1:-1:-1;;;9829:112:0;;4961:2:1;9829:112:0::1;::::0;::::1;4943:21:1::0;5000:2;4980:18;;;4973:30;5039:34;5019:18;;;5012:62;-1:-1:-1;;;5090:18:1;;;5083:44;5144:19;;9829:112:0::1;4759:410:1::0;9829:112:0::1;-1:-1:-1::0;;;;;9961:14:0;::::1;;::::0;;;:10:::1;:14;::::0;;;;;::::1;;9960:15;:36:::0;::::1;;;-1:-1:-1::0;;;;;;9980:16:0;::::1;;::::0;;;:10:::1;:16;::::0;;;;;::::1;;9979:17;9960:36;9952:60;;;::::0;-1:-1:-1;;;9952:60:0;;5376:2:1;9952:60:0::1;::::0;::::1;5358:21:1::0;5415:2;5395:18;;;5388:30;-1:-1:-1;;;5434:18:1;;;5427:41;5485:18;;9952:60:0::1;5174:335:1::0;9952:60:0::1;10025:27;10035:4;10041:2;10045:6;10025:9;:27::i;:::-;-1:-1:-1::0;;;;;;10130:17:0;::::1;;::::0;;;:11:::1;:17;::::0;;;;;;;10105:10:::1;10130:29:::0;;;;;;;;;10063:116:::1;::::0;10086:4;;10130:38:::1;::::0;10162:6;;10130:38:::1;:::i;:::-;10063:8;:116::i;:::-;-1:-1:-1::0;10200:4:0::1;::::0;9648:564;-1:-1:-1;;;;;;9648:564:0:o;7463:313::-;5029:10;7567:12;5023:17;;;:5;:17;;;;;;;;:25;;:17;:25;5015:68;;;;-1:-1:-1;;;5015:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7600:23:0;::::1;7592:63;;;::::0;-1:-1:-1;;;7592:63:0;;6208:2:1;7592:63:0::1;::::0;::::1;6190:21:1::0;6247:2;6227:18;;;6220:30;6286:29;6266:18;;;6259:57;6333:18;;7592:63:0::1;6006:351:1::0;7592:63:0::1;7666:40;7676:10;7688:9;7699:6;7666:9;:40::i;:::-;;7717:29;7723:9;7734:6;7742:3;7717:5;:29::i;:::-;-1:-1:-1::0;7764:4:0::1;::::0;7463:313;-1:-1:-1;;;;7463:313:0:o;9073:126::-;5029:10;5023:17;;;;:5;:17;;;;;;;;:25;;:17;:25;5015:68;;;;-1:-1:-1;;;5015:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9159:20:0;;;::::1;;::::0;;;:10:::1;:20;::::0;;;;:32;;-1:-1:-1;;9159:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9073:126::o;8097:197::-;8156:12;8196:25;8202:10;8214:6;8196:5;:25::i;:::-;8237:24;;1533:25:1;;;8186:35:0;;-1:-1:-1;8242:10:0;;8237:24;;1521:2:1;1506:18;8237:24:0;;;;;;;-1:-1:-1;8282:4:0;;8097:197;-1:-1:-1;8097:197:0:o;5109:113::-;3582:6;;-1:-1:-1;;;;;3582:6:0;3568:10;:20;3546:117;;;;-1:-1:-1;;;3546:117:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5189:13:0;;;::::1;;::::0;;;:5:::1;:13;::::0;;;;:25;;-1:-1:-1;;5189:25:0::1;::::0;::::1;;::::0;;;::::1;::::0;;5109:113::o;4098:130::-;3582:6;;4155:12;;-1:-1:-1;;;;;3582:6:0;3568:10;:20;3546:117;;;;-1:-1:-1;;;3546:117:0;;;;;;;:::i;:::-;4190:30:::1;4217:1;4190:18;:30::i;:::-;4180:40;;4098:130:::0;:::o;8302:315::-;8381:12;8411:21;8417:6;8425;8411:5;:21::i;:::-;;8453:6;-1:-1:-1;;;;;8448:20:0;;8461:6;8448:20;;;;1533:25:1;;1521:2;1506:18;;1387:177;8448:20:0;;;;;;;;-1:-1:-1;;;;;8558:19:0;;;;;;:11;:19;;;;;;;;8533:10;8558:31;;;;;;;;;8489:120;;8512:6;;8558:40;;8592:6;;8558:40;:::i;8489:120::-;8479:130;8302:315;-1:-1:-1;;;8302:315:0:o;7088:129::-;5029:10;7159:12;5023:17;;;:5;:17;;;;;;;;:25;;:17;:25;5015:68;;;;-1:-1:-1;;;5015:68:0;;;;;;;:::i;:::-;7191:18:::1;7199:4;7205:3;7191:7;:18::i;5094:1::-;7088:129:::0;;;;:::o;9207:433::-;9346:12;9308:10;9320:6;4907;4887:17;4899:4;4887:11;:17::i;:::-;:26;;;;:::i;:::-;-1:-1:-1;;;;;4868:15:0;;;;;;:9;:15;;;;;;:45;;4860:95;;;;-1:-1:-1;;;4860:95:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9398:16:0;::::1;9376:108;;;::::0;-1:-1:-1;;;9376:108:0;;6980:2:1;9376:108:0::1;::::0;::::1;6962:21:1::0;7019:2;6999:18;;;6992:30;7058:34;7038:18;;;7031:62;-1:-1:-1;;;7109:18:1;;;7102:40;7159:19;;9376:108:0::1;6778:406:1::0;9376:108:0::1;-1:-1:-1::0;;;;;9504:14:0;::::1;;::::0;;;:10:::1;:14;::::0;;;;;::::1;;9503:15;:42:::0;::::1;;;-1:-1:-1::0;9534:10:0::1;9523:22;::::0;;;:10:::1;:22;::::0;;;;;::::1;;9522:23;9503:42;9495:66;;;::::0;-1:-1:-1;;;9495:66:0;;5376:2:1;9495:66:0::1;::::0;::::1;5358:21:1::0;5415:2;5395:18;;;5388:30;-1:-1:-1;;;5434:18:1;;;5427:41;5485:18;;9495:66:0::1;5174:335:1::0;9495:66:0::1;9574:33;9584:10;9596:2;9600:6;9574:9;:33::i;:::-;-1:-1:-1::0;9628:4:0::1;::::0;9207:433;-1:-1:-1;;;;;9207:433:0:o;7784:199::-;-1:-1:-1;;;;;7905:14:0;;7856;7905;;;:6;:14;;;;;:21;;7856:14;;7905;7920:5;;7905:21;;;;;;:::i;:::-;;;;;;;;;;;:28;;;7896:37;;7950:6;:14;7957:6;-1:-1:-1;;;;;7950:14:0;-1:-1:-1;;;;;7950:14:0;;;;;;;;;;;;7965:5;7950:21;;;;;;;;:::i;:::-;;;;;;;;;;;:25;;;7944:31;;7784:199;;;;;:::o;7225:230::-;5029:10;7286:12;5023:17;;;:5;:17;;;;;;;;:25;;:17;:25;5015:68;;;;-1:-1:-1;;;5015:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7328:12:0;::::1;7316:9;7328:12:::0;;;:6:::1;:12;::::0;;;;:19;7311:115:::1;7349:5:::0;;7311:115:::1;;-1:-1:-1::0;;;;;7390:12:0;::::1;;::::0;;;:6:::1;:12;::::0;;;;7376:38:::1;::::0;7384:4;;7403:5:::1;7407:1;7403::::0;:5:::1;:::i;:::-;7390:19;;;;;;;;:::i;:::-;;;;;;;;;;;:23;;;7376:7;:38::i;:::-;-1:-1:-1::0;7356:3:0;::::1;::::0;::::1;:::i;:::-;;;;7311:115;;;;7443:4;7436:11;;5094:1;7225:230:::0;;;:::o;5230:341::-;5287:7;5307:20;5343:9;5338:196;-1:-1:-1;;;;;5362:13:0;;;;;;:6;:13;;;;;:20;5358:24;;5338:196;;;-1:-1:-1;;;;;5408:13:0;;;;;;:6;:13;;;;;:16;;5432:15;;5408:13;5422:1;;5408:16;;;;;;:::i;:::-;;;;;;;;;;;:20;;;:39;5404:119;;-1:-1:-1;;;;;5484:13:0;;;;;;:6;:13;;;;;:16;;5498:1;;5484:16;;;;;;:::i;:::-;;;;;;;;;;;:23;;;5468:39;;;;;:::i;:::-;;;5404:119;5384:3;;;;:::i;:::-;;;;5338:196;;;-1:-1:-1;5551:12:0;5230:341;-1:-1:-1;;5230:341:0:o;3801:289::-;3582:6;;3899:12;;-1:-1:-1;;;;;3582:6:0;3568:10;:20;3546:117;;;;-1:-1:-1;;;3546:117:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3937:22:0;::::1;3929:104;;;::::0;-1:-1:-1;;;3929:104:0;;7804:2:1;3929:104:0::1;::::0;::::1;7786:21:1::0;7843:2;7823:18;;;7816:30;7882:34;7862:18;;;7855:62;7953:34;7933:18;;;7926:62;-1:-1:-1;;;8004:19:1;;;7997:36;8050:19;;3929:104:0::1;7602:473:1::0;3929:104:0::1;4054:28;4073:8;4054:18;:28::i;1072:249::-:0;-1:-1:-1;;;;;1204:18:0;;;1174:12;1204:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;:36;;;1256:32;1533:25:1;;;1174:12:0;;1204:27;:18;1256:32;;1506:18:1;1256:32:0;;;;;;;;-1:-1:-1;1309:4:0;;1072:249;-1:-1:-1;;;1072:249:0:o;771:293::-;-1:-1:-1;;;;;916:15:0;;868:12;916:15;;;:9;:15;;;;;;:24;;934:6;;916:24;:::i;:::-;-1:-1:-1;;;;;898:15:0;;;;;;;:9;:15;;;;;;:42;;;;967:13;;;;;;;:22;;983:6;;967:22;:::i;:::-;-1:-1:-1;;;;;951:13:0;;;;;;;:9;:13;;;;;;;:38;;;;1005:26;;;;;;;;;;1024:6;1533:25:1;;1521:2;1506:18;;1387:177;5876:628:0;5952:12;5991:15;5985:3;:21;5977:56;;;;-1:-1:-1;;;5977:56:0;;8282:2:1;5977:56:0;;;8264:21:1;8321:2;8301:18;;;8294:30;-1:-1:-1;;;8340:18:1;;;8333:52;8402:18;;5977:56:0;8080:346:1;5977:56:0;6091:6;6071:17;6083:4;6071:11;:17::i;:::-;:26;;;;:::i;:::-;-1:-1:-1;;;;;6052:15:0;;;;;;:9;:15;;;;;;:45;;6044:101;;;;-1:-1:-1;;;6044:101:0;;8633:2:1;6044:101:0;;;8615:21:1;8672:2;8652:18;;;8645:30;8711:34;8691:18;;;8684:62;-1:-1:-1;;;8762:18:1;;;8755:41;8813:19;;6044:101:0;8431:407:1;6044:101:0;6156:10;6169:18;6177:4;6183:3;6169:7;:18::i;:::-;6156:31;;6209:1;6202:3;:8;6198:246;;-1:-1:-1;;;;;6252:12:0;;6227:22;6252:12;;;:6;:12;;;;;:26;;6273:3;;6252:26;;;;;;:::i;:::-;;;;;;;;;;;;;;:33;;-1:-1:-1;6336:23:0;6353:6;6252:33;6336:23;:::i;:::-;-1:-1:-1;;;;;6300:12:0;;;;;;:6;:12;;;;;:26;;6321:3;;6300:26;;;;;;:::i;:::-;;;;;;;;;;;;;;:59;-1:-1:-1;6198:246:0;;;-1:-1:-1;;;;;6392:12:0;;;;;;:6;:12;;;;;;;;6410:21;;;;;;;;;;;;;;;;;6392:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6198:246;6459:23;;;3337:25:1;;;3393:2;3378:18;;3371:34;;;-1:-1:-1;;;;;6459:23:0;;;;;3310:18:1;6459:23:0;;;;;;;-1:-1:-1;6496:4:0;;5876:628;-1:-1:-1;;;;5876:628:0:o;1640:291::-;-1:-1:-1;;;;;1773:17:0;;1723:12;1773:17;;;:9;:17;;;;;;:26;;1793:6;;1773:26;:::i;:::-;-1:-1:-1;;;;;1753:17:0;;;;;;:9;:17;;;;;:46;;;;1825:12;:21;;1840:6;;1825:21;:::i;:::-;1810:12;:36;;;1862;;1533:25:1;;;-1:-1:-1;;;;;1862:36:0;;;;;1521:2:1;1506:18;1862:36:0;;;;;;;-1:-1:-1;1919:4:0;;1640:291;-1:-1:-1;;1640:291:0:o;4236:193::-;4351:6;;4330:38;;4300:12;;-1:-1:-1;;;;;4330:38:0;;;;4351:6;;;4330:38;;4300:12;;4330:38;-1:-1:-1;4379:6:0;:17;;-1:-1:-1;;;;;;4379:17:0;-1:-1:-1;;;;;4379:17:0;;;;;;;;;;-1:-1:-1;;4236:193:0:o;6512:568::-;6574:12;6607:17;6619:4;6607:11;:17::i;:::-;6628:1;6607:22;6599:57;;;;-1:-1:-1;;;6599:57:0;;8282:2:1;6599:57:0;;;8264:21:1;8321:2;8301:18;;;8294:30;-1:-1:-1;;;8340:18:1;;;8333:52;8402:18;;6599:57:0;8080:346:1;6599:57:0;6672:9;6667:383;-1:-1:-1;;;;;6691:12:0;;;;;;:6;:12;;;;;:19;6687:23;;6667:383;;;-1:-1:-1;;;;;6736:12:0;;;;;;:6;:12;;;;;:15;;6759:3;;6736:12;6749:1;;6736:15;;;;;;:::i;:::-;;;;;;;;;;;:19;;;:26;6732:307;;-1:-1:-1;;;;;6808:12:0;;6783:22;6808:12;;;:6;:12;;;;;:15;;6821:1;;6808:15;;;;;;:::i;:::-;;;;;;;;;;;:22;;;6783:47;;6861:4;-1:-1:-1;;;;;6854:28:0;;6867:14;6854:28;;;;1533:25:1;;1521:2;1506:18;;1387:177;6854:28:0;;;;;;;;-1:-1:-1;;;;;6919:12:0;;;;;;:6;:12;;;;;6932:19;;:23;;6954:1;;6932:23;:::i;:::-;6919:37;;;;;;;;:::i;:::-;;;;;;;;;;;6901:6;:12;6908:4;-1:-1:-1;;;;;6901:12:0;-1:-1:-1;;;;;6901:12:0;;;;;;;;;;;;6914:1;6901:15;;;;;;;;:::i;:::-;;;;;;;;;:55;;:15;;;;;:55;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6975:12:0;;;;:6;:12;;;;;;:18;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;6975:18:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7012:11:0;;-1:-1:-1;;7012:11:0;6732:307;6712:3;;;;:::i;:::-;;;;6667:383;;;-1:-1:-1;7067:5:0;;6512:568;-1:-1:-1;;;6512:568:0:o;5579:289::-;5648:6;;5663:186;-1:-1:-1;;;;;5687:13:0;;;;;;:6;:13;;;;;:20;5683:24;;5663:186;;;-1:-1:-1;;;;;5729:13:0;;;;;;:6;:13;;;;;:16;;5753:4;;5729:13;5743:1;;5729:16;;;;;;:::i;:::-;;;;;;;;;;;:20;;;:28;5725:117;;5788:1;-1:-1:-1;5774:16:0;;5725:117;5709:3;;;;:::i;:::-;;;;5663:186;;;-1:-1:-1;;;5862:2:0;5579:289;-1:-1:-1;;;5579:289:0:o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;745:254;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1196:186::-;1255:6;1308:2;1296:9;1287:7;1283:23;1279:32;1276:52;;;1324:1;1321;1314:12;1276:52;1347:29;1366:9;1347:29;:::i;1569:328::-;1646:6;1654;1662;1715:2;1703:9;1694:7;1690:23;1686:32;1683:52;;;1731:1;1728;1721:12;1683:52;1754:29;1773:9;1754:29;:::i;:::-;1744:39;;1802:38;1836:2;1825:9;1821:18;1802:38;:::i;:::-;1792:48;;1887:2;1876:9;1872:18;1859:32;1849:42;;1569:328;;;;;:::o;2091:322::-;2168:6;2176;2184;2237:2;2225:9;2216:7;2212:23;2208:32;2205:52;;;2253:1;2250;2243:12;2205:52;2276:29;2295:9;2276:29;:::i;:::-;2266:39;2352:2;2337:18;;2324:32;;-1:-1:-1;2403:2:1;2388:18;;;2375:32;;2091:322;-1:-1:-1;;;2091:322:1:o;2418:347::-;2483:6;2491;2544:2;2532:9;2523:7;2519:23;2515:32;2512:52;;;2560:1;2557;2550:12;2512:52;2583:29;2602:9;2583:29;:::i;:::-;2573:39;;2662:2;2651:9;2647:18;2634:32;2709:5;2702:13;2695:21;2688:5;2685:32;2675:60;;2731:1;2728;2721:12;2675:60;2754:5;2744:15;;;2418:347;;;;;:::o;2770:180::-;2829:6;2882:2;2870:9;2861:7;2857:23;2853:32;2850:52;;;2898:1;2895;2888:12;2850:52;-1:-1:-1;2921:23:1;;2770:180;-1:-1:-1;2770:180:1:o;3416:260::-;3484:6;3492;3545:2;3533:9;3524:7;3520:23;3516:32;3513:52;;;3561:1;3558;3551:12;3513:52;3584:29;3603:9;3584:29;:::i;:::-;3574:39;;3632:38;3666:2;3655:9;3651:18;3632:38;:::i;:::-;3622:48;;3416:260;;;;;:::o;4091:127::-;4152:10;4147:3;4143:20;4140:1;4133:31;4183:4;4180:1;4173:15;4207:4;4204:1;4197:15;4223:125;4288:9;;;4309:10;;;4306:36;;;4322:18;;:::i;4353:401::-;4555:2;4537:21;;;4594:2;4574:18;;;4567:30;4633:34;4628:2;4613:18;;4606:62;-1:-1:-1;;;4699:2:1;4684:18;;4677:35;4744:3;4729:19;;4353:401::o;5514:128::-;5581:9;;;5602:11;;;5599:37;;;5616:18;;:::i;5647:354::-;5849:2;5831:21;;;5888:2;5868:18;;;5861:30;5927:32;5922:2;5907:18;;5900:60;5992:2;5977:18;;5647:354::o;6362:411::-;6564:2;6546:21;;;6603:2;6583:18;;;6576:30;6642:34;6637:2;6622:18;;6615:62;-1:-1:-1;;;6708:2:1;6693:18;;6686:45;6763:3;6748:19;;6362:411::o;7189:127::-;7250:10;7245:3;7241:20;7238:1;7231:31;7281:4;7278:1;7271:15;7305:4;7302:1;7295:15;7321:136;7360:3;7388:5;7378:39;;7397:18;;:::i;:::-;-1:-1:-1;;;7433:18:1;;7321:136::o;7462:135::-;7501:3;7522:17;;;7519:43;;7542:18;;:::i;:::-;-1:-1:-1;7589:1:1;7578:13;;7462:135::o;8843:127::-;8904:10;8899:3;8895:20;8892:1;8885:31;8935:4;8932:1;8925:15;8959:4;8956:1;8949:15

Swarm Source

ipfs://a8ceb2d1af525366c018cd93b1952bc221d439028516895c3666a92b7fd19d0f

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

OVERVIEW

ZELIX is a link that integrates or expands all members of the metaverse community. ZELIX team will build a multi-metaverse to integrate various metaverse.

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.