ETH Price: $3,364.63 (-1.59%)

Token

battle esports coin (BES)
 

Overview

Max Total Supply

100,000,000,000 BES

Holders

3,663

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
3,084,722.22 BES

Value
$0.00
0x393a9693142268898a90dc5a77e3c72fecf12fad
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
BES

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-11-07
*/

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}
interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}
contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    uint256 private _totalSupply;
    string private _name;
    string private _symbol;
    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }
    function name() public view virtual override returns (string memory) {
        return _name;
    }
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

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

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

        _beforeTokenTransfer(sender, recipient, amount);

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

        emit Transfer(sender, recipient, amount);

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

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

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

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

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

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

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

        _afterTokenTransfer(account, address(0), amount);
    }
    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}
abstract contract ERC20Burnable is Context, ERC20 {
    function burn(uint256 amount) public virtual {
        _burn(_msgSender(), amount);
    }
    function burnFrom(address account, uint256 amount) public virtual {
        uint256 currentAllowance = allowance(account, _msgSender());
        require(currentAllowance >= amount, "ERC20: burn amount exceeds allowance");
        unchecked {
            _approve(account, _msgSender(), currentAllowance - amount);
        }
        _burn(account, amount);
    }
}
abstract contract Pausable is Context {
    event Paused(address account);
    event Unpaused(address account);
    bool private _paused;
    constructor() {
        _paused = false;
    }
    function paused() public view virtual returns (bool) {
        return _paused;
    }
    modifier whenNotPaused() {
        require(!paused(), "Pausable: paused");
        _;
    }
    modifier whenPaused() {
        require(paused(), "Pausable: not paused");
        _;
    }
    function _pause() internal virtual whenNotPaused {
        _paused = true;
        emit Paused(_msgSender());
    }
    function _unpause() internal virtual whenPaused {
        _paused = false;
        emit Unpaused(_msgSender());
    }
}
interface IAccessControl {
    event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole);
    event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender);
    event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender);
    function hasRole(bytes32 role, address account) external view returns (bool);
    function getRoleAdmin(bytes32 role) external view returns (bytes32);
    function grantRole(bytes32 role, address account) external;
    function revokeRole(bytes32 role, address account) external;
    function renounceRole(bytes32 role, address account) external;
}
library Strings {
    bytes16 private constant _HEX_SYMBOLS = "0123456789abcdef";
    function toString(uint256 value) internal pure returns (string memory) {
        if (value == 0) {
            return "0";
        }
        uint256 temp = value;
        uint256 digits;
        while (temp != 0) {
            digits++;
            temp /= 10;
        }
        bytes memory buffer = new bytes(digits);
        while (value != 0) {
            digits -= 1;
            buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));
            value /= 10;
        }
        return string(buffer);
    }
    function toHexString(uint256 value) internal pure returns (string memory) {
        if (value == 0) {
            return "0x00";
        }
        uint256 temp = value;
        uint256 length = 0;
        while (temp != 0) {
            length++;
            temp >>= 8;
        }
        return toHexString(value, length);
    }
    function toHexString(uint256 value, uint256 length) internal pure returns (string memory) {
        bytes memory buffer = new bytes(2 * length + 2);
        buffer[0] = "0";
        buffer[1] = "x";
        for (uint256 i = 2 * length + 1; i > 1; --i) {
            buffer[i] = _HEX_SYMBOLS[value & 0xf];
            value >>= 4;
        }
        require(value == 0, "Strings: hex length insufficient");
        return string(buffer);
    }
}
interface IERC165 {
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}
abstract contract ERC165 is IERC165 {
    function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
        return interfaceId == type(IERC165).interfaceId;
    }
}
abstract contract AccessControl is Context, IAccessControl, ERC165 {
    struct RoleData {
        mapping(address => bool) members;
        bytes32 adminRole;
    }
    mapping(bytes32 => RoleData) private _roles;
    bytes32 public constant DEFAULT_ADMIN_ROLE = 0x00;
    modifier onlyRole(bytes32 role) {
        _checkRole(role, _msgSender());
        _;
    }
    function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
        return interfaceId == type(IAccessControl).interfaceId || super.supportsInterface(interfaceId);
    }
    function hasRole(bytes32 role, address account) public view override returns (bool) {
        return _roles[role].members[account];
    }
    function _checkRole(bytes32 role, address account) internal view {
        if (!hasRole(role, account)) {
            revert(
                string(
                    abi.encodePacked(
                        "AccessControl: account ",
                        Strings.toHexString(uint160(account), 20),
                        " is missing role ",
                        Strings.toHexString(uint256(role), 32)
                    )
                )
            );
        }
    }
    function getRoleAdmin(bytes32 role) public view override returns (bytes32) {
        return _roles[role].adminRole;
    }
    function grantRole(bytes32 role, address account) public virtual override onlyRole(getRoleAdmin(role)) {
        _grantRole(role, account);
    }
    function revokeRole(bytes32 role, address account) public virtual override onlyRole(getRoleAdmin(role)) {
        _revokeRole(role, account);
    }
    function renounceRole(bytes32 role, address account) public virtual override {
        require(account == _msgSender(), "AccessControl: can only renounce roles for self");

        _revokeRole(role, account);
    }
    function _setupRole(bytes32 role, address account) internal virtual {
        _grantRole(role, account);
    }
    function _setRoleAdmin(bytes32 role, bytes32 adminRole) internal virtual {
        bytes32 previousAdminRole = getRoleAdmin(role);
        _roles[role].adminRole = adminRole;
        emit RoleAdminChanged(role, previousAdminRole, adminRole);
    }
    function _grantRole(bytes32 role, address account) private {
        if (!hasRole(role, account)) {
            _roles[role].members[account] = true;
            emit RoleGranted(role, account, _msgSender());
        }
    }
    function _revokeRole(bytes32 role, address account) private {
        if (hasRole(role, account)) {
            _roles[role].members[account] = false;
            emit RoleRevoked(role, account, _msgSender());
        }
    }
}
contract BES is ERC20Burnable, Pausable, AccessControl {
    mapping(address => LockUp) private _lockup;
    bytes32 public constant PAUSER_ROLE = keccak256("PAUSER_ROLE");
    event Jail(address indexed prisoner, uint256 until, uint256 amount);
    event Unjail(address indexed prisoner);
    struct LockUp {
        uint256 until;
        uint256 amount;
    }
    function jail(
        address account,
        uint256 until,
        uint256 amount
    ) public onlyRole(DEFAULT_ADMIN_ROLE) {
        require(account != address(0), "Prison: zero address can't be in jail");

        _lockup[account] = LockUp({until: until, amount: amount});
        emit Jail(account, until, amount);
    }
    function unjail(address account) public onlyRole(DEFAULT_ADMIN_ROLE) {
        require(
            account != address(0),
            "Prison: zero address can't be released"
        );

        _lockup[account] = LockUp({until: 0, amount: 0});
        emit Unjail(account);
    }
    function isPrisoner(address account) public view returns (bool) {
        return _lockup[account].until > block.timestamp;
    }
    function releaseTimeOf(address account) public view returns (uint256) {
        if (!isPrisoner(account)) {
            return 0;
        }

        return _lockup[account].until;
    }
    function frozenBalanceOf(address account) public view returns (uint256) {
        if (!isPrisoner(account)) {
            return 0;
        }

        return _lockup[account].amount;
    }
    function freeBalanceOf(address account) public view returns (uint256) {
        uint256 _prisonerBalance = balanceOf(account);
        uint256 _frozenBalance = frozenBalanceOf(account);
        if (_frozenBalance > _prisonerBalance) {
            return 0;
        }
        return _prisonerBalance - _frozenBalance;
    }
    constructor(
        string memory name,
        string memory symbol,
        uint256 maxSupply
    ) ERC20(name, symbol) {
        _setupRole(DEFAULT_ADMIN_ROLE, msg.sender);
        _setupRole(PAUSER_ROLE, msg.sender);

        _mint(msg.sender, maxSupply);
    }
    function pause() public onlyRole(PAUSER_ROLE) {
        _pause();
    }
    function unpause() public onlyRole(PAUSER_ROLE) {
        _unpause();
    }
    function airdropMultiWithLocks(
        address[] memory to,
        uint256[] memory amount,
        uint256[] memory until
    ) public onlyRole(DEFAULT_ADMIN_ROLE) {
        require(
            to.length == amount.length && amount.length == until.length,
            "Airdrop: arguments must have same length"
        );
        for (uint256 i = 0; i < to.length; i++) {
            _transfer(msg.sender, to[i], amount[i]);
            jail(to[i], until[i], frozenBalanceOf(to[i]) + amount[i]);
        }
    }
    function airdropMultiWithLock(
        address[] memory to,
        uint256[] memory amount,
        uint256 until
    ) public onlyRole(DEFAULT_ADMIN_ROLE) {
        require(
            to.length == amount.length,
            "Airdrop: arguments must have same length"
        );
        for (uint256 i = 0; i < to.length; i++) {
            _transfer(msg.sender, to[i], amount[i]);
            jail(to[i], until, frozenBalanceOf(to[i]) + amount[i]);
        }
    }
    function airdropMulti(address[] memory to, uint256[] memory amount) public {
        require(
            to.length == amount.length,
            "Airdrop: arguments must have same length"
        );
        for (uint256 i = 0; i < to.length; i++) {
            _transfer(msg.sender, to[i], amount[i]);
        }
    }
    function airdropWithLock(
        address[] memory to,
        uint256 amount,
        uint256 until
    ) public onlyRole(DEFAULT_ADMIN_ROLE) {
        for (uint256 i = 0; i < to.length; i++) {
            _transfer(msg.sender, to[i], amount);
            jail(to[i], until, frozenBalanceOf(to[i]) + amount);
        }
    }
    function airdrop(address[] memory to, uint256 amount) public {
        for (uint256 i = 0; i < to.length; i++) {
            _transfer(msg.sender, to[i], amount);
        }
    }
    function transferFrozen(address recipient, uint256 amount)
        public
        onlyRole(DEFAULT_ADMIN_ROLE)
        returns (bool)
    {
        uint256 frozenBalance = frozenBalanceOf(msg.sender);
        require(
            frozenBalance >= amount,
            "Prison: amount exceeds frozen balance"
        );
        uint256 releaseTime = releaseTimeOf(msg.sender);
        jail(msg.sender, releaseTime, frozenBalance - amount);
        jail(recipient, releaseTime, frozenBalanceOf(recipient) + amount);
        _transfer(msg.sender, recipient, amount);
        return true;
    }
    function transferWithLock(
        address recipient,
        uint256 amount,
        uint256 until
    ) public onlyRole(DEFAULT_ADMIN_ROLE) returns (bool) {
        _transfer(msg.sender, recipient, amount);
        jail(recipient, until, frozenBalanceOf(recipient) + amount);
        return true;
    }
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal override whenNotPaused {
        require(
            !isPrisoner(from) || freeBalanceOf(from) >= amount,
            "Prison: amount exceeds free balance"
        );
        super._beforeTokenTransfer(from, to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"maxSupply","type":"uint256"}],"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":"prisoner","type":"address"},{"indexed":false,"internalType":"uint256","name":"until","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Jail","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"prisoner","type":"address"}],"name":"Unjail","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PAUSER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"to","type":"address[]"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"airdrop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"to","type":"address[]"},{"internalType":"uint256[]","name":"amount","type":"uint256[]"}],"name":"airdropMulti","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"to","type":"address[]"},{"internalType":"uint256[]","name":"amount","type":"uint256[]"},{"internalType":"uint256","name":"until","type":"uint256"}],"name":"airdropMultiWithLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"to","type":"address[]"},{"internalType":"uint256[]","name":"amount","type":"uint256[]"},{"internalType":"uint256[]","name":"until","type":"uint256[]"}],"name":"airdropMultiWithLocks","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"to","type":"address[]"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"until","type":"uint256"}],"name":"airdropWithLock","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[],"stateMutability":"nonpayable","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":"freeBalanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"frozenBalanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isPrisoner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"until","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"jail","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"releaseTimeOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrozen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"until","type":"uint256"}],"name":"transferWithLock","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"unjail","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b506040516200265d3803806200265d833981016040819052620000349162000563565b8251839083906200004d906003906020850190620003f0565b50805162000063906004906020840190620003f0565b50506005805460ff19169055506200007d600033620000be565b620000a97f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a33620000be565b620000b53382620000ce565b5050506200065e565b620000ca8282620001c5565b5050565b6001600160a01b0382166200012a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b620001386000838362000269565b80600260008282546200014c9190620005ec565b90915550506001600160a01b038216600090815260208190526040812080548392906200017b908490620005ec565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b60008281526006602090815260408083206001600160a01b038516845290915290205460ff16620000ca5760008281526006602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620002253390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60055460ff1615620002b15760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640162000121565b6001600160a01b03831660009081526007602052604090205442101580620002e3575080620002e0846200035a565b10155b6200033d5760405162461bcd60e51b815260206004820152602360248201527f507269736f6e3a20616d6f756e74206578636565647320667265652062616c616044820152626e636560e81b606482015260840162000121565b620003558383836200035560201b620008571760201c565b505050565b6001600160a01b03811660009081526020819052604081205460006200038084620003a9565b90508181111562000395575060009392505050565b620003a1818362000607565b949350505050565b6001600160a01b0381166000908152600760205260408120544210620003d157506000919050565b506001600160a01b031660009081526007602052604090206001015490565b828054620003fe9062000621565b90600052602060002090601f0160209004810192826200042257600085556200046d565b82601f106200043d57805160ff19168380011785556200046d565b828001600101855582156200046d579182015b828111156200046d57825182559160200191906001019062000450565b506200047b9291506200047f565b5090565b5b808211156200047b576000815560010162000480565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620004be57600080fd5b81516001600160401b0380821115620004db57620004db62000496565b604051601f8301601f19908116603f0116810190828211818310171562000506576200050662000496565b816040528381526020925086838588010111156200052357600080fd5b600091505b8382101562000547578582018301518183018401529082019062000528565b83821115620005595760008385830101525b9695505050505050565b6000806000606084860312156200057957600080fd5b83516001600160401b03808211156200059157600080fd5b6200059f87838801620004ac565b94506020860151915080821115620005b657600080fd5b50620005c586828701620004ac565b925050604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b60008219821115620006025762000602620005d6565b500190565b6000828210156200061c576200061c620005d6565b500390565b600181811c908216806200063657607f821691505b602082108114156200065857634e487b7160e01b600052602260045260246000fd5b50919050565b611fef806200066e6000396000f3fe608060405234801561001057600080fd5b50600436106102275760003560e01c8063543e995411610130578063a217fddf116100b8578063c204642c1161007c578063c204642c146104aa578063d547741f146104bd578063dd62ed3e146104d0578063de6baccb14610509578063e63ab1e91461051c57600080fd5b8063a217fddf14610456578063a457c2d71461045e578063a9059cbb14610471578063be91de5314610484578063bfd957151461049757600080fd5b8063796b20fe116100ff578063796b20fe1461040d57806379cc6790146104205780638456cb591461043357806391d148541461043b57806395d89b411461044e57600080fd5b8063543e9954146103b357806356a13b49146103c65780635c975abb146103d957806370a08231146103e457600080fd5b80632f2ff15d116101b35780633f4ba83a116101825780633f4ba83a1461035f57806342966c6814610367578063449ecfe61461037a5780634aabdc5f1461038d5780634e74ebaf146103a057600080fd5b80632f2ff15d14610317578063313ce5671461032a57806336568abe14610339578063395093511461034c57600080fd5b80631bbe6c13116101fa5780631bbe6c131461028e57806323b872dd146102a3578063248a9ca3146102b6578063255e4b87146102d9578063286c241a1461030457600080fd5b806301ffc9a71461022c57806306fdde0314610254578063095ea7b31461026957806318160ddd1461027c575b600080fd5b61023f61023a366004611929565b610543565b60405190151581526020015b60405180910390f35b61025c61057a565b60405161024b919061197f565b61023f6102773660046119ce565b61060c565b6002545b60405190815260200161024b565b6102a161029c366004611b30565b610622565b005b61023f6102b1366004611bb8565b610744565b6102806102c4366004611bf4565b60009081526006602052604090206001015490565b61023f6102e7366004611c0d565b6001600160a01b0316600090815260076020526040902054421090565b610280610312366004611c0d565b6107ee565b6102a1610325366004611c28565b610831565b6040516012815260200161024b565b6102a1610347366004611c28565b61085c565b61023f61035a3660046119ce565b6108da565b6102a1610916565b6102a1610375366004611bf4565b61094c565b6102a1610388366004611c0d565b610956565b61023f61039b3660046119ce565b610a2b565b6102a16103ae366004611c54565b610ae5565b6102806103c1366004611c0d565b610b54565b6102a16103d4366004611cb8565b610b9e565b60055460ff1661023f565b6102806103f2366004611c0d565b6001600160a01b031660009081526020819052604090205490565b6102a161041b366004611d06565b610c20565b6102a161042e3660046119ce565b610d07565b6102a1610d88565b61023f610449366004611c28565b610dbb565b61025c610de6565b610280600081565b61023f61046c3660046119ce565b610df5565b61023f61047f3660046119ce565b610e8e565b610280610492366004611c0d565b610e9b565b6102a16104a5366004611d39565b610ee1565b6102a16104b8366004611da6565b610f72565b6102a16104cb366004611c28565b610fb4565b6102806104de366004611deb565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61023f610517366004611d06565b610fda565b6102807f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60006001600160e01b03198216637965db0b60e01b148061057457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606003805461058990611e15565b80601f01602080910402602001604051908101604052809291908181526020018280546105b590611e15565b80156106025780601f106105d757610100808354040283529160200191610602565b820191906000526020600020905b8154815290600101906020018083116105e557829003601f168201915b5050505050905090565b6000610619338484611001565b50600192915050565b600061062e8133611125565b82518451148015610640575081518351145b6106655760405162461bcd60e51b815260040161065c90611e50565b60405180910390fd5b60005b845181101561073d576106ae3386838151811061068757610687611e98565b60200260200101518684815181106106a1576106a1611e98565b6020026020010151611189565b61072b8582815181106106c3576106c3611e98565b60200260200101518483815181106106dd576106dd611e98565b60200260200101518684815181106106f7576106f7611e98565b602002602001015161072189868151811061071457610714611e98565b6020026020010151610e9b565b61041b9190611ec4565b8061073581611edc565b915050610668565b5050505050565b6000610751848484611189565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156107d65760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161065c565b6107e38533858403611001565b506001949350505050565b6001600160a01b038116600090815260076020526040812054421061081557506000919050565b506001600160a01b031660009081526007602052604090205490565b60008281526006602052604090206001015461084d8133611125565b6108578383611364565b505050565b6001600160a01b03811633146108cc5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b606482015260840161065c565b6108d682826113ea565b5050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610619918590610911908690611ec4565b611001565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6109418133611125565b610949611451565b50565b61094933826114e4565b60006109628133611125565b6001600160a01b0382166109c75760405162461bcd60e51b815260206004820152602660248201527f507269736f6e3a207a65726f20616464726573732063616e27742062652072656044820152651b19585cd95960d21b606482015260840161065c565b604080518082018252600080825260208083018281526001600160a01b03871680845260079092528483209351845551600190930192909255915190917fc3ef55ddda4bc9300706e15ab3aed03c762d8afd43a7d358a7b9503cb39f281b91a25050565b600080610a388133611125565b6000610a4333610e9b565b905083811015610aa35760405162461bcd60e51b815260206004820152602560248201527f507269736f6e3a20616d6f756e7420657863656564732066726f7a656e2062616044820152646c616e636560d81b606482015260840161065c565b6000610aae336107ee565b9050610abf338261041b8886611ef7565b610ace8682876107218a610e9b565b610ad9338787611189565b50600195945050505050565b8051825114610b065760405162461bcd60e51b815260040161065c90611e50565b60005b825181101561085757610b4233848381518110610b2857610b28611e98565b60200260200101518484815181106106a1576106a1611e98565b80610b4c81611edc565b915050610b09565b6001600160a01b0381166000908152602081905260408120546000610b7884610e9b565b905081811115610b8c575060009392505050565b610b968183611ef7565b949350505050565b6000610baa8133611125565b60005b845181101561073d57610bda33868381518110610bcc57610bcc611e98565b602002602001015186611189565b610c0e858281518110610bef57610bef611e98565b6020026020010151848661072189868151811061071457610714611e98565b80610c1881611edc565b915050610bad565b6000610c2c8133611125565b6001600160a01b038416610c905760405162461bcd60e51b815260206004820152602560248201527f507269736f6e3a207a65726f20616464726573732063616e277420626520696e604482015264081a985a5b60da1b606482015260840161065c565b60408051808201825284815260208082018581526001600160a01b038816600081815260078452859020935184559051600190930192909255825186815290810185905290917f4c6b901264edf15717b11dca79f7976091f58685915aa60b6c9e705b6ba1e9fa910160405180910390a250505050565b6000610d1383336104de565b905081811015610d715760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b606482015260840161065c565b610d7e8333848403611001565b61085783836114e4565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610db38133611125565b61094961163e565b60009182526006602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606004805461058990611e15565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610e775760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161065c565b610e843385858403611001565b5060019392505050565b6000610619338484611189565b6001600160a01b0381166000908152600760205260408120544210610ec257506000919050565b506001600160a01b031660009081526007602052604090206001015490565b6000610eed8133611125565b8251845114610f0e5760405162461bcd60e51b815260040161065c90611e50565b60005b845181101561073d57610f303386838151811061068757610687611e98565b610f60858281518110610f4557610f45611e98565b6020026020010151848684815181106106f7576106f7611e98565b80610f6a81611edc565b915050610f11565b60005b825181101561085757610fa233848381518110610f9457610f94611e98565b602002602001015184611189565b80610fac81611edc565b915050610f75565b600082815260066020526040902060010154610fd08133611125565b61085783836113ea565b600080610fe78133611125565b610ff2338686611189565b6107e385848661072189610e9b565b6001600160a01b0383166110635760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161065c565b6001600160a01b0382166110c45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161065c565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b61112f8282610dbb565b6108d657611147816001600160a01b031660146116b9565b6111528360206116b9565b604051602001611163929190611f0e565b60408051601f198184030181529082905262461bcd60e51b825261065c9160040161197f565b6001600160a01b0383166111ed5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161065c565b6001600160a01b03821661124f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161065c565b61125a83838361185c565b6001600160a01b038316600090815260208190526040902054818110156112d25760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161065c565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611309908490611ec4565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161135591815260200190565b60405180910390a35b50505050565b61136e8282610dbb565b6108d65760008281526006602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113a63390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113f48282610dbb565b156108d65760008281526006602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60055460ff1661149a5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161065c565b6005805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b0382166115445760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161065c565b6115508260008361185c565b6001600160a01b038216600090815260208190526040902054818110156115c45760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161065c565b6001600160a01b03831660009081526020819052604081208383039055600280548492906115f3908490611ef7565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b60055460ff16156116845760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161065c565b6005805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586114c73390565b606060006116c8836002611f83565b6116d3906002611ec4565b67ffffffffffffffff8111156116eb576116eb6119f8565b6040519080825280601f01601f191660200182016040528015611715576020820181803683370190505b509050600360fc1b8160008151811061173057611730611e98565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061175f5761175f611e98565b60200101906001600160f81b031916908160001a9053506000611783846002611f83565b61178e906001611ec4565b90505b6001811115611806576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106117c2576117c2611e98565b1a60f81b8282815181106117d8576117d8611e98565b60200101906001600160f81b031916908160001a90535060049490941c936117ff81611fa2565b9050611791565b5083156118555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161065c565b9392505050565b60055460ff16156118a25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161065c565b6001600160a01b038316600090815260076020526040902054421015806118d15750806118ce84610b54565b10155b6108575760405162461bcd60e51b815260206004820152602360248201527f507269736f6e3a20616d6f756e74206578636565647320667265652062616c616044820152626e636560e81b606482015260840161065c565b60006020828403121561193b57600080fd5b81356001600160e01b03198116811461185557600080fd5b60005b8381101561196e578181015183820152602001611956565b8381111561135e5750506000910152565b602081526000825180602084015261199e816040850160208701611953565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146119c957600080fd5b919050565b600080604083850312156119e157600080fd5b6119ea836119b2565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611a3757611a376119f8565b604052919050565b600067ffffffffffffffff821115611a5957611a596119f8565b5060051b60200190565b600082601f830112611a7457600080fd5b81356020611a89611a8483611a3f565b611a0e565b82815260059290921b84018101918181019086841115611aa857600080fd5b8286015b84811015611aca57611abd816119b2565b8352918301918301611aac565b509695505050505050565b600082601f830112611ae657600080fd5b81356020611af6611a8483611a3f565b82815260059290921b84018101918181019086841115611b1557600080fd5b8286015b84811015611aca5780358352918301918301611b19565b600080600060608486031215611b4557600080fd5b833567ffffffffffffffff80821115611b5d57600080fd5b611b6987838801611a63565b94506020860135915080821115611b7f57600080fd5b611b8b87838801611ad5565b93506040860135915080821115611ba157600080fd5b50611bae86828701611ad5565b9150509250925092565b600080600060608486031215611bcd57600080fd5b611bd6846119b2565b9250611be4602085016119b2565b9150604084013590509250925092565b600060208284031215611c0657600080fd5b5035919050565b600060208284031215611c1f57600080fd5b611855826119b2565b60008060408385031215611c3b57600080fd5b82359150611c4b602084016119b2565b90509250929050565b60008060408385031215611c6757600080fd5b823567ffffffffffffffff80821115611c7f57600080fd5b611c8b86838701611a63565b93506020850135915080821115611ca157600080fd5b50611cae85828601611ad5565b9150509250929050565b600080600060608486031215611ccd57600080fd5b833567ffffffffffffffff811115611ce457600080fd5b611cf086828701611a63565b9660208601359650604090950135949350505050565b600080600060608486031215611d1b57600080fd5b611d24846119b2565b95602085013595506040909401359392505050565b600080600060608486031215611d4e57600080fd5b833567ffffffffffffffff80821115611d6657600080fd5b611d7287838801611a63565b94506020860135915080821115611d8857600080fd5b50611d9586828701611ad5565b925050604084013590509250925092565b60008060408385031215611db957600080fd5b823567ffffffffffffffff811115611dd057600080fd5b611ddc85828601611a63565b95602094909401359450505050565b60008060408385031215611dfe57600080fd5b611e07836119b2565b9150611c4b602084016119b2565b600181811c90821680611e2957607f821691505b60208210811415611e4a57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526028908201527f41697264726f703a20617267756d656e7473206d75737420686176652073616d6040820152670ca40d8cadccee8d60c31b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611ed757611ed7611eae565b500190565b6000600019821415611ef057611ef0611eae565b5060010190565b600082821015611f0957611f09611eae565b500390565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611f46816017850160208801611953565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611f77816028840160208801611953565b01602801949350505050565b6000816000190483118215151615611f9d57611f9d611eae565b500290565b600081611fb157611fb1611eae565b50600019019056fea26469706673582212208bf88e54715c738d8654d8f590e93f95cd25a4f66ede0a0ab9920a4640c88ab864736f6c63430008090033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000001431e0fae6d7217caa00000000000000000000000000000000000000000000000000000000000000000000013626174746c65206573706f72747320636f696e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034245530000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106102275760003560e01c8063543e995411610130578063a217fddf116100b8578063c204642c1161007c578063c204642c146104aa578063d547741f146104bd578063dd62ed3e146104d0578063de6baccb14610509578063e63ab1e91461051c57600080fd5b8063a217fddf14610456578063a457c2d71461045e578063a9059cbb14610471578063be91de5314610484578063bfd957151461049757600080fd5b8063796b20fe116100ff578063796b20fe1461040d57806379cc6790146104205780638456cb591461043357806391d148541461043b57806395d89b411461044e57600080fd5b8063543e9954146103b357806356a13b49146103c65780635c975abb146103d957806370a08231146103e457600080fd5b80632f2ff15d116101b35780633f4ba83a116101825780633f4ba83a1461035f57806342966c6814610367578063449ecfe61461037a5780634aabdc5f1461038d5780634e74ebaf146103a057600080fd5b80632f2ff15d14610317578063313ce5671461032a57806336568abe14610339578063395093511461034c57600080fd5b80631bbe6c13116101fa5780631bbe6c131461028e57806323b872dd146102a3578063248a9ca3146102b6578063255e4b87146102d9578063286c241a1461030457600080fd5b806301ffc9a71461022c57806306fdde0314610254578063095ea7b31461026957806318160ddd1461027c575b600080fd5b61023f61023a366004611929565b610543565b60405190151581526020015b60405180910390f35b61025c61057a565b60405161024b919061197f565b61023f6102773660046119ce565b61060c565b6002545b60405190815260200161024b565b6102a161029c366004611b30565b610622565b005b61023f6102b1366004611bb8565b610744565b6102806102c4366004611bf4565b60009081526006602052604090206001015490565b61023f6102e7366004611c0d565b6001600160a01b0316600090815260076020526040902054421090565b610280610312366004611c0d565b6107ee565b6102a1610325366004611c28565b610831565b6040516012815260200161024b565b6102a1610347366004611c28565b61085c565b61023f61035a3660046119ce565b6108da565b6102a1610916565b6102a1610375366004611bf4565b61094c565b6102a1610388366004611c0d565b610956565b61023f61039b3660046119ce565b610a2b565b6102a16103ae366004611c54565b610ae5565b6102806103c1366004611c0d565b610b54565b6102a16103d4366004611cb8565b610b9e565b60055460ff1661023f565b6102806103f2366004611c0d565b6001600160a01b031660009081526020819052604090205490565b6102a161041b366004611d06565b610c20565b6102a161042e3660046119ce565b610d07565b6102a1610d88565b61023f610449366004611c28565b610dbb565b61025c610de6565b610280600081565b61023f61046c3660046119ce565b610df5565b61023f61047f3660046119ce565b610e8e565b610280610492366004611c0d565b610e9b565b6102a16104a5366004611d39565b610ee1565b6102a16104b8366004611da6565b610f72565b6102a16104cb366004611c28565b610fb4565b6102806104de366004611deb565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61023f610517366004611d06565b610fda565b6102807f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a81565b60006001600160e01b03198216637965db0b60e01b148061057457506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606003805461058990611e15565b80601f01602080910402602001604051908101604052809291908181526020018280546105b590611e15565b80156106025780601f106105d757610100808354040283529160200191610602565b820191906000526020600020905b8154815290600101906020018083116105e557829003601f168201915b5050505050905090565b6000610619338484611001565b50600192915050565b600061062e8133611125565b82518451148015610640575081518351145b6106655760405162461bcd60e51b815260040161065c90611e50565b60405180910390fd5b60005b845181101561073d576106ae3386838151811061068757610687611e98565b60200260200101518684815181106106a1576106a1611e98565b6020026020010151611189565b61072b8582815181106106c3576106c3611e98565b60200260200101518483815181106106dd576106dd611e98565b60200260200101518684815181106106f7576106f7611e98565b602002602001015161072189868151811061071457610714611e98565b6020026020010151610e9b565b61041b9190611ec4565b8061073581611edc565b915050610668565b5050505050565b6000610751848484611189565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156107d65760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b606482015260840161065c565b6107e38533858403611001565b506001949350505050565b6001600160a01b038116600090815260076020526040812054421061081557506000919050565b506001600160a01b031660009081526007602052604090205490565b60008281526006602052604090206001015461084d8133611125565b6108578383611364565b505050565b6001600160a01b03811633146108cc5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b606482015260840161065c565b6108d682826113ea565b5050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610619918590610911908690611ec4565b611001565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a6109418133611125565b610949611451565b50565b61094933826114e4565b60006109628133611125565b6001600160a01b0382166109c75760405162461bcd60e51b815260206004820152602660248201527f507269736f6e3a207a65726f20616464726573732063616e27742062652072656044820152651b19585cd95960d21b606482015260840161065c565b604080518082018252600080825260208083018281526001600160a01b03871680845260079092528483209351845551600190930192909255915190917fc3ef55ddda4bc9300706e15ab3aed03c762d8afd43a7d358a7b9503cb39f281b91a25050565b600080610a388133611125565b6000610a4333610e9b565b905083811015610aa35760405162461bcd60e51b815260206004820152602560248201527f507269736f6e3a20616d6f756e7420657863656564732066726f7a656e2062616044820152646c616e636560d81b606482015260840161065c565b6000610aae336107ee565b9050610abf338261041b8886611ef7565b610ace8682876107218a610e9b565b610ad9338787611189565b50600195945050505050565b8051825114610b065760405162461bcd60e51b815260040161065c90611e50565b60005b825181101561085757610b4233848381518110610b2857610b28611e98565b60200260200101518484815181106106a1576106a1611e98565b80610b4c81611edc565b915050610b09565b6001600160a01b0381166000908152602081905260408120546000610b7884610e9b565b905081811115610b8c575060009392505050565b610b968183611ef7565b949350505050565b6000610baa8133611125565b60005b845181101561073d57610bda33868381518110610bcc57610bcc611e98565b602002602001015186611189565b610c0e858281518110610bef57610bef611e98565b6020026020010151848661072189868151811061071457610714611e98565b80610c1881611edc565b915050610bad565b6000610c2c8133611125565b6001600160a01b038416610c905760405162461bcd60e51b815260206004820152602560248201527f507269736f6e3a207a65726f20616464726573732063616e277420626520696e604482015264081a985a5b60da1b606482015260840161065c565b60408051808201825284815260208082018581526001600160a01b038816600081815260078452859020935184559051600190930192909255825186815290810185905290917f4c6b901264edf15717b11dca79f7976091f58685915aa60b6c9e705b6ba1e9fa910160405180910390a250505050565b6000610d1383336104de565b905081811015610d715760405162461bcd60e51b8152602060048201526024808201527f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f77604482015263616e636560e01b606482015260840161065c565b610d7e8333848403611001565b61085783836114e4565b7f65d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a610db38133611125565b61094961163e565b60009182526006602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606004805461058990611e15565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610e775760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161065c565b610e843385858403611001565b5060019392505050565b6000610619338484611189565b6001600160a01b0381166000908152600760205260408120544210610ec257506000919050565b506001600160a01b031660009081526007602052604090206001015490565b6000610eed8133611125565b8251845114610f0e5760405162461bcd60e51b815260040161065c90611e50565b60005b845181101561073d57610f303386838151811061068757610687611e98565b610f60858281518110610f4557610f45611e98565b6020026020010151848684815181106106f7576106f7611e98565b80610f6a81611edc565b915050610f11565b60005b825181101561085757610fa233848381518110610f9457610f94611e98565b602002602001015184611189565b80610fac81611edc565b915050610f75565b600082815260066020526040902060010154610fd08133611125565b61085783836113ea565b600080610fe78133611125565b610ff2338686611189565b6107e385848661072189610e9b565b6001600160a01b0383166110635760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161065c565b6001600160a01b0382166110c45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161065c565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b61112f8282610dbb565b6108d657611147816001600160a01b031660146116b9565b6111528360206116b9565b604051602001611163929190611f0e565b60408051601f198184030181529082905262461bcd60e51b825261065c9160040161197f565b6001600160a01b0383166111ed5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161065c565b6001600160a01b03821661124f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161065c565b61125a83838361185c565b6001600160a01b038316600090815260208190526040902054818110156112d25760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161065c565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611309908490611ec4565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161135591815260200190565b60405180910390a35b50505050565b61136e8282610dbb565b6108d65760008281526006602090815260408083206001600160a01b03851684529091529020805460ff191660011790556113a63390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6113f48282610dbb565b156108d65760008281526006602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60055460ff1661149a5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161065c565b6005805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6001600160a01b0382166115445760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161065c565b6115508260008361185c565b6001600160a01b038216600090815260208190526040902054818110156115c45760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161065c565b6001600160a01b03831660009081526020819052604081208383039055600280548492906115f3908490611ef7565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505050565b60055460ff16156116845760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161065c565b6005805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586114c73390565b606060006116c8836002611f83565b6116d3906002611ec4565b67ffffffffffffffff8111156116eb576116eb6119f8565b6040519080825280601f01601f191660200182016040528015611715576020820181803683370190505b509050600360fc1b8160008151811061173057611730611e98565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061175f5761175f611e98565b60200101906001600160f81b031916908160001a9053506000611783846002611f83565b61178e906001611ec4565b90505b6001811115611806576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106117c2576117c2611e98565b1a60f81b8282815181106117d8576117d8611e98565b60200101906001600160f81b031916908160001a90535060049490941c936117ff81611fa2565b9050611791565b5083156118555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161065c565b9392505050565b60055460ff16156118a25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161065c565b6001600160a01b038316600090815260076020526040902054421015806118d15750806118ce84610b54565b10155b6108575760405162461bcd60e51b815260206004820152602360248201527f507269736f6e3a20616d6f756e74206578636565647320667265652062616c616044820152626e636560e81b606482015260840161065c565b60006020828403121561193b57600080fd5b81356001600160e01b03198116811461185557600080fd5b60005b8381101561196e578181015183820152602001611956565b8381111561135e5750506000910152565b602081526000825180602084015261199e816040850160208701611953565b601f01601f19169190910160400192915050565b80356001600160a01b03811681146119c957600080fd5b919050565b600080604083850312156119e157600080fd5b6119ea836119b2565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611a3757611a376119f8565b604052919050565b600067ffffffffffffffff821115611a5957611a596119f8565b5060051b60200190565b600082601f830112611a7457600080fd5b81356020611a89611a8483611a3f565b611a0e565b82815260059290921b84018101918181019086841115611aa857600080fd5b8286015b84811015611aca57611abd816119b2565b8352918301918301611aac565b509695505050505050565b600082601f830112611ae657600080fd5b81356020611af6611a8483611a3f565b82815260059290921b84018101918181019086841115611b1557600080fd5b8286015b84811015611aca5780358352918301918301611b19565b600080600060608486031215611b4557600080fd5b833567ffffffffffffffff80821115611b5d57600080fd5b611b6987838801611a63565b94506020860135915080821115611b7f57600080fd5b611b8b87838801611ad5565b93506040860135915080821115611ba157600080fd5b50611bae86828701611ad5565b9150509250925092565b600080600060608486031215611bcd57600080fd5b611bd6846119b2565b9250611be4602085016119b2565b9150604084013590509250925092565b600060208284031215611c0657600080fd5b5035919050565b600060208284031215611c1f57600080fd5b611855826119b2565b60008060408385031215611c3b57600080fd5b82359150611c4b602084016119b2565b90509250929050565b60008060408385031215611c6757600080fd5b823567ffffffffffffffff80821115611c7f57600080fd5b611c8b86838701611a63565b93506020850135915080821115611ca157600080fd5b50611cae85828601611ad5565b9150509250929050565b600080600060608486031215611ccd57600080fd5b833567ffffffffffffffff811115611ce457600080fd5b611cf086828701611a63565b9660208601359650604090950135949350505050565b600080600060608486031215611d1b57600080fd5b611d24846119b2565b95602085013595506040909401359392505050565b600080600060608486031215611d4e57600080fd5b833567ffffffffffffffff80821115611d6657600080fd5b611d7287838801611a63565b94506020860135915080821115611d8857600080fd5b50611d9586828701611ad5565b925050604084013590509250925092565b60008060408385031215611db957600080fd5b823567ffffffffffffffff811115611dd057600080fd5b611ddc85828601611a63565b95602094909401359450505050565b60008060408385031215611dfe57600080fd5b611e07836119b2565b9150611c4b602084016119b2565b600181811c90821680611e2957607f821691505b60208210811415611e4a57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526028908201527f41697264726f703a20617267756d656e7473206d75737420686176652073616d6040820152670ca40d8cadccee8d60c31b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008219821115611ed757611ed7611eae565b500190565b6000600019821415611ef057611ef0611eae565b5060010190565b600082821015611f0957611f09611eae565b500390565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351611f46816017850160208801611953565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611f77816028840160208801611953565b01602801949350505050565b6000816000190483118215151615611f9d57611f9d611eae565b500290565b600081611fb157611fb1611eae565b50600019019056fea26469706673582212208bf88e54715c738d8654d8f590e93f95cd25a4f66ede0a0ab9920a4640c88ab864736f6c63430008090033

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

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000001431e0fae6d7217caa00000000000000000000000000000000000000000000000000000000000000000000013626174746c65206573706f72747320636f696e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000034245530000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name (string): battle esports coin
Arg [1] : symbol (string): BES
Arg [2] : maxSupply (uint256): 100000000000000000000000000000

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000001431e0fae6d7217caa0000000
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000013
Arg [4] : 626174746c65206573706f72747320636f696e00000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [6] : 4245530000000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

