More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 15,069 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Fill Quote Eth T... | 9819652 | 1 hr ago | IN | 0.0678 ETH | 0.00000023 | ||||
Fill Quote Token... | 9807796 | 8 hrs ago | IN | 0 ETH | 0.00000024 | ||||
Fill Quote Token... | 9807773 | 8 hrs ago | IN | 0 ETH | 0.00000022 | ||||
Fill Quote Token... | 9805772 | 9 hrs ago | IN | 0 ETH | 0.00000016 | ||||
Fill Quote Token... | 9805709 | 9 hrs ago | IN | 0 ETH | 0.00000015 | ||||
Fill Quote Token... | 9803857 | 10 hrs ago | IN | 0 ETH | 0.00000024 | ||||
Fill Quote Eth T... | 9803836 | 10 hrs ago | IN | 0.0045 ETH | 0.00000024 | ||||
Fill Quote Token... | 9803186 | 10 hrs ago | IN | 0 ETH | 0.00000041 | ||||
Fill Quote Token... | 9799499 | 12 hrs ago | IN | 0 ETH | 0.00000038 | ||||
Fill Quote Token... | 9793269 | 16 hrs ago | IN | 0 ETH | 0.00000059 | ||||
Fill Quote Eth T... | 9792213 | 16 hrs ago | IN | 0.2 ETH | 0.00000054 | ||||
Fill Quote Token... | 9781764 | 22 hrs ago | IN | 0 ETH | 0.00000055 | ||||
Fill Quote Token... | 9770868 | 28 hrs ago | IN | 0 ETH | 0.00000031 | ||||
Fill Quote Token... | 9770761 | 28 hrs ago | IN | 0 ETH | 0.00000031 | ||||
Fill Quote Token... | 9770366 | 29 hrs ago | IN | 0 ETH | 0.00000024 | ||||
Fill Quote Token... | 9769203 | 29 hrs ago | IN | 0 ETH | 0.00000025 | ||||
Fill Quote Token... | 9764943 | 32 hrs ago | IN | 0 ETH | 0.00000031 | ||||
Fill Quote Eth T... | 9763845 | 32 hrs ago | IN | 0.0022 ETH | 0.0000003 | ||||
Fill Quote Token... | 9762398 | 33 hrs ago | IN | 0 ETH | 0.00000077 | ||||
Fill Quote Eth T... | 9762364 | 33 hrs ago | IN | 0.0045 ETH | 0.0000008 | ||||
Fill Quote Token... | 9761274 | 34 hrs ago | IN | 0 ETH | 0.00000105 | ||||
Fill Quote Token... | 9760529 | 34 hrs ago | IN | 0 ETH | 0.00000078 | ||||
Fill Quote Token... | 9760007 | 34 hrs ago | IN | 0 ETH | 0.00000047 | ||||
Fill Quote Eth T... | 9758250 | 35 hrs ago | IN | 0.00071102 ETH | 0.00000057 | ||||
Fill Quote Token... | 9755875 | 37 hrs ago | IN | 0 ETH | 0.00000184 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
9819652 | 1 hr ago | 0.0672237 ETH | ||||
9805709 | 9 hrs ago | 0.00111951 ETH | ||||
9805709 | 9 hrs ago | 0.0011291 ETH | ||||
9803857 | 10 hrs ago | 0.00442062 ETH | ||||
9803857 | 10 hrs ago | 0.00445852 ETH | ||||
9803836 | 10 hrs ago | 0.00446175 ETH | ||||
9799499 | 12 hrs ago | 0.00095615 ETH | ||||
9799499 | 12 hrs ago | 0.00096434 ETH | ||||
9793269 | 16 hrs ago | 0.00043028 ETH | ||||
9793269 | 16 hrs ago | 0.00043397 ETH | ||||
9792213 | 16 hrs ago | 0.1983 ETH | ||||
9781764 | 22 hrs ago | 0.03484975 ETH | ||||
9781764 | 22 hrs ago | 0.03514851 ETH | ||||
9770868 | 28 hrs ago | 0.01579127 ETH | ||||
9770868 | 28 hrs ago | 0.01592664 ETH | ||||
9770761 | 28 hrs ago | 0.00021522 ETH | ||||
9770761 | 28 hrs ago | 0.00021707 ETH | ||||
9770366 | 29 hrs ago | 0.00021016 ETH | ||||
9770366 | 29 hrs ago | 0.00021196 ETH | ||||
9769203 | 29 hrs ago | 0.00094589 ETH | ||||
9769203 | 29 hrs ago | 0.000954 ETH | ||||
9764943 | 32 hrs ago | 0.03682954 ETH | ||||
9764943 | 32 hrs ago | 0.03714527 ETH | ||||
9763845 | 32 hrs ago | 0.0021813 ETH | ||||
9762398 | 33 hrs ago | 0.0044194 ETH |
Loading...
Loading
Contract Name:
RainbowRouter
Compiler Version
v0.8.11+commit.d7f03943
Contract Source Code (Solidity)
/** *Submitted for verification at blastscan.io on 2024-03-26 */ /* ▐██▒ ███ ,╓, ▄▄ ,▄▄▄, .▄▄. ,╓, ▄▄▄ ██▌ ▄▄▄ ,▄▄▄, ,╓╓ ╓╓ ,╓ ██████ ███▀▀██⌐ ▐██⌐ ███▀▀███⌐ ████▀▀███ ╓██▀▀▀██▄`██▌ ▐██▌ ▐██ ███ ▄▄█████▌ ▐██⌐ ██▌ ▐██▌ ██▌ ║██⌐███ ▓██ ╙██▄█▌██▄██⌐ ██▌ ▐██▄▄███▌,▐██⌐ ██▌ ▐██▌ ███▓▄▄███ ╙██▄▄▄██▀ ║███¬╙███▌ ╙╙└ ╙╙▀╙─╙▀▀└"╙╙` ╙╙└ ╙╙" ╙╙`╙╙▀▀└ ╙╙▀▀╙` ╙╙└ ╙╙╙ _," _ _"""ⁿ=-, _ ⌠ _ __"=.__ ▐░...... _ _ "=._ ▐░░░░░░░░░░░░░░░░. "= _ ╚╩╩╩╩╩╩δφφφφ░░░░░░░░░░░ >__ ▐░░░░░░░░__ _ ╙╙╚╩φφ░░░░░░░ ^=_ ▐░░░░░░░░░░░░░░░,░ `╙╠φ░░░░░░░ ⁿ ▐░░░░░░░░░░░░░░░░░░░░._ `╚Åφ░░░░░ " _ ╚╠╠╠╠╠╠╠╬╬╬▒▒φ░░░░░░░░░░░░ ╙╠░░░░░ " ╚╝╝╝╝╝╝╝╬╬╬╠╢╬╠╬╠╬▒░░░░░░░░░░ "╚φ░░░░ ½_ ▐░░░░░░░░░░;░╙╙╝╬╠╬╠╠▒▒░░░░░░░░_ ╚φ░░░░ "_ ╚▒φφφ░░░░░░░░░░░░-╙╚╬╠╠╠╬▒░░░░░░░ `╠▒░░░░ , ╞╬╬╬╠╠╠╬╬╬╬▒φ▒░░░░░░░╙╚╬╬╠╬▒▒░░░░░ .╙╠░░░░ ≥ _▒░░░ΓΓ╙╙╙╚╩╬╠╬╠▒▒░░░░░░╙╬╬╠╬▒▒░░░░░' ╠▒░░░░ ≥ `╙ⁿⁿ≈≈σ╓░ '╙╙╚╬╠╬▒░░░░░░╙╬╬╠╬▒░░░░░ ╠▒░░░░ [ _╙Θ░ ░╙╠╠╬╬▒░░░░░╬╠╠╠▒▒░░░░ ╠▒░░░░ '_ _╙φ░'╙╠╠╬▒░░░░░╟╠╠╠▒░░░░░ _╠▒░░░ ░_ _`φ ░╚╬╠╠▒░░░░║╠╠╠▒░░░░░.`╠░░░░ [ _╚░⌡╚╠╬╬▒░░░░╠╠╠╬▒░░░░░ ╠▒░░░░ ░ _╙░⌡╚╠╠╬▒░░░"▒╠╠╬▒░░░░ ⌠╠░░░░ ⌡_ ╠ ░╠╠╠╬▒░░░║╠╬╠╬▒░░░ _╠▒░░░ Γ ▐░░░╠╠╠▒░░░╟╠╠╠╬▒░░░░ ╠▒░░░░ [ _░.░╠╠╠▒░░░▐╬╠╠╬▒░░░░[╠╬░░░░ │ _╙φ░╠╠╠╬▒░░▐╬╬╠╬╬▒░░░[╠╬░░░░ ░≥_ ____ ____ __ _______ ____ /$$$$$$ /$$$$$$ /$$ /$$__ $$ /$$__ $$ | $$ | $$ \__/ /$$ /$$ /$$ /$$$$$$ /$$$$$$ | $$ \ $$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$ | $$$$$$ | $$ | $$ | $$ |____ $$ /$$__ $$ | $$$$$$$$ /$$__ $$ /$$__ $$ /$$__ $$ /$$__ $$ /$$__ $$ |____ $$|_ $$_/ /$$__ $$ /$$__ $$ \____ $$| $$ | $$ | $$ /$$$$$$$| $$ \ $$ | $$__ $$| $$ \ $$| $$ \ $$| $$ \__/| $$$$$$$$| $$ \ $$ /$$$$$$$ | $$ | $$ \ $$| $$ \__/ /$$ \ $$| $$ | $$ | $$ /$$__ $$| $$ | $$ | $$ | $$| $$ | $$| $$ | $$| $$ | $$_____/| $$ | $$ /$$__ $$ | $$ /$$| $$ | $$| $$ | $$$$$$/| $$$$$/$$$$/| $$$$$$$| $$$$$$$/ | $$ | $$| $$$$$$$| $$$$$$$| $$ | $$$$$$$| $$$$$$$| $$$$$$$ | $$$$/| $$$$$$/| $$ \______/ \_____/\___/ \_______/| $$____/ |__/ |__/ \____ $$ \____ $$|__/ \_______/ \____ $$ \_______/ \___/ \______/ |__/ | $$ /$$ \ $$ /$$ \ $$ /$$ \ $$ | $$ | $$$$$$/| $$$$$$/ | $$$$$$/ |__/ \______/ \______/ \______/ */ //SPDX-License-Identifier: GPL-3.0 pragma solidity =0.8.11; /// @notice Modern and gas efficient ERC20 + EIP-2612 implementation. /// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC20.sol) /// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol) /// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it. abstract contract ERC20 { /*/////////////////////////////////////////////////////////////// EVENTS //////////////////////////////////////////////////////////////*/ event Transfer(address indexed from, address indexed to, uint256 amount); event Approval(address indexed owner, address indexed spender, uint256 amount); /*/////////////////////////////////////////////////////////////// METADATA STORAGE //////////////////////////////////////////////////////////////*/ string public name; string public symbol; uint8 public immutable decimals; /*/////////////////////////////////////////////////////////////// ERC20 STORAGE //////////////////////////////////////////////////////////////*/ uint256 public totalSupply; mapping(address => uint256) public balanceOf; mapping(address => mapping(address => uint256)) public allowance; /*/////////////////////////////////////////////////////////////// EIP-2612 STORAGE //////////////////////////////////////////////////////////////*/ bytes32 public constant PERMIT_TYPEHASH = keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"); uint256 internal immutable INITIAL_CHAIN_ID; bytes32 internal immutable INITIAL_DOMAIN_SEPARATOR; mapping(address => uint256) public nonces; /*/////////////////////////////////////////////////////////////// CONSTRUCTOR //////////////////////////////////////////////////////////////*/ constructor( string memory _name, string memory _symbol, uint8 _decimals ) { name = _name; symbol = _symbol; decimals = _decimals; INITIAL_CHAIN_ID = block.chainid; INITIAL_DOMAIN_SEPARATOR = computeDomainSeparator(); } /*/////////////////////////////////////////////////////////////// ERC20 LOGIC //////////////////////////////////////////////////////////////*/ function approve(address spender, uint256 amount) public virtual returns (bool) { allowance[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function transfer(address to, uint256 amount) public virtual returns (bool) { balanceOf[msg.sender] -= amount; // Cannot overflow because the sum of all user // balances can't exceed the max uint256 value. unchecked { balanceOf[to] += amount; } emit Transfer(msg.sender, to, amount); return true; } function transferFrom( address from, address to, uint256 amount ) public virtual returns (bool) { uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals. if (allowed != type(uint256).max) allowance[from][msg.sender] = allowed - amount; balanceOf[from] -= amount; // Cannot overflow because the sum of all user // balances can't exceed the max uint256 value. unchecked { balanceOf[to] += amount; } emit Transfer(from, to, amount); return true; } /*/////////////////////////////////////////////////////////////// EIP-2612 LOGIC //////////////////////////////////////////////////////////////*/ function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) public virtual { require(deadline >= block.timestamp, "PERMIT_DEADLINE_EXPIRED"); // Unchecked because the only math done is incrementing // the owner's nonce which cannot realistically overflow. unchecked { bytes32 digest = keccak256( abi.encodePacked( "\x19\x01", DOMAIN_SEPARATOR(), keccak256(abi.encode(PERMIT_TYPEHASH, owner, spender, value, nonces[owner]++, deadline)) ) ); address recoveredAddress = ecrecover(digest, v, r, s); require(recoveredAddress != address(0) && recoveredAddress == owner, "INVALID_SIGNER"); allowance[recoveredAddress][spender] = value; } emit Approval(owner, spender, value); } function DOMAIN_SEPARATOR() public view virtual returns (bytes32) { return block.chainid == INITIAL_CHAIN_ID ? INITIAL_DOMAIN_SEPARATOR : computeDomainSeparator(); } function computeDomainSeparator() internal view virtual returns (bytes32) { return keccak256( abi.encode( keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"), keccak256(bytes(name)), keccak256("1"), block.chainid, address(this) ) ); } /*/////////////////////////////////////////////////////////////// INTERNAL MINT/BURN LOGIC //////////////////////////////////////////////////////////////*/ function _mint(address to, uint256 amount) internal virtual { totalSupply += amount; // Cannot overflow because the sum of all user // balances can't exceed the max uint256 value. unchecked { balanceOf[to] += amount; } emit Transfer(address(0), to, amount); } function _burn(address from, uint256 amount) internal virtual { balanceOf[from] -= amount; // Cannot underflow because a user's balance // will never be larger than the total supply. unchecked { totalSupply -= amount; } emit Transfer(from, address(0), amount); } } /// @notice Safe ETH and ERC20 transfer library that gracefully handles missing return values. /// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/utils/SafeTransferLib.sol) /// @author Modified from Gnosis (https://github.com/gnosis/gp-v2-contracts/blob/main/src/contracts/libraries/GPv2SafeERC20.sol) /// @dev Use with caution! Some functions in this library knowingly create dirty bits at the destination of the free memory pointer. library SafeTransferLib { /*/////////////////////////////////////////////////////////////// ETH OPERATIONS //////////////////////////////////////////////////////////////*/ function safeTransferETH(address to, uint256 amount) internal { bool callStatus; assembly { // Transfer the ETH and store if it succeeded or not. callStatus := call(gas(), to, amount, 0, 0, 0, 0) } require(callStatus, "ETH_TRANSFER_FAILED"); } /*/////////////////////////////////////////////////////////////// ERC20 OPERATIONS //////////////////////////////////////////////////////////////*/ function safeTransferFrom( ERC20 token, address from, address to, uint256 amount ) internal { bool callStatus; assembly { // Get a pointer to some free memory. let freeMemoryPointer := mload(0x40) // Write the abi-encoded calldata to memory piece by piece: mstore(freeMemoryPointer, 0x23b872dd00000000000000000000000000000000000000000000000000000000) // Begin with the function selector. mstore(add(freeMemoryPointer, 4), and(from, 0xffffffffffffffffffffffffffffffffffffffff)) // Mask and append the "from" argument. mstore(add(freeMemoryPointer, 36), and(to, 0xffffffffffffffffffffffffffffffffffffffff)) // Mask and append the "to" argument. mstore(add(freeMemoryPointer, 68), amount) // Finally append the "amount" argument. No mask as it's a full 32 byte value. // Call the token and store if it succeeded or not. // We use 100 because the calldata length is 4 + 32 * 3. callStatus := call(gas(), token, 0, freeMemoryPointer, 100, 0, 0) } require(didLastOptionalReturnCallSucceed(callStatus), "TRANSFER_FROM_FAILED"); } function safeTransfer( ERC20 token, address to, uint256 amount ) internal { bool callStatus; assembly { // Get a pointer to some free memory. let freeMemoryPointer := mload(0x40) // Write the abi-encoded calldata to memory piece by piece: mstore(freeMemoryPointer, 0xa9059cbb00000000000000000000000000000000000000000000000000000000) // Begin with the function selector. mstore(add(freeMemoryPointer, 4), and(to, 0xffffffffffffffffffffffffffffffffffffffff)) // Mask and append the "to" argument. mstore(add(freeMemoryPointer, 36), amount) // Finally append the "amount" argument. No mask as it's a full 32 byte value. // Call the token and store if it succeeded or not. // We use 68 because the calldata length is 4 + 32 * 2. callStatus := call(gas(), token, 0, freeMemoryPointer, 68, 0, 0) } require(didLastOptionalReturnCallSucceed(callStatus), "TRANSFER_FAILED"); } function safeApprove( ERC20 token, address to, uint256 amount ) internal { bool callStatus; assembly { // Get a pointer to some free memory. let freeMemoryPointer := mload(0x40) // Write the abi-encoded calldata to memory piece by piece: mstore(freeMemoryPointer, 0x095ea7b300000000000000000000000000000000000000000000000000000000) // Begin with the function selector. mstore(add(freeMemoryPointer, 4), and(to, 0xffffffffffffffffffffffffffffffffffffffff)) // Mask and append the "to" argument. mstore(add(freeMemoryPointer, 36), amount) // Finally append the "amount" argument. No mask as it's a full 32 byte value. // Call the token and store if it succeeded or not. // We use 68 because the calldata length is 4 + 32 * 2. callStatus := call(gas(), token, 0, freeMemoryPointer, 68, 0, 0) } require(didLastOptionalReturnCallSucceed(callStatus), "APPROVE_FAILED"); } /*/////////////////////////////////////////////////////////////// INTERNAL HELPER LOGIC //////////////////////////////////////////////////////////////*/ function didLastOptionalReturnCallSucceed(bool callStatus) private pure returns (bool success) { assembly { // Get how many bytes the call returned. let returnDataSize := returndatasize() // If the call reverted: if iszero(callStatus) { // Copy the revert message into memory. returndatacopy(0, 0, returnDataSize) // Revert with the same message. revert(0, returnDataSize) } switch returnDataSize case 32 { // Copy the return data into memory. returndatacopy(0, 0, returnDataSize) // Set success to whether it returned true. success := iszero(iszero(mload(0))) } case 0 { // There was no return data. success := 1 } default { // It returned some malformed input. success := 0 } } } } // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol) // OpenZeppelin Contracts v4.4.1 (token/ERC20/IERC20.sol) /** * @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); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @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 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. */ function decimals() external view returns (uint8); } // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/draft-IERC20Permit.sol) /** * @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in * https://eips.ethereum.org/EIPS/eip-2612[EIP-2612]. * * Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by * presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't * need to send a transaction, and thus is not required to hold Ether at all. */ interface IERC20Permit { /** * @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens, * given ``owner``'s signed approval. * * IMPORTANT: The same issues {IERC20-approve} has related to transaction * ordering also apply here. * * Emits an {Approval} event. * * Requirements: * * - `spender` cannot be the zero address. * - `deadline` must be a timestamp in the future. * - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner` * over the EIP712-formatted function arguments. * - the signature must use ``owner``'s current nonce (see {nonces}). * * For more information on the signature format, see the * https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP * section]. */ function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) external; /** * @dev Returns the current nonce for `owner`. This value must be * included whenever a signature is generated for {permit}. * * Every successful call to {permit} increases ``owner``'s nonce by one. This * prevents a signature from being used multiple times. */ function nonces(address owner) external view returns (uint256); /** * @dev Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}. */ // solhint-disable-next-line func-name-mixedcase function DOMAIN_SEPARATOR() external view returns (bytes32); } interface IERC2612 is IERC20Metadata, IERC20Permit { function _nonces(address owner) external view returns (uint256); function version() external view returns (string memory); } /// @title Interface for permit /// @notice Interface used by DAI/CHAI for permit interface IERC20PermitAllowed { /// @notice Approve the spender to spend some tokens via the holder signature /// @dev This is the permit interface used by DAI and CHAI /// @param holder The address of the token holder, the token owner /// @param spender The address of the token spender /// @param nonce The holder's nonce, increases at each call to permit /// @param expiry The timestamp at which the permit is no longer valid /// @param allowed Boolean that sets approval amount, true for type(uint256).max and false for 0 /// @param v Must produce valid secp256k1 signature from the holder along with `r` and `s` /// @param r Must produce valid secp256k1 signature from the holder along with `v` and `s` /// @param s Must produce valid secp256k1 signature from the holder along with `r` and `v` function permit( address holder, address spender, uint256 nonce, uint256 expiry, bool allowed, uint8 v, bytes32 r, bytes32 s ) external; } interface IDAI is IERC20Metadata, IERC20PermitAllowed { function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint256); function version() external view returns (string memory); } /// @title PermitHelper /// @dev Helper methods for using ERC20 Permit (ERC2612 or DAI/CHAI like) library PermitHelper { struct Permit { uint256 value; uint256 nonce; uint256 deadline; bool isDaiStylePermit; uint8 v; bytes32 r; bytes32 s; } /// @dev permit method helper that will handle both known implementations // DAI vs ERC2612 tokens /// @param permitData bytes containing the encoded permit signature /// @param tokenAddress address of the token that will be permitted /// @param holder address that holds the tokens to be permitted /// @param spender address that will be permitted to spend the tokens function permit( Permit memory permitData, address tokenAddress, address holder, address spender ) internal { if (permitData.isDaiStylePermit) { IDAI(tokenAddress).permit( holder, spender, permitData.nonce, permitData.deadline, true, permitData.v, permitData.r, permitData.s ); } else { IERC2612(tokenAddress).permit( holder, spender, permitData.value, permitData.deadline, permitData.v, permitData.r, permitData.s ); } } } /// @title Rainbow base aggregator contract contract BaseAggregator { /// @dev Used to prevent re-entrancy uint256 internal status; /// @dev Set of allowed swapTargets. mapping(address => bool) public swapTargets; /// @dev modifier that prevents reentrancy attacks on specific methods modifier nonReentrant() { // On the first call to nonReentrant, status will be 1 require(status != 2, "NON_REENTRANT"); // Any calls to nonReentrant after this point will fail status = 2; _; // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) status = 1; } /// @dev modifier that ensures only approved targets can be called modifier onlyApprovedTarget(address target) { require(swapTargets[target], "TARGET_NOT_AUTH"); _; } /** EXTERNAL **/ /// @param buyTokenAddress the address of token that the user should receive /// @param target the address of the aggregator contract that will exec the swap /// @param swapCallData the calldata that will be passed to the aggregator contract /// @param feeAmount the amount of ETH that we will take as a fee function fillQuoteEthToToken( address buyTokenAddress, address payable target, bytes calldata swapCallData, uint256 feeAmount ) external payable nonReentrant onlyApprovedTarget(target) { // 1 - Get the initial balances uint256 initialTokenBalance = ERC20(buyTokenAddress).balanceOf( address(this) ); uint256 initialEthAmount = address(this).balance - msg.value; uint256 sellAmount = msg.value - feeAmount; // 2 - Call the encoded swap function call on the contract at `target`, // passing along any ETH attached to this function call to cover protocol fees // minus our fees, which are kept in this contract (bool success, bytes memory res) = target.call{value: sellAmount}( swapCallData ); // Get the revert message of the call and revert with it if the call failed if (!success) { assembly { let returndata_size := mload(res) revert(add(32, res), returndata_size) } } // 3 - Make sure we received the tokens { uint256 finalTokenBalance = ERC20(buyTokenAddress).balanceOf( address(this) ); require(initialTokenBalance < finalTokenBalance, "NO_TOKENS"); } // 4 - Send the received tokens back to the user SafeTransferLib.safeTransfer( ERC20(buyTokenAddress), msg.sender, ERC20(buyTokenAddress).balanceOf(address(this)) - initialTokenBalance ); // 5 - Return the remaining ETH to the user (if any) { uint256 finalEthAmount = address(this).balance - feeAmount; if (finalEthAmount > initialEthAmount) { SafeTransferLib.safeTransferETH( msg.sender, finalEthAmount - initialEthAmount ); } } } /// @param sellTokenAddress the address of token that the user is selling /// @param buyTokenAddress the address of token that the user should receive /// @param target the address of the aggregator contract that will exec the swap /// @param swapCallData the calldata that will be passed to the aggregator contract /// @param sellAmount the amount of tokens that the user is selling /// @param feeAmount the amount of the tokens to sell that we will take as a fee function fillQuoteTokenToToken( address sellTokenAddress, address buyTokenAddress, address payable target, bytes calldata swapCallData, uint256 sellAmount, uint256 feeAmount ) external payable nonReentrant onlyApprovedTarget(target) { _fillQuoteTokenToToken( sellTokenAddress, buyTokenAddress, target, swapCallData, sellAmount, feeAmount ); } /// @dev method that executes ERC20 to ERC20 token swaps with the ability to take a fee from the input // and accepts a signature to use permit, so the user doesn't have to make an previous approval transaction /// @param sellTokenAddress the address of token that the user is selling /// @param buyTokenAddress the address of token that the user should receive /// @param target the address of the aggregator contract that will exec the swap /// @param swapCallData the calldata that will be passed to the aggregator contract /// @param sellAmount the amount of tokens that the user is selling /// @param feeAmount the amount of the tokens to sell that we will take as a fee /// @param permitData struct containing the value, nonce, deadline, v, r and s values of the permit data function fillQuoteTokenToTokenWithPermit( address sellTokenAddress, address buyTokenAddress, address payable target, bytes calldata swapCallData, uint256 sellAmount, uint256 feeAmount, PermitHelper.Permit calldata permitData ) external payable nonReentrant onlyApprovedTarget(target) { // 1 - Apply permit PermitHelper.permit( permitData, sellTokenAddress, msg.sender, address(this) ); //2 - Call fillQuoteTokenToToken _fillQuoteTokenToToken( sellTokenAddress, buyTokenAddress, target, swapCallData, sellAmount, feeAmount ); } /// @dev method that executes ERC20 to ETH token swaps with the ability to take a fee from the output /// @param sellTokenAddress the address of token that the user is selling /// @param target the address of the aggregator contract that will exec the swap /// @param swapCallData the calldata that will be passed to the aggregator contract /// @param sellAmount the amount of tokens that the user is selling /// @param feePercentageBasisPoints the amount of ETH that we will take as a fee in 1e18 basis points (basis points with 4 decimals plus 14 extra decimals of precision) function fillQuoteTokenToEth( address sellTokenAddress, address payable target, bytes calldata swapCallData, uint256 sellAmount, uint256 feePercentageBasisPoints ) external payable nonReentrant onlyApprovedTarget(target) { _fillQuoteTokenToEth( sellTokenAddress, target, swapCallData, sellAmount, feePercentageBasisPoints ); } /// @dev method that executes ERC20 to ETH token swaps with the ability to take a fee from the output // and accepts a signature to use permit, so the user doesn't have to make an previous approval transaction /// @param sellTokenAddress the address of token that the user is selling /// @param target the address of the aggregator contract that will exec the swap /// @param swapCallData the calldata that will be passed to the aggregator contract /// @param sellAmount the amount of tokens that the user is selling /// @param feePercentageBasisPoints the amount of ETH that we will take as a fee in 1e18 basis points (basis points with 4 decimals plus 14 extra decimals of precision) /// @param permitData struct containing the amount, nonce, deadline, v, r and s values of the permit data function fillQuoteTokenToEthWithPermit( address sellTokenAddress, address payable target, bytes calldata swapCallData, uint256 sellAmount, uint256 feePercentageBasisPoints, PermitHelper.Permit calldata permitData ) external payable nonReentrant onlyApprovedTarget(target) { // 1 - Apply permit PermitHelper.permit( permitData, sellTokenAddress, msg.sender, address(this) ); // 2 - call fillQuoteTokenToEth _fillQuoteTokenToEth( sellTokenAddress, target, swapCallData, sellAmount, feePercentageBasisPoints ); } /** INTERNAL **/ /// @dev internal method that executes ERC20 to ETH token swaps with the ability to take a fee from the output function _fillQuoteTokenToEth( address sellTokenAddress, address payable target, bytes calldata swapCallData, uint256 sellAmount, uint256 feePercentageBasisPoints ) internal { // 1 - Get the initial ETH amount uint256 initialEthAmount = address(this).balance - msg.value; // 2 - Move the tokens to this contract // NOTE: This implicitly assumes that the the necessary approvals have been granted // from msg.sender to the BaseAggregator SafeTransferLib.safeTransferFrom( ERC20(sellTokenAddress), msg.sender, address(this), sellAmount ); // 3 - Approve the aggregator's contract to swap the tokens SafeTransferLib.safeApprove( ERC20(sellTokenAddress), target, sellAmount ); // 4 - Call the encoded swap function call on the contract at `target`, // passing along any ETH attached to this function call to cover protocol fees. (bool success, bytes memory res) = target.call{value: msg.value}( swapCallData ); // Get the revert message of the call and revert with it if the call failed if (!success) { assembly { let returndata_size := mload(res) revert(add(32, res), returndata_size) } } // 5 - Check that the tokens were fully spent during the swap uint256 allowance = ERC20(sellTokenAddress).allowance( address(this), target ); require(allowance == 0, "ALLOWANCE_NOT_ZERO"); // 6 - Subtract the fees and send the rest to the user // Fees will be held in this contract uint256 finalEthAmount = address(this).balance; uint256 ethDiff = finalEthAmount - initialEthAmount; require(ethDiff > 0, "NO_ETH_BACK"); if (feePercentageBasisPoints > 0) { uint256 fees = (ethDiff * feePercentageBasisPoints) / 1e18; uint256 amountMinusFees = ethDiff - fees; SafeTransferLib.safeTransferETH(msg.sender, amountMinusFees); // when there's no fee, 1inch sends the funds directly to the user // we check to prevent sending 0 ETH in that case } else if (ethDiff > 0) { SafeTransferLib.safeTransferETH(msg.sender, ethDiff); } } /// @dev internal method that executes ERC20 to ERC20 token swaps with the ability to take a fee from the input function _fillQuoteTokenToToken( address sellTokenAddress, address buyTokenAddress, address payable target, bytes calldata swapCallData, uint256 sellAmount, uint256 feeAmount ) internal { // 1 - Get the initial output token balance uint256 initialOutputTokenAmount = ERC20(buyTokenAddress).balanceOf( address(this) ); // 2 - Move the tokens to this contract (which includes our fees) // NOTE: This implicitly assumes that the the necessary approvals have been granted // from msg.sender to the BaseAggregator SafeTransferLib.safeTransferFrom( ERC20(sellTokenAddress), msg.sender, address(this), sellAmount ); // 3 - Approve the aggregator's contract to swap the tokens if needed SafeTransferLib.safeApprove( ERC20(sellTokenAddress), target, sellAmount - feeAmount ); // 4 - Call the encoded swap function call on the contract at `target`, // passing along any ETH attached to this function call to cover protocol fees. (bool success, bytes memory res) = target.call{value: msg.value}( swapCallData ); // Get the revert message of the call and revert with it if the call failed if (!success) { assembly { let returndata_size := mload(res) revert(add(32, res), returndata_size) } } // 5 - Check that the tokens were fully spent during the swap uint256 allowance = ERC20(sellTokenAddress).allowance( address(this), target ); require(allowance == 0, "ALLOWANCE_NOT_ZERO"); // 6 - Make sure we received the tokens uint256 finalOutputTokenAmount = ERC20(buyTokenAddress).balanceOf( address(this) ); require(initialOutputTokenAmount < finalOutputTokenAmount, "NO_TOKENS"); // 7 - Send tokens to the user SafeTransferLib.safeTransfer( ERC20(buyTokenAddress), msg.sender, finalOutputTokenAmount - initialOutputTokenAmount ); } } /// @title Rainbow swap aggregator contract contract RainbowRouter is BaseAggregator { /// @dev The address that is the current owner of this contract address public owner; /// @dev Event emitted when the owner changes event OwnerChanged(address indexed newOwner, address indexed oldOwner); /// @dev Event emitted when a swap target gets added event SwapTargetAdded(address indexed target); /// @dev Event emitted when a swap target gets removed event SwapTargetRemoved(address indexed target); /// @dev Event emitted when token fees are withdrawn event TokenWithdrawn( address indexed token, address indexed target, uint256 amount ); /// @dev Event emitted when ETH fees are withdrawn event EthWithdrawn(address indexed target, uint256 amount); /// @dev modifier that ensures only the owner is allowed to call a specific method modifier onlyOwner() { require(msg.sender == owner, "ONLY_OWNER"); _; } constructor() { owner = msg.sender; status = 1; } /// @dev We don't want to accept any ETH, except refunds from aggregators /// or the owner (for testing purposes), which can also withdraw /// This is done by evaluating the value of status, which is set to 2 /// only during swaps due to the "nonReentrant" modifier receive() external payable { require(status == 2 || msg.sender == owner, "NO_RECEIVE"); } /// @dev method to add or remove swap targets from swapTargets /// This is required so we only approve "trusted" swap targets /// to transfer tokens out of this contract /// @param target address of the swap target to add /// @param add flag to add or remove the swap target function updateSwapTargets(address target, bool add) external onlyOwner { swapTargets[target] = add; if (add) { emit SwapTargetAdded(target); } else { emit SwapTargetRemoved(target); } } /// @dev method to withdraw ERC20 tokens (from the fees) /// @param token address of the token to withdraw /// @param to address that's receiving the tokens /// @param amount amount of tokens to withdraw function withdrawToken( address token, address to, uint256 amount ) external onlyOwner { require(to != address(0), "ZERO_ADDRESS"); SafeTransferLib.safeTransfer(ERC20(token), to, amount); emit TokenWithdrawn(token, to, amount); } /// @dev method to withdraw ETH (from the fees) /// @param to address that's receiving the ETH /// @param amount amount of ETH to withdraw function withdrawEth(address to, uint256 amount) external onlyOwner { require(to != address(0), "ZERO_ADDRESS"); SafeTransferLib.safeTransferETH(to, amount); emit EthWithdrawn(to, amount); } /// @dev Transfers ownership of the contract to a new account (`newOwner`). /// @param newOwner address of the new owner /// Can only be called by the current owner. function transferOwnership(address newOwner) external virtual onlyOwner { require(newOwner != address(0), "ZERO_ADDRESS"); require(newOwner != owner, "SAME_OWNER"); address previousOwner = owner; owner = newOwner; emit OwnerChanged(newOwner, previousOwner); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"EthWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newOwner","type":"address"},{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"}],"name":"OwnerChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"}],"name":"SwapTargetAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"}],"name":"SwapTargetRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokenWithdrawn","type":"event"},{"inputs":[{"internalType":"address","name":"buyTokenAddress","type":"address"},{"internalType":"address payable","name":"target","type":"address"},{"internalType":"bytes","name":"swapCallData","type":"bytes"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"name":"fillQuoteEthToToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"sellTokenAddress","type":"address"},{"internalType":"address payable","name":"target","type":"address"},{"internalType":"bytes","name":"swapCallData","type":"bytes"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"feePercentageBasisPoints","type":"uint256"}],"name":"fillQuoteTokenToEth","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"sellTokenAddress","type":"address"},{"internalType":"address payable","name":"target","type":"address"},{"internalType":"bytes","name":"swapCallData","type":"bytes"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"feePercentageBasisPoints","type":"uint256"},{"components":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bool","name":"isDaiStylePermit","type":"bool"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"internalType":"struct PermitHelper.Permit","name":"permitData","type":"tuple"}],"name":"fillQuoteTokenToEthWithPermit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"sellTokenAddress","type":"address"},{"internalType":"address","name":"buyTokenAddress","type":"address"},{"internalType":"address payable","name":"target","type":"address"},{"internalType":"bytes","name":"swapCallData","type":"bytes"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"feeAmount","type":"uint256"}],"name":"fillQuoteTokenToToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"sellTokenAddress","type":"address"},{"internalType":"address","name":"buyTokenAddress","type":"address"},{"internalType":"address payable","name":"target","type":"address"},{"internalType":"bytes","name":"swapCallData","type":"bytes"},{"internalType":"uint256","name":"sellAmount","type":"uint256"},{"internalType":"uint256","name":"feeAmount","type":"uint256"},{"components":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"bool","name":"isDaiStylePermit","type":"bool"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"internalType":"struct PermitHelper.Permit","name":"permitData","type":"tuple"}],"name":"fillQuoteTokenToTokenWithPermit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"swapTargets","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"bool","name":"add","type":"bool"}],"name":"updateSwapTargets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405234801561001057600080fd5b50600280546001600160a01b031916331790556001600055611afd806100376000396000f3fe6080604052600436106100c05760003560e01c80638da5cb5b11610074578063b0480bbd1161004e578063b0480bbd1461024e578063b309383814610261578063f2fde38b1461027457600080fd5b80638da5cb5b146101e357806397bbda0e1461021b578063999b64641461023b57600080fd5b80633c2b9a7d116100a55780633c2b9a7d1461017857806355e4b7be1461018b57806383c4a19d1461019e57600080fd5b806301e33667146101385780631b9a91a41461015857600080fd5b3661013357600054600214806100e057506002546001600160a01b031633145b6101315760405162461bcd60e51b815260206004820152600a60248201527f4e4f5f524543454956450000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b005b600080fd5b34801561014457600080fd5b506101316101533660046115a6565b610294565b34801561016457600080fd5b506101316101733660046115e7565b61037d565b61013161018636600461165c565b61045a565b6101316101993660046116c9565b61075f565b3480156101aa57600080fd5b506101ce6101b9366004611754565b60016020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101ef57600080fd5b50600254610203906001600160a01b031681565b6040516001600160a01b0390911681526020016101da565b34801561022757600080fd5b5061013161023636600461178d565b610820565b6101316102493660046117c2565b610904565b61013161025c366004611851565b6109c3565b61013161026f3660046118f1565b610a9f565b34801561028057600080fd5b5061013161028f366004611754565b610b6a565b6002546001600160a01b031633146102db5760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b0382166103205760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606401610128565b61032b838383610cbd565b816001600160a01b0316836001600160a01b03167f8210728e7c071f615b840ee026032693858fbcd5e5359e67e438c890f59e56208360405161037091815260200190565b60405180910390a3505050565b6002546001600160a01b031633146103c45760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b0382166104095760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606401610128565b6104138282610d63565b816001600160a01b03167f8455ae6be5d92f1df1c3c1484388e247a36c7e60d72055ae216dbc258f257d4b8260405161044e91815260200190565b60405180910390a25050565b6000546002141561049d5760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038516815260016020526040902054849060ff166104fd5760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b6040516370a0823160e01b81523060048201526000906001600160a01b038816906370a0823190602401602060405180830381865afa158015610544573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610568919061197f565b9050600061057634476119ae565b9050600061058485346119ae565b9050600080896001600160a01b0316838a8a6040516105a49291906119c5565b60006040518083038185875af1925050503d80600081146105e1576040519150601f19603f3d011682016040523d82523d6000602084013e6105e6565b606091505b5091509150816105f95780518082602001fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038d16906370a0823190602401602060405180830381865afa158015610640573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610664919061197f565b90508086106106a15760405162461bcd60e51b81526020600482015260096024820152684e4f5f544f4b454e5360b81b6044820152606401610128565b506040516370a0823160e01b8152306004820152610723908c90339088906001600160a01b038416906370a0823190602401602060405180830381865afa1580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610714919061197f565b61071e91906119ae565b610cbd565b600061072f88476119ae565b90508481111561074c5761074c3361074787846119ae565b610d63565b5050600160005550505050505050505050565b600054600214156107a25760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038616815260016020526040902054859060ff166108025760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b61081188888888888888610dc3565b50506001600055505050505050565b6002546001600160a01b031633146108675760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b0382166000908152600160205260409020805460ff191682158015919091179091556108cc576040516001600160a01b038316907fb907822409611d127ab6a64611591b98e03a6a85ade4f258bae26b7c1efdfeaf90600090a25050565b6040516001600160a01b038316907f393b8be3e26787f19285ecd039dfd80bc6507828750f4d50367e6efe2524695c90600090a25050565b600054600214156109475760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038616815260016020526040902054859060ff166109a75760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b6109b587878787878761104c565b505060016000555050505050565b60005460021415610a065760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038716815260016020526040902054869060ff16610a665760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b610a80610a78368490038401846119e6565b8a333061125d565b610a8f89898989898989610dc3565b5050600160005550505050505050565b60005460021415610ae25760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038716815260016020526040902054869060ff16610b425760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b610b5c610b54368490038401846119e6565b89333061125d565b61081188888888888861104c565b6002546001600160a01b03163314610bb15760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b038116610bf65760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606401610128565b6002546001600160a01b0382811691161415610c545760405162461bcd60e51b815260206004820152600a60248201527f53414d455f4f574e4552000000000000000000000000000000000000000000006044820152606401610128565b600280546001600160a01b038381167fffffffffffffffffffffffff00000000000000000000000000000000000000008316811790935560405191169182917fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c90600090a35050565b60006040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201528260248201526000806044836000895af1915050610d11816113f1565b610d5d5760405162461bcd60e51b815260206004820152600f60248201527f5452414e534645525f4641494c454400000000000000000000000000000000006044820152606401610128565b50505050565b600080600080600085875af1905080610dbe5760405162461bcd60e51b815260206004820152601360248201527f4554485f5452414e534645525f4641494c4544000000000000000000000000006044820152606401610128565b505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038816906370a0823190602401602060405180830381865afa158015610e0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2e919061197f565b9050610e3c88333086611438565b610e508887610e4b85876119ae565b6114ee565b600080876001600160a01b0316348888604051610e6e9291906119c5565b60006040518083038185875af1925050503d8060008114610eab576040519150601f19603f3d011682016040523d82523d6000602084013e610eb0565b606091505b509150915081610ec35780518082602001fd5b604051636eb1769f60e11b81523060048201526001600160a01b038981166024830152600091908c169063dd62ed3e90604401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f37919061197f565b90508015610f875760405162461bcd60e51b815260206004820152601260248201527f414c4c4f57414e43455f4e4f545f5a45524f00000000000000000000000000006044820152606401610128565b6040516370a0823160e01b81523060048201526000906001600160a01b038c16906370a0823190602401602060405180830381865afa158015610fce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff2919061197f565b905080851061102f5760405162461bcd60e51b81526020600482015260096024820152684e4f5f544f4b454e5360b81b6044820152606401610128565b61103e8b3361071e88856119ae565b505050505050505050505050565b600061105834476119ae565b905061106687333086611438565b6110718787856114ee565b600080876001600160a01b031634888860405161108f9291906119c5565b60006040518083038185875af1925050503d80600081146110cc576040519150601f19603f3d011682016040523d82523d6000602084013e6110d1565b606091505b5091509150816110e45780518082602001fd5b604051636eb1769f60e11b81523060048201526001600160a01b038981166024830152600091908b169063dd62ed3e90604401602060405180830381865afa158015611134573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611158919061197f565b905080156111a85760405162461bcd60e51b815260206004820152601260248201527f414c4c4f57414e43455f4e4f545f5a45524f00000000000000000000000000006044820152606401610128565b4760006111b586836119ae565b9050600081116112075760405162461bcd60e51b815260206004820152600b60248201527f4e4f5f4554485f4241434b0000000000000000000000000000000000000000006044820152606401610128565b861561124d576000670de0b6b3a76400006112228984611a86565b61122c9190611aa5565b9050600061123a82846119ae565b90506112463382610d63565b505061103e565b801561103e5761103e3382610d63565b836060015115611331576020840151604080860151608087015160a088015160c089015193517f8fcbaf0c0000000000000000000000000000000000000000000000000000000081526001600160a01b0388811660048301528781166024830152604482019690965260648101939093526001608484015260ff90911660a483015260c482015260e481019190915290841690638fcbaf0c9061010401600060405180830381600087803b15801561131457600080fd5b505af1158015611328573d6000803e3d6000fd5b50505050610d5d565b8351604080860151608087015160a088015160c089015193517fd505accf0000000000000000000000000000000000000000000000000000000081526001600160a01b03888116600483015287811660248301526044820196909652606481019390935260ff909116608483015260a482015260c48101919091529084169063d505accf9060e401600060405180830381600087803b1580156113d357600080fd5b505af11580156113e7573d6000803e3d6000fd5b5050505050505050565b60003d8261140357806000803e806000fd5b806020811461141b57801561142c5760009250611431565b816000803e60005115159250611431565b600192505b5050919050565b60006040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526001600160a01b038416602482015282604482015260008060648360008a5af191505061149b816113f1565b6114e75760405162461bcd60e51b815260206004820152601460248201527f5452414e534645525f46524f4d5f4641494c45440000000000000000000000006044820152606401610128565b5050505050565b60006040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201528260248201526000806044836000895af1915050611542816113f1565b610d5d5760405162461bcd60e51b815260206004820152600e60248201527f415050524f56455f4641494c45440000000000000000000000000000000000006044820152606401610128565b6001600160a01b03811681146115a357600080fd5b50565b6000806000606084860312156115bb57600080fd5b83356115c68161158e565b925060208401356115d68161158e565b929592945050506040919091013590565b600080604083850312156115fa57600080fd5b82356116058161158e565b946020939093013593505050565b60008083601f84011261162557600080fd5b50813567ffffffffffffffff81111561163d57600080fd5b60208301915083602082850101111561165557600080fd5b9250929050565b60008060008060006080868803121561167457600080fd5b853561167f8161158e565b9450602086013561168f8161158e565b9350604086013567ffffffffffffffff8111156116ab57600080fd5b6116b788828901611613565b96999598509660600135949350505050565b600080600080600080600060c0888a0312156116e457600080fd5b87356116ef8161158e565b965060208801356116ff8161158e565b9550604088013561170f8161158e565b9450606088013567ffffffffffffffff81111561172b57600080fd5b6117378a828b01611613565b989b979a50959895979660808701359660a0013595509350505050565b60006020828403121561176657600080fd5b81356117718161158e565b9392505050565b8035801515811461178857600080fd5b919050565b600080604083850312156117a057600080fd5b82356117ab8161158e565b91506117b960208401611778565b90509250929050565b60008060008060008060a087890312156117db57600080fd5b86356117e68161158e565b955060208701356117f68161158e565b9450604087013567ffffffffffffffff81111561181257600080fd5b61181e89828a01611613565b979a9699509760608101359660809091013595509350505050565b600060e0828403121561184b57600080fd5b50919050565b6000806000806000806000806101a0898b03121561186e57600080fd5b88356118798161158e565b975060208901356118898161158e565b965060408901356118998161158e565b9550606089013567ffffffffffffffff8111156118b557600080fd5b6118c18b828c01611613565b9096509450506080890135925060a089013591506118e28a60c08b01611839565b90509295985092959890939650565b6000806000806000806000610180888a03121561190d57600080fd5b87356119188161158e565b965060208801356119288161158e565b9550604088013567ffffffffffffffff81111561194457600080fd5b6119508a828b01611613565b90965094505060608801359250608088013591506119718960a08a01611839565b905092959891949750929550565b60006020828403121561199157600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000828210156119c0576119c0611998565b500390565b8183823760009101908152919050565b803560ff8116811461178857600080fd5b600060e082840312156119f857600080fd5b60405160e0810181811067ffffffffffffffff82111715611a2957634e487b7160e01b600052604160045260246000fd5b8060405250823581526020830135602082015260408301356040820152611a5260608401611778565b6060820152611a63608084016119d5565b608082015260a083013560a082015260c083013560c08201528091505092915050565b6000816000190483118215151615611aa057611aa0611998565b500290565b600082611ac257634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212209870dd0dc3fb83baf72036a002768c9388c9b2cbf93b6d7b09369fddefaaf87764736f6c634300080b0033
Deployed Bytecode
0x6080604052600436106100c05760003560e01c80638da5cb5b11610074578063b0480bbd1161004e578063b0480bbd1461024e578063b309383814610261578063f2fde38b1461027457600080fd5b80638da5cb5b146101e357806397bbda0e1461021b578063999b64641461023b57600080fd5b80633c2b9a7d116100a55780633c2b9a7d1461017857806355e4b7be1461018b57806383c4a19d1461019e57600080fd5b806301e33667146101385780631b9a91a41461015857600080fd5b3661013357600054600214806100e057506002546001600160a01b031633145b6101315760405162461bcd60e51b815260206004820152600a60248201527f4e4f5f524543454956450000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b005b600080fd5b34801561014457600080fd5b506101316101533660046115a6565b610294565b34801561016457600080fd5b506101316101733660046115e7565b61037d565b61013161018636600461165c565b61045a565b6101316101993660046116c9565b61075f565b3480156101aa57600080fd5b506101ce6101b9366004611754565b60016020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b3480156101ef57600080fd5b50600254610203906001600160a01b031681565b6040516001600160a01b0390911681526020016101da565b34801561022757600080fd5b5061013161023636600461178d565b610820565b6101316102493660046117c2565b610904565b61013161025c366004611851565b6109c3565b61013161026f3660046118f1565b610a9f565b34801561028057600080fd5b5061013161028f366004611754565b610b6a565b6002546001600160a01b031633146102db5760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b0382166103205760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606401610128565b61032b838383610cbd565b816001600160a01b0316836001600160a01b03167f8210728e7c071f615b840ee026032693858fbcd5e5359e67e438c890f59e56208360405161037091815260200190565b60405180910390a3505050565b6002546001600160a01b031633146103c45760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b0382166104095760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606401610128565b6104138282610d63565b816001600160a01b03167f8455ae6be5d92f1df1c3c1484388e247a36c7e60d72055ae216dbc258f257d4b8260405161044e91815260200190565b60405180910390a25050565b6000546002141561049d5760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038516815260016020526040902054849060ff166104fd5760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b6040516370a0823160e01b81523060048201526000906001600160a01b038816906370a0823190602401602060405180830381865afa158015610544573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610568919061197f565b9050600061057634476119ae565b9050600061058485346119ae565b9050600080896001600160a01b0316838a8a6040516105a49291906119c5565b60006040518083038185875af1925050503d80600081146105e1576040519150601f19603f3d011682016040523d82523d6000602084013e6105e6565b606091505b5091509150816105f95780518082602001fd5b6040516370a0823160e01b81523060048201526000906001600160a01b038d16906370a0823190602401602060405180830381865afa158015610640573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610664919061197f565b90508086106106a15760405162461bcd60e51b81526020600482015260096024820152684e4f5f544f4b454e5360b81b6044820152606401610128565b506040516370a0823160e01b8152306004820152610723908c90339088906001600160a01b038416906370a0823190602401602060405180830381865afa1580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610714919061197f565b61071e91906119ae565b610cbd565b600061072f88476119ae565b90508481111561074c5761074c3361074787846119ae565b610d63565b5050600160005550505050505050505050565b600054600214156107a25760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038616815260016020526040902054859060ff166108025760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b61081188888888888888610dc3565b50506001600055505050505050565b6002546001600160a01b031633146108675760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b0382166000908152600160205260409020805460ff191682158015919091179091556108cc576040516001600160a01b038316907fb907822409611d127ab6a64611591b98e03a6a85ade4f258bae26b7c1efdfeaf90600090a25050565b6040516001600160a01b038316907f393b8be3e26787f19285ecd039dfd80bc6507828750f4d50367e6efe2524695c90600090a25050565b600054600214156109475760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038616815260016020526040902054859060ff166109a75760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b6109b587878787878761104c565b505060016000555050505050565b60005460021415610a065760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038716815260016020526040902054869060ff16610a665760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b610a80610a78368490038401846119e6565b8a333061125d565b610a8f89898989898989610dc3565b5050600160005550505050505050565b60005460021415610ae25760405162461bcd60e51b815260206004820152600d60248201526c1393d397d49151539514905395609a1b6044820152606401610128565b600260009081556001600160a01b038716815260016020526040902054869060ff16610b425760405162461bcd60e51b815260206004820152600f60248201526e0a882a48e8aa8be9c9ea8be82aaa89608b1b6044820152606401610128565b610b5c610b54368490038401846119e6565b89333061125d565b61081188888888888861104c565b6002546001600160a01b03163314610bb15760405162461bcd60e51b815260206004820152600a60248201526927a7262cafa7aba722a960b11b6044820152606401610128565b6001600160a01b038116610bf65760405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606401610128565b6002546001600160a01b0382811691161415610c545760405162461bcd60e51b815260206004820152600a60248201527f53414d455f4f574e4552000000000000000000000000000000000000000000006044820152606401610128565b600280546001600160a01b038381167fffffffffffffffffffffffff00000000000000000000000000000000000000008316811790935560405191169182917fb532073b38c83145e3e5135377a08bf9aab55bc0fd7c1179cd4fb995d2a5159c90600090a35050565b60006040517fa9059cbb0000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201528260248201526000806044836000895af1915050610d11816113f1565b610d5d5760405162461bcd60e51b815260206004820152600f60248201527f5452414e534645525f4641494c454400000000000000000000000000000000006044820152606401610128565b50505050565b600080600080600085875af1905080610dbe5760405162461bcd60e51b815260206004820152601360248201527f4554485f5452414e534645525f4641494c4544000000000000000000000000006044820152606401610128565b505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038816906370a0823190602401602060405180830381865afa158015610e0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2e919061197f565b9050610e3c88333086611438565b610e508887610e4b85876119ae565b6114ee565b600080876001600160a01b0316348888604051610e6e9291906119c5565b60006040518083038185875af1925050503d8060008114610eab576040519150601f19603f3d011682016040523d82523d6000602084013e610eb0565b606091505b509150915081610ec35780518082602001fd5b604051636eb1769f60e11b81523060048201526001600160a01b038981166024830152600091908c169063dd62ed3e90604401602060405180830381865afa158015610f13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f37919061197f565b90508015610f875760405162461bcd60e51b815260206004820152601260248201527f414c4c4f57414e43455f4e4f545f5a45524f00000000000000000000000000006044820152606401610128565b6040516370a0823160e01b81523060048201526000906001600160a01b038c16906370a0823190602401602060405180830381865afa158015610fce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff2919061197f565b905080851061102f5760405162461bcd60e51b81526020600482015260096024820152684e4f5f544f4b454e5360b81b6044820152606401610128565b61103e8b3361071e88856119ae565b505050505050505050505050565b600061105834476119ae565b905061106687333086611438565b6110718787856114ee565b600080876001600160a01b031634888860405161108f9291906119c5565b60006040518083038185875af1925050503d80600081146110cc576040519150601f19603f3d011682016040523d82523d6000602084013e6110d1565b606091505b5091509150816110e45780518082602001fd5b604051636eb1769f60e11b81523060048201526001600160a01b038981166024830152600091908b169063dd62ed3e90604401602060405180830381865afa158015611134573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611158919061197f565b905080156111a85760405162461bcd60e51b815260206004820152601260248201527f414c4c4f57414e43455f4e4f545f5a45524f00000000000000000000000000006044820152606401610128565b4760006111b586836119ae565b9050600081116112075760405162461bcd60e51b815260206004820152600b60248201527f4e4f5f4554485f4241434b0000000000000000000000000000000000000000006044820152606401610128565b861561124d576000670de0b6b3a76400006112228984611a86565b61122c9190611aa5565b9050600061123a82846119ae565b90506112463382610d63565b505061103e565b801561103e5761103e3382610d63565b836060015115611331576020840151604080860151608087015160a088015160c089015193517f8fcbaf0c0000000000000000000000000000000000000000000000000000000081526001600160a01b0388811660048301528781166024830152604482019690965260648101939093526001608484015260ff90911660a483015260c482015260e481019190915290841690638fcbaf0c9061010401600060405180830381600087803b15801561131457600080fd5b505af1158015611328573d6000803e3d6000fd5b50505050610d5d565b8351604080860151608087015160a088015160c089015193517fd505accf0000000000000000000000000000000000000000000000000000000081526001600160a01b03888116600483015287811660248301526044820196909652606481019390935260ff909116608483015260a482015260c48101919091529084169063d505accf9060e401600060405180830381600087803b1580156113d357600080fd5b505af11580156113e7573d6000803e3d6000fd5b5050505050505050565b60003d8261140357806000803e806000fd5b806020811461141b57801561142c5760009250611431565b816000803e60005115159250611431565b600192505b5050919050565b60006040517f23b872dd0000000000000000000000000000000000000000000000000000000081526001600160a01b03851660048201526001600160a01b038416602482015282604482015260008060648360008a5af191505061149b816113f1565b6114e75760405162461bcd60e51b815260206004820152601460248201527f5452414e534645525f46524f4d5f4641494c45440000000000000000000000006044820152606401610128565b5050505050565b60006040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b03841660048201528260248201526000806044836000895af1915050611542816113f1565b610d5d5760405162461bcd60e51b815260206004820152600e60248201527f415050524f56455f4641494c45440000000000000000000000000000000000006044820152606401610128565b6001600160a01b03811681146115a357600080fd5b50565b6000806000606084860312156115bb57600080fd5b83356115c68161158e565b925060208401356115d68161158e565b929592945050506040919091013590565b600080604083850312156115fa57600080fd5b82356116058161158e565b946020939093013593505050565b60008083601f84011261162557600080fd5b50813567ffffffffffffffff81111561163d57600080fd5b60208301915083602082850101111561165557600080fd5b9250929050565b60008060008060006080868803121561167457600080fd5b853561167f8161158e565b9450602086013561168f8161158e565b9350604086013567ffffffffffffffff8111156116ab57600080fd5b6116b788828901611613565b96999598509660600135949350505050565b600080600080600080600060c0888a0312156116e457600080fd5b87356116ef8161158e565b965060208801356116ff8161158e565b9550604088013561170f8161158e565b9450606088013567ffffffffffffffff81111561172b57600080fd5b6117378a828b01611613565b989b979a50959895979660808701359660a0013595509350505050565b60006020828403121561176657600080fd5b81356117718161158e565b9392505050565b8035801515811461178857600080fd5b919050565b600080604083850312156117a057600080fd5b82356117ab8161158e565b91506117b960208401611778565b90509250929050565b60008060008060008060a087890312156117db57600080fd5b86356117e68161158e565b955060208701356117f68161158e565b9450604087013567ffffffffffffffff81111561181257600080fd5b61181e89828a01611613565b979a9699509760608101359660809091013595509350505050565b600060e0828403121561184b57600080fd5b50919050565b6000806000806000806000806101a0898b03121561186e57600080fd5b88356118798161158e565b975060208901356118898161158e565b965060408901356118998161158e565b9550606089013567ffffffffffffffff8111156118b557600080fd5b6118c18b828c01611613565b9096509450506080890135925060a089013591506118e28a60c08b01611839565b90509295985092959890939650565b6000806000806000806000610180888a03121561190d57600080fd5b87356119188161158e565b965060208801356119288161158e565b9550604088013567ffffffffffffffff81111561194457600080fd5b6119508a828b01611613565b90965094505060608801359250608088013591506119718960a08a01611839565b905092959891949750929550565b60006020828403121561199157600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b6000828210156119c0576119c0611998565b500390565b8183823760009101908152919050565b803560ff8116811461178857600080fd5b600060e082840312156119f857600080fd5b60405160e0810181811067ffffffffffffffff82111715611a2957634e487b7160e01b600052604160045260246000fd5b8060405250823581526020830135602082015260408301356040820152611a5260608401611778565b6060820152611a63608084016119d5565b608082015260a083013560a082015260c083013560c08201528091505092915050565b6000816000190483118215151615611aa057611aa0611998565b500290565b600082611ac257634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212209870dd0dc3fb83baf72036a002768c9388c9b2cbf93b6d7b09369fddefaaf87764736f6c634300080b0033
Deployed Bytecode Sourcemap
41579:3441:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;42992:6;;43002:1;42992:11;:34;;;-1:-1:-1;43021:5:0;;-1:-1:-1;;;;;43021:5:0;43007:10;:19;42992:34;42984:57;;;;-1:-1:-1;;;42984:57:0;;216:2:1;42984:57:0;;;198:21:1;255:2;235:18;;;228:30;294:12;274:18;;;267:40;324:18;;42984:57:0;;;;;;;;;41579:3441;;;;;43842:293;;;;;;;;;;-1:-1:-1;43842:293:0;;;;;:::i;:::-;;:::i;44297:222::-;;;;;;;;;;-1:-1:-1;44297:222:0;;;;;:::i;:::-;;:::i;29093:2054::-;;;;;;:::i;:::-;;:::i;31650:502::-;;;;;;:::i;:::-;;:::i;28000:43::-;;;;;;;;;;-1:-1:-1;28000:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3807:14:1;;3800:22;3782:41;;3770:2;3755:18;28000:43:0;;;;;;;;41696:20;;;;;;;;;;-1:-1:-1;41696:20:0;;;;-1:-1:-1;;;;;41696:20:0;;;;;;-1:-1:-1;;;;;3998:55:1;;;3980:74;;3968:2;3953:18;41696:20:0;3834:226:1;43357:253:0;;;;;;;;;;-1:-1:-1;43357:253:0;;;;;:::i;:::-;;:::i;34387:464::-;;;;;;:::i;:::-;;:::i;32986:785::-;;;;;;:::i;:::-;;:::i;35691:746::-;;;;;;:::i;:::-;;:::i;44708:309::-;;;;;;;;;;-1:-1:-1;44708:309:0;;;;;:::i;:::-;;:::i;43842:293::-;42532:5;;-1:-1:-1;;;;;42532:5:0;42518:10;:19;42510:42;;;;-1:-1:-1;;;42510:42:0;;7810:2:1;42510:42:0;;;7792:21:1;7849:2;7829:18;;;7822:30;-1:-1:-1;;;7868:18:1;;;7861:40;7918:18;;42510:42:0;7608:334:1;42510:42:0;-1:-1:-1;;;;;43980:16:0;::::1;43972:41;;;::::0;-1:-1:-1;;;43972:41:0;;8149:2:1;43972:41:0::1;::::0;::::1;8131:21:1::0;8188:2;8168:18;;;8161:30;-1:-1:-1;;;8207:18:1;;;8200:42;8259:18;;43972:41:0::1;7947:336:1::0;43972:41:0::1;44024:54;44059:5;44067:2;44071:6;44024:28;:54::i;:::-;44116:2;-1:-1:-1::0;;;;;44094:33:0::1;44109:5;-1:-1:-1::0;;;;;44094:33:0::1;;44120:6;44094:33;;;;8434:25:1::0;;8422:2;8407:18;;8288:177;44094:33:0::1;;;;;;;;43842:293:::0;;;:::o;44297:222::-;42532:5;;-1:-1:-1;;;;;42532:5:0;42518:10;:19;42510:42;;;;-1:-1:-1;;;42510:42:0;;7810:2:1;42510:42:0;;;7792:21:1;7849:2;7829:18;;;7822:30;-1:-1:-1;;;7868:18:1;;;7861:40;7918:18;;42510:42:0;7608:334:1;42510:42:0;-1:-1:-1;;;;;44384:16:0;::::1;44376:41;;;::::0;-1:-1:-1;;;44376:41:0;;8149:2:1;44376:41:0::1;::::0;::::1;8131:21:1::0;8188:2;8168:18;;;8161:30;-1:-1:-1;;;8207:18:1;;;8200:42;8259:18;;44376:41:0::1;7947:336:1::0;44376:41:0::1;44428:43;44460:2;44464:6;44428:31;:43::i;:::-;44500:2;-1:-1:-1::0;;;;;44487:24:0::1;;44504:6;44487:24;;;;8434:25:1::0;;8422:2;8407:18;;8288:177;44487:24:0::1;;;;;;;;44297:222:::0;;:::o;29093:2054::-;28235:6;;28245:1;28235:11;;28227:37;;;;-1:-1:-1;;;28227:37:0;;8672:2:1;28227:37:0;;;8654:21:1;8711:2;8691:18;;;8684:30;-1:-1:-1;;;8730:18:1;;;8723:43;8783:18;;28227:37:0;8470:337:1;28227:37:0;28351:1;28342:6;:10;;;-1:-1:-1;;;;;28674:19:0;::::1;::::0;;:11:::1;:19;::::0;;;;;29311:6;;28674:19:::1;;28666:47;;;::::0;-1:-1:-1;;;28666:47:0;;9014:2:1;28666:47:0::1;::::0;::::1;8996:21:1::0;9053:2;9033:18;;;9026:30;-1:-1:-1;;;9072:18:1;;;9065:45;9127:18;;28666:47:0::1;8812:339:1::0;28666:47:0::1;29401:71:::2;::::0;-1:-1:-1;;;29401:71:0;;29456:4:::2;29401:71;::::0;::::2;3980:74:1::0;29371:27:0::2;::::0;-1:-1:-1;;;;;29401:32:0;::::2;::::0;::::2;::::0;3953:18:1;;29401:71:0::2;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29371:101:::0;-1:-1:-1;29483:24:0::2;29510:33;29534:9;29510:21;:33;:::i;:::-;29483:60:::0;-1:-1:-1;29554:18:0::2;29575:21;29587:9:::0;29575::::2;:21;:::i;:::-;29554:42;;29839:12;29853:16:::0;29873:6:::2;-1:-1:-1::0;;;;;29873:11:0::2;29892:10;29918:12;;29873:68;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29838:103;;;;30044:7;30039:171;;30125:3;30119:10;30168:15;30162:3;30158:2;30154:12;30147:37;30039:171;30314:79;::::0;-1:-1:-1;;;30314:79:0;;30373:4:::2;30314:79;::::0;::::2;3980:74:1::0;30286:25:0::2;::::0;-1:-1:-1;;;;;30314:32:0;::::2;::::0;::::2;::::0;3953:18:1;;30314:79:0::2;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30286:107;;30438:17;30416:19;:39;30408:61;;;::::0;-1:-1:-1;;;30408:61:0;;10142:2:1;30408:61:0::2;::::0;::::2;10124:21:1::0;10181:1;10161:18;;;10154:29;-1:-1:-1;;;10199:18:1;;;10192:39;10248:18;;30408:61:0::2;9940:332:1::0;30408:61:0::2;-1:-1:-1::0;30656:47:0::2;::::0;-1:-1:-1;;;30656:47:0;;30697:4:::2;30656:47;::::0;::::2;3980:74:1::0;30551:202:0::2;::::0;30600:15;;30631:10:::2;::::0;30723:19;;-1:-1:-1;;;;;30656:32:0;::::2;::::0;::::2;::::0;3953:18:1;;30656:47:0::2;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:86;;;;:::i;:::-;30551:28;:202::i;:::-;30843:22;30868:33;30892:9:::0;30868:21:::2;:33;:::i;:::-;30843:58;;30937:16;30920:14;:33;30916:213;;;30974:139;31028:10;31061:33;31078:16:::0;31061:14;:33:::2;:::i;:::-;30974:31;:139::i;:::-;-1:-1:-1::0;;28522:1:0;28513:6;:10;-1:-1:-1;;;;;;;;;;29093:2054:0:o;31650:502::-;28235:6;;28245:1;28235:11;;28227:37;;;;-1:-1:-1;;;28227:37:0;;8672:2:1;28227:37:0;;;8654:21:1;8711:2;8691:18;;;8684:30;-1:-1:-1;;;8730:18:1;;;8723:43;8783:18;;28227:37:0;8470:337:1;28227:37:0;28351:1;28342:6;:10;;;-1:-1:-1;;;;;28674:19:0;::::1;::::0;;:11:::1;:19;::::0;;;;;31934:6;;28674:19:::1;;28666:47;;;::::0;-1:-1:-1;;;28666:47:0;;9014:2:1;28666:47:0::1;::::0;::::1;8996:21:1::0;9053:2;9033:18;;;9026:30;-1:-1:-1;;;9072:18:1;;;9065:45;9127:18;;28666:47:0::1;8812:339:1::0;28666:47:0::1;31953:191:::2;31990:16;32021:15;32051:6;32072:12;;32099:10;32124:9;31953:22;:191::i;:::-;-1:-1:-1::0;;28522:1:0;28513:6;:10;-1:-1:-1;;;;;;31650:502:0:o;43357:253::-;42532:5;;-1:-1:-1;;;;;42532:5:0;42518:10;:19;42510:42;;;;-1:-1:-1;;;42510:42:0;;7810:2:1;42510:42:0;;;7792:21:1;7849:2;7829:18;;;7822:30;-1:-1:-1;;;7868:18:1;;;7861:40;7918:18;;42510:42:0;7608:334:1;42510:42:0;-1:-1:-1;;;;;43440:19:0;::::1;;::::0;;;:11:::1;:19;::::0;;;;:25;;-1:-1:-1;;43440:25:0::1;::::0;::::1;::::0;::::1;::::0;;;::::1;::::0;;;43476:127:::1;;43505:23;::::0;-1:-1:-1;;;;;43505:23:0;::::1;::::0;::::1;::::0;;;::::1;43357:253:::0;;:::o;43476:127::-:1;43566:25;::::0;-1:-1:-1;;;;;43566:25:0;::::1;::::0;::::1;::::0;;;::::1;43357:253:::0;;:::o;34387:464::-;28235:6;;28245:1;28235:11;;28227:37;;;;-1:-1:-1;;;28227:37:0;;8672:2:1;28227:37:0;;;8654:21:1;8711:2;8691:18;;;8684:30;-1:-1:-1;;;8730:18:1;;;8723:43;8783:18;;28227:37:0;8470:337:1;28227:37:0;28351:1;28342:6;:10;;;-1:-1:-1;;;;;28674:19:0;::::1;::::0;;:11:::1;:19;::::0;;;;;34650:6;;28674:19:::1;;28666:47;;;::::0;-1:-1:-1;;;28666:47:0;;9014:2:1;28666:47:0::1;::::0;::::1;8996:21:1::0;9053:2;9033:18;;;9026:30;-1:-1:-1;;;9072:18:1;;;9065:45;9127:18;;28666:47:0::1;8812:339:1::0;28666:47:0::1;34669:174:::2;34704:16;34735:6;34756:12;;34783:10;34808:24;34669:20;:174::i;:::-;-1:-1:-1::0;;28522:1:0;28513:6;:10;-1:-1:-1;;;;;34387:464:0:o;32986:785::-;28235:6;;28245:1;28235:11;;28227:37;;;;-1:-1:-1;;;28227:37:0;;8672:2:1;28227:37:0;;;8654:21:1;8711:2;8691:18;;;8684:30;-1:-1:-1;;;8730:18:1;;;8723:43;8783:18;;28227:37:0;8470:337:1;28227:37:0;28351:1;28342:6;:10;;;-1:-1:-1;;;;;28674:19:0;::::1;::::0;;:11:::1;:19;::::0;;;;;33330:6;;28674:19:::1;;28666:47;;;::::0;-1:-1:-1;;;28666:47:0;;9014:2:1;28666:47:0::1;::::0;::::1;8996:21:1::0;9053:2;9033:18;;;9026:30;-1:-1:-1;;;9072:18:1;;;9065:45;9127:18;;28666:47:0::1;8812:339:1::0;28666:47:0::1;33378:139:::2;;;::::0;;::::2;::::0;::::2;33412:10:::0;33378:139:::2;:::i;:::-;33437:16;33468:10;33501:4;33378:19;:139::i;:::-;33572:191;33609:16;33640:15;33670:6;33691:12;;33718:10;33743:9;33572:22;:191::i;:::-;-1:-1:-1::0;;28522:1:0;28513:6;:10;-1:-1:-1;;;;;;;32986:785:0:o;35691:746::-;28235:6;;28245:1;28235:11;;28227:37;;;;-1:-1:-1;;;28227:37:0;;8672:2:1;28227:37:0;;;8654:21:1;8711:2;8691:18;;;8684:30;-1:-1:-1;;;8730:18:1;;;8723:43;8783:18;;28227:37:0;8470:337:1;28227:37:0;28351:1;28342:6;:10;;;-1:-1:-1;;;;;28674:19:0;::::1;::::0;;:11:::1;:19;::::0;;;;;36014:6;;28674:19:::1;;28666:47;;;::::0;-1:-1:-1;;;28666:47:0;;9014:2:1;28666:47:0::1;::::0;::::1;8996:21:1::0;9053:2;9033:18;;;9026:30;-1:-1:-1;;;9072:18:1;;;9065:45;9127:18;;28666:47:0::1;8812:339:1::0;28666:47:0::1;36062:139:::2;;;::::0;;::::2;::::0;::::2;36096:10:::0;36062:139:::2;:::i;:::-;36121:16;36152:10;36185:4;36062:19;:139::i;:::-;36255:174;36290:16;36321:6;36342:12;;36369:10;36394:24;36255:20;:174::i;44708:309::-:0;42532:5;;-1:-1:-1;;;;;42532:5:0;42518:10;:19;42510:42;;;;-1:-1:-1;;;42510:42:0;;7810:2:1;42510:42:0;;;7792:21:1;7849:2;7829:18;;;7822:30;-1:-1:-1;;;7868:18:1;;;7861:40;7918:18;;42510:42:0;7608:334:1;42510:42:0;-1:-1:-1;;;;;44799:22:0;::::1;44791:47;;;::::0;-1:-1:-1;;;44791:47:0;;8149:2:1;44791:47:0::1;::::0;::::1;8131:21:1::0;8188:2;8168:18;;;8161:30;-1:-1:-1;;;8207:18:1;;;8200:42;8259:18;;44791:47:0::1;7947:336:1::0;44791:47:0::1;44869:5;::::0;-1:-1:-1;;;;;44857:17:0;;::::1;44869:5:::0;::::1;44857:17;;44849:40;;;::::0;-1:-1:-1;;;44849:40:0;;11646:2:1;44849:40:0::1;::::0;::::1;11628:21:1::0;11685:2;11665:18;;;11658:30;11724:12;11704:18;;;11697:40;11754:18;;44849:40:0::1;11444:334:1::0;44849:40:0::1;44924:5;::::0;;-1:-1:-1;;;;;44940:16:0;;::::1;::::0;;::::1;::::0;::::1;::::0;;;44972:37:::1;::::0;44924:5;::::1;::::0;;;44972:37:::1;::::0;44900:21:::1;::::0;44972:37:::1;44780:237;44708:309:::0;:::o;15493:1065::-;15610:15;15744:4;15738:11;15864:66;15845:17;15838:93;-1:-1:-1;;;;;16020:2:0;16016:51;16012:1;15993:17;15989:25;15982:86;16155:6;16150:2;16131:17;16127:26;16120:42;16453:1;16450;16446:2;16427:17;16424:1;16417:5;16410;16405:50;16391:64;;;16486:44;16519:10;16486:32;:44::i;:::-;16478:72;;;;-1:-1:-1;;;16478:72:0;;11985:2:1;16478:72:0;;;11967:21:1;12024:2;12004:18;;;11997:30;12063:17;12043:18;;;12036:45;12098:18;;16478:72:0;11783:339:1;16478:72:0;15599:959;15493:1065;;;:::o;13733:314::-;13806:15;13972:1;13969;13966;13963;13955:6;13951:2;13944:5;13939:35;13925:49;;14005:10;13997:42;;;;-1:-1:-1;;;13997:42:0;;12329:2:1;13997:42:0;;;12311:21:1;12368:2;12348:18;;;12341:30;12407:21;12387:18;;;12380:49;12446:18;;13997:42:0;12127:343:1;13997:42:0;13795:252;13733:314;;:::o;39216:2311::-;39560:71;;-1:-1:-1;;;39560:71:0;;39615:4;39560:71;;;3980:74:1;39525:32:0;;-1:-1:-1;;;;;39560:32:0;;;;;3953:18:1;;39560:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;39525:106;;39862:159;39915:16;39947:10;39980:4;40000:10;39862:32;:159::i;:::-;40113:134;40161:16;40193:6;40214:22;40227:9;40214:10;:22;:::i;:::-;40113:27;:134::i;:::-;40431:12;40445:16;40465:6;-1:-1:-1;;;;;40465:11:0;40484:9;40509:12;;40465:67;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;40430:102;;;;40635:7;40630:171;;40716:3;40710:10;40759:15;40753:3;40749:2;40745:12;40738:37;40630:171;40904:93;;-1:-1:-1;;;40904:93:0;;40960:4;40904:93;;;12718:34:1;-1:-1:-1;;;;;12788:15:1;;;12768:18;;;12761:43;40884:17:0;;40904:33;;;;;;12630:18:1;;40904:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;40884:113;-1:-1:-1;41016:14:0;;41008:45;;;;-1:-1:-1;;;41008:45:0;;13017:2:1;41008:45:0;;;12999:21:1;13056:2;13036:18;;;13029:30;13095:20;13075:18;;;13068:48;13133:18;;41008:45:0;12815:342:1;41008:45:0;41148:71;;-1:-1:-1;;;41148:71:0;;41203:4;41148:71;;;3980:74:1;41115:30:0;;-1:-1:-1;;;;;41148:32:0;;;;;3953:18:1;;41148:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;41115:104;;41265:22;41238:24;:49;41230:71;;;;-1:-1:-1;;;41230:71:0;;10142:2:1;41230:71:0;;;10124:21:1;10181:1;10161:18;;;10154:29;-1:-1:-1;;;10199:18:1;;;10192:39;10248:18;;41230:71:0;9940:332:1;41230:71:0;41354:165;41403:15;41434:10;41459:49;41484:24;41459:22;:49;:::i;41354:165::-;39461:2066;;;;;39216:2311;;;;;;;:::o;36585:2506::-;36863:24;36890:33;36914:9;36890:21;:33;:::i;:::-;36863:60;;37128:159;37181:16;37213:10;37246:4;37266:10;37128:32;:159::i;:::-;37369:122;37417:16;37449:6;37470:10;37369:27;:122::i;:::-;37675:12;37689:16;37709:6;-1:-1:-1;;;;;37709:11:0;37728:9;37753:12;;37709:67;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;37674:102;;;;37879:7;37874:171;;37960:3;37954:10;38003:15;37997:3;37993:2;37989:12;37982:37;37874:171;38148:93;;-1:-1:-1;;;38148:93:0;;38204:4;38148:93;;;12718:34:1;-1:-1:-1;;;;;12788:15:1;;;12768:18;;;12761:43;38128:17:0;;38148:33;;;;;;12630:18:1;;38148:93:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;38128:113;-1:-1:-1;38260:14:0;;38252:45;;;;-1:-1:-1;;;38252:45:0;;13017:2:1;38252:45:0;;;12999:21:1;13056:2;13036:18;;;13029:30;13095:20;13075:18;;;13068:48;13133:18;;38252:45:0;12815:342:1;38252:45:0;38446:21;38421:22;38496:33;38513:16;38446:21;38496:33;:::i;:::-;38478:51;;38560:1;38550:7;:11;38542:35;;;;-1:-1:-1;;;38542:35:0;;13364:2:1;38542:35:0;;;13346:21:1;13403:2;13383:18;;;13376:30;13442:13;13422:18;;;13415:41;13473:18;;38542:35:0;13162:335:1;38542:35:0;38594:28;;38590:494;;38639:12;38693:4;38655:34;38665:24;38655:7;:34;:::i;:::-;38654:43;;;;:::i;:::-;38639:58;-1:-1:-1;38712:23:0;38738:14;38639:58;38738:7;:14;:::i;:::-;38712:40;;38767:60;38799:10;38811:15;38767:31;:60::i;:::-;38624:358;;38590:494;;;38992:11;;38988:96;;39020:52;39052:10;39064:7;39020:31;:52::i;27000:801::-;27164:10;:27;;;27160:634;;;27303:16;;;;27338:19;;;;;27399:12;;;;27430;;;;27461;;;;27208:280;;;;;-1:-1:-1;;;;;14366:15:1;;;27208:280:0;;;14348:34:1;14418:15;;;14398:18;;;14391:43;14450:18;;;14443:34;;;;14493:18;;;14486:34;;;;27376:4:0;14536:19:1;;;14529:51;14629:4;14617:17;;;14596:19;;;14589:46;14651:19;;;14644:35;14695:19;;;14688:35;;;;27208:25:0;;;;;;14259:19:1;;27208:280:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27160:634;;;27620:16;;27655:19;;;;;27693:12;;;;27724;;;;27755;;;;27521:261;;;;;-1:-1:-1;;;;;15124:15:1;;;27521:261:0;;;15106:34:1;15176:15;;;15156:18;;;15149:43;15208:18;;;15201:34;;;;15251:18;;;15244:34;;;;15327:4;15315:17;;;15294:19;;;15287:46;15349:19;;;15342:35;15393:19;;;15386:35;;;;27521:29:0;;;;;;15017:19:1;;27521:261:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27000:801;;;;:::o;17828:1072::-;17909:12;18034:16;18114:10;18104:244;;18223:14;18220:1;18217;18202:36;18318:14;18315:1;18308:25;18104:244;18371:14;18404:2;18399:248;;;;18661:99;;;;18866:1;18855:12;;18364:518;;18399:248;18501:14;18498:1;18495;18480:36;18628:1;18622:8;18615:16;18608:24;18597:35;;18399:248;;18661:99;18744:1;18733:12;;18364:518;;;17828:1072;;;:::o;14243:1242::-;14387:15;14521:4;14515:11;14641:66;14622:17;14615:93;-1:-1:-1;;;;;14797:4:0;14793:53;14789:1;14770:17;14766:25;14759:88;-1:-1:-1;;;;;14940:2:0;14936:51;14931:2;14912:17;14908:26;14901:87;15075:6;15070:2;15051:17;15047:26;15040:42;15375:1;15372;15367:3;15348:17;15345:1;15338:5;15331;15326:51;15312:65;;;15408:44;15441:10;15408:32;:44::i;:::-;15400:77;;;;-1:-1:-1;;;15400:77:0;;15634:2:1;15400:77:0;;;15616:21:1;15673:2;15653:18;;;15646:30;15712:22;15692:18;;;15685:50;15752:18;;15400:77:0;15432:344:1;15400:77:0;14376:1109;14243:1242;;;;:::o;16566:1063::-;16682:15;16816:4;16810:11;16936:66;16917:17;16910:93;-1:-1:-1;;;;;17092:2:0;17088:51;17084:1;17065:17;17061:25;17054:86;17227:6;17222:2;17203:17;17199:26;17192:42;17525:1;17522;17518:2;17499:17;17496:1;17489:5;17482;17477:50;17463:64;;;17558:44;17591:10;17558:32;:44::i;:::-;17550:71;;;;-1:-1:-1;;;17550:71:0;;15983:2:1;17550:71:0;;;15965:21:1;16022:2;16002:18;;;15995:30;16061:16;16041:18;;;16034:44;16095:18;;17550:71:0;15781:338:1;353:154;-1:-1:-1;;;;;432:5:1;428:54;421:5;418:65;408:93;;497:1;494;487:12;408:93;353:154;:::o;512:456::-;589:6;597;605;658:2;646:9;637:7;633:23;629:32;626:52;;;674:1;671;664:12;626:52;713:9;700:23;732:31;757:5;732:31;:::i;:::-;782:5;-1:-1:-1;839:2:1;824:18;;811:32;852:33;811:32;852:33;:::i;:::-;512:456;;904:7;;-1:-1:-1;;;958:2:1;943:18;;;;930:32;;512:456::o;973:315::-;1041:6;1049;1102:2;1090:9;1081:7;1077:23;1073:32;1070:52;;;1118:1;1115;1108:12;1070:52;1157:9;1144:23;1176:31;1201:5;1176:31;:::i;:::-;1226:5;1278:2;1263:18;;;;1250:32;;-1:-1:-1;;;973:315:1:o;1293:347::-;1344:8;1354:6;1408:3;1401:4;1393:6;1389:17;1385:27;1375:55;;1426:1;1423;1416:12;1375:55;-1:-1:-1;1449:20:1;;1492:18;1481:30;;1478:50;;;1524:1;1521;1514:12;1478:50;1561:4;1553:6;1549:17;1537:29;;1613:3;1606:4;1597:6;1589;1585:19;1581:30;1578:39;1575:59;;;1630:1;1627;1620:12;1575:59;1293:347;;;;;:::o;1645:762::-;1750:6;1758;1766;1774;1782;1835:3;1823:9;1814:7;1810:23;1806:33;1803:53;;;1852:1;1849;1842:12;1803:53;1891:9;1878:23;1910:31;1935:5;1910:31;:::i;:::-;1960:5;-1:-1:-1;2017:2:1;2002:18;;1989:32;2030:33;1989:32;2030:33;:::i;:::-;2082:7;-1:-1:-1;2140:2:1;2125:18;;2112:32;2167:18;2156:30;;2153:50;;;2199:1;2196;2189:12;2153:50;2238:58;2288:7;2279:6;2268:9;2264:22;2238:58;:::i;:::-;1645:762;;;;-1:-1:-1;2315:8:1;2397:2;2382:18;2369:32;;1645:762;-1:-1:-1;;;;1645:762:1:o;2412:973::-;2535:6;2543;2551;2559;2567;2575;2583;2636:3;2624:9;2615:7;2611:23;2607:33;2604:53;;;2653:1;2650;2643:12;2604:53;2692:9;2679:23;2711:31;2736:5;2711:31;:::i;:::-;2761:5;-1:-1:-1;2818:2:1;2803:18;;2790:32;2831:33;2790:32;2831:33;:::i;:::-;2883:7;-1:-1:-1;2942:2:1;2927:18;;2914:32;2955:33;2914:32;2955:33;:::i;:::-;3007:7;-1:-1:-1;3065:2:1;3050:18;;3037:32;3092:18;3081:30;;3078:50;;;3124:1;3121;3114:12;3078:50;3163:58;3213:7;3204:6;3193:9;3189:22;3163:58;:::i;:::-;2412:973;;;;-1:-1:-1;2412:973:1;;3240:8;;3137:84;3322:3;3307:19;;3294:33;;3374:3;3359:19;3346:33;;-1:-1:-1;2412:973:1;-1:-1:-1;;;;2412:973:1:o;3390:247::-;3449:6;3502:2;3490:9;3481:7;3477:23;3473:32;3470:52;;;3518:1;3515;3508:12;3470:52;3557:9;3544:23;3576:31;3601:5;3576:31;:::i;:::-;3626:5;3390:247;-1:-1:-1;;;3390:247:1:o;4065:160::-;4130:20;;4186:13;;4179:21;4169:32;;4159:60;;4215:1;4212;4205:12;4159:60;4065:160;;;:::o;4230:315::-;4295:6;4303;4356:2;4344:9;4335:7;4331:23;4327:32;4324:52;;;4372:1;4369;4362:12;4324:52;4411:9;4398:23;4430:31;4455:5;4430:31;:::i;:::-;4480:5;-1:-1:-1;4504:35:1;4535:2;4520:18;;4504:35;:::i;:::-;4494:45;;4230:315;;;;;:::o;4550:831::-;4664:6;4672;4680;4688;4696;4704;4757:3;4745:9;4736:7;4732:23;4728:33;4725:53;;;4774:1;4771;4764:12;4725:53;4813:9;4800:23;4832:31;4857:5;4832:31;:::i;:::-;4882:5;-1:-1:-1;4939:2:1;4924:18;;4911:32;4952:33;4911:32;4952:33;:::i;:::-;5004:7;-1:-1:-1;5062:2:1;5047:18;;5034:32;5089:18;5078:30;;5075:50;;;5121:1;5118;5111:12;5075:50;5160:58;5210:7;5201:6;5190:9;5186:22;5160:58;:::i;:::-;4550:831;;;;-1:-1:-1;5237:8:1;5319:2;5304:18;;5291:32;;5370:3;5355:19;;;5342:33;;-1:-1:-1;4550:831:1;-1:-1:-1;;;;4550:831:1:o;5386:155::-;5445:5;5490:3;5481:6;5476:3;5472:16;5468:26;5465:46;;;5507:1;5504;5497:12;5465:46;-1:-1:-1;5529:6:1;5386:155;-1:-1:-1;5386:155:1:o;5546:1097::-;5703:6;5711;5719;5727;5735;5743;5751;5759;5812:3;5800:9;5791:7;5787:23;5783:33;5780:53;;;5829:1;5826;5819:12;5780:53;5868:9;5855:23;5887:31;5912:5;5887:31;:::i;:::-;5937:5;-1:-1:-1;5994:2:1;5979:18;;5966:32;6007:33;5966:32;6007:33;:::i;:::-;6059:7;-1:-1:-1;6118:2:1;6103:18;;6090:32;6131:33;6090:32;6131:33;:::i;:::-;6183:7;-1:-1:-1;6241:2:1;6226:18;;6213:32;6268:18;6257:30;;6254:50;;;6300:1;6297;6290:12;6254:50;6339:58;6389:7;6380:6;6369:9;6365:22;6339:58;:::i;:::-;6416:8;;-1:-1:-1;6313:84:1;-1:-1:-1;;6498:3:1;6483:19;;6470:33;;-1:-1:-1;6550:3:1;6535:19;;6522:33;;-1:-1:-1;6574:63:1;6629:7;6623:3;6608:19;;6574:63;:::i;:::-;6564:73;;5546:1097;;;;;;;;;;;:::o;6648:955::-;6796:6;6804;6812;6820;6828;6836;6844;6897:3;6885:9;6876:7;6872:23;6868:33;6865:53;;;6914:1;6911;6904:12;6865:53;6953:9;6940:23;6972:31;6997:5;6972:31;:::i;:::-;7022:5;-1:-1:-1;7079:2:1;7064:18;;7051:32;7092:33;7051:32;7092:33;:::i;:::-;7144:7;-1:-1:-1;7202:2:1;7187:18;;7174:32;7229:18;7218:30;;7215:50;;;7261:1;7258;7251:12;7215:50;7300:58;7350:7;7341:6;7330:9;7326:22;7300:58;:::i;:::-;7377:8;;-1:-1:-1;7274:84:1;-1:-1:-1;;7459:2:1;7444:18;;7431:32;;-1:-1:-1;7510:3:1;7495:19;;7482:33;;-1:-1:-1;7534:63:1;7589:7;7583:3;7568:19;;7534:63;:::i;:::-;7524:73;;6648:955;;;;;;;;;;:::o;9156:184::-;9226:6;9279:2;9267:9;9258:7;9254:23;9250:32;9247:52;;;9295:1;9292;9285:12;9247:52;-1:-1:-1;9318:16:1;;9156:184;-1:-1:-1;9156:184:1:o;9345:::-;-1:-1:-1;;;9394:1:1;9387:88;9494:4;9491:1;9484:15;9518:4;9515:1;9508:15;9534:125;9574:4;9602:1;9599;9596:8;9593:34;;;9607:18;;:::i;:::-;-1:-1:-1;9644:9:1;;9534:125::o;9664:271::-;9847:6;9839;9834:3;9821:33;9803:3;9873:16;;9898:13;;;9873:16;9664:271;-1:-1:-1;9664:271:1:o;10277:156::-;10343:20;;10403:4;10392:16;;10382:27;;10372:55;;10423:1;10420;10413:12;10438:1001;10520:6;10573:3;10561:9;10552:7;10548:23;10544:33;10541:53;;;10590:1;10587;10580:12;10541:53;10623:2;10617:9;10665:3;10657:6;10653:16;10735:6;10723:10;10720:22;10699:18;10687:10;10684:34;10681:62;10678:242;;;-1:-1:-1;;;10773:1:1;10766:88;10877:4;10874:1;10867:15;10905:4;10902:1;10895:15;10678:242;10940:10;10936:2;10929:22;;10988:9;10975:23;10967:6;10960:39;11060:2;11049:9;11045:18;11032:32;11027:2;11019:6;11015:15;11008:57;11126:2;11115:9;11111:18;11098:32;11093:2;11085:6;11081:15;11074:57;11164:35;11195:2;11184:9;11180:18;11164:35;:::i;:::-;11159:2;11151:6;11147:15;11140:60;11234:37;11266:3;11255:9;11251:19;11234:37;:::i;:::-;11228:3;11220:6;11216:16;11209:63;11334:3;11323:9;11319:19;11306:33;11300:3;11292:6;11288:16;11281:59;11402:3;11391:9;11387:19;11374:33;11368:3;11360:6;11356:16;11349:59;11427:6;11417:16;;;10438:1001;;;;:::o;13502:168::-;13542:7;13608:1;13604;13600:6;13596:14;13593:1;13590:21;13585:1;13578:9;13571:17;13567:45;13564:71;;;13615:18;;:::i;:::-;-1:-1:-1;13655:9:1;;13502:168::o;13675:274::-;13715:1;13741;13731:189;;-1:-1:-1;;;13773:1:1;13766:88;13877:4;13874:1;13867:15;13905:4;13902:1;13895:15;13731:189;-1:-1:-1;13934:9:1;;13675:274::o
Swarm Source
ipfs://9870dd0dc3fb83baf72036a002768c9388c9b2cbf93b6d7b09369fddefaaf877
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 9.74% | $1 | 5,548.8559 | $5,548.86 | |
ETH | 9.40% | $2,449.08 | 2.1885 | $5,359.71 | |
ETH | 5.65% | $0.000186 | 17,269,888.3361 | $3,217.58 | |
ETH | 4.26% | $0.999489 | 2,429.799 | $2,428.56 | |
ETH | 4.02% | $0.561833 | 4,073.983 | $2,288.9 | |
ETH | 1.95% | $0.265932 | 4,178.1535 | $1,111.1 | |
ETH | 1.75% | $62,385 | 0.016 | $998.14 | |
ETH | 1.72% | $0.000002 | 624,928,643.5247 | $978.82 | |
ETH | 1.69% | $0.063095 | 15,259.2693 | $962.79 | |
ETH | 1.56% | $0.160347 | 5,528.8185 | $886.53 | |
ETH | 1.54% | $0.000623 | 1,410,311.8535 | $878.43 | |
ETH | 1.32% | $1.87 | 403.1778 | $753.94 | |
ETH | 1.22% | $0.999807 | 695.9658 | $695.83 | |
ETH | 1.21% | $2.26 | 304.4457 | $688.05 | |
ETH | 1.11% | $2,449.08 | 0.2574 | $630.41 | |
ETH | 1.03% | $0.007271 | 80,938.1854 | $588.52 | |
ETH | 1.03% | <$0.000001 | 3,872,802,320.6437 | $587.26 | |
ETH | 0.95% | $0.001063 | 510,815.1951 | $542.89 | |
ETH | 0.81% | $0.302927 | 1,525.7394 | $462.19 | |
ETH | 0.77% | $0.041891 | 10,507.8335 | $440.19 | |
ETH | 0.65% | $2,571.92 | 0.1448 | $372.4 | |
ETH | 0.60% | $143.55 | 2.3868 | $342.62 | |
ETH | 0.59% | $0.060519 | 5,546.3607 | $335.66 | |
ETH | 0.58% | $4.16 | 79.361 | $330.14 | |
ETH | 0.55% | $2,449.09 | 0.1287 | $315.11 | |
ETH | 0.52% | $0.076706 | 3,834.34 | $294.12 | |
ETH | 0.50% | $8.92 | 32.1167 | $286.48 | |
ETH | 0.48% | $0.248626 | 1,097.6304 | $272.9 | |
ETH | 0.42% | $4.11 | 58.4288 | $240.14 | |
ETH | 0.42% | $0.078719 | 3,013.358 | $237.21 | |
ETH | 0.40% | $0.284462 | 792.4734 | $225.43 | |
ETH | 0.39% | $0.997049 | 224.8479 | $224.18 | |
ETH | 0.38% | $1,416.97 | 0.1509 | $213.78 | |
ETH | 0.36% | $0.003231 | 64,033.7504 | $206.88 | |
ETH | 0.36% | $7.16 | 28.8128 | $206.3 | |
ETH | 0.36% | $0.003896 | 52,548.8156 | $204.76 | |
ETH | 0.34% | $0.000158 | 1,237,262.4071 | $196.06 | |
ETH | 0.33% | $0.000373 | 503,048.2958 | $187.49 | |
ETH | 0.30% | $0.000011 | 15,800,021.336 | $172.54 | |
ETH | 0.29% | $10.88 | 15.0624 | $163.88 | |
ETH | 0.28% | $0.090906 | 1,724.4714 | $156.77 | |
ETH | 0.26% | $5.35 | 27.756 | $148.49 | |
ETH | 0.26% | $0.432785 | 339.526 | $146.94 | |
ETH | 0.26% | $0.000149 | 983,610.2988 | $146.12 | |
ETH | 0.25% | $1.77 | 81 | $143.37 | |
ETH | 0.25% | $37.16 | 3.8546 | $143.24 | |
ETH | 0.25% | $0.009786 | 14,543.7046 | $142.32 | |
ETH | 0.25% | $2.41 | 58.4099 | $140.77 | |
ETH | 0.23% | $0.023094 | 5,743.3115 | $132.64 | |
ETH | 0.23% | $0.197601 | 656.9663 | $129.82 | |
ETH | 0.21% | $0.046122 | 2,616.895 | $120.7 | |
ETH | 0.21% | $76.22 | 1.5824 | $120.61 | |
ETH | 0.20% | $47.95 | 2.3861 | $114.41 | |
ETH | 0.20% | $0.189888 | 598.2882 | $113.61 | |
ETH | 0.20% | $0.002981 | 37,817.5345 | $112.73 | |
ETH | 0.19% | $0.266713 | 414.1965 | $110.47 | |
ETH | 0.19% | <$0.000001 | 285,190,437.4095 | $109.43 | |
ETH | 0.19% | $0.255158 | 426.5896 | $108.85 | |
ETH | 0.19% | $62,507 | 0.00172956 | $108.11 | |
ETH | 0.18% | $0.740736 | 136.8257 | $101.35 | |
ETH | 0.18% | $0.015493 | 6,540.001 | $101.32 | |
ETH | 0.18% | $667.57 | 0.1507 | $100.6 | |
ETH | 0.17% | <$0.000001 | 9,392,523,220.4146 | $96.73 | |
ETH | 0.17% | $0.113581 | 846.554 | $96.15 | |
ETH | 0.17% | $0.00001 | 9,712,515.5995 | $94.89 | |
ETH | 0.16% | $22.13 | 4.2401 | $93.83 | |
ETH | 0.16% | $2.14 | 43.6492 | $93.41 | |
ETH | 0.16% | $1.4 | 65.7434 | $91.98 | |
ETH | 0.16% | $0.989253 | 91.5206 | $90.54 | |
ETH | 0.15% | $1.22 | 71.9438 | $87.77 | |
ETH | 0.15% | $0.000142 | 613,561.487 | $87.42 | |
ETH | 0.15% | $17 | 5.1162 | $86.98 | |
ETH | 0.15% | $0.622218 | 136.8541 | $85.15 | |
ETH | 0.15% | $0.051405 | 1,620.3184 | $83.29 | |
ETH | 0.15% | $2.34 | 35.5316 | $83.14 | |
ETH | 0.14% | $0.02589 | 3,175.4235 | $82.21 | |
ETH | 0.14% | <$0.000001 | 5,691,406,387.3163 | $81.11 | |
ETH | 0.14% | $0.110685 | 720.8841 | $79.79 | |
ETH | 0.14% | $0.003574 | 22,167.5802 | $79.23 | |
ETH | 0.13% | <$0.000001 | 16,773,297,888.6876 | $76.15 | |
ETH | 0.13% | $0.171548 | 425.8212 | $73.05 | |
ETH | 0.13% | $0.008493 | 8,570.4955 | $72.79 | |
ETH | 0.13% | $0.459891 | 157.6385 | $72.5 | |
ETH | 0.13% | $0.000017 | 4,231,649.1669 | $71.98 | |
ETH | 0.12% | $0.000001 | 83,353,465.6126 | $70.74 | |
ETH | 0.12% | $581.15 | 0.12 | $69.72 | |
ETH | 0.12% | $3.38 | 20.4578 | $69.15 | |
ETH | 0.12% | $53.97 | 1.2762 | $68.88 | |
ETH | 0.12% | $0.690774 | 98.2713 | $67.88 | |
ETH | 0.12% | $0.007946 | 8,535.6008 | $67.83 | |
ETH | 0.11% | $0.014864 | 4,358.5888 | $64.78 | |
ETH | 0.11% | $22.71 | 2.8353 | $64.39 | |
ETH | 0.11% | $0.270683 | 237.4733 | $64.28 | |
ETH | 0.11% | <$0.000001 | 4,467,158,276.8727 | $63.98 | |
ETH | 0.11% | $0.059876 | 1,058.1038 | $63.35 | |
ETH | 0.11% | <$0.000001 | 54,661,125,756.009 | $61.93 | |
ETH | 0.11% | $4,107.9 | 0.015 | $61.74 | |
ETH | 0.10% | $0.006271 | 9,490.3884 | $59.51 | |
ETH | 0.10% | $0.000037 | 1,615,000 | $59.46 | |
ETH | 0.10% | $0.328379 | 177.869 | $58.41 | |
ETH | 0.10% | $0.288051 | 199.7921 | $57.55 | |
ETH | 0.10% | $0.63262 | 90.9373 | $57.53 | |
ETH | 0.10% | $0.78753 | 71.8596 | $56.59 | |
ETH | 0.10% | $0.000008 | 7,066,924.7656 | $55.9 | |
ETH | 0.10% | <$0.000001 | 3,369,230,090.9358 | $55.16 | |
ETH | 0.10% | $0.101487 | 535.1523 | $54.31 | |
ETH | 0.09% | $0.031827 | 1,682.0709 | $53.54 | |
ETH | 0.09% | $0.475666 | 110.6619 | $52.64 | |
ETH | 0.09% | $7.78 | 6.6188 | $51.49 | |
ETH | 0.09% | $0.012142 | 4,190.3572 | $50.88 | |
ETH | 0.09% | $0.233518 | 216.4782 | $50.55 | |
ETH | 0.09% | $0.027284 | 1,779.1894 | $48.54 | |
ETH | 0.08% | <$0.000001 | 3,145,000,000 | $47.91 | |
ETH | 0.08% | $0.000007 | 7,146,844.4193 | $47.8 | |
ETH | 0.08% | $1.02 | 46.92 | $47.72 | |
ETH | 0.08% | $0.031465 | 1,515.3836 | $47.68 | |
ETH | 0.08% | $1.87 | 24.923 | $46.67 | |
ETH | 0.08% | $0.000124 | 370,674.4047 | $46.12 | |
ETH | 0.08% | $1.02 | 44.294 | $45.27 | |
ETH | 0.08% | $16.71 | 2.7018 | $45.15 | |
ETH | 0.08% | $0.000471 | 95,400.719 | $44.94 | |
ETH | 0.08% | $0.525227 | 84.6238 | $44.45 | |
ETH | 0.08% | $0.153335 | 279.2995 | $42.83 | |
ETH | 0.07% | <$0.000001 | 4,506,919,451.0494 | $42.62 | |
ETH | 0.07% | $2,649.13 | 0.016 | $42.44 | |
ETH | 0.07% | $0.999808 | 40.75 | $40.74 | |
ETH | 0.07% | $0.37627 | 107.5811 | $40.48 | |
ETH | 0.07% | $0.237304 | 167.0614 | $39.64 | |
ETH | 0.07% | $0.998409 | 39.1918 | $39.13 | |
ETH | 0.07% | $0.028961 | 1,335.7572 | $38.68 | |
ETH | 0.07% | $0.00053 | 72,674.8363 | $38.5 | |
ETH | 0.07% | $1.12 | 34 | $37.99 | |
ETH | 0.07% | $0.01221 | 3,085.6486 | $37.68 | |
ETH | 0.07% | $1 | 37.515 | $37.52 | |
ETH | 0.06% | $2.73 | 13.5139 | $36.89 | |
ETH | 0.06% | $0.28063 | 130.9433 | $36.75 | |
ETH | 0.06% | $43.01 | 0.85 | $36.56 | |
ETH | 0.06% | $0.021065 | 1,734.1824 | $36.53 | |
ETH | 0.06% | $0.265703 | 136.5323 | $36.28 | |
ETH | 0.06% | <$0.000001 | 256,974,863.2515 | $36.22 | |
ETH | 0.06% | $1.15 | 31.395 | $36.1 | |
ETH | 0.06% | $0.195561 | 182.2103 | $35.63 | |
ETH | 0.06% | $1.46 | 24.2598 | $35.42 | |
ETH | 0.06% | $0.119911 | 294.6812 | $35.34 | |
ETH | 0.06% | $1.41 | 24.9213 | $35.14 | |
ETH | 0.06% | $0.000085 | 398,025.7442 | $34 | |
ETH | 0.06% | $1.49 | 22.7802 | $33.94 | |
ETH | 0.06% | <$0.000001 | 2,107,716,428.8369 | $33.35 | |
ETH | 0.06% | $1.35 | 24.6732 | $33.31 | |
ETH | 0.06% | $0.203517 | 162.948 | $33.16 | |
ETH | 0.06% | $168.12 | 0.1968 | $33.08 | |
ETH | 0.06% | <$0.000001 | 8,886,573,053.1923 | $32.46 | |
ETH | 0.06% | $0.025053 | 1,264.7357 | $31.69 | |
ETH | 0.06% | $0.002742 | 11,530.2011 | $31.61 | |
ETH | 0.06% | $0.01024 | 3,083.3809 | $31.57 | |
ETH | 0.06% | $0.012296 | 2,562.3121 | $31.51 | |
ETH | 0.05% | $2,497.31 | 0.0125 | $31.33 | |
ETH | 0.05% | $62,436 | 0.00049705 | $31.03 | |
ETH | 0.05% | <$0.000001 | 3,665,646,073.8293 | $30.93 | |
ETH | 0.05% | $0.00012 | 257,940.9594 | $30.83 | |
ETH | 0.05% | $0.000015 | 2,069,299.4659 | $30.69 | |
ETH | 0.05% | <$0.000001 | 180,124,087.1507 | $30.62 | |
ETH | 0.05% | $0.349511 | 85.9125 | $30.03 | |
ETH | 0.05% | $0.707141 | 41.9912 | $29.69 | |
ETH | 0.05% | $26.8 | 1.1062 | $29.65 | |
ETH | 0.05% | $0.225729 | 131.2734 | $29.63 | |
ETH | 0.05% | $0.328697 | 90.143 | $29.63 | |
ETH | 0.05% | $1.12 | 26.2885 | $29.44 | |
ETH | 0.05% | $0.042016 | 694.9693 | $29.2 | |
ETH | 0.05% | <$0.000001 | 7,081,470,123.6697 | $29.14 | |
ETH | 0.05% | $16.38 | 1.7748 | $29.07 | |
ETH | 0.05% | $0.008338 | 3,482.9731 | $29.04 | |
ETH | 0.05% | $0.287279 | 100.6973 | $28.93 | |
ETH | 0.05% | $0.246445 | 116.0789 | $28.61 | |
ETH | 0.05% | $0.988409 | 28.8035 | $28.47 | |
ETH | 0.05% | $0.119647 | 236.9665 | $28.35 | |
ETH | 0.05% | $0.049839 | 566.2762 | $28.22 | |
ETH | 0.05% | $1.67 | 16.8839 | $28.2 | |
ETH | 0.05% | $0.020181 | 1,387.7124 | $28.01 | |
ETH | 0.05% | $0.38478 | 72.7191 | $27.98 | |
ETH | 0.05% | $0.159694 | 173.7432 | $27.75 | |
ETH | 0.05% | $1.01 | 27.381 | $27.71 | |
ETH | 0.05% | $0.000011 | 2,578,319.0915 | $27.67 | |
ETH | 0.05% | $36.8 | 0.7517 | $27.66 | |
ETH | 0.05% | $0.00002 | 1,383,129.8813 | $27.6 | |
ETH | 0.05% | $0.092883 | 292.9458 | $27.21 | |
ETH | 0.05% | $2,890.85 | 0.00938585 | $27.13 | |
ETH | 0.05% | $0.227211 | 119.2146 | $27.09 | |
ETH | 0.05% | $0.745603 | 36.0692 | $26.89 | |
ETH | 0.05% | $0.182131 | 147.0737 | $26.79 | |
ETH | 0.05% | $0.295606 | 88.8848 | $26.27 | |
ETH | 0.05% | $0.057353 | 455.2901 | $26.11 | |
ETH | 0.05% | $0.003282 | 7,843.2438 | $25.74 | |
ETH | 0.05% | $0.879973 | 29.1707 | $25.67 | |
ETH | 0.05% | $0.000009 | 2,821,772.7631 | $25.67 | |
ETH | 0.04% | $1 | 25.5 | $25.5 | |
ETH | 0.04% | $0.072561 | 346.2867 | $25.13 | |
ETH | 0.04% | $19.95 | 1.2538 | $25.02 | |
ETH | 0.04% | $0.101808 | 244.6315 | $24.91 | |
ETH | 0.04% | $4.96 | 5.01 | $24.85 | |
ETH | 0.04% | $0.118082 | 209.8126 | $24.78 | |
ETH | 0.04% | $0.069734 | 353.454 | $24.65 | |
ETH | 0.04% | $0.001682 | 14,584.4165 | $24.53 | |
ETH | 0.04% | $0.253096 | 95.8507 | $24.26 | |
ETH | 0.04% | $1.09 | 22.0239 | $24.03 | |
ETH | 0.04% | $0.242177 | 99.1015 | $24 | |
ETH | 0.04% | $0.028662 | 833.994 | $23.9 | |
ETH | 0.04% | $9.69 | 2.4021 | $23.29 | |
ETH | 0.04% | $0.30127 | 77.0389 | $23.21 | |
ETH | 0.04% | $0.461414 | 50.0514 | $23.09 | |
ETH | 0.04% | $0.024386 | 943.5 | $23.01 | |
ETH | 0.04% | $1.97 | 11.5217 | $22.7 | |
ETH | 0.04% | $0.043022 | 518.9466 | $22.33 | |
ETH | 0.04% | $0.010692 | 2,058.0033 | $22 | |
ETH | 0.04% | $4.63 | 4.7233 | $21.87 | |
ETH | 0.04% | $0.001905 | 11,428.3612 | $21.77 | |
ETH | 0.04% | $0.089734 | 242.1811 | $21.73 | |
ETH | 0.04% | $0.114682 | 188.6062 | $21.63 | |
ETH | 0.04% | $0.022558 | 954.0503 | $21.52 | |
ETH | 0.04% | $0.316481 | 67.1918 | $21.26 | |
ETH | 0.04% | $0.140356 | 149.3154 | $20.96 | |
ETH | 0.04% | $11.18 | 1.8662 | $20.86 | |
ETH | 0.04% | $5.22 | 3.9923 | $20.84 | |
ETH | 0.04% | $4.63 | 4.4969 | $20.82 | |
ETH | 0.04% | $0.022632 | 916.3084 | $20.74 | |
ETH | 0.04% | $0.131409 | 157.6266 | $20.71 | |
ETH | 0.04% | $0.113629 | 182.1424 | $20.7 | |
ETH | 0.04% | $0.002942 | 7,032.5598 | $20.69 | |
ETH | 0.04% | $0.001158 | 17,622.9241 | $20.41 | |
ETH | 0.04% | $0.998386 | 20.4 | $20.37 | |
ETH | 0.04% | $585.1 | 0.0346 | $20.23 | |
ETH | 0.04% | $0.011754 | 1,707.9668 | $20.08 | |
ETH | 0.03% | $0.062233 | 318.7796 | $19.84 | |
ETH | 0.03% | $0.609653 | 32.4237 | $19.77 | |
ETH | 0.03% | $1.96 | 9.9501 | $19.5 | |
ETH | 0.03% | $0.111152 | 175.2049 | $19.47 | |
ETH | 0.03% | $0.046753 | 413.1872 | $19.32 | |
ETH | 0.03% | $1.44 | 13.0408 | $18.78 | |
ETH | 0.03% | $0.000007 | 2,849,219.0696 | $18.75 | |
ETH | 0.03% | $2.04 | 9.1736 | $18.71 | |
ETH | 0.03% | $0.166191 | 111.8626 | $18.59 | |
ETH | 0.03% | $1.37 | 13.5065 | $18.5 | |
ETH | 0.03% | <$0.000001 | 64,314,650,040.1513 | $18.37 | |
ETH | 0.03% | $2,740.54 | 0.0066022 | $18.09 | |
ETH | 0.03% | <$0.000001 | 144,355,427.6863 | $18 | |
ETH | 0.03% | $0.006433 | 2,796.5 | $17.99 | |
ETH | 0.03% | $0.841561 | 21.3544 | $17.97 | |
ETH | 0.03% | $0.518426 | 34.3858 | $17.83 | |
ETH | 0.03% | $0.155627 | 114.5435 | $17.83 | |
ETH | 0.03% | $0.000017 | 1,024,412.4254 | $17.62 | |
ETH | 0.03% | $1.15 | 15.2304 | $17.54 | |
ETH | 0.03% | $0.002017 | 8,666.3326 | $17.48 | |
ETH | 0.03% | $0.015691 | 1,109.1696 | $17.4 | |
ETH | 0.03% | $0.149519 | 115.8497 | $17.32 | |
ETH | 0.03% | $0.999403 | 17.3128 | $17.3 | |
ETH | 0.03% | $0.998578 | 17.3004 | $17.28 | |
ETH | 0.03% | $0.308258 | 55.8868 | $17.23 | |
ETH | 0.03% | $3 | 5.7286 | $17.19 | |
ETH | 0.03% | $0.00048 | 35,772.4454 | $17.18 | |
ETH | 0.03% | $2.65 | 6.4776 | $17.16 | |
ETH | 0.03% | $5.7 | 3.0056 | $17.13 | |
ETH | 0.03% | $0.00041 | 41,767.0719 | $17.12 | |
ETH | 0.03% | $16.69 | 1.02 | $17.02 | |
ETH | 0.03% | $0.02218 | 752.3071 | $16.69 | |
ETH | 0.03% | $3.08 | 5.3857 | $16.58 | |
ETH | 0.03% | $0.133572 | 123.2817 | $16.47 | |
ETH | 0.03% | $0.958368 | 17.1739 | $16.46 | |
ETH | 0.03% | $0.452632 | 35.7761 | $16.19 | |
ETH | 0.03% | $0.54456 | 29.648 | $16.15 | |
ETH | 0.03% | $0.000846 | 18,897.0545 | $15.98 | |
ETH | 0.03% | $1.44 | 10.9791 | $15.85 | |
ETH | 0.03% | $0.996962 | 15.773 | $15.73 | |
ETH | 0.03% | $0.524977 | 29.8754 | $15.68 | |
ETH | 0.03% | $0.000012 | 1,336,052.7946 | $15.64 | |
ETH | 0.03% | $0.004716 | 3,258.8715 | $15.37 | |
ETH | 0.03% | $1.19 | 12.8561 | $15.33 | |
ETH | 0.03% | $0.001301 | 11,767.4767 | $15.31 | |
ETH | 0.03% | <$0.000001 | 207,963,637,365.318 | $15.26 | |
ETH | 0.03% | $4.27 | 3.5354 | $15.11 | |
ETH | 0.03% | $0.052569 | 286.236 | $15.05 | |
ETH | 0.03% | $0.075294 | 197.1008 | $14.84 | |
ETH | 0.03% | $3.43 | 4.32 | $14.82 | |
ETH | 0.03% | $2,457.55 | 0.0060271 | $14.81 | |
ETH | 0.03% | $0.038912 | 378.7128 | $14.74 | |
ETH | 0.03% | $0.020735 | 708.7952 | $14.7 | |
ETH | 0.03% | $0.017146 | 850.6958 | $14.59 | |
ETH | 0.03% | $0.006253 | 2,328.8229 | $14.56 | |
ETH | 0.03% | $0.011463 | 1,259.002 | $14.43 | |
ETH | 0.03% | $0.083543 | 172.1809 | $14.38 | |
ETH | 0.03% | $1.08 | 13.2061 | $14.26 | |
ETH | 0.02% | $0.102085 | 139.381 | $14.23 | |
ETH | 0.02% | <$0.000001 | 280,588,004.2463 | $14.15 | |
ETH | 0.02% | $0.334875 | 42.0568 | $14.08 | |
ETH | 0.02% | <$0.000001 | 11,101,258,362.6911 | $14.04 | |
ETH | 0.02% | $0.000007 | 2,012,873.2416 | $13.97 | |
ETH | 0.02% | $0.180454 | 77.2878 | $13.95 | |
ETH | 0.02% | $0.618081 | 22.5021 | $13.91 | |
ETH | 0.02% | $2.7 | 5.1225 | $13.83 | |
ETH | 0.02% | $0.053007 | 259.3451 | $13.75 | |
ETH | 0.02% | $0.089391 | 151.7083 | $13.56 | |
ETH | 0.02% | $0.053064 | 254.1677 | $13.49 | |
ETH | 0.02% | $0.121982 | 109.5995 | $13.37 | |
ETH | 0.02% | $0.989198 | 13.3023 | $13.16 | |
ETH | 0.02% | $0.011471 | 1,146.9006 | $13.16 | |
ETH | 0.02% | $143.55 | 0.0902 | $12.95 | |
ETH | 0.02% | $0.000037 | 350,954.5206 | $12.87 | |
ETH | 0.02% | $1.1 | 11.5806 | $12.74 | |
ETH | 0.02% | $0.019701 | 644.573 | $12.7 | |
ETH | 0.02% | $42.9 | 0.2951 | $12.66 | |
ETH | 0.02% | $0.000001 | 10,866,821.9193 | $12.57 | |
ETH | 0.02% | $0.047026 | 264.8101 | $12.45 | |
ETH | 0.02% | $0.035195 | 350.493 | $12.34 | |
ETH | 0.02% | $0.211424 | 58.1284 | $12.29 | |
ETH | 0.02% | $0.014477 | 840.1892 | $12.16 | |
ETH | 0.02% | $0.015906 | 764.0285 | $12.15 | |
ETH | 0.02% | $0.035586 | 340.4262 | $12.11 | |
ETH | 0.02% | $0.000084 | 144,202 | $12.06 | |
ETH | 0.02% | $0.001569 | 7,682.2161 | $12.06 | |
ETH | 0.02% | <$0.000001 | 391,718,019.443 | $11.94 | |
ETH | 0.02% | $1.68 | 7.0961 | $11.92 | |
ETH | 0.02% | $1.01 | 11.6746 | $11.84 | |
ETH | 0.02% | $0.000004 | 3,037,364.5381 | $11.73 | |
ETH | 0.02% | $0.000878 | 13,349.7064 | $11.72 | |
ETH | 0.02% | $0.086352 | 135.6043 | $11.71 | |
ETH | 0.02% | $0.532355 | 21.9645 | $11.69 | |
ETH | 0.02% | $0.013074 | 890.8358 | $11.65 | |
ETH | 0.02% | $0.006481 | 1,790.8883 | $11.61 | |
ETH | 0.02% | $270.5 | 0.0427 | $11.56 | |
ETH | 0.02% | $0.892919 | 12.8178 | $11.45 | |
ETH | 0.02% | $0.002393 | 4,742 | $11.35 | |
ETH | 0.02% | $0.079776 | 141.4624 | $11.29 | |
ETH | 0.02% | $0.99048 | 11.05 | $10.94 | |
ETH | 0.02% | $0.002255 | 4,847.4202 | $10.93 | |
ETH | 0.02% | $2.14 | 5.0745 | $10.86 | |
ETH | 0.02% | $0.398356 | 27.2391 | $10.85 | |
ETH | 0.02% | $0.065538 | 165.2376 | $10.83 | |
ETH | 0.02% | $0.001354 | 7,954.6727 | $10.77 | |
ETH | 0.02% | $2,490.58 | 0.00425 | $10.58 | |
ETH | 0.02% | $0.006589 | 1,604.7358 | $10.57 | |
ETH | 0.02% | $2,572.86 | 0.0041021 | $10.55 | |
ETH | 0.02% | $13.52 | 0.7734 | $10.46 | |
ETH | 0.02% | $0.081029 | 128.4472 | $10.41 | |
ETH | 0.02% | $0.0203 | 512.151 | $10.4 | |
ETH | 0.02% | $0.000002 | 5,927,265.0688 | $10.22 | |
ETH | 0.02% | $0.027704 | 366.3789 | $10.15 | |
ETH | 0.02% | $0.019282 | 525.0302 | $10.12 | |
ETH | 0.02% | $1.16 | 8.721 | $10.12 | |
ETH | 0.02% | $1.28 | 7.8623 | $10.05 | |
ETH | 0.02% | $0.042507 | 235.8516 | $10.03 | |
ETH | 0.02% | $0.223816 | 44.4613 | $9.95 | |
ETH | 0.02% | <$0.000001 | 20,919,539.5734 | $9.92 | |
ETH | 0.02% | $0.68759 | 14.3518 | $9.87 | |
ETH | 0.02% | $0.001041 | 9,469.7797 | $9.86 | |
ETH | 0.02% | $0.024384 | 403.75 | $9.84 | |
ETH | 0.02% | $0.01603 | 613.5748 | $9.84 | |
ETH | 0.02% | $33.69 | 0.2912 | $9.81 | |
ETH | 0.02% | $44.58 | 0.219 | $9.76 | |
ETH | 0.02% | $0.644729 | 15.0835 | $9.72 | |
ETH | 0.02% | $0.00867 | 1,109.1302 | $9.62 | |
ETH | 0.02% | $0.000872 | 11,011.0086 | $9.6 | |
ETH | 0.02% | $0.121134 | 79.0852 | $9.58 | |
ETH | 0.02% | $0.000001 | 18,766,116.756 | $9.56 | |
ETH | 0.02% | $0.000008 | 1,133,059.8591 | $9.46 | |
ETH | 0.02% | <$0.000001 | 107,828,561.703 | $9.43 | |
ETH | 0.02% | $0.467806 | 20.0488 | $9.38 | |
ETH | 0.02% | $0.000014 | 653,076.867 | $9.33 | |
ETH | 0.02% | $0.000778 | 11,967.1442 | $9.31 | |
ETH | 0.02% | $1.54 | 6.0256 | $9.29 | |
ETH | 0.02% | $0.151252 | 60.6372 | $9.17 | |
ETH | 0.02% | $1.13 | 8.1065 | $9.16 | |
ETH | 0.02% | $0.000005 | 1,717,283.8027 | $9.08 | |
ETH | 0.02% | $0.126435 | 71.7186 | $9.07 | |
ETH | 0.02% | $0.023399 | 386.4744 | $9.04 | |
ETH | 0.02% | <$0.000001 | 34,528,094.327 | $9.01 | |
ETH | 0.02% | $0.972754 | 9.2585 | $9.01 | |
ETH | 0.02% | <$0.000001 | 1,478,453,390.7652 | $8.9 | |
ETH | 0.02% | $0.334263 | 26.5815 | $8.89 | |
ETH | 0.02% | $0.000389 | 22,723.3983 | $8.84 | |
ETH | 0.02% | $0.669188 | 13.1296 | $8.79 | |
ETH | 0.02% | $0.018982 | 462.5766 | $8.78 | |
ETH | 0.02% | $0.004982 | 1,757.0218 | $8.75 | |
ETH | 0.02% | $0.001945 | 4,462.5 | $8.68 | |
ETH | 0.02% | $0.00049 | 17,700.8237 | $8.68 | |
ETH | 0.02% | $0.989936 | 8.6445 | $8.56 | |
ETH | 0.02% | $0.013069 | 654.791 | $8.56 | |
ETH | 0.01% | $62,635 | 0.000136 | $8.52 | |
ETH | 0.01% | $0.070501 | 120.1535 | $8.47 | |
ETH | 0.01% | $0.123001 | 68 | $8.36 | |
ETH | 0.01% | $0.407191 | 20.5017 | $8.35 | |
ETH | 0.01% | $0.081189 | 101.62 | $8.25 | |
ETH | 0.01% | $0.000064 | 127,156.1057 | $8.19 | |
ETH | 0.01% | $0.04143 | 196.8685 | $8.16 | |
ETH | 0.01% | $0.307346 | 26.4026 | $8.11 | |
ETH | 0.01% | $0.000182 | 44,440.4202 | $8.11 | |
ETH | 0.01% | $0.037929 | 213.3868 | $8.09 | |
ETH | 0.01% | $0.118356 | 68.3036 | $8.08 | |
ETH | 0.01% | $12.05 | 0.6708 | $8.08 | |
ETH | 0.01% | $0.000194 | 41,660.9815 | $8.07 | |
ETH | 0.01% | $0.948817 | 8.4858 | $8.05 | |
ETH | 0.01% | $0.001464 | 5,489.3784 | $8.04 | |
ETH | 0.01% | $0.019273 | 416.0077 | $8.02 | |
ETH | 0.01% | $1.08 | 7.4008 | $8.02 | |
ETH | 0.01% | $0.000001 | 7,015,356.8008 | $8 | |
ETH | 0.01% | $0.341119 | 23.3237 | $7.96 | |
ETH | 0.01% | $0.00054 | 14,737.2924 | $7.96 | |
ETH | 0.01% | $21.61 | 0.3668 | $7.93 | |
ETH | 0.01% | $0.050189 | 157.6224 | $7.91 | |
ETH | 0.01% | $0.000137 | 57,419.0543 | $7.85 | |
ETH | 0.01% | <$0.000001 | 698,158,398.8623 | $7.81 | |
ETH | 0.01% | $0.000004 | 1,932,904.0345 | $7.71 | |
ETH | 0.01% | $0.001605 | 4,806.9331 | $7.71 | |
ETH | 0.01% | $0.004577 | 1,679.0344 | $7.68 | |
ETH | 0.01% | $0.000448 | 17,000 | $7.62 | |
ETH | 0.01% | $0.025606 | 297.5 | $7.62 | |
ETH | 0.01% | $0.141927 | 53.1575 | $7.54 | |
ETH | 0.01% | $0.617923 | 12.1527 | $7.51 | |
ETH | 0.01% | $0.113443 | 65.5194 | $7.43 | |
ETH | 0.01% | $0.000002 | 4,141,027.3347 | $7.37 | |
ETH | 0.01% | $0.001873 | 3,913.5125 | $7.33 | |
ETH | 0.01% | $1.98 | 3.6826 | $7.29 | |
ETH | 0.01% | $0.007025 | 1,037.0734 | $7.28 | |
ETH | 0.01% | $0.052399 | 138.2433 | $7.24 | |
ETH | 0.01% | $0.042461 | 170.5927 | $7.24 | |
ETH | 0.01% | $0.011593 | 619.7828 | $7.18 | |
ETH | 0.01% | $0.000003 | 2,473,966.9937 | $7.17 | |
ETH | 0.01% | <$0.000001 | 812,807,335.3001 | $7.16 | |
ETH | 0.01% | $836.47 | 0.0085 | $7.11 | |
ETH | 0.01% | $0.003345 | 2,125 | $7.11 | |
ETH | 0.01% | $0.039722 | 178.4376 | $7.09 | |
ETH | 0.01% | $12.91 | 0.5464 | $7.05 | |
ETH | 0.01% | $15.98 | 0.4399 | $7.03 | |
ETH | 0.01% | $0.000021 | 327,151.1437 | $6.96 | |
ETH | 0.01% | $0.133732 | 51.8083 | $6.93 | |
ETH | 0.01% | $2.17 | 3.1393 | $6.81 | |
ETH | 0.01% | $2.94 | 2.2744 | $6.68 | |
ETH | 0.01% | $0.334017 | 19.7277 | $6.59 | |
ETH | 0.01% | $0.012331 | 531.0794 | $6.55 | |
ETH | 0.01% | $0.253734 | 25.6249 | $6.5 | |
ETH | 0.01% | $0.011693 | 549.5251 | $6.43 | |
ETH | 0.01% | $0.060439 | 105.9919 | $6.41 | |
ETH | 0.01% | $0.999881 | 6.3998 | $6.4 | |
ETH | 0.01% | <$0.000001 | 24,463,879.9844 | $6.38 | |
ETH | 0.01% | $1.6 | 3.9502 | $6.32 | |
ETH | 0.01% | $0.000043 | 148,556.2803 | $6.31 | |
ETH | 0.01% | $0.081446 | 77.2673 | $6.29 | |
ETH | 0.01% | $0.255681 | 24.1136 | $6.17 | |
ETH | 0.01% | $0.274032 | 22.4546 | $6.15 | |
ETH | 0.01% | <$0.000001 | 387,906,250.7352 | $6.11 | |
ETH | 0.01% | $0.000074 | 82,550.6273 | $6.11 | |
ETH | 0.01% | $0.000947 | 6,445.7955 | $6.11 | |
ETH | 0.01% | $0.111161 | 54.7155 | $6.08 | |
ETH | 0.01% | $0.000001 | 6,943,156.1275 | $5.97 | |
ETH | 0.01% | $0.000001 | 6,397,045.7673 | $5.92 | |
ETH | 0.01% | $0.000349 | 16,807.8605 | $5.87 | |
ETH | 0.01% | $0.999619 | 5.8668 | $5.86 | |
ETH | 0.01% | $0.275291 | 21.25 | $5.85 | |
ETH | 0.01% | $0.027027 | 215.2231 | $5.82 | |
ETH | 0.01% | $1.46 | 3.9839 | $5.82 | |
ETH | 0.01% | <$0.000001 | 44,003,885.558 | $5.8 | |
ETH | 0.01% | $1.68 | 3.4339 | $5.78 | |
ETH | 0.01% | $0.046291 | 123.8092 | $5.73 | |
ETH | 0.01% | $0.213926 | 26.7391 | $5.72 | |
ETH | 0.01% | <$0.000001 | 2,149,541,949.6776 | $5.72 | |
ETH | <0.01% | $1.9 | 2.9724 | $5.65 | |
ETH | <0.01% | $8.28 | 0.6802 | $5.63 | |
ETH | <0.01% | $0.037404 | 150.2847 | $5.62 | |
ETH | <0.01% | $0.005397 | 1,030.5698 | $5.56 | |
ETH | <0.01% | $0.347324 | 16.0073 | $5.56 | |
ETH | <0.01% | $0.050066 | 110.5595 | $5.54 | |
ETH | <0.01% | $0.467302 | 11.7881 | $5.51 | |
ETH | <0.01% | <$0.000001 | 45,050,000,000 | $5.5 | |
ETH | <0.01% | $0.126446 | 43.4467 | $5.49 | |
ETH | <0.01% | $0.004694 | 1,156.3202 | $5.43 | |
ETH | <0.01% | $0.039151 | 137.8533 | $5.4 | |
ETH | <0.01% | $0.208687 | 25.517 | $5.33 | |
ETH | <0.01% | $0.058871 | 90.1801 | $5.31 | |
ETH | <0.01% | $0.077007 | 67.6776 | $5.21 | |
ETH | <0.01% | $0.115787 | 44.622 | $5.17 | |
ETH | <0.01% | <$0.000001 | 13,228,765.685 | $5.12 | |
ETH | <0.01% | <$0.000001 | 2,899,880,472.6245 | $5.07 | |
ETH | <0.01% | $0.036847 | 137.4568 | $5.06 | |
ETH | <0.01% | $0.044511 | 112.764 | $5.02 | |
ETH | <0.01% | $595.15 | 0.00821634 | $4.89 | |
ETH | <0.01% | $0.28146 | 17.3575 | $4.89 | |
ETH | <0.01% | $10.63 | 0.459 | $4.88 | |
ETH | <0.01% | $0.458056 | 10.6038 | $4.86 | |
ETH | <0.01% | $0.073759 | 65.3668 | $4.82 | |
ETH | <0.01% | $0.142067 | 33.7045 | $4.79 | |
ETH | <0.01% | $0.915389 | 5.18 | $4.74 | |
ETH | <0.01% | $0.000404 | 11,689.2509 | $4.72 | |
ETH | <0.01% | $0.003183 | 1,472.9484 | $4.69 | |
ETH | <0.01% | <$0.000001 | 3,665,333,705.4162 | $4.67 | |
ETH | <0.01% | $0.00123 | 3,776.8312 | $4.65 | |
ETH | <0.01% | $0.036392 | 127.5 | $4.64 | |
ETH | <0.01% | $0.000396 | 11,625.6176 | $4.6 | |
ETH | <0.01% | <$0.000001 | 511,446,987.2353 | $4.55 | |
ETH | <0.01% | $0.004353 | 1,044.6496 | $4.55 | |
ETH | <0.01% | $0.018427 | 246.7015 | $4.55 | |
ETH | <0.01% | $0.000267 | 16,822.4467 | $4.49 | |
ETH | <0.01% | $0.000167 | 26,847.7395 | $4.49 | |
ETH | <0.01% | $1.11 | 4.0359 | $4.48 | |
ETH | <0.01% | $0.084743 | 52.8101 | $4.48 | |
ETH | <0.01% | $0.052289 | 85 | $4.44 | |
ETH | <0.01% | $68.55 | 0.0648 | $4.44 | |
ETH | <0.01% | $3.16 | 1.3949 | $4.41 | |
ETH | <0.01% | $0.260041 | 16.9167 | $4.4 | |
ETH | <0.01% | $0.000541 | 8,112.4709 | $4.39 | |
ETH | <0.01% | $0.000011 | 388,782.9786 | $4.36 | |
ETH | <0.01% | $0.379796 | 11.4359 | $4.34 | |
ETH | <0.01% | $0.002188 | 1,971.24 | $4.31 | |
ETH | <0.01% | $0.004764 | 901.2159 | $4.29 | |
ETH | <0.01% | $6.39 | 0.6718 | $4.29 | |
ETH | <0.01% | $2,448.55 | 0.0017495 | $4.28 | |
ETH | <0.01% | $4.61 | 0.926 | $4.27 | |
ETH | <0.01% | $0.000001 | 3,339,918.1582 | $4.26 | |
ETH | <0.01% | $0.009342 | 455.6313 | $4.26 | |
ETH | <0.01% | $0.249037 | 17 | $4.23 | |
ETH | <0.01% | $1.77 | 2.3903 | $4.22 | |
ETH | <0.01% | $0.004307 | 970.9301 | $4.18 | |
ETH | <0.01% | $0.171554 | 24.3644 | $4.18 | |
ETH | <0.01% | $5.44 | 0.7678 | $4.18 | |
ETH | <0.01% | $0.000039 | 104,380.5958 | $4.09 | |
ETH | <0.01% | <$0.000001 | 65,995,421.5601 | $4.08 | |
ETH | <0.01% | $0.237559 | 16.8272 | $4 | |
ETH | <0.01% | $0.178395 | 22.2203 | $3.96 | |
ETH | <0.01% | $13.25 | 0.2927 | $3.88 | |
ETH | <0.01% | $0.311731 | 12.427 | $3.87 | |
ETH | <0.01% | $0.000001 | 5,510,495.5947 | $3.85 | |
ETH | <0.01% | <$0.000001 | 1,744,108,426.0864 | $3.84 | |
ETH | <0.01% | $0.000022 | 170,855.387 | $3.83 | |
ETH | <0.01% | $409,012.76 | 0.00000935 | $3.82 | |
ETH | <0.01% | $2,504.56 | 0.00152387 | $3.82 | |
ETH | <0.01% | $0.107532 | 35.3823 | $3.8 | |
ETH | <0.01% | $0.22123 | 17.1789 | $3.8 | |
ETH | <0.01% | $0.004801 | 790.3529 | $3.79 | |
ETH | <0.01% | $17.79 | 0.2131 | $3.79 | |
ETH | <0.01% | $0.181543 | 20.7824 | $3.77 | |
ETH | <0.01% | $0.065918 | 56.5784 | $3.73 | |
ETH | <0.01% | $0.058338 | 63.7025 | $3.72 | |
ETH | <0.01% | $0.006679 | 555.9895 | $3.71 | |
ETH | <0.01% | $0.027015 | 136.967 | $3.7 | |
ETH | <0.01% | $0.002542 | 1,438.838 | $3.66 | |
ETH | <0.01% | $0.001055 | 3,448.7995 | $3.64 | |
ETH | <0.01% | $0.010753 | 337.6885 | $3.63 | |
ETH | <0.01% | $0.06805 | 53.2755 | $3.63 | |
ETH | <0.01% | $0.215951 | 16.72 | $3.61 | |
ETH | <0.01% | $1.97 | 1.8226 | $3.59 | |
ETH | <0.01% | $0.005019 | 710.4542 | $3.57 | |
ETH | <0.01% | $1.39 | 2.55 | $3.53 | |
ETH | <0.01% | $0.275478 | 12.7434 | $3.51 | |
ETH | <0.01% | $0.020427 | 171.6954 | $3.51 | |
ETH | <0.01% | $14.69 | 0.2372 | $3.48 | |
ETH | <0.01% | $5.99 | 0.5792 | $3.47 | |
ETH | <0.01% | $0.135151 | 25.2267 | $3.41 | |
ETH | <0.01% | $0.274002 | 12.4025 | $3.4 | |
ETH | <0.01% | $0.785385 | 4.3091 | $3.38 | |
ETH | <0.01% | $0.380269 | 8.8828 | $3.38 | |
ETH | <0.01% | $0.004959 | 678.3779 | $3.36 | |
ETH | <0.01% | $0.000285 | 11,618.1343 | $3.31 | |
ETH | <0.01% | $0.242976 | 13.4686 | $3.27 | |
ETH | <0.01% | $0.036871 | 88.579 | $3.27 | |
ETH | <0.01% | $0.000066 | 48,922.9096 | $3.21 | |
ETH | <0.01% | $1.53 | 2.0769 | $3.18 | |
ETH | <0.01% | $0.001459 | 2,178.1244 | $3.18 | |
ETH | <0.01% | $2,553.08 | 0.00124272 | $3.17 | |
ETH | <0.01% | $0.00221 | 1,428.9727 | $3.16 | |
ETH | <0.01% | $0.029854 | 105.4488 | $3.15 | |
ETH | <0.01% | $2,738.49 | 0.00113667 | $3.11 | |
ETH | <0.01% | $2.88 | 1.0754 | $3.1 | |
ETH | <0.01% | $262.04 | 0.0118 | $3.09 | |
ETH | <0.01% | $0.0018 | 1,712.4813 | $3.08 | |
ETH | <0.01% | $0.000593 | 5,134.0009 | $3.05 | |
ETH | <0.01% | <$0.000001 | 889,652,488.0455 | $3.03 | |
ETH | <0.01% | $0.003353 | 902.0193 | $3.02 | |
ETH | <0.01% | $0.000009 | 346,093.2192 | $3.01 | |
ETH | <0.01% | $0.025678 | 116.1678 | $2.98 | |
ETH | <0.01% | $0.014182 | 209.8799 | $2.98 | |
ETH | <0.01% | $0.454008 | 6.4098 | $2.91 | |
ETH | <0.01% | $0.548126 | 5.2942 | $2.9 | |
ETH | <0.01% | $0.096818 | 29.8443 | $2.89 | |
ETH | <0.01% | $0.000003 | 826,012.5956 | $2.85 | |
ETH | <0.01% | $0.704801 | 3.9925 | $2.81 | |
ETH | <0.01% | $0.000004 | 701,774.45 | $2.79 | |
ETH | <0.01% | $0.012133 | 229.9241 | $2.79 | |
ETH | <0.01% | $0.002201 | 1,258.127 | $2.77 | |
ETH | <0.01% | $0.024706 | 111.8159 | $2.76 | |
ETH | <0.01% | $0.002077 | 1,327.105 | $2.76 | |
ETH | <0.01% | $1.29 | 2.125 | $2.74 | |
ETH | <0.01% | $0.015706 | 174.0484 | $2.73 | |
ETH | <0.01% | $0.002407 | 1,135.192 | $2.73 | |
ETH | <0.01% | $21.93 | 0.1241 | $2.72 | |
ETH | <0.01% | <$0.000001 | 1,544,166,646.6789 | $2.71 | |
ETH | <0.01% | $0.334806 | 8.1003 | $2.71 | |
ETH | <0.01% | $17.84 | 0.1513 | $2.7 | |
ETH | <0.01% | $0.000001 | 3,664,460.7845 | $2.69 | |
ETH | <0.01% | $0.013058 | 205.2317 | $2.68 | |
ETH | <0.01% | $116.84 | 0.0226 | $2.64 | |
ETH | <0.01% | $0.001103 | 2,370.1646 | $2.62 | |
ETH | <0.01% | <$0.000001 | 221,195,839.7273 | $2.61 | |
ETH | <0.01% | $0.014445 | 180.3912 | $2.61 | |
ETH | <0.01% | $0.138357 | 18.7 | $2.59 | |
ETH | <0.01% | $1.29 | 2.0025 | $2.58 | |
ETH | <0.01% | $1.43 | 1.802 | $2.58 | |
ETH | <0.01% | $0.999076 | 2.5548 | $2.55 | |
ETH | <0.01% | $0.000428 | 5,943.7202 | $2.55 | |
ETH | <0.01% | $0.029594 | 85.8784 | $2.54 | |
ETH | <0.01% | $0.000248 | 10,214.4429 | $2.53 | |
ETH | <0.01% | $0.026709 | 94.8314 | $2.53 | |
ETH | <0.01% | $0.038301 | 66.1121 | $2.53 | |
ETH | <0.01% | $0.070038 | 35.742 | $2.5 | |
ETH | <0.01% | $0.122447 | 20.3315 | $2.49 | |
ETH | <0.01% | $0.000005 | 475,702.703 | $2.47 | |
ETH | <0.01% | $16.9 | 0.1452 | $2.45 | |
ETH | <0.01% | $0.000287 | 8,500.0076 | $2.44 | |
ETH | <0.01% | $1.78 | 1.3691 | $2.44 | |
ETH | <0.01% | $0.094184 | 25.589 | $2.41 | |
ETH | <0.01% | $0.00014 | 17,162.3794 | $2.41 | |
ETH | <0.01% | $0.008317 | 289 | $2.4 | |
ETH | <0.01% | $81.47 | 0.029 | $2.37 | |
ETH | <0.01% | $0.003023 | 782.093 | $2.36 | |
ETH | <0.01% | $1.04 | 2.2762 | $2.36 | |
ETH | <0.01% | $0.000018 | 130,165.494 | $2.32 | |
ETH | <0.01% | $0.000035 | 66,213.1775 | $2.32 | |
ETH | <0.01% | $0.002595 | 893.7925 | $2.32 | |
ETH | <0.01% | $3.82 | 0.6069 | $2.32 | |
ETH | <0.01% | $0.000001 | 3,822,773.3283 | $2.32 | |
ETH | <0.01% | $0.06598 | 34.8417 | $2.3 | |
ETH | <0.01% | $0.06447 | 35.5218 | $2.29 | |
ETH | <0.01% | <$0.000001 | 1,781,723,396.0386 | $2.25 | |
ETH | <0.01% | <$0.000001 | 4,250,000,000.0074 | $2.25 | |
ETH | <0.01% | $0.000899 | 2,503.1397 | $2.25 | |
ETH | <0.01% | $0.01758 | 127.8821 | $2.25 | |
ETH | <0.01% | $0.011577 | 189.0986 | $2.19 | |
ETH | <0.01% | $0.459304 | 4.7515 | $2.18 | |
ETH | <0.01% | $0.000401 | 5,441.8358 | $2.18 | |
ETH | <0.01% | $0.691201 | 3.1072 | $2.15 | |
ETH | <0.01% | <$0.000001 | 3,263,345,570.3515 | $2.14 | |
ETH | <0.01% | <$0.000001 | 204,000,000 | $2.14 | |
ETH | <0.01% | $0.347035 | 6.1334 | $2.13 | |
ETH | <0.01% | <$0.000001 | 823,099,233.0138 | $2.12 | |
ETH | <0.01% | $15.3 | 0.1382 | $2.11 | |
ETH | <0.01% | <$0.000001 | 5,504,220.3313 | $2.11 | |
ETH | <0.01% | $0.114508 | 18.2585 | $2.09 | |
ETH | <0.01% | $0.00526 | 396.2499 | $2.08 | |
ETH | <0.01% | $0.096499 | 21.5567 | $2.08 | |
ETH | <0.01% | $0.000003 | 705,144.9008 | $2.04 | |
ETH | <0.01% | $0.000271 | 7,436.4904 | $2.02 | |
ETH | <0.01% | $0.153451 | 13.0916 | $2.01 | |
ETH | <0.01% | $0.250888 | 7.9656 | $2 | |
ETH | <0.01% | $0.013352 | 149.5553 | $2 | |
ETH | <0.01% | <$0.000001 | 22,533,956.8663 | $2 | |
ETH | <0.01% | $0.021236 | 91.7321 | $1.95 | |
ETH | <0.01% | $0.000002 | 917,564.4174 | $1.95 | |
ETH | <0.01% | $7.21 | 0.264 | $1.9 | |
ETH | <0.01% | <$0.000001 | 4,407,427.5559 | $1.9 | |
ETH | <0.01% | $0.000129 | 14,601.2286 | $1.89 | |
ETH | <0.01% | $0.058669 | 32.2222 | $1.89 | |
ETH | <0.01% | $1.89 | 1 | $1.89 | |
ETH | <0.01% | $96.75 | 0.0195 | $1.88 | |
ETH | <0.01% | $0.015277 | 122.6109 | $1.87 | |
ETH | <0.01% | $0.015577 | 118.8034 | $1.85 | |
ETH | <0.01% | <$0.000001 | 4,798,061.8823 | $1.83 | |
ETH | <0.01% | $0.044021 | 41.5156 | $1.83 | |
ETH | <0.01% | <$0.000001 | 269,300,816.151 | $1.83 | |
ETH | <0.01% | $0.001003 | 1,787.5776 | $1.79 | |
ETH | <0.01% | <$0.000001 | 1,445,000,970.4449 | $1.79 | |
ETH | <0.01% | $0.038317 | 46.6241 | $1.79 | |
ETH | <0.01% | $1.92 | 0.9243 | $1.77 | |
ETH | <0.01% | $0.121596 | 14.4989 | $1.76 | |
ETH | <0.01% | $0.999859 | 1.7319 | $1.73 | |
ETH | <0.01% | $13.51 | 0.1275 | $1.72 | |
ETH | <0.01% | <$0.000001 | 364,608,391.7673 | $1.72 | |
ETH | <0.01% | $0.504255 | 3.4 | $1.71 | |
ETH | <0.01% | $0.049064 | 34.765 | $1.71 | |
ETH | <0.01% | $0.003921 | 433.5 | $1.7 | |
ETH | <0.01% | $0.263802 | 6.443 | $1.7 | |
ETH | <0.01% | $0.04694 | 36.1819 | $1.7 | |
ETH | <0.01% | $0.000109 | 15,350.6134 | $1.67 | |
ETH | <0.01% | <$0.000001 | 297,764,050.1661 | $1.66 | |
ETH | <0.01% | $0.048776 | 34 | $1.66 | |
ETH | <0.01% | $0.000021 | 78,649.6849 | $1.66 | |
ETH | <0.01% | $0.043434 | 37.9464 | $1.65 | |
ETH | <0.01% | $0.005314 | 307.8062 | $1.64 | |
ETH | <0.01% | $0.005452 | 297.9647 | $1.62 | |
ETH | <0.01% | $0.016081 | 100.2323 | $1.61 | |
ETH | <0.01% | $0.021431 | 74.6598 | $1.6 | |
ETH | <0.01% | $0.000072 | 22,192.5014 | $1.6 | |
ETH | <0.01% | $0.0382 | 41.6975 | $1.59 | |
ETH | <0.01% | $2.77 | 0.5745 | $1.59 | |
ETH | <0.01% | $0.016123 | 98.443 | $1.59 | |
ETH | <0.01% | $0.02155 | 73.5338 | $1.58 | |
ETH | <0.01% | $0.000001 | 1,461,220.0779 | $1.56 | |
ETH | <0.01% | $0.000001 | 1,973,567.8593 | $1.56 | |
ETH | <0.01% | $0.164609 | 9.4723 | $1.56 | |
ETH | <0.01% | $0.004078 | 379.9529 | $1.55 | |
ETH | <0.01% | $0.004588 | 335.9286 | $1.54 | |
ETH | <0.01% | $0.704511 | 2.1854 | $1.54 | |
ETH | <0.01% | $0.117954 | 13.0387 | $1.54 | |
ETH | <0.01% | <$0.000001 | 1,077,316,186.6046 | $1.53 | |
ETH | <0.01% | $0.003762 | 403.2692 | $1.52 | |
ETH | <0.01% | $0.290888 | 5.2057 | $1.51 | |
ETH | <0.01% | $0.008869 | 170.4793 | $1.51 | |
ETH | <0.01% | $0.144746 | 10.3413 | $1.5 | |
ETH | <0.01% | $0.001931 | 773.9163 | $1.49 | |
ETH | <0.01% | <$0.000001 | 4,161,219.6359 | $1.49 | |
ETH | <0.01% | $0.000009 | 170,000 | $1.47 | |
ETH | <0.01% | $0.064839 | 22.6039 | $1.47 | |
ETH | <0.01% | $0.000386 | 3,760.4479 | $1.45 | |
ETH | <0.01% | $0.425977 | 3.4021 | $1.45 | |
ETH | <0.01% | $0.089 | 16.1465 | $1.44 | |
ETH | <0.01% | $0.026821 | 52.3829 | $1.4 | |
ETH | <0.01% | $0.051733 | 27.0607 | $1.4 | |
ETH | <0.01% | $0.674411 | 2.0725 | $1.4 | |
ETH | <0.01% | $1.66 | 0.8378 | $1.39 | |
ETH | <0.01% | $0.000006 | 250,253.079 | $1.39 | |
ETH | <0.01% | $0.011828 | 115.2619 | $1.36 | |
ETH | <0.01% | $0.017134 | 79.3742 | $1.36 | |
ETH | <0.01% | $0.020096 | 67.4703 | $1.36 | |
ETH | <0.01% | $0.288473 | 4.6974 | $1.36 | |
ETH | <0.01% | $0.003161 | 423.8583 | $1.34 | |
ETH | <0.01% | $0.119035 | 11.1492 | $1.33 | |
ETH | <0.01% | <$0.000001 | 543,814,280.612 | $1.32 | |
ETH | <0.01% | $0.836941 | 1.5638 | $1.31 | |
ETH | <0.01% | $0.000161 | 8,000.6406 | $1.29 | |
ETH | <0.01% | $0.082469 | 15.6324 | $1.29 | |
ETH | <0.01% | $0.002055 | 625.2375 | $1.28 | |
ETH | <0.01% | $0.999343 | 1.275 | $1.27 | |
ETH | <0.01% | $73.69 | 0.017 | $1.25 | |
ETH | <0.01% | $0.000002 | 630,702.6688 | $1.25 | |
ETH | <0.01% | $0.000887 | 1,394.078 | $1.24 | |
ETH | <0.01% | $0.151335 | 8.1394 | $1.23 | |
ETH | <0.01% | $0.105378 | 11.6732 | $1.23 | |
ETH | <0.01% | $0.001712 | 709.6558 | $1.21 | |
ETH | <0.01% | $0.205579 | 5.8695 | $1.21 | |
ETH | <0.01% | $0.051278 | 23.375 | $1.2 | |
ETH | <0.01% | $0.003862 | 307.1964 | $1.19 | |
ETH | <0.01% | $0.002625 | 450.8357 | $1.18 | |
ETH | <0.01% | $0.046034 | 25.4545 | $1.17 | |
ETH | <0.01% | $0.018433 | 63.0151 | $1.16 | |
ETH | <0.01% | $0.024637 | 46.75 | $1.15 | |
ETH | <0.01% | <$0.000001 | 590,689,916.4389 | $1.15 | |
ETH | <0.01% | $0.165332 | 6.9517 | $1.15 | |
ETH | <0.01% | $0.057668 | 19.7747 | $1.14 | |
ETH | <0.01% | $0.000049 | 23,475.2648 | $1.14 | |
ETH | <0.01% | $0.000008 | 136,571.9974 | $1.14 | |
ETH | <0.01% | $21.76 | 0.0522 | $1.14 | |
ETH | <0.01% | $0.737612 | 1.5353 | $1.13 | |
ETH | <0.01% | $0.399226 | 2.7927 | $1.11 | |
ETH | <0.01% | $0.101152 | 10.8904 | $1.1 | |
ETH | <0.01% | $0.023792 | 46.0623 | $1.1 | |
ETH | <0.01% | $5.53 | 0.1981 | $1.09 | |
ETH | <0.01% | $0.002185 | 493.905 | $1.08 | |
ETH | <0.01% | $0.00159 | 677.3451 | $1.08 | |
ETH | <0.01% | $0.128898 | 8.2875 | $1.07 | |
ETH | <0.01% | $2,583.35 | 0.00040912 | $1.06 | |
ETH | <0.01% | $0.134285 | 7.803 | $1.05 | |
ETH | <0.01% | $0.020878 | 50.0026 | $1.04 | |
ETH | <0.01% | <$0.000001 | 12,212,677.0567 | $1.04 | |
ETH | <0.01% | $120.66 | 0.0085 | $1.03 | |
ETH | <0.01% | $0.000114 | 8,939.8325 | $1.02 | |
ETH | <0.01% | $0.007381 | 138.0394 | $1.02 | |
ETH | <0.01% | $0.000126 | 8,046.0176 | $1.02 | |
ETH | <0.01% | $0.00115 | 882.1142 | $1.01 | |
ETH | <0.01% | <$0.000001 | 2,864,551,207.1857 | $1.01 | |
ETH | <0.01% | $0.000001 | 1,260,167.2523 | $1.01 | |
ETH | <0.01% | $2,550.65 | 0.0003964 | $1.01 | |
ETH | <0.01% | $0.277723 | 3.6284 | $1.01 | |
ETH | <0.01% | $0.079439 | 12.6143 | $1 | |
ETH | <0.01% | $0.058361 | 16.9575 | $0.9896 | |
ETH | <0.01% | <$0.000001 | 31,680,531,125,165.6 | $0.982 | |
ETH | <0.01% | $0.000229 | 4,250 | $0.9752 | |
ETH | <0.01% | $0.466258 | 2.086 | $0.9726 | |
ETH | <0.01% | $0.019008 | 51 | $0.9694 | |
ETH | <0.01% | $0.000598 | 1,614.7076 | $0.9659 | |
ETH | <0.01% | $1.11 | 0.8657 | $0.9609 | |
ETH | <0.01% | $0.000846 | 1,133.0944 | $0.959 | |
ETH | <0.01% | $0.003016 | 316.2069 | $0.9538 | |
ETH | <0.01% | $7.99 | 0.1178 | $0.9414 | |
ETH | <0.01% | $0.76814 | 1.2226 | $0.9391 | |
ETH | <0.01% | $1.22 | 0.7695 | $0.9388 | |
ETH | <0.01% | $0.02332 | 39.9533 | $0.9317 | |
ETH | <0.01% | $0.436886 | 2.1302 | $0.9306 | |
ETH | <0.01% | <$0.000001 | 1,020,879,602.865 | $0.924 | |
ETH | <0.01% | $0.000027 | 34,439.4327 | $0.9226 | |
ETH | <0.01% | <$0.000001 | 3,646,500.9266 | $0.9217 | |
ETH | <0.01% | $0.000754 | 1,221.405 | $0.9207 | |
ETH | <0.01% | $0.010438 | 86.3936 | $0.9017 | |
ETH | <0.01% | $0.00697 | 128.945 | $0.8987 | |
ETH | <0.01% | $0.000006 | 155,980.9895 | $0.8972 | |
ETH | <0.01% | $0.999916 | 0.8943 | $0.8942 | |
ETH | <0.01% | <$0.000001 | 3,140,230.7793 | $0.8933 | |
ETH | <0.01% | $0.000003 | 296,035.169 | $0.891 | |
ETH | <0.01% | $1.88 | 0.4715 | $0.8863 | |
ETH | <0.01% | $0.011416 | 77.5682 | $0.8854 | |
ETH | <0.01% | $2,273.23 | 0.0003883 | $0.8826 | |
ETH | <0.01% | $0.000487 | 1,796.3499 | $0.8756 | |
ETH | <0.01% | $0.175103 | 4.9933 | $0.8743 | |
ETH | <0.01% | $0.001996 | 436.321 | $0.8708 | |
ETH | <0.01% | $0.041522 | 20.9618 | $0.8703 | |
ETH | <0.01% | <$0.000001 | 38,459,731,906,485.3 | $0.8475 | |
ETH | <0.01% | $1.18 | 0.716 | $0.8448 | |
ETH | <0.01% | $0.000979 | 850 | $0.8323 | |
ETH | <0.01% | $0.02268 | 36.643 | $0.831 | |
ETH | <0.01% | $0.000576 | 1,429.3075 | $0.8227 | |
ETH | <0.01% | $0.363148 | 2.2447 | $0.8151 | |
ETH | <0.01% | $0.000736 | 1,104.6206 | $0.8134 | |
ETH | <0.01% | <$0.000001 | 1,672,665,593.6834 | $0.8105 | |
ETH | <0.01% | $0.006647 | 121.7817 | $0.8094 | |
ETH | <0.01% | $0.003948 | 200.7434 | $0.7924 | |
ETH | <0.01% | $0.001604 | 492.1909 | $0.7895 | |
ETH | <0.01% | $0.08356 | 9.4053 | $0.7859 | |
ETH | <0.01% | $0.03287 | 23.6098 | $0.776 | |
ETH | <0.01% | <$0.000001 | 2,703,833.7609 | $0.7457 | |
ETH | <0.01% | $0.000443 | 1,680.755 | $0.7444 | |
ETH | <0.01% | <$0.000001 | 735,251,725.6768 | $0.7433 | |
ETH | <0.01% | $0.008734 | 84.7875 | $0.7405 | |
ETH | <0.01% | $0.045671 | 16.15 | $0.7375 | |
ETH | <0.01% | $0.313149 | 2.3532 | $0.7368 | |
ETH | <0.01% | $0.001719 | 427.9333 | $0.7355 | |
ETH | <0.01% | $0.585806 | 1.2553 | $0.7353 | |
ETH | <0.01% | $0.838237 | 0.8758 | $0.7341 | |
ETH | <0.01% | $0.005684 | 127.5 | $0.7247 | |
ETH | <0.01% | $0.00579 | 123.3704 | $0.7143 | |
ETH | <0.01% | <$0.000001 | 3,126,708.0035 | $0.7132 | |
ETH | <0.01% | $0.063198 | 11.2798 | $0.7128 | |
ETH | <0.01% | $0.003081 | 229.0025 | $0.7056 | |
ETH | <0.01% | <$0.000001 | 116,273,805.7323 | $0.7029 | |
ETH | <0.01% | <$0.000001 | 7,699,036.2667 | $0.7026 | |
ETH | <0.01% | $0.00015 | 4,658.102 | $0.7005 | |
ETH | <0.01% | $0.082597 | 8.4038 | $0.6941 | |
ETH | <0.01% | $0.00146 | 472.34 | $0.6897 | |
ETH | <0.01% | $0.014428 | 47.5483 | $0.686 | |
ETH | <0.01% | $0.015705 | 43.2688 | $0.6795 | |
ETH | <0.01% | <$0.000001 | 1,344,543,424.4356 | $0.6773 | |
ETH | <0.01% | <$0.000001 | 1,447,180,302.8087 | $0.6633 | |
ETH | <0.01% | <$0.000001 | 3,310,163.9872 | $0.6547 | |
ETH | <0.01% | $0.00243 | 267.1465 | $0.649 | |
ETH | <0.01% | $0.000027 | 23,804.9948 | $0.6486 | |
ETH | <0.01% | $0.000387 | 1,672.9605 | $0.648 | |
ETH | <0.01% | $0.000005 | 134,313.0835 | $0.6414 | |
ETH | <0.01% | $1.32 | 0.4841 | $0.639 | |
ETH | <0.01% | $0.738106 | 0.8585 | $0.6336 | |
ETH | <0.01% | $0.000001 | 1,038,222.9688 | $0.6309 | |
ETH | <0.01% | $0.220088 | 2.8631 | $0.6301 | |
ETH | <0.01% | $3.18 | 0.1978 | $0.629 | |
ETH | <0.01% | $0.000002 | 267,993.7239 | $0.6276 | |
ETH | <0.01% | $0.055845 | 11.112 | $0.6205 | |
ETH | <0.01% | $0.000018 | 34,871.3208 | $0.6182 | |
ETH | <0.01% | $0.000666 | 924.3282 | $0.616 | |
ETH | <0.01% | $0.066199 | 9.2923 | $0.6151 | |