ERC-721
Overview
Max Total Supply
5,342 ETHKUN
Holders
1,620
Market
Volume (24H)
N/A
Min Price (24H)
N/A
Max Price (24H)
N/A
Other Info
Token Contract
Balance
1 ETHKUNLoading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
EthKun
Compiler Version
v0.8.9+commit.e5eed63a
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT/**ethkun <3 u,,,***.,,,***.,,,***.,,,,,,*******,,,,,,*******,,,,,,,,,**********,,,,,,,,,**********,,,,,,,,,**********,,,,,,,,,,,,*************,,,,,,,,,,,,*************,,,,,,,,,,,,,,,****************,,,,,,,,,,,,,,,****************,,,,,,,,,,,,,,,****************,,,,,,,,,,,,,,,,,,*******************,,,,,,,,,,,,,,,,,,*******************.,,,,,,,,,,,,&&&,,,,,,******&&&*************.,,,,,,,,,||||||,,,,,,******|||||||*********.,,,,,,,,,||||||,,,,,,******|||||||*********,,,,,,,,,,,,,||||||,,,,,,******|||||||************,,,,,,,,,,,,,,,,,,,,,,,,,***#&&%******************
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// referenced from original Aribibots render code.pragma solidity ^0.8.0;import 'base64-sol/base64.sol';contract BotRenderer {mapping(uint256 => uint256) public seeds; // will be copied from OG Arbibots contractmapping(uint256 => bool) public flipped;string[][] public palettes = [['#b5eaea', '#edf6e5', '#f38ba0'],['#b5c7ea', '#e5f6e8', '#f3bb8b'],['#eab6b5', '#eee5f6', '#8bf3df'],['#c3eab5', '#f6e9e5', '#c18bf3'],['#eab5d9', '#e5e8f6', '#8bf396']];bytes[] public bodies = [bytes(hex'ff00ba0001010404010111000101060301010f000101080301010d000101090301010d000101090301010d00010109030101'),bytes(hex'ff00ba0001010404010111000101060301010f000101080301010d000101090301010d000101090301010d00010109030101'),bytes(hex'ff00b90001010504010111000101050301011100010105030101110001010503010111000101050301011100010105030101'),bytes(hex'ff00ba000101030401011200010105030101100001010104010103030101010401010e00010103040301030401010c0001010b0401010a0001010d040101'),bytes(hex'ff00b9000101050301010f0002010104010103030101010402010c00010104040301040401010a0001010d040101090001010d040101090001010d040101'),
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity >=0.6.0;/// @title Base64/// @author Brecht Devos - <brecht@loopring.org>/// @notice Provides functions for encoding/decoding base64library Base64 {string internal constant TABLE_ENCODE = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';bytes internal constant TABLE_DECODE = hex"0000000000000000000000000000000000000000000000000000000000000000"hex"00000000000000000000003e0000003f3435363738393a3b3c3d000000000000"hex"00000102030405060708090a0b0c0d0e0f101112131415161718190000000000"hex"001a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132330000000000";function encode(bytes memory data) internal pure returns (string memory) {if (data.length == 0) return '';// load the table into memorystring memory table = TABLE_ENCODE;// multiply by 4/3 rounded upuint256 encodedLen = 4 * ((data.length + 2) / 3);// add some extra buffer at the end required for the writingstring memory result = new string(encodedLen + 32);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT//// [ @ _ @ ]//// Antibots by @eddietreepragma solidity ^0.8.4;import "@openzeppelin/contracts/token/ERC721/ERC721.sol";import "@openzeppelin/contracts/token/ERC721/extensions/ERC721Enumerable.sol";import "@openzeppelin/contracts/token/ERC721/extensions/ERC721Burnable.sol";import "@openzeppelin/contracts/access/Ownable.sol";import "./AntibotRenderer.sol";contract Antibots is BotRenderer, ERC721, ERC721Enumerable, ERC721Burnable, Ownable {constructor() ERC721("Antibots", "ANTIBOTS") {}bool public redeemEnabled = true;// original arbibots contractIERC721Enumerable public contractArbibots;bytes4 constant sigFunc_ownerOf = bytes4(keccak256("ownerOf(uint256)"));bytes4 constant sigFunc_balanceOf = bytes4(keccak256("balanceOf(address)"));bytes4 constant sigFunc_tokenOfOwnerByIndex = bytes4(keccak256("tokenOfOwnerByIndex(address,uint256)"));bytes4 constant sigVariable_seeds = bytes4(keccak256("seeds(uint256)")); // mapping(uint256 => uint256) public seeds;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.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 namestring private _name;// Token symbol
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC721/extensions/ERC721Enumerable.sol)pragma solidity ^0.8.0;import "../ERC721.sol";import "./IERC721Enumerable.sol";/*** @dev This implements an optional extension of {ERC721} defined in the EIP that adds* enumerability of all the token ids in the contract as well as all token ids owned by each* account.*/abstract contract ERC721Enumerable is ERC721, IERC721Enumerable {// Mapping from owner to list of owned token IDsmapping(address => mapping(uint256 => uint256)) private _ownedTokens;// Mapping from token ID to index of the owner tokens listmapping(uint256 => uint256) private _ownedTokensIndex;// Array with all token ids, used for enumerationuint256[] private _allTokens;// Mapping from token id to position in the allTokens arraymapping(uint256 => uint256) private _allTokensIndex;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.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-lengthrequire(_isApprovedOrOwner(_msgSender(), tokenId), "ERC721: caller is not token owner nor approved");_burn(tokenId);}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol)pragma solidity ^0.8.0;import "../utils/Context.sol";/*** @dev Contract module which provides a basic access control mechanism, where* there is an account (an owner) that can be granted exclusive access to* specific functions.** By default, the owner account will be the one that deploys the contract. This* can later be changed with {transferOwnership}.** This module is used through inheritance. It will make available the modifier* `onlyOwner`, which can be applied to your functions to restrict their use to* the owner.*/abstract contract Ownable is Context {address private _owner;event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);/*** @dev Initializes the contract setting the deployer as the initial owner.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.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);
1234567891011121314151617181920212223242526// 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);
1234567891011121314151617181920212223242526// 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);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.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* ====*
123456789101112131415161718192021222324// 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;}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (utils/Strings.sol)pragma solidity ^0.8.0;/*** @dev String operations.*/library Strings {bytes16 private constant _HEX_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) {// Inspired by OraclizeAPI's implementation - MIT licence// https://github.com/oraclize/ethereum-api/blob/b42146b063c7d6ee1358846c198246239e9360e8/oraclizeAPI_0.4.25.solif (value == 0) {return "0";}uint256 temp = value;uint256 digits;while (temp != 0) {digits++;
1234567891011121314151617181920212223242526// 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) {
12345678910111213141516171819202122232425// 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);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.5.0) (token/ERC721/extensions/IERC721Enumerable.sol)pragma solidity ^0.8.0;import "../IERC721.sol";/*** @title ERC-721 Non-Fungible Token Standard, optional enumeration extension* @dev See https://eips.ethereum.org/EIPS/eip-721*/interface IERC721Enumerable is IERC721 {/*** @dev Returns the total amount of tokens stored by the contract.*/function totalSupply() external view returns (uint256);/*** @dev Returns a token ID owned by `owner` at a given `index` of its token list.* Use along with {balanceOf} to enumerate all of ``owner``'s tokens.*/function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256);/*** @dev Returns a token ID at a given `index` of all the tokens stored by the contract.* Use along with {totalSupply} to enumerate all tokens.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.4;import "@openzeppelin/contracts/token/ERC20/ERC20.sol";import "@openzeppelin/contracts/access/Ownable.sol";//import "@openzeppelin/contracts/utils/Strings.sol";//import 'base64-sol/base64.sol';contract UkeToken is ERC20, Ownable {uint256 public constant START_TOKEN_SUPPLY = 420;constructor() ERC20 ("UkeToken", "UKE") {_mint(msg.sender, START_TOKEN_SUPPLY);}function decimals() public view virtual override returns (uint8) {return 16;}function mintAdmin(address to, uint256 tokenCount) external onlyOwner {_mint(to, tokenCount);}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (token/ERC20/ERC20.sol)pragma solidity ^0.8.0;import "./IERC20.sol";import "./extensions/IERC20Metadata.sol";import "../../utils/Context.sol";/*** @dev Implementation of the {IERC20} interface.** This implementation is agnostic to the way tokens are created. This means* that a supply mechanism has to be added in a derived contract using {_mint}.* For a generic mechanism see {ERC20PresetMinterPauser}.** TIP: For a detailed writeup see our guide* https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How* to implement supply mechanisms].** We have followed general OpenZeppelin Contracts guidelines: functions revert* instead returning `false` on failure. This behavior is nonetheless* conventional and does not conflict with the expectations of ERC20* applications.** Additionally, an {Approval} event is emitted on calls to {transferFrom}.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.6.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.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol)pragma solidity ^0.8.0;import "../IERC20.sol";/*** @dev Interface for the optional metadata functions from the ERC20 standard.** _Available since v4.1._*/interface IERC20Metadata is IERC20 {/*** @dev Returns the name of the token.*/function name() external view returns (string memory);/*** @dev Returns the symbol of the token.*/function symbol() external view returns (string memory);/*** @dev Returns the decimals places of the token.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// ERC721A Contracts v4.2.2// Creator: Chiru Labspragma solidity ^0.8.4;import './IERC721A.sol';/*** @dev Interface of ERC721 token receiver.*/interface ERC721A__IERC721Receiver {function onERC721Received(address operator,address from,uint256 tokenId,bytes calldata data) external returns (bytes4);}/*** @title ERC721A** @dev Implementation of the [ERC721](https://eips.ethereum.org/EIPS/eip-721)* Non-Fungible Token Standard, including the Metadata extension.* Optimized for lower gas during batch mints.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v4.7.0) (utils/cryptography/MerkleProof.sol)pragma solidity ^0.8.0;/*** @dev These functions deal with verification of Merkle Tree proofs.** The proofs can be generated using the JavaScript library* https://github.com/miguelmota/merkletreejs[merkletreejs].* Note: the hashing algorithm should be keccak256 and pair sorting should be enabled.** See `test/utils/cryptography/MerkleProof.test.js` for some examples.** WARNING: You should avoid using leaf values that are 64 bytes long prior to* hashing, or use a hash function other than keccak256 for hashing leaves.* This is because the concatenation of a sorted pair of internal nodes in* the merkle tree could be reinterpreted as a leaf value.*/library MerkleProof {/*** @dev Returns true if a `leaf` can be proved to be a part of a Merkle tree* defined by `root`. For this, a `proof` must be provided, containing* sibling hashes on the branch from the leaf to the root of the tree. Each* pair of leaves and each pair of pre-images are assumed to be sorted.*/
12345678910// SPDX-License-Identifier: MIT// coded by @eddietreepragma solidity ^0.8.0;interface IEthKunRenderer{function getSVG(uint256 seed, uint256 level) external view returns (string memory);function getUnrevealedSVG(uint256 seed) external view returns (string memory);function getTraitsMetadata(uint256 seed) external view returns (string memory);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// coded by @eddietreepragma solidity ^0.8.0;import 'base64-sol/base64.sol';import "./IEthKunRenderer.sol";import "./EthKunData.sol";contract EthKunRenderer is IEthKunRenderer, EthKunData {string[] public bgPaletteColors = ['ffffff', 'fdf8db', 'fdeddb', 'fee5e0', 'feddec', 'feddf5', 'f7defe', 'ecddfe', 'dfdbfe', 'e1edfe', 'e4fafe', 'dffef3', 'dffee1', '122026'];string[] public bodyColors = ['80b0bb','56b7e9','e1624a','85ae36','e7b509','f6b099','85ae36','de953a','56b7e9','dd5bca','80b0bb','56b7e9','e1624a','85ae36','debb45', 'f6b099'];struct CharacterData {uint background;uint body;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// ERC721A Contracts v4.2.2// Creator: Chiru Labspragma solidity ^0.8.4;/*** @dev Interface of ERC721A.*/interface IERC721A {/*** The caller must own the token or be an approved operator.*/error ApprovalCallerNotOwnerNorApproved();/*** The token does not exist.*/error ApprovalQueryForNonexistentToken();/*** The caller cannot approve to their own address.*/error ApproveToCaller();/**
1234567891011121314151617181920212223// SPDX-License-Identifier: MIT// AUTOGENERATED FILE by @eddietree on Mon Sep 05 2022 16:40:03 GMT-0700 (Pacific Daylight Time)pragma solidity ^0.8.0;contract EthKunData {string[] public fullPalettes = ['ff00ff', '000000', 'ffffff', 'ff0000', '00ff00', '0000ff', '1e2528', 'eadece', 'ea6a6a', '80b0bb', '7991a1','e1624a', 'cb4227', '56b7e9', '3a88de', '85ae36', '509434', 'e7b509', 'da7e0d', 'f6b099', 'e37d74', 'de953a', 'c36c2d', 'efc567', 'f9dea3','e6b64d', '6ddeee', 'fdd3f6', '9ce5de', '276cd7', 'ed8dde', 'be3ccd', 'e56dd3', 'f7baee', 'dd5bca', '9035b4', 'debb45', 'ac622d', '813c22','211d1a', '979fa1', '6b757d', 'fefefe'];///////////////////////////////////////// eyesbytes[] public eyes = [bytes(hex'ff00ff000f00010604000106'),bytes(hex'ff00ee00010604000106'),bytes(hex'ff008e00010604000106'),bytes(hex'ff002f00010602000106'),bytes(hex'ff00ce00020602000206'),bytes(hex'ff006e00020602000206'),bytes(hex'ff00cd000206040002061900020602000206'),bytes(hex'ff008d000206040002061900020602000206'),bytes(hex'ff00ad0002060400020619000206020002061a00010604000106'),bytes(hex'ff00ec0001060200010602000106020001061700020604000206'),bytes(hex'ff00cd0002060400020617000106020001060200010602000106'),bytes(hex'ff00ce000106040001061b00010602000106'),
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT/*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CRYPTO EDDIES XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX by @eddietree XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWWx'....................................:0WWWNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNo. ,ONNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWNd'..;looooooooooooooooooooooooooooooooooooc,..;OWWWNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNWNl ,xOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOo. .kWNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWNd,',:llldkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOxollc;'';OWWWNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOd. .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ,kOOOOOOOOOOO0000000KKKKKKKKKKKKKKKKK00000000Kx. .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOOOOOOOKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOOO000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOO0KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOO0KKKKKKKOl;;ckKKKKKKKKKKKKKKKKkc;;lOXXk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOO0KKKKKKKk' .oKKKKKKKKKKKKKKKXo. .xXXk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNXxllc. ;kOOOOOO0KKKKKKK0occc::::cxKKKKKKKkc:::cccoOKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWMMX; ;kOOOOOO0KKKKKKKKKKXO, cKKKKKKKl 'OXXXKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNKxoolc:::::::okOOOOOO0KKKKKKK0occc:::::xKKKKKKKxc:::cccoOKXk' .xMMMNXXXXXXXXXXXXXXXX
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MITpragma solidity ^0.8.0;import 'base64-sol/base64.sol';import "./EddieData.sol";contract EddieRenderer is EddieData {string[] public bgPaletteColors = ['b5eaea', 'b5c7ea', 'eab6b5', 'c3eab5', 'eab5d9','fafc51', '3a89ff', '5eff8f', 'ff6efa', 'a1a1a1'];struct CharacterData {uint background;uint body;uint head;uint eyes;uint mouth;uint hair;}function getSVG(uint256 seed) external view returns (string memory) {
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT/*000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 CRYPTO EDDIE GHOST 0000000000000000000000000000000000000000000000000000000000000000000000000000000 by @eddietree 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000KXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXK00000000000000000000000000000000000000000000000000000000000KNWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWK00000000000000000000000000000000000000000000000000000000KXXKOxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxk0XXKK000000000000000000000000000000000000000000000000000KNWMK; .kMMWX00000000000000000000000000000000000000000000000KKKKKOOOxc''''''''''''''''''''''''''''''''''''';dOOO0KKKK0000000000000000000000000000000000000000000XWWW0, .xNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNO, .dWWWX0000000000000000000000000000000000000000KKKK000x;..,OWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMKc..'o000KKKKK00000000000000000000000000000000000XWWWk'..,kXXNWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWNXX0c...oNWWXK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWMMMMWWWWWWWWWWWK: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMWKkxxxxxxxxxxxxxxxxKWMWKkxxxxxxxxxxdc,,;xNMMNK0000000000000000000000000000000000XWMWx. .OMMMMMMMMMWWOlccccccccccccccclkNWW0lcccccccccccccclkNMMNK000000000000000000000000000000KNNXkc::' .lkkkkkkkkkkxdlccokO0xl;..';cccoxkxdlccok00x;..';cclkNMMNK000000000000000000000000000000NWMWo .;cccccccccccccccxXWM0o' ,cccccccccccdXWM0, ,cclkNMMNK00000000000000
12345678910// SPDX-License-Identifier: MIT// AUTOGENERATED FILE by @eddietree on Thu Aug 18 2022 01:31:47 GMT-0700 (Pacific Daylight Time)pragma solidity ^0.8.0;contract EddieData {string[] public fullPalettes = ['ff00ff', '000000', 'ffffff', 'ff0000', '00ff00', '0000ff', '65656e', '212124', '343438', '212123', 'f83a00','fff200', 'ff5900', '0096ff', '2e07f2', '1f1f21', '858ac7', 'e31e27', '7e00de', 'f200ff', '292929', 'f5368f', 'ffff00', 'ff8282', '599cff','b2e1f8', 'ff9696', 'ff4747', '919191', 'b8b8b8', 'ff5e00', 'ff995e', 'ff3300', 'd32027', 'f3e106', 'd46a6d', '172f3b', '163545', 'f73b3b','2c7899', '3fabd9', '2e81a5', '2f82a6', '44b0de', '237843', '47a66b', 'f3f700', 'ba6047', 'a85740', '592f23', '44c3c9', 'ede068', 'ffed4f','68b84d', '599e42', '038604', '9c9083', '7a7166', '696158', '7ddcff', '00bbff', '009bd4', '5ed4ff', 'edda9d', 'eda200', '004f24', '00c458','00a44b', '00ad4e', 'ff9500', 'f7ff0f', 'eaf041', 'cfd60d', 'faf5aa', 'ced439', 'b5b535', 'ffa3a3', 'a37b46', '966930', '579aff', '217aff','4eff00', 'fffc00', 'ffff26', '007dfc', '0067cf', 'fcca97', '8a633c', 'cb8d52', 'fcf0c6', '180d1f', 'a16010', 'e5a925', '3a3a3a', '2057a8','b82323', 'ff3030', '3c3c3c', '0004fa', '2b2b2b', 'ff0009', '3150d6', '7c541a', 'ba2b00', 'bfb731', '505050', '729144', '9aa6c1', '3f3556','d246e8', 'e74dff', '00974c', '9ec45c', '20d47a', 'eded61', '78573e', 'b89174', '2b478f', '0024ff', '363b3c', '202324', '3587ab', '0044ff','0145fd', 'b4633b', 'b5643b', '40b2e6', '83c6e5', '115c52', 'ffcc99', '64c0e8', '3a8228', 'fcd502', '165c58', 'f7c328', '8a1212', '008787','2c3aa8', '8a3c3c', 'e8fd4d', '439958', '5e83ec', '00a800', '006600', '404040', 'c5b2a0', 'fd8c69', 'f7e83e', 'f75a3e', 'fccf03', '68d4cc','be8ade', 'b778de', '568746', '67ab50', 'fce2a9', '6edbb7', 'fcb39d', '79dbba', 'c74832', '40cfbc', '7dd8ff', 'dbf4ff', '9ce1ff', 'fbdd97','f9de9a', 'f9de9b', 'fade9a', 'f9df9b', 'fadf9b', 'fade9b', 'f8dfa0', 'f8e0a0', 'f7e0a0', 'f5e1a6', 'f4e2a6', 'f5e2a6', 'f4e2a7', 'f5e2a7','f2e4ad', 'f3e4ad', 'f2e3ad', 'efe6b5', 'efe5b4', 'f0e5b5', 'efe6b4', 'efe5b5', 'ece8bc', 'ece9bd', 'ece8bd', 'ece9bc', 'e9ebc5', 'e8ebc5','e9eac5', 'e9ebc4', 'e6edcd', 'e5eecd', 'e5eece', 'e6eecd', 'e5edcd', 'e5edce', 'e2f0d5', 'e2efd6', 'e2f0d6', 'e2efd5', 'dff2de', 'dcf4e5','dcf4e4', 'dcf5e5', 'dbf4e5', 'dcf5e4', 'd9f7ec', 'd9f6ec', 'd7f9f2', 'd7f8f2', 'd6f8f2', 'd4f9f7', 'd4faf7', 'd3fbfb', 'b7c6e8', 'e5edff','fae848', 'fae248'];///////////////////////////////////////// eyes
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT/*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CRYPTO EDDIES XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX by @eddietree XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX (LET TRY THIS AGAIN SHALL WE?) XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWWx'....................................:0WWWNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNo. ,ONNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWNd'..;looooooooooooooooooooooooooooooooooooc,..;OWWWNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNWNl ,xOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOo. .kWNNNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWWNd,',:llldkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOxollc;'';OWWWNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOd. .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ,kOOOOOOOOOOO0000000KKKKKKKKKKKKKKKKK00000000Kx. .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOOOOOOOKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOOO000KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOO0KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOO0KKKKKKKOl;;ckKKKKKKKKKKKKKKKKkc;;lOXXk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXWMMN: ;kOOOOOO0KKKKKKKk' .oKKKKKKKKKKKKKKKXo. .xXXk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNXxllc. ;kOOOOOO0KKKKKKK0occc::::cxKKKKKKKkc:::cccoOKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXNWMMX; ;kOOOOOO0KKKKKKKKKKXO, cKKKKKKKl 'OXXXKKKk' .xMMMNXXXXXXXXXXXXXXXXXXXXXXXXXXXXNNNKxoolc:::::::okOOOOOO0KKKKKKK0occc:::::xKKKKKKKxc:::cccoOKXk' .xMMMNXXXXXXXXXXXXXXXX
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT/*000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 CRYPTO EDDIE GHOST 0000000000000000000000000000000000000000000000000000000000000000000000000000000 by @eddietree 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000KXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXK00000000000000000000000000000000000000000000000000000000000KNWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWK00000000000000000000000000000000000000000000000000000000KXXKOxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxk0XXKK000000000000000000000000000000000000000000000000000KNWMK; .kMMWX00000000000000000000000000000000000000000000000KKKKKOOOxc''''''''''''''''''''''''''''''''''''';dOOO0KKKK0000000000000000000000000000000000000000000XWWW0, .xNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNO, .dWWWX0000000000000000000000000000000000000000KKKK000x;..,OWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMKc..'o000KKKKK00000000000000000000000000000000000XWWWk'..,kXXNWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWNXX0c...oNWWXK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMMWWWWWWWWWWWWWWWWWWWMMMMWWWWWWWWWWWK: lNMMNK0000000000000000000000000000000000XWMMx. .OMMMMMMMMMMWKkxxxxxxxxxxxxxxxxKWMWKkxxxxxxxxxxdc,,;xNMMNK0000000000000000000000000000000000XWMWx. .OMMMMMMMMMWWOlccccccccccccccclkNWW0lcccccccccccccclkNMMNK000000000000000000000000000000KNNXkc::' .lkkkkkkkkkkxdlccokO0xl;..';cccoxkxdlccok00x;..';cclkNMMNK000000000000000000000000000000NWMWo .;cccccccccccccccxXWM0o' ,cccccccccccdXWM0, ,cclkNMMNK00000000000000
12345678910111213141516171819202122{"optimizer": {"enabled": true,"runs": 200,"details": {"yul": false}},"outputSelection": {"*": {"*": ["evm.bytecode","evm.deployedBytecode","devdoc","userdoc","metadata","abi"]}},"libraries": {}}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ApprovalCallerNotOwnerNorApproved","type":"error"},{"inputs":[],"name":"ApprovalQueryForNonexistentToken","type":"error"},{"inputs":[],"name":"ApproveToCaller","type":"error"},{"inputs":[],"name":"BalanceQueryForZeroAddress","type":"error"},{"inputs":[],"name":"MintERC2309QuantityExceedsLimit","type":"error"},{"inputs":[],"name":"MintToZeroAddress","type":"error"},{"inputs":[],"name":"MintZeroQuantity","type":"error"},{"inputs":[],"name":"OwnerQueryForNonexistentToken","type":"error"},{"inputs":[],"name":"OwnershipNotInitializedForExtraData","type":"error"},{"inputs":[],"name":"TransferCallerNotOwnerNorApproved","type":"error"},{"inputs":[],"name":"TransferFromIncorrectOwner","type":"error"},{"inputs":[],"name":"TransferToNonERC721ReceiverImplementer","type":"error"},{"inputs":[],"name":"TransferToZeroAddress","type":"error"},{"inputs":[],"name":"URIQueryForNonexistentToken","type":"error"},{"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":"uint256","name":"fromTokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"toTokenId","type":"uint256"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"ConsecutiveTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenIdDied","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"level","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"tokenMergedInto","type":"uint256"}],"name":"EthKunDied","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"oldLevel","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newLevel","type":"uint256"}],"name":"EthKunLevelUp","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"EthKunSacrificed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newLevel","type":"uint256"}],"name":"EthRerolled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenIdParent","type":"uint256"},{"indexed":true,"internalType":"uint256","name":"tokenIdBaby","type":"uint256"}],"name":"EventBirthBaby","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"EventEndSteaking","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"EventForceEndSteaking","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"EventStartSteaking","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"MAX_TOKEN_SUPPLY_GENESIS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SECS_PER_DAY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"adminForceStopSteaking","outputs":[],"stateMutability":"nonpayable","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":"burnSacrifice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnSacrificeEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"canSpawnEthKunBaby","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"contractRenderer","outputs":[{"internalType":"contract IEthKunRenderer","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"demoteRerollEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getMaxMintsData","outputs":[{"internalType":"uint256","name":"maxTokensOwnedInWallet","type":"uint256"},{"internalType":"uint256","name":"maxMintsPerTransaction","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNumBabiesMinted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNumMinted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"numToMint","type":"uint256"}],"name":"getPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getSecsSteakingRequiredToMintBaby","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getSteakingInfoForToken","outputs":[{"internalType":"uint256","name":"currentSteakingTime","type":"uint256"},{"internalType":"uint256","name":"totalSteakingTime","type":"uint256"},{"internalType":"bool","name":"steaking","type":"bool"}],"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":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"isGenesis","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"level","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxLevel","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"merge","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"mergeBlockNumber","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mergeEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"merkleMintEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"merkleMintMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"merkleRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minSteakingLevel","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"parentTokenIds","type":"uint256[]"}],"name":"mintEthKunBaby","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"numToMint","type":"uint256"}],"name":"mintEthKunsGenesis","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_merkleProof","type":"bytes32[]"},{"internalType":"uint256","name":"numToMint","type":"uint256"}],"name":"mintMerkle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"mintStatus","outputs":[{"internalType":"enum EthKun.MintStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mintingBabiesEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"numberMinted","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"rerollMany","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"numToMint","type":"uint256"}],"name":"reserveEthKuns","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256","name":"numToMint","type":"uint256"}],"name":"reserveEthKunsMany","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"revealEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"uint256","name":"","type":"uint256"}],"name":"seeds","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setBurnSacrificeEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"setContractRenderer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setDemoteRerollEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxLevel","type":"uint256"}],"name":"setMaxLevel","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMergeBlockNumber","type":"uint256"}],"name":"setMergeBlockNumber","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setMergeEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setMerkleMintEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_merkleRoot","type":"bytes32"}],"name":"setMerkleRoot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_status","type":"uint256"}],"name":"setMintStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"allowed","type":"bool"}],"name":"setMintingBabiesEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"pricingData","type":"uint256[]"}],"name":"setPricing","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_revealEnabled","type":"bool"}],"name":"setRevealed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"allowed","type":"bool"}],"name":"setSteakingEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minLvl","type":"uint256"}],"name":"setSteakingMinLevel","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_steakingMinDays","type":"uint256"},{"internalType":"uint256","name":"_steakingCurveDivisor","type":"uint256"},{"internalType":"uint256","name":"_steakingLevelBoostDivisor","type":"uint256"}],"name":"setSteakingParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"steakingCurveDivisor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"steakingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"steakingLevelBoostDivisor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"steakingMinDays","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier0_maxMintsPerTransaction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier0_maxTokensOwnedInWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier0_price","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier0_supply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier1_maxMintsPerTransaction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier1_maxTokensOwnedInWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tier1_price","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"tokenIds","type":"uint256[]"}],"name":"toggleSteaking","outputs":[],"stateMutability":"nonpayable","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":"owner","type":"address"}],"name":"tokensOfOwner","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_proof","type":"bytes32[]"},{"internalType":"bytes32","name":"_leaf","type":"bytes32"}],"name":"verifyMerkle","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_proof","type":"bytes32[]"},{"internalType":"address","name":"from","type":"address"}],"name":"verifyMerkleAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060409081526009805464ffffffffff60a01b19169055600c8190556000600d8190556107d0600e55600f819055600260108181556001601155662386f26fc1000060125560138490556014939093556015919091556016805462ffffff1916905560086017819055601891909155601955601a553480156200008257600080fd5b506040518060400160405280600681526020016532ba3435bab760d11b8152506040518060400160405280600681526020016522aa2425aaa760d11b8152508160029080519060200190620000d99291906200015a565b508051620000ef9060039060208401906200015a565b5050600160005550620001023362000108565b62000247565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b828054620001689062000216565b90600052602060002090601f0160209004810192826200018c5760008555620001d7565b82601f10620001a757805160ff1916838001178555620001d7565b82800160010185558215620001d7579182015b82811115620001d7578251825591602001919060010190620001ba565b50620001e5929150620001e9565b5090565b5b80821115620001e55760008155600101620001ea565b634e487b7160e01b600052602260045260246000fd5b6002810460018216806200022b57607f821691505b6020821081141562000241576200024162000200565b50919050565b614a4580620002576000396000f3fe6080604052600436106104945760003560e01c80637e980e0011610260578063cb9d5b9e11610144578063e7b5ec0f116100c1578063f0503e8011610085578063f0503e8014610dd1578063f1e25ea814610dfe578063f2fde38b14610e21578063f5cbd52b14610e41578063f7da7b3b14610e57578063ffd3332e14610e6d57600080fd5b8063e7b5ec0f14610d23578063e8ff352514610d50578063e934028914610d70578063e985e9c514610d91578063efdb28db14610db157600080fd5b8063de62d84211610108578063de62d84214610c8c578063e035740314610cac578063e0a8085314610cc2578063e33e4b4914610ce2578063e757223014610d0357600080fd5b8063cb9d5b9e14610c05578063cc06c35914610c1c578063da97398e14610c32578063daeaeb0314610c4c578063dc33e68114610c6c57600080fd5b8063a22cb465116101dd578063afdb45a8116101a1578063afdb45a814610b45578063b88d4fde14610b65578063bc640bd014610b85578063bfa584d214610ba5578063c5c5c71c14610bc5578063c87b56dd14610be557600080fd5b8063a22cb46514610aba578063a3bcb09a14610ada578063acec8a5f14610afa578063ad031fb014610b19578063ad99cc8a14610b2f57600080fd5b80638da5cb5b116102245780638da5cb5b14610a2557806395d89b4114610a435780639ad7a0f614610a585780639aedee3a14610a795780639da3f8fd14610a8c57600080fd5b80637e980e001461098257806381bbc8ef146109a25780638462151c146109c2578063887fee31146109ef5780638cf4f3a514610a0f57600080fd5b8063344f1ba5116103875780636352211e1161030457806370a08231116102c857806370a08231146108d757806370f34a87146108f75780637149b6d314610917578063715018a614610937578063786d5b471461094c5780637cb647591461096257600080fd5b80636352211e1461084b578063668b63c41461086b578063697e2224146108815780636ca76d1f146108975780636d49cdfa146108b757600080fd5b80634a89c50b1161034b5780634a89c50b146107ca5780634bc9f48a146107e05780634d99d976146108005780635030c70714610815578063540da96c1461083557600080fd5b8063344f1ba51461074b5780633726230a1461076b57806337e348df146107805780633ccfd60b1461079557806342842e0e146107aa57600080fd5b806317cbab92116104155780632ddfd5ba116103d95780632ddfd5ba146106ad5780632eb4a7ab146106cd5780632f5b1cea146106e3578063324d34bc1461070657806332a125b31461073557600080fd5b806317cbab921461061a57806318160ddd1461063a5780631f8fe21a1461065757806323b872dd14610677578063295020be1461069757600080fd5b806306fdde031161045c57806306fdde031461056b578063081812fc1461058d57806308683e71146105ba578063095ea7b3146105da5780630b269898146105fa57600080fd5b806301ffc9a7146104995780630270a072146104cf578063034e39ee146104f157806304acc3771461051157806305c58df214610531575b600080fd5b3480156104a557600080fd5b506104b96104b43660046134a3565b610e8e565b6040516104c691906134ce565b60405180910390f35b3480156104db57600080fd5b506104ef6104ea36600461352d565b610ee0565b005b3480156104fd57600080fd5b506104ef61050c3660046135aa565b61102e565b34801561051d57600080fd5b506104ef61052c3660046135e7565b611044565b34801561053d57600080fd5b5061055e61054c366004613637565b600b6020526000908152604090205481565b6040516104c6919061365e565b34801561057757600080fd5b5061058061105a565b6040516104c691906136ca565b34801561059957600080fd5b506105ad6105a8366004613637565b6110ec565b6040516104c691906136e4565b3480156105c657600080fd5b506104ef6105d5366004613705565b611130565b3480156105e657600080fd5b506104ef6105f53660046135aa565b611156565b34801561060657600080fd5b506104ef61061536600461352d565b6111f6565b34801561062657600080fd5b506104b9610635366004613637565b6112e9565b34801561064657600080fd5b50600154600054036000190161055e565b34801561066357600080fd5b5061055e610672366004613637565b6112f4565b34801561068357600080fd5b506104ef610692366004613726565b6112ff565b3480156106a357600080fd5b5061055e60185481565b3480156106b957600080fd5b506104ef6106c8366004613705565b611495565b3480156106d957600080fd5b5061055e60155481565b3480156106ef57600080fd5b506106f86114bb565b6040516104c692919061375b565b34801561071257600080fd5b50610726610721366004613637565b6114ce565b6040516104c693929190613776565b34801561074157600080fd5b5061055e60115481565b34801561075757600080fd5b506104ef610766366004613637565b61151a565b34801561077757600080fd5b5061055e611527565b34801561078c57600080fd5b5061055e611536565b3480156107a157600080fd5b506104ef611540565b3480156107b657600080fd5b506104ef6107c5366004613726565b611577565b3480156107d657600080fd5b5061055e600d5481565b3480156107ec57600080fd5b506104ef6107fb366004613637565b611597565b34801561080c57600080fd5b5061055e600181565b34801561082157600080fd5b506104ef610830366004613705565b6115a4565b34801561084157600080fd5b5061055e60195481565b34801561085757600080fd5b506105ad610866366004613637565b6115c8565b34801561087757600080fd5b5061055e60105481565b34801561088d57600080fd5b5061055e600f5481565b3480156108a357600080fd5b506104ef6108b236600461352d565b6115d3565b3480156108c357600080fd5b506104ef6108d236600461352d565b61161e565b3480156108e357600080fd5b5061055e6108f236600461379e565b611628565b34801561090357600080fd5b506104ef610912366004613705565b611676565b34801561092357600080fd5b506104ef610932366004613705565b61169c565b34801561094357600080fd5b506104ef6116be565b34801561095857600080fd5b5061055e6116f381565b34801561096e57600080fd5b506104ef61097d366004613637565b6116d2565b34801561098e57600080fd5b506104ef61099d366004613637565b6116df565b3480156109ae57600080fd5b506104b96109bd3660046137bf565b61177f565b3480156109ce57600080fd5b506109e26109dd36600461379e565b6117c1565b6040516104c6919061386c565b3480156109fb57600080fd5b506104ef610a0a366004613637565b6118d0565b348015610a1b57600080fd5b5061055e60135481565b348015610a3157600080fd5b506008546001600160a01b03166105ad565b348015610a4f57600080fd5b50610580611914565b348015610a6457600080fd5b506009546104b990600160a81b900460ff1681565b6104ef610a87366004613637565b611923565b348015610a9857600080fd5b50600954610aad90600160a01b900460ff1681565b6040516104c691906138c6565b348015610ac657600080fd5b506104ef610ad53660046138d4565b611a49565b348015610ae657600080fd5b506104b9610af5366004613907565b611ae2565b348015610b0657600080fd5b506016546104b990610100900460ff1681565b348015610b2557600080fd5b5061055e601a5481565b348015610b3b57600080fd5b5061055e60125481565b348015610b5157600080fd5b506104ef610b60366004613907565b611af7565b348015610b7157600080fd5b506104ef610b80366004613a43565b611b5c565b348015610b9157600080fd5b506104ef610ba0366004613637565b611ba0565b348015610bb157600080fd5b506104ef610bc036600461379e565b611bad565b348015610bd157600080fd5b506016546104b99062010000900460ff1681565b348015610bf157600080fd5b50610580610c00366004613637565b611bd7565b348015610c1157600080fd5b5061055e6201518081565b348015610c2857600080fd5b5061055e600c5481565b348015610c3e57600080fd5b506016546104b99060ff1681565b348015610c5857600080fd5b506104ef610c67366004613907565b611c3a565b348015610c7857600080fd5b5061055e610c8736600461379e565b611d46565b348015610c9857600080fd5b506104ef610ca736600461352d565b611d51565b348015610cb857600080fd5b5061055e600e5481565b348015610cce57600080fd5b506104ef610cdd366004613705565b611d94565b348015610cee57600080fd5b506009546104b990600160b01b900460ff1681565b348015610d0f57600080fd5b5061055e610d1e366004613637565b611dba565b348015610d2f57600080fd5b50600954610d43906001600160a01b031681565b6040516104c69190613ae0565b348015610d5c57600080fd5b506104ef610d6b36600461352d565b611dc5565b348015610d7c57600080fd5b506009546104b990600160b81b900460ff1681565b348015610d9d57600080fd5b506104b9610dac366004613aee565b611e08565b348015610dbd57600080fd5b506104ef610dcc366004613705565b611e36565b348015610ddd57600080fd5b5061055e610dec366004613637565b600a6020526000908152604090205481565b348015610e0a57600080fd5b506104b9610e19366004613637565b6116f3101590565b348015610e2d57600080fd5b506104ef610e3c36600461379e565b611e51565b348015610e4d57600080fd5b5061055e60145481565b348015610e6357600080fd5b5061055e60175481565b348015610e7957600080fd5b506009546104b990600160c01b900460ff1681565b60006301ffc9a760e01b6001600160e01b031983161480610ebf57506380ac58cd60e01b6001600160e01b03198316145b80610eda5750635b5e139f60e01b6001600160e01b03198316145b92915050565b610ee8611e8b565b8015610efd5750600954600160b81b900460ff165b610f0657600080fd5b8060005b81811015611028576000848483818110610f2657610f26613b21565b9050602002013590506000600b6000838152602001908152602001600020549050610f4e3390565b6001600160a01b0316610f6083611eab565b516001600160a01b031614610f905760405162461bcd60e51b8152600401610f8790613b59565b60405180910390fd5b60018111610fb05760405162461bcd60e51b8152600401610f8790613b8e565b610fb982611ee0565b6000610fc6600183613bb4565b6000848152600b6020526040908190208290555190915083907fc6ca1ad742bbff176a4773a093de94df27d5d29669f999560882d57503dfaaed9061100c90849061365e565b60405180910390a25050508061102190613bcb565b9050610f0a565b50505050565b611036611f28565b6110408282611f52565b5050565b61104c611f28565b601892909255601955601a55565b60606002805461106990613bfc565b80601f016020809104026020016040519081016040528092919081815260200182805461109590613bfc565b80156110e25780601f106110b7576101008083540402835291602001916110e2565b820191906000526020600020905b8154815290600101906020018083116110c557829003601f168201915b5050505050905090565b60006110f782611fb4565b611114576040516333d1c03960e21b815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b611138611f28565b60098054911515600160c01b0260ff60c01b19909216919091179055565b6000611161826115c8565b9050336001600160a01b0382161461119a5761117d8133611e08565b61119a576040516367d9dca160e11b815260040160405180910390fd5b60008281526006602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6111fe611f28565b8181600081811061121157611211613b21565b6020029190910135600e55508181600181811061123057611230613b21565b6020029190910135600f55508181600281811061124f5761124f613b21565b6020029190910135601055508181600381811061126e5761126e613b21565b6020029190910135601155508181600481811061128d5761128d613b21565b602002919091013560125550818160058181106112ac576112ac613b21565b602002919091013560135550818160068181106112cb576112cb613b21565b905060200201356014819055506116f3600e54111561104057600080fd5b6000610eda82611fe9565b6000610eda82612072565b600061130a82612125565b9050836001600160a01b0316816001600160a01b03161461133d5760405162a1148160e81b815260040160405180910390fd5b600082815260066020526040902080546113698187335b6001600160a01b039081169116811491141790565b611394576113778633611e08565b61139457604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b0385166113bb57604051633a954ecd60e21b815260040160405180910390fd5b6113c8868686600161218e565b80156113d357600082555b6001600160a01b038681166000908152600560205260408082208054600019019055918716808252919020805460010190554260a01b17600160e11b17600085815260046020526040902055600160e11b831661145e576001840160008181526004602052604090205461145c57600054811461145c5760008181526004602052604090208490555b505b83856001600160a01b0316876001600160a01b03166000805160206149f083398151915260405160405180910390a4505050505050565b61149d611f28565b60098054911515600160b81b0260ff60b81b19909216919091179055565b6000806114c66121f0565b915091509091565b6000818152601b60205260408120548190819080156114f4576114f18142613bb4565b93505b6000858152601c602052604090205461150d9085613c23565b9395939450151592915050565b611522611f28565b600c55565b6000611531612223565b905090565b600061153161222d565b611548611f28565b6040514790339082156108fc029083906000818181858888f19350505050158015611040573d6000803e3d6000fd5b61159283838360405180602001604052806000815250611b5c565b505050565b61159f611f28565b600d55565b6115ac611f28565b60168054911515620100000262ff000019909216919091179055565b6000610eda82612125565b6115db611f28565b8060005b818110156110285760008484838181106115fb576115fb613b21565b90506020020135905061160d8161225d565b5061161781613bcb565b90506115df565b6110408282612332565b60006001600160a01b038216611651576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b03166000908152600560205260409020546001600160401b031690565b61167e611f28565b60098054911515600160b01b0260ff60b01b19909216919091179055565b6116a4611f28565b601680549115156101000261ff0019909216919091179055565b6116c6611f28565b6116d06000612485565b565b6116da611f28565b601555565b80336116ea82611eab565b516001600160a01b03161480611710575033611705826110ec565b6001600160a01b0316145b61172c5760405162461bcd60e51b8152600401610f8790613c68565b600954600160c01b900460ff16151560011461174757600080fd5b611750826124d7565b60405182907f0f1711c7762713c236f84b2fa04e1ef0923424ade89cb73e02eafab2ed4af22a90600090a25050565b600080826040516020016117939190613ca0565b6040516020818303038152906040528051906020012090506117b68585836124e2565b9150505b9392505050565b606060008060006117d185611628565b90506000816001600160401b038111156117ed576117ed613957565b604051908082528060200260200182016040528015611816578160200160208202803683370190505b50905061184360408051608081018252600080825260208201819052918101829052606081019190915290565b60015b8386146118c45761185681612525565b9150816040015115611867576118bc565b81516001600160a01b03161561187c57815194505b876001600160a01b0316856001600160a01b031614156118bc57808387806001019850815181106118af576118af613b21565b6020026020010181815250505b600101611846565b50909695505050505050565b6118d8611f28565b8060018111156118ea576118ea61387d565b6009805460ff60a01b1916600160a01b83600181111561190c5761190c61387d565b021790555050565b60606003805461106990613bfc565b80600081116119445760405162461bcd60e51b8152600401610f8790613cdb565b6116f381611950612223565b61195a9190613c23565b11156119785760405162461bcd60e51b8152600401610f8790613d09565b6001600954600160a01b900460ff1660018111156119985761199861387d565b146119b55760405162461bcd60e51b8152600401610f8790613d42565b6119be82612561565b3410156119dd5760405162461bcd60e51b8152600401610f8790613d7d565b6000806119e86121f0565b9150915081846119f73361258d565b611a019190613c23565b1115611a1f5760405162461bcd60e51b8152600401610f8790613db5565b80841115611a3f5760405162461bcd60e51b8152600401610f8790613df9565b6110283385611f52565b6001600160a01b038216331415611a735760405163b06307db60e01b815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3190611ad69085906134ce565b60405180910390a35050565b6000611aef8484846124e2565b949350505050565b611aff611f28565b8180611b0a57600080fd5b60005b81811015611b5557611b45858583818110611b2a57611b2a613b21565b9050602002016020810190611b3f919061379e565b84611f52565b611b4e81613bcb565b9050611b0d565b5050505050565b611b678484846112ff565b6001600160a01b0383163b1561102857611b83848484846125b5565b611028576040516368d2bf6b60e11b815260040160405180910390fd5b611ba8611f28565b601755565b611bb5611f28565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b60608160018110158015611bf25750611bee612223565b8111155b611c0e5760405162461bcd60e51b8152600401610f8790613d09565b611c16611e8b565b15611c2b57611c24836126ac565b9150611c34565b611c2483612901565b50919050565b8060008111611c5b5760405162461bcd60e51b8152600401610f8790613cdb565b6116f381611c67612223565b611c719190613c23565b1115611c8f5760405162461bcd60e51b8152600401610f8790613d09565b60165460ff161515600114611cb65760405162461bcd60e51b8152600401610f8790613e2d565b600182611cc23361258d565b611ccc9190613c23565b1115611cea5760405162461bcd60e51b8152600401610f8790613e64565b600033604051602001611cfd9190613ca0565b604051602081830303815290604052805190602001209050611d208585836124e2565b611d3c5760405162461bcd60e51b8152600401610f8790613e98565b611b553384611f52565b6000610eda8261258d565b611d59611e8b565b8015611d6e5750600954600160b01b900460ff165b611d8a5760405162461bcd60e51b8152600401610f8790613ecc565b61104082826129ed565b611d9c611f28565b60098054911515600160a81b0260ff60a81b19909216919091179055565b6000610eda82612561565b8060005b81811015611028576000848483818110611de557611de5613b21565b905060200201359050611df781612bc2565b50611e0181613bcb565b9050611dc9565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b611e3e611f28565b6016805460ff1916911515919091179055565b611e59611f28565b6001600160a01b038116611e7f5760405162461bcd60e51b8152600401610f8790613edc565b611e8881612485565b50565b600954600090600160a81b900460ff168015611531575050600d54431190565b604080516080810182526000808252602082018190529181018290526060810191909152610eda611edb83612125565b612d21565b611eeb600143613bb4565b408133604051602001611f0093929190613f26565b60408051601f1981840301815291815281516020928301206000938452600a90925290912055565b6008546001600160a01b031633146116d05760405162461bcd60e51b8152600401610f8790613f8f565b6000611f5c612223565b611f67906001613c23565b9050805b611f758383613c23565b811015611fa957611f8581611ee0565b6000818152600b602052604090206001905580611fa181613bcb565b915050611f6b565b506115928383612d68565b600081600111158015611fc8575060005482105b8015610eda575050600090815260046020526040902054600160e01b161590565b6000818152601b60205260408120548190801561200d5761200a8142613bb4565b91505b6000848152601c60205260408120546120269084613c23565b905061203185612072565b811015801561205057506017546000868152600b602052604090205410155b801561206957506000858152601b602052604090205415155b95945050505050565b60008061207d61222d565b9050600060195482620151806120939190613f9f565b61209d9190613fd4565b6000858152600b602052604081205460175492935090918111156120e557601a546017546120cb9083613bb4565b6120d89062015180613f9f565b6120e29190613fd4565b91505b828211156120f1578291505b60008284620151806018546121069190613f9f565b6121109190613c23565b61211a9190613bb4565b979650505050505050565b600081806001116121755760005481101561217557600081815260046020526040902054600160e01b8116612173575b806117ba575060001901600081815260046020526040902054612155565b505b604051636f96cda160e11b815260040160405180910390fd5b6001600160a01b03841615806121ab57506001600160a01b038316155b156121b557611028565b6001600160a01b0384161561102857815b6121d08284613c23565b811015611b55576121e081612d82565b6121e981613bcb565b90506121c6565b60008060006121fd612223565b9050600e5481106122135760135460145461221a565b6010546011545b92509250509091565b6000546000190190565b600080612238612223565b90506116f3811161224b57600091505090565b6122576116f382613bb4565b91505090565b6000818152601b60205260409020546122885760405162461bcd60e51b8152600401610f8790614015565b6000818152601b60205260408120546122a19042613bb4565b905080601c600084815260200190815260200160002060008282546122c69190613c23565b90915550506000828152601b60205260408082208290555183917f77b32aef15eac84703df273acc09c59be81471f28f8a9eecd503b40cfd7a314091a260405182907f9b890154087c644ebc131cc896b4fc9af428461c07cc581063101c8306adaf1d90600090a25050565b60165462010000900460ff16151560011461235f5760405162461bcd60e51b8152600401610f879061404b565b8060005b8181101561102857600084848381811061237f5761237f613b21565b90506020020135905061238f3390565b6001600160a01b03166123a182611eab565b516001600160a01b031614806123c75750336123bc826110ec565b6001600160a01b0316145b6123e35760405162461bcd60e51b8152600401610f8790614078565b6123ec81611fe9565b6124085760405162461bcd60e51b8152600401610f87906140a8565b61241c61241482611eab565b516001611f52565b6000818152601c60209081526040808320839055601b9091528120429055612442612223565b905080827fb631eca81f936326925370c4b06accb33f19ecea754a9f20fbe4f5edd93d230760405160405180910390a350508061247e90613bcb565b9050612363565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611e88816000612df4565b6000611aef848480806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250506015549150859050612f33565b604080516080810182526000808252602082018190529181018290526060810191909152600082815260046020526040902054610eda90612d21565b60008061256c612223565b9050600e54811061257f57601254612583565b600f545b6117ba9084613f9f565b6001600160a01b03166000908152600560205260409081902054901c6001600160401b031690565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906125ea9033908990889088906004016140b8565b602060405180830381600087803b15801561260457600080fd5b505af1925050508015612634575060408051601f3d908101601f1916820190925261263191810190614107565b60015b61268f573d808015612662576040519150601f19603f3d011682016040523d82523d6000602084013e612667565b606091505b508051612687576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6000818152600a6020908152604080832054600d54600b90935281842054600954925163176f05ed60e11b81526060959490920193909290916001600160a01b0390911690632ede0bda90612707908690869060040161375b565b60006040518083038186803b15801561271f57600080fd5b505afa158015612733573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261275b9190810190614180565b905060006128d461276b87612f49565b600954604051636404fcd160e01b81526001600160a01b0390911690636404fcd19061279b90899060040161365e565b60006040518083038186803b1580156127b357600080fd5b505afa1580156127c7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526127ef9190810190614180565b6127f98787613046565b6116f38a111561282557604051806040016040528060048152602001631127379160e11b815250612844565b60405180604001604052806005815260200164112cb2b99160d91b8152505b60008b8152601b602052604090205461287957604051806040016040528060048152602001631127379160e11b815250612898565b60405180604001604052806005815260200164112cb2b99160d91b8152505b6128a189612f49565b6128aa89613133565b6040516020016128c0979695949392919061433c565b604051602081830303815290604052613133565b9050806040516020016128e7919061449f565b604051602081830303815290604052945050505050919050565b6000818152600a6020526040808220546009549151633521481160e21b815260609391926001600160a01b03169063d48520449061294390859060040161365e565b60006040518083038186803b15801561295b57600080fd5b505afa15801561296f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129979190810190614180565b905060006129c16129a786612f49565b6129b084613133565b6040516020016128c09291906144d1565b9050806040516020016129d4919061449f565b6040516020818303038152906040529350505050919050565b80806129f857600080fd5b600083836000818110612a0d57612a0d613b21565b9050602002013590506000805b83811015612b46576000868683818110612a3657612a36613b21565b9050602002013590506000600b6000838152602001908152602001600020549050612a5e3390565b6001600160a01b0316612a7083611eab565b516001600160a01b03161480612a96575033612a8b836110ec565b6001600160a01b0316145b612ab25760405162461bcd60e51b8152600401610f8790614078565b80612acf5760405162461bcd60e51b8152600401610f87906145a1565b612ad98185613c23565b93508215612b3357612aea826124d7565b84827ff4c8f45558b285c9b4d64b7e1643043dae934b4cc083c3afcb8d411692d4dd6883604051612b1b919061365e565b60405180910390a36000828152600b60205260408120555b505080612b3f90613bcb565b9050612a1a565b50600c54811115612b695760405162461bcd60e51b8152600401610f87906145da565b6000828152600b602052604090819020805490839055905183907f209ce12c88859afa4298582516e03b1eba9c466c9dff5db16130629f97b5d52c90612bb2908490869061375b565b60405180910390a2505050505050565b8033612bcd82611eab565b516001600160a01b03161480612bf3575033612be8826110ec565b6001600160a01b0316145b612c0f5760405162461bcd60e51b8152600401610f8790613c68565b6000828152601b602052604090205480612cb757601654610100900460ff16612c4a5760405162461bcd60e51b8152600401610f8790614609565b6017546000848152600b60205260409020541015612c7a5760405162461bcd60e51b8152600401610f8790614639565b6000838152601b60205260408082204290555184917f41fa9dacd23836615b00b8de96e10a64a50cd7de16ad167aabf4c023bfacd1da91a2505050565b612cc18142613bb4565b6000848152601c602052604081208054909190612cdf908490613c23565b90915550506000838152601b60205260408082208290555184917f77b32aef15eac84703df273acc09c59be81471f28f8a9eecd503b40cfd7a314091a2505050565b604080516080810182526001600160a01b038316815260a083901c6001600160401b03166020820152600160e01b831615159181019190915260e89190911c606082015290565b611040828260405180602001604052806000815250613298565b6000818152601b602052604090205415612dcf576000818152601b60205260408082208290555182917f77b32aef15eac84703df273acc09c59be81471f28f8a9eecd503b40cfd7a314091a25b6000818152601c602052604090205415611e88576000908152601c6020526040812055565b6000612dff83612125565b905080600080612e1d86600090815260066020526040902080549091565b915091508415612e5d57612e32818433611354565b612e5d57612e408333611e08565b612e5d57604051632ce44b5f60e11b815260040160405180910390fd5b612e6b83600088600161218e565b8015612e7657600082555b6001600160a01b038316600081815260056020526040902080546fffffffffffffffffffffffffffffffff0190554260a01b17600360e01b17600087815260046020526040902055600160e11b8416612efd5760018601600081815260046020526040902054612efb576000548114612efb5760008181526004602052604090208590555b505b60405186906000906001600160a01b038616906000805160206149f0833981519152908390a45050600180548101905550505050565b600082612f4085846132fe565b14949350505050565b606081612f6d5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612f975780612f8181613bcb565b9150612f909050600a83613fd4565b9150612f71565b6000816001600160401b03811115612fb157612fb1613957565b6040519080825280601f01601f191660200182016040528015612fdb576020820181803683370190505b5090505b8415611aef57612ff0600183613bb4565b9150612ffd600a86614649565b613008906030613c23565b60f81b81838151811061301d5761301d613b21565b60200101906001600160f81b031916908160001a90535061303f600a86613fd4565b9450612fdf565b6060600061306a6130658560026001613060886005613c23565b61334b565b612f49565b613080613065866003600261306089600a613c23565b61309661306587600460026130608a600a613c23565b6130ac61306588600560026130608b600a613c23565b6130c261306589600660026130608c600a613c23565b6130d86130658a600760026130608d600a613c23565b6130ee6130658b600860026130608e600a613c23565b6131046130658c600960026130608f600a613c23565b60405160200161311b989796959493929190614700565b60408051808303601f19018152919052949350505050565b606081516000141561315357505060408051602081019091526000815290565b60006040518060600160405280604081526020016149b060409139905060006003845160026131829190613c23565b61318c9190613fd4565b613197906004613f9f565b905060006131a6826020613c23565b6001600160401b038111156131bd576131bd613957565b6040519080825280601f01601f1916602001820160405280156131e7576020820181803683370190505b509050818152600183018586518101602084015b81831015613253576003830192508251603f8160121c168501518253600182019150603f81600c1c168501518253600182019150603f8160061c168501518253600182019150603f81168501518253506001016131fb565b60038951066001811461326d576002811461327e5761328a565b613d3d60f01b60011983015261328a565b603d60f81b6000198301525b509398975050505050505050565b6132a28383613375565b6001600160a01b0383163b15611592576000548281035b6132cc60008683806001019450866125b5565b6132e9576040516368d2bf6b60e11b815260040160405180910390fd5b8181106132b9578160005414611b5557600080fd5b600081815b84518110156133435761332f8286838151811061332257613322613b21565b6020026020010151613455565b91508061333b81613bcb565b915050613303565b509392505050565b60006133578383613bb4565b6133618587613fd4565b61336b9190614649565b6120699084613c23565b600054816133965760405163b562e8dd60e01b815260040160405180910390fd5b6133a3600084838561218e565b6001600160a01b03831660008181526005602090815260408083208054680100000000000000018802019055848352600490915281206001851460e11b4260a01b178317905582840190839083906000805160206149f08339815191528180a4600183015b81811461342e57808360006000805160206149f0833981519152600080a4600101613408565b508161344c57604051622e076360e81b815260040160405180910390fd5b60005550505050565b60008183106134715760008281526020849052604090206117ba565b5060009182526020526040902090565b6001600160e01b031981165b8114611e8857600080fd5b8035610eda81613481565b6000602082840312156134b8576134b8600080fd5b6000611aef8484613498565b8015155b82525050565b60208101610eda82846134c4565b60008083601f8401126134f1576134f1600080fd5b5081356001600160401b0381111561350b5761350b600080fd5b60208301915083602082028301111561352657613526600080fd5b9250929050565b6000806020838503121561354357613543600080fd5b82356001600160401b0381111561355c5761355c600080fd5b613568858286016134dc565b92509250509250929050565b60006001600160a01b038216610eda565b61348d81613574565b8035610eda81613585565b8061348d565b8035610eda81613599565b600080604083850312156135c0576135c0600080fd5b60006135cc858561358e565b92505060206135dd8582860161359f565b9150509250929050565b6000806000606084860312156135ff576135ff600080fd5b600061360b868661359f565b935050602061361c8682870161359f565b925050604061362d8682870161359f565b9150509250925092565b60006020828403121561364c5761364c600080fd5b6000611aef848461359f565b806134c8565b60208101610eda8284613658565b60005b8381101561368757818101518382015260200161366f565b838111156110285750506000910152565b60006136a2825190565b8084526020840193506136b981856020860161366c565b601f01601f19169290920192915050565b602080825281016117ba8184613698565b6134c881613574565b60208101610eda82846136db565b80151561348d565b8035610eda816136f2565b60006020828403121561371a5761371a600080fd5b6000611aef84846136fa565b60008060006060848603121561373e5761373e600080fd5b600061374a868661358e565b935050602061361c8682870161358e565b604081016137698285613658565b6117ba6020830184613658565b606081016137848286613658565b6137916020830185613658565b611aef60408301846134c4565b6000602082840312156137b3576137b3600080fd5b6000611aef848461358e565b6000806000604084860312156137d7576137d7600080fd5b83356001600160401b038111156137f0576137f0600080fd5b6137fc868287016134dc565b9350935050602061362d8682870161358e565b600061381b8383613658565b505060200190565b600061382d825190565b80845260209384019383018060005b83811015613861578151613850888261380f565b97506020830192505060010161383c565b509495945050505050565b602080825281016117ba8184613823565b634e487b7160e01b600052602160045260246000fd5b60028110611e8857611e8861387d565b806138ad81613893565b919050565b6000610eda826138a3565b6134c8816138b2565b60208101610eda82846138bd565b600080604083850312156138ea576138ea600080fd5b60006138f6858561358e565b92505060206135dd858286016136fa565b60008060006040848603121561391f5761391f600080fd5b83356001600160401b0381111561393857613938600080fd5b613944868287016134dc565b9350935050602061362d8682870161359f565b634e487b7160e01b600052604160045260246000fd5b601f19601f83011681018181106001600160401b038211171561399257613992613957565b6040525050565b60006139a460405190565b90506138ad828261396d565b60006001600160401b038211156139c9576139c9613957565b601f19601f83011660200192915050565b82818337506000910152565b60006139f96139f4846139b0565b613999565b905082815260208101848484011115613a1457613a14600080fd5b6133438482856139da565b600082601f830112613a3357613a33600080fd5b8135611aef8482602086016139e6565b60008060008060808587031215613a5c57613a5c600080fd5b6000613a68878761358e565b9450506020613a798782880161358e565b9350506040613a8a8782880161359f565b92505060608501356001600160401b03811115613aa957613aa9600080fd5b613ab587828801613a1f565b91505092959194509250565b6000610eda82613574565b6000610eda82613ac1565b6134c881613acc565b60208101610eda8284613ad7565b60008060408385031215613b0457613b04600080fd5b6000613b10858561358e565b92505060206135dd8582860161358e565b634e487b7160e01b600052603260045260246000fd5b600881526000602082016726bab9ba1037bbb760c11b815291505b5060200190565b60208082528101610eda81613b37565b600e81526000602082016d4174206c65617374204c766c203160901b81529150613b52565b60208082528101610eda81613b69565b634e487b7160e01b600052601160045260246000fd5b600082821015613bc657613bc6613b9e565b500390565b6000600019821415613bdf57613bdf613b9e565b5060010190565b634e487b7160e01b600052602260045260246000fd5b600281046001821680613c1057607f821691505b60208210811415611c3457611c34613be6565b60008219821115613c3657613c36613b9e565b500190565b60168152600060208201752737ba1030b8383937bb32b2103737b91037bbb732b960511b81529150613b52565b60208082528101610eda81613c3b565b6000610eda8260601b90565b6000610eda82613c78565b6134c8613c9b82613574565b613c84565b6000613cac8284613c8f565b50601401919050565b600f81526000602082016e4d696e74206174206c65617374203160881b81529150613b52565b60208082528101610eda81613cb5565b6007815260006020820166125b9d985b1a5960ca1b81529150613b52565b60208082528101610eda81613ceb565b6012815260006020820171141d589b1a58c81b5a5b9d0818db1bdcd95960721b81529150613b52565b60208082528101610eda81613d19565b6014815260006020820173125b98dbdc9c9958dd08195d1a195c881cd95b9d60621b81529150613b52565b60208082528101610eda81613d52565b601181526000602082017045786365656473206d6178206d696e747360781b81529150613b52565b60208082528101610eda81613d8d565b601781526000602082017f45786365656473207472616e73616374696f6e206d617800000000000000000081529150613b52565b60208082528101610eda81613dc5565b600d81526000602082016c13595c9adb194818db1bdcd959609a1b81529150613b52565b60208082528101610eda81613e09565b601081526000602082016f43616e20636c61696d206f6e6c79203160801b81529150613b52565b60208082528101610eda81613e3d565b600d81526000602082016c24b73b30b634b210383937b7b360991b81529150613b52565b60208082528101610eda81613e74565b600d81526000602082016c4e6f74206d6572676561626c6560981b81529150613b52565b60208082528101610eda81613ea8565b60208082528101610eda81602681527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160208201526564647265737360d01b604082015260600190565b6000613f328286613658565b602082019150613f428285613658565b602082019150613f528284613c8f565b506014019392505050565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081526000613b52565b60208082528101610eda81613f5d565b6000816000190483118215151615613fb957613fb9613b9e565b500290565b634e487b7160e01b600052601260045260246000fd5b600082613fe357613fe3613fbe565b500490565b6016815260006020820175436861726163746572206e6f7420737465616b696e6760501b81529150613b52565b60208082528101610eda81613fe8565b600f81526000602082016e1098589a595cc8191a5cd8589b1959608a1b81529150613b52565b60208082528101610eda81614025565b600681526000602082016511195b9a595960d21b81529150613b52565b60208082528101610eda8161405b565b60098152600060208201684e6f7420726561647960b81b81529150613b52565b60208082528101610eda81614088565b608081016140c682876136db565b6140d360208301866136db565b6140e06040830185613658565b81810360608301526140f28184613698565b9695505050505050565b8051610eda81613481565b60006020828403121561411c5761411c600080fd5b6000611aef84846140fc565b60006141366139f4846139b0565b90508281526020810184848401111561415157614151600080fd5b61334384828561366c565b600082601f83011261417057614170600080fd5b8151611aef848260208601614128565b60006020828403121561419557614195600080fd5b81516001600160401b038111156141ae576141ae600080fd5b611aef8482850161415c565b6803d913730b6b2911d160bd1b815260005b5060090190565b68226574686b756e202360b81b815260006141cc565b60006141f3825190565b61420181856020860161366c565b9290920192915050565b61088b60f21b815260005b5060020190565b7f226465736372697074696f6e223a20226574686b756e20697320616e2031303081527f25206f6e2d636861696e2064796e616d6963204e46542070726f6a656374207760208201527f69746820756e697175652066756e6374696f6e616c69747920616e642066756e60408201527f206d65726765206d656368616e6963732c206d61646520746f2063656c65627260608201527f61746520546865204d65726765212047616d6261747465206574686b756e21226080820152600b60fa1b60a082015260a10190565b611f4b60f21b81526000614216565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b626173815263194d8d0b60e21b602082015260240190565b61227d60f01b81526000614216565b6000614347826141ba565b9150614352826141d3565b915061435e828a6141e9565b91506143698261420b565b91506143748261421d565b6d2261747472696275746573223a5b60901b8152600e01915061439782896141e9565b91506143a382886141e9565b7f7b2274726169745f74797065223a2247656e65736973222c202276616c7565228152601d60f91b602082015260210191506143df82876141e9565b91506143ea826142e8565b7f7b2274726169745f74797065223a22537465616b696e67222c202276616c7565815261111d60f11b6020820152602201915061442782866141e9565b9150614432826142e8565b7f7b2274726169745f74797065223a224c6576656c222c202276616c7565223a008152601f01915061446482856141e9565b621f574b60ea1b8152600301915061447b826142f7565b915061448782846141e9565b91506144928261432d565b9998505050505050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000008152601d0160006117ba82846141e9565b60006144dc826141ba565b91506144e7826141d3565b91506144f382856141e9565b91506144fe8261420b565b91506145098261421d565b7f2261747472696275746573223a5b7b2274726169745f74797065223a2257616981527f74696e6720666f7220546865204d65726765222c202276616c7565223a2254726020820152651d59489f574b60d21b6040820152604601915061456f826142f7565b915061457b82846141e9565b9150611aef8261432d565b60048152600060208201631119585960e21b81529150613b52565b60208082528101610eda81614586565b6012815260006020820171115e18d959591959081b585e081b195d995b60721b81529150613b52565b60208082528101610eda816145b1565b6008815260006020820167111a5cd8589b195960c21b81529150613b52565b60208082528101610eda816145ea565b6009815260006020820168139bdd081b195d995b60ba1b81529150613b52565b60208082528101610eda81614619565b60008261465857614658613fbe565b500690565b7f7b2274726169745f74797065223a2246756e676962696c697479222c2022646981527f73706c61795f74797065223a20226e756d626572222c202276616c7565223a00602082015260005b50603f0190565b7f7b2274726169745f74797065223a224d6f6973747572697a6564222c2022646981527f73706c61795f74797065223a20226e756d626572222c202276616c7565223a00602082015260006146a9565b7f7b2274726169745f74797065223a224b696d6f63686969222c2022646973706c81527f61795f74797065223a20226e756d626572222c202276616c7565223a000000006020820152603c016000614758828b6141e9565b9150614763826142e8565b7f7b2274726169745f74797065223a22555755222c2022646973706c61795f747981527f7065223a20226e756d626572222c202276616c7565223a000000000000000000602082015260370191506147bb828a6141e9565b91506147c6826142e8565b7f7b2274726169745f74797065223a22556c747261736f756e646e657373222c2081527f22646973706c61795f74797065223a20226e756d626572222c202276616c7565602082015261111d60f11b6040820152604201915061482982896141e9565b9150614834826142e8565b915061483f8261465d565b915061484b82886141e9565b9150614856826142e8565b7f7b2274726169745f74797065223a225375676f696e657373222c20226469737081527f6c61795f74797065223a20226e756d626572222c202276616c7565223a0000006020820152603d0191506148ae82876141e9565b91506148b9826142e8565b7f7b2274726169745f74797065223a224b616b6b6f6969222c2022646973706c6181527f795f74797065223a20226e756d626572222c202276616c7565223a00000000006020820152603b01915061491182866141e9565b915061491c826142e8565b7f7b2274726169745f74797065223a224b6177616969222c2022646973706c617981527f5f74797065223a20226e756d626572222c202276616c7565223a0000000000006020820152603a01915061497482856141e9565b915061497f826142e8565b915061498a826146b0565b915061499682846141e9565b91506149a1826142e8565b9a995050505050505050505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212201c12125d563d904029dce39420fe4b5fb3eb1bbf6f20ae2110eff2025b8925d364736f6c63430008090033
Deployed Bytecode
0x6080604052600436106104945760003560e01c80637e980e0011610260578063cb9d5b9e11610144578063e7b5ec0f116100c1578063f0503e8011610085578063f0503e8014610dd1578063f1e25ea814610dfe578063f2fde38b14610e21578063f5cbd52b14610e41578063f7da7b3b14610e57578063ffd3332e14610e6d57600080fd5b8063e7b5ec0f14610d23578063e8ff352514610d50578063e934028914610d70578063e985e9c514610d91578063efdb28db14610db157600080fd5b8063de62d84211610108578063de62d84214610c8c578063e035740314610cac578063e0a8085314610cc2578063e33e4b4914610ce2578063e757223014610d0357600080fd5b8063cb9d5b9e14610c05578063cc06c35914610c1c578063da97398e14610c32578063daeaeb0314610c4c578063dc33e68114610c6c57600080fd5b8063a22cb465116101dd578063afdb45a8116101a1578063afdb45a814610b45578063b88d4fde14610b65578063bc640bd014610b85578063bfa584d214610ba5578063c5c5c71c14610bc5578063c87b56dd14610be557600080fd5b8063a22cb46514610aba578063a3bcb09a14610ada578063acec8a5f14610afa578063ad031fb014610b19578063ad99cc8a14610b2f57600080fd5b80638da5cb5b116102245780638da5cb5b14610a2557806395d89b4114610a435780639ad7a0f614610a585780639aedee3a14610a795780639da3f8fd14610a8c57600080fd5b80637e980e001461098257806381bbc8ef146109a25780638462151c146109c2578063887fee31146109ef5780638cf4f3a514610a0f57600080fd5b8063344f1ba5116103875780636352211e1161030457806370a08231116102c857806370a08231146108d757806370f34a87146108f75780637149b6d314610917578063715018a614610937578063786d5b471461094c5780637cb647591461096257600080fd5b80636352211e1461084b578063668b63c41461086b578063697e2224146108815780636ca76d1f146108975780636d49cdfa146108b757600080fd5b80634a89c50b1161034b5780634a89c50b146107ca5780634bc9f48a146107e05780634d99d976146108005780635030c70714610815578063540da96c1461083557600080fd5b8063344f1ba51461074b5780633726230a1461076b57806337e348df146107805780633ccfd60b1461079557806342842e0e146107aa57600080fd5b806317cbab92116104155780632ddfd5ba116103d95780632ddfd5ba146106ad5780632eb4a7ab146106cd5780632f5b1cea146106e3578063324d34bc1461070657806332a125b31461073557600080fd5b806317cbab921461061a57806318160ddd1461063a5780631f8fe21a1461065757806323b872dd14610677578063295020be1461069757600080fd5b806306fdde031161045c57806306fdde031461056b578063081812fc1461058d57806308683e71146105ba578063095ea7b3146105da5780630b269898146105fa57600080fd5b806301ffc9a7146104995780630270a072146104cf578063034e39ee146104f157806304acc3771461051157806305c58df214610531575b600080fd5b3480156104a557600080fd5b506104b96104b43660046134a3565b610e8e565b6040516104c691906134ce565b60405180910390f35b3480156104db57600080fd5b506104ef6104ea36600461352d565b610ee0565b005b3480156104fd57600080fd5b506104ef61050c3660046135aa565b61102e565b34801561051d57600080fd5b506104ef61052c3660046135e7565b611044565b34801561053d57600080fd5b5061055e61054c366004613637565b600b6020526000908152604090205481565b6040516104c6919061365e565b34801561057757600080fd5b5061058061105a565b6040516104c691906136ca565b34801561059957600080fd5b506105ad6105a8366004613637565b6110ec565b6040516104c691906136e4565b3480156105c657600080fd5b506104ef6105d5366004613705565b611130565b3480156105e657600080fd5b506104ef6105f53660046135aa565b611156565b34801561060657600080fd5b506104ef61061536600461352d565b6111f6565b34801561062657600080fd5b506104b9610635366004613637565b6112e9565b34801561064657600080fd5b50600154600054036000190161055e565b34801561066357600080fd5b5061055e610672366004613637565b6112f4565b34801561068357600080fd5b506104ef610692366004613726565b6112ff565b3480156106a357600080fd5b5061055e60185481565b3480156106b957600080fd5b506104ef6106c8366004613705565b611495565b3480156106d957600080fd5b5061055e60155481565b3480156106ef57600080fd5b506106f86114bb565b6040516104c692919061375b565b34801561071257600080fd5b50610726610721366004613637565b6114ce565b6040516104c693929190613776565b34801561074157600080fd5b5061055e60115481565b34801561075757600080fd5b506104ef610766366004613637565b61151a565b34801561077757600080fd5b5061055e611527565b34801561078c57600080fd5b5061055e611536565b3480156107a157600080fd5b506104ef611540565b3480156107b657600080fd5b506104ef6107c5366004613726565b611577565b3480156107d657600080fd5b5061055e600d5481565b3480156107ec57600080fd5b506104ef6107fb366004613637565b611597565b34801561080c57600080fd5b5061055e600181565b34801561082157600080fd5b506104ef610830366004613705565b6115a4565b34801561084157600080fd5b5061055e60195481565b34801561085757600080fd5b506105ad610866366004613637565b6115c8565b34801561087757600080fd5b5061055e60105481565b34801561088d57600080fd5b5061055e600f5481565b3480156108a357600080fd5b506104ef6108b236600461352d565b6115d3565b3480156108c357600080fd5b506104ef6108d236600461352d565b61161e565b3480156108e357600080fd5b5061055e6108f236600461379e565b611628565b34801561090357600080fd5b506104ef610912366004613705565b611676565b34801561092357600080fd5b506104ef610932366004613705565b61169c565b34801561094357600080fd5b506104ef6116be565b34801561095857600080fd5b5061055e6116f381565b34801561096e57600080fd5b506104ef61097d366004613637565b6116d2565b34801561098e57600080fd5b506104ef61099d366004613637565b6116df565b3480156109ae57600080fd5b506104b96109bd3660046137bf565b61177f565b3480156109ce57600080fd5b506109e26109dd36600461379e565b6117c1565b6040516104c6919061386c565b3480156109fb57600080fd5b506104ef610a0a366004613637565b6118d0565b348015610a1b57600080fd5b5061055e60135481565b348015610a3157600080fd5b506008546001600160a01b03166105ad565b348015610a4f57600080fd5b50610580611914565b348015610a6457600080fd5b506009546104b990600160a81b900460ff1681565b6104ef610a87366004613637565b611923565b348015610a9857600080fd5b50600954610aad90600160a01b900460ff1681565b6040516104c691906138c6565b348015610ac657600080fd5b506104ef610ad53660046138d4565b611a49565b348015610ae657600080fd5b506104b9610af5366004613907565b611ae2565b348015610b0657600080fd5b506016546104b990610100900460ff1681565b348015610b2557600080fd5b5061055e601a5481565b348015610b3b57600080fd5b5061055e60125481565b348015610b5157600080fd5b506104ef610b60366004613907565b611af7565b348015610b7157600080fd5b506104ef610b80366004613a43565b611b5c565b348015610b9157600080fd5b506104ef610ba0366004613637565b611ba0565b348015610bb157600080fd5b506104ef610bc036600461379e565b611bad565b348015610bd157600080fd5b506016546104b99062010000900460ff1681565b348015610bf157600080fd5b50610580610c00366004613637565b611bd7565b348015610c1157600080fd5b5061055e6201518081565b348015610c2857600080fd5b5061055e600c5481565b348015610c3e57600080fd5b506016546104b99060ff1681565b348015610c5857600080fd5b506104ef610c67366004613907565b611c3a565b348015610c7857600080fd5b5061055e610c8736600461379e565b611d46565b348015610c9857600080fd5b506104ef610ca736600461352d565b611d51565b348015610cb857600080fd5b5061055e600e5481565b348015610cce57600080fd5b506104ef610cdd366004613705565b611d94565b348015610cee57600080fd5b506009546104b990600160b01b900460ff1681565b348015610d0f57600080fd5b5061055e610d1e366004613637565b611dba565b348015610d2f57600080fd5b50600954610d43906001600160a01b031681565b6040516104c69190613ae0565b348015610d5c57600080fd5b506104ef610d6b36600461352d565b611dc5565b348015610d7c57600080fd5b506009546104b990600160b81b900460ff1681565b348015610d9d57600080fd5b506104b9610dac366004613aee565b611e08565b348015610dbd57600080fd5b506104ef610dcc366004613705565b611e36565b348015610ddd57600080fd5b5061055e610dec366004613637565b600a6020526000908152604090205481565b348015610e0a57600080fd5b506104b9610e19366004613637565b6116f3101590565b348015610e2d57600080fd5b506104ef610e3c36600461379e565b611e51565b348015610e4d57600080fd5b5061055e60145481565b348015610e6357600080fd5b5061055e60175481565b348015610e7957600080fd5b506009546104b990600160c01b900460ff1681565b60006301ffc9a760e01b6001600160e01b031983161480610ebf57506380ac58cd60e01b6001600160e01b03198316145b80610eda5750635b5e139f60e01b6001600160e01b03198316145b92915050565b610ee8611e8b565b8015610efd5750600954600160b81b900460ff165b610f0657600080fd5b8060005b81811015611028576000848483818110610f2657610f26613b21565b9050602002013590506000600b6000838152602001908152602001600020549050610f4e3390565b6001600160a01b0316610f6083611eab565b516001600160a01b031614610f905760405162461bcd60e51b8152600401610f8790613b59565b60405180910390fd5b60018111610fb05760405162461bcd60e51b8152600401610f8790613b8e565b610fb982611ee0565b6000610fc6600183613bb4565b6000848152600b6020526040908190208290555190915083907fc6ca1ad742bbff176a4773a093de94df27d5d29669f999560882d57503dfaaed9061100c90849061365e565b60405180910390a25050508061102190613bcb565b9050610f0a565b50505050565b611036611f28565b6110408282611f52565b5050565b61104c611f28565b601892909255601955601a55565b60606002805461106990613bfc565b80601f016020809104026020016040519081016040528092919081815260200182805461109590613bfc565b80156110e25780601f106110b7576101008083540402835291602001916110e2565b820191906000526020600020905b8154815290600101906020018083116110c557829003601f168201915b5050505050905090565b60006110f782611fb4565b611114576040516333d1c03960e21b815260040160405180910390fd5b506000908152600660205260409020546001600160a01b031690565b611138611f28565b60098054911515600160c01b0260ff60c01b19909216919091179055565b6000611161826115c8565b9050336001600160a01b0382161461119a5761117d8133611e08565b61119a576040516367d9dca160e11b815260040160405180910390fd5b60008281526006602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b6111fe611f28565b8181600081811061121157611211613b21565b6020029190910135600e55508181600181811061123057611230613b21565b6020029190910135600f55508181600281811061124f5761124f613b21565b6020029190910135601055508181600381811061126e5761126e613b21565b6020029190910135601155508181600481811061128d5761128d613b21565b602002919091013560125550818160058181106112ac576112ac613b21565b602002919091013560135550818160068181106112cb576112cb613b21565b905060200201356014819055506116f3600e54111561104057600080fd5b6000610eda82611fe9565b6000610eda82612072565b600061130a82612125565b9050836001600160a01b0316816001600160a01b03161461133d5760405162a1148160e81b815260040160405180910390fd5b600082815260066020526040902080546113698187335b6001600160a01b039081169116811491141790565b611394576113778633611e08565b61139457604051632ce44b5f60e11b815260040160405180910390fd5b6001600160a01b0385166113bb57604051633a954ecd60e21b815260040160405180910390fd5b6113c8868686600161218e565b80156113d357600082555b6001600160a01b038681166000908152600560205260408082208054600019019055918716808252919020805460010190554260a01b17600160e11b17600085815260046020526040902055600160e11b831661145e576001840160008181526004602052604090205461145c57600054811461145c5760008181526004602052604090208490555b505b83856001600160a01b0316876001600160a01b03166000805160206149f083398151915260405160405180910390a4505050505050565b61149d611f28565b60098054911515600160b81b0260ff60b81b19909216919091179055565b6000806114c66121f0565b915091509091565b6000818152601b60205260408120548190819080156114f4576114f18142613bb4565b93505b6000858152601c602052604090205461150d9085613c23565b9395939450151592915050565b611522611f28565b600c55565b6000611531612223565b905090565b600061153161222d565b611548611f28565b6040514790339082156108fc029083906000818181858888f19350505050158015611040573d6000803e3d6000fd5b61159283838360405180602001604052806000815250611b5c565b505050565b61159f611f28565b600d55565b6115ac611f28565b60168054911515620100000262ff000019909216919091179055565b6000610eda82612125565b6115db611f28565b8060005b818110156110285760008484838181106115fb576115fb613b21565b90506020020135905061160d8161225d565b5061161781613bcb565b90506115df565b6110408282612332565b60006001600160a01b038216611651576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b03166000908152600560205260409020546001600160401b031690565b61167e611f28565b60098054911515600160b01b0260ff60b01b19909216919091179055565b6116a4611f28565b601680549115156101000261ff0019909216919091179055565b6116c6611f28565b6116d06000612485565b565b6116da611f28565b601555565b80336116ea82611eab565b516001600160a01b03161480611710575033611705826110ec565b6001600160a01b0316145b61172c5760405162461bcd60e51b8152600401610f8790613c68565b600954600160c01b900460ff16151560011461174757600080fd5b611750826124d7565b60405182907f0f1711c7762713c236f84b2fa04e1ef0923424ade89cb73e02eafab2ed4af22a90600090a25050565b600080826040516020016117939190613ca0565b6040516020818303038152906040528051906020012090506117b68585836124e2565b9150505b9392505050565b606060008060006117d185611628565b90506000816001600160401b038111156117ed576117ed613957565b604051908082528060200260200182016040528015611816578160200160208202803683370190505b50905061184360408051608081018252600080825260208201819052918101829052606081019190915290565b60015b8386146118c45761185681612525565b9150816040015115611867576118bc565b81516001600160a01b03161561187c57815194505b876001600160a01b0316856001600160a01b031614156118bc57808387806001019850815181106118af576118af613b21565b6020026020010181815250505b600101611846565b50909695505050505050565b6118d8611f28565b8060018111156118ea576118ea61387d565b6009805460ff60a01b1916600160a01b83600181111561190c5761190c61387d565b021790555050565b60606003805461106990613bfc565b80600081116119445760405162461bcd60e51b8152600401610f8790613cdb565b6116f381611950612223565b61195a9190613c23565b11156119785760405162461bcd60e51b8152600401610f8790613d09565b6001600954600160a01b900460ff1660018111156119985761199861387d565b146119b55760405162461bcd60e51b8152600401610f8790613d42565b6119be82612561565b3410156119dd5760405162461bcd60e51b8152600401610f8790613d7d565b6000806119e86121f0565b9150915081846119f73361258d565b611a019190613c23565b1115611a1f5760405162461bcd60e51b8152600401610f8790613db5565b80841115611a3f5760405162461bcd60e51b8152600401610f8790613df9565b6110283385611f52565b6001600160a01b038216331415611a735760405163b06307db60e01b815260040160405180910390fd5b3360008181526007602090815260408083206001600160a01b038716808552925291829020805460ff191685151517905590519091907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3190611ad69085906134ce565b60405180910390a35050565b6000611aef8484846124e2565b949350505050565b611aff611f28565b8180611b0a57600080fd5b60005b81811015611b5557611b45858583818110611b2a57611b2a613b21565b9050602002016020810190611b3f919061379e565b84611f52565b611b4e81613bcb565b9050611b0d565b5050505050565b611b678484846112ff565b6001600160a01b0383163b1561102857611b83848484846125b5565b611028576040516368d2bf6b60e11b815260040160405180910390fd5b611ba8611f28565b601755565b611bb5611f28565b600980546001600160a01b0319166001600160a01b0392909216919091179055565b60608160018110158015611bf25750611bee612223565b8111155b611c0e5760405162461bcd60e51b8152600401610f8790613d09565b611c16611e8b565b15611c2b57611c24836126ac565b9150611c34565b611c2483612901565b50919050565b8060008111611c5b5760405162461bcd60e51b8152600401610f8790613cdb565b6116f381611c67612223565b611c719190613c23565b1115611c8f5760405162461bcd60e51b8152600401610f8790613d09565b60165460ff161515600114611cb65760405162461bcd60e51b8152600401610f8790613e2d565b600182611cc23361258d565b611ccc9190613c23565b1115611cea5760405162461bcd60e51b8152600401610f8790613e64565b600033604051602001611cfd9190613ca0565b604051602081830303815290604052805190602001209050611d208585836124e2565b611d3c5760405162461bcd60e51b8152600401610f8790613e98565b611b553384611f52565b6000610eda8261258d565b611d59611e8b565b8015611d6e5750600954600160b01b900460ff165b611d8a5760405162461bcd60e51b8152600401610f8790613ecc565b61104082826129ed565b611d9c611f28565b60098054911515600160a81b0260ff60a81b19909216919091179055565b6000610eda82612561565b8060005b81811015611028576000848483818110611de557611de5613b21565b905060200201359050611df781612bc2565b50611e0181613bcb565b9050611dc9565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b611e3e611f28565b6016805460ff1916911515919091179055565b611e59611f28565b6001600160a01b038116611e7f5760405162461bcd60e51b8152600401610f8790613edc565b611e8881612485565b50565b600954600090600160a81b900460ff168015611531575050600d54431190565b604080516080810182526000808252602082018190529181018290526060810191909152610eda611edb83612125565b612d21565b611eeb600143613bb4565b408133604051602001611f0093929190613f26565b60408051601f1981840301815291815281516020928301206000938452600a90925290912055565b6008546001600160a01b031633146116d05760405162461bcd60e51b8152600401610f8790613f8f565b6000611f5c612223565b611f67906001613c23565b9050805b611f758383613c23565b811015611fa957611f8581611ee0565b6000818152600b602052604090206001905580611fa181613bcb565b915050611f6b565b506115928383612d68565b600081600111158015611fc8575060005482105b8015610eda575050600090815260046020526040902054600160e01b161590565b6000818152601b60205260408120548190801561200d5761200a8142613bb4565b91505b6000848152601c60205260408120546120269084613c23565b905061203185612072565b811015801561205057506017546000868152600b602052604090205410155b801561206957506000858152601b602052604090205415155b95945050505050565b60008061207d61222d565b9050600060195482620151806120939190613f9f565b61209d9190613fd4565b6000858152600b602052604081205460175492935090918111156120e557601a546017546120cb9083613bb4565b6120d89062015180613f9f565b6120e29190613fd4565b91505b828211156120f1578291505b60008284620151806018546121069190613f9f565b6121109190613c23565b61211a9190613bb4565b979650505050505050565b600081806001116121755760005481101561217557600081815260046020526040902054600160e01b8116612173575b806117ba575060001901600081815260046020526040902054612155565b505b604051636f96cda160e11b815260040160405180910390fd5b6001600160a01b03841615806121ab57506001600160a01b038316155b156121b557611028565b6001600160a01b0384161561102857815b6121d08284613c23565b811015611b55576121e081612d82565b6121e981613bcb565b90506121c6565b60008060006121fd612223565b9050600e5481106122135760135460145461221a565b6010546011545b92509250509091565b6000546000190190565b600080612238612223565b90506116f3811161224b57600091505090565b6122576116f382613bb4565b91505090565b6000818152601b60205260409020546122885760405162461bcd60e51b8152600401610f8790614015565b6000818152601b60205260408120546122a19042613bb4565b905080601c600084815260200190815260200160002060008282546122c69190613c23565b90915550506000828152601b60205260408082208290555183917f77b32aef15eac84703df273acc09c59be81471f28f8a9eecd503b40cfd7a314091a260405182907f9b890154087c644ebc131cc896b4fc9af428461c07cc581063101c8306adaf1d90600090a25050565b60165462010000900460ff16151560011461235f5760405162461bcd60e51b8152600401610f879061404b565b8060005b8181101561102857600084848381811061237f5761237f613b21565b90506020020135905061238f3390565b6001600160a01b03166123a182611eab565b516001600160a01b031614806123c75750336123bc826110ec565b6001600160a01b0316145b6123e35760405162461bcd60e51b8152600401610f8790614078565b6123ec81611fe9565b6124085760405162461bcd60e51b8152600401610f87906140a8565b61241c61241482611eab565b516001611f52565b6000818152601c60209081526040808320839055601b9091528120429055612442612223565b905080827fb631eca81f936326925370c4b06accb33f19ecea754a9f20fbe4f5edd93d230760405160405180910390a350508061247e90613bcb565b9050612363565b600880546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b611e88816000612df4565b6000611aef848480806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250506015549150859050612f33565b604080516080810182526000808252602082018190529181018290526060810191909152600082815260046020526040902054610eda90612d21565b60008061256c612223565b9050600e54811061257f57601254612583565b600f545b6117ba9084613f9f565b6001600160a01b03166000908152600560205260409081902054901c6001600160401b031690565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a02906125ea9033908990889088906004016140b8565b602060405180830381600087803b15801561260457600080fd5b505af1925050508015612634575060408051601f3d908101601f1916820190925261263191810190614107565b60015b61268f573d808015612662576040519150601f19603f3d011682016040523d82523d6000602084013e612667565b606091505b508051612687576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b6000818152600a6020908152604080832054600d54600b90935281842054600954925163176f05ed60e11b81526060959490920193909290916001600160a01b0390911690632ede0bda90612707908690869060040161375b565b60006040518083038186803b15801561271f57600080fd5b505afa158015612733573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261275b9190810190614180565b905060006128d461276b87612f49565b600954604051636404fcd160e01b81526001600160a01b0390911690636404fcd19061279b90899060040161365e565b60006040518083038186803b1580156127b357600080fd5b505afa1580156127c7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526127ef9190810190614180565b6127f98787613046565b6116f38a111561282557604051806040016040528060048152602001631127379160e11b815250612844565b60405180604001604052806005815260200164112cb2b99160d91b8152505b60008b8152601b602052604090205461287957604051806040016040528060048152602001631127379160e11b815250612898565b60405180604001604052806005815260200164112cb2b99160d91b8152505b6128a189612f49565b6128aa89613133565b6040516020016128c0979695949392919061433c565b604051602081830303815290604052613133565b9050806040516020016128e7919061449f565b604051602081830303815290604052945050505050919050565b6000818152600a6020526040808220546009549151633521481160e21b815260609391926001600160a01b03169063d48520449061294390859060040161365e565b60006040518083038186803b15801561295b57600080fd5b505afa15801561296f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129979190810190614180565b905060006129c16129a786612f49565b6129b084613133565b6040516020016128c09291906144d1565b9050806040516020016129d4919061449f565b6040516020818303038152906040529350505050919050565b80806129f857600080fd5b600083836000818110612a0d57612a0d613b21565b9050602002013590506000805b83811015612b46576000868683818110612a3657612a36613b21565b9050602002013590506000600b6000838152602001908152602001600020549050612a5e3390565b6001600160a01b0316612a7083611eab565b516001600160a01b03161480612a96575033612a8b836110ec565b6001600160a01b0316145b612ab25760405162461bcd60e51b8152600401610f8790614078565b80612acf5760405162461bcd60e51b8152600401610f87906145a1565b612ad98185613c23565b93508215612b3357612aea826124d7565b84827ff4c8f45558b285c9b4d64b7e1643043dae934b4cc083c3afcb8d411692d4dd6883604051612b1b919061365e565b60405180910390a36000828152600b60205260408120555b505080612b3f90613bcb565b9050612a1a565b50600c54811115612b695760405162461bcd60e51b8152600401610f87906145da565b6000828152600b602052604090819020805490839055905183907f209ce12c88859afa4298582516e03b1eba9c466c9dff5db16130629f97b5d52c90612bb2908490869061375b565b60405180910390a2505050505050565b8033612bcd82611eab565b516001600160a01b03161480612bf3575033612be8826110ec565b6001600160a01b0316145b612c0f5760405162461bcd60e51b8152600401610f8790613c68565b6000828152601b602052604090205480612cb757601654610100900460ff16612c4a5760405162461bcd60e51b8152600401610f8790614609565b6017546000848152600b60205260409020541015612c7a5760405162461bcd60e51b8152600401610f8790614639565b6000838152601b60205260408082204290555184917f41fa9dacd23836615b00b8de96e10a64a50cd7de16ad167aabf4c023bfacd1da91a2505050565b612cc18142613bb4565b6000848152601c602052604081208054909190612cdf908490613c23565b90915550506000838152601b60205260408082208290555184917f77b32aef15eac84703df273acc09c59be81471f28f8a9eecd503b40cfd7a314091a2505050565b604080516080810182526001600160a01b038316815260a083901c6001600160401b03166020820152600160e01b831615159181019190915260e89190911c606082015290565b611040828260405180602001604052806000815250613298565b6000818152601b602052604090205415612dcf576000818152601b60205260408082208290555182917f77b32aef15eac84703df273acc09c59be81471f28f8a9eecd503b40cfd7a314091a25b6000818152601c602052604090205415611e88576000908152601c6020526040812055565b6000612dff83612125565b905080600080612e1d86600090815260066020526040902080549091565b915091508415612e5d57612e32818433611354565b612e5d57612e408333611e08565b612e5d57604051632ce44b5f60e11b815260040160405180910390fd5b612e6b83600088600161218e565b8015612e7657600082555b6001600160a01b038316600081815260056020526040902080546fffffffffffffffffffffffffffffffff0190554260a01b17600360e01b17600087815260046020526040902055600160e11b8416612efd5760018601600081815260046020526040902054612efb576000548114612efb5760008181526004602052604090208590555b505b60405186906000906001600160a01b038616906000805160206149f0833981519152908390a45050600180548101905550505050565b600082612f4085846132fe565b14949350505050565b606081612f6d5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612f975780612f8181613bcb565b9150612f909050600a83613fd4565b9150612f71565b6000816001600160401b03811115612fb157612fb1613957565b6040519080825280601f01601f191660200182016040528015612fdb576020820181803683370190505b5090505b8415611aef57612ff0600183613bb4565b9150612ffd600a86614649565b613008906030613c23565b60f81b81838151811061301d5761301d613b21565b60200101906001600160f81b031916908160001a90535061303f600a86613fd4565b9450612fdf565b6060600061306a6130658560026001613060886005613c23565b61334b565b612f49565b613080613065866003600261306089600a613c23565b61309661306587600460026130608a600a613c23565b6130ac61306588600560026130608b600a613c23565b6130c261306589600660026130608c600a613c23565b6130d86130658a600760026130608d600a613c23565b6130ee6130658b600860026130608e600a613c23565b6131046130658c600960026130608f600a613c23565b60405160200161311b989796959493929190614700565b60408051808303601f19018152919052949350505050565b606081516000141561315357505060408051602081019091526000815290565b60006040518060600160405280604081526020016149b060409139905060006003845160026131829190613c23565b61318c9190613fd4565b613197906004613f9f565b905060006131a6826020613c23565b6001600160401b038111156131bd576131bd613957565b6040519080825280601f01601f1916602001820160405280156131e7576020820181803683370190505b509050818152600183018586518101602084015b81831015613253576003830192508251603f8160121c168501518253600182019150603f81600c1c168501518253600182019150603f8160061c168501518253600182019150603f81168501518253506001016131fb565b60038951066001811461326d576002811461327e5761328a565b613d3d60f01b60011983015261328a565b603d60f81b6000198301525b509398975050505050505050565b6132a28383613375565b6001600160a01b0383163b15611592576000548281035b6132cc60008683806001019450866125b5565b6132e9576040516368d2bf6b60e11b815260040160405180910390fd5b8181106132b9578160005414611b5557600080fd5b600081815b84518110156133435761332f8286838151811061332257613322613b21565b6020026020010151613455565b91508061333b81613bcb565b915050613303565b509392505050565b60006133578383613bb4565b6133618587613fd4565b61336b9190614649565b6120699084613c23565b600054816133965760405163b562e8dd60e01b815260040160405180910390fd5b6133a3600084838561218e565b6001600160a01b03831660008181526005602090815260408083208054680100000000000000018802019055848352600490915281206001851460e11b4260a01b178317905582840190839083906000805160206149f08339815191528180a4600183015b81811461342e57808360006000805160206149f0833981519152600080a4600101613408565b508161344c57604051622e076360e81b815260040160405180910390fd5b60005550505050565b60008183106134715760008281526020849052604090206117ba565b5060009182526020526040902090565b6001600160e01b031981165b8114611e8857600080fd5b8035610eda81613481565b6000602082840312156134b8576134b8600080fd5b6000611aef8484613498565b8015155b82525050565b60208101610eda82846134c4565b60008083601f8401126134f1576134f1600080fd5b5081356001600160401b0381111561350b5761350b600080fd5b60208301915083602082028301111561352657613526600080fd5b9250929050565b6000806020838503121561354357613543600080fd5b82356001600160401b0381111561355c5761355c600080fd5b613568858286016134dc565b92509250509250929050565b60006001600160a01b038216610eda565b61348d81613574565b8035610eda81613585565b8061348d565b8035610eda81613599565b600080604083850312156135c0576135c0600080fd5b60006135cc858561358e565b92505060206135dd8582860161359f565b9150509250929050565b6000806000606084860312156135ff576135ff600080fd5b600061360b868661359f565b935050602061361c8682870161359f565b925050604061362d8682870161359f565b9150509250925092565b60006020828403121561364c5761364c600080fd5b6000611aef848461359f565b806134c8565b60208101610eda8284613658565b60005b8381101561368757818101518382015260200161366f565b838111156110285750506000910152565b60006136a2825190565b8084526020840193506136b981856020860161366c565b601f01601f19169290920192915050565b602080825281016117ba8184613698565b6134c881613574565b60208101610eda82846136db565b80151561348d565b8035610eda816136f2565b60006020828403121561371a5761371a600080fd5b6000611aef84846136fa565b60008060006060848603121561373e5761373e600080fd5b600061374a868661358e565b935050602061361c8682870161358e565b604081016137698285613658565b6117ba6020830184613658565b606081016137848286613658565b6137916020830185613658565b611aef60408301846134c4565b6000602082840312156137b3576137b3600080fd5b6000611aef848461358e565b6000806000604084860312156137d7576137d7600080fd5b83356001600160401b038111156137f0576137f0600080fd5b6137fc868287016134dc565b9350935050602061362d8682870161358e565b600061381b8383613658565b505060200190565b600061382d825190565b80845260209384019383018060005b83811015613861578151613850888261380f565b97506020830192505060010161383c565b509495945050505050565b602080825281016117ba8184613823565b634e487b7160e01b600052602160045260246000fd5b60028110611e8857611e8861387d565b806138ad81613893565b919050565b6000610eda826138a3565b6134c8816138b2565b60208101610eda82846138bd565b600080604083850312156138ea576138ea600080fd5b60006138f6858561358e565b92505060206135dd858286016136fa565b60008060006040848603121561391f5761391f600080fd5b83356001600160401b0381111561393857613938600080fd5b613944868287016134dc565b9350935050602061362d8682870161359f565b634e487b7160e01b600052604160045260246000fd5b601f19601f83011681018181106001600160401b038211171561399257613992613957565b6040525050565b60006139a460405190565b90506138ad828261396d565b60006001600160401b038211156139c9576139c9613957565b601f19601f83011660200192915050565b82818337506000910152565b60006139f96139f4846139b0565b613999565b905082815260208101848484011115613a1457613a14600080fd5b6133438482856139da565b600082601f830112613a3357613a33600080fd5b8135611aef8482602086016139e6565b60008060008060808587031215613a5c57613a5c600080fd5b6000613a68878761358e565b9450506020613a798782880161358e565b9350506040613a8a8782880161359f565b92505060608501356001600160401b03811115613aa957613aa9600080fd5b613ab587828801613a1f565b91505092959194509250565b6000610eda82613574565b6000610eda82613ac1565b6134c881613acc565b60208101610eda8284613ad7565b60008060408385031215613b0457613b04600080fd5b6000613b10858561358e565b92505060206135dd8582860161358e565b634e487b7160e01b600052603260045260246000fd5b600881526000602082016726bab9ba1037bbb760c11b815291505b5060200190565b60208082528101610eda81613b37565b600e81526000602082016d4174206c65617374204c766c203160901b81529150613b52565b60208082528101610eda81613b69565b634e487b7160e01b600052601160045260246000fd5b600082821015613bc657613bc6613b9e565b500390565b6000600019821415613bdf57613bdf613b9e565b5060010190565b634e487b7160e01b600052602260045260246000fd5b600281046001821680613c1057607f821691505b60208210811415611c3457611c34613be6565b60008219821115613c3657613c36613b9e565b500190565b60168152600060208201752737ba1030b8383937bb32b2103737b91037bbb732b960511b81529150613b52565b60208082528101610eda81613c3b565b6000610eda8260601b90565b6000610eda82613c78565b6134c8613c9b82613574565b613c84565b6000613cac8284613c8f565b50601401919050565b600f81526000602082016e4d696e74206174206c65617374203160881b81529150613b52565b60208082528101610eda81613cb5565b6007815260006020820166125b9d985b1a5960ca1b81529150613b52565b60208082528101610eda81613ceb565b6012815260006020820171141d589b1a58c81b5a5b9d0818db1bdcd95960721b81529150613b52565b60208082528101610eda81613d19565b6014815260006020820173125b98dbdc9c9958dd08195d1a195c881cd95b9d60621b81529150613b52565b60208082528101610eda81613d52565b601181526000602082017045786365656473206d6178206d696e747360781b81529150613b52565b60208082528101610eda81613d8d565b601781526000602082017f45786365656473207472616e73616374696f6e206d617800000000000000000081529150613b52565b60208082528101610eda81613dc5565b600d81526000602082016c13595c9adb194818db1bdcd959609a1b81529150613b52565b60208082528101610eda81613e09565b601081526000602082016f43616e20636c61696d206f6e6c79203160801b81529150613b52565b60208082528101610eda81613e3d565b600d81526000602082016c24b73b30b634b210383937b7b360991b81529150613b52565b60208082528101610eda81613e74565b600d81526000602082016c4e6f74206d6572676561626c6560981b81529150613b52565b60208082528101610eda81613ea8565b60208082528101610eda81602681527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160208201526564647265737360d01b604082015260600190565b6000613f328286613658565b602082019150613f428285613658565b602082019150613f528284613c8f565b506014019392505050565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081526000613b52565b60208082528101610eda81613f5d565b6000816000190483118215151615613fb957613fb9613b9e565b500290565b634e487b7160e01b600052601260045260246000fd5b600082613fe357613fe3613fbe565b500490565b6016815260006020820175436861726163746572206e6f7420737465616b696e6760501b81529150613b52565b60208082528101610eda81613fe8565b600f81526000602082016e1098589a595cc8191a5cd8589b1959608a1b81529150613b52565b60208082528101610eda81614025565b600681526000602082016511195b9a595960d21b81529150613b52565b60208082528101610eda8161405b565b60098152600060208201684e6f7420726561647960b81b81529150613b52565b60208082528101610eda81614088565b608081016140c682876136db565b6140d360208301866136db565b6140e06040830185613658565b81810360608301526140f28184613698565b9695505050505050565b8051610eda81613481565b60006020828403121561411c5761411c600080fd5b6000611aef84846140fc565b60006141366139f4846139b0565b90508281526020810184848401111561415157614151600080fd5b61334384828561366c565b600082601f83011261417057614170600080fd5b8151611aef848260208601614128565b60006020828403121561419557614195600080fd5b81516001600160401b038111156141ae576141ae600080fd5b611aef8482850161415c565b6803d913730b6b2911d160bd1b815260005b5060090190565b68226574686b756e202360b81b815260006141cc565b60006141f3825190565b61420181856020860161366c565b9290920192915050565b61088b60f21b815260005b5060020190565b7f226465736372697074696f6e223a20226574686b756e20697320616e2031303081527f25206f6e2d636861696e2064796e616d6963204e46542070726f6a656374207760208201527f69746820756e697175652066756e6374696f6e616c69747920616e642066756e60408201527f206d65726765206d656368616e6963732c206d61646520746f2063656c65627260608201527f61746520546865204d65726765212047616d6261747465206574686b756e21226080820152600b60fa1b60a082015260a10190565b611f4b60f21b81526000614216565b7f22696d616765223a2022646174613a696d6167652f7376672b786d6c3b626173815263194d8d0b60e21b602082015260240190565b61227d60f01b81526000614216565b6000614347826141ba565b9150614352826141d3565b915061435e828a6141e9565b91506143698261420b565b91506143748261421d565b6d2261747472696275746573223a5b60901b8152600e01915061439782896141e9565b91506143a382886141e9565b7f7b2274726169745f74797065223a2247656e65736973222c202276616c7565228152601d60f91b602082015260210191506143df82876141e9565b91506143ea826142e8565b7f7b2274726169745f74797065223a22537465616b696e67222c202276616c7565815261111d60f11b6020820152602201915061442782866141e9565b9150614432826142e8565b7f7b2274726169745f74797065223a224c6576656c222c202276616c7565223a008152601f01915061446482856141e9565b621f574b60ea1b8152600301915061447b826142f7565b915061448782846141e9565b91506144928261432d565b9998505050505050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c0000008152601d0160006117ba82846141e9565b60006144dc826141ba565b91506144e7826141d3565b91506144f382856141e9565b91506144fe8261420b565b91506145098261421d565b7f2261747472696275746573223a5b7b2274726169745f74797065223a2257616981527f74696e6720666f7220546865204d65726765222c202276616c7565223a2254726020820152651d59489f574b60d21b6040820152604601915061456f826142f7565b915061457b82846141e9565b9150611aef8261432d565b60048152600060208201631119585960e21b81529150613b52565b60208082528101610eda81614586565b6012815260006020820171115e18d959591959081b585e081b195d995b60721b81529150613b52565b60208082528101610eda816145b1565b6008815260006020820167111a5cd8589b195960c21b81529150613b52565b60208082528101610eda816145ea565b6009815260006020820168139bdd081b195d995b60ba1b81529150613b52565b60208082528101610eda81614619565b60008261465857614658613fbe565b500690565b7f7b2274726169745f74797065223a2246756e676962696c697479222c2022646981527f73706c61795f74797065223a20226e756d626572222c202276616c7565223a00602082015260005b50603f0190565b7f7b2274726169745f74797065223a224d6f6973747572697a6564222c2022646981527f73706c61795f74797065223a20226e756d626572222c202276616c7565223a00602082015260006146a9565b7f7b2274726169745f74797065223a224b696d6f63686969222c2022646973706c81527f61795f74797065223a20226e756d626572222c202276616c7565223a000000006020820152603c016000614758828b6141e9565b9150614763826142e8565b7f7b2274726169745f74797065223a22555755222c2022646973706c61795f747981527f7065223a20226e756d626572222c202276616c7565223a000000000000000000602082015260370191506147bb828a6141e9565b91506147c6826142e8565b7f7b2274726169745f74797065223a22556c747261736f756e646e657373222c2081527f22646973706c61795f74797065223a20226e756d626572222c202276616c7565602082015261111d60f11b6040820152604201915061482982896141e9565b9150614834826142e8565b915061483f8261465d565b915061484b82886141e9565b9150614856826142e8565b7f7b2274726169745f74797065223a225375676f696e657373222c20226469737081527f6c61795f74797065223a20226e756d626572222c202276616c7565223a0000006020820152603d0191506148ae82876141e9565b91506148b9826142e8565b7f7b2274726169745f74797065223a224b616b6b6f6969222c2022646973706c6181527f795f74797065223a20226e756d626572222c202276616c7565223a00000000006020820152603b01915061491182866141e9565b915061491c826142e8565b7f7b2274726169745f74797065223a224b6177616969222c2022646973706c617981527f5f74797065223a20226e756d626572222c202276616c7565223a0000000000006020820152603a01915061497482856141e9565b915061497f826142e8565b915061498a826146b0565b915061499682846141e9565b91506149a1826142e8565b9a995050505050505050505056fe4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212201c12125d563d904029dce39420fe4b5fb3eb1bbf6f20ae2110eff2025b8925d364736f6c63430008090033
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.