ETH Price: $1,872.76 (-7.48%)
 

Overview

Max Total Supply

0 F721

Holders

3,118

Market

Volume (24H)

N/A

Min Price (24H)

N/A

Max Price (24H)

N/A
Balance
0 F721
0xa8c1cbbf0cf7e44d685c19d0a70511b33e80232e
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:
Fair721

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 9 runs

Other Settings:
default evmVersion
File 1 of 14 : Fair721.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.18;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721Burnable.sol";
import "@openzeppelin/contracts/utils/Strings.sol";
contract Fair721 is ERC721, ERC721Burnable {
using Strings for uint256;
uint256 public constant MAX_MINT = 10240;
uint256 public _currentTokenId = 0;
mapping(uint256 => uint256) public _tokenAmounts;
mapping(address => uint256) public _userMinted;
address public creator;
constructor() ERC721("Fair 721", "F721") {
creator = msg.sender;
}
function _baseURI() internal view virtual override returns (string memory) {
return "ipfs://QmVWVWF4S64GfXHBvfkyL3sMxBNWjG1rhSCUajdcQuoUE7/";
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 2 of 14 : IERC20.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol)
pragma solidity ^0.8.0;
/**
* @dev Interface of the ERC20 standard as defined in the EIP.
*/
interface IERC20 {
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*
* Note that `value` may be zero.
*/
event Transfer(address indexed from, address indexed to, uint256 value);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to {approve}. `value` is the new allowance.
*/
event Approval(address indexed owner, address indexed spender, uint256 value);
/**
* @dev Returns the amount of tokens in existence.
*/
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 3 of 14 : ERC721.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC721/ERC721.sol)
pragma solidity ^0.8.0;
import "./IERC721.sol";
import "./IERC721Receiver.sol";
import "./extensions/IERC721Metadata.sol";
import "../../utils/Address.sol";
import "../../utils/Context.sol";
import "../../utils/Strings.sol";
import "../../utils/introspection/ERC165.sol";
/**
* @dev Implementation of https://eips.ethereum.org/EIPS/eip-721[ERC721] Non-Fungible Token Standard, including
* the Metadata extension, but not including the Enumerable extension, which is available separately as
* {ERC721Enumerable}.
*/
contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
using Address for address;
using Strings for uint256;
// Token name
string private _name;
// Token symbol
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 4 of 14 : ERC721Burnable.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.8.0) (token/ERC721/extensions/ERC721Burnable.sol)
pragma solidity ^0.8.0;
import "../ERC721.sol";
import "../../../utils/Context.sol";
/**
* @title ERC721 Burnable Token
* @dev ERC721 Token that can be burned (destroyed).
*/
abstract contract ERC721Burnable is Context, ERC721 {
/**
* @dev Burns `tokenId`. See {ERC721-_burn}.
*
* Requirements:
*
* - The caller must own `tokenId` or be an approved operator.
*/
function burn(uint256 tokenId) public virtual {
//solhint-disable-next-line max-line-length
require(_isApprovedOrOwner(_msgSender(), tokenId), "ERC721: caller is not token owner or approved");
_burn(tokenId);
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 5 of 14 : IERC721Metadata.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (token/ERC721/extensions/IERC721Metadata.sol)
pragma solidity ^0.8.0;
import "../IERC721.sol";
/**
* @title ERC-721 Non-Fungible Token Standard, optional metadata extension
* @dev See https://eips.ethereum.org/EIPS/eip-721
*/
interface IERC721Metadata is IERC721 {
/**
* @dev Returns the token collection name.
*/
function name() external view returns (string memory);
/**
* @dev Returns the token collection symbol.
*/
function symbol() external view returns (string memory);
/**
* @dev Returns the Uniform Resource Identifier (URI) for `tokenId` token.
*/
function tokenURI(uint256 tokenId) external view returns (string memory);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 6 of 14 : IERC721.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC721/IERC721.sol)
pragma solidity ^0.8.0;
import "../../utils/introspection/IERC165.sol";
/**
* @dev Required interface of an ERC721 compliant contract.
*/
interface IERC721 is IERC165 {
/**
* @dev Emitted when `tokenId` token is transferred from `from` to `to`.
*/
event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
/**
* @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.
*/
event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
/**
* @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.
*/
event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 7 of 14 : IERC721Receiver.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC721/IERC721Receiver.sol)
pragma solidity ^0.8.0;
/**
* @title ERC721 token receiver interface
* @dev Interface for any contract that wants to support safeTransfers
* from ERC721 asset contracts.
*/
interface IERC721Receiver {
/**
* @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}
* by `operator` from `from`, this function is called.
*
* It must return its Solidity selector to confirm the token transfer.
* If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.
*
* The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.
*/
function onERC721Received(
address operator,
address from,
uint256 tokenId,
bytes calldata data
) external returns (bytes4);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 8 of 14 : Address.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (utils/Address.sol)
pragma solidity ^0.8.1;
/**
* @dev Collection of functions related to the address type
*/
library Address {
/**
* @dev Returns true if `account` is a contract.
*
* [IMPORTANT]
* ====
* It is unsafe to assume that an address for which this function returns
* false is an externally-owned account (EOA) and not a contract.
*
* Among others, `isContract` will return false for the following
* types of addresses:
*
* - an externally-owned account
* - a contract in construction
* - an address where a contract will be created
* - an address where a contract lived, but was destroyed
*
* Furthermore, `isContract` will also return true if the target contract within
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 9 of 14 : Context.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)
pragma solidity ^0.8.0;
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 10 of 14 : ERC165.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/introspection/ERC165.sol)
pragma solidity ^0.8.0;
import "./IERC165.sol";
/**
* @dev Implementation of the {IERC165} interface.
*
* Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check
* for the additional interface id that will be supported. For example:
*
* ```solidity
* function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
* return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);
* }
* ```
*
* Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.
*/
abstract contract ERC165 is IERC165 {
/**
* @dev See {IERC165-supportsInterface}.
*/
function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 11 of 14 : IERC165.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)
pragma solidity ^0.8.0;
/**
* @dev Interface of the ERC165 standard, as defined in the
* https://eips.ethereum.org/EIPS/eip-165[EIP].
*
* Implementers can declare support of contract interfaces, which can then be
* queried by others ({ERC165Checker}).
*
* For an implementation, see {ERC165}.
*/
interface IERC165 {
/**
* @dev Returns true if this contract implements the interface defined by
* `interfaceId`. See the corresponding
* https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
* to learn more about how these ids are created.
*
* This function call must use less than 30 000 gas.
*/
function supportsInterface(bytes4 interfaceId) external view returns (bool);
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 12 of 14 : Math.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (utils/math/Math.sol)
pragma solidity ^0.8.0;
/**
* @dev Standard math utilities missing in the Solidity language.
*/
library Math {
enum Rounding {
Down, // Toward negative infinity
Up, // Toward infinity
Zero // Toward zero
}
/**
* @dev Returns the largest of two numbers.
*/
function max(uint256 a, uint256 b) internal pure returns (uint256) {
return a > b ? a : b;
}
/**
* @dev Returns the smallest of two numbers.
*/
function min(uint256 a, uint256 b) internal pure returns (uint256) {
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 13 of 14 : SignedMath.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.8.0) (utils/math/SignedMath.sol)
pragma solidity ^0.8.0;
/**
* @dev Standard signed math utilities missing in the Solidity language.
*/
library SignedMath {
/**
* @dev Returns the largest of two signed numbers.
*/
function max(int256 a, int256 b) internal pure returns (int256) {
return a > b ? a : b;
}
/**
* @dev Returns the smallest of two signed numbers.
*/
function min(int256 a, int256 b) internal pure returns (int256) {
return a < b ? a : b;
}
/**
* @dev Returns the average of two signed numbers without overflow.
* The result is rounded towards zero.
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 14 of 14 : Strings.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (utils/Strings.sol)
pragma solidity ^0.8.0;
import "./math/Math.sol";
import "./math/SignedMath.sol";
/**
* @dev String operations.
*/
library Strings {
bytes16 private constant _SYMBOLS = "0123456789abcdef";
uint8 private constant _ADDRESS_LENGTH = 20;
/**
* @dev Converts a `uint256` to its ASCII `string` decimal representation.
*/
function toString(uint256 value) internal pure returns (string memory) {
unchecked {
uint256 length = Math.log10(value) + 1;
string memory buffer = new string(length);
uint256 ptr;
/// @solidity memory-safe-assembly
assembly {
ptr := add(buffer, add(32, length))
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Settings
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
"optimizer": {
"enabled": true,
"runs": 9
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"libraries": {}
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"MAX_MINT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_currentTokenId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"_tokenAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_userMinted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"amountOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"split","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":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405260006006553480156200001657600080fd5b5060405180604001604052806008815260200167466169722037323160c01b815250604051806040016040528060048152602001634637323160e01b815250816000908162000066919062000135565b50600162000075828262000135565b5050600980546001600160a01b031916331790555062000201565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620000bb57607f821691505b602082108103620000dc57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200013057600081815260208120601f850160051c810160208610156200010b5750805b601f850160051c820191505b818110156200012c5782815560010162000117565b5050505b505050565b81516001600160401b0381111562000151576200015162000090565b6200016981620001628454620000a6565b84620000e2565b602080601f831160018114620001a15760008415620001885750858301515b600019600386901b1c1916600185901b1785556200012c565b600085815260208120601f198616915b82811015620001d257888601518255948401946001909101908401620001b1565b5085821015620001f15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611b5480620002116000396000f3fe60806040526004361061011f5760003560e01c806301ffc9a7146101f857806302d05d3f1461022d57806306fdde031461025a578063076751651461027c578063081812fc146102b7578063095ea7b3146102d75780631249c58b146102f957806323b872dd1461030e57806342842e0e1461032e57806342966c681461034e5780636352211e1461036e57806370a082311461038e57806389476069146103ae57806395d89b41146103ce578063a22cb465146103e3578063b1a980f614610403578063b88d4fde14610430578063c87b56dd14610450578063c963483c14610470578063dbceb00514610486578063e086e5ec146104a6578063e8eb2284146104bb578063e985e9c5146104db578063f0292a03146104fb57600080fd5b366101f3573360009081526008602052604090205460051161015c5760405162461bcd60e51b8152600401610153906114f5565b60405180910390fd5b33321461017b5760405162461bcd60e51b815260040161015390611514565b6128006006541061019e5760405162461bcd60e51b815260040161015390611531565b3360009081526008602052604081208054600192906101be908490611565565b90915550506006805460009081526007602052604090206104009055546101e6903390610511565b6006805460010190819055005b600080fd5b34801561020457600080fd5b5061021861021336600461158e565b61052f565b60405190151581526020015b60405180910390f35b34801561023957600080fd5b5060095461024d906001600160a01b031681565b60405161022491906115b2565b34801561026657600080fd5b5061026f610581565b6040516102249190611616565b34801561028857600080fd5b506102a9610297366004611645565b60086020526000908152604090205481565b604051908152602001610224565b3480156102c357600080fd5b5061024d6102d2366004611660565b610613565b3480156102e357600080fd5b506102f76102f2366004611679565b61063a565b005b34801561030557600080fd5b506102f761074f565b34801561031a57600080fd5b506102f76103293660046116a3565b610813565b34801561033a57600080fd5b506102f76103493660046116a3565b610845565b34801561035a57600080fd5b506102f7610369366004611660565b610860565b34801561037a57600080fd5b5061024d610389366004611660565b610891565b34801561039a57600080fd5b506102a96103a9366004611645565b6108c5565b3480156103ba57600080fd5b506102f76103c9366004611645565b61094b565b3480156103da57600080fd5b5061026f610a42565b3480156103ef57600080fd5b506102f76103fe3660046116ed565b610a51565b34801561040f57600080fd5b506102a961041e366004611660565b60076020526000908152604090205481565b34801561043c57600080fd5b506102f761044b36600461173a565b610a5c565b34801561045c57600080fd5b5061026f61046b366004611660565b610a94565b34801561047c57600080fd5b506102a960065481565b34801561049257600080fd5b506102f76104a1366004611660565b610b0a565b3480156104b257600080fd5b506102f7610c62565b3480156104c757600080fd5b506102a96104d6366004611660565b610cf7565b3480156104e757600080fd5b506102186104f6366004611815565b610d15565b34801561050757600080fd5b506102a961280081565b61052b828260405180602001604052806000815250610d43565b5050565b60006001600160e01b031982166380ac58cd60e01b148061056057506001600160e01b03198216635b5e139f60e01b145b8061057b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461059090611848565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc90611848565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b600061061e82610d76565b506000908152600460205260409020546001600160a01b031690565b600061064582610891565b9050806001600160a01b0316836001600160a01b0316036106b25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610153565b336001600160a01b03821614806106ce57506106ce8133610d15565b6107405760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610153565b61074a8383610d9b565b505050565b3360009081526008602052604090205460051161077e5760405162461bcd60e51b8152600401610153906114f5565b33321461079d5760405162461bcd60e51b815260040161015390611514565b612800600654106107c05760405162461bcd60e51b815260040161015390611531565b3360009081526008602052604081208054600192906107e0908490611565565b9091555050600680546000908152600760205260409020610400905554610808903390610511565b600680546001019055565b61081e335b82610e09565b61083a5760405162461bcd60e51b815260040161015390611882565b61074a838383610e67565b61074a83838360405180602001604052806000815250610a5c565b61086933610818565b6108855760405162461bcd60e51b815260040161015390611882565b61088e81610fb9565b50565b60008061089d8361103c565b90506001600160a01b03811661057b5760405162461bcd60e51b8152600401610153906118cf565b60006001600160a01b03821661092f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610153565b506001600160a01b031660009081526003602052604090205490565b6009546040516370a0823160e01b815282916001600160a01b038084169263a9059cbb929091169083906370a08231906109899030906004016115b2565b602060405180830381865afa1580156109a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ca9190611901565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610a15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a39919061191a565b61052b57600080fd5b60606001805461059090611848565b61052b338383611057565b610a663383610e09565b610a825760405162461bcd60e51b815260040161015390611882565b610a8e84848484611121565b50505050565b6060610a9f82610d76565b6000610aa9611154565b600084815260076020526040902054815191925090610ad75760405180602001604052806000815250610b02565b81610ae182611174565b604051602001610af2929190611937565b6040516020818303038152906040525b949350505050565b6128006006541015610b485760405162461bcd60e51b81526020600482015260076024820152666d696e74696e6760c81b6044820152606401610153565b33610b5282610891565b6001600160a01b031614610b905760405162461bcd60e51b815260206004820152600560248201526437bbb732b960d91b6044820152606401610153565b333214610baf5760405162461bcd60e51b815260040161015390611514565b610bb881610fb9565b6000818152600760205260409020546001819003610bfc5760405162461bcd60e51b81526020600482015260016024820152603160f81b6044820152606401610153565b6000828152600760205260408120819055610c18600483611966565b905060005b6004811015610a8e5760068054600090815260076020526040902083905554610c47903390610511565b60068054600101905580610c5a81611988565b915050610c1d565b6009546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610caf576040519150601f19603f3d011682016040523d82523d6000602084013e610cb4565b606091505b505090508061088e5760405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606401610153565b6000610d0282610d76565b5060009081526007602052604090205490565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b610d4d8383611206565b610d5a6000848484611301565b61074a5760405162461bcd60e51b8152600401610153906119a1565b610d7f81611402565b61088e5760405162461bcd60e51b8152600401610153906118cf565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dd082610891565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610e1583610891565b9050806001600160a01b0316846001600160a01b03161480610e3c5750610e3c8185610d15565b80610b025750836001600160a01b0316610e5584610613565b6001600160a01b031614949350505050565b826001600160a01b0316610e7a82610891565b6001600160a01b031614610ea05760405162461bcd60e51b8152600401610153906119f3565b6001600160a01b038216610f025760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610153565b826001600160a01b0316610f1582610891565b6001600160a01b031614610f3b5760405162461bcd60e51b8152600401610153906119f3565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080546000190190559087168086528386208054600101905586865260029094528285208054909216841790915590518493600080516020611aff83398151915291a4505050565b6000610fc482610891565b9050610fcf82610891565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038516808552600384528285208054600019019055878552600290935281842080549091169055519293508492600080516020611aff833981519152908390a45050565b6000908152600260205260409020546001600160a01b031690565b816001600160a01b0316836001600160a01b0316036110b45760405162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b6044820152606401610153565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61112c848484610e67565b61113884848484611301565b610a8e5760405162461bcd60e51b8152600401610153906119a1565b6060604051806060016040528060368152602001611ac960369139905090565b606060006111818361141f565b60010190506000816001600160401b038111156111a0576111a0611724565b6040519080825280601f01601f1916602001820160405280156111ca576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846111d457509392505050565b6001600160a01b03821661125c5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610153565b61126581611402565b156112825760405162461bcd60e51b815260040161015390611a38565b61128b81611402565b156112a85760405162461bcd60e51b815260040161015390611a38565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b031916841790555183929190600080516020611aff833981519152908290a45050565b60006001600160a01b0384163b156113f757604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611345903390899088908890600401611a6e565b6020604051808303816000875af1925050508015611380575060408051601f3d908101601f1916820190925261137d91810190611aab565b60015b6113dd573d8080156113ae576040519150601f19603f3d011682016040523d82523d6000602084013e6113b3565b606091505b5080516000036113d55760405162461bcd60e51b8152600401610153906119a1565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610b02565b506001949350505050565b60008061140e8361103c565b6001600160a01b0316141592915050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061145e5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310611488576904ee2d6d415b85acef8160201b830492506020015b662386f26fc1000083106114a657662386f26fc10000830492506010015b6305f5e10083106114be576305f5e100830492506008015b61271083106114d257612710830492506004015b606483106114e4576064830492506002015b600a831061057b5760010192915050565b6020808252600590820152641b1a5b5a5d60da1b604082015260600190565b602080825260039082015262454f4160e81b604082015260600190565b602080825260049082015263646f6e6560e01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057b5761057b61154f565b6001600160e01b03198116811461088e57600080fd5b6000602082840312156115a057600080fd5b81356115ab81611578565b9392505050565b6001600160a01b0391909116815260200190565b60005b838110156115e15781810151838201526020016115c9565b50506000910152565b600081518084526116028160208601602086016115c6565b601f01601f19169290920160200192915050565b6020815260006115ab60208301846115ea565b80356001600160a01b038116811461164057600080fd5b919050565b60006020828403121561165757600080fd5b6115ab82611629565b60006020828403121561167257600080fd5b5035919050565b6000806040838503121561168c57600080fd5b61169583611629565b946020939093013593505050565b6000806000606084860312156116b857600080fd5b6116c184611629565b92506116cf60208501611629565b9150604084013590509250925092565b801515811461088e57600080fd5b6000806040838503121561170057600080fd5b61170983611629565b91506020830135611719816116df565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561175057600080fd5b61175985611629565b935061176760208601611629565b92506040850135915060608501356001600160401b038082111561178a57600080fd5b818701915087601f83011261179e57600080fd5b8135818111156117b0576117b0611724565b604051601f8201601f19908116603f011681019083821181831017156117d8576117d8611724565b816040528281528a60208487010111156117f157600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561182857600080fd5b61183183611629565b915061183f60208401611629565b90509250929050565b600181811c9082168061185c57607f821691505b60208210810361187c57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b602080825260189082015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604082015260600190565b60006020828403121561191357600080fd5b5051919050565b60006020828403121561192c57600080fd5b81516115ab816116df565b600083516119498184602088016115c6565b83519083019061195d8183602088016115c6565b01949350505050565b60008261198357634e487b7160e01b600052601260045260246000fd5b500490565b60006001820161199a5761199a61154f565b5060010190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6020808252601c908201527b115490cdcc8c4e881d1bdad95b88185b1c9958591e481b5a5b9d195960221b604082015260600190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611aa1908301846115ea565b9695505050505050565b600060208284031215611abd57600080fd5b81516115ab8161157856fe697066733a2f2f516d565756574634533634476658484276666b794c33734d78424e576a47317268534355616a646351756f5545372fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220171486e1325c2d08e2a51ee1dedc5ad336abe5a30e58f7868658d8c749b524e864736f6c63430008120033

Deployed Bytecode

0x60806040526004361061011f5760003560e01c806301ffc9a7146101f857806302d05d3f1461022d57806306fdde031461025a578063076751651461027c578063081812fc146102b7578063095ea7b3146102d75780631249c58b146102f957806323b872dd1461030e57806342842e0e1461032e57806342966c681461034e5780636352211e1461036e57806370a082311461038e57806389476069146103ae57806395d89b41146103ce578063a22cb465146103e3578063b1a980f614610403578063b88d4fde14610430578063c87b56dd14610450578063c963483c14610470578063dbceb00514610486578063e086e5ec146104a6578063e8eb2284146104bb578063e985e9c5146104db578063f0292a03146104fb57600080fd5b366101f3573360009081526008602052604090205460051161015c5760405162461bcd60e51b8152600401610153906114f5565b60405180910390fd5b33321461017b5760405162461bcd60e51b815260040161015390611514565b6128006006541061019e5760405162461bcd60e51b815260040161015390611531565b3360009081526008602052604081208054600192906101be908490611565565b90915550506006805460009081526007602052604090206104009055546101e6903390610511565b6006805460010190819055005b600080fd5b34801561020457600080fd5b5061021861021336600461158e565b61052f565b60405190151581526020015b60405180910390f35b34801561023957600080fd5b5060095461024d906001600160a01b031681565b60405161022491906115b2565b34801561026657600080fd5b5061026f610581565b6040516102249190611616565b34801561028857600080fd5b506102a9610297366004611645565b60086020526000908152604090205481565b604051908152602001610224565b3480156102c357600080fd5b5061024d6102d2366004611660565b610613565b3480156102e357600080fd5b506102f76102f2366004611679565b61063a565b005b34801561030557600080fd5b506102f761074f565b34801561031a57600080fd5b506102f76103293660046116a3565b610813565b34801561033a57600080fd5b506102f76103493660046116a3565b610845565b34801561035a57600080fd5b506102f7610369366004611660565b610860565b34801561037a57600080fd5b5061024d610389366004611660565b610891565b34801561039a57600080fd5b506102a96103a9366004611645565b6108c5565b3480156103ba57600080fd5b506102f76103c9366004611645565b61094b565b3480156103da57600080fd5b5061026f610a42565b3480156103ef57600080fd5b506102f76103fe3660046116ed565b610a51565b34801561040f57600080fd5b506102a961041e366004611660565b60076020526000908152604090205481565b34801561043c57600080fd5b506102f761044b36600461173a565b610a5c565b34801561045c57600080fd5b5061026f61046b366004611660565b610a94565b34801561047c57600080fd5b506102a960065481565b34801561049257600080fd5b506102f76104a1366004611660565b610b0a565b3480156104b257600080fd5b506102f7610c62565b3480156104c757600080fd5b506102a96104d6366004611660565b610cf7565b3480156104e757600080fd5b506102186104f6366004611815565b610d15565b34801561050757600080fd5b506102a961280081565b61052b828260405180602001604052806000815250610d43565b5050565b60006001600160e01b031982166380ac58cd60e01b148061056057506001600160e01b03198216635b5e139f60e01b145b8061057b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000805461059090611848565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc90611848565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b600061061e82610d76565b506000908152600460205260409020546001600160a01b031690565b600061064582610891565b9050806001600160a01b0316836001600160a01b0316036106b25760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610153565b336001600160a01b03821614806106ce57506106ce8133610d15565b6107405760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610153565b61074a8383610d9b565b505050565b3360009081526008602052604090205460051161077e5760405162461bcd60e51b8152600401610153906114f5565b33321461079d5760405162461bcd60e51b815260040161015390611514565b612800600654106107c05760405162461bcd60e51b815260040161015390611531565b3360009081526008602052604081208054600192906107e0908490611565565b9091555050600680546000908152600760205260409020610400905554610808903390610511565b600680546001019055565b61081e335b82610e09565b61083a5760405162461bcd60e51b815260040161015390611882565b61074a838383610e67565b61074a83838360405180602001604052806000815250610a5c565b61086933610818565b6108855760405162461bcd60e51b815260040161015390611882565b61088e81610fb9565b50565b60008061089d8361103c565b90506001600160a01b03811661057b5760405162461bcd60e51b8152600401610153906118cf565b60006001600160a01b03821661092f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610153565b506001600160a01b031660009081526003602052604090205490565b6009546040516370a0823160e01b815282916001600160a01b038084169263a9059cbb929091169083906370a08231906109899030906004016115b2565b602060405180830381865afa1580156109a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ca9190611901565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610a15573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a39919061191a565b61052b57600080fd5b60606001805461059090611848565b61052b338383611057565b610a663383610e09565b610a825760405162461bcd60e51b815260040161015390611882565b610a8e84848484611121565b50505050565b6060610a9f82610d76565b6000610aa9611154565b600084815260076020526040902054815191925090610ad75760405180602001604052806000815250610b02565b81610ae182611174565b604051602001610af2929190611937565b6040516020818303038152906040525b949350505050565b6128006006541015610b485760405162461bcd60e51b81526020600482015260076024820152666d696e74696e6760c81b6044820152606401610153565b33610b5282610891565b6001600160a01b031614610b905760405162461bcd60e51b815260206004820152600560248201526437bbb732b960d91b6044820152606401610153565b333214610baf5760405162461bcd60e51b815260040161015390611514565b610bb881610fb9565b6000818152600760205260409020546001819003610bfc5760405162461bcd60e51b81526020600482015260016024820152603160f81b6044820152606401610153565b6000828152600760205260408120819055610c18600483611966565b905060005b6004811015610a8e5760068054600090815260076020526040902083905554610c47903390610511565b60068054600101905580610c5a81611988565b915050610c1d565b6009546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610caf576040519150601f19603f3d011682016040523d82523d6000602084013e610cb4565b606091505b505090508061088e5760405162461bcd60e51b815260206004820152600f60248201526e1d1c985b9cd9995c8819985a5b1959608a1b6044820152606401610153565b6000610d0282610d76565b5060009081526007602052604090205490565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b610d4d8383611206565b610d5a6000848484611301565b61074a5760405162461bcd60e51b8152600401610153906119a1565b610d7f81611402565b61088e5760405162461bcd60e51b8152600401610153906118cf565b600081815260046020526040902080546001600160a01b0319166001600160a01b0384169081179091558190610dd082610891565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080610e1583610891565b9050806001600160a01b0316846001600160a01b03161480610e3c5750610e3c8185610d15565b80610b025750836001600160a01b0316610e5584610613565b6001600160a01b031614949350505050565b826001600160a01b0316610e7a82610891565b6001600160a01b031614610ea05760405162461bcd60e51b8152600401610153906119f3565b6001600160a01b038216610f025760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610153565b826001600160a01b0316610f1582610891565b6001600160a01b031614610f3b5760405162461bcd60e51b8152600401610153906119f3565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038781168086526003855283862080546000190190559087168086528386208054600101905586865260029094528285208054909216841790915590518493600080516020611aff83398151915291a4505050565b6000610fc482610891565b9050610fcf82610891565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b038516808552600384528285208054600019019055878552600290935281842080549091169055519293508492600080516020611aff833981519152908390a45050565b6000908152600260205260409020546001600160a01b031690565b816001600160a01b0316836001600160a01b0316036110b45760405162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b6044820152606401610153565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b61112c848484610e67565b61113884848484611301565b610a8e5760405162461bcd60e51b8152600401610153906119a1565b6060604051806060016040528060368152602001611ac960369139905090565b606060006111818361141f565b60010190506000816001600160401b038111156111a0576111a0611724565b6040519080825280601f01601f1916602001820160405280156111ca576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846111d457509392505050565b6001600160a01b03821661125c5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610153565b61126581611402565b156112825760405162461bcd60e51b815260040161015390611a38565b61128b81611402565b156112a85760405162461bcd60e51b815260040161015390611a38565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b031916841790555183929190600080516020611aff833981519152908290a45050565b60006001600160a01b0384163b156113f757604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611345903390899088908890600401611a6e565b6020604051808303816000875af1925050508015611380575060408051601f3d908101601f1916820190925261137d91810190611aab565b60015b6113dd573d8080156113ae576040519150601f19603f3d011682016040523d82523d6000602084013e6113b3565b606091505b5080516000036113d55760405162461bcd60e51b8152600401610153906119a1565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050610b02565b506001949350505050565b60008061140e8361103c565b6001600160a01b0316141592915050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b831061145e5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b8310611488576904ee2d6d415b85acef8160201b830492506020015b662386f26fc1000083106114a657662386f26fc10000830492506010015b6305f5e10083106114be576305f5e100830492506008015b61271083106114d257612710830492506004015b606483106114e4576064830492506002015b600a831061057b5760010192915050565b6020808252600590820152641b1a5b5a5d60da1b604082015260600190565b602080825260039082015262454f4160e81b604082015260600190565b602080825260049082015263646f6e6560e01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561057b5761057b61154f565b6001600160e01b03198116811461088e57600080fd5b6000602082840312156115a057600080fd5b81356115ab81611578565b9392505050565b6001600160a01b0391909116815260200190565b60005b838110156115e15781810151838201526020016115c9565b50506000910152565b600081518084526116028160208601602086016115c6565b601f01601f19169290920160200192915050565b6020815260006115ab60208301846115ea565b80356001600160a01b038116811461164057600080fd5b919050565b60006020828403121561165757600080fd5b6115ab82611629565b60006020828403121561167257600080fd5b5035919050565b6000806040838503121561168c57600080fd5b61169583611629565b946020939093013593505050565b6000806000606084860312156116b857600080fd5b6116c184611629565b92506116cf60208501611629565b9150604084013590509250925092565b801515811461088e57600080fd5b6000806040838503121561170057600080fd5b61170983611629565b91506020830135611719816116df565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b6000806000806080858703121561175057600080fd5b61175985611629565b935061176760208601611629565b92506040850135915060608501356001600160401b038082111561178a57600080fd5b818701915087601f83011261179e57600080fd5b8135818111156117b0576117b0611724565b604051601f8201601f19908116603f011681019083821181831017156117d8576117d8611724565b816040528281528a60208487010111156117f157600080fd5b82602086016020830137600060208483010152809550505050505092959194509250565b6000806040838503121561182857600080fd5b61183183611629565b915061183f60208401611629565b90509250929050565b600181811c9082168061185c57607f821691505b60208210810361187c57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b602080825260189082015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604082015260600190565b60006020828403121561191357600080fd5b5051919050565b60006020828403121561192c57600080fd5b81516115ab816116df565b600083516119498184602088016115c6565b83519083019061195d8183602088016115c6565b01949350505050565b60008261198357634e487b7160e01b600052601260045260246000fd5b500490565b60006001820161199a5761199a61154f565b5060010190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6020808252601c908201527b115490cdcc8c4e881d1bdad95b88185b1c9958591e481b5a5b9d195960221b604082015260600190565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090611aa1908301846115ea565b9695505050505050565b600060208284031215611abd57600080fd5b81516115ab8161157856fe697066733a2f2f516d565756574634533634476658484276666b794c33734d78424e576a47317268534355616a646351756f5545372fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220171486e1325c2d08e2a51ee1dedc5ad336abe5a30e58f7868658d8c749b524e864736f6c63430008120033

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.