Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 839 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Admin_mint_erc20 | 15746955 | 653 days ago | IN | 0 ETH | 0.00138735 | ||||
Withdraw | 15660034 | 666 days ago | IN | 0 ETH | 0.00049108 | ||||
Mint | 15643424 | 668 days ago | IN | 0.08 ETH | 0.00150853 | ||||
Mint | 15643293 | 668 days ago | IN | 0.008 ETH | 0.00041166 | ||||
Mint | 15643291 | 668 days ago | IN | 0.08 ETH | 0.00043068 | ||||
Mint | 15643285 | 668 days ago | IN | 0.008 ETH | 0.00029372 | ||||
Mint | 15643272 | 668 days ago | IN | 0.024 ETH | 0.00052147 | ||||
Mint | 15643270 | 668 days ago | IN | 0.016 ETH | 0.00053777 | ||||
Mint | 15643265 | 668 days ago | IN | 0.008 ETH | 0.00052792 | ||||
Mint | 15643261 | 668 days ago | IN | 0.08 ETH | 0.0005959 | ||||
Mint | 15643255 | 668 days ago | IN | 0.08 ETH | 0.00079638 | ||||
Mint | 15643254 | 668 days ago | IN | 0.08 ETH | 0.00086184 | ||||
Mint | 15643253 | 668 days ago | IN | 0.08 ETH | 0.00091583 | ||||
Mint | 15643251 | 668 days ago | IN | 0.08 ETH | 0.00099547 | ||||
Mint | 15643251 | 668 days ago | IN | 0.08 ETH | 0.00099547 | ||||
Mint | 15643251 | 668 days ago | IN | 0.008 ETH | 0.00103909 | ||||
Mint | 15643250 | 668 days ago | IN | 0.016 ETH | 0.00112354 | ||||
Mint | 15643250 | 668 days ago | IN | 0.016 ETH | 0.00116336 | ||||
Mint | 15643250 | 668 days ago | IN | 0.016 ETH | 0.00116336 | ||||
Mint | 15643249 | 668 days ago | IN | 0.08 ETH | 0.00116511 | ||||
Mint | 15643249 | 668 days ago | IN | 0.08 ETH | 0.00120493 | ||||
Mint | 15643249 | 668 days ago | IN | 0.08 ETH | 0.00120493 | ||||
Mint | 15643249 | 668 days ago | IN | 0.08 ETH | 0.00121289 | ||||
Mint | 15643249 | 668 days ago | IN | 0.016 ETH | 0.00122484 | ||||
Mint | 15643249 | 668 days ago | IN | 0.08 ETH | 0.00122484 |
Latest 17 internal transactions
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
15660034 | 666 days ago | 4.7132 ETH | ||||
15660034 | 666 days ago | 7.0698 ETH | ||||
15660034 | 666 days ago | 11.783 ETH | ||||
15660034 | 666 days ago | 11.783 ETH | ||||
15660034 | 666 days ago | 11.783 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643244 | 668 days ago | 0.08 ETH | ||||
15643241 | 668 days ago | 0.08 ETH | ||||
15643241 | 668 days ago | 0.08 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Vyper_contract
Compiler Version
vyper:0.3.7
Contract Source Code (Vyper language format)
# @version 0.3.7 # @notice NPC-ers Minter # @author npcers.eth # @license MIT """ :=+******++=-: -+*+======------=+++=: #+========------------=++=. #+=======------------------++: *+=======--------------------:++ =*=======------------------------*. .%========-------------------------*. %+=======-------------------------:-# +*========--------------------------:# %=========--------------------------:#. %=========--------------------+**=--:++ #+========-----=*#%#=--------#@@@@+-::*: :%========-----+@@@@%=-------=@@@@#-::+= -#======-------+@@@%=----=*=--+**=-::#: :#+====---------==----===@%=------::% #+===-------------======@%=------:=+ .%===------------=======+@%------::# #+==-----------=========+@%-------+ %===------------*%%%%%%%%@@#-----#. %====-----------============----#: *+==#+----------+##%%%%%%%%@--=*. -#==+%=---------=+=========--*= +===+%+--------------------*- =====*#=------------------# .======*#*=------------=*+. -======+*#*+--------*+ .-========+***+++=-. .-=======: """ from vyper.interfaces import ERC20 interface ERC721: def mint(recipient: address): nonpayable def totalSupply() -> uint256: nonpayable interface ThingToken: def mint(recipient: address, amount: uint256): nonpayable # Addresses owner: public(address) nft_addr: public(address) token_addr: public(address) # Mint Parameters min_price: public(uint256) # Coupon! coupon_token: public(address) whitelist: public(HashMap[address, bool]) used_coupon: public(HashMap[address, uint256]) whitelist_max: public(uint256) # Airdrop! is_erc20_drop_live: public(bool) erc20_drop_quantity: public(uint256) # Constants MAX_MINT: constant(uint256) = 6000 BATCH_LIMIT: constant(uint256) = 10 WITHDRAW_LIST: constant(address[4]) = [ 0xccBF601eB2f5AA2D5d68b069610da6F1627D485d, 0xAdcB949a288ec2500c1109f9876118d064c40dA6, 0xc59eae56D3F0052cdDe752C10373cd0B86451EB2, 0x84865Bb349998D6b813DB7Cc0F722fD0A94e6e27 ] WITHDRAW_PCT: constant(uint256[4]) = [ 25, 25, 25, 15 ] @external def __init__(): self.owner = msg.sender self.min_price = as_wei_value(0.008, "ether") self.whitelist_max = 3 self.erc20_drop_quantity = 1000 * 10**18 self.is_erc20_drop_live = True @internal @view def _has_coupon(addr: address) -> bool: has_coupon: bool = False if self.used_coupon[addr] >= self.whitelist_max: has_coupon = False elif self.whitelist[addr] == True: has_coupon = True elif self.coupon_token == empty(address): has_coupon = False elif ERC20(self.coupon_token).balanceOf(addr) > 0: has_coupon = True return has_coupon @external @view def has_coupon(addr: address) -> bool: """ @notice Check if the user is authorized for free mints @param addr Address to check eligibility @return bool True if eligible """ return self._has_coupon(addr) @internal @view def _mint_price(quantity: uint256, addr: address) -> uint256: if self._has_coupon(addr): mints_left: uint256 = self.whitelist_max - self.used_coupon[addr] return self.min_price * (quantity - min(quantity, mints_left)) else: return self.min_price * quantity @external @view def mint_price(quantity: uint256, addr: address) -> uint256: """ @notice Calculate price of minting a quantity of NFTs for a specific address @param quantity Number of NFTs to mint @param addr Address to mint for """ return self._mint_price(quantity, addr) @external @payable def mint(quantity: uint256): """ @notice Mint up to MAX_MINT NFTs at a time. Also supplies $THING if drop is live. @param quantity The number of NFTs to mint """ assert quantity <= BATCH_LIMIT # dev: Mint batch capped assert msg.value >= self._mint_price(quantity, msg.sender) supply: uint256 = ERC721(self.nft_addr).totalSupply() assert supply + quantity < MAX_MINT # dev: Exceed max mint cap for i in range(BATCH_LIMIT): if i >= quantity: break ERC721(self.nft_addr).mint(msg.sender) if self.is_erc20_drop_live: ThingToken(self.token_addr).mint( msg.sender, quantity * self.erc20_drop_quantity ) if self._has_coupon(msg.sender): self.used_coupon[msg.sender] += min( quantity, self.whitelist_max - self.used_coupon[msg.sender] ) @external def premint(target: address): """ @notice Treasury reserves @dev Revert if somebody has already minted """ assert ERC721(self.nft_addr).totalSupply() == 0 for i in range(100): ERC721(self.nft_addr).mint(target) @external def admin_set_nft_addr(addr: address): """ @notice Update NFT address @param addr New contract address """ assert msg.sender == self.owner self.nft_addr = addr @external def admin_set_token_addr(addr: address): """ @notice Update address of ERC-20 token @param addr New contract address """ assert msg.sender == self.owner self.token_addr = addr @external def admin_new_owner(new_owner: address): """ @notice Update owner of minter contract @param new_owner New contract owner address """ assert msg.sender == self.owner # dev: "Admin Only" self.owner = new_owner @external def withdraw(): """ @notice Withdraw funds to withdraw list @dev Anybody can call, triggers withdraw in proportion, remainder to owner """ init_bal : uint256 = self.balance for i in range(4): send(WITHDRAW_LIST[i], init_bal * WITHDRAW_PCT[i] / 100) send(self.owner, self.balance) @external def admin_update_coupon_token(token: address): """ @notice Holders of any ERC20 coupon token are eligible for free mint @param token Address of ERC20 token """ assert self.owner == msg.sender # dev: "Admin Only" self.coupon_token = token @external def admin_add_to_whitelist(addr: address): """ @notice Whitelist a specific address for free mints i @dev defined by whitelist_max @param addr Address to add to whitelist """ assert self.owner == msg.sender # dev: "Admin Only" self.whitelist[addr] = True @external def admin_mint_erc20(addr: address, quantity: uint256): """ @notice Mint $THING tokens to a specific address @param addr Address to mint ERC20 for @param quantity Number of tokens to mint """ assert self.owner == msg.sender ThingToken(self.token_addr).mint(addr, quantity) @external def admin_mint_nft(addr: address): """ @notice Mint an NFT to a specific address @param addr Address to mint to """ assert self.owner == msg.sender ERC721(self.nft_addr).mint(addr) @external def admin_update_whitelist_max(max_val: uint256): """ @notice Update number of free mints whitelisted useres get @param max_val New value for whitelist cap """ assert self.owner == msg.sender self.whitelist_max = max_val @external def admin_update_erc20_drop_live(status: bool): """ @notice Update if $THING tokens also distributed on mint @param status Boolean True for token distribution, False for no """ assert self.owner == msg.sender self.is_erc20_drop_live = status @external def admin_update_erc20_drop_quantity(quantity: uint256): """ @notice Update quantity of tokens disbursed on mint @param quantity New number of tokens """ assert self.owner == msg.sender self.erc20_drop_quantity = quantity @external def admin_update_mint_price(new_value: uint256): """ @notice Update mint price @param new_value New mint price """ assert self.owner == msg.sender self.min_price = new_value
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"stateMutability":"nonpayable","type":"constructor","inputs":[],"outputs":[]},{"stateMutability":"view","type":"function","name":"has_coupon","inputs":[{"name":"addr","type":"address"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"mint_price","inputs":[{"name":"quantity","type":"uint256"},{"name":"addr","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"payable","type":"function","name":"mint","inputs":[{"name":"quantity","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"premint","inputs":[{"name":"target","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_set_nft_addr","inputs":[{"name":"addr","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_set_token_addr","inputs":[{"name":"addr","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_new_owner","inputs":[{"name":"new_owner","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"withdraw","inputs":[],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_update_coupon_token","inputs":[{"name":"token","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_add_to_whitelist","inputs":[{"name":"addr","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_mint_erc20","inputs":[{"name":"addr","type":"address"},{"name":"quantity","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_mint_nft","inputs":[{"name":"addr","type":"address"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_update_whitelist_max","inputs":[{"name":"max_val","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_update_erc20_drop_live","inputs":[{"name":"status","type":"bool"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_update_erc20_drop_quantity","inputs":[{"name":"quantity","type":"uint256"}],"outputs":[]},{"stateMutability":"nonpayable","type":"function","name":"admin_update_mint_price","inputs":[{"name":"new_value","type":"uint256"}],"outputs":[]},{"stateMutability":"view","type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"nft_addr","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"token_addr","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"min_price","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"coupon_token","inputs":[],"outputs":[{"name":"","type":"address"}]},{"stateMutability":"view","type":"function","name":"whitelist","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"used_coupon","inputs":[{"name":"arg0","type":"address"}],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"whitelist_max","inputs":[],"outputs":[{"name":"","type":"uint256"}]},{"stateMutability":"view","type":"function","name":"is_erc20_drop_live","inputs":[],"outputs":[{"name":"","type":"bool"}]},{"stateMutability":"view","type":"function","name":"erc20_drop_quantity","inputs":[],"outputs":[{"name":"","type":"uint256"}]}]
Contract Creation Code
346109875733600055661c6bf5263400006003556003600755683635c9adc5dea00000600955600160085561094a61003c6100003961094a610000f36003361161000c576107e4565b60003560e01c63a0712d6881186101d1576024361061093857600a600435116109385760043560c0523360e052610044610140610891565b610140513410610938576001546318160ddd610160526020610160600461017c6000855af1610078573d600060003e3d6000fd5b60203d10610938576101609050516101405261176f61014051600435808201828110610938579050905011610938576000600a905b806101605260043561016051106100c357610105565b600154636a62784261018052336101a052803b15610938576000610180602461019c6000855af16100f9573d600060003e3d6000fd5b506001018181186100ad575b505060085415610165576002546340c10f1961016052336101805260043560095480820281158383830414171561093857905090506101a052803b15610938576000610160604461017c6000855af1610163573d600060003e3d6000fd5b505b336040526101746101606107ea565b61016051156101cf576006336020526000526040600020805460043560075460063360205260005260406000205480820382811161093857905090508082811882841002189050905080820182811061093857905090508155505b005b346109385763bcd94402811861020d5760243610610938576004358060a01c6109385760c052602060c05160405261020960e06107ea565b60e0f35b63e73008fc811861024e5760443610610938576024358060a01c6109385761014052602060043560c0526101405160e052610249610160610891565b610160f35b631403706881186102f45760243610610938576004358060a01c610938576040526001546318160ddd606052602060606004607c6000855af1610296573d600060003e3d6000fd5b60203d106109385760609050516109385760006064905b80606052600154636a62784260805260405160a052803b1561093857600060806024609c6000855af16102e5573d600060003e3d6000fd5b506001018181186102ad575050005b63a08af5f481186103265760243610610938576004358060a01c61093857604052600054331861093857604051600155005b637023be8381186103585760243610610938576004358060a01c61093857604052600054331861093857604051600255005b638fa47cec811861038a5760243610610938576004358060a01c61093857604052600054331861093857604051600055005b633ccfd60b811861049d5760043610610938574760405260006004905b806060526000600060006000604051601961010052601961012052601961014052600f61016052610100606051600381116109385760051b8101905051808202811583838304141715610938579050905060648104905073ccbf601eb2f5aa2d5d68b069610da6f1627d485d60805273adcb949a288ec2500c1109f9876118d064c40da660a05273c59eae56d3f0052cdde752c10373cd0b86451eb260c0527384865bb349998d6b813db7cc0f722fd0a94e6e2760e0526080606051600381116109385760051b81019050516000f115610938576001018181186103a75750506000600060006000476000546000f11561093857005b634fe41ad781186104cf5760243610610938576004358060a01c61093857604052336000541861093857604051600455005b63a450d677811861050e5760243610610938576004358060a01c6109385760405233600054186109385760016005604051602052600052604060002055005b63c00beab381186105755760443610610938576004358060a01c610938576040523360005418610938576002546340c10f1960605260405160805260243560a052803b1561093857600060606044607c6000855af1610572573d600060003e3d6000fd5b50005b63898cff2b81186105d65760243610610938576004358060a01c61093857604052336000541861093857600154636a627842606052604051608052803b1561093857600060606024607c6000855af16105d3573d600060003e3d6000fd5b50005b63afa5f8e881186105fa576024361061093857336000541861093857600435600755005b6381bee4ff811861062c5760243610610938576004358060011c61093857604052336000541861093857604051600855005b631171fd8c8118610650576024361061093857336000541861093857600435600955005b63c32b7b408118610674576024361061093857336000541861093857600435600355005b638da5cb5b811861069357600436106109385760005460405260206040f35b63b4bb72c981186106b257600436106109385760015460405260206040f35b638b56b77a81186106d157600436106109385760025460405260206040f35b63c3ab5fb481186106f057600436106109385760035460405260206040f35b6383d044dc811861070f57600436106109385760045460405260206040f35b639b19251a811861074a5760243610610938576004358060a01c61093857604052600560405160205260005260406000205460605260206060f35b63d685e4f181186107855760243610610938576004358060a01c61093857604052600660405160205260005260406000205460605260206060f35b63297e260b81186107a457600436106109385760075460405260206040f35b63e2e03f8e81186107c357600436106109385760085460405260206040f35b63e9288b3a81186107e257600436106109385760095460405260206040f35b505b60006000fd5b60006060526007546006604051602052600052604060002054101561088357600160056040516020526000526040600020541861082b576001606052610889565b60045461083c576000606052610889565b6004546370a0823160805260405160a052602060806024609c845afa610867573d600060003e3d6000fd5b60203d1061093857608090505115610889576001606052610889565b60006060525b606051815250565b60e0516040526108a26101006107ea565b610100516108d05760035460c051808202811583838304141715610938579050905081525061093656610936565b600754600660e05160205260005260406000205480820382811161093857905090506101205260035460c05160c0516101205180828118828410021890509050808203828111610938579050905080820281158383830414171561093857905090508152505b565b600080fda165767970657283000307000b005b600080fd
Deployed Bytecode
0x6003361161000c576107e4565b60003560e01c63a0712d6881186101d1576024361061093857600a600435116109385760043560c0523360e052610044610140610891565b610140513410610938576001546318160ddd610160526020610160600461017c6000855af1610078573d600060003e3d6000fd5b60203d10610938576101609050516101405261176f61014051600435808201828110610938579050905011610938576000600a905b806101605260043561016051106100c357610105565b600154636a62784261018052336101a052803b15610938576000610180602461019c6000855af16100f9573d600060003e3d6000fd5b506001018181186100ad575b505060085415610165576002546340c10f1961016052336101805260043560095480820281158383830414171561093857905090506101a052803b15610938576000610160604461017c6000855af1610163573d600060003e3d6000fd5b505b336040526101746101606107ea565b61016051156101cf576006336020526000526040600020805460043560075460063360205260005260406000205480820382811161093857905090508082811882841002189050905080820182811061093857905090508155505b005b346109385763bcd94402811861020d5760243610610938576004358060a01c6109385760c052602060c05160405261020960e06107ea565b60e0f35b63e73008fc811861024e5760443610610938576024358060a01c6109385761014052602060043560c0526101405160e052610249610160610891565b610160f35b631403706881186102f45760243610610938576004358060a01c610938576040526001546318160ddd606052602060606004607c6000855af1610296573d600060003e3d6000fd5b60203d106109385760609050516109385760006064905b80606052600154636a62784260805260405160a052803b1561093857600060806024609c6000855af16102e5573d600060003e3d6000fd5b506001018181186102ad575050005b63a08af5f481186103265760243610610938576004358060a01c61093857604052600054331861093857604051600155005b637023be8381186103585760243610610938576004358060a01c61093857604052600054331861093857604051600255005b638fa47cec811861038a5760243610610938576004358060a01c61093857604052600054331861093857604051600055005b633ccfd60b811861049d5760043610610938574760405260006004905b806060526000600060006000604051601961010052601961012052601961014052600f61016052610100606051600381116109385760051b8101905051808202811583838304141715610938579050905060648104905073ccbf601eb2f5aa2d5d68b069610da6f1627d485d60805273adcb949a288ec2500c1109f9876118d064c40da660a05273c59eae56d3f0052cdde752c10373cd0b86451eb260c0527384865bb349998d6b813db7cc0f722fd0a94e6e2760e0526080606051600381116109385760051b81019050516000f115610938576001018181186103a75750506000600060006000476000546000f11561093857005b634fe41ad781186104cf5760243610610938576004358060a01c61093857604052336000541861093857604051600455005b63a450d677811861050e5760243610610938576004358060a01c6109385760405233600054186109385760016005604051602052600052604060002055005b63c00beab381186105755760443610610938576004358060a01c610938576040523360005418610938576002546340c10f1960605260405160805260243560a052803b1561093857600060606044607c6000855af1610572573d600060003e3d6000fd5b50005b63898cff2b81186105d65760243610610938576004358060a01c61093857604052336000541861093857600154636a627842606052604051608052803b1561093857600060606024607c6000855af16105d3573d600060003e3d6000fd5b50005b63afa5f8e881186105fa576024361061093857336000541861093857600435600755005b6381bee4ff811861062c5760243610610938576004358060011c61093857604052336000541861093857604051600855005b631171fd8c8118610650576024361061093857336000541861093857600435600955005b63c32b7b408118610674576024361061093857336000541861093857600435600355005b638da5cb5b811861069357600436106109385760005460405260206040f35b63b4bb72c981186106b257600436106109385760015460405260206040f35b638b56b77a81186106d157600436106109385760025460405260206040f35b63c3ab5fb481186106f057600436106109385760035460405260206040f35b6383d044dc811861070f57600436106109385760045460405260206040f35b639b19251a811861074a5760243610610938576004358060a01c61093857604052600560405160205260005260406000205460605260206060f35b63d685e4f181186107855760243610610938576004358060a01c61093857604052600660405160205260005260406000205460605260206060f35b63297e260b81186107a457600436106109385760075460405260206040f35b63e2e03f8e81186107c357600436106109385760085460405260206040f35b63e9288b3a81186107e257600436106109385760095460405260206040f35b505b60006000fd5b60006060526007546006604051602052600052604060002054101561088357600160056040516020526000526040600020541861082b576001606052610889565b60045461083c576000606052610889565b6004546370a0823160805260405160a052602060806024609c845afa610867573d600060003e3d6000fd5b60203d1061093857608090505115610889576001606052610889565b60006060525b606051815250565b60e0516040526108a26101006107ea565b610100516108d05760035460c051808202811583838304141715610938579050905081525061093656610936565b600754600660e05160205260005260406000205480820382811161093857905090506101205260035460c05160c0516101205180828118828410021890509050808203828111610938579050905080820281158383830414171561093857905090508152505b565b600080fda165767970657283000307000b
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ 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.