ETH Price: $1,911.23 (+5.37%)
 

Overview

Max Total Supply

5,000,000,000 TOKEN

Holders

31,013 ( -0.029%)

Market

Price

$0.01 @ 0.000007 ETH (+6.59%)

Onchain Market Cap

$67,881,350.00

Circulating Supply Market Cap

$27,291,116.00

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
enlightensmiles.eth
Balance
1,285.142275426 TOKEN

Value
$17.45 ( ~0.00913025410563427 Eth) [0.0000%]
0x64a82d3ca147a0dbb5214d97bbe04b37754044ba
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

TokenFi aims to give users all they need to create successful crypto tokens or tokenize an asset in a simple all-in-one platform without writing a single line of code. TokenFi is targeting the tokenization industry which is projected to be worth $16 trillion by 2030!

Market

Volume (24H):$6,012,388.00
Market Capitalization:$27,291,116.00
Circulating Supply:2,026,871,430.00 TOKEN
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x68C470db...B44996Ab7
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
T1

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
Yes with 888 runs

Other Settings:
default evmVersion
File 1 of 8 : T1.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity 0.8.11;
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/utils/Address.sol";
import "./governance/IGovernanceToken.sol";
import "./tax/ITaxHandler.sol";
import "./treasury/ITreasuryHandler.sol";
/**
* @title Tokenfi token contract
* @dev The Tokenfi token has modular systems for tax and treasury handler as well as governance capabilities.
*/
contract T1 is IERC20, IGovernanceToken, Ownable {
using Address for address payable;
/// @dev Registry of user token balances.
mapping(address => uint256) private _balances;
/// @dev Registry of addresses users have given allowances to.
mapping(address => mapping(address => uint256)) private _allowances;
/// @notice Registry of user delegates for governance.
mapping(address => address) public delegates;
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 2 of 8 : Ownable.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.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.
*/
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 3 of 8 : IERC20.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
/**
* @dev Interface of the ERC20 standard as defined in the EIP.
*/
interface IERC20 {
/**
* @dev Returns the amount of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the amount of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves `amount` tokens from the caller's account to `recipient`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transfer(address recipient, uint256 amount) external returns (bool);
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 4 of 8 : Address.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
/**
* @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
* ====
*/
function isContract(address account) internal view returns (bool) {
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

File 6 of 8 : IGovernanceToken.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity 0.8.11;
/**
* @title Governance token interface.
*/
interface IGovernanceToken {
/// @notice A checkpoint for marking number of votes as of a given block.
struct Checkpoint {
// The 32-bit unsigned integer is valid until these estimated dates for these given chains:
// - BSC: Sat Dec 23 2428 18:23:11 UTC
// - ETH: Tue Apr 18 3826 09:27:12 UTC
// This assumes that block mining rates don't speed up.
uint32 blockNumber;
// This type is set to `uint224` for optimizations purposes (i.e., specifically to fit in a 32-byte block). It
// assumes that the number of votes for the implementing governance token never exceeds the maximum value for a
// 224-bit number.
uint224 votes;
}
/**
* @notice Determine the number of votes for an account as of a block number.
* @dev Block number must be a finalized block or else this function will revert to prevent misinformation.
* @param account The address of the account to check.
* @param blockNumber The block number to get the vote balance at.
* @return The number of votes the account had as of the given block.
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 7 of 8 : ITaxHandler.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// SPDX-License-Identifier: MIT
pragma solidity 0.8.11;
/**
* @title Tax handler interface
* @dev Any class that implements this interface can be used for protocol-specific tax calculations.
*/
interface ITaxHandler {
/**
* @notice Get number of tokens to pay as tax.
* @param benefactor Address of the benefactor.
* @param beneficiary Address of the beneficiary.
* @param amount Number of tokens in the transfer.
* @return Number of tokens to pay as tax.
*/
function getTax(
address benefactor,
address beneficiary,
uint256 amount
) external view returns (uint256);
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

File 8 of 8 : ITreasuryHandler.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// SPDX-License-Identifier: MIT
pragma solidity 0.8.11;
/**
* @title Treasury handler interface
* @dev Any class that implements this interface can be used for protocol-specific operations pertaining to the treasury.
*/
interface ITreasuryHandler {
/**
* @notice Perform operations before a transfer is executed.
* @param benefactor Address of the benefactor.
* @param beneficiary Address of the beneficiary.
* @param amount Number of tokens in the transfer.
*/
function beforeTransferHandler(
address benefactor,
address beneficiary,
uint256 amount
) external;
/**
* @notice Perform operations after a transfer is executed.
* @param benefactor Address of the benefactor.
* @param beneficiary Address of the beneficiary.
* @param amount Number of tokens in the transfer.
*/
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

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

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"taxHandlerAddress","type":"address"},{"internalType":"address","name":"treasuryHandlerAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":false,"internalType":"address","name":"currentDelegate","type":"address"},{"indexed":false,"internalType":"address","name":"newDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegatee","type":"address"},{"indexed":false,"internalType":"uint224","name":"oldVotes","type":"uint224"},{"indexed":false,"internalType":"uint224","name":"newVotes","type":"uint224"}],"name":"DelegateVotesChanged","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":false,"internalType":"address","name":"oldAddress","type":"address"},{"indexed":false,"internalType":"address","name":"newAddress","type":"address"}],"name":"TaxHandlerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAddress","type":"address"},{"indexed":false,"internalType":"address","name":"newAddress","type":"address"}],"name":"TreasuryHandlerChanged","type":"event"},{"inputs":[],"name":"DELEGATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint32","name":"","type":"uint32"}],"name":"checkpoints","outputs":[{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"uint224","name":"votes","type":"uint224"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint32","name":"blockNumber","type":"uint32"}],"name":"getVotesAtBlock","outputs":[{"internalType":"uint224","name":"","type":"uint224"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"numCheckpoints","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"taxHandlerAddress","type":"address"}],"name":"setTaxHandler","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"treasuryHandlerAddress","type":"address"}],"name":"setTreasuryHandler","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxHandler","outputs":[{"internalType":"contract ITaxHandler","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryHandler","outputs":[{"internalType":"contract ITreasuryHandler","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060405162002580380380620025808339810160408190526200003491620002fb565b6200003f336200011b565b8351620000549060099060208701906200016b565b5082516200006a90600a9060208601906200016b565b50600780546001600160a01b038085166001600160a01b0319928316179092556008805492841692909116919091179055620000ab674563918244f4000090565b60016000336001600160a01b03168152602081019190915260400160002055336001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef674563918244f4000060405190815260200160405180910390a350505050620003c7565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b82805462000179906200038a565b90600052602060002090601f0160209004810192826200019d5760008555620001e8565b82601f10620001b857805160ff1916838001178555620001e8565b82800160010185558215620001e8579182015b82811115620001e8578251825591602001919060010190620001cb565b50620001f6929150620001fa565b5090565b5b80821115620001f65760008155600101620001fb565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200023957600080fd5b81516001600160401b038082111562000256576200025662000211565b604051601f8301601f19908116603f0116810190828211818310171562000281576200028162000211565b816040528381526020925086838588010111156200029e57600080fd5b600091505b83821015620002c25785820183015181830184015290820190620002a3565b83821115620002d45760008385830101525b9695505050505050565b80516001600160a01b0381168114620002f657600080fd5b919050565b600080600080608085870312156200031257600080fd5b84516001600160401b03808211156200032a57600080fd5b620003388883890162000227565b955060208701519150808211156200034f57600080fd5b506200035e8782880162000227565b9350506200036f60408601620002de565b91506200037f60608601620002de565b905092959194509250565b600181811c908216806200039f57607f821691505b60208210811415620003c157634e487b7160e01b600052602260045260246000fd5b50919050565b6121a980620003d76000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c806370a08231116100f9578063a9373b7b11610097578063e7a324dc11610071578063e7a324dc14610462578063f1127ed814610489578063f2fde38b146104f1578063f3fef3a31461050457600080fd5b8063a9373b7b14610403578063c3cda52014610416578063dd62ed3e1461042957600080fd5b80638da5cb5b116100d35780638da5cb5b146103c457806395d89b41146103d5578063a457c2d7146103dd578063a9059cbb146103f057600080fd5b806370a0823114610373578063715018a61461039c5780637ecebe00146103a457600080fd5b8063271a452911610166578063488d4a5111610140578063488d4a51146102e7578063587cde1e146102fc5780635c19a95c146103255780636fcfff451461033857600080fd5b8063271a45291461029a578063313ce567146102c557806339509351146102d457600080fd5b806317889633116101a2578063178896331461023557806318160ddd1461024857806320606b701461026057806323b872dd1461028757600080fd5b806306fdde03146101c9578063095ea7b3146101e757806312280ba81461020a575b600080fd5b6101d1610517565b6040516101de9190611e3a565b60405180910390f35b6101fa6101f5366004611eab565b6105a9565b60405190151581526020016101de565b60075461021d906001600160a01b031681565b6040516001600160a01b0390911681526020016101de565b60085461021d906001600160a01b031681565b674563918244f400005b6040519081526020016101de565b6102527f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b6101fa610295366004611ed5565b6105c0565b6102ad6102a8366004611f11565b6106aa565b6040516001600160e01b0390911681526020016101de565b604051600981526020016101de565b6101fa6102e2366004611eab565b610984565b6102fa6102f5366004611f51565b6109c0565b005b61021d61030a366004611f51565b6003602052600090815260409020546001600160a01b031681565b6102fa610333366004611f51565b610a88565b61035e610346366004611f51565b60056020526000908152604090205463ffffffff1681565b60405163ffffffff90911681526020016101de565b610252610381366004611f51565b6001600160a01b031660009081526001602052604090205490565b6102fa610a95565b6102526103b2366004611f51565b60046020526000908152604090205481565b6000546001600160a01b031661021d565b6101d1610afb565b6101fa6103eb366004611eab565b610b0a565b6101fa6103fe366004611eab565b610be1565b6102fa610411366004611f51565b610bee565b6102fa610424366004611f73565b610caf565b610252610437366004611fd3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6102527fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf81565b6104cd610497366004611f11565b600660209081526000928352604080842090915290825290205463ffffffff81169064010000000090046001600160e01b031682565b6040805163ffffffff90931683526001600160e01b039091166020830152016101de565b6102fa6104ff366004611f51565b611009565b6102fa610512366004611eab565b6110e8565b60606009805461052690612006565b80601f016020809104026020016040519081016040528092919081815260200182805461055290612006565b801561059f5780601f106105745761010080835404028352916020019161059f565b820191906000526020600020905b81548152906001019060200180831161058257829003601f168201915b5050505050905090565b60006105b6338484611205565b5060015b92915050565b60006105cd848484611360565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156106925760405162461bcd60e51b815260206004820152604960248201527f464c4f4b493a7472616e7366657246726f6d3a414c4c4f57414e43455f45584360448201527f45454445443a205472616e7366657220616d6f756e742065786365656473206160648201527f6c6c6f77616e63652e0000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b61069f8533858403611205565b506001949350505050565b6000438263ffffffff161061074d5760405162461bcd60e51b815260206004820152604e60248201527f464c4f4b493a676574566f7465734174426c6f636b3a4655545552455f424c4f60448201527f434b3a2043616e6e6f742067657420766f746573206174206120626c6f636b2060648201527f696e20746865206675747572652e000000000000000000000000000000000000608482015260a401610689565b6001600160a01b03831660009081526005602052604090205463ffffffff168061077b5760009150506105ba565b6001600160a01b038416600090815260066020526040812063ffffffff8516916107a6600185612057565b63ffffffff9081168252602082019290925260400160002054161161081a576001600160a01b0384166000908152600660205260408120906107e9600184612057565b63ffffffff16815260208101919091526040016000205464010000000090046001600160e01b031691506105ba9050565b6001600160a01b038416600090815260066020908152604080832083805290915290205463ffffffff808516911611156108585760009150506105ba565b600080610866600184612057565b90505b8163ffffffff168163ffffffff16111561093e576000600261088b8484612057565b610895919061207c565b61089f9083612057565b6001600160a01b038816600090815260066020908152604080832063ffffffff8581168552908352928190208151808301909252548084168083526401000000009091046001600160e01b031692820192909252929350908816141561090f576020015194506105ba9350505050565b805163ffffffff8089169116101561092957819350610937565b610934600183612057565b92505b5050610869565b506001600160a01b038516600090815260066020908152604080832063ffffffff909416835292905220546001600160e01b036401000000009091041691505092915050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105b69185906109bb9086906120ad565b611205565b6000546001600160a01b03163314610a1a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b600780546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff1983168117909355604080519190921680825260208201939093527ed910c9481701ba32afe0c247572aaece27072f230c8ec769bf245fc0b38de691015b60405180910390a15050565b610a9233826118fb565b50565b6000546001600160a01b03163314610aef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b610af96000611995565b565b6060600a805461052690612006565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610bca5760405162461bcd60e51b815260206004820152605760248201527f464c4f4b493a6465637265617365416c6c6f77616e63653a414c4c4f57414e4360448201527f455f554e444552464c4f573a205375627472616374696f6e20726573756c747360648201527f20696e207375622d7a65726f20616c6c6f77616e63652e000000000000000000608482015260a401610689565b610bd73385858403611205565b5060019392505050565b60006105b6338484611360565b6000546001600160a01b03163314610c485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b600880546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff1983168117909355604080519190921680825260208201939093527f1bf87992a35ee29395ab494f9adb9a500a7fa60c3082cba0ef02701bb35900d99101610a7c565b60007f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866610cda610517565b8051602091820120604080518084019490945283810191909152466060840152306080808501919091528151808503909101815260a0840182528051908301207fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60c08501526001600160a01b038b1660e085015261010084018a90526101208085018a90528251808603909101815261014085019092528151919092012061190160f01b61016084015261016283018290526101828301819052909250906000906101a20160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa158015610e0b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610eba5760405162461bcd60e51b815260206004820152604660248201527f464c4f4b493a64656c656761746542795369673a494e56414c49445f5349474e60448201527f41545552453a205265636569766564207369676e61747572652077617320696e60648201527f76616c69642e0000000000000000000000000000000000000000000000000000608482015260a401610689565b87421115610f565760405162461bcd60e51b815260206004820152604660248201527f464c4f4b493a64656c656761746542795369673a455850495245445f5349474e60448201527f41545552453a205265636569766564207369676e61747572652068617320657860648201527f70697265642e0000000000000000000000000000000000000000000000000000608482015260a401610689565b6001600160a01b0381166000908152600460205260408120805491610f7a836120c5565b919050558914610ff25760405162461bcd60e51b815260206004820152603e60248201527f464c4f4b493a64656c656761746542795369673a494e56414c49445f4e4f4e4360448201527f453a205265636569766564206e6f6e63652077617320696e76616c69642e00006064820152608401610689565b610ffc818b6118fb565b505050505b505050505050565b6000546001600160a01b031633146110635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b6001600160a01b0381166110df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610689565b610a9281611995565b6000546001600160a01b031633146111425760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b6001600160a01b03821661116a57600854611166906001600160a01b0316826119f2565b5050565b6008546040517f23b872dd0000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b03918216602482015260448101839052908316906323b872dd906064016020604051808303816000875af11580156111dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120091906120e0565b505050565b6001600160a01b0383166112815760405162461bcd60e51b815260206004820152603f60248201527f464c4f4b493a5f617070726f76653a4f574e45525f5a45524f3a2043616e6e6f60448201527f7420617070726f766520666f7220746865207a65726f20616464726573732e006064820152608401610689565b6001600160a01b0382166112ff576040805162461bcd60e51b81526020600482015260248101919091527f464c4f4b493a5f617070726f76653a5350454e4445525f5a45524f3a2043616e60448201527f6e6f7420617070726f766520746f20746865207a65726f20616464726573732e6064820152608401610689565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166113e65760405162461bcd60e51b815260206004820152604160248201527f464c4f4b493a5f7472616e736665723a46524f4d5f5a45524f3a2043616e6e6f60448201527f74207472616e736665722066726f6d20746865207a65726f20616464726573736064820152601760f91b608482015260a401610689565b6001600160a01b0382166114625760405162461bcd60e51b815260206004820152603d60248201527f464c4f4b493a5f7472616e736665723a544f5f5a45524f3a2043616e6e6f742060448201527f7472616e7366657220746f20746865207a65726f20616464726573732e0000006064820152608401610689565b600081116114fe5760405162461bcd60e51b815260206004820152604760248201527f464c4f4b493a5f7472616e736665723a5a45524f5f414d4f554e543a2054726160448201527f6e7366657220616d6f756e74206d75737420626520677265617465722074686160648201527f6e207a65726f2e00000000000000000000000000000000000000000000000000608482015260a401610689565b6001600160a01b0383166000908152600160205260409020548111156115b25760405162461bcd60e51b815260206004820152604660248201527f464c4f4b493a5f7472616e736665723a494e53554646494349454e545f42414c60448201527f414e43453a205472616e7366657220616d6f756e74206578636565647320626160648201527f6c616e63652e0000000000000000000000000000000000000000000000000000608482015260a401610689565b6008546040517fc6512cc10000000000000000000000000000000000000000000000000000000081526001600160a01b0385811660048301528481166024830152604482018490529091169063c6512cc190606401600060405180830381600087803b15801561162157600080fd5b505af1158015611635573d6000803e3d6000fd5b50506007546040517fd7ad21ac0000000000000000000000000000000000000000000000000000000081526001600160a01b03878116600483015286811660248301526044820186905260009450909116915063d7ad21ac90606401602060405180830381865afa1580156116ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d29190612102565b905060006116e0828461211b565b6001600160a01b03861660009081526001602052604081208054929350859290919061170d90849061211b565b90915550506001600160a01b0384166000908152600160205260408120805483929061173a9084906120ad565b90915550506001600160a01b0380861660009081526003602052604080822054878416835291205461177192918216911683611b0b565b8115611820576008546001600160a01b0316600090815260016020526040812080548492906117a19084906120ad565b90915550506001600160a01b0380861660009081526003602052604080822054600854841683529120546117da92918216911684611b0b565b6008546040518381526001600160a01b03918216918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6008546040517fe613b1cd0000000000000000000000000000000000000000000000000000000081526001600160a01b0387811660048301528681166024830152604482018690529091169063e613b1cd90606401600060405180830381600087803b15801561188f57600080fd5b505af11580156118a3573d6000803e3d6000fd5b50505050836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118ec91815260200190565b60405180910390a35050505050565b6001600160a01b038281166000818152600360208181526040808420805460018452948290205493835287871673ffffffffffffffffffffffffffffffffffffffff198616811790915581519490961680855291840195909552939092917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f910160405180910390a261198f828483611b0b565b50505050565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80471015611a425760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610689565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a8f576040519150601f19603f3d011682016040523d82523d6000602084013e611a94565b606091505b50509050806112005760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610689565b816001600160a01b0316836001600160a01b03161415611b2a57505050565b6001600160e01b038116611b3d57505050565b6001600160a01b03831615611be5576001600160a01b03831660009081526005602052604081205463ffffffff169081611b78576000611bc5565b6001600160a01b038516600090815260066020526040812090611b9c600185612057565b63ffffffff16815260208101919091526040016000205464010000000090046001600160e01b03165b90506000611bd38483612132565b9050611be186848484611c85565b5050505b6001600160a01b03821615611200576001600160a01b03821660009081526005602052604081205463ffffffff169081611c20576000611c6d565b6001600160a01b038416600090815260066020526040812090611c44600185612057565b63ffffffff16815260208101919091526040016000205464010000000090046001600160e01b03165b90506000611c7b8483612152565b9050611001858484845b4363ffffffff841615801590611cdd57506001600160a01b038516600090815260066020526040812063ffffffff831691611cc1600188612057565b63ffffffff908116825260208201929092526040016000205416145b15611d4d576001600160a01b03851660009081526006602052604081208391611d07600188612057565b63ffffffff1663ffffffff16815260200190815260200160002060000160046101000a8154816001600160e01b0302191690836001600160e01b03160217905550611de5565b60408051808201825263ffffffff80841682526001600160e01b0380861660208085019182526001600160a01b038b166000908152600682528681208b86168252909152949094209251935116640100000000029216919091179055611db484600161217d565b6001600160a01b0386166000908152600560205260409020805463ffffffff191663ffffffff929092169190911790555b604080516001600160e01b038086168252841660208201526001600160a01b038716917fda5a64c2947c0b7bf4d6e7bf736c6f84d9d1c5f991770f88bbeb3fe19c85a134910160405180910390a25050505050565b600060208083528351808285015260005b81811015611e6757858101830151858201604001528201611e4b565b81811115611e79576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114611ea657600080fd5b919050565b60008060408385031215611ebe57600080fd5b611ec783611e8f565b946020939093013593505050565b600080600060608486031215611eea57600080fd5b611ef384611e8f565b9250611f0160208501611e8f565b9150604084013590509250925092565b60008060408385031215611f2457600080fd5b611f2d83611e8f565b9150602083013563ffffffff81168114611f4657600080fd5b809150509250929050565b600060208284031215611f6357600080fd5b611f6c82611e8f565b9392505050565b60008060008060008060c08789031215611f8c57600080fd5b611f9587611e8f565b95506020870135945060408701359350606087013560ff81168114611fb957600080fd5b9598949750929560808101359460a0909101359350915050565b60008060408385031215611fe657600080fd5b611fef83611e8f565b9150611ffd60208401611e8f565b90509250929050565b600181811c9082168061201a57607f821691505b6020821081141561203b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600063ffffffff8381169083168181101561207457612074612041565b039392505050565b600063ffffffff808416806120a157634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b600082198211156120c0576120c0612041565b500190565b60006000198214156120d9576120d9612041565b5060010190565b6000602082840312156120f257600080fd5b81518015158114611f6c57600080fd5b60006020828403121561211457600080fd5b5051919050565b60008282101561212d5761212d612041565b500390565b60006001600160e01b038381169083168181101561207457612074612041565b60006001600160e01b0380831681851680830382111561217457612174612041565b01949350505050565b600063ffffffff8083168185168083038211156121745761217461204156fea164736f6c634300080b000a000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000155e6ff9a7039a7d15f108647ea5ac7c7aa593ac00000000000000000000000007df8296e4d8d161bf76b00fa84367cc43e946810000000000000000000000000000000000000000000000000000000000000002543100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000025431000000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101c45760003560e01c806370a08231116100f9578063a9373b7b11610097578063e7a324dc11610071578063e7a324dc14610462578063f1127ed814610489578063f2fde38b146104f1578063f3fef3a31461050457600080fd5b8063a9373b7b14610403578063c3cda52014610416578063dd62ed3e1461042957600080fd5b80638da5cb5b116100d35780638da5cb5b146103c457806395d89b41146103d5578063a457c2d7146103dd578063a9059cbb146103f057600080fd5b806370a0823114610373578063715018a61461039c5780637ecebe00146103a457600080fd5b8063271a452911610166578063488d4a5111610140578063488d4a51146102e7578063587cde1e146102fc5780635c19a95c146103255780636fcfff451461033857600080fd5b8063271a45291461029a578063313ce567146102c557806339509351146102d457600080fd5b806317889633116101a2578063178896331461023557806318160ddd1461024857806320606b701461026057806323b872dd1461028757600080fd5b806306fdde03146101c9578063095ea7b3146101e757806312280ba81461020a575b600080fd5b6101d1610517565b6040516101de9190611e3a565b60405180910390f35b6101fa6101f5366004611eab565b6105a9565b60405190151581526020016101de565b60075461021d906001600160a01b031681565b6040516001600160a01b0390911681526020016101de565b60085461021d906001600160a01b031681565b674563918244f400005b6040519081526020016101de565b6102527f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b6101fa610295366004611ed5565b6105c0565b6102ad6102a8366004611f11565b6106aa565b6040516001600160e01b0390911681526020016101de565b604051600981526020016101de565b6101fa6102e2366004611eab565b610984565b6102fa6102f5366004611f51565b6109c0565b005b61021d61030a366004611f51565b6003602052600090815260409020546001600160a01b031681565b6102fa610333366004611f51565b610a88565b61035e610346366004611f51565b60056020526000908152604090205463ffffffff1681565b60405163ffffffff90911681526020016101de565b610252610381366004611f51565b6001600160a01b031660009081526001602052604090205490565b6102fa610a95565b6102526103b2366004611f51565b60046020526000908152604090205481565b6000546001600160a01b031661021d565b6101d1610afb565b6101fa6103eb366004611eab565b610b0a565b6101fa6103fe366004611eab565b610be1565b6102fa610411366004611f51565b610bee565b6102fa610424366004611f73565b610caf565b610252610437366004611fd3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6102527fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf81565b6104cd610497366004611f11565b600660209081526000928352604080842090915290825290205463ffffffff81169064010000000090046001600160e01b031682565b6040805163ffffffff90931683526001600160e01b039091166020830152016101de565b6102fa6104ff366004611f51565b611009565b6102fa610512366004611eab565b6110e8565b60606009805461052690612006565b80601f016020809104026020016040519081016040528092919081815260200182805461055290612006565b801561059f5780601f106105745761010080835404028352916020019161059f565b820191906000526020600020905b81548152906001019060200180831161058257829003601f168201915b5050505050905090565b60006105b6338484611205565b5060015b92915050565b60006105cd848484611360565b6001600160a01b0384166000908152600260209081526040808320338452909152902054828110156106925760405162461bcd60e51b815260206004820152604960248201527f464c4f4b493a7472616e7366657246726f6d3a414c4c4f57414e43455f45584360448201527f45454445443a205472616e7366657220616d6f756e742065786365656473206160648201527f6c6c6f77616e63652e0000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b61069f8533858403611205565b506001949350505050565b6000438263ffffffff161061074d5760405162461bcd60e51b815260206004820152604e60248201527f464c4f4b493a676574566f7465734174426c6f636b3a4655545552455f424c4f60448201527f434b3a2043616e6e6f742067657420766f746573206174206120626c6f636b2060648201527f696e20746865206675747572652e000000000000000000000000000000000000608482015260a401610689565b6001600160a01b03831660009081526005602052604090205463ffffffff168061077b5760009150506105ba565b6001600160a01b038416600090815260066020526040812063ffffffff8516916107a6600185612057565b63ffffffff9081168252602082019290925260400160002054161161081a576001600160a01b0384166000908152600660205260408120906107e9600184612057565b63ffffffff16815260208101919091526040016000205464010000000090046001600160e01b031691506105ba9050565b6001600160a01b038416600090815260066020908152604080832083805290915290205463ffffffff808516911611156108585760009150506105ba565b600080610866600184612057565b90505b8163ffffffff168163ffffffff16111561093e576000600261088b8484612057565b610895919061207c565b61089f9083612057565b6001600160a01b038816600090815260066020908152604080832063ffffffff8581168552908352928190208151808301909252548084168083526401000000009091046001600160e01b031692820192909252929350908816141561090f576020015194506105ba9350505050565b805163ffffffff8089169116101561092957819350610937565b610934600183612057565b92505b5050610869565b506001600160a01b038516600090815260066020908152604080832063ffffffff909416835292905220546001600160e01b036401000000009091041691505092915050565b3360008181526002602090815260408083206001600160a01b038716845290915281205490916105b69185906109bb9086906120ad565b611205565b6000546001600160a01b03163314610a1a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b600780546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff1983168117909355604080519190921680825260208201939093527ed910c9481701ba32afe0c247572aaece27072f230c8ec769bf245fc0b38de691015b60405180910390a15050565b610a9233826118fb565b50565b6000546001600160a01b03163314610aef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b610af96000611995565b565b6060600a805461052690612006565b3360009081526002602090815260408083206001600160a01b038616845290915281205482811015610bca5760405162461bcd60e51b815260206004820152605760248201527f464c4f4b493a6465637265617365416c6c6f77616e63653a414c4c4f57414e4360448201527f455f554e444552464c4f573a205375627472616374696f6e20726573756c747360648201527f20696e207375622d7a65726f20616c6c6f77616e63652e000000000000000000608482015260a401610689565b610bd73385858403611205565b5060019392505050565b60006105b6338484611360565b6000546001600160a01b03163314610c485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b600880546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff1983168117909355604080519190921680825260208201939093527f1bf87992a35ee29395ab494f9adb9a500a7fa60c3082cba0ef02701bb35900d99101610a7c565b60007f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866610cda610517565b8051602091820120604080518084019490945283810191909152466060840152306080808501919091528151808503909101815260a0840182528051908301207fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60c08501526001600160a01b038b1660e085015261010084018a90526101208085018a90528251808603909101815261014085019092528151919092012061190160f01b61016084015261016283018290526101828301819052909250906000906101a20160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa158015610e0b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116610eba5760405162461bcd60e51b815260206004820152604660248201527f464c4f4b493a64656c656761746542795369673a494e56414c49445f5349474e60448201527f41545552453a205265636569766564207369676e61747572652077617320696e60648201527f76616c69642e0000000000000000000000000000000000000000000000000000608482015260a401610689565b87421115610f565760405162461bcd60e51b815260206004820152604660248201527f464c4f4b493a64656c656761746542795369673a455850495245445f5349474e60448201527f41545552453a205265636569766564207369676e61747572652068617320657860648201527f70697265642e0000000000000000000000000000000000000000000000000000608482015260a401610689565b6001600160a01b0381166000908152600460205260408120805491610f7a836120c5565b919050558914610ff25760405162461bcd60e51b815260206004820152603e60248201527f464c4f4b493a64656c656761746542795369673a494e56414c49445f4e4f4e4360448201527f453a205265636569766564206e6f6e63652077617320696e76616c69642e00006064820152608401610689565b610ffc818b6118fb565b505050505b505050505050565b6000546001600160a01b031633146110635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b6001600160a01b0381166110df5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610689565b610a9281611995565b6000546001600160a01b031633146111425760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610689565b6001600160a01b03821661116a57600854611166906001600160a01b0316826119f2565b5050565b6008546040517f23b872dd0000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b03918216602482015260448101839052908316906323b872dd906064016020604051808303816000875af11580156111dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120091906120e0565b505050565b6001600160a01b0383166112815760405162461bcd60e51b815260206004820152603f60248201527f464c4f4b493a5f617070726f76653a4f574e45525f5a45524f3a2043616e6e6f60448201527f7420617070726f766520666f7220746865207a65726f20616464726573732e006064820152608401610689565b6001600160a01b0382166112ff576040805162461bcd60e51b81526020600482015260248101919091527f464c4f4b493a5f617070726f76653a5350454e4445525f5a45524f3a2043616e60448201527f6e6f7420617070726f766520746f20746865207a65726f20616464726573732e6064820152608401610689565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166113e65760405162461bcd60e51b815260206004820152604160248201527f464c4f4b493a5f7472616e736665723a46524f4d5f5a45524f3a2043616e6e6f60448201527f74207472616e736665722066726f6d20746865207a65726f20616464726573736064820152601760f91b608482015260a401610689565b6001600160a01b0382166114625760405162461bcd60e51b815260206004820152603d60248201527f464c4f4b493a5f7472616e736665723a544f5f5a45524f3a2043616e6e6f742060448201527f7472616e7366657220746f20746865207a65726f20616464726573732e0000006064820152608401610689565b600081116114fe5760405162461bcd60e51b815260206004820152604760248201527f464c4f4b493a5f7472616e736665723a5a45524f5f414d4f554e543a2054726160448201527f6e7366657220616d6f756e74206d75737420626520677265617465722074686160648201527f6e207a65726f2e00000000000000000000000000000000000000000000000000608482015260a401610689565b6001600160a01b0383166000908152600160205260409020548111156115b25760405162461bcd60e51b815260206004820152604660248201527f464c4f4b493a5f7472616e736665723a494e53554646494349454e545f42414c60448201527f414e43453a205472616e7366657220616d6f756e74206578636565647320626160648201527f6c616e63652e0000000000000000000000000000000000000000000000000000608482015260a401610689565b6008546040517fc6512cc10000000000000000000000000000000000000000000000000000000081526001600160a01b0385811660048301528481166024830152604482018490529091169063c6512cc190606401600060405180830381600087803b15801561162157600080fd5b505af1158015611635573d6000803e3d6000fd5b50506007546040517fd7ad21ac0000000000000000000000000000000000000000000000000000000081526001600160a01b03878116600483015286811660248301526044820186905260009450909116915063d7ad21ac90606401602060405180830381865afa1580156116ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d29190612102565b905060006116e0828461211b565b6001600160a01b03861660009081526001602052604081208054929350859290919061170d90849061211b565b90915550506001600160a01b0384166000908152600160205260408120805483929061173a9084906120ad565b90915550506001600160a01b0380861660009081526003602052604080822054878416835291205461177192918216911683611b0b565b8115611820576008546001600160a01b0316600090815260016020526040812080548492906117a19084906120ad565b90915550506001600160a01b0380861660009081526003602052604080822054600854841683529120546117da92918216911684611b0b565b6008546040518381526001600160a01b03918216918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35b6008546040517fe613b1cd0000000000000000000000000000000000000000000000000000000081526001600160a01b0387811660048301528681166024830152604482018690529091169063e613b1cd90606401600060405180830381600087803b15801561188f57600080fd5b505af11580156118a3573d6000803e3d6000fd5b50505050836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118ec91815260200190565b60405180910390a35050505050565b6001600160a01b038281166000818152600360208181526040808420805460018452948290205493835287871673ffffffffffffffffffffffffffffffffffffffff198616811790915581519490961680855291840195909552939092917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f910160405180910390a261198f828483611b0b565b50505050565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80471015611a425760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e63650000006044820152606401610689565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a8f576040519150601f19603f3d011682016040523d82523d6000602084013e611a94565b606091505b50509050806112005760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d617920686176652072657665727465640000000000006064820152608401610689565b816001600160a01b0316836001600160a01b03161415611b2a57505050565b6001600160e01b038116611b3d57505050565b6001600160a01b03831615611be5576001600160a01b03831660009081526005602052604081205463ffffffff169081611b78576000611bc5565b6001600160a01b038516600090815260066020526040812090611b9c600185612057565b63ffffffff16815260208101919091526040016000205464010000000090046001600160e01b03165b90506000611bd38483612132565b9050611be186848484611c85565b5050505b6001600160a01b03821615611200576001600160a01b03821660009081526005602052604081205463ffffffff169081611c20576000611c6d565b6001600160a01b038416600090815260066020526040812090611c44600185612057565b63ffffffff16815260208101919091526040016000205464010000000090046001600160e01b03165b90506000611c7b8483612152565b9050611001858484845b4363ffffffff841615801590611cdd57506001600160a01b038516600090815260066020526040812063ffffffff831691611cc1600188612057565b63ffffffff908116825260208201929092526040016000205416145b15611d4d576001600160a01b03851660009081526006602052604081208391611d07600188612057565b63ffffffff1663ffffffff16815260200190815260200160002060000160046101000a8154816001600160e01b0302191690836001600160e01b03160217905550611de5565b60408051808201825263ffffffff80841682526001600160e01b0380861660208085019182526001600160a01b038b166000908152600682528681208b86168252909152949094209251935116640100000000029216919091179055611db484600161217d565b6001600160a01b0386166000908152600560205260409020805463ffffffff191663ffffffff929092169190911790555b604080516001600160e01b038086168252841660208201526001600160a01b038716917fda5a64c2947c0b7bf4d6e7bf736c6f84d9d1c5f991770f88bbeb3fe19c85a134910160405180910390a25050505050565b600060208083528351808285015260005b81811015611e6757858101830151858201604001528201611e4b565b81811115611e79576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114611ea657600080fd5b919050565b60008060408385031215611ebe57600080fd5b611ec783611e8f565b946020939093013593505050565b600080600060608486031215611eea57600080fd5b611ef384611e8f565b9250611f0160208501611e8f565b9150604084013590509250925092565b60008060408385031215611f2457600080fd5b611f2d83611e8f565b9150602083013563ffffffff81168114611f4657600080fd5b809150509250929050565b600060208284031215611f6357600080fd5b611f6c82611e8f565b9392505050565b60008060008060008060c08789031215611f8c57600080fd5b611f9587611e8f565b95506020870135945060408701359350606087013560ff81168114611fb957600080fd5b9598949750929560808101359460a0909101359350915050565b60008060408385031215611fe657600080fd5b611fef83611e8f565b9150611ffd60208401611e8f565b90509250929050565b600181811c9082168061201a57607f821691505b6020821081141561203b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600063ffffffff8381169083168181101561207457612074612041565b039392505050565b600063ffffffff808416806120a157634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b600082198211156120c0576120c0612041565b500190565b60006000198214156120d9576120d9612041565b5060010190565b6000602082840312156120f257600080fd5b81518015158114611f6c57600080fd5b60006020828403121561211457600080fd5b5051919050565b60008282101561212d5761212d612041565b500390565b60006001600160e01b038381169083168181101561207457612074612041565b60006001600160e01b0380831681851680830382111561217457612174612041565b01949350505050565b600063ffffffff8083168185168083038211156121745761217461204156fea164736f6c634300080b000a

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.