Source Code
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
GECKODISTT
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2024-08-13
*/
// SPDX-License-Identifier: MIT
// File: @openzeppelin/contracts/token/ERC20/IERC20.sol
// OpenZeppelin Contracts (last updated v5.0.0) (token/ERC20/IERC20.sol)
pragma solidity ^0.8.20;
/**
* @dev Interface of the ERC20 standard as defined in the EIP.
*/
interface IERC20 {
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*
* Note that `value` may be zero.
*/
event Transfer(address indexed from, address indexed to, uint256 value);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to {approve}. `value` is the new allowance.
*/
event Approval(address indexed owner, address indexed spender, uint256 value);
/**
* @dev Returns the value of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the value of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves a `value` amount of tokens from the caller's account to `to`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transfer(address to, uint256 value) 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 a `value` amount of tokens 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 value) external returns (bool);
/**
* @dev Moves a `value` amount of tokens from `from` to `to` using the
* allowance mechanism. `value` is then deducted from the caller's
* allowance.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a {Transfer} event.
*/
function transferFrom(address from, address to, uint256 value) external returns (bool);
}
// File: @openzeppelin/contracts/utils/Context.sol
// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)
pragma solidity ^0.8.20;
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
function _contextSuffixLength() internal view virtual returns (uint256) {
return 0;
}
}
// File: @openzeppelin/contracts/access/Ownable.sol
// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
pragma solidity ^0.8.20;
/**
* @dev Contract module which provides a basic access control mechanism, where
* there is an account (an owner) that can be granted exclusive access to
* specific functions.
*
* The initial owner is set to the address provided by the deployer. This can
* later be changed with {transferOwnership}.
*
* This module is used through inheritance. It will make available the modifier
* `onlyOwner`, which can be applied to your functions to restrict their use to
* the owner.
*/
abstract contract Ownable is Context {
address private _owner;
/**
* @dev The caller account is not authorized to perform an operation.
*/
error OwnableUnauthorizedAccount(address account);
/**
* @dev The owner is not a valid owner account. (eg. `address(0)`)
*/
error OwnableInvalidOwner(address owner);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the address provided by the deployer as the initial owner.
*/
constructor(address initialOwner) {
if (initialOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(initialOwner);
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
_checkOwner();
_;
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev Throws if the sender is not the owner.
*/
function _checkOwner() internal view virtual {
if (owner() != _msgSender()) {
revert OwnableUnauthorizedAccount(_msgSender());
}
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby disabling any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
if (newOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(newOwner);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Internal function without access restriction.
*/
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}
// File: contracts/GECKOAirdropDistributor.sol
pragma solidity ^0.8.0;
///
/// Use at your Own Risk
contract GECKODISTT is Ownable {
// Address of the GECKO token contract
IERC20 public constant GECKOToken = IERC20(0x411279C35a3be359a7686c736c425ccf4D0Fc8f5);
// Constructor sets the deployer as the initial owner
constructor() Ownable(msg.sender) {}
function depositTokens(uint256 amount) external onlyOwner {
require(amount > 0, "Amount must be greater than 0");
require(GECKOToken.transferFrom(msg.sender, address(this), amount), "Transfer failed");
}
function distributeTokens(address[] calldata recipients, uint256 totalAmount) external onlyOwner {
require(recipients.length > 0, "No recipients");
uint256 amountPerRecipient = totalAmount / recipients.length;
require(amountPerRecipient > 0, "Total amount too low");
for (uint256 i = 0; i < recipients.length; i++) {
require(GECKOToken.transferFrom(msg.sender, recipients[i], amountPerRecipient), "Transfer failed");
}
}
function distributeTokensFromContract(address[] calldata recipients, uint256 totalAmount) external onlyOwner {
require(recipients.length > 0, "No recipients");
uint256 amountPerRecipient = totalAmount / recipients.length;
require(amountPerRecipient > 0, "Total amount too low");
for (uint256 i = 0; i < recipients.length; i++) {
require(GECKOToken.transfer(recipients[i], amountPerRecipient), "Transfer failed");
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"GECKOToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"depositTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256","name":"totalAmount","type":"uint256"}],"name":"distributeTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256","name":"totalAmount","type":"uint256"}],"name":"distributeTokensFromContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
6080604052348015600e575f80fd5b503380603357604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b603a81603f565b50608e565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6107408061009b5f395ff3fe608060405234801561000f575f80fd5b506004361061007a575f3560e01c8063715018a611610058578063715018a6146100dd5780638da5cb5b146100e5578063dd49756e146100f5578063f2fde38b14610108575f80fd5b8063256fa2411461007e5780632dfbe812146100935780632f0a9946146100a6575b5f80fd5b61009161008c3660046105d6565b61011b565b005b6100916100a13660046105d6565b6102a4565b6100c173411279c35a3be359a7686c736c425ccf4d0fc8f581565b6040516001600160a01b03909116815260200160405180910390f35b610091610419565b5f546001600160a01b03166100c1565b61009161010336600461064b565b61042c565b610091610116366004610662565b610521565b61012361055b565b816101655760405162461bcd60e51b815260206004820152600d60248201526c4e6f20726563697069656e747360981b60448201526064015b60405180910390fd5b5f610170838361068f565b90505f81116101b85760405162461bcd60e51b8152602060048201526014602482015273546f74616c20616d6f756e7420746f6f206c6f7760601b604482015260640161015c565b5f5b8381101561029d5773411279c35a3be359a7686c736c425ccf4d0fc8f56323b872dd338787858181106101ef576101ef6106ae565b90506020020160208101906102049190610662565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604481018590526064016020604051808303815f875af1158015610255573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061027991906106c2565b6102955760405162461bcd60e51b815260040161015c906106e1565b6001016101ba565b5050505050565b6102ac61055b565b816102e95760405162461bcd60e51b815260206004820152600d60248201526c4e6f20726563697069656e747360981b604482015260640161015c565b5f6102f4838361068f565b90505f811161033c5760405162461bcd60e51b8152602060048201526014602482015273546f74616c20616d6f756e7420746f6f206c6f7760601b604482015260640161015c565b5f5b8381101561029d5773411279c35a3be359a7686c736c425ccf4d0fc8f563a9059cbb868684818110610372576103726106ae565b90506020020160208101906103879190610662565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303815f875af11580156103d1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f591906106c2565b6104115760405162461bcd60e51b815260040161015c906106e1565b60010161033e565b61042161055b565b61042a5f610587565b565b61043461055b565b5f81116104835760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e2030000000604482015260640161015c565b6040516323b872dd60e01b81523360048201523060248201526044810182905273411279c35a3be359a7686c736c425ccf4d0fc8f5906323b872dd906064016020604051808303815f875af11580156104de573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050291906106c2565b61051e5760405162461bcd60e51b815260040161015c906106e1565b50565b61052961055b565b6001600160a01b03811661055257604051631e4fbdf760e01b81525f600482015260240161015c565b61051e81610587565b5f546001600160a01b0316331461042a5760405163118cdaa760e01b815233600482015260240161015c565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f805f604084860312156105e8575f80fd5b833567ffffffffffffffff8111156105fe575f80fd5b8401601f8101861361060e575f80fd5b803567ffffffffffffffff811115610624575f80fd5b8660208260051b8401011115610638575f80fd5b6020918201979096509401359392505050565b5f6020828403121561065b575f80fd5b5035919050565b5f60208284031215610672575f80fd5b81356001600160a01b0381168114610688575f80fd5b9392505050565b5f826106a957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156106d2575f80fd5b81518015158114610688575f80fd5b6020808252600f908201526e151c985b9cd9995c8819985a5b1959608a1b60408201526060019056fea264697066735822122007a5a1e6779e87607a9ee227103c40c0291b7c3ec373ad66d52c2a08086868f264736f6c634300081a0033
Deployed Bytecode
0x608060405234801561000f575f80fd5b506004361061007a575f3560e01c8063715018a611610058578063715018a6146100dd5780638da5cb5b146100e5578063dd49756e146100f5578063f2fde38b14610108575f80fd5b8063256fa2411461007e5780632dfbe812146100935780632f0a9946146100a6575b5f80fd5b61009161008c3660046105d6565b61011b565b005b6100916100a13660046105d6565b6102a4565b6100c173411279c35a3be359a7686c736c425ccf4d0fc8f581565b6040516001600160a01b03909116815260200160405180910390f35b610091610419565b5f546001600160a01b03166100c1565b61009161010336600461064b565b61042c565b610091610116366004610662565b610521565b61012361055b565b816101655760405162461bcd60e51b815260206004820152600d60248201526c4e6f20726563697069656e747360981b60448201526064015b60405180910390fd5b5f610170838361068f565b90505f81116101b85760405162461bcd60e51b8152602060048201526014602482015273546f74616c20616d6f756e7420746f6f206c6f7760601b604482015260640161015c565b5f5b8381101561029d5773411279c35a3be359a7686c736c425ccf4d0fc8f56323b872dd338787858181106101ef576101ef6106ae565b90506020020160208101906102049190610662565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604481018590526064016020604051808303815f875af1158015610255573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061027991906106c2565b6102955760405162461bcd60e51b815260040161015c906106e1565b6001016101ba565b5050505050565b6102ac61055b565b816102e95760405162461bcd60e51b815260206004820152600d60248201526c4e6f20726563697069656e747360981b604482015260640161015c565b5f6102f4838361068f565b90505f811161033c5760405162461bcd60e51b8152602060048201526014602482015273546f74616c20616d6f756e7420746f6f206c6f7760601b604482015260640161015c565b5f5b8381101561029d5773411279c35a3be359a7686c736c425ccf4d0fc8f563a9059cbb868684818110610372576103726106ae565b90506020020160208101906103879190610662565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018590526044016020604051808303815f875af11580156103d1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f591906106c2565b6104115760405162461bcd60e51b815260040161015c906106e1565b60010161033e565b61042161055b565b61042a5f610587565b565b61043461055b565b5f81116104835760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e2030000000604482015260640161015c565b6040516323b872dd60e01b81523360048201523060248201526044810182905273411279c35a3be359a7686c736c425ccf4d0fc8f5906323b872dd906064016020604051808303815f875af11580156104de573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050291906106c2565b61051e5760405162461bcd60e51b815260040161015c906106e1565b50565b61052961055b565b6001600160a01b03811661055257604051631e4fbdf760e01b81525f600482015260240161015c565b61051e81610587565b5f546001600160a01b0316331461042a5760405163118cdaa760e01b815233600482015260240161015c565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f805f604084860312156105e8575f80fd5b833567ffffffffffffffff8111156105fe575f80fd5b8401601f8101861361060e575f80fd5b803567ffffffffffffffff811115610624575f80fd5b8660208260051b8401011115610638575f80fd5b6020918201979096509401359392505050565b5f6020828403121561065b575f80fd5b5035919050565b5f60208284031215610672575f80fd5b81356001600160a01b0381168114610688575f80fd5b9392505050565b5f826106a957634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156106d2575f80fd5b81518015158114610688575f80fd5b6020808252600f908201526e151c985b9cd9995c8819985a5b1959608a1b60408201526060019056fea264697066735822122007a5a1e6779e87607a9ee227103c40c0291b7c3ec373ad66d52c2a08086868f264736f6c634300081a0033
Deployed Bytecode Sourcemap
7235:1493:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7751:485;;;;;;:::i;:::-;;:::i;:::-;;8244:481;;;;;;:::i;:::-;;:::i;7317:86::-;;7360:42;7317:86;;;;;-1:-1:-1;;;;;926:32:1;;;908:51;;896:2;881:18;7317:86:0;;;;;;;6284:103;;;:::i;5609:87::-;5655:7;5682:6;-1:-1:-1;;;;;5682:6:0;5609:87;;7517:226;;;;;;:::i;:::-;;:::i;6542:220::-;;;;;;:::i;:::-;;:::i;7751:485::-;5495:13;:11;:13::i;:::-;7867:21;7859:47:::1;;;::::0;-1:-1:-1;;;7859:47:0;;1902:2:1;7859:47:0::1;::::0;::::1;1884:21:1::0;1941:2;1921:18;;;1914:30;-1:-1:-1;;;1960:18:1;;;1953:43;2013:18;;7859:47:0::1;;;;;;;;;7917:26;7946:31;7960:10:::0;7946:11;:31:::1;:::i;:::-;7917:60;;8017:1;7996:18;:22;7988:55;;;::::0;-1:-1:-1;;;7988:55:0;;2466:2:1;7988:55:0::1;::::0;::::1;2448:21:1::0;2505:2;2485:18;;;2478:30;-1:-1:-1;;;2524:18:1;;;2517:50;2584:18;;7988:55:0::1;2264:344:1::0;7988:55:0::1;8061:9;8056:173;8076:21:::0;;::::1;8056:173;;;7360:42;8127:23;8151:10;8163::::0;;8174:1;8163:13;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;8127:70;::::0;-1:-1:-1;;;;;;8127:70:0::1;::::0;;;;;;-1:-1:-1;;;;;2965:32:1;;;8127:70:0::1;::::0;::::1;2947:51:1::0;3034:32;;3014:18;;;3007:60;3083:18;;;3076:34;;;2920:18;;8127:70:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8119:98;;;;-1:-1:-1::0;;;8119:98:0::1;;;;;;;:::i;:::-;8099:3;;8056:173;;;;7848:388;7751:485:::0;;;:::o;8244:481::-;5495:13;:11;:13::i;:::-;8372:21;8364:47:::1;;;::::0;-1:-1:-1;;;8364:47:0;;1902:2:1;8364:47:0::1;::::0;::::1;1884:21:1::0;1941:2;1921:18;;;1914:30;-1:-1:-1;;;1960:18:1;;;1953:43;2013:18;;8364:47:0::1;1700:337:1::0;8364:47:0::1;8422:26;8451:31;8465:10:::0;8451:11;:31:::1;:::i;:::-;8422:60;;8522:1;8501:18;:22;8493:55;;;::::0;-1:-1:-1;;;8493:55:0;;2466:2:1;8493:55:0::1;::::0;::::1;2448:21:1::0;2505:2;2485:18;;;2478:30;-1:-1:-1;;;2524:18:1;;;2517:50;2584:18;;8493:55:0::1;2264:344:1::0;8493:55:0::1;8566:9;8561:157;8581:21:::0;;::::1;8561:157;;;7360:42;8632:19;8652:10:::0;;8663:1;8652:13;;::::1;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;8632:54;::::0;-1:-1:-1;;;;;;8632:54:0::1;::::0;;;;;;-1:-1:-1;;;;;3939:32:1;;;8632:54:0::1;::::0;::::1;3921:51:1::0;3988:18;;;3981:34;;;3894:18;;8632:54:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8624:82;;;;-1:-1:-1::0;;;8624:82:0::1;;;;;;;:::i;:::-;8604:3;;8561:157;;6284:103:::0;5495:13;:11;:13::i;:::-;6349:30:::1;6376:1;6349:18;:30::i;:::-;6284:103::o:0;7517:226::-;5495:13;:11;:13::i;:::-;7603:1:::1;7594:6;:10;7586:52;;;::::0;-1:-1:-1;;;7586:52:0;;4228:2:1;7586:52:0::1;::::0;::::1;4210:21:1::0;4267:2;4247:18;;;4240:30;4306:31;4286:18;;;4279:59;4355:18;;7586:52:0::1;4026:353:1::0;7586:52:0::1;7657:58;::::0;-1:-1:-1;;;7657:58:0;;7681:10:::1;7657:58;::::0;::::1;2947:51:1::0;7701:4:0::1;3014:18:1::0;;;3007:60;3083:18;;;3076:34;;;7360:42:0::1;::::0;7657:23:::1;::::0;2920:18:1;;7657:58:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7649:86;;;;-1:-1:-1::0;;;7649:86:0::1;;;;;;;:::i;:::-;7517:226:::0;:::o;6542:220::-;5495:13;:11;:13::i;:::-;-1:-1:-1;;;;;6627:22:0;::::1;6623:93;;6673:31;::::0;-1:-1:-1;;;6673:31:0;;6701:1:::1;6673:31;::::0;::::1;908:51:1::0;881:18;;6673:31:0::1;749:216:1::0;6623:93:0::1;6726:28;6745:8;6726:18;:28::i;5774:166::-:0;5655:7;5682:6;-1:-1:-1;;;;;5682:6:0;3698:10;5834:23;5830:103;;5881:40;;-1:-1:-1;;;5881:40:0;;3698:10;5881:40;;;908:51:1;881:18;;5881:40:0;749:216:1;6922:191:0;6996:16;7015:6;;-1:-1:-1;;;;;7032:17:0;;;-1:-1:-1;;;;;;7032:17:0;;;;;;7065:40;;7015:6;;;;;;;7065:40;;6996:16;7065:40;6985:128;6922:191;:::o;14:730:1:-;109:6;117;125;178:2;166:9;157:7;153:23;149:32;146:52;;;194:1;191;184:12;146:52;234:9;221:23;267:18;259:6;256:30;253:50;;;299:1;296;289:12;253:50;322:22;;375:4;367:13;;363:27;-1:-1:-1;353:55:1;;404:1;401;394:12;353:55;444:2;431:16;470:18;462:6;459:30;456:50;;;502:1;499;492:12;456:50;557:7;550:4;540:6;537:1;533:14;529:2;525:23;521:34;518:47;515:67;;;578:1;575;568:12;515:67;609:4;601:13;;;;633:6;;-1:-1:-1;693:20:1;;680:34;;14:730;-1:-1:-1;;;14:730:1:o;1178:226::-;1237:6;1290:2;1278:9;1269:7;1265:23;1261:32;1258:52;;;1306:1;1303;1296:12;1258:52;-1:-1:-1;1351:23:1;;1178:226;-1:-1:-1;1178:226:1:o;1409:286::-;1468:6;1521:2;1509:9;1500:7;1496:23;1492:32;1489:52;;;1537:1;1534;1527:12;1489:52;1563:23;;-1:-1:-1;;;;;1615:31:1;;1605:42;;1595:70;;1661:1;1658;1651:12;1595:70;1684:5;1409:286;-1:-1:-1;;;1409:286:1:o;2042:217::-;2082:1;2108;2098:132;;2152:10;2147:3;2143:20;2140:1;2133:31;2187:4;2184:1;2177:15;2215:4;2212:1;2205:15;2098:132;-1:-1:-1;2244:9:1;;2042:217::o;2613:127::-;2674:10;2669:3;2665:20;2662:1;2655:31;2705:4;2702:1;2695:15;2729:4;2726:1;2719:15;3121:277;3188:6;3241:2;3229:9;3220:7;3216:23;3212:32;3209:52;;;3257:1;3254;3247:12;3209:52;3289:9;3283:16;3342:5;3335:13;3328:21;3321:5;3318:32;3308:60;;3364:1;3361;3354:12;3403:339;3605:2;3587:21;;;3644:2;3624:18;;;3617:30;-1:-1:-1;;;3678:2:1;3663:18;;3656:45;3733:2;3718:18;;3403:339::o
Swarm Source
ipfs://07a5a1e6779e87607a9ee227103c40c0291b7c3ec373ad66d52c2a08086868f2
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.