Overview
Max Total Supply
57,887,970 LEOX
Holders
11,455 (0.00%)
Market
Price
$0.19 @ 0.000075 ETH (-1.28%)
Onchain Market Cap
$10,883,814.45
Circulating Supply Market Cap
$0.00
Other Info
Token Contract (WITH 18 Decimals)
Balance
983.979651938221549691 LEOXValue
$185.00 ( ~0.0737284315832183 Eth) [0.0017%]Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ERC20
Compiler Version
v0.8.16+commit.07a7930e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-04-03 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.16; contract ERC20 { //stores current balances mapping(address => uint256) private _balances; //stores current approvals mapping(address => mapping(address => uint256)) private _allowances; //current total supply of token uint256 private _totalSupply; //current token metadata: string private _name; string private _symbol; uint8 private _decimals; //the owner address of this contract, i.e. who can mint more tokens address private _owner; // For each account, a mapping of its account operators. mapping(address => mapping(address => bool)) private _accountOperators; // The absolute maximum supply that can be reached by minting. uint256 private _maximumSupply; // Allow remint of tokens which have been burned. bool private _allowRemint; // Stores the accumulated burned total uint256 private _burnAccumulatedTotal; /** * @dev Emitted when `amount` tokens are moved from one account (`payerId`) to another (`payeeId`). * * Note that `amount` may be zero. */ event Transfer(address indexed payerId, address indexed payeeId, uint256 amount); /** * @dev Emitted when the allowance of a `payeeId` for an `payerId` is set by * a call to {approve}. `amount` is the new allowance. */ event Approval(address indexed payerId, address indexed payeeId, uint256 amount); /** * @dev Emitted when tokens are minted or burned. */ event MetaData(string indexed functionName, bytes data); /** * @dev Emitted when contract owner is changed from `oldContractOwnerId` to `newContractOwnerId`. */ event OwnerChanged(address indexed oldContractOwnerId, address indexed newContractOwnerId); /** * @dev Emitted when `additionalOwnerAccountId` is authorised by `ownerAccountId`. */ event AuthorizedOperator(address indexed additionalOwnerAccountId, address indexed ownerAccountId); /** * @dev Emitted when `additionalOwnerAccountId` is revoked by `ownerAccountId`. */ event RevokedOperator(address indexed additionalOwnerAccountId, address indexed ownerAccountId); /** * @dev Emitted when the batched transactions failed for address `failedAddress` for function `functionName`. */ event BatchFailure(string indexed functionName, address indexed failedAddress); /** * @dev Sets the values for {_name}, {_symbol}, {_decimals}, {_totalSupply}. * Additionally, all of the supply is initially given to the address corresponding to {giveSupplyTo_} */ constructor(string memory name_, string memory symbol_, uint8 decimals_, uint256 supply_, address giveSupplyTo_, address owner_, uint256 maximumSupply_, bool allowRemint_) { require(supply_<=maximumSupply_, "Current supply must be less than or equal to max supply"); _name = name_; _symbol = symbol_; _decimals = decimals_; _totalSupply = supply_; _balances[giveSupplyTo_] = supply_; _owner = owner_; _maximumSupply = maximumSupply_; _allowRemint = allowRemint_; emit Transfer(address(0), giveSupplyTo_, supply_); } /** * @dev Functions using this modifier restrict the caller to only be the contract owner address (or the account operator of the owner) */ modifier onlyOwner { require(isOperatorFor(msg.sender, owner()), "Caller is not the account's operator"); _; } /** * @dev Moves `amount` tokens from the caller's account to `payeeId`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. * * Requirements * * - the caller must have at least `amount` tokens. * - `payeeId` cannot be the zero address. */ function transfer(address payeeId, uint256 amount) external returns (bool) { _transfer(msg.sender, payeeId, amount); return true; } /** * @dev Moves `amount` tokens from `payerId` to `payeeId`. The caller must * be an account operator of `payerId`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. * * Requirements * * - `payerId` cannot be the zero address. * - `payerId` must have at least `amount` tokens. * - the caller must be an account operator for `payerId`. * - `payeeId` cannot be the zero address. */ function operatorTransfer( address payerId, address payeeId, uint256 amount ) external returns (bool) { require(isOperatorFor(msg.sender, payerId), "Caller not an operator for payerId"); _transfer(payerId, payeeId, amount); return true; } /** * @dev Sets `amount` as the allowance of `payeeId` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * Emits an {Approval} event. * * The if statement makes sure that this contract's approval system is not * vulnerable to teh race condition (where a payee spends the previous * and new allowance) * * Requirements * * - the caller must have at least `amount` tokens. * - `payeeId` cannot be the zero address. */ function approve(address payeeId, uint256 amount) external returns (bool) { if (_allowances[msg.sender][payeeId] > 0){ require(amount == 0, "Must set approval to zero before setting new approval"); //otherwise approve call would be vulnerable to race condition. Need to set approval to zero first } _approve(msg.sender, payeeId, amount); return true; } /** * @dev Approves `amount` tokens from `payerId` to `payeeId`. The caller must * be an account operator of `payerId`. * * Returns a boolean value indicating whether the operation succeeded. * * The if statement makes sure that this contract's approval system is not * vulnerable to the race condition (where a payee spends the previous * and new allowance) * * Emits a {Approval} event. * * Requirements * * - `payerId` cannot be the zero address. * - `payerId` must have at least `amount` tokens. * - the caller must be an account operator for `payerId`. * - `payeeId` cannot be the zero address. */ function operatorApprove( address payerId, address payeeId, uint256 amount ) external returns (bool) { require(isOperatorFor(msg.sender, payerId), "Caller is not an account operator for payerId"); if (_allowances[payerId][payeeId] > 0){ require(amount == 0, "Must cancel previous approval"); //otherwise approve call would be vulnerable to race condition. Need to set approval to zero first } _approve(payerId, payeeId, amount); return true; } /** * @dev Moves `amount` tokens from `payerId` to `payeeId` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. * * Requirements * * - `payerId` cannot be the zero address. * - the caller must have at least `amount` tokens approved tokens from `payeeId`. * - `payeeId` cannot be the zero address. */ function transferFrom(address payerId, address payeeId, uint256 amount) external returns (bool) { _spendAllowance(payerId, msg.sender, amount); // Decrease the msg.sender's approved spend amount _transfer(payerId, payeeId, amount); // Transfer funds from the payerId to the payeeId as specified by the approved msg.sender return true; } /** * @dev Moves `amount` tokens from `payerId` to `payeeId` using the * allowance mechanism. `amount` is then deducted from the 'payerId' * allowance. * * Emits a {Transfer} event. * * Requirements * * - `payerId` cannot be the zero address. * - `payeeId` must have at least `amount` approved tokens from `payeeId`. * - the caller must be an account operator for `payeeId`. * - `payeeId` cannot be the zero address. */ function operatorTransferFrom( address payerId, address payeeId, uint256 amount ) external { require(isOperatorFor(msg.sender, payeeId), "Caller not an operator for payeeId"); _spendAllowance(payerId, payeeId, amount); _transfer(payerId, payeeId, amount); } /** @dev Creates `amount` tokens and assigns them to `beneficiaryAccountId`, increasing * the total supply. Metadata can be assigned to this mint via the 'message' * parameter if required. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event with `from` set to the zero address. * Emits a {MetaData} event. * * Requirements: * * - `beneficiaryAccountId` cannot be the zero address. * - `msg.sender` must be the contract's owner address. */ function mint(address beneficiaryAccountId, uint256 amount, bytes calldata data) external onlyOwner() returns (bool) { require(beneficiaryAccountId != address(0), "Zero address used"); require((_allowRemint && _maximumSupply >= (_totalSupply + amount)) || (!_allowRemint && (_maximumSupply >= (_totalSupply + amount + _burnAccumulatedTotal))) , "Minting would exceed the configured maximum supply."); _totalSupply += amount; _balances[beneficiaryAccountId] += amount; emit Transfer(address(0), beneficiaryAccountId, amount); emit MetaData("mint", data); return true; } /** * @dev Destroys `amount` tokens from the sender's address, reducing the * total supply. Metadata can be assigned to this burn via the 'data' * parameter if required. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event with `to` set to the zero address. * Emits a {MetaData} event. * * Requirements: * * - the caller's account must have at least `amount` tokens. */ function burn(uint256 amount, bytes calldata data) external returns (bool) { _burn(msg.sender, amount, data); return true; } /** * @dev Destroys `amount` tokens from `payerId`, reducing the total supply. * Metadata can be assigned to this burn via the 'data' parameter if required. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event with `to` set to the zero address. * Emits a {MetaData} event. * * Requirements * * - `payerId` cannot be the zero address. * - `payerId` must have at least `amount` tokens. * - the caller must be an account operator for `payerId`. */ function operatorBurn(address payerId, uint256 amount, bytes calldata data) external returns (bool) { require(isOperatorFor(msg.sender, payerId), "Caller not an operator for payerId"); _burn(payerId, amount, data); return true; } /** * @dev Changes the contract owner to 'newContractOwnerId', i.e. who can mint new tokens * * Returns a boolean value indicating whether the operation succeeded. * * Requirements: * * - caller must have the owner role. */ function changeOwner(address newContractOwnerId) external onlyOwner() returns (bool) { require(newContractOwnerId != address(0x0), "Zero address used"); address oldOwner = _owner; _owner = newContractOwnerId; emit OwnerChanged(oldOwner, newContractOwnerId); return true; } /** * @dev Make `AdditionalOwnerAccountId` an account operator of caller. * * Emits an {AuthorizedOperator} event. * * Requirements: * * - `AdditionalOwnerAccountId` must not equal the caller. */ function authorizeOperator(address additionalOwnerAccountId) external { require(msg.sender != additionalOwnerAccountId, "Authorizing self as operator"); _accountOperators[msg.sender][additionalOwnerAccountId] = true; emit AuthorizedOperator(additionalOwnerAccountId, msg.sender); } /** * @dev Revoke `additionalOwnerAccountId`'s account operator status for caller. * * Emits a {RevokedOperator} event. * * Requirements: * * - `additionalOwnerAccountId` must not equal the caller. */ function revokeOperator(address additionalOwnerAccountId) external { delete _accountOperators[msg.sender][additionalOwnerAccountId]; emit RevokedOperator(additionalOwnerAccountId, msg.sender); } /** * @dev Same logic as calling the transfer function multiple times. * where payeeIds[x] receives amounts[x] tokens. * * Returns a boolean value indicating whether the operation succeeded. * If the operation failed, the payeeId causing the first failure will be returned; * * Emits a {Transfer} event for every transfer. * * Requirements: * * - `payerId` cannot be the zero address. * - `payerId` must have a balance of at least the total of the `amounts` array. * - the caller must be `payerId` or an account operator for `payerId`. * - Each `payeeIds[x]` cannot be the zero address. */ function transferBatch(address payerId, address[] calldata payeeIds, uint256[] calldata amounts) external returns (bool, address) { require(isOperatorFor(msg.sender, payerId), "Caller not an operator for payerId"); uint count; uint size = payeeIds.length; while (count < size){ if (balanceOf(payerId) < amounts[count]){ emit BatchFailure("transfer", payeeIds[count]); //alerts the listener to the address that failed the batch return (false, payeeIds[count]); } _transfer(payerId, payeeIds[count], amounts[count]); count++; } return (true, address(0x0)); } /** * @dev Same logic as calling the transferFrom function multiple times. * where payeeId attempts to debit amounts[X] tokens from payerIds[X]. * If a particular debit did is not possible (as the allowance is not high enough * for this particular payerIds[X]), the batch continues. * * Returns firstly a boolean value indicating whether the batch transfer succeeded for every given payerId (true) * or if the batch transfer failed for some payerIds (false). If false, then the payerIds that could not * perform the transfer are also returned; * * Emits a {Transfer} event for every transfer * * Requirements * * - Each `payerIds[x]` cannot be the zero address. * - `payeeId` must have at least `amount[x]` approved tokens from each `payerIds[x]`. * - the caller must be `payeeId` or an account operator for `payeeId`. * - `payeeId` cannot be the zero address. */ function transferFromBatch(address payeeId, address[] calldata payerIds, uint256[] calldata amounts) external returns (bool) { require(isOperatorFor(msg.sender, payeeId), "Caller not an operator for payeeId"); require(payerIds.length == amounts.length, "Length of 'payerIds' and 'amounts' arrays are not equal"); uint count; uint size = payerIds.length; bool success = true; while (count < size){ // if ((balanceOf(payerIds[count]) < amounts[count]) || (amounts[count] > allowance(payerIds[count], payeeId))){ success = false; emit BatchFailure("transferFrom", payerIds[count]); } else { //only perform the transfer from if it will succeed _spendAllowance(payerIds[count], payeeId, amounts[count]); // Decrease the payeeId's approved spend amount _transfer(payerIds[count], payeeId, amounts[count]); // Transfer funds from the payerId to the payeeId as specified by the approved msg.sender } count++; } return success; } /** * @dev Moves `amount` of tokens from `payerId` to `payeeId`. * * This internal function is equivalent to {transfer} * * Emits a {Transfer} event. * * Requirements: * * - `payerId` cannot be the zero address. * - `payeeId` cannot be the zero address. * - `payerId` must have a balance of at least `amount`. */ function _transfer(address payerId, address payeeId, uint256 amount) private { require(payerId != address(0), "Zero address used"); require(payeeId != address(0), "Zero address used"); require(payeeId != address(this), "Contract address used"); uint256 senderBalance = _balances[payerId]; require(senderBalance >= amount, "Amount exceeds balance"); unchecked { _balances[payerId] = senderBalance - amount; } _balances[payeeId] += amount; emit Transfer(payerId, payeeId, amount); } /** * @dev Burns (deletes) `amount` of tokens from `payerId`, with optional metadata `data`. * * Emits a {Transfer} event. * Emits a {MetaData} event. * * Requirements: * * - `payerId` cannot be the zero address. * - `payerId` must have a balance of at least `amount`. */ function _burn(address payerId, uint256 amount, bytes calldata data) private { require(payerId != address(0), "Zero address used"); uint256 accountBalance = _balances[payerId]; require(accountBalance >= amount, "Amount exceeds balance"); unchecked { _balances[payerId] = accountBalance - amount; } _totalSupply -= amount; _burnAccumulatedTotal += amount; emit Transfer(payerId, address(0), amount); emit MetaData("burn", data); } /** * @dev Sets `amount` as the allowance of `payeeId` over the `payerId` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `payerId` cannot be the zero address. * - `payeeId` cannot be the zero address. */ function _approve(address payerId, address payeeId, uint256 amount) private { require(payerId != address(0), "Zero address used"); require(payeeId != address(0), "Zero address used"); _allowances[payerId][payeeId] = amount; emit Approval(payerId, payeeId, amount); } /** * @dev Reduces the allowance `amount` of tokens approved by the `payerId` to the spender * In the case of max approval the allowance will not reduce unless the user sets the approval directly */ function _spendAllowance(address payerId, address spender, uint256 amount) private { uint256 currentAllowance = allowance(payerId, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "Amount exceeds allowance"); unchecked { _approve(payerId, spender, currentAllowance - amount); } } } /** * @dev Returns the name of the token. */ function name() public view returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5.05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. * * NOTE: This information is only used for display purposes: it in * no way affects any of the arithmetic of the contract, including * {balanceOf} and {transfer}. */ function decimals() public view returns (uint8) { return _decimals; } /** * @dev Returns the amount of tokens in existence. * * This value changes when {mint} and {burn} are called. */ function totalSupply() public view returns (uint256) { return _totalSupply; } /** * @dev Returns the address with the owner role of this token contract, * i.e. what address can mint new tokens. * if a multi-sig account operator is required, this address should * point to a smart contract implementing this multi-sig. */ function owner() public view returns (address) { return _owner; } /** * @dev Returns the amount of tokens owned by `accountId`. * * This value changes when {transfer} and {transferFrom} are called. */ function balanceOf(address accountId) public view returns (uint256) { return _balances[accountId]; } /** * * Returns the maximum supply that can be reached by minting new tokens. A maximumSupply of zero means the supply is unlimited. * */ function maximumSupply() public view returns(uint256) { return _maximumSupply; } /** * * Returns the running total of the number of tokens burned * */ function burnAccumulatedTotal() public view returns(uint256) { return _burnAccumulatedTotal; } /** * @dev Returns the remaining number of tokens that `payeeId` will be * allowed to spend on behalf of `payerId` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address payerId, address payeeId) public view returns (uint256) { return _allowances[payerId][payeeId]; } /** * @dev Returns true if `AdditionalOwnerAccountId` is an account operator of `OwnerAccountId`. * Account operators can send and burn tokens for an authorised account. All * accounts are their own account operator. */ function isOperatorFor(address AdditionalOwnerAccountId, address OwnerAccountId) public view returns (bool) { return AdditionalOwnerAccountId == OwnerAccountId || _accountOperators[OwnerAccountId][AdditionalOwnerAccountId]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"},{"internalType":"uint256","name":"supply_","type":"uint256"},{"internalType":"address","name":"giveSupplyTo_","type":"address"},{"internalType":"address","name":"owner_","type":"address"},{"internalType":"uint256","name":"maximumSupply_","type":"uint256"},{"internalType":"bool","name":"allowRemint_","type":"bool"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"payerId","type":"address"},{"indexed":true,"internalType":"address","name":"payeeId","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"additionalOwnerAccountId","type":"address"},{"indexed":true,"internalType":"address","name":"ownerAccountId","type":"address"}],"name":"AuthorizedOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"string","name":"functionName","type":"string"},{"indexed":true,"internalType":"address","name":"failedAddress","type":"address"}],"name":"BatchFailure","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"string","name":"functionName","type":"string"},{"indexed":false,"internalType":"bytes","name":"data","type":"bytes"}],"name":"MetaData","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldContractOwnerId","type":"address"},{"indexed":true,"internalType":"address","name":"newContractOwnerId","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"additionalOwnerAccountId","type":"address"},{"indexed":true,"internalType":"address","name":"ownerAccountId","type":"address"}],"name":"RevokedOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"payerId","type":"address"},{"indexed":true,"internalType":"address","name":"payeeId","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"address","name":"payeeId","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"additionalOwnerAccountId","type":"address"}],"name":"authorizeOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"accountId","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnAccumulatedTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newContractOwnerId","type":"address"}],"name":"changeOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"AdditionalOwnerAccountId","type":"address"},{"internalType":"address","name":"OwnerAccountId","type":"address"}],"name":"isOperatorFor","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maximumSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"beneficiaryAccountId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"operatorApprove","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"operatorBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"operatorTransfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"operatorTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"additionalOwnerAccountId","type":"address"}],"name":"revokeOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"address[]","name":"payeeIds","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"transferBatch","outputs":[{"internalType":"bool","name":"","type":"bool"},{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payerId","type":"address"},{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"payeeId","type":"address"},{"internalType":"address[]","name":"payerIds","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"transferFromBatch","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b5060405162001c6238038062001c62833981016040819052620000349162000264565b81851115620000af5760405162461bcd60e51b815260206004820152603760248201527f43757272656e7420737570706c79206d757374206265206c657373207468616e60448201527f206f7220657175616c20746f206d617820737570706c79000000000000000000606482015260840160405180910390fd5b6003620000bd8982620003c3565b506004620000cc8882620003c3565b506005805460ff1990811660ff891617825560028790556001600160a01b038681166000818152602081815260408083208c90558654610100600160a81b031916610100958b16959095029490941790955560078790556008805490941686151517909355905188815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505050505050506200048f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200019957600080fd5b81516001600160401b0380821115620001b657620001b662000171565b604051601f8301601f19908116603f01168101908282118183101715620001e157620001e162000171565b81604052838152602092508683858801011115620001fe57600080fd5b600091505b8382101562000222578582018301518183018401529082019062000203565b600093810190920192909252949350505050565b80516001600160a01b03811681146200024e57600080fd5b919050565b805180151581146200024e57600080fd5b600080600080600080600080610100898b0312156200028257600080fd5b88516001600160401b03808211156200029a57600080fd5b620002a88c838d0162000187565b995060208b0151915080821115620002bf57600080fd5b50620002ce8b828c0162000187565b975050604089015160ff81168114620002e657600080fd5b60608a01519096509450620002fe60808a0162000236565b93506200030e60a08a0162000236565b925060c089015191506200032560e08a0162000253565b90509295985092959890939650565b600181811c908216806200034957607f821691505b6020821081036200036a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003be57600081815260208120601f850160051c81016020861015620003995750805b601f850160051c820191505b81811015620003ba57828155600101620003a5565b5050505b505050565b81516001600160401b03811115620003df57620003df62000171565b620003f781620003f0845462000334565b8462000370565b602080601f8311600181146200042f5760008415620004165750858301515b600019600386901b1c1916600185901b178555620003ba565b600085815260208120601f198616915b8281101562000460578886015182559484019460019091019084016200043f565b50858210156200047f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6117c3806200049f6000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c80638fd10f72116100c3578063ce30b8d91161007c578063ce30b8d914610302578063cf828b5314610315578063d95b63711461031d578063dd62ed3e14610330578063fad8b32a14610343578063fe9d93031461035657600080fd5b80638fd10f721461027c57806394d008ef146102ae578063959b8c3f146102c157806395d89b41146102d4578063a6f9dae1146102dc578063a9059cbb146102ef57600080fd5b806318160ddd1161011557806318160ddd146101e757806323b872dd146101ef578063313ce5671461020257806370a08231146102175780637c514984146102405780638da5cb5b1461025357600080fd5b806303679fc71461015d5780630480e58b1461017257806306fdde0314610189578063095ea7b31461019e5780630c297029146101c15780630d1af103146101d4575b600080fd5b61017061016b36600461130f565b610369565b005b6007545b6040519081526020015b60405180910390f35b6101916103b3565b604051610180919061134b565b6101b16101ac366004611399565b610445565b6040519015158152602001610180565b6101b16101cf36600461130f565b6104ef565b6101b16101e236600461130f565b6105eb565b600254610176565b6101b16101fd36600461130f565b61061e565b60055460405160ff9091168152602001610180565b6101766102253660046113c3565b6001600160a01b031660009081526020819052604090205490565b6101b161024e36600461142a565b61062b565b60055461010090046001600160a01b03166040516001600160a01b039091168152602001610180565b61028f61028a36600461142a565b6108a7565b6040805192151583526001600160a01b03909116602083015201610180565b6101b16102bc3660046114ed565b610a2d565b6101706102cf3660046113c3565b610c2c565b610191610cdc565b6101b16102ea3660046113c3565b610ceb565b6101b16102fd366004611399565b610dac565b6101b16103103660046114ed565b610db9565b600954610176565b6101b161032b366004611547565b610df8565b61017661033e366004611547565b610e46565b6101706103513660046113c3565b610e71565b6101b161036436600461157a565b610ec6565b6103733383610df8565b6103985760405162461bcd60e51b815260040161038f906115c6565b60405180910390fd5b6103a3838383610ed4565b6103ae838383610f4e565b505050565b6060600380546103c290611608565b80601f01602080910402602001604051908101604052809291908181526020018280546103ee90611608565b801561043b5780601f106104105761010080835404028352916020019161043b565b820191906000526020600020905b81548152906001019060200180831161041e57829003601f168201915b5050505050905090565b3360009081526001602090815260408083206001600160a01b0386168452909152812054156104da5781156104da5760405162461bcd60e51b815260206004820152603560248201527f4d7573742073657420617070726f76616c20746f207a65726f206265666f7265604482015274081cd95d1d1a5b99c81b995dc8185c1c1c9bdd985b605a1b606482015260840161038f565b6104e53384846110dd565b5060015b92915050565b60006104fb3385610df8565b61055d5760405162461bcd60e51b815260206004820152602d60248201527f43616c6c6572206973206e6f7420616e206163636f756e74206f70657261746f60448201526c1c88199bdc881c185e595c9259609a1b606482015260840161038f565b6001600160a01b03808516600090815260016020908152604080832093871683529290522054156105d65781156105d65760405162461bcd60e51b815260206004820152601d60248201527f4d7573742063616e63656c2070726576696f757320617070726f76616c000000604482015260640161038f565b6105e18484846110dd565b5060019392505050565b60006105f73385610df8565b6106135760405162461bcd60e51b815260040161038f90611642565b6105e1848484610f4e565b6000610613843384610ed4565b60006106373387610df8565b6106535760405162461bcd60e51b815260040161038f906115c6565b8382146106c85760405162461bcd60e51b815260206004820152603760248201527f4c656e677468206f66202770617965724964732720616e642027616d6f756e7460448201527f73272061727261797320617265206e6f7420657175616c000000000000000000606482015260840161038f565b60008460015b8183101561089b578585848181106106e8576106e8611684565b9050602002013561071989898681811061070457610704611684565b905060200201602081019061022591906113c3565b108061076b575061075088888581811061073557610735611684565b905060200201602081019061074a91906113c3565b8a610e46565b86868581811061076257610762611684565b90506020020135115b156107f75750600087878481811061078557610785611684565b905060200201602081019061079a91906113c3565b6001600160a01b03166040516107c2906b7472616e7366657246726f6d60a01b8152600c0190565b604051908190038120907f9ced85143b46956397827f2830e092929d343270e8524450940e1c3ae71befe190600090a3610889565b61084088888581811061080c5761080c611684565b905060200201602081019061082191906113c3565b8a88888781811061083457610834611684565b90506020020135610ed4565b61088988888581811061085557610855611684565b905060200201602081019061086a91906113c3565b8a88888781811061087d5761087d611684565b90506020020135610f4e565b82610893816116b0565b9350506106ce565b98975050505050505050565b6000806108b43388610df8565b6108d05760405162461bcd60e51b815260040161038f90611642565b6000855b80821015610a18578585838181106108ee576108ee611684565b905060200201356109148a6001600160a01b031660009081526020819052604090205490565b10156109c95787878381811061092c5761092c611684565b905060200201602081019061094191906113c3565b6001600160a01b031660405161096590673a3930b739b332b960c11b815260080190565b604051908190038120907f9ced85143b46956397827f2830e092929d343270e8524450940e1c3ae71befe190600090a360008888848181106109a9576109a9611684565b90506020020160208101906109be91906113c3565b935093505050610a23565b610a06898989858181106109df576109df611684565b90506020020160208101906109f491906113c3565b88888681811061087d5761087d611684565b81610a10816116b0565b9250506108d4565b600160009350935050505b9550959350505050565b6000610a4b3361032b6005546001600160a01b036101009091041690565b610a675760405162461bcd60e51b815260040161038f906116c9565b6001600160a01b038516610a8d5760405162461bcd60e51b815260040161038f9061170d565b60085460ff168015610aae575083600254610aa89190611738565b60075410155b80610ae3575060085460ff16158015610ae3575060095484600254610ad39190611738565b610add9190611738565b60075410155b610b4b5760405162461bcd60e51b815260206004820152603360248201527f4d696e74696e6720776f756c64206578636565642074686520636f6e666967756044820152723932b21036b0bc34b6bab69039bab838363c9760691b606482015260840161038f565b8360026000828254610b5d9190611738565b90915550506001600160a01b03851660009081526020819052604081208054869290610b8a908490611738565b90915550506040518481526001600160a01b038616906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3604051631b5a5b9d60e21b815260040160405180910390207fb8ed7b1dcec9fe99007e055ff92bdea26fa8e2b943868e40eaa7d1c72d2743028484604051610c1992919061174b565b60405180910390a2506001949350505050565b6001600160a01b0381163303610c845760405162461bcd60e51b815260206004820152601c60248201527f417574686f72697a696e672073656c66206173206f70657261746f7200000000604482015260640161038f565b3360008181526006602090815260408083206001600160a01b0386168085529252808320805460ff191660011790555190917ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f991a350565b6060600480546103c290611608565b6000610d093361032b6005546001600160a01b036101009091041690565b610d255760405162461bcd60e51b815260040161038f906116c9565b6001600160a01b038216610d4b5760405162461bcd60e51b815260040161038f9061170d565b600580546001600160a01b03848116610100818102610100600160a81b031985161790945560405193909204169182907fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c90600090a360019150505b919050565b60006104e5338484610f4e565b6000610dc53386610df8565b610de15760405162461bcd60e51b815260040161038f90611642565b610ded8585858561118a565b506001949350505050565b6000816001600160a01b0316836001600160a01b03161480610e3f57506001600160a01b0380831660009081526006602090815260408083209387168352929052205460ff165b9392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3360008181526006602090815260408083206001600160a01b0386168085529252808320805460ff191690555190917f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa191a350565b60006105e13385858561118a565b6000610ee08484610e46565b90506000198114610f485781811015610f3b5760405162461bcd60e51b815260206004820152601860248201527f416d6f756e74206578636565647320616c6c6f77616e63650000000000000000604482015260640161038f565b610f4884848484036110dd565b50505050565b6001600160a01b038316610f745760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b038216610f9a5760405162461bcd60e51b815260040161038f9061170d565b306001600160a01b03831603610fea5760405162461bcd60e51b815260206004820152601560248201527410dbdb9d1c9858dd081859191c995cdcc81d5cd959605a1b604482015260640161038f565b6001600160a01b0383166000908152602081905260409020548181101561104c5760405162461bcd60e51b8152602060048201526016602482015275416d6f756e7420657863656564732062616c616e636560501b604482015260640161038f565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611083908490611738565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110cf91815260200190565b60405180910390a350505050565b6001600160a01b0383166111035760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b0382166111295760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0384166111b05760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b038416600090815260208190526040902054838110156112125760405162461bcd60e51b8152602060048201526016602482015275416d6f756e7420657863656564732062616c616e636560501b604482015260640161038f565b6001600160a01b038516600090815260208190526040812085830390556002805486929061124190849061177a565b92505081905550836009600082825461125a9190611738565b90915550506040518481526000906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360405163313ab93760e11b815260040160405180910390207fb8ed7b1dcec9fe99007e055ff92bdea26fa8e2b943868e40eaa7d1c72d27430284846040516112e992919061174b565b60405180910390a25050505050565b80356001600160a01b0381168114610da757600080fd5b60008060006060848603121561132457600080fd5b61132d846112f8565b925061133b602085016112f8565b9150604084013590509250925092565b600060208083528351808285015260005b818110156113785785810183015185820160400152820161135c565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156113ac57600080fd5b6113b5836112f8565b946020939093013593505050565b6000602082840312156113d557600080fd5b610e3f826112f8565b60008083601f8401126113f057600080fd5b50813567ffffffffffffffff81111561140857600080fd5b6020830191508360208260051b850101111561142357600080fd5b9250929050565b60008060008060006060868803121561144257600080fd5b61144b866112f8565b9450602086013567ffffffffffffffff8082111561146857600080fd5b61147489838a016113de565b9096509450604088013591508082111561148d57600080fd5b5061149a888289016113de565b969995985093965092949392505050565b60008083601f8401126114bd57600080fd5b50813567ffffffffffffffff8111156114d557600080fd5b60208301915083602082850101111561142357600080fd5b6000806000806060858703121561150357600080fd5b61150c856112f8565b935060208501359250604085013567ffffffffffffffff81111561152f57600080fd5b61153b878288016114ab565b95989497509550505050565b6000806040838503121561155a57600080fd5b611563836112f8565b9150611571602084016112f8565b90509250929050565b60008060006040848603121561158f57600080fd5b83359250602084013567ffffffffffffffff8111156115ad57600080fd5b6115b9868287016114ab565b9497909650939450505050565b60208082526022908201527f43616c6c6572206e6f7420616e206f70657261746f7220666f72207061796565604082015261125960f21b606082015260800190565b600181811c9082168061161c57607f821691505b60208210810361163c57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526022908201527f43616c6c6572206e6f7420616e206f70657261746f7220666f72207061796572604082015261125960f21b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016116c2576116c261169a565b5060010190565b60208082526024908201527f43616c6c6572206973206e6f7420746865206163636f756e742773206f70657260408201526330ba37b960e11b606082015260800190565b60208082526011908201527016995c9bc81859191c995cdcc81d5cd959607a1b604082015260600190565b808201808211156104e9576104e961169a565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b818103818111156104e9576104e961169a56fea2646970667358221220ad028ba2df50c1aaf446fc39e9812d2161040118e752016e3710c99b66453e7d64736f6c6343000810003300000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000017ee212c2da8cf8d7400000000000000000000000000000c9359d1e63f79a01c875b51bf71823dc2e597900000000000000000000000000c9359d1e63f79a01c875b51bf71823dc2e597900000000000000000000000000000000000000000007c13bc4b2c133c56000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000044c454f580000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044c454f5800000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101585760003560e01c80638fd10f72116100c3578063ce30b8d91161007c578063ce30b8d914610302578063cf828b5314610315578063d95b63711461031d578063dd62ed3e14610330578063fad8b32a14610343578063fe9d93031461035657600080fd5b80638fd10f721461027c57806394d008ef146102ae578063959b8c3f146102c157806395d89b41146102d4578063a6f9dae1146102dc578063a9059cbb146102ef57600080fd5b806318160ddd1161011557806318160ddd146101e757806323b872dd146101ef578063313ce5671461020257806370a08231146102175780637c514984146102405780638da5cb5b1461025357600080fd5b806303679fc71461015d5780630480e58b1461017257806306fdde0314610189578063095ea7b31461019e5780630c297029146101c15780630d1af103146101d4575b600080fd5b61017061016b36600461130f565b610369565b005b6007545b6040519081526020015b60405180910390f35b6101916103b3565b604051610180919061134b565b6101b16101ac366004611399565b610445565b6040519015158152602001610180565b6101b16101cf36600461130f565b6104ef565b6101b16101e236600461130f565b6105eb565b600254610176565b6101b16101fd36600461130f565b61061e565b60055460405160ff9091168152602001610180565b6101766102253660046113c3565b6001600160a01b031660009081526020819052604090205490565b6101b161024e36600461142a565b61062b565b60055461010090046001600160a01b03166040516001600160a01b039091168152602001610180565b61028f61028a36600461142a565b6108a7565b6040805192151583526001600160a01b03909116602083015201610180565b6101b16102bc3660046114ed565b610a2d565b6101706102cf3660046113c3565b610c2c565b610191610cdc565b6101b16102ea3660046113c3565b610ceb565b6101b16102fd366004611399565b610dac565b6101b16103103660046114ed565b610db9565b600954610176565b6101b161032b366004611547565b610df8565b61017661033e366004611547565b610e46565b6101706103513660046113c3565b610e71565b6101b161036436600461157a565b610ec6565b6103733383610df8565b6103985760405162461bcd60e51b815260040161038f906115c6565b60405180910390fd5b6103a3838383610ed4565b6103ae838383610f4e565b505050565b6060600380546103c290611608565b80601f01602080910402602001604051908101604052809291908181526020018280546103ee90611608565b801561043b5780601f106104105761010080835404028352916020019161043b565b820191906000526020600020905b81548152906001019060200180831161041e57829003601f168201915b5050505050905090565b3360009081526001602090815260408083206001600160a01b0386168452909152812054156104da5781156104da5760405162461bcd60e51b815260206004820152603560248201527f4d7573742073657420617070726f76616c20746f207a65726f206265666f7265604482015274081cd95d1d1a5b99c81b995dc8185c1c1c9bdd985b605a1b606482015260840161038f565b6104e53384846110dd565b5060015b92915050565b60006104fb3385610df8565b61055d5760405162461bcd60e51b815260206004820152602d60248201527f43616c6c6572206973206e6f7420616e206163636f756e74206f70657261746f60448201526c1c88199bdc881c185e595c9259609a1b606482015260840161038f565b6001600160a01b03808516600090815260016020908152604080832093871683529290522054156105d65781156105d65760405162461bcd60e51b815260206004820152601d60248201527f4d7573742063616e63656c2070726576696f757320617070726f76616c000000604482015260640161038f565b6105e18484846110dd565b5060019392505050565b60006105f73385610df8565b6106135760405162461bcd60e51b815260040161038f90611642565b6105e1848484610f4e565b6000610613843384610ed4565b60006106373387610df8565b6106535760405162461bcd60e51b815260040161038f906115c6565b8382146106c85760405162461bcd60e51b815260206004820152603760248201527f4c656e677468206f66202770617965724964732720616e642027616d6f756e7460448201527f73272061727261797320617265206e6f7420657175616c000000000000000000606482015260840161038f565b60008460015b8183101561089b578585848181106106e8576106e8611684565b9050602002013561071989898681811061070457610704611684565b905060200201602081019061022591906113c3565b108061076b575061075088888581811061073557610735611684565b905060200201602081019061074a91906113c3565b8a610e46565b86868581811061076257610762611684565b90506020020135115b156107f75750600087878481811061078557610785611684565b905060200201602081019061079a91906113c3565b6001600160a01b03166040516107c2906b7472616e7366657246726f6d60a01b8152600c0190565b604051908190038120907f9ced85143b46956397827f2830e092929d343270e8524450940e1c3ae71befe190600090a3610889565b61084088888581811061080c5761080c611684565b905060200201602081019061082191906113c3565b8a88888781811061083457610834611684565b90506020020135610ed4565b61088988888581811061085557610855611684565b905060200201602081019061086a91906113c3565b8a88888781811061087d5761087d611684565b90506020020135610f4e565b82610893816116b0565b9350506106ce565b98975050505050505050565b6000806108b43388610df8565b6108d05760405162461bcd60e51b815260040161038f90611642565b6000855b80821015610a18578585838181106108ee576108ee611684565b905060200201356109148a6001600160a01b031660009081526020819052604090205490565b10156109c95787878381811061092c5761092c611684565b905060200201602081019061094191906113c3565b6001600160a01b031660405161096590673a3930b739b332b960c11b815260080190565b604051908190038120907f9ced85143b46956397827f2830e092929d343270e8524450940e1c3ae71befe190600090a360008888848181106109a9576109a9611684565b90506020020160208101906109be91906113c3565b935093505050610a23565b610a06898989858181106109df576109df611684565b90506020020160208101906109f491906113c3565b88888681811061087d5761087d611684565b81610a10816116b0565b9250506108d4565b600160009350935050505b9550959350505050565b6000610a4b3361032b6005546001600160a01b036101009091041690565b610a675760405162461bcd60e51b815260040161038f906116c9565b6001600160a01b038516610a8d5760405162461bcd60e51b815260040161038f9061170d565b60085460ff168015610aae575083600254610aa89190611738565b60075410155b80610ae3575060085460ff16158015610ae3575060095484600254610ad39190611738565b610add9190611738565b60075410155b610b4b5760405162461bcd60e51b815260206004820152603360248201527f4d696e74696e6720776f756c64206578636565642074686520636f6e666967756044820152723932b21036b0bc34b6bab69039bab838363c9760691b606482015260840161038f565b8360026000828254610b5d9190611738565b90915550506001600160a01b03851660009081526020819052604081208054869290610b8a908490611738565b90915550506040518481526001600160a01b038616906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3604051631b5a5b9d60e21b815260040160405180910390207fb8ed7b1dcec9fe99007e055ff92bdea26fa8e2b943868e40eaa7d1c72d2743028484604051610c1992919061174b565b60405180910390a2506001949350505050565b6001600160a01b0381163303610c845760405162461bcd60e51b815260206004820152601c60248201527f417574686f72697a696e672073656c66206173206f70657261746f7200000000604482015260640161038f565b3360008181526006602090815260408083206001600160a01b0386168085529252808320805460ff191660011790555190917ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f991a350565b6060600480546103c290611608565b6000610d093361032b6005546001600160a01b036101009091041690565b610d255760405162461bcd60e51b815260040161038f906116c9565b6001600160a01b038216610d4b5760405162461bcd60e51b815260040161038f9061170d565b600580546001600160a01b03848116610100818102610100600160a81b031985161790945560405193909204169182907fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c90600090a360019150505b919050565b60006104e5338484610f4e565b6000610dc53386610df8565b610de15760405162461bcd60e51b815260040161038f90611642565b610ded8585858561118a565b506001949350505050565b6000816001600160a01b0316836001600160a01b03161480610e3f57506001600160a01b0380831660009081526006602090815260408083209387168352929052205460ff165b9392505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3360008181526006602090815260408083206001600160a01b0386168085529252808320805460ff191690555190917f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa191a350565b60006105e13385858561118a565b6000610ee08484610e46565b90506000198114610f485781811015610f3b5760405162461bcd60e51b815260206004820152601860248201527f416d6f756e74206578636565647320616c6c6f77616e63650000000000000000604482015260640161038f565b610f4884848484036110dd565b50505050565b6001600160a01b038316610f745760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b038216610f9a5760405162461bcd60e51b815260040161038f9061170d565b306001600160a01b03831603610fea5760405162461bcd60e51b815260206004820152601560248201527410dbdb9d1c9858dd081859191c995cdcc81d5cd959605a1b604482015260640161038f565b6001600160a01b0383166000908152602081905260409020548181101561104c5760405162461bcd60e51b8152602060048201526016602482015275416d6f756e7420657863656564732062616c616e636560501b604482015260640161038f565b6001600160a01b03808516600090815260208190526040808220858503905591851681529081208054849290611083908490611738565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516110cf91815260200190565b60405180910390a350505050565b6001600160a01b0383166111035760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b0382166111295760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0384166111b05760405162461bcd60e51b815260040161038f9061170d565b6001600160a01b038416600090815260208190526040902054838110156112125760405162461bcd60e51b8152602060048201526016602482015275416d6f756e7420657863656564732062616c616e636560501b604482015260640161038f565b6001600160a01b038516600090815260208190526040812085830390556002805486929061124190849061177a565b92505081905550836009600082825461125a9190611738565b90915550506040518481526000906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360405163313ab93760e11b815260040160405180910390207fb8ed7b1dcec9fe99007e055ff92bdea26fa8e2b943868e40eaa7d1c72d27430284846040516112e992919061174b565b60405180910390a25050505050565b80356001600160a01b0381168114610da757600080fd5b60008060006060848603121561132457600080fd5b61132d846112f8565b925061133b602085016112f8565b9150604084013590509250925092565b600060208083528351808285015260005b818110156113785785810183015185820160400152820161135c565b506000604082860101526040601f19601f8301168501019250505092915050565b600080604083850312156113ac57600080fd5b6113b5836112f8565b946020939093013593505050565b6000602082840312156113d557600080fd5b610e3f826112f8565b60008083601f8401126113f057600080fd5b50813567ffffffffffffffff81111561140857600080fd5b6020830191508360208260051b850101111561142357600080fd5b9250929050565b60008060008060006060868803121561144257600080fd5b61144b866112f8565b9450602086013567ffffffffffffffff8082111561146857600080fd5b61147489838a016113de565b9096509450604088013591508082111561148d57600080fd5b5061149a888289016113de565b969995985093965092949392505050565b60008083601f8401126114bd57600080fd5b50813567ffffffffffffffff8111156114d557600080fd5b60208301915083602082850101111561142357600080fd5b6000806000806060858703121561150357600080fd5b61150c856112f8565b935060208501359250604085013567ffffffffffffffff81111561152f57600080fd5b61153b878288016114ab565b95989497509550505050565b6000806040838503121561155a57600080fd5b611563836112f8565b9150611571602084016112f8565b90509250929050565b60008060006040848603121561158f57600080fd5b83359250602084013567ffffffffffffffff8111156115ad57600080fd5b6115b9868287016114ab565b9497909650939450505050565b60208082526022908201527f43616c6c6572206e6f7420616e206f70657261746f7220666f72207061796565604082015261125960f21b606082015260800190565b600181811c9082168061161c57607f821691505b60208210810361163c57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526022908201527f43616c6c6572206e6f7420616e206f70657261746f7220666f72207061796572604082015261125960f21b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016116c2576116c261169a565b5060010190565b60208082526024908201527f43616c6c6572206973206e6f7420746865206163636f756e742773206f70657260408201526330ba37b960e11b606082015260800190565b60208082526011908201527016995c9bc81859191c995cdcc81d5cd959607a1b604082015260600190565b808201808211156104e9576104e961169a565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b818103818111156104e9576104e961169a56fea2646970667358221220ad028ba2df50c1aaf446fc39e9812d2161040118e752016e3710c99b66453e7d64736f6c63430008100033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000017ee212c2da8cf8d7400000000000000000000000000000c9359d1e63f79a01c875b51bf71823dc2e597900000000000000000000000000c9359d1e63f79a01c875b51bf71823dc2e597900000000000000000000000000000000000000000007c13bc4b2c133c56000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000044c454f580000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044c454f5800000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name_ (string): LEOX
Arg [1] : symbol_ (string): LEOX
Arg [2] : decimals_ (uint8): 18
Arg [3] : supply_ (uint256): 28929829000000000000000000
Arg [4] : giveSupplyTo_ (address): 0x0C9359D1E63f79a01c875B51bF71823dC2E59790
Arg [5] : owner_ (address): 0x0C9359D1E63f79a01c875B51bF71823dC2E59790
Arg [6] : maximumSupply_ (uint256): 150000000000000000000000000
Arg [7] : allowRemint_ (bool): True
-----Encoded View---------------
12 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000100
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000140
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 00000000000000000000000000000000000000000017ee212c2da8cf8d740000
Arg [4] : 0000000000000000000000000c9359d1e63f79a01c875b51bf71823dc2e59790
Arg [5] : 0000000000000000000000000c9359d1e63f79a01c875b51bf71823dc2e59790
Arg [6] : 0000000000000000000000000000000000000000007c13bc4b2c133c56000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [8] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [9] : 4c454f5800000000000000000000000000000000000000000000000000000000
Arg [10] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [11] : 4c454f5800000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
62:23468:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8656:321;;;;;;:::i;:::-;;:::i;:::-;;22269:94;22341:14;;22269:94;;;671:25:1;;;659:2;644:18;22269:94:0;;;;;;;;20278:83;;;:::i;:::-;;;;;;;:::i;5547:419::-;;;;;;:::i;:::-;;:::i;:::-;;;1684:14:1;;1677:22;1659:41;;1647:2;1632:18;5547:419:0;1519:187:1;6691:543:0;;;;;;:::i;:::-;;:::i;4675:302::-;;;;;;:::i;:::-;;:::i;21350:91::-;21421:12;;21350:91;;7772:372;;;;;;:::i;:::-;;:::i;21114:83::-;21180:9;;21114:83;;21180:9;;;;1853:36:1;;1841:2;1826:18;21114:83:0;1711:184:1;21980:114:0;;;;;;:::i;:::-;-1:-1:-1;;;;;22066:20:0;22039:7;22066:20;;;;;;;;;;;;21980:114;15789:1155;;;;;;:::i;:::-;;:::i;21729:79::-;21794:6;;;;;-1:-1:-1;;;;;21794:6:0;21729:79;;-1:-1:-1;;;;;3479:32:1;;;3461:51;;3449:2;3434:18;21729:79:0;3315:203:1;14097:701:0;;;;;;:::i;:::-;;:::i;:::-;;;;3716:14:1;;3709:22;3691:41;;-1:-1:-1;;;;;3768:32:1;;;3763:2;3748:18;;3741:60;3664:18;14097:701:0;3523:284:1;9559:667:0;;;;;;:::i;:::-;;:::i;12600:317::-;;;;;;:::i;:::-;;:::i;20480:87::-;;;:::i;12019:322::-;;;;;;:::i;:::-;;:::i;3990:154::-;;;;;;:::i;:::-;;:::i;11473:261::-;;;;;;:::i;:::-;;:::i;22469:108::-;22548:21;;22469:108;;23258:265;;;;;;:::i;:::-;;:::i;22863:138::-;;;;;;:::i;:::-;;:::i;13179:221::-;;;;;;:::i;:::-;;:::i;10736:147::-;;;;;;:::i;:::-;;:::i;8656:321::-;8798:34;8812:10;8824:7;8798:13;:34::i;:::-;8790:81;;;;-1:-1:-1;;;8790:81:0;;;;;;;:::i;:::-;;;;;;;;;8882:41;8898:7;8907;8916:6;8882:15;:41::i;:::-;8934:35;8944:7;8953;8962:6;8934:9;:35::i;:::-;8656:321;;;:::o;20278:83::-;20315:13;20348:5;20341:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20278:83;:::o;5547:419::-;5648:10;5615:4;5636:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5636:32:0;;;;;;;;;;:36;5632:257;;5696:11;;5688:77;;;;-1:-1:-1;;;5688:77:0;;6457:2:1;5688:77:0;;;6439:21:1;6496:2;6476:18;;;6469:30;6535:34;6515:18;;;6508:62;-1:-1:-1;;;6586:18:1;;;6579:51;6647:19;;5688:77:0;6255:417:1;5688:77:0;5899:37;5908:10;5920:7;5929:6;5899:8;:37::i;:::-;-1:-1:-1;5954:4:0;5547:419;;;;;:::o;6691:543::-;6818:4;6843:34;6857:10;6869:7;6843:13;:34::i;:::-;6835:92;;;;-1:-1:-1;;;6835:92:0;;6879:2:1;6835:92:0;;;6861:21:1;6918:2;6898:18;;;6891:30;6957:34;6937:18;;;6930:62;-1:-1:-1;;;7008:18:1;;;7001:43;7061:19;;6835:92:0;6677:409:1;6835:92:0;-1:-1:-1;;;;;6942:20:0;;;6974:1;6942:20;;;:11;:20;;;;;;;;:29;;;;;;;;;;:33;6938:222;;6999:11;;6991:53;;;;-1:-1:-1;;;6991:53:0;;7293:2:1;6991:53:0;;;7275:21:1;7332:2;7312:18;;;7305:30;7371:31;7351:18;;;7344:59;7420:18;;6991:53:0;7091:353:1;6991:53:0;7170:34;7179:7;7188;7197:6;7170:8;:34::i;:::-;-1:-1:-1;7222:4:0;6691:543;;;;;:::o;4675:302::-;4803:4;4828:34;4842:10;4854:7;4828:13;:34::i;:::-;4820:81;;;;-1:-1:-1;;;4820:81:0;;;;;;;:::i;:::-;4912:35;4922:7;4931;4940:6;4912:9;:35::i;7772:372::-;7862:4;7879:44;7895:7;7904:10;7916:6;7879:15;:44::i;15789:1155::-;15908:4;15933:34;15947:10;15959:7;15933:13;:34::i;:::-;15925:81;;;;-1:-1:-1;;;15925:81:0;;;;;;;:::i;:::-;16025:33;;;16017:101;;;;-1:-1:-1;;;16017:101:0;;8054:2:1;16017:101:0;;;8036:21:1;8093:2;8073:18;;;8066:30;8132:34;8112:18;;;8105:62;8203:25;8183:18;;;8176:53;8246:19;;16017:101:0;7852:419:1;16017:101:0;16131:10;16164:8;16205:4;16222:690;16237:4;16229:5;:12;16222:690;;;16307:7;;16315:5;16307:14;;;;;;;:::i;:::-;;;;;;;16278:26;16288:8;;16297:5;16288:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;16278:26::-;:43;16277:103;;;;16344:35;16354:8;;16363:5;16354:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;16371:7;16344:9;:35::i;:::-;16327:7;;16335:5;16327:14;;;;;;;:::i;:::-;;;;;;;:52;16277:103;16273:606;;;-1:-1:-1;16410:5:0;16468:8;;16477:5;16468:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;16439:45:0;;;;;-1:-1:-1;;;8610:27:1;;8662:2;8653:12;;8408:263;16439:45:0;;;;;;;;;;;;;;;16273:606;;;16594:57;16610:8;;16619:5;16610:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;16627:7;16636;;16644:5;16636:14;;;;;;;:::i;:::-;;;;;;;16594:15;:57::i;:::-;16719:51;16729:8;;16738:5;16729:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;16746:7;16755;;16763:5;16755:14;;;;;;;:::i;:::-;;;;;;;16719:9;:51::i;:::-;16893:7;;;;:::i;:::-;;;;16222:690;;;16929:7;15789:1155;-1:-1:-1;;;;;;;;15789:1155:0:o;14097:701::-;14212:4;14218:7;14246:34;14260:10;14272:7;14246:13;:34::i;:::-;14238:81;;;;-1:-1:-1;;;14238:81:0;;;;;;;:::i;:::-;14330:10;14363:8;14389:364;14404:4;14396:5;:12;14389:364;;;14449:7;;14457:5;14449:14;;;;;;;:::i;:::-;;;;;;;14428:18;14438:7;-1:-1:-1;;;;;22066:20:0;22039:7;22066:20;;;;;;;;;;;;21980:114;14428:18;:35;14424:230;;;14513:8;;14522:5;14513:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14488:41:0;;;;;-1:-1:-1;;;9150:23:1;;9198:1;9189:11;;8948:258;14488:41:0;;;;;;;;;;;;;;;14615:5;14622:8;;14631:5;14622:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;14607:31;;;;;;;;14424:230;14668:51;14678:7;14687:8;;14696:5;14687:15;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;14704:7;;14712:5;14704:14;;;;;;;:::i;14668:51::-;14734:7;;;;:::i;:::-;;;;14389:364;;;14771:4;14785:3;14763:27;;;;;;14097:701;;;;;;;;;:::o;9559:667::-;9670:4;3528:34;3542:10;3554:7;21794:6;;-1:-1:-1;;;;;21794:6:0;;;;;;21729:79;3528:34;3520:83;;;;-1:-1:-1;;;3520:83:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9695:34:0;::::1;9687:64;;;;-1:-1:-1::0;;;9687:64:0::1;;;;;;;:::i;:::-;9771:12;::::0;::::1;;:57:::0;::::1;;;;9821:6;9806:12;;:21;;;;:::i;:::-;9787:14;;:41;;9771:57;9770:166;;;-1:-1:-1::0;9852:12:0::1;::::0;::::1;;9851:13;:84:::0;::::1;;;;9912:21;;9903:6;9888:12;;:21;;;;:::i;:::-;:45;;;;:::i;:::-;9869:14;;:65;;9851:84;9762:231;;;::::0;-1:-1:-1;;;9762:231:0;;10294:2:1;9762:231:0::1;::::0;::::1;10276:21:1::0;10333:2;10313:18;;;10306:30;10372:34;10352:18;;;10345:62;-1:-1:-1;;;10423:18:1;;;10416:49;10482:19;;9762:231:0::1;10092:415:1::0;9762:231:0::1;10022:6;10006:12;;:22;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;10039:31:0;::::1;:9;:31:::0;;;::::1;::::0;;;;;;:41;;10074:6;;10039:9;:41:::1;::::0;10074:6;;10039:41:::1;:::i;:::-;::::0;;;-1:-1:-1;;10106:50:0::1;::::0;671:25:1;;;-1:-1:-1;;;;;10106:50:0;::::1;::::0;10123:1:::1;::::0;10106:50:::1;::::0;659:2:1;644:18;10106:50:0::1;;;;;;;10172:22;::::0;-1:-1:-1;;;10714:19:1;;10758:1;10749:11;10172:22:0::1;;;;;;;;10189:4;;10172:22;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1::0;10214:4:0::1;9559:667:::0;;;;;;:::o;12600:317::-;-1:-1:-1;;;;;12689:38:0;;:10;:38;12681:79;;;;-1:-1:-1;;;12681:79:0;;11366:2:1;12681:79:0;;;11348:21:1;11405:2;11385:18;;;11378:30;11444;11424:18;;;11417:58;11492:18;;12681:79:0;11164:352:1;12681:79:0;12791:10;12773:29;;;;:17;:29;;;;;;;;-1:-1:-1;;;;;12773:55:0;;;;;;;;;;:62;;-1:-1:-1;;12773:62:0;12831:4;12773:62;;;12853:56;12773:55;;12853:56;;;12600:317;:::o;20480:87::-;20519:13;20552:7;20545:14;;;;;:::i;12019:322::-;12098:4;3528:34;3542:10;3554:7;21794:6;;-1:-1:-1;;;;;21794:6:0;;;;;;21729:79;3528:34;3520:83;;;;-1:-1:-1;;;3520:83:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12123:34:0;::::1;12115:64;;;;-1:-1:-1::0;;;12115:64:0::1;;;;;;;:::i;:::-;12209:6;::::0;;-1:-1:-1;;;;;12226:27:0;;::::1;12209:6;12226:27:::0;;::::1;-1:-1:-1::0;;;;;;12226:27:0;::::1;;::::0;;;12269:42:::1;::::0;12209:6;;;::::1;;::::0;;;12269:42:::1;::::0;12190:16:::1;::::0;12269:42:::1;12329:4;12322:11;;;3612:1;12019:322:::0;;;:::o;3990:154::-;4059:4;4076:38;4086:10;4098:7;4107:6;4076:9;:38::i;11473:261::-;11567:4;11592:34;11606:10;11618:7;11592:13;:34::i;:::-;11584:81;;;;-1:-1:-1;;;11584:81:0;;;;;;;:::i;:::-;11676:28;11682:7;11691:6;11699:4;;11676:5;:28::i;:::-;-1:-1:-1;11722:4:0;11473:261;;;;;;:::o;23258:265::-;23360:4;23425:14;-1:-1:-1;;;;;23397:42:0;:24;-1:-1:-1;;;;;23397:42:0;;:118;;;-1:-1:-1;;;;;;23456:33:0;;;;;;;:17;:33;;;;;;;;:59;;;;;;;;;;;;23397:118;23377:138;23258:265;-1:-1:-1;;;23258:265:0:o;22863:138::-;-1:-1:-1;;;;;22964:20:0;;;22937:7;22964:20;;;:11;:20;;;;;;;;:29;;;;;;;;;;;;;22863:138::o;13179:221::-;13284:10;13266:29;;;;:17;:29;;;;;;;;-1:-1:-1;;;;;13266:55:0;;;;;;;;;;13259:62;;-1:-1:-1;;13259:62:0;;;13339:53;13266:55;;13339:53;;;13179:221;:::o;10736:147::-;10805:4;10822:31;10828:10;10840:6;10848:4;;10822:5;:31::i;19797:411::-;19891:24;19918:27;19928:7;19937;19918:9;:27::i;:::-;19891:54;;-1:-1:-1;;19960:16:0;:37;19956:245;;20042:6;20022:16;:26;;20014:63;;;;-1:-1:-1;;;20014:63:0;;11723:2:1;20014:63:0;;;11705:21:1;11762:2;11742:18;;;11735:30;11801:26;11781:18;;;11774:54;11845:18;;20014:63:0;11521:348:1;20014:63:0;20121:53;20130:7;20139;20167:6;20148:16;:25;20121:8;:53::i;:::-;19880:328;19797:411;;;:::o;17344:585::-;-1:-1:-1;;;;;17440:21:0;;17432:51;;;;-1:-1:-1;;;17432:51:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17502:21:0;;17494:51;;;;-1:-1:-1;;;17494:51:0;;;;;;;:::i;:::-;17583:4;-1:-1:-1;;;;;17564:24:0;;;17556:58;;;;-1:-1:-1;;;17556:58:0;;12076:2:1;17556:58:0;;;12058:21:1;12115:2;12095:18;;;12088:30;-1:-1:-1;;;12134:18:1;;;12127:51;12195:18;;17556:58:0;11874:345:1;17556:58:0;-1:-1:-1;;;;;17651:18:0;;17627:21;17651:18;;;;;;;;;;;17688:23;;;;17680:58;;;;-1:-1:-1;;;17680:58:0;;12426:2:1;17680:58:0;;;12408:21:1;12465:2;12445:18;;;12438:30;-1:-1:-1;;;12484:18:1;;;12477:52;12546:18;;17680:58:0;12224:346:1;17680:58:0;-1:-1:-1;;;;;17774:18:0;;;:9;:18;;;;;;;;;;;17795:22;;;17774:43;;17839:18;;;;;;;;:28;;17811:6;;17774:9;17839:28;;17811:6;;17839:28;:::i;:::-;;;;;;;;17903:7;-1:-1:-1;;;;;17885:34:0;17894:7;-1:-1:-1;;;;;17885:34:0;;17912:6;17885:34;;;;671:25:1;;659:2;644:18;;525:177;17885:34:0;;;;;;;;17421:508;17344:585;;;:::o;19258:309::-;-1:-1:-1;;;;;19353:21:0;;19345:51;;;;-1:-1:-1;;;19345:51:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19415:21:0;;19407:51;;;;-1:-1:-1;;;19407:51:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19471:20:0;;;;;;;:11;:20;;;;;;;;:29;;;;;;;;;;;;;:38;;;19525:34;;671:25:1;;;19525:34:0;;644:18:1;19525:34:0;;;;;;;19258:309;;;:::o;18274:542::-;-1:-1:-1;;;;;18372:21:0;;18364:51;;;;-1:-1:-1;;;18364:51:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18453:18:0;;18428:22;18453:18;;;;;;;;;;;18490:24;;;;18482:59;;;;-1:-1:-1;;;18482:59:0;;12426:2:1;18482:59:0;;;12408:21:1;12465:2;12445:18;;;12438:30;-1:-1:-1;;;12484:18:1;;;12477:52;12546:18;;18482:59:0;12224:346:1;18482:59:0;-1:-1:-1;;;;;18577:18:0;;:9;:18;;;;;;;;;;18598:23;;;18577:44;;18643:12;:22;;18615:6;;18577:9;18643:22;;18615:6;;18643:22;:::i;:::-;;;;;;;;18709:6;18684:21;;:31;;;;;;;:::i;:::-;;;;-1:-1:-1;;18733:37:0;;671:25:1;;;18759:1:0;;-1:-1:-1;;;;;18733:37:0;;;;;659:2:1;644:18;18733:37:0;;;;;;;18786:22;;-1:-1:-1;;;12910:19:1;;12954:1;12945:11;18786:22:0;;;;;;;;18803:4;;18786:22;;;;;;;:::i;:::-;;;;;;;;18351:465;18274:542;;;;:::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;192:328;269:6;277;285;338:2;326:9;317:7;313:23;309:32;306:52;;;354:1;351;344:12;306:52;377:29;396:9;377:29;:::i;:::-;367:39;;425:38;459:2;448:9;444:18;425:38;:::i;:::-;415:48;;510:2;499:9;495:18;482:32;472:42;;192:328;;;;;:::o;707:548::-;819:4;848:2;877;866:9;859:21;909:6;903:13;952:6;947:2;936:9;932:18;925:34;977:1;987:140;1001:6;998:1;995:13;987:140;;;1096:14;;;1092:23;;1086:30;1062:17;;;1081:2;1058:26;1051:66;1016:10;;987:140;;;991:3;1176:1;1171:2;1162:6;1151:9;1147:22;1143:31;1136:42;1246:2;1239;1235:7;1230:2;1222:6;1218:15;1214:29;1203:9;1199:45;1195:54;1187:62;;;;707:548;;;;:::o;1260:254::-;1328:6;1336;1389:2;1377:9;1368:7;1364:23;1360:32;1357:52;;;1405:1;1402;1395:12;1357:52;1428:29;1447:9;1428:29;:::i;:::-;1418:39;1504:2;1489:18;;;;1476:32;;-1:-1:-1;;;1260:254:1:o;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;2091:367::-;2154:8;2164:6;2218:3;2211:4;2203:6;2199:17;2195:27;2185:55;;2236:1;2233;2226:12;2185:55;-1:-1:-1;2259:20:1;;2302:18;2291:30;;2288:50;;;2334:1;2331;2324:12;2288:50;2371:4;2363:6;2359:17;2347:29;;2431:3;2424:4;2414:6;2411:1;2407:14;2399:6;2395:27;2391:38;2388:47;2385:67;;;2448:1;2445;2438:12;2385:67;2091:367;;;;;:::o;2463:847::-;2594:6;2602;2610;2618;2626;2679:2;2667:9;2658:7;2654:23;2650:32;2647:52;;;2695:1;2692;2685:12;2647:52;2718:29;2737:9;2718:29;:::i;:::-;2708:39;;2798:2;2787:9;2783:18;2770:32;2821:18;2862:2;2854:6;2851:14;2848:34;;;2878:1;2875;2868:12;2848:34;2917:70;2979:7;2970:6;2959:9;2955:22;2917:70;:::i;:::-;3006:8;;-1:-1:-1;2891:96:1;-1:-1:-1;3094:2:1;3079:18;;3066:32;;-1:-1:-1;3110:16:1;;;3107:36;;;3139:1;3136;3129:12;3107:36;;3178:72;3242:7;3231:8;3220:9;3216:24;3178:72;:::i;:::-;2463:847;;;;-1:-1:-1;2463:847:1;;-1:-1:-1;3269:8:1;;3152:98;2463:847;-1:-1:-1;;;2463:847:1:o;3812:347::-;3863:8;3873:6;3927:3;3920:4;3912:6;3908:17;3904:27;3894:55;;3945:1;3942;3935:12;3894:55;-1:-1:-1;3968:20:1;;4011:18;4000:30;;3997:50;;;4043:1;4040;4033:12;3997:50;4080:4;4072:6;4068:17;4056:29;;4132:3;4125:4;4116:6;4108;4104:19;4100:30;4097:39;4094:59;;;4149:1;4146;4139:12;4164:551;4252:6;4260;4268;4276;4329:2;4317:9;4308:7;4304:23;4300:32;4297:52;;;4345:1;4342;4335:12;4297:52;4368:29;4387:9;4368:29;:::i;:::-;4358:39;;4444:2;4433:9;4429:18;4416:32;4406:42;;4499:2;4488:9;4484:18;4471:32;4526:18;4518:6;4515:30;4512:50;;;4558:1;4555;4548:12;4512:50;4597:58;4647:7;4638:6;4627:9;4623:22;4597:58;:::i;:::-;4164:551;;;;-1:-1:-1;4674:8:1;-1:-1:-1;;;;4164:551:1:o;4720:260::-;4788:6;4796;4849:2;4837:9;4828:7;4824:23;4820:32;4817:52;;;4865:1;4862;4855:12;4817:52;4888:29;4907:9;4888:29;:::i;:::-;4878:39;;4936:38;4970:2;4959:9;4955:18;4936:38;:::i;:::-;4926:48;;4720:260;;;;;:::o;4985:477::-;5064:6;5072;5080;5133:2;5121:9;5112:7;5108:23;5104:32;5101:52;;;5149:1;5146;5139:12;5101:52;5185:9;5172:23;5162:33;;5246:2;5235:9;5231:18;5218:32;5273:18;5265:6;5262:30;5259:50;;;5305:1;5302;5295:12;5259:50;5344:58;5394:7;5385:6;5374:9;5370:22;5344:58;:::i;:::-;4985:477;;5421:8;;-1:-1:-1;5318:84:1;;-1:-1:-1;;;;4985:477:1:o;5467:398::-;5669:2;5651:21;;;5708:2;5688:18;;;5681:30;5747:34;5742:2;5727:18;;5720:62;-1:-1:-1;;;5813:2:1;5798:18;;5791:32;5855:3;5840:19;;5467:398::o;5870:380::-;5949:1;5945:12;;;;5992;;;6013:61;;6067:4;6059:6;6055:17;6045:27;;6013:61;6120:2;6112:6;6109:14;6089:18;6086:38;6083:161;;6166:10;6161:3;6157:20;6154:1;6147:31;6201:4;6198:1;6191:15;6229:4;6226:1;6219:15;6083:161;;5870:380;;;:::o;7449:398::-;7651:2;7633:21;;;7690:2;7670:18;;;7663:30;7729:34;7724:2;7709:18;;7702:62;-1:-1:-1;;;7795:2:1;7780:18;;7773:32;7837:3;7822:19;;7449:398::o;8276:127::-;8337:10;8332:3;8328:20;8325:1;8318:31;8368:4;8365:1;8358:15;8392:4;8389:1;8382:15;8676:127;8737:10;8732:3;8728:20;8725:1;8718:31;8768:4;8765:1;8758:15;8792:4;8789:1;8782:15;8808:135;8847:3;8868:17;;;8865:43;;8888:18;;:::i;:::-;-1:-1:-1;8935:1:1;8924:13;;8808:135::o;9211:400::-;9413:2;9395:21;;;9452:2;9432:18;;;9425:30;9491:34;9486:2;9471:18;;9464:62;-1:-1:-1;;;9557:2:1;9542:18;;9535:34;9601:3;9586:19;;9211:400::o;9616:341::-;9818:2;9800:21;;;9857:2;9837:18;;;9830:30;-1:-1:-1;;;9891:2:1;9876:18;;9869:47;9948:2;9933:18;;9616:341::o;9962:125::-;10027:9;;;10048:10;;;10045:36;;;10061:18;;:::i;10771:388::-;10928:2;10917:9;10910:21;10967:6;10962:2;10951:9;10947:18;10940:34;11024:6;11016;11011:2;11000:9;10996:18;10983:48;11080:1;11051:22;;;11075:2;11047:31;;;11040:42;;;;11143:2;11122:15;;;-1:-1:-1;;11118:29:1;11103:45;11099:54;;10771:388;-1:-1:-1;10771:388:1:o;12575:128::-;12642:9;;;12663:11;;;12660:37;;;12677:18;;:::i
Swarm Source
ipfs://ad028ba2df50c1aaf446fc39e9812d2161040118e752016e3710c99b66453e7d
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.