Overview
ETH Balance
0 ETH
ETH Value
$0.00More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Source Code Verified (Exact Match)
Contract Name:
SaleLauncher
Compiler Version
v0.8.25+commit.b61c2a91
ZkSolc Version
v1.5.12
Optimization Enabled:
Yes with Mode 3
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "./SaleContract.sol";import "./ISaleContract.sol";import "../../@galaxis/registries/contracts/UsesGalaxisRegistry.sol";contract SaleLauncher is UsesGalaxisRegistry {constructor(address _galaxisRegistry) UsesGalaxisRegistry(_galaxisRegistry) {}function clone(address _galaxisRegistry) external returns (ISaleContract) {require(msg.sender == galaxisRegistry.getRegistryAddress("PROJECT_FACTORY"),"Token Launcher : unauthorised");SaleContract sale = new SaleContract(_galaxisRegistry);return ISaleContract(address(sale));}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "./ISaleContract.sol";import "../token/IToken.sol";import "../extras/recovery/BlackHolePrevention.sol";import "@openzeppelin/contracts/utils/Strings.sol";import "@openzeppelin/contracts/access/Ownable.sol";import "@openzeppelin/contracts/token/ERC721/IERC721.sol";//import "@openzeppelin/contracts/utils/introspection/IERC1820Registry.sol";import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol";import "@openzeppelin/contracts/token/ERC20/IERC20.sol";import "../../@galaxis/registries/contracts/Versionable/IVersionable.sol";import "../../@galaxis/registries/contracts/CommunityList.sol";import "../../@galaxis/registries/contracts/CommunityRegistry.sol";import "../../@galaxis/registries/contracts/UsesGalaxisRegistry.sol";contract SaleContract is AccessControlEnumerable, ISaleContract, Ownable, BlackHolePrevention, UsesGalaxisRegistry, IVersionable {function version() public pure returns (uint256) {return 2024042601;}using Strings for uint256;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "@openzeppelin/contracts/token/ERC20/IERC20.sol";struct SaleConfiguration {uint256 projectID;address token;address payable[] wallets;uint16[] shares;uint256 maxMintPerTransaction; // How many tokens a transaction can mintuint256 maxApprovedSale; // Max sold in approvedsale across approvedsale ethuint256 maxApprovedSalePerAddress; // Limit discounts per addressuint256 maxSalePerAddress;uint256 approvedsaleStart;uint256 approvedsaleEnd;uint256 saleStart;uint256 saleEnd;uint256 fullPrice;uint256 maxUserMintable;address signer;uint256 fullERC20Price;bool ethSaleEnabled;
1234567891011121314// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "./IRegistry.sol";contract UsesGalaxisRegistry {IRegistry immutable public galaxisRegistry;constructor(address _galaxisRegistry) {galaxisRegistry = IRegistry(_galaxisRegistry);}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;struct revealStruct {uint256 REQUEST_ID;uint256 RANDOM_NUM;uint256 SHIFT;uint256 RANGE_START;uint256 RANGE_END;bool processed;}struct TokenInfoForSale {uint256 projectID;uint256 maxSupply;uint256 reservedSupply;}struct TokenInfo {string name;string symbol;uint256 projectID;uint256 maxSupply;uint256 mintedSupply;uint256 mintedReserve;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "@openzeppelin/contracts/token/ERC721/IERC721.sol";import "@openzeppelin/contracts/token/ERC20/IERC20.sol";import "@openzeppelin/contracts/access/Ownable.sol";import "@openzeppelin/contracts/utils/Address.sol";contract BlackHolePrevention is Ownable {using Address for address payable;// blackhole prevention methodsconstructor() Ownable(msg.sender) {}function retrieveETH() external onlyOwner {address payable sender = payable(msg.sender);sender.sendValue(address(this).balance);}function retrieveERC20(address _tracker, uint256 amount) external onlyOwner {IERC20(_tracker).transfer(msg.sender, amount);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol";import "@openzeppelin/contracts/access/IAccessControl.sol";import "@openzeppelin/contracts/access/Ownable.sol";import "./Versionable/IVersionable.sol";import "./UsesGalaxisRegistry.sol";contract CommunityRegistry is AccessControlEnumerable, UsesGalaxisRegistry, IVersionable {function version() virtual external pure returns(uint256) {return 2024040401;}bytes32 public constant COMMUNITY_REGISTRY_ADMIN = keccak256("COMMUNITY_REGISTRY_ADMIN");uint32 public community_id;string public community_name;mapping(bytes32 => address) addresses;mapping(bytes32 => uint256) uints;mapping(bytes32 => bool) booleans;mapping(bytes32 => string) strings;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;import "@openzeppelin/contracts/access/extensions/AccessControlEnumerable.sol";import "./Versionable/IVersionable.sol";contract CommunityList is AccessControlEnumerable, IVersionable {function version() external pure returns (uint256) {return 2024040301;}bytes32 public constant CONTRACT_ADMIN = keccak256("CONTRACT_ADMIN");uint256 public numberOfEntries;struct community_entry {string name;address registry;uint32 id;}mapping(uint32 => community_entry) public communities; // community_id => recordmapping(uint256 => uint32) public index; // entryNumber => community_id for enumeration
1234567891011121314//SPDX-License-Identifier: Unlicensedpragma solidity 0.8.25;/*** @title IVersionable* @dev Interface for versionable contracts.*/interface IVersionable {/*** @notice Get the current version of the contract.* @return The current version.*/function version() external pure returns (uint256);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)pragma solidity ^0.8.20;import {Context} from "../utils/Context.sol";/*** @dev Contract module which provides a basic access control mechanism, where* there is an account (an owner) that can be granted exclusive access to* specific functions.** 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);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (access/extensions/AccessControlEnumerable.sol)pragma solidity ^0.8.20;import {IAccessControlEnumerable} from "./IAccessControlEnumerable.sol";import {AccessControl} from "../AccessControl.sol";import {EnumerableSet} from "../../utils/structs/EnumerableSet.sol";/*** @dev Extension of {AccessControl} that allows enumerating the members of each role.*/abstract contract AccessControlEnumerable is IAccessControlEnumerable, AccessControl {using EnumerableSet for EnumerableSet.AddressSet;mapping(bytes32 role => EnumerableSet.AddressSet) private _roleMembers;/*** @dev See {IERC165-supportsInterface}.*/function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {return interfaceId == type(IAccessControlEnumerable).interfaceId || super.supportsInterface(interfaceId);}/*** @dev Returns one of the accounts that have `role`. `index` must be a
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.2.0) (utils/Strings.sol)pragma solidity ^0.8.20;import {Math} from "./math/Math.sol";import {SafeCast} from "./math/SafeCast.sol";import {SignedMath} from "./math/SignedMath.sol";/*** @dev String operations.*/library Strings {using SafeCast for *;bytes16 private constant HEX_DIGITS = "0123456789abcdef";uint8 private constant ADDRESS_LENGTH = 20;/*** @dev The `value` string doesn't fit in the specified `length`.*/error StringsInsufficientHexLength(uint256 value, uint256 length);/*** @dev The string being parsed contains characters that are not in scope of the given base.*/
123456789101112131415161718192021// SPDX-License-Identifier: UNLICENSEDpragma solidity 0.8.25;interface IRegistry {function setRegistryAddress(string memory fn, address value) external ;function setRegistryBool(string memory fn, bool value) external ;function setRegistryUINT(string memory key) external returns (uint256) ;function setRegistryString(string memory fn, string memory value) external ;function setAdmin(address user,bool status ) external;function setAppAdmin(address app, address user, bool state) external;function getRegistryAddress(string memory key) external view returns (address) ;function getRegistryBool(string memory key) external view returns (bool);function getRegistryUINT(string memory key) external view returns (uint256) ;function getRegistryString(string memory key) external view returns (string memory) ;function isAdmin(address user) external view returns (bool) ;function isAppAdmin(address app, address user) external view returns (bool);function numberOfAddresses() external view returns(uint256);function addressEntries(uint256) external view returns(string memory);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC20/IERC20.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC-20 standard as defined in the ERC.*/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.*/
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (token/ERC721/IERC721.sol)pragma solidity ^0.8.20;import {IERC165} from "../../utils/introspection/IERC165.sol";/*** @dev Required interface of an ERC-721 compliant contract.*/interface IERC721 is IERC165 {/*** @dev Emitted when `tokenId` token is transferred from `from` to `to`.*/event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);/*** @dev Emitted when `owner` enables `approved` to manage the `tokenId` token.*/event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);/*** @dev Emitted when `owner` enables or disables (`approved`) `operator` to manage all of its assets.*/event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.2.0) (utils/Address.sol)pragma solidity ^0.8.20;import {Errors} from "./Errors.sol";/*** @dev Collection of functions related to the address type*/library Address {/*** @dev There's no code at `target` (it is not a contract).*/error AddressEmptyCode(address target);/*** @dev Replacement for Solidity's `transfer`: sends `amount` wei to* `recipient`, forwarding all available gas and reverting on errors.** https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost* of certain opcodes, possibly making contracts go over the 2300 gas limit* imposed by `transfer`, making them unable to receive funds via* `transfer`. {sendValue} removes this limitation.** https://consensys.net/diligence/blog/2019/09/stop-using-soliditys-transfer-now/[Learn more].
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (access/IAccessControl.sol)pragma solidity ^0.8.20;/*** @dev External interface of AccessControl declared to support ERC-165 detection.*/interface IAccessControl {/*** @dev The `account` is missing a role.*/error AccessControlUnauthorizedAccount(address account, bytes32 neededRole);/*** @dev The caller of a function is not the expected one.** NOTE: Don't confuse with {AccessControlUnauthorizedAccount}.*/error AccessControlBadConfirmation();/*** @dev Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole`** `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite* {RoleAdminChanged} not being emitted signaling this.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// 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;
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.0.0) (access/AccessControl.sol)pragma solidity ^0.8.20;import {IAccessControl} from "./IAccessControl.sol";import {Context} from "../utils/Context.sol";import {ERC165} from "../utils/introspection/ERC165.sol";/*** @dev Contract module that allows children to implement role-based access* control mechanisms. This is a lightweight version that doesn't allow enumerating role* members except through off-chain means by accessing the contract event logs. Some* applications may benefit from on-chain enumerability, for those cases see* {AccessControlEnumerable}.** Roles are referred to by their `bytes32` identifier. These should be exposed* in the external API and be unique. The best way to achieve this is by* using `public constant` hash digests:** ```solidity* bytes32 public constant MY_ROLE = keccak256("MY_ROLE");* ```** Roles can be used to represent a set of permissions. To restrict access to a* function call, use {hasRole}:
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (access/extensions/IAccessControlEnumerable.sol)pragma solidity ^0.8.20;import {IAccessControl} from "../IAccessControl.sol";/*** @dev External interface of AccessControlEnumerable declared to support ERC-165 detection.*/interface IAccessControlEnumerable is IAccessControl {/*** @dev Returns one of the accounts that have `role`. `index` must be a* value between 0 and {getRoleMemberCount}, non-inclusive.** Role bearers are not sorted in any particular way, and their ordering may* change at any point.** WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure* you perform all queries on the same block. See the following* https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post]* for more information.*/function getRoleMember(bytes32 role, uint256 index) external view returns (address);/**
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/structs/EnumerableSet.sol)// This file was procedurally generated from scripts/generate/templates/EnumerableSet.js.pragma solidity ^0.8.20;/*** @dev Library for managing* https://en.wikipedia.org/wiki/Set_(abstract_data_type)[sets] of primitive* types.** Sets have the following properties:** - Elements are added, removed, and checked for existence in constant time* (O(1)).* - Elements are enumerated in O(n). No guarantees are made on the ordering.** ```solidity* contract Example {* // Add the library methods* using EnumerableSet for EnumerableSet.AddressSet;** // Declare a set state variable* EnumerableSet.AddressSet private mySet;* }* ```
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/math/Math.sol)pragma solidity ^0.8.20;import {Panic} from "../Panic.sol";import {SafeCast} from "./SafeCast.sol";/*** @dev Standard math utilities missing in the Solidity language.*/library Math {enum Rounding {Floor, // Toward negative infinityCeil, // Toward positive infinityTrunc, // Toward zeroExpand // Away from zero}/*** @dev Returns the addition of two unsigned integers, with an success flag (no overflow).*/function tryAdd(uint256 a, uint256 b) internal pure returns (bool success, uint256 result) {unchecked {uint256 c = a + b;if (c < a) return (false, 0);
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/math/SignedMath.sol)pragma solidity ^0.8.20;import {SafeCast} from "./SafeCast.sol";/*** @dev Standard signed math utilities missing in the Solidity language.*/library SignedMath {/*** @dev Branchless ternary evaluation for `a ? b : c`. Gas costs are constant.** IMPORTANT: This function may reduce bytecode size and consume less gas when used standalone.* However, the compiler may optimize Solidity ternary operations (i.e. `a ? b : c`) to only compute* one branch when needed, making this function more expensive.*/function ternary(bool condition, int256 a, int256 b) internal pure returns (int256) {unchecked {// branchless ternary works because:// b ^ (a ^ b) == a// b ^ 0 == breturn b ^ ((a ^ b) * int256(SafeCast.toUint(condition)));}}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/math/SafeCast.sol)// This file was procedurally generated from scripts/generate/templates/SafeCast.js.pragma solidity ^0.8.20;/*** @dev Wrappers over Solidity's uintXX/intXX/bool casting operators with added overflow* checks.** Downcasting from uint256/int256 in Solidity does not revert on overflow. This can* easily result in undesired exploitation or bugs, since developers usually* assume that overflows raise errors. `SafeCast` restores this intuition by* reverting the transaction when such an operation overflows.** Using this library instead of the unchecked operations eliminates an entire* class of bugs, so it's recommended to use it always.*/library SafeCast {/*** @dev Value doesn't fit in an uint of `bits` size.*/error SafeCastOverflowedUintDowncast(uint8 bits, uint256 value);/*** @dev An int value doesn't fit in an uint of `bits` size.
12345678910111213141516171819202122232425// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/introspection/IERC165.sol)pragma solidity ^0.8.20;/*** @dev Interface of the ERC-165 standard, as defined in the* https://eips.ethereum.org/EIPS/eip-165[ERC].** Implementers can declare support of contract interfaces, which can then be* queried by others ({ERC165Checker}).** For an implementation, see {ERC165}.*/interface IERC165 {/*** @dev Returns true if this contract implements the interface defined by* `interfaceId`. See the corresponding* https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[ERC section]* to learn more about how these ids are created.** This function call must use less than 30 000 gas.*/function supportsInterface(bytes4 interfaceId) external view returns (bool);}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/Errors.sol)pragma solidity ^0.8.20;/*** @dev Collection of common custom errors used in multiple contracts** IMPORTANT: Backwards compatibility is not guaranteed in future versions of the library.* It is recommended to avoid relying on the error API for critical functionality.** _Available since v5.1._*/library Errors {/*** @dev The ETH balance of the account is not enough to perform the operation.*/error InsufficientBalance(uint256 balance, uint256 needed);/*** @dev A call to an address target failed. The target may have reverted.*/error FailedCall();/*** @dev The deployment failed.
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/introspection/ERC165.sol)pragma solidity ^0.8.20;import {IERC165} from "./IERC165.sol";/*** @dev Implementation of the {IERC165} interface.** Contracts that want to implement ERC-165 should inherit from this contract and override {supportsInterface} to check* for the additional interface id that will be supported. For example:** ```solidity* function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {* return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);* }* ```*/abstract contract ERC165 is IERC165 {/*** @dev See {IERC165-supportsInterface}.*/function supportsInterface(bytes4 interfaceId) public view virtual returns (bool) {return interfaceId == type(IERC165).interfaceId;}
1234567891011121314151617181920212223242526// SPDX-License-Identifier: MIT// OpenZeppelin Contracts (last updated v5.1.0) (utils/Panic.sol)pragma solidity ^0.8.20;/*** @dev Helper library for emitting standardized panic codes.** ```solidity* contract Example {* using Panic for uint256;** // Use any of the declared internal constants* function foo() { Panic.GENERIC.panic(); }** // Alternatively* function foo() { Panic.panic(Panic.GENERIC); }* }* ```** Follows the list from https://github.com/ethereum/solidity/blob/v0.8.24/libsolutil/ErrorCodes.h[libsolutil].** _Available since v5.1._*/// slither-disable-next-line unused-statelibrary Panic {
123456789101112131415161718{"evmVersion": "paris","optimizer": {"enabled": true,"mode": "3"},"outputSelection": {"*": {"*": ["abi"]}},"detectMissingLibraries": false,"forceEVMLA": false,"enableEraVMExtensions": false,"libraries": {}}
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_galaxisRegistry","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"_galaxisRegistry","type":"address"}],"name":"clone","outputs":[{"internalType":"contract ISaleContract","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"galaxisRegistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
9c4d535b0000000000000000000000000000000000000000000000000000000000000000010000652687c744ca085e06a5dfd23f08d191cf3b5f06d60aa236c034dff18000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000020000000000000000000000000f8274c5e5149a6e0fc5190483323a1b399896a8a
Deployed Bytecode
0x00020000000000020003000000000002000100000001035500000060031002700000004f0030019d0000004f033001970000000100200190000000200000c13d0000008002000039000000400020043f000000040030008c000000550000413d000000000201043b000000e002200270000000540020009c0000004c0000613d000000550020009c000000550000c13d0000000001000416000000000001004b000000550000c13d0000000001000412000300000001001d000200000000003d0000000001000415000000030110008a0000000501100210013501180000040f0000005201100197000000800010043f0000006201000041000001360001042e0000000002000416000000000002004b000000550000c13d0000001f023000390000005002200197000000a002200039000000400020043f0000001f0430018f0000005105300198000000a002500039000000310000613d000000a006000039000000000701034f000000007807043c0000000006860436000000000026004b0000002d0000c13d000000000004004b0000003e0000613d000000000151034f0000000304400210000000000502043300000000054501cf000000000545022f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f0000000000120435000000200030008c000000550000413d000000a00100043d000000520010009c000000550000213d000000800010043f0000014000000443000001600010044300000020010000390000010000100443000000010100003900000120001004430000005301000041000001360001042e000000240030008c000000550000413d0000000002000416000000000002004b000000550000c13d0000000401100370000000000101043b000000520010009c000000570000a13d00000000010000190000013700010430000100000001001d0000005601000041000000800010043f0000002001000039000000840010043f0000000f01000039000000a40010043f0000005701000041000000c40010043f0000005801000041000000000010044300000000010004120000000400100443000000240000044300000000010004140000004f0010009c0000004f01008041000000c00110021000000059011001c70000800502000039013501300000040f0000000100200190000000ca0000613d000000000101043b000000000300041400000052021001970000004f0030009c0000004f03008041000000c0013002100000005a011001c7013501300000040f00000060031002700000004f03300197000000200030008c000000200400003900000000040340190000001f0640018f000000200740019000000080057001bf000000800a000039000000850000613d000000000801034f000000008908043c000000000a9a043600000000005a004b000000810000c13d000000000006004b000000920000613d000000000771034f0000000306600210000000000805043300000000086801cf000000000868022f000000000707043b0000010006600089000000000767022f00000000066701cf000000000686019f00000000006504350000000100200190000000cb0000613d0000001f01400039000000600210018f00000080012001bf000000400010043f000000200030008c0000000106000029000000550000413d000000800400043d0000005b0040009c000000550000813d000000a4032000390000000005000411000000000045004b000000e90000c13d00000052046001970000004e05000041000000000053043500000104032001bf000000000043043500000000030004140000005f04000041000000000041043500000084042001bf0000000000040435000000e40420003900000020050000390000000000540435000000c4022000390000006004000039000000000042043500000040011002100000004f0030009c0000004f03008041000000c002300210000000000121019f00000060011001c700008006020000390135012b0000040f0000000100200190000000f60000613d00000000020000310000000103200367000000000101043b000000000001004b0000000002000019000000f90000613d0000005201100197000000400200043d00000000001204350000004f0020009c0000004f02008041000000400120021000000061011001c7000001360001042e000000000001042f0000001f0530018f0000005106300198000000400200043d0000000004620019000000d60000613d000000000701034f0000000008020019000000007907043c0000000008980436000000000048004b000000d20000c13d000000000005004b000000e30000613d000000000161034f0000000305500210000000000604043300000000065601cf000000000656022f000000000101043b0000010005500089000000000151022f00000000015101cf000000000161019f000000000014043500000060013002100000004f0020009c0000004f020080410000004002200210000000000112019f00000137000104300000005c04000041000000000041043500000084042001bf000000200500003900000000005404350000001d040000390000000000430435000000c4022000390000005d03000041000000000032043500000040011002100000005e011001c7000001370001043000000060021002700000004f02200197000000000301034f0000001f0520018f0000005106200198000000400100043d0000000004610019000001040000613d000000000703034f0000000008010019000000007907043c0000000008980436000000000048004b000001000000c13d000000000005004b000001110000613d000000000363034f0000000305500210000000000604043300000000065601cf000000000656022f000000000303043b0000010005500089000000000353022f00000000035301cf000000000363019f000000000034043500000060022002100000004f0010009c0000004f010080410000004001100210000000000121019f0000013700010430000000000001042f000000580200004100000000002004430000000501100270000000000201003100000004002004430000000101010031000000240010044300000000010004140000004f0010009c0000004f01008041000000c00110021000000059011001c70000800502000039013501300000040f00000001002001900000012a0000613d000000000101043b000000000001042d000000000001042f0000012e002104210000000102000039000000000001042d0000000002000019000000000001042d00000133002104230000000102000039000000000001042d0000000002000019000000000001042d0000013500000432000001360001042e0000013700010430010008fff8d0c4be099c1107857d6e5e66921efba3841987453f50df63f5eaf800000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe0000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0000000200000000000000000000000000000080000001000000000000000000000000000000000000000000000000000000000000000000000000008124b78e000000000000000000000000000000000000000000000000000000007671114d74b9982c0000000000000000000000000000000000000000000000000000000050524f4a4543545f464143544f52590000000000000000000000000000000000310ab089e4439a4c15d089f94afb7896ff553aecb10793d0ab882de59d99a32e02000002000000000000000000000000000000440000000000000000000000000000000000000000000000000000000000000064000000800000000000000000000000000000000000000001000000000000000000000000000000000000000008c379a000000000000000000000000000000000000000000000000000000000546f6b656e204c61756e63686572203a20756e617574686f726973656400000000000000000000000000000000000000000000640000000000000000000000009c4d535bdea7cd8a978f128b93471df48c7dbab89d703809115bdc118c235bfd02000000000000000000000000000000000000a4000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000008000000000000000000000000000000000000000000000000000000000000000000000000000000000a13e25de4ab3721068fa57a336a4dbab39081234ded30926c92afaa085566598
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000f8274c5e5149a6e0fc5190483323a1b399896a8a
-----Decoded View---------------
Arg [0] : _galaxisRegistry (address): 0xF8274c5E5149a6e0FC5190483323a1B399896a8A
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000f8274c5e5149a6e0fc5190483323a1b399896a8a
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
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.