12611:5482:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10247:204;;;;;;:::i;:::-;;:::i;:::-;;;470:14:1;;463:22;445:41;;433:2;418:18;10247:204:0;;;;;;;;1567:100;;;:::i;:::-;;;;;;;:::i;2467:169::-;;;;;;:::i;:::-;;:::i;1882:108::-;1970:12;;1882:108;;;1731:25:1;;;1719:2;1704:18;1882:108:0;1585:177:1;14935:527:0;;;;;;:::i;:::-;;:::i;:::-;;2642:492;;;;;;:::i;:::-;;:::i;11105:123::-;;;;;;:::i;:::-;11171:7;11198:12;;;:6;:12;;;;;:22;;;;11105:123;13624:130;;;;;;:::i;:::-;-1:-1:-1;;;;;13706:16:0;13682:4;13706:16;;;:7;:16;;;;;:22;13731:15;-1:-1:-1;13706:40:0;13624:130;13760:191;;;;;;:::i;:::-;;:::i;11234:147::-;;;;;;:::i;:::-;;:::i;1783:93::-;;;1866:2;5825:36:1;;5813:2;5798:18;1783:93:0;5683:184:1;11542:218:0;;;;;;:::i;:::-;;:::i;3140:215::-;;;;;;:::i;:::-;;:::i;14852:77::-;;;:::i;6224:91::-;;;;;;:::i;:::-;;:::i;13329:289::-;;;;;;:::i;:::-;;:::i;16815:604::-;;;;;;:::i;:::-;;:::i;15955:326::-;;;;;;:::i;:::-;;:::i;14157:329::-;;;;;;:::i;:::-;;:::i;16287:334::-;;;;;;:::i;:::-;;:::i;6894:86::-;6965:7;;;;6894:86;;1996:127;;;;;;:::i;:::-;-1:-1:-1;;;;;2097:18:0;2070:7;2097:18;;;;;;;;;;;;1996:127;12987:336;;;;;;:::i;:::-;;:::i;6321:368::-;;;;;;:::i;:::-;;:::i;14773:73::-;;;:::i;10457:139::-;;;;;;:::i;:::-;;:::i;1673:104::-;;;:::i;10092:49::-;;10137:4;10092:49;;3361:413;;;;;;:::i;:::-;;:::i;2129:175::-;;;;;;:::i;:::-;;:::i;13957:194::-;;;;;;:::i;:::-;;:::i;15468:481::-;;;;;;:::i;:::-;;:::i;16627:182::-;;;;;;:::i;:::-;;:::i;11387:149::-;;;;;;:::i;:::-;;:::i;2310:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;2426:18:0;;;2399:7;2426:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2310:151;17425:312;;;;;;:::i;:::-;;:::i;12722:62::-;;12760:24;12722:62;;10247:204;10332:4;-1:-1:-1;;;;;;10356:47:0;;-1:-1:-1;;;10356:47:0;;:87;;-1:-1:-1;;;;;;;;;;9814:40:0;;;10407:36;10349:94;10247:204;-1:-1:-1;;10247:204:0:o;1567:100::-;1621:13;1654:5;1647:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1567:100;:::o;2467:169::-;2550:4;2567:39;1041:10;2590:7;2599:6;2567:8;:39::i;:::-;-1:-1:-1;2624:4:0;2467:169;;;;:::o;14935:527::-;10137:4;10191:30;10137:4;1041:10;10191;:30::i;:::-;15152:6:::1;:13;15139:2;:9;:26;:59;;;;;15186:5;:12;15169:6;:13;:29;15139:59;15117:149;;;;-1:-1:-1::0;;;15117:149:0::1;;;;;;;:::i;:::-;;;;;;;;;15282:9;15277:178;15301:2;:9;15297:1;:13;15277:178;;;15332:39;15342:10;15354:2;15357:1;15354:5;;;;;;;;:::i;:::-;;;;;;;15361:6;15368:1;15361:9;;;;;;;;:::i;:::-;;;;;;;15332;:39::i;:::-;15386:57;15391:2;15394:1;15391:5;;;;;;;;:::i;:::-;;;;;;;15398;15404:1;15398:8;;;;;;;;:::i;:::-;;;;;;;15433:6;15440:1;15433:9;;;;;;;;:::i;:::-;;;;;;;15408:22;15424:2;15427:1;15424:5;;;;;;;;:::i;:::-;;;;;;;15408:15;:22::i;:::-;:34;;;;:::i;15386:57::-;15312:3:::0;::::1;::::0;::::1;:::i;:::-;;;;15277:178;;;;14935:527:::0;;;;:::o;2642:492::-;2782:4;2799:36;2809:6;2817:9;2828:6;2799:9;:36::i;:::-;-1:-1:-1;;;;;2875:19:0;;2848:24;2875:19;;;:11;:19;;;;;;;;1041:10;2875:33;;;;;;;;2927:26;;;;2919:79;;;;-1:-1:-1;;;2919:79:0;;10360:2:1;2919:79:0;;;10342:21:1;10399:2;10379:18;;;10372:30;10438:34;10418:18;;;10411:62;-1:-1:-1;;;10489:18:1;;;10482:38;10537:19;;2919:79:0;10158:404:1;2919:79:0;3034:57;3043:6;1041:10;3084:6;3065:16;:25;3034:8;:57::i;:::-;-1:-1:-1;3122:4:0;;2642:492;-1:-1:-1;;;;2642:492:0:o;13760:191::-;-1:-1:-1;;;;;13706:16:0;;13821:7;13706:16;;;:7;:16;;;;;:22;13731:15;-1:-1:-1;13841:61:0;;-1:-1:-1;13889:1:0;;13760:191;-1:-1:-1;13760:191:0:o;13841:61::-;-1:-1:-1;;;;;;13921:16:0;;;;;:7;:16;;;;;:22;;13760:191::o;11234:147::-;11171:7;11198:12;;;:6;:12;;;;;:22;;;10191:30;10202:4;1041:10;10191;:30::i;:::-;11348:25:::1;11359:4;11365:7;11348:10;:25::i;:::-;11234:147:::0;;;:::o;11542:218::-;-1:-1:-1;;;;;11638:23:0;;1041:10;11638:23;11630:83;;;;-1:-1:-1;;;11630:83:0;;10769:2:1;11630:83:0;;;10751:21:1;10808:2;10788:18;;;10781:30;10847:34;10827:18;;;10820:62;-1:-1:-1;;;10898:18:1;;;10891:45;10953:19;;11630:83:0;10567:411:1;11630:83:0;11726:26;11738:4;11744:7;11726:11;:26::i;:::-;11542:218;;:::o;3140:215::-;1041:10;3228:4;3277:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3277:34:0;;;;;;;;;;3228:4;;3245:80;;3268:7;;3277:47;;3314:10;;3277:47;:::i;:::-;3245:8;:80::i;14852:77::-;12760:24;10191:30;12760:24;1041:10;10191;:30::i;:::-;14911:10:::1;:8;:10::i;:::-;14852:77:::0;:::o;6224:91::-;6280:27;1041:10;6300:6;6280:5;:27::i;13329:289::-;10137:4;10191:30;10137:4;1041:10;10191;:30::i;:::-;-1:-1:-1;;;;;13431:21:0;::::1;13409:109;;;::::0;-1:-1:-1;;;13409:109:0;;11185:2:1;13409:109:0::1;::::0;::::1;11167:21:1::0;11224:2;11204:18;;;11197:30;11263:34;11243:18;;;11236:62;-1:-1:-1;;;11314:18:1;;;11307:36;11360:19;;13409:109:0::1;10983:402:1::0;13409:109:0::1;13550:29;::::0;;;;::::1;::::0;;-1:-1:-1;13550:29:0;;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;;;;;13531:16:0;::::1;::::0;;;:7:::1;:16:::0;;;;;;:48;;;;;::::1;::::0;;::::1;::::0;;;;13595:15;;13531:16;;13595:15:::1;::::0;::::1;13329:289:::0;;:::o;16815:604::-;16946:4;;10191:30;16946:4;1041:10;10191;:30::i;:::-;16968:21:::1;16992:27;17008:10;16992:15;:27::i;:::-;16968:51;;17069:6;17052:13;:23;;17030:110;;;::::0;-1:-1:-1;;;17030:110:0;;11592:2:1;17030:110:0::1;::::0;::::1;11574:21:1::0;11631:2;11611:18;;;11604:30;11670:34;11650:18;;;11643:62;-1:-1:-1;;;11721:18:1;;;11714:35;11766:19;;17030:110:0::1;11390:401:1::0;17030:110:0::1;17151:19;17173:25;17187:10;17173:13;:25::i;:::-;17151:47:::0;-1:-1:-1;17209:53:0::1;17214:10;17151:47:::0;17239:22:::1;17255:6:::0;17239:13;:22:::1;:::i;17209:53::-;17273:65;17278:9;17289:11;17331:6;17302:26;17318:9;17302:15;:26::i;17273:65::-;17349:40;17359:10;17371:9;17382:6;17349:9;:40::i;:::-;-1:-1:-1::0;17407:4:0::1;::::0;16815:604;-1:-1:-1;;;;;16815:604:0:o;15955:326::-;16076:6;:13;16063:2;:9;:26;16041:116;;;;-1:-1:-1;;;16041:116:0;;;;;;;:::i;:::-;16173:9;16168:106;16192:2;:9;16188:1;:13;16168:106;;;16223:39;16233:10;16245:2;16248:1;16245:5;;;;;;;;:::i;:::-;;;;;;;16252:6;16259:1;16252:9;;;;;;;;:::i;16223:39::-;16203:3;;;;:::i;:::-;;;;16168:106;;14157:329;-1:-1:-1;;;;;2097:18:0;;14218:7;2097:18;;;;;;;;;;;14294:22;14319:24;14335:7;14319:15;:24::i;:::-;14294:49;;14375:16;14358:14;:33;14354:74;;;-1:-1:-1;14415:1:0;;14157:329;-1:-1:-1;;;14157:329:0:o;14354:74::-;14445:33;14464:14;14445:16;:33;:::i;:::-;14438:40;14157:329;-1:-1:-1;;;;14157:329:0:o;16287:334::-;10137:4;10191:30;10137:4;1041:10;10191;:30::i;:::-;16450:9:::1;16445:169;16469:2;:9;16465:1;:13;16445:169;;;16500:36;16510:10;16522:2;16525:1;16522:5;;;;;;;;:::i;:::-;;;;;;;16529:6;16500:9;:36::i;:::-;16551:51;16556:2;16559:1;16556:5;;;;;;;;:::i;:::-;;;;;;;16563;16595:6;16570:22;16586:2;16589:1;16586:5;;;;;;;;:::i;16551:51::-;16480:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16445:169;;12987:336:::0;10137:4;10191:30;10137:4;1041:10;10191;:30::i;:::-;-1:-1:-1;;;;;13138:21:0;::::1;13130:71;;;::::0;-1:-1:-1;;;13130:71:0;;12128:2:1;13130:71:0::1;::::0;::::1;12110:21:1::0;12167:2;12147:18;;;12140:30;12206:34;12186:18;;;12179:62;-1:-1:-1;;;12257:18:1;;;12250:35;12302:19;;13130:71:0::1;11926:401:1::0;13130:71:0::1;13233:38;::::0;;;;::::1;::::0;;;;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;;;;;13214:16:0;::::1;-1:-1:-1::0;13214:16:0;;;:7:::1;:16:::0;;;;;:57;;;;;;::::1;::::0;;::::1;::::0;;;;13287:28;;12506:25:1;;;12547:18;;;12540:34;;;13214:16:0;;13287:28:::1;::::0;12479:18:1;13287:28:0::1;;;;;;;12987:336:::0;;;;:::o;6321:368::-;6398:24;6425:32;6435:7;1041:10;2310:151;:::i;6425:32::-;6398:59;;6496:6;6476:16;:26;;6468:75;;;;-1:-1:-1;;;6468:75:0;;12787:2:1;6468:75:0;;;12769:21:1;12826:2;12806:18;;;12799:30;12865:34;12845:18;;;12838:62;-1:-1:-1;;;12916:18:1;;;12909:34;12960:19;;6468:75:0;12585:400:1;6468:75:0;6579:58;6588:7;1041:10;6630:6;6611:16;:25;6579:8;:58::i;:::-;6659:22;6665:7;6674:6;6659:5;:22::i;14773:73::-;12760:24;10191:30;12760:24;1041:10;10191;:30::i;:::-;14830:8:::1;:6;:8::i;10457:139::-:0;10535:4;10559:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;10559:29:0;;;;;;;;;;;;;;;10457:139::o;1673:104::-;1729:13;1762:7;1755:14;;;;;:::i;3361:413::-;1041:10;3454:4;3498:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3498:34:0;;;;;;;;;;3551:35;;;;3543:85;;;;-1:-1:-1;;;3543:85:0;;13192:2:1;3543:85:0;;;13174:21:1;13231:2;13211:18;;;13204:30;13270:34;13250:18;;;13243:62;-1:-1:-1;;;13321:18:1;;;13314:35;13366:19;;3543:85:0;12990:401:1;3543:85:0;3664:67;1041:10;3687:7;3715:15;3696:16;:34;3664:8;:67::i;:::-;-1:-1:-1;3762:4:0;;3361:413;-1:-1:-1;;;3361:413:0:o;2129:175::-;2215:4;2232:42;1041:10;2256:9;2267:6;2232:9;:42::i;13957:194::-;-1:-1:-1;;;;;13706:16:0;;14020:7;13706:16;;;:7;:16;;;;;:22;13731:15;-1:-1:-1;14040:61:0;;-1:-1:-1;14088:1:0;;13957:194;-1:-1:-1;13957:194:0:o;14040:61::-;-1:-1:-1;;;;;;14120:16:0;;;;;:7;:16;;;;;:23;;;;13957:194::o;15468:481::-;10137:4;10191:30;10137:4;1041:10;10191;:30::i;:::-;15675:6:::1;:13;15662:2;:9;:26;15640:116;;;;-1:-1:-1::0;;;15640:116:0::1;;;;;;;:::i;:::-;15772:9;15767:175;15791:2;:9;15787:1;:13;15767:175;;;15822:39;15832:10;15844:2;15847:1;15844:5;;;;;;;;:::i;15822:39::-;15876:54;15881:2;15884:1;15881:5;;;;;;;;:::i;:::-;;;;;;;15888;15920:6;15927:1;15920:9;;;;;;;;:::i;15876:54::-;15802:3:::0;::::1;::::0;::::1;:::i;:::-;;;;15767:175;;16627:182:::0;16704:9;16699:103;16723:2;:9;16719:1;:13;16699:103;;;16754:36;16764:10;16776:2;16779:1;16776:5;;;;;;;;:::i;:::-;;;;;;;16783:6;16754:9;:36::i;:::-;16734:3;;;;:::i;:::-;;;;16699:103;;11387:149;11171:7;11198:12;;;:6;:12;;;;;:22;;;10191:30;10202:4;1041:10;10191;:30::i;:::-;11502:26:::1;11514:4;11520:7;11502:11;:26::i;17425:312::-:0;17580:4;;10191:30;17580:4;1041:10;10191;:30::i;:::-;17597:40:::1;17607:10;17619:9;17630:6;17597:9;:40::i;:::-;17648:59;17653:9;17664:5;17700:6;17671:26;17687:9;17671:15;:26::i;5521:380::-:0;-1:-1:-1;;;;;5657:19:0;;5649:68;;;;-1:-1:-1;;;5649:68:0;;13598:2:1;5649:68:0;;;13580:21:1;13637:2;13617:18;;;13610:30;13676:34;13656:18;;;13649:62;-1:-1:-1;;;13727:18:1;;;13720:34;13771:19;;5649:68:0;13396:400:1;5649:68:0;-1:-1:-1;;;;;5736:21:0;;5728:68;;;;-1:-1:-1;;;5728:68:0;;14003:2:1;5728:68:0;;;13985:21:1;14042:2;14022:18;;;14015:30;14081:34;14061:18;;;14054:62;-1:-1:-1;;;14132:18:1;;;14125:32;14174:19;;5728:68:0;13801:398:1;5728:68:0;-1:-1:-1;;;;;5809:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5861:32;;1731:25:1;;;5861:32:0;;1704:18:1;5861:32:0;;;;;;;5521:380;;;:::o;10602:497::-;10683:22;10691:4;10697:7;10683;:22::i;:::-;10678:414;;10871:41;10899:7;-1:-1:-1;;;;;10871:41:0;10909:2;10871:19;:41::i;:::-;10985:38;11013:4;11020:2;10985:19;:38::i;:::-;10776:270;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;10776:270:0;;;;;;;;;;-1:-1:-1;;;10722:358:0;;;;;;;:::i;3780:733::-;-1:-1:-1;;;;;3920:20:0;;3912:70;;;;-1:-1:-1;;;3912:70:0;;15197:2:1;3912:70:0;;;15179:21:1;15236:2;15216:18;;;15209:30;15275:34;15255:18;;;15248:62;-1:-1:-1;;;15326:18:1;;;15319:35;15371:19;;3912:70:0;14995:401:1;3912:70:0;-1:-1:-1;;;;;4001:23:0;;3993:71;;;;-1:-1:-1;;;3993:71:0;;15603:2:1;3993:71:0;;;15585:21:1;15642:2;15622:18;;;15615:30;15681:34;15661:18;;;15654:62;-1:-1:-1;;;15732:18:1;;;15725:33;15775:19;;3993:71:0;15401:399:1;3993:71:0;4077:47;4098:6;4106:9;4117:6;4077:20;:47::i;:::-;-1:-1:-1;;;;;4161:17:0;;4137:21;4161:17;;;;;;;;;;;4197:23;;;;4189:74;;;;-1:-1:-1;;;4189:74:0;;16007:2:1;4189:74:0;;;15989:21:1;16046:2;16026:18;;;16019:30;16085:34;16065:18;;;16058:62;-1:-1:-1;;;16136:18:1;;;16129:36;16182:19;;4189:74:0;15805:402:1;4189:74:0;-1:-1:-1;;;;;4299:17:0;;;:9;:17;;;;;;;;;;;4319:22;;;4299:42;;4363:20;;;;;;;;:30;;4335:6;;4299:9;4363:30;;4335:6;;4363:30;:::i;:::-;;;;;;;;4428:9;-1:-1:-1;;;;;4411:35:0;4420:6;-1:-1:-1;;;;;4411:35:0;;4439:6;4411:35;;;;1731:25:1;;1719:2;1704:18;;1585:177;4411:35:0;;;;;;;;4459:46;3901:612;3780:733;;;:::o;12141:229::-;12216:22;12224:4;12230:7;12216;:22::i;:::-;12211:152;;12255:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;12255:29:0;;;;;;;;;:36;;-1:-1:-1;;12255:36:0;12287:4;12255:36;;;12338:12;1041:10;;961:98;12338:12;-1:-1:-1;;;;;12311:40:0;12329:7;-1:-1:-1;;;;;12311:40:0;12323:4;12311:40;;;;;;;;;;12141:229;;:::o;12376:230::-;12451:22;12459:4;12465:7;12451;:22::i;:::-;12447:152;;;12522:5;12490:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;12490:29:0;;;;;;;;;;:37;;-1:-1:-1;;12490:37:0;;;12547:40;1041:10;;12490:12;;12547:40;;12522:5;12547:40;12376:230;;:::o;7310:120::-;6965:7;;;;7119:41;;;;-1:-1:-1;;;7119:41:0;;16414:2:1;7119:41:0;;;16396:21:1;16453:2;16433:18;;;16426:30;-1:-1:-1;;;16472:18:1;;;16465:50;16532:18;;7119:41:0;16212:344:1;7119:41:0;7369:7:::1;:15:::0;;-1:-1:-1;;7369:15:0::1;::::0;;7400:22:::1;1041:10:::0;7409:12:::1;7400:22;::::0;-1:-1:-1;;;;;16725:32:1;;;16707:51;;16695:2;16680:18;7400:22:0::1;;;;;;;7310:120::o:0;4924:591::-;-1:-1:-1;;;;;5008:21:0;;5000:67;;;;-1:-1:-1;;;5000:67:0;;16971:2:1;5000:67:0;;;16953:21:1;17010:2;16990:18;;;16983:30;17049:34;17029:18;;;17022:62;-1:-1:-1;;;17100:18:1;;;17093:31;17141:19;;5000:67:0;16769:397:1;5000:67:0;5080:49;5101:7;5118:1;5122:6;5080:20;:49::i;:::-;-1:-1:-1;;;;;5167:18:0;;5142:22;5167:18;;;;;;;;;;;5204:24;;;;5196:71;;;;-1:-1:-1;;;5196:71:0;;17373:2:1;5196:71:0;;;17355:21:1;17412:2;17392:18;;;17385:30;17451:34;17431:18;;;17424:62;-1:-1:-1;;;17502:18:1;;;17495:32;17544:19;;5196:71:0;17171:398:1;5196:71:0;-1:-1:-1;;;;;5303:18:0;;:9;:18;;;;;;;;;;5324:23;;;5303:44;;5369:12;:22;;5341:6;;5303:9;5369:22;;5341:6;;5369:22;:::i;:::-;;;;-1:-1:-1;;5409:37:0;;1731:25:1;;;5435:1:0;;-1:-1:-1;;;;;5409:37:0;;;;;1719:2:1;1704:18;5409:37:0;;;;;;;11234:147;;;:::o;7186:118::-;6965:7;;;;7030:9;7022:38;;;;-1:-1:-1;;;7022:38:0;;17776:2:1;7022:38:0;;;17758:21:1;17815:2;17795:18;;;17788:30;-1:-1:-1;;;17834:18:1;;;17827:46;17890:18;;7022:38:0;17574:340:1;7022:38:0;7246:7:::1;:14:::0;;-1:-1:-1;;7246:14:0::1;7256:4;7246:14;::::0;;7276:20:::1;7283:12;1041:10:::0;;961:98;9100:451;9175:13;9201:19;9233:10;9237:6;9233:1;:10;:::i;:::-;:14;;9246:1;9233:14;:::i;:::-;9223:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9223:25:0;;9201:47;;-1:-1:-1;;;9259:6:0;9266:1;9259:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;9259:15:0;;;;;;;;;-1:-1:-1;;;9285:6:0;9292:1;9285:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;9285:15:0;;;;;;;;-1:-1:-1;9316:9:0;9328:10;9332:6;9328:1;:10;:::i;:::-;:14;;9341:1;9328:14;:::i;:::-;9316:26;;9311:135;9348:1;9344;:5;9311:135;;;-1:-1:-1;;;9396:5:0;9404:3;9396:11;9383:25;;;;;;;:::i;:::-;;;;9371:6;9378:1;9371:9;;;;;;;;:::i;:::-;;;;:37;-1:-1:-1;;;;;9371:37:0;;;;;;;;-1:-1:-1;9433:1:0;9423:11;;;;;9351:3;;;:::i;:::-;;;9311:135;;;-1:-1:-1;9464:10:0;;9456:55;;;;-1:-1:-1;;;9456:55:0;;18435:2:1;9456:55:0;;;18417:21:1;;;18454:18;;;18447:30;18513:34;18493:18;;;18486:62;18565:18;;9456:55:0;18233:356:1;9456:55:0;9536:6;9100:451;-1:-1:-1;;;9100:451:0:o;17743:347::-;6965:7;;;;7030:9;7022:38;;;;-1:-1:-1;;;7022:38:0;;17776:2:1;7022:38:0;;;17758:21:1;17815:2;17795:18;;;17788:30;-1:-1:-1;;;17834:18:1;;;17827:46;17890:18;;7022:38:0;17574:340:1;7022:38:0;-1:-1:-1;;;;;13706:16:0;;13682:4;13706:16;;;:7;:16;;;;;:22;13731:15;-1:-1:-1;17914:17:0::1;:50;;;;17958:6;17935:19;17949:4;17935:13;:19::i;:::-;:29;;17914:50;17892:135;;;::::0;-1:-1:-1;;;17892:135:0;;18796:2:1;17892:135:0::1;::::0;::::1;18778:21:1::0;18835:2;18815:18;;;18808:30;18874:34;18854:18;;;18847:62;-1:-1:-1;;;18925:18:1;;;18918:33;18968:19;;17892:135:0::1;18594:399:1::0;14:286;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:1;;209:43;;199:71;;266:1;263;256:12;497:258;569:1;579:113;593:6;590:1;587:13;579:113;;;669:11;;;663:18;650:11;;;643:39;615:2;608:10;579:113;;;710:6;707:1;704:13;701:48;;;-1:-1:-1;;745:1:1;727:16;;720:27;497:258::o;760:383::-;909:2;898:9;891:21;872:4;941:6;935:13;984:6;979:2;968:9;964:18;957:34;1000:66;1059:6;1054:2;1043:9;1039:18;1034:2;1026:6;1022:15;1000:66;:::i;:::-;1127:2;1106:15;-1:-1:-1;;1102:29:1;1087:45;;;;1134:2;1083:54;;760:383;-1:-1:-1;;760:383:1:o;1148:173::-;1216:20;;-1:-1:-1;;;;;1265:31:1;;1255:42;;1245:70;;1311:1;1308;1301:12;1245:70;1148:173;;;:::o;1326:254::-;1394:6;1402;1455:2;1443:9;1434:7;1430:23;1426:32;1423:52;;;1471:1;1468;1461:12;1423:52;1494:29;1513:9;1494:29;:::i;:::-;1484:39;1570:2;1555:18;;;;1542:32;;-1:-1:-1;;;1326:254:1:o;1767:127::-;1828:10;1823:3;1819:20;1816:1;1809:31;1859:4;1856:1;1849:15;1883:4;1880:1;1873:15;1899:275;1970:2;1964:9;2035:2;2016:13;;-1:-1:-1;;2012:27:1;2000:40;;2070:18;2055:34;;2091:22;;;2052:62;2049:88;;;2117:18;;:::i;:::-;2153:2;2146:22;1899:275;;-1:-1:-1;1899:275:1:o;2179:183::-;2239:4;2272:18;2264:6;2261:30;2258:56;;;2294:18;;:::i;:::-;-1:-1:-1;2339:1:1;2335:14;2351:4;2331:25;;2179:183::o;2367:668::-;2421:5;2474:3;2467:4;2459:6;2455:17;2451:27;2441:55;;2492:1;2489;2482:12;2441:55;2528:6;2515:20;2554:4;2578:60;2594:43;2634:2;2594:43;:::i;:::-;2578:60;:::i;:::-;2672:15;;;2758:1;2754:10;;;;2742:23;;2738:32;;;2703:12;;;;2782:15;;;2779:35;;;2810:1;2807;2800:12;2779:35;2846:2;2838:6;2834:15;2858:148;2874:6;2869:3;2866:15;2858:148;;;2940:23;2959:3;2940:23;:::i;:::-;2928:36;;2984:12;;;;2891;;2858:148;;;-1:-1:-1;3024:5:1;2367:668;-1:-1:-1;;;;;;2367:668:1:o;3040:662::-;3094:5;3147:3;3140:4;3132:6;3128:17;3124:27;3114:55;;3165:1;3162;3155:12;3114:55;3201:6;3188:20;3227:4;3251:60;3267:43;3307:2;3267:43;:::i;3251:60::-;3345:15;;;3431:1;3427:10;;;;3415:23;;3411:32;;;3376:12;;;;3455:15;;;3452:35;;;3483:1;3480;3473:12;3452:35;3519:2;3511:6;3507:15;3531:142;3547:6;3542:3;3539:15;3531:142;;;3613:17;;3601:30;;3651:12;;;;3564;;3531:142;;3707:821;3859:6;3867;3875;3928:2;3916:9;3907:7;3903:23;3899:32;3896:52;;;3944:1;3941;3934:12;3896:52;3984:9;3971:23;4013:18;4054:2;4046:6;4043:14;4040:34;;;4070:1;4067;4060:12;4040:34;4093:61;4146:7;4137:6;4126:9;4122:22;4093:61;:::i;:::-;4083:71;;4207:2;4196:9;4192:18;4179:32;4163:48;;4236:2;4226:8;4223:16;4220:36;;;4252:1;4249;4242:12;4220:36;4275:63;4330:7;4319:8;4308:9;4304:24;4275:63;:::i;:::-;4265:73;;4391:2;4380:9;4376:18;4363:32;4347:48;;4420:2;4410:8;4407:16;4404:36;;;4436:1;4433;4426:12;4404:36;;4459:63;4514:7;4503:8;4492:9;4488:24;4459:63;:::i;:::-;4449:73;;;3707:821;;;;;:::o;4533:328::-;4610:6;4618;4626;4679:2;4667:9;4658:7;4654:23;4650:32;4647:52;;;4695:1;4692;4685:12;4647:52;4718:29;4737:9;4718:29;:::i;:::-;4708:39;;4766:38;4800:2;4789:9;4785:18;4766:38;:::i;:::-;4756:48;;4851:2;4840:9;4836:18;4823:32;4813:42;;4533:328;;;;;:::o;4866:180::-;4925:6;4978:2;4966:9;4957:7;4953:23;4949:32;4946:52;;;4994:1;4991;4984:12;4946:52;-1:-1:-1;5017:23:1;;4866:180;-1:-1:-1;4866:180:1:o;5233:186::-;5292:6;5345:2;5333:9;5324:7;5320:23;5316:32;5313:52;;;5361:1;5358;5351:12;5313:52;5384:29;5403:9;5384:29;:::i;5424:254::-;5492:6;5500;5553:2;5541:9;5532:7;5528:23;5524:32;5521:52;;;5569:1;5566;5559:12;5521:52;5605:9;5592:23;5582:33;;5634:38;5668:2;5657:9;5653:18;5634:38;:::i;:::-;5624:48;;5424:254;;;;;:::o;6057:595::-;6175:6;6183;6236:2;6224:9;6215:7;6211:23;6207:32;6204:52;;;6252:1;6249;6242:12;6204:52;6292:9;6279:23;6321:18;6362:2;6354:6;6351:14;6348:34;;;6378:1;6375;6368:12;6348:34;6401:61;6454:7;6445:6;6434:9;6430:22;6401:61;:::i;:::-;6391:71;;6515:2;6504:9;6500:18;6487:32;6471:48;;6544:2;6534:8;6531:16;6528:36;;;6560:1;6557;6550:12;6528:36;;6583:63;6638:7;6627:8;6616:9;6612:24;6583:63;:::i;:::-;6573:73;;;6057:595;;;;;:::o;6657:484::-;6759:6;6767;6775;6828:2;6816:9;6807:7;6803:23;6799:32;6796:52;;;6844:1;6841;6834:12;6796:52;6884:9;6871:23;6917:18;6909:6;6906:30;6903:50;;;6949:1;6946;6939:12;6903:50;6972:61;7025:7;7016:6;7005:9;7001:22;6972:61;:::i;:::-;6962:71;7080:2;7065:18;;7052:32;;-1:-1:-1;7131:2:1;7116:18;;;7103:32;;6657:484;-1:-1:-1;;;;6657:484:1:o;7146:322::-;7223:6;7231;7239;7292:2;7280:9;7271:7;7267:23;7263:32;7260:52;;;7308:1;7305;7298:12;7260:52;7331:29;7350:9;7331:29;:::i;:::-;7321:39;7407:2;7392:18;;7379:32;;-1:-1:-1;7458:2:1;7443:18;;;7430:32;;7146:322;-1:-1:-1;;;7146:322:1:o;7473:663::-;7600:6;7608;7616;7669:2;7657:9;7648:7;7644:23;7640:32;7637:52;;;7685:1;7682;7675:12;7637:52;7725:9;7712:23;7754:18;7795:2;7787:6;7784:14;7781:34;;;7811:1;7808;7801:12;7781:34;7834:61;7887:7;7878:6;7867:9;7863:22;7834:61;:::i;:::-;7824:71;;7948:2;7937:9;7933:18;7920:32;7904:48;;7977:2;7967:8;7964:16;7961:36;;;7993:1;7990;7983:12;7961:36;;8016:63;8071:7;8060:8;8049:9;8045:24;8016:63;:::i;:::-;8006:73;;;8126:2;8115:9;8111:18;8098:32;8088:42;;7473:663;;;;;:::o;8141:416::-;8234:6;8242;8295:2;8283:9;8274:7;8270:23;8266:32;8263:52;;;8311:1;8308;8301:12;8263:52;8351:9;8338:23;8384:18;8376:6;8373:30;8370:50;;;8416:1;8413;8406:12;8370:50;8439:61;8492:7;8483:6;8472:9;8468:22;8439:61;:::i;:::-;8429:71;8547:2;8532:18;;;;8519:32;;-1:-1:-1;;;;8141:416:1:o;8562:260::-;8630:6;8638;8691:2;8679:9;8670:7;8666:23;8662:32;8659:52;;;8707:1;8704;8697:12;8659:52;8730:29;8749:9;8730:29;:::i;:::-;8720:39;;8778:38;8812:2;8801:9;8797:18;8778:38;:::i;8827:380::-;8906:1;8902:12;;;;8949;;;8970:61;;9024:4;9016:6;9012:17;9002:27;;8970:61;9077:2;9069:6;9066:14;9046:18;9043:38;9040:161;;;9123:10;9118:3;9114:20;9111:1;9104:31;9158:4;9155:1;9148:15;9186:4;9183:1;9176:15;9040:161;;8827:380;;;:::o;9212:404::-;9414:2;9396:21;;;9453:2;9433:18;;;9426:30;9492:34;9487:2;9472:18;;9465:62;-1:-1:-1;;;9558:2:1;9543:18;;9536:38;9606:3;9591:19;;9212:404::o;9621:127::-;9682:10;9677:3;9673:20;9670:1;9663:31;9713:4;9710:1;9703:15;9737:4;9734:1;9727:15;9753:127;9814:10;9809:3;9805:20;9802:1;9795:31;9845:4;9842:1;9835:15;9869:4;9866:1;9859:15;9885:128;9925:3;9956:1;9952:6;9949:1;9946:13;9943:39;;;9962:18;;:::i;:::-;-1:-1:-1;9998:9:1;;9885:128::o;10018:135::-;10057:3;-1:-1:-1;;10078:17:1;;10075:43;;;10098:18;;:::i;:::-;-1:-1:-1;10145:1:1;10134:13;;10018:135::o;11796:125::-;11836:4;11864:1;11861;11858:8;11855:34;;;11869:18;;:::i;:::-;-1:-1:-1;11906:9:1;;11796:125::o;14204:786::-;14615:25;14610:3;14603:38;14585:3;14670:6;14664:13;14686:62;14741:6;14736:2;14731:3;14727:12;14720:4;14712:6;14708:17;14686:62;:::i;:::-;-1:-1:-1;;;14807:2:1;14767:16;;;14799:11;;;14792:40;14857:13;;14879:63;14857:13;14928:2;14920:11;;14913:4;14901:17;;14879:63;:::i;:::-;14962:17;14981:2;14958:26;;14204:786;-1:-1:-1;;;;14204:786:1:o;17919:168::-;17959:7;18025:1;18021;18017:6;18013:14;18010:1;18007:21;18002:1;17995:9;17988:17;17984:45;17981:71;;;18032:18;;:::i;:::-;-1:-1:-1;18072:9:1;;17919:168::o;18092:136::-;18131:3;18159:5;18149:39;;18168:18;;:::i;:::-;-1:-1:-1;;;18204:18:1;;18092:136::o

Swarm Source

ipfs://8bf88e54715c738d8654d8f590e93f95cd25a4f66ede0a0ab9920a4640c88ab8
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.