Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 2,584 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Bears Delu... | 21484727 | 26 days ago | IN | 0 ETH | 0.00175731 | ||||
Claim Bears Delu... | 21458986 | 30 days ago | IN | 0 ETH | 0.00087927 | ||||
Claim Bears Delu... | 21440692 | 32 days ago | IN | 0 ETH | 0.00123821 | ||||
Claim Bears Delu... | 21435157 | 33 days ago | IN | 0 ETH | 0.00188611 | ||||
Claim Bears Delu... | 21206937 | 65 days ago | IN | 0 ETH | 0.00109156 | ||||
Claim Bears Delu... | 21138699 | 74 days ago | IN | 0 ETH | 0.00184509 | ||||
Claim Bears Delu... | 20611411 | 148 days ago | IN | 0 ETH | 0.00019412 | ||||
Claim Bears Delu... | 20585734 | 152 days ago | IN | 0 ETH | 0.00023952 | ||||
Claim Bears Delu... | 20328922 | 187 days ago | IN | 0 ETH | 0.00109999 | ||||
Claim Bears Delu... | 19660524 | 281 days ago | IN | 0 ETH | 0.00253091 | ||||
Claim Bears Delu... | 18946759 | 381 days ago | IN | 0 ETH | 0.00127533 | ||||
Claim Bears Delu... | 18709471 | 414 days ago | IN | 0 ETH | 0.00338681 | ||||
Claim Bears Delu... | 18398464 | 458 days ago | IN | 0 ETH | 0.00072933 | ||||
Claim Bears Delu... | 18122830 | 496 days ago | IN | 0 ETH | 0.00179185 | ||||
Claim Bears Delu... | 18059319 | 505 days ago | IN | 0 ETH | 0.00140176 | ||||
Claim Bears Delu... | 18005177 | 513 days ago | IN | 0 ETH | 0.00123565 | ||||
Claim Bears Delu... | 18004565 | 513 days ago | IN | 0 ETH | 0.00235271 | ||||
Claim Bears Delu... | 17814381 | 540 days ago | IN | 0 ETH | 0.00641619 | ||||
Claim Bears Delu... | 17741099 | 550 days ago | IN | 0 ETH | 0.00181032 | ||||
Claim Bears Delu... | 17612956 | 568 days ago | IN | 0 ETH | 0.00258272 | ||||
Claim Bears Delu... | 17234009 | 621 days ago | IN | 0 ETH | 0.00682454 | ||||
Claim Bears Delu... | 17105166 | 639 days ago | IN | 0 ETH | 0.00835193 | ||||
Claim Bears Delu... | 16923782 | 665 days ago | IN | 0 ETH | 0.00184238 | ||||
Claim Bears Delu... | 16900785 | 668 days ago | IN | 0 ETH | 0.00232788 | ||||
Claim Bears Delu... | 16868049 | 673 days ago | IN | 0 ETH | 0.00348448 |
Loading...
Loading
Contract Name:
ClaimVXDeluxe
Compiler Version
v0.8.13+commit.abaa5c0e
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
//SPDX-License-Identifier: MIT pragma solidity 0.8.13; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/security/ReentrancyGuard.sol"; import "@openzeppelin/contracts/utils/cryptography/MerkleProof.sol"; import "@openzeppelin/contracts/token/ERC721/IERC721.sol"; import "../../interfaces/BearsDeluxeI.sol"; import "../../interfaces/HoneyTokenI.sol"; import "../../interfaces/VXDeluxeI.sol"; import "hardhat/console.sol"; contract ClaimVXDeluxe is ReentrancyGuard, Ownable { bytes32 public merkleRoot; BearsDeluxeI public bearsDeluxe; HoneyTokenI public honey; VXDeluxeI public vxDeluxe; uint16[] public forfeitIds; uint256 public customVX = 6900; uint256 public whitelistVX = 8400; uint256 public forfeitIndex = 0; uint256 public price = 0.069 ether; uint256 public honeyPrice = 100 ether; bool public publicMintOpen = false; bool public claimingOpen = false; bool public whitelistOpen = false; mapping(address => uint256) public claimedPerWallet; mapping(uint256 => bool) public forfeitedIds; event ClaimedBears(address indexed _owner, uint16[] _ids, uint16[] _bearsIds); event ClaimedWhitelist(address indexed _owner, uint16[] _ids); event Claimed(address indexed _owner, uint16[] _ids); event ChangedPrice(uint256 _price); event MerkleRootChanged(bytes32 _merkleRoot); event SetContract(address _contract, string _type); event ChangedIdIndex(uint256 _newIndex); event PublicMint(address indexed _owner, uint16[] ids); event PublicMintToggled(bool isOpen); event WhiteListMintToggled(bool isOpen); event ClaimingToggled(bool isOpen); error NotOwner(); error AlreadyMinted(); error MaxSupplyReached(); error WrongAmount(); error WrongLeaf(); error WrongProof(); error CapReached(); error PublicMintClosed(); error ClaimingClosed(); error WhiteListClosed(); constructor( BearsDeluxeI _bearsDeluxe, HoneyTokenI _honey, VXDeluxeI _vxDeluxe ) { bearsDeluxe = _bearsDeluxe; honey = _honey; vxDeluxe = _vxDeluxe; } // solhint-disable-next-line function claimBearsDeluxe( uint16[] calldata _tokenIds, bool _forfeith, bool payHoney ) external payable nonReentrant { if (claimingOpen == false) revert ClaimingClosed(); uint256 i; uint16[] memory ids = new uint16[](_tokenIds.length); uint256 totalPriceToPay; uint256 _price = payHoney ? honeyPrice : price; for (i; i < _tokenIds.length; ) { unchecked { uint16 currentToken = _tokenIds[i]; if (bearsDeluxe.ownerOf(currentToken) != msg.sender) revert NotOwner(); if (_forfeith) { if (customVX >= vxDeluxe.MAX_SUPPLY()) { revert MaxSupplyReached(); } ids[i] = uint16(++customVX); totalPriceToPay += _price; if (forfeitedIds[currentToken]) revert AlreadyMinted(); forfeitIds.push(currentToken); forfeitedIds[currentToken] = true; } else { if (vxDeluxe.exists(currentToken)) revert AlreadyMinted(); ids[i] = currentToken; totalPriceToPay += _price; } i++; } } if (payHoney == true) { if (honey.balanceOf(msg.sender) < totalPriceToPay) revert WrongAmount(); honey.burn(msg.sender, totalPriceToPay); } else { if (msg.value != totalPriceToPay) revert WrongAmount(); } vxDeluxe.mintBatch(msg.sender, ids); emit ClaimedBears(msg.sender, ids, _tokenIds); } function claimWhitelist( uint256 _amount, uint16 _whitelistedAmount, bytes32[] calldata _merkleProof ) external payable nonReentrant { if (whitelistOpen == false) revert WhiteListClosed(); if (_amount > _whitelistedAmount) revert WrongAmount(); //check merkle if (!MerkleProof.verify(_merkleProof, merkleRoot, keccak256(abi.encodePacked(msg.sender, _whitelistedAmount)))) revert WrongProof(); //checking how much he already minted if (claimedPerWallet[msg.sender] >= _amount) revert CapReached(); _amount -= claimedPerWallet[msg.sender]; uint16[] memory ids = new uint16[](_amount); uint256 i; for (i; i < _amount; ) { unchecked { if (customVX >= vxDeluxe.MAX_SUPPLY()) revert MaxSupplyReached(); ids[i] = uint16(++customVX); i++; } } claimedPerWallet[msg.sender] += _amount; if (msg.value != price * _amount) revert WrongAmount(); vxDeluxe.mintBatch(msg.sender, ids); emit ClaimedWhitelist(msg.sender, ids); } function claimWhitelistWithHoney( uint256 _amount, uint16 _whitelistedAmount, bytes32[] calldata _merkleProof ) external nonReentrant { if (whitelistOpen == false) revert WhiteListClosed(); if (_amount > _whitelistedAmount) revert WrongAmount(); //check merkle if (!MerkleProof.verify(_merkleProof, merkleRoot, keccak256(abi.encodePacked(msg.sender, _whitelistedAmount)))) revert WrongProof(); //checking how much he already minted if (claimedPerWallet[msg.sender] >= _amount) revert CapReached(); _amount -= claimedPerWallet[msg.sender]; uint16[] memory ids = new uint16[](_amount); uint256 i; for (i; i < _amount; ) { unchecked { if (customVX >= vxDeluxe.MAX_SUPPLY()) revert MaxSupplyReached(); ids[i] = uint16(++customVX); i++; } } claimedPerWallet[msg.sender] += _amount; if (honey.balanceOf(msg.sender) < (honeyPrice * _amount)) revert WrongAmount(); honey.burn(msg.sender, (honeyPrice * _amount)); vxDeluxe.mintBatch(msg.sender, ids); emit ClaimedWhitelist(msg.sender, ids); } function publicMint(bool payHoney, uint256 _amount) external payable nonReentrant { if (publicMintOpen == false) revert PublicMintClosed(); if (customVX + _amount > vxDeluxe.MAX_SUPPLY()) revert MaxSupplyReached(); require(_amount <= 10 && _amount > 0, "Max 10 mint per tx, min 1"); uint256 totalPriceToPay; uint16[] memory ids = new uint16[](_amount); uint256 i; uint256 _price = payHoney ? honeyPrice : price; for (i; i < _amount; ) { unchecked { ids[i] = uint16(++customVX); totalPriceToPay += _price; i++; } } if (payHoney == true) { if (honey.balanceOf(msg.sender) < totalPriceToPay) revert WrongAmount(); honey.burn(msg.sender, totalPriceToPay); } else { if (msg.value != totalPriceToPay) revert WrongAmount(); } vxDeluxe.mintBatch(msg.sender, ids); emit PublicMint(msg.sender, ids); } function mintSpares(bool payHoney, uint256 _amount) external payable nonReentrant { if (publicMintOpen == false) revert PublicMintClosed(); if (forfeitIndex + _amount > forfeitIds.length) revert MaxSupplyReached(); require(_amount <= 10 && _amount > 0, "Max 10 mint per tx, min 1"); uint256 i = forfeitIndex; uint16[] memory ids = new uint16[](_amount); uint256 totalPriceToPay; uint256 _price = payHoney ? honeyPrice : price; uint256 index; for (i; i < forfeitIndex + _amount; ) { unchecked { require(forfeitedIds[forfeitIds[i]] == true, "bear not foreited"); ids[index] = forfeitIds[i]; totalPriceToPay += _price; i++; index++; } } forfeitIndex = forfeitIndex + _amount; if (payHoney == true) { if (honey.balanceOf(msg.sender) < totalPriceToPay) revert WrongAmount(); honey.burn(msg.sender, totalPriceToPay); } else { if (msg.value != totalPriceToPay) revert WrongAmount(); } vxDeluxe.mintBatch(msg.sender, ids); emit PublicMint(msg.sender, ids); } function getAllForfeithIds() external view returns (uint16[] memory) { return forfeitIds; } function getPublicMintStatus() external view returns (bool) { return publicMintOpen; } function getClaimingStatus() external view returns (bool) { return claimingOpen; } function getWhiteListStatus() external view returns (bool) { return whitelistOpen; } function setBearsDeluxe(BearsDeluxeI _bearsDeluxe) external onlyOwner { bearsDeluxe = _bearsDeluxe; emit SetContract(address(_bearsDeluxe), "BearsDeluxe"); } function setHoney(HoneyTokenI _honey) external onlyOwner { honey = _honey; emit SetContract(address(_honey), "HoneyToken"); } function setVXBears(VXDeluxeI _vxDeluxe) external onlyOwner { vxDeluxe = _vxDeluxe; emit SetContract(address(_vxDeluxe), "VXDeluxe"); } function setPrice(uint256 _newPrice) external onlyOwner { price = _newPrice; emit ChangedPrice(_newPrice); } function setPublicMint(bool isOpen) external onlyOwner { publicMintOpen = isOpen; emit PublicMintToggled(isOpen); } function setWl(bool isOpen) external onlyOwner { whitelistOpen = isOpen; emit PublicMintToggled(isOpen); } function setClaiming(bool isOpen) external onlyOwner { claimingOpen = isOpen; emit PublicMintToggled(isOpen); } function setHoneyPrice(uint256 _newPrice) external onlyOwner { honeyPrice = _newPrice; emit ChangedPrice(_newPrice); } function setCustomVX(uint256 _newCustomVX) external onlyOwner { customVX = _newCustomVX; emit ChangedIdIndex(_newCustomVX); } function setWhitelistVX(uint256 _newWhitelistVX) external onlyOwner { whitelistVX = _newWhitelistVX; emit ChangedIdIndex(_newWhitelistVX); } function withdrawEther() external onlyOwner { address payable to = payable(msg.sender); to.transfer(address(this).balance); } /** * @notice sets merkle root */ function setMerkleRoot(bytes32 _merkleRoot) external onlyOwner { merkleRoot = _merkleRoot; emit MerkleRootChanged(_merkleRoot); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _setOwner(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _setOwner(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 { require(newOwner != address(0), "Ownable: new owner is the zero address"); _setOwner(newOwner); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev Contract module that helps prevent reentrant calls to a function. * * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier * available, which can be applied to functions to make sure there are no nested * (reentrant) calls to them. * * Note that because there is a single `nonReentrant` guard, functions marked as * `nonReentrant` may not call one another. This can be worked around by making * those functions `private`, and then adding `external` `nonReentrant` entry * points to them. * * TIP: If you would like to learn more about reentrancy and alternative ways * to protect against it, check out our blog post * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul]. */ abstract contract ReentrancyGuard { // Booleans are more expensive than uint256 or any type that takes up a full // word because each write operation emits an extra SLOAD to first read the // slot's contents, replace the bits taken up by the boolean, and then write // back. This is the compiler's defense against contract upgrades and // pointer aliasing, and it cannot be disabled. // The values being non-zero value makes deployment a bit more expensive, // but in exchange the refund on every call to nonReentrant will be lower in // amount. Since refunds are capped to a percentage of the total // transaction's gas, it is best to keep them low in cases like this one, to // increase the likelihood of the full refund coming into effect. uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor() { _status = _NOT_ENTERED; } /** * @dev Prevents a contract from calling itself, directly or indirectly. * Calling a `nonReentrant` function from another `nonReentrant` * function is not supported. It is possible to prevent this from happening * by making the `nonReentrant` function external, and make it call a * `private` function that does the actual work. */ modifier nonReentrant() { // On the first call to nonReentrant, _notEntered will be true require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; _; // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev These functions deal with verification of Merkle Trees proofs. * * The proofs can be generated using the JavaScript library * https://github.com/miguelmota/merkletreejs[merkletreejs]. * Note: the hashing algorithm should be keccak256 and pair sorting should be enabled. * * See `test/utils/cryptography/MerkleProof.test.js` for some examples. */ library MerkleProof { /** * @dev Returns true if a `leaf` can be proved to be a part of a Merkle tree * defined by `root`. For this, a `proof` must be provided, containing * sibling hashes on the branch from the leaf to the root of the tree. Each * pair of leaves and each pair of pre-images are assumed to be sorted. */ function verify( bytes32[] memory proof, bytes32 root, bytes32 leaf ) internal pure returns (bool) { bytes32 computedHash = leaf; for (uint256 i = 0; i < proof.length; i++) { bytes32 proofElement = proof[i]; if (computedHash <= proofElement) { // Hash(current computed hash + current element of the proof) computedHash = keccak256(abi.encodePacked(computedHash, proofElement)); } else { // Hash(current element of the proof + current computed hash) computedHash = keccak256(abi.encodePacked(proofElement, computedHash)); } } // Check if the computed hash (root) is equal to the provided root return computedHash == root; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "../../utils/introspection/IERC165.sol"; /** * @dev Required interface of an ERC721 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); /** * @dev Returns the number of tokens in ``owner``'s account. */ function balanceOf(address owner) external view returns (uint256 balance); /** * @dev Returns the owner of the `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function ownerOf(uint256 tokenId) external view returns (address owner); /** * @dev Safely transfers `tokenId` token from `from` to `to`, checking first that contract recipients * are aware of the ERC721 protocol to prevent tokens from being forever locked. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be have been allowed to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom( address from, address to, uint256 tokenId ) external; /** * @dev Transfers `tokenId` token from `from` to `to`. * * WARNING: Usage of this method is discouraged, use {safeTransferFrom} whenever possible. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * * Emits a {Transfer} event. */ function transferFrom( address from, address to, uint256 tokenId ) external; /** * @dev Gives permission to `to` to transfer `tokenId` token to another account. * The approval is cleared when the token is transferred. * * Only a single account can be approved at a time, so approving the zero address clears previous approvals. * * Requirements: * * - The caller must own the token or be an approved operator. * - `tokenId` must exist. * * Emits an {Approval} event. */ function approve(address to, uint256 tokenId) external; /** * @dev Returns the account approved for `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function getApproved(uint256 tokenId) external view returns (address operator); /** * @dev Approve or remove `operator` as an operator for the caller. * Operators can call {transferFrom} or {safeTransferFrom} for any token owned by the caller. * * Requirements: * * - The `operator` cannot be the caller. * * Emits an {ApprovalForAll} event. */ function setApprovalForAll(address operator, bool _approved) external; /** * @dev Returns if the `operator` is allowed to manage all of the assets of `owner`. * * See {setApprovalForAll} */ function isApprovedForAll(address owner, address operator) external view returns (bool); /** * @dev Safely transfers `tokenId` token from `from` to `to`. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `tokenId` token must exist and be owned by `from`. * - If the caller is not `from`, it must be approved to move this token by either {approve} or {setApprovalForAll}. * - If `to` refers to a smart contract, it must implement {IERC721Receiver-onERC721Received}, which is called upon a safe transfer. * * Emits a {Transfer} event. */ function safeTransferFrom( address from, address to, uint256 tokenId, bytes calldata data ) external; }
//SPDX-License-Identifier: MIT pragma solidity ^0.8.9; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC721/IERC721.sol"; abstract contract BearsDeluxeI is Ownable, IERC721 { function mint(address _owner, uint256 _tokenId) external virtual; function exists(uint256 _tokenId) external view virtual returns (bool); function getMaxSupply() external virtual returns (uint256); function tokensOfOwner(address _owner) external view virtual returns (uint256[] memory); }
//SPDX-License-Identifier: MIT pragma solidity ^0.8.9; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC20/IERC20.sol"; abstract contract HoneyTokenI is Ownable, IERC20 { function mint(address _owner, uint256 _amount) external virtual; function burn(address _owner, uint256 _amount) external virtual; function maxSupply() external pure virtual returns (uint256); }
//SPDX-License-Identifier: MIT pragma solidity ^0.8.9; import "@openzeppelin/contracts/access/Ownable.sol"; import "@openzeppelin/contracts/token/ERC721/IERC721.sol"; abstract contract VXDeluxeI is Ownable, IERC721 { function mint(address _owner, uint256 _tokenId) external virtual; function mintBatch(address _owner, uint16[] calldata _tokenIds) external virtual; function burn(uint256 _tokenId) external virtual; function exists(uint256 _tokenId) external view virtual returns (bool); function tokensOfOwner(address _owner) external view virtual returns (uint256[] memory); function MAX_SUPPLY() external view virtual returns (uint256); }
// SPDX-License-Identifier: MIT pragma solidity >= 0.4.22 <0.9.0; library console { address constant CONSOLE_ADDRESS = address(0x000000000000000000636F6e736F6c652e6c6f67); function _sendLogPayload(bytes memory payload) private view { uint256 payloadLength = payload.length; address consoleAddress = CONSOLE_ADDRESS; assembly { let payloadStart := add(payload, 32) let r := staticcall(gas(), consoleAddress, payloadStart, payloadLength, 0, 0) } } function log() internal view { _sendLogPayload(abi.encodeWithSignature("log()")); } function logInt(int p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(int)", p0)); } function logUint(uint p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); } function logString(string memory p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); } function logBool(bool p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); } function logAddress(address p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); } function logBytes(bytes memory p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes)", p0)); } function logBytes1(bytes1 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0)); } function logBytes2(bytes2 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0)); } function logBytes3(bytes3 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0)); } function logBytes4(bytes4 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0)); } function logBytes5(bytes5 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0)); } function logBytes6(bytes6 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0)); } function logBytes7(bytes7 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0)); } function logBytes8(bytes8 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0)); } function logBytes9(bytes9 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0)); } function logBytes10(bytes10 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0)); } function logBytes11(bytes11 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0)); } function logBytes12(bytes12 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0)); } function logBytes13(bytes13 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0)); } function logBytes14(bytes14 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0)); } function logBytes15(bytes15 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0)); } function logBytes16(bytes16 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0)); } function logBytes17(bytes17 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0)); } function logBytes18(bytes18 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0)); } function logBytes19(bytes19 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0)); } function logBytes20(bytes20 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0)); } function logBytes21(bytes21 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0)); } function logBytes22(bytes22 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0)); } function logBytes23(bytes23 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0)); } function logBytes24(bytes24 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0)); } function logBytes25(bytes25 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0)); } function logBytes26(bytes26 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0)); } function logBytes27(bytes27 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0)); } function logBytes28(bytes28 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0)); } function logBytes29(bytes29 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0)); } function logBytes30(bytes30 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0)); } function logBytes31(bytes31 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0)); } function logBytes32(bytes32 p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0)); } function log(uint p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint)", p0)); } function log(string memory p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(string)", p0)); } function log(bool p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool)", p0)); } function log(address p0) internal view { _sendLogPayload(abi.encodeWithSignature("log(address)", p0)); } function log(uint p0, uint p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint)", p0, p1)); } function log(uint p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string)", p0, p1)); } function log(uint p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool)", p0, p1)); } function log(uint p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address)", p0, p1)); } function log(string memory p0, uint p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint)", p0, p1)); } function log(string memory p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1)); } function log(string memory p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1)); } function log(string memory p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1)); } function log(bool p0, uint p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint)", p0, p1)); } function log(bool p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1)); } function log(bool p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1)); } function log(bool p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1)); } function log(address p0, uint p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint)", p0, p1)); } function log(address p0, string memory p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1)); } function log(address p0, bool p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1)); } function log(address p0, address p1) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address)", p0, p1)); } function log(uint p0, uint p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint)", p0, p1, p2)); } function log(uint p0, uint p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string)", p0, p1, p2)); } function log(uint p0, uint p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool)", p0, p1, p2)); } function log(uint p0, uint p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address)", p0, p1, p2)); } function log(uint p0, string memory p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint)", p0, p1, p2)); } function log(uint p0, string memory p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,string)", p0, p1, p2)); } function log(uint p0, string memory p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool)", p0, p1, p2)); } function log(uint p0, string memory p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,address)", p0, p1, p2)); } function log(uint p0, bool p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint)", p0, p1, p2)); } function log(uint p0, bool p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string)", p0, p1, p2)); } function log(uint p0, bool p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool)", p0, p1, p2)); } function log(uint p0, bool p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address)", p0, p1, p2)); } function log(uint p0, address p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint)", p0, p1, p2)); } function log(uint p0, address p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,string)", p0, p1, p2)); } function log(uint p0, address p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool)", p0, p1, p2)); } function log(uint p0, address p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,address)", p0, p1, p2)); } function log(string memory p0, uint p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint)", p0, p1, p2)); } function log(string memory p0, uint p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,string)", p0, p1, p2)); } function log(string memory p0, uint p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool)", p0, p1, p2)); } function log(string memory p0, uint p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,address)", p0, p1, p2)); } function log(string memory p0, string memory p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,uint)", p0, p1, p2)); } function log(string memory p0, string memory p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,string)", p0, p1, p2)); } function log(string memory p0, string memory p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2)); } function log(string memory p0, string memory p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,address)", p0, p1, p2)); } function log(string memory p0, bool p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint)", p0, p1, p2)); } function log(string memory p0, bool p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2)); } function log(string memory p0, bool p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2)); } function log(string memory p0, bool p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2)); } function log(string memory p0, address p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,uint)", p0, p1, p2)); } function log(string memory p0, address p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,string)", p0, p1, p2)); } function log(string memory p0, address p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2)); } function log(string memory p0, address p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,address)", p0, p1, p2)); } function log(bool p0, uint p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint)", p0, p1, p2)); } function log(bool p0, uint p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string)", p0, p1, p2)); } function log(bool p0, uint p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool)", p0, p1, p2)); } function log(bool p0, uint p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address)", p0, p1, p2)); } function log(bool p0, string memory p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint)", p0, p1, p2)); } function log(bool p0, string memory p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2)); } function log(bool p0, string memory p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2)); } function log(bool p0, string memory p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2)); } function log(bool p0, bool p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint)", p0, p1, p2)); } function log(bool p0, bool p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2)); } function log(bool p0, bool p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2)); } function log(bool p0, bool p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2)); } function log(bool p0, address p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint)", p0, p1, p2)); } function log(bool p0, address p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2)); } function log(bool p0, address p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2)); } function log(bool p0, address p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2)); } function log(address p0, uint p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint)", p0, p1, p2)); } function log(address p0, uint p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,string)", p0, p1, p2)); } function log(address p0, uint p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool)", p0, p1, p2)); } function log(address p0, uint p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,address)", p0, p1, p2)); } function log(address p0, string memory p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,uint)", p0, p1, p2)); } function log(address p0, string memory p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,string)", p0, p1, p2)); } function log(address p0, string memory p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2)); } function log(address p0, string memory p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,address)", p0, p1, p2)); } function log(address p0, bool p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint)", p0, p1, p2)); } function log(address p0, bool p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2)); } function log(address p0, bool p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2)); } function log(address p0, bool p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2)); } function log(address p0, address p1, uint p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,uint)", p0, p1, p2)); } function log(address p0, address p1, string memory p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,string)", p0, p1, p2)); } function log(address p0, address p1, bool p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2)); } function log(address p0, address p1, address p2) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,address)", p0, p1, p2)); } function log(uint p0, uint p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,uint)", p0, p1, p2, p3)); } function log(uint p0, uint p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,string)", p0, p1, p2, p3)); } function log(uint p0, uint p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,bool)", p0, p1, p2, p3)); } function log(uint p0, uint p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,address)", p0, p1, p2, p3)); } function log(uint p0, uint p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,uint)", p0, p1, p2, p3)); } function log(uint p0, uint p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,string)", p0, p1, p2, p3)); } function log(uint p0, uint p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,bool)", p0, p1, p2, p3)); } function log(uint p0, uint p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,address)", p0, p1, p2, p3)); } function log(uint p0, uint p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,uint)", p0, p1, p2, p3)); } function log(uint p0, uint p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,string)", p0, p1, p2, p3)); } function log(uint p0, uint p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,bool)", p0, p1, p2, p3)); } function log(uint p0, uint p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,address)", p0, p1, p2, p3)); } function log(uint p0, uint p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,uint)", p0, p1, p2, p3)); } function log(uint p0, uint p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,string)", p0, p1, p2, p3)); } function log(uint p0, uint p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,bool)", p0, p1, p2, p3)); } function log(uint p0, uint p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,address)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,uint)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,string)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,bool)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,address)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,uint)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,string)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,bool)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,string,address)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,uint)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,string)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,bool)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,address)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,uint)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,string)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,bool)", p0, p1, p2, p3)); } function log(uint p0, string memory p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,string,address,address)", p0, p1, p2, p3)); } function log(uint p0, bool p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,uint)", p0, p1, p2, p3)); } function log(uint p0, bool p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,string)", p0, p1, p2, p3)); } function log(uint p0, bool p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,bool)", p0, p1, p2, p3)); } function log(uint p0, bool p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,address)", p0, p1, p2, p3)); } function log(uint p0, bool p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,uint)", p0, p1, p2, p3)); } function log(uint p0, bool p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,string)", p0, p1, p2, p3)); } function log(uint p0, bool p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,bool)", p0, p1, p2, p3)); } function log(uint p0, bool p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,address)", p0, p1, p2, p3)); } function log(uint p0, bool p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,uint)", p0, p1, p2, p3)); } function log(uint p0, bool p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,string)", p0, p1, p2, p3)); } function log(uint p0, bool p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,bool)", p0, p1, p2, p3)); } function log(uint p0, bool p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,address)", p0, p1, p2, p3)); } function log(uint p0, bool p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,uint)", p0, p1, p2, p3)); } function log(uint p0, bool p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,string)", p0, p1, p2, p3)); } function log(uint p0, bool p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,bool)", p0, p1, p2, p3)); } function log(uint p0, bool p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,address)", p0, p1, p2, p3)); } function log(uint p0, address p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,uint)", p0, p1, p2, p3)); } function log(uint p0, address p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,string)", p0, p1, p2, p3)); } function log(uint p0, address p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,bool)", p0, p1, p2, p3)); } function log(uint p0, address p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,address)", p0, p1, p2, p3)); } function log(uint p0, address p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,uint)", p0, p1, p2, p3)); } function log(uint p0, address p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,string)", p0, p1, p2, p3)); } function log(uint p0, address p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,bool)", p0, p1, p2, p3)); } function log(uint p0, address p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,string,address)", p0, p1, p2, p3)); } function log(uint p0, address p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,uint)", p0, p1, p2, p3)); } function log(uint p0, address p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,string)", p0, p1, p2, p3)); } function log(uint p0, address p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,bool)", p0, p1, p2, p3)); } function log(uint p0, address p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,address)", p0, p1, p2, p3)); } function log(uint p0, address p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,uint)", p0, p1, p2, p3)); } function log(uint p0, address p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,string)", p0, p1, p2, p3)); } function log(uint p0, address p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,bool)", p0, p1, p2, p3)); } function log(uint p0, address p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(uint,address,address,address)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,uint)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,string)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,bool)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,address)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,uint)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,string)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,bool)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,string,address)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,uint)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,string)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,bool)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,address)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,uint)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,string)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,bool)", p0, p1, p2, p3)); } function log(string memory p0, uint p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,uint,address,address)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,uint)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,string)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,bool)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,uint,address)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,string,uint)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,string,string)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,string,bool)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,string,address)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,uint)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,string)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,bool)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,bool,address)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,address,uint)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,address,string)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,address,bool)", p0, p1, p2, p3)); } function log(string memory p0, string memory p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,string,address,address)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,uint)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,string)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,bool)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,address)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,uint)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,string)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,bool)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,string,address)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,uint)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,string)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,bool)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,address)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,uint)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,string)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,bool)", p0, p1, p2, p3)); } function log(string memory p0, bool p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,bool,address,address)", p0, p1, p2, p3)); } function log(string memory p0, address p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,uint)", p0, p1, p2, p3)); } function log(string memory p0, address p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,string)", p0, p1, p2, p3)); } function log(string memory p0, address p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,bool)", p0, p1, p2, p3)); } function log(string memory p0, address p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,uint,address)", p0, p1, p2, p3)); } function log(string memory p0, address p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,string,uint)", p0, p1, p2, p3)); } function log(string memory p0, address p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,string,string)", p0, p1, p2, p3)); } function log(string memory p0, address p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,string,bool)", p0, p1, p2, p3)); } function log(string memory p0, address p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,string,address)", p0, p1, p2, p3)); } function log(string memory p0, address p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,uint)", p0, p1, p2, p3)); } function log(string memory p0, address p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,string)", p0, p1, p2, p3)); } function log(string memory p0, address p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,bool)", p0, p1, p2, p3)); } function log(string memory p0, address p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,bool,address)", p0, p1, p2, p3)); } function log(string memory p0, address p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,address,uint)", p0, p1, p2, p3)); } function log(string memory p0, address p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,address,string)", p0, p1, p2, p3)); } function log(string memory p0, address p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,address,bool)", p0, p1, p2, p3)); } function log(string memory p0, address p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(string,address,address,address)", p0, p1, p2, p3)); } function log(bool p0, uint p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,uint)", p0, p1, p2, p3)); } function log(bool p0, uint p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,string)", p0, p1, p2, p3)); } function log(bool p0, uint p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,bool)", p0, p1, p2, p3)); } function log(bool p0, uint p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,address)", p0, p1, p2, p3)); } function log(bool p0, uint p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,uint)", p0, p1, p2, p3)); } function log(bool p0, uint p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,string)", p0, p1, p2, p3)); } function log(bool p0, uint p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,bool)", p0, p1, p2, p3)); } function log(bool p0, uint p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,address)", p0, p1, p2, p3)); } function log(bool p0, uint p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,uint)", p0, p1, p2, p3)); } function log(bool p0, uint p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,string)", p0, p1, p2, p3)); } function log(bool p0, uint p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,bool)", p0, p1, p2, p3)); } function log(bool p0, uint p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,address)", p0, p1, p2, p3)); } function log(bool p0, uint p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,uint)", p0, p1, p2, p3)); } function log(bool p0, uint p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,string)", p0, p1, p2, p3)); } function log(bool p0, uint p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,bool)", p0, p1, p2, p3)); } function log(bool p0, uint p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,address)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,uint)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,string)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,bool)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,address)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,uint)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,string)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,bool)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,string,address)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,uint)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,string)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,bool)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,address)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,uint)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,string)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,bool)", p0, p1, p2, p3)); } function log(bool p0, string memory p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,string,address,address)", p0, p1, p2, p3)); } function log(bool p0, bool p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,uint)", p0, p1, p2, p3)); } function log(bool p0, bool p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,string)", p0, p1, p2, p3)); } function log(bool p0, bool p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,bool)", p0, p1, p2, p3)); } function log(bool p0, bool p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,address)", p0, p1, p2, p3)); } function log(bool p0, bool p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,uint)", p0, p1, p2, p3)); } function log(bool p0, bool p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,string)", p0, p1, p2, p3)); } function log(bool p0, bool p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,bool)", p0, p1, p2, p3)); } function log(bool p0, bool p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,address)", p0, p1, p2, p3)); } function log(bool p0, bool p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,uint)", p0, p1, p2, p3)); } function log(bool p0, bool p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,string)", p0, p1, p2, p3)); } function log(bool p0, bool p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3)); } function log(bool p0, bool p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,address)", p0, p1, p2, p3)); } function log(bool p0, bool p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,uint)", p0, p1, p2, p3)); } function log(bool p0, bool p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,string)", p0, p1, p2, p3)); } function log(bool p0, bool p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,bool)", p0, p1, p2, p3)); } function log(bool p0, bool p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,address)", p0, p1, p2, p3)); } function log(bool p0, address p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,uint)", p0, p1, p2, p3)); } function log(bool p0, address p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,string)", p0, p1, p2, p3)); } function log(bool p0, address p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,bool)", p0, p1, p2, p3)); } function log(bool p0, address p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,address)", p0, p1, p2, p3)); } function log(bool p0, address p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,uint)", p0, p1, p2, p3)); } function log(bool p0, address p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,string)", p0, p1, p2, p3)); } function log(bool p0, address p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,bool)", p0, p1, p2, p3)); } function log(bool p0, address p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,string,address)", p0, p1, p2, p3)); } function log(bool p0, address p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,uint)", p0, p1, p2, p3)); } function log(bool p0, address p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,string)", p0, p1, p2, p3)); } function log(bool p0, address p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,bool)", p0, p1, p2, p3)); } function log(bool p0, address p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,address)", p0, p1, p2, p3)); } function log(bool p0, address p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,uint)", p0, p1, p2, p3)); } function log(bool p0, address p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,string)", p0, p1, p2, p3)); } function log(bool p0, address p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,bool)", p0, p1, p2, p3)); } function log(bool p0, address p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(bool,address,address,address)", p0, p1, p2, p3)); } function log(address p0, uint p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,uint)", p0, p1, p2, p3)); } function log(address p0, uint p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,string)", p0, p1, p2, p3)); } function log(address p0, uint p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,bool)", p0, p1, p2, p3)); } function log(address p0, uint p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,address)", p0, p1, p2, p3)); } function log(address p0, uint p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,uint)", p0, p1, p2, p3)); } function log(address p0, uint p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,string)", p0, p1, p2, p3)); } function log(address p0, uint p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,bool)", p0, p1, p2, p3)); } function log(address p0, uint p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,string,address)", p0, p1, p2, p3)); } function log(address p0, uint p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,uint)", p0, p1, p2, p3)); } function log(address p0, uint p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,string)", p0, p1, p2, p3)); } function log(address p0, uint p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,bool)", p0, p1, p2, p3)); } function log(address p0, uint p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,address)", p0, p1, p2, p3)); } function log(address p0, uint p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,uint)", p0, p1, p2, p3)); } function log(address p0, uint p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,string)", p0, p1, p2, p3)); } function log(address p0, uint p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,bool)", p0, p1, p2, p3)); } function log(address p0, uint p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,uint,address,address)", p0, p1, p2, p3)); } function log(address p0, string memory p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,uint)", p0, p1, p2, p3)); } function log(address p0, string memory p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,string)", p0, p1, p2, p3)); } function log(address p0, string memory p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,bool)", p0, p1, p2, p3)); } function log(address p0, string memory p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,uint,address)", p0, p1, p2, p3)); } function log(address p0, string memory p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,string,uint)", p0, p1, p2, p3)); } function log(address p0, string memory p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,string,string)", p0, p1, p2, p3)); } function log(address p0, string memory p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,string,bool)", p0, p1, p2, p3)); } function log(address p0, string memory p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,string,address)", p0, p1, p2, p3)); } function log(address p0, string memory p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,uint)", p0, p1, p2, p3)); } function log(address p0, string memory p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,string)", p0, p1, p2, p3)); } function log(address p0, string memory p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,bool)", p0, p1, p2, p3)); } function log(address p0, string memory p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,bool,address)", p0, p1, p2, p3)); } function log(address p0, string memory p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,address,uint)", p0, p1, p2, p3)); } function log(address p0, string memory p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,address,string)", p0, p1, p2, p3)); } function log(address p0, string memory p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,address,bool)", p0, p1, p2, p3)); } function log(address p0, string memory p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,string,address,address)", p0, p1, p2, p3)); } function log(address p0, bool p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,uint)", p0, p1, p2, p3)); } function log(address p0, bool p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,string)", p0, p1, p2, p3)); } function log(address p0, bool p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,bool)", p0, p1, p2, p3)); } function log(address p0, bool p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,address)", p0, p1, p2, p3)); } function log(address p0, bool p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,uint)", p0, p1, p2, p3)); } function log(address p0, bool p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,string)", p0, p1, p2, p3)); } function log(address p0, bool p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,bool)", p0, p1, p2, p3)); } function log(address p0, bool p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,string,address)", p0, p1, p2, p3)); } function log(address p0, bool p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,uint)", p0, p1, p2, p3)); } function log(address p0, bool p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,string)", p0, p1, p2, p3)); } function log(address p0, bool p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,bool)", p0, p1, p2, p3)); } function log(address p0, bool p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,address)", p0, p1, p2, p3)); } function log(address p0, bool p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,uint)", p0, p1, p2, p3)); } function log(address p0, bool p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,string)", p0, p1, p2, p3)); } function log(address p0, bool p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,bool)", p0, p1, p2, p3)); } function log(address p0, bool p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,bool,address,address)", p0, p1, p2, p3)); } function log(address p0, address p1, uint p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,uint)", p0, p1, p2, p3)); } function log(address p0, address p1, uint p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,string)", p0, p1, p2, p3)); } function log(address p0, address p1, uint p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,bool)", p0, p1, p2, p3)); } function log(address p0, address p1, uint p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,uint,address)", p0, p1, p2, p3)); } function log(address p0, address p1, string memory p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,string,uint)", p0, p1, p2, p3)); } function log(address p0, address p1, string memory p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,string,string)", p0, p1, p2, p3)); } function log(address p0, address p1, string memory p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,string,bool)", p0, p1, p2, p3)); } function log(address p0, address p1, string memory p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,string,address)", p0, p1, p2, p3)); } function log(address p0, address p1, bool p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,uint)", p0, p1, p2, p3)); } function log(address p0, address p1, bool p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,string)", p0, p1, p2, p3)); } function log(address p0, address p1, bool p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,bool)", p0, p1, p2, p3)); } function log(address p0, address p1, bool p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,bool,address)", p0, p1, p2, p3)); } function log(address p0, address p1, address p2, uint p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,address,uint)", p0, p1, p2, p3)); } function log(address p0, address p1, address p2, string memory p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,address,string)", p0, p1, p2, p3)); } function log(address p0, address p1, address p2, bool p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,address,bool)", p0, p1, p2, p3)); } function log(address p0, address p1, address p2, address p3) internal view { _sendLogPayload(abi.encodeWithSignature("log(address,address,address,address)", p0, p1, p2, p3)); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev Interface of the ERC165 standard, as defined in the * https://eips.ethereum.org/EIPS/eip-165[EIP]. * * 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[EIP 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); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @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); }
{ "metadata": { "bytecodeHash": "none", "useLiteralContent": true }, "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract BearsDeluxeI","name":"_bearsDeluxe","type":"address"},{"internalType":"contract HoneyTokenI","name":"_honey","type":"address"},{"internalType":"contract VXDeluxeI","name":"_vxDeluxe","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AlreadyMinted","type":"error"},{"inputs":[],"name":"CapReached","type":"error"},{"inputs":[],"name":"ClaimingClosed","type":"error"},{"inputs":[],"name":"MaxSupplyReached","type":"error"},{"inputs":[],"name":"NotOwner","type":"error"},{"inputs":[],"name":"PublicMintClosed","type":"error"},{"inputs":[],"name":"WhiteListClosed","type":"error"},{"inputs":[],"name":"WrongAmount","type":"error"},{"inputs":[],"name":"WrongLeaf","type":"error"},{"inputs":[],"name":"WrongProof","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_newIndex","type":"uint256"}],"name":"ChangedIdIndex","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_price","type":"uint256"}],"name":"ChangedPrice","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":false,"internalType":"uint16[]","name":"_ids","type":"uint16[]"}],"name":"Claimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":false,"internalType":"uint16[]","name":"_ids","type":"uint16[]"},{"indexed":false,"internalType":"uint16[]","name":"_bearsIds","type":"uint16[]"}],"name":"ClaimedBears","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":false,"internalType":"uint16[]","name":"_ids","type":"uint16[]"}],"name":"ClaimedWhitelist","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"isOpen","type":"bool"}],"name":"ClaimingToggled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"_merkleRoot","type":"bytes32"}],"name":"MerkleRootChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":false,"internalType":"uint16[]","name":"ids","type":"uint16[]"}],"name":"PublicMint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"isOpen","type":"bool"}],"name":"PublicMintToggled","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_contract","type":"address"},{"indexed":false,"internalType":"string","name":"_type","type":"string"}],"name":"SetContract","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"isOpen","type":"bool"}],"name":"WhiteListMintToggled","type":"event"},{"inputs":[],"name":"bearsDeluxe","outputs":[{"internalType":"contract BearsDeluxeI","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16[]","name":"_tokenIds","type":"uint16[]"},{"internalType":"bool","name":"_forfeith","type":"bool"},{"internalType":"bool","name":"payHoney","type":"bool"}],"name":"claimBearsDeluxe","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint16","name":"_whitelistedAmount","type":"uint16"},{"internalType":"bytes32[]","name":"_merkleProof","type":"bytes32[]"}],"name":"claimWhitelist","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"uint16","name":"_whitelistedAmount","type":"uint16"},{"internalType":"bytes32[]","name":"_merkleProof","type":"bytes32[]"}],"name":"claimWhitelistWithHoney","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"claimedPerWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"customVX","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"forfeitIds","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"forfeitIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"forfeitedIds","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllForfeithIds","outputs":[{"internalType":"uint16[]","name":"","type":"uint16[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getClaimingStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPublicMintStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getWhiteListStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"honey","outputs":[{"internalType":"contract HoneyTokenI","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"honeyPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"merkleRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"payHoney","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mintSpares","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"price","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"payHoney","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"publicMint","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"publicMintOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract BearsDeluxeI","name":"_bearsDeluxe","type":"address"}],"name":"setBearsDeluxe","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"setClaiming","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newCustomVX","type":"uint256"}],"name":"setCustomVX","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract HoneyTokenI","name":"_honey","type":"address"}],"name":"setHoney","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newPrice","type":"uint256"}],"name":"setHoneyPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_merkleRoot","type":"bytes32"}],"name":"setMerkleRoot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newPrice","type":"uint256"}],"name":"setPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"setPublicMint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract VXDeluxeI","name":"_vxDeluxe","type":"address"}],"name":"setVXBears","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newWhitelistVX","type":"uint256"}],"name":"setWhitelistVX","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"isOpen","type":"bool"}],"name":"setWl","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vxDeluxe","outputs":[{"internalType":"contract VXDeluxeI","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whitelistOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"whitelistVX","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawEther","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
6080604052611af46007556120d0600855600060095566f5232269808000600a5568056bc75e2d63100000600b55600c805462ffffff191690553480156200004657600080fd5b506040516200298a3803806200298a833981016040819052620000699162000127565b60016000556200007933620000bc565b600380546001600160a01b039485166001600160a01b0319918216179091556004805493851693821693909317909255600580549190931691161790556200017b565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03811681146200012457600080fd5b50565b6000806000606084860312156200013d57600080fd5b83516200014a816200010e565b60208501519093506200015d816200010e565b604085015190925062000170816200010e565b809150509250925092565b6127ff806200018b6000396000f3fe6080604052600436106102305760003560e01c8063715018a61161012e5780639d34b691116100ab578063bcc9ca5b1161006f578063bcc9ca5b1461065c578063bd6f4bdc14610676578063e0377a1214610696578063f2fde38b146106ac578063fb27cfc1146106cc57600080fd5b80639d34b691146105d3578063a035b1fe146105f3578063a502e56b14610609578063aac506331461061c578063af8cb7621461063c57600080fd5b80637db3aecc116100f25780637db3aecc146105385780638281aafc146105585780638a91b967146105785780638da5cb5b1461059557806391b7f5ed146105b357600080fd5b8063715018a6146104ae5780637362377b146104c357806376e4a2e0146104d85780637a35dd18146104f85780637cb647591461051857600080fd5b806336b2c4b2116101bc5780634cfa03af116101805780634cfa03af1461042457806353aae5fc1461043a5780635a6b35271461045c5780635e1658301461047c5780636c7dda8e1461048f57600080fd5b806336b2c4b214610359578063392d615a146103915780633a6a821d146103be5780633dc78119146103de578063455d7a40146103f457600080fd5b8063176a140411610203578063176a1404146102b35780631fcf4d33146102e6578063284b5482146102f95780632e9b83c0146103235780632eb4a7ab1461034357600080fd5b806302afaed2146102355780630bb1fb4f1461025e5780630befd447146102735780630e2d56cf14610293575b600080fd5b34801561024157600080fd5b5061024b600b5481565b6040519081526020015b60405180910390f35b61027161026c3660046123f2565b6106e4565b005b34801561027f57600080fd5b5061027161028e36600461245a565b610c8b565b34801561029f57600080fd5b506102716102ae366004612473565b610cf1565b3480156102bf57600080fd5b506102d36102ce36600461245a565b610d5c565b60405161ffff9091168152602001610255565b6102716102f43660046124ae565b610d94565b34801561030557600080fd5b50600c5462010000900460ff165b6040519015158152602001610255565b34801561032f57600080fd5b5061027161033e3660046124ae565b611107565b34801561034f57600080fd5b5061024b60025481565b34801561036557600080fd5b50600454610379906001600160a01b031681565b6040516001600160a01b039091168152602001610255565b34801561039d57600080fd5b5061024b6103ac36600461251d565b600d6020526000908152604090205481565b3480156103ca57600080fd5b506102716103d9366004612473565b6114cf565b3480156103ea57600080fd5b5061024b60075481565b34801561040057600080fd5b5061031361040f36600461245a565b600e6020526000908152604090205460ff1681565b34801561043057600080fd5b5061024b60095481565b34801561044657600080fd5b5061044f611544565b6040516102559190612579565b34801561046857600080fd5b5061027161047736600461245a565b6115c4565b61027161048a36600461258c565b611623565b34801561049b57600080fd5b50600c5461031390610100900460ff1681565b3480156104ba57600080fd5b506102716119d9565b3480156104cf57600080fd5b50610271611a0f565b3480156104e457600080fd5b506102716104f336600461251d565b611a6b565b34801561050457600080fd5b5061027161051336600461251d565b611b02565b34801561052457600080fd5b5061027161053336600461245a565b611b9c565b34801561054457600080fd5b50600c546103139062010000900460ff1681565b34801561056457600080fd5b5061027161057336600461245a565b611bfb565b34801561058457600080fd5b50600c54610100900460ff16610313565b3480156105a157600080fd5b506001546001600160a01b0316610379565b3480156105bf57600080fd5b506102716105ce36600461245a565b611c5a565b3480156105df57600080fd5b506102716105ee366004612473565b611cb9565b3480156105ff57600080fd5b5061024b600a5481565b61027161061736600461258c565b611d2c565b34801561062857600080fd5b50600554610379906001600160a01b031681565b34801561064857600080fd5b5061027161065736600461251d565b612163565b34801561066857600080fd5b50600c546103139060ff1681565b34801561068257600080fd5b50600354610379906001600160a01b031681565b3480156106a257600080fd5b5061024b60085481565b3480156106b857600080fd5b506102716106c736600461251d565b6121fc565b3480156106d857600080fd5b50600c5460ff16610313565b60026000540361070f5760405162461bcd60e51b8152600401610706906125b8565b60405180910390fd5b60026000908155600c54610100900460ff1615159003610742576040516320288dad60e01b815260040160405180910390fd5b6000808467ffffffffffffffff81111561075e5761075e6125ef565b604051908082528060200260200182016040528015610787578160200160208202803683370190505b5090506000808461079a57600a5461079e565b600b545b90505b86841015610aaf5760008888868181106107bd576107bd612605565b90506020020160208101906107d2919061261b565b6003546040516331a9108f60e11b815261ffff8316600482015291925033916001600160a01b0390911690636352211e90602401602060405180830381865afa158015610823573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108479190612636565b6001600160a01b03161461086e576040516330cd747160e01b815260040160405180910390fd5b86156109ea57600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108eb9190612653565b6007541061090c5760405163d05cb60960e01b815260040160405180910390fd5b6007805460010190819055845185908790811061092b5761092b612605565b61ffff9283166020918202929092018101919091529082166000908152600e90915260409020549282019260ff161561097757604051631bbdf5c560e31b815260040160405180910390fd5b600680546001818101909255601081047ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01805461ffff8086166002600f909516949094026101000a8481029102199091161790556000908152600e60205260409020805460ff19169091179055610aa3565b600554604051634f558e7960e01b815261ffff831660048201526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015610a36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5a919061266c565b15610a7857604051631bbdf5c560e31b815260040160405180910390fd5b80848681518110610a8b57610a8b612605565b61ffff90921660209283029190910190910152918101915b506001909301926107a1565b841515600103610bb357600480546040516370a0823160e01b8152339281019290925283916001600160a01b03909116906370a0823190602401602060405180830381865afa158015610b06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2a9190612653565b1015610b49576040516349986e7360e01b815260040160405180910390fd5b60048054604051632770a7eb60e21b81523392810192909252602482018490526001600160a01b031690639dc29fac90604401600060405180830381600087803b158015610b9657600080fd5b505af1158015610baa573d6000803e3d6000fd5b50505050610bd3565b813414610bd3576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb790610c059033908790600401612689565b600060405180830381600087803b158015610c1f57600080fd5b505af1158015610c33573d6000803e3d6000fd5b50505050336001600160a01b03167f9550b199fe552455847760820ae1c8e83115f4cd2affdbcced21ad6c1189386b848a8a604051610c74939291906126b5565b60405180910390a250506001600055505050505050565b6001546001600160a01b03163314610cb55760405162461bcd60e51b815260040161070690612711565b600b8190556040518181527fd61bbbbeddbfb5eea9689a8dfb930c8e75982fa9d8f13537ce3583c0c572dc1c906020015b60405180910390a150565b6001546001600160a01b03163314610d1b5760405162461bcd60e51b815260040161070690612711565b600c805460ff19168215159081179091556040519081527fa81e445dac2343503dc87e4663774817434721db7d985310a6959766e6d4480e90602001610ce6565b60068181548110610d6c57600080fd5b9060005260206000209060109182820401919006600202915054906101000a900461ffff1681565b600260005403610db65760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5462010000900460ff1615159003610dea576040516304087ba760e01b815260040160405180910390fd5b8261ffff16841115610e0f576040516349986e7360e01b815260040160405180910390fd5b610e7882828080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050600254604051909250610e5d915033908890602001612746565b60405160208183030381529060405280519060200120612297565b610e955760405163923983b960e01b815260040160405180910390fd5b336000908152600d60205260409020548411610ec457604051636bf4c8e960e11b815260040160405180910390fd5b336000908152600d6020526040902054610ede908561278b565b935060008467ffffffffffffffff811115610efb57610efb6125ef565b604051908082528060200260200182016040528015610f24578160200160208202803683370190505b50905060005b8581101561100457600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa99190612653565b60075410610fca5760405163d05cb60960e01b815260040160405180910390fd5b60078054600101908190558251839083908110610fe957610fe9612605565b61ffff90921660209283029190910190910152600101610f2a565b336000908152600d6020526040812080548892906110239084906127a2565b9091555050600a546110369087906127ba565b3414611055576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb7906110879033908690600401612689565b600060405180830381600087803b1580156110a157600080fd5b505af11580156110b5573d6000803e3d6000fd5b50505050336001600160a01b03167f3ae68bddc25adfc8364085c5b94801d6fe54d882045bb19941cc99aadad7b813836040516110f29190612579565b60405180910390a25050600160005550505050565b6002600054036111295760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5462010000900460ff161515900361115d576040516304087ba760e01b815260040160405180910390fd5b8261ffff16841115611182576040516349986e7360e01b815260040160405180910390fd5b6111d082828080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050600254604051909250610e5d915033908890602001612746565b6111ed5760405163923983b960e01b815260040160405180910390fd5b336000908152600d6020526040902054841161121c57604051636bf4c8e960e11b815260040160405180910390fd5b336000908152600d6020526040902054611236908561278b565b935060008467ffffffffffffffff811115611253576112536125ef565b60405190808252806020026020018201604052801561127c578160200160208202803683370190505b50905060005b8581101561135c57600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113019190612653565b600754106113225760405163d05cb60960e01b815260040160405180910390fd5b6007805460010190819055825183908390811061134157611341612605565b61ffff90921660209283029190910190910152600101611282565b336000908152600d60205260408120805488929061137b9084906127a2565b9091555050600b5461138e9087906127ba565b600480546040516370a0823160e01b815233928101929092526001600160a01b0316906370a0823190602401602060405180830381865afa1580156113d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fb9190612653565b101561141a576040516349986e7360e01b815260040160405180910390fd5b600454600b546001600160a01b0390911690639dc29fac90339061143f908a906127ba565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561148557600080fd5b505af1158015611499573d6000803e3d6000fd5b505060055460405163e5e21bb760e01b81526001600160a01b03909116925063e5e21bb791506110879033908690600401612689565b6001546001600160a01b031633146114f95760405162461bcd60e51b815260040161070690612711565b600c8054821515620100000262ff0000199091161790556040517fa81e445dac2343503dc87e4663774817434721db7d985310a6959766e6d4480e90610ce690831515815260200190565b606060068054806020026020016040519081016040528092919081815260200182805480156115ba57602002820191906000526020600020906000905b82829054906101000a900461ffff1661ffff16815260200190600201906020826001010492830192600103820291508084116115815790505b5050505050905090565b6001546001600160a01b031633146115ee5760405162461bcd60e51b815260040161070690612711565b60078190556040518181527fe6f9d308918044d0909dacf2ede6026b39e9370fcebaf82abb55d30d1009cc8790602001610ce6565b6002600054036116455760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5460ff1615159003611673576040516316851fc760e11b815260040160405180910390fd5b600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116ea9190612653565b816007546116f891906127a2565b11156117175760405163d05cb60960e01b815260040160405180910390fd5b600a81111580156117285750600081115b6117705760405162461bcd60e51b81526020600482015260196024820152784d6178203130206d696e74207065722074782c206d696e203160381b6044820152606401610706565b6000808267ffffffffffffffff81111561178c5761178c6125ef565b6040519080825280602002602001820160405280156117b5578160200160208202803683370190505b509050600080856117c857600a546117cc565b600b545b90505b8482101561181857600780546001019081905583518490849081106117f6576117f6612605565b61ffff90921660209283029190910190910152928301926001909101906117cf565b85151560010361191c57600480546040516370a0823160e01b8152339281019290925285916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561186f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118939190612653565b10156118b2576040516349986e7360e01b815260040160405180910390fd5b60048054604051632770a7eb60e21b81523392810192909252602482018690526001600160a01b031690639dc29fac90604401600060405180830381600087803b1580156118ff57600080fd5b505af1158015611913573d6000803e3d6000fd5b5050505061193c565b83341461193c576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb79061196e9033908790600401612689565b600060405180830381600087803b15801561198857600080fd5b505af115801561199c573d6000803e3d6000fd5b50505050336001600160a01b03167f316a3198dc9a479db89f243e71dda16f9b8189796a6085b66a70a70222f1e59b846040516110f29190612579565b6001546001600160a01b03163314611a035760405162461bcd60e51b815260040161070690612711565b611a0d6000612346565b565b6001546001600160a01b03163314611a395760405162461bcd60e51b815260040161070690612711565b604051339081904780156108fc02916000818181858888f19350505050158015611a67573d6000803e3d6000fd5b5050565b6001546001600160a01b03163314611a955760405162461bcd60e51b815260040161070690612711565b600580546001600160a01b0319166001600160a01b038316908117909155604080519182526020820181905260089082015267565844656c75786560c01b60608201527f87ae4ac29cd7bff68d926d03e0d1b716e4f823e33c9b7f235d518e283459027b90608001610ce6565b6001546001600160a01b03163314611b2c5760405162461bcd60e51b815260040161070690612711565b600380546001600160a01b0319166001600160a01b0383169081179091556040805191825260208201819052600b908201526a426561727344656c75786560a81b60608201527f87ae4ac29cd7bff68d926d03e0d1b716e4f823e33c9b7f235d518e283459027b90608001610ce6565b6001546001600160a01b03163314611bc65760405162461bcd60e51b815260040161070690612711565b60028190556040518181527f1b930366dfeaa7eb3b325021e4ae81e36527063452ee55b86c95f85b36f4c31c90602001610ce6565b6001546001600160a01b03163314611c255760405162461bcd60e51b815260040161070690612711565b60088190556040518181527fe6f9d308918044d0909dacf2ede6026b39e9370fcebaf82abb55d30d1009cc8790602001610ce6565b6001546001600160a01b03163314611c845760405162461bcd60e51b815260040161070690612711565b600a8190556040518181527fd61bbbbeddbfb5eea9689a8dfb930c8e75982fa9d8f13537ce3583c0c572dc1c90602001610ce6565b6001546001600160a01b03163314611ce35760405162461bcd60e51b815260040161070690612711565b600c80548215156101000261ff00199091161790556040517fa81e445dac2343503dc87e4663774817434721db7d985310a6959766e6d4480e90610ce690831515815260200190565b600260005403611d4e5760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5460ff1615159003611d7c576040516316851fc760e11b815260040160405180910390fd5b600654600954611d8d9083906127a2565b1115611dac5760405163d05cb60960e01b815260040160405180910390fd5b600a8111158015611dbd5750600081115b611e055760405162461bcd60e51b81526020600482015260196024820152784d6178203130206d696e74207065722074782c206d696e203160381b6044820152606401610706565b60095460008267ffffffffffffffff811115611e2357611e236125ef565b604051908082528060200260200182016040528015611e4c578160200160208202803683370190505b50905060008085611e5f57600a54611e63565b600b545b905060005b85600954611e7691906127a2565b851015611f7b57600e600060068781548110611e9457611e94612605565b60009182526020808320601083040154600f9092166002026101000a90910461ffff168352820192909252604001902054600160ff909116151514611f0f5760405162461bcd60e51b81526020600482015260116024820152701899585c881b9bdd08199bdc995a5d1959607a1b6044820152606401610706565b60068581548110611f2257611f22612605565b90600052602060002090601091828204019190066002029054906101000a900461ffff16848281518110611f5857611f58612605565b61ffff909216602092830291909101909101526001948501949282019201611e68565b85600954611f8991906127a2565b60095586151560010361209057600480546040516370a0823160e01b8152339281019290925284916001600160a01b03909116906370a0823190602401602060405180830381865afa158015611fe3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120079190612653565b1015612026576040516349986e7360e01b815260040160405180910390fd5b60048054604051632770a7eb60e21b81523392810192909252602482018590526001600160a01b031690639dc29fac90604401600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050506120b0565b8234146120b0576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb7906120e29033908890600401612689565b600060405180830381600087803b1580156120fc57600080fd5b505af1158015612110573d6000803e3d6000fd5b50505050336001600160a01b03167f316a3198dc9a479db89f243e71dda16f9b8189796a6085b66a70a70222f1e59b8560405161214d9190612579565b60405180910390a2505060016000555050505050565b6001546001600160a01b0316331461218d5760405162461bcd60e51b815260040161070690612711565b600480546001600160a01b0319166001600160a01b0383169081179091556040805191825260208201819052600a90820152692437b732bcaa37b5b2b760b11b60608201527f87ae4ac29cd7bff68d926d03e0d1b716e4f823e33c9b7f235d518e283459027b90608001610ce6565b6001546001600160a01b031633146122265760405162461bcd60e51b815260040161070690612711565b6001600160a01b03811661228b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610706565b61229481612346565b50565b600081815b855181101561233b5760008682815181106122b9576122b9612605565b602002602001015190508083116122fb576040805160208101859052908101829052606001604051602081830303815290604052805190602001209250612328565b60408051602081018390529081018490526060016040516020818303038152906040528051906020012092505b5080612333816127d9565b91505061229c565b509092149392505050565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60008083601f8401126123aa57600080fd5b50813567ffffffffffffffff8111156123c257600080fd5b6020830191508360208260051b85010111156123dd57600080fd5b9250929050565b801515811461229457600080fd5b6000806000806060858703121561240857600080fd5b843567ffffffffffffffff81111561241f57600080fd5b61242b87828801612398565b909550935050602085013561243f816123e4565b9150604085013561244f816123e4565b939692955090935050565b60006020828403121561246c57600080fd5b5035919050565b60006020828403121561248557600080fd5b8135612490816123e4565b9392505050565b803561ffff811681146124a957600080fd5b919050565b600080600080606085870312156124c457600080fd5b843593506124d460208601612497565b9250604085013567ffffffffffffffff8111156124f057600080fd5b6124fc87828801612398565b95989497509550505050565b6001600160a01b038116811461229457600080fd5b60006020828403121561252f57600080fd5b813561249081612508565b600081518084526020808501945080840160005b8381101561256e57815161ffff168752958201959082019060010161254e565b509495945050505050565b602081526000612490602083018461253a565b6000806040838503121561259f57600080fd5b82356125aa816123e4565b946020939093013593505050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561262d57600080fd5b61249082612497565b60006020828403121561264857600080fd5b815161249081612508565b60006020828403121561266557600080fd5b5051919050565b60006020828403121561267e57600080fd5b8151612490816123e4565b6001600160a01b03831681526040602082018190526000906126ad9083018461253a565b949350505050565b6040815260006126c8604083018661253a565b8281036020848101919091528482528591810160005b868110156127055761ffff6126f285612497565b16825292820192908201906001016126de565b50979650505050505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60609290921b6bffffffffffffffffffffffff1916825260f01b6001600160f01b031916601482015260160190565b634e487b7160e01b600052601160045260246000fd5b60008282101561279d5761279d612775565b500390565b600082198211156127b5576127b5612775565b500190565b60008160001904831182151516156127d4576127d4612775565b500290565b6000600182016127eb576127eb612775565b506001019056fea164736f6c634300080d000a0000000000000000000000004bb33f6e69fd62cf3abbcc6f1f43b94a5d572c2b00000000000000000000000020e8e2ffc969783430cdd0c434dc018f0a155391000000000000000000000000af9f836cc3e4019addd529c2579e44938252a1ae
Deployed Bytecode
0x6080604052600436106102305760003560e01c8063715018a61161012e5780639d34b691116100ab578063bcc9ca5b1161006f578063bcc9ca5b1461065c578063bd6f4bdc14610676578063e0377a1214610696578063f2fde38b146106ac578063fb27cfc1146106cc57600080fd5b80639d34b691146105d3578063a035b1fe146105f3578063a502e56b14610609578063aac506331461061c578063af8cb7621461063c57600080fd5b80637db3aecc116100f25780637db3aecc146105385780638281aafc146105585780638a91b967146105785780638da5cb5b1461059557806391b7f5ed146105b357600080fd5b8063715018a6146104ae5780637362377b146104c357806376e4a2e0146104d85780637a35dd18146104f85780637cb647591461051857600080fd5b806336b2c4b2116101bc5780634cfa03af116101805780634cfa03af1461042457806353aae5fc1461043a5780635a6b35271461045c5780635e1658301461047c5780636c7dda8e1461048f57600080fd5b806336b2c4b214610359578063392d615a146103915780633a6a821d146103be5780633dc78119146103de578063455d7a40146103f457600080fd5b8063176a140411610203578063176a1404146102b35780631fcf4d33146102e6578063284b5482146102f95780632e9b83c0146103235780632eb4a7ab1461034357600080fd5b806302afaed2146102355780630bb1fb4f1461025e5780630befd447146102735780630e2d56cf14610293575b600080fd5b34801561024157600080fd5b5061024b600b5481565b6040519081526020015b60405180910390f35b61027161026c3660046123f2565b6106e4565b005b34801561027f57600080fd5b5061027161028e36600461245a565b610c8b565b34801561029f57600080fd5b506102716102ae366004612473565b610cf1565b3480156102bf57600080fd5b506102d36102ce36600461245a565b610d5c565b60405161ffff9091168152602001610255565b6102716102f43660046124ae565b610d94565b34801561030557600080fd5b50600c5462010000900460ff165b6040519015158152602001610255565b34801561032f57600080fd5b5061027161033e3660046124ae565b611107565b34801561034f57600080fd5b5061024b60025481565b34801561036557600080fd5b50600454610379906001600160a01b031681565b6040516001600160a01b039091168152602001610255565b34801561039d57600080fd5b5061024b6103ac36600461251d565b600d6020526000908152604090205481565b3480156103ca57600080fd5b506102716103d9366004612473565b6114cf565b3480156103ea57600080fd5b5061024b60075481565b34801561040057600080fd5b5061031361040f36600461245a565b600e6020526000908152604090205460ff1681565b34801561043057600080fd5b5061024b60095481565b34801561044657600080fd5b5061044f611544565b6040516102559190612579565b34801561046857600080fd5b5061027161047736600461245a565b6115c4565b61027161048a36600461258c565b611623565b34801561049b57600080fd5b50600c5461031390610100900460ff1681565b3480156104ba57600080fd5b506102716119d9565b3480156104cf57600080fd5b50610271611a0f565b3480156104e457600080fd5b506102716104f336600461251d565b611a6b565b34801561050457600080fd5b5061027161051336600461251d565b611b02565b34801561052457600080fd5b5061027161053336600461245a565b611b9c565b34801561054457600080fd5b50600c546103139062010000900460ff1681565b34801561056457600080fd5b5061027161057336600461245a565b611bfb565b34801561058457600080fd5b50600c54610100900460ff16610313565b3480156105a157600080fd5b506001546001600160a01b0316610379565b3480156105bf57600080fd5b506102716105ce36600461245a565b611c5a565b3480156105df57600080fd5b506102716105ee366004612473565b611cb9565b3480156105ff57600080fd5b5061024b600a5481565b61027161061736600461258c565b611d2c565b34801561062857600080fd5b50600554610379906001600160a01b031681565b34801561064857600080fd5b5061027161065736600461251d565b612163565b34801561066857600080fd5b50600c546103139060ff1681565b34801561068257600080fd5b50600354610379906001600160a01b031681565b3480156106a257600080fd5b5061024b60085481565b3480156106b857600080fd5b506102716106c736600461251d565b6121fc565b3480156106d857600080fd5b50600c5460ff16610313565b60026000540361070f5760405162461bcd60e51b8152600401610706906125b8565b60405180910390fd5b60026000908155600c54610100900460ff1615159003610742576040516320288dad60e01b815260040160405180910390fd5b6000808467ffffffffffffffff81111561075e5761075e6125ef565b604051908082528060200260200182016040528015610787578160200160208202803683370190505b5090506000808461079a57600a5461079e565b600b545b90505b86841015610aaf5760008888868181106107bd576107bd612605565b90506020020160208101906107d2919061261b565b6003546040516331a9108f60e11b815261ffff8316600482015291925033916001600160a01b0390911690636352211e90602401602060405180830381865afa158015610823573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108479190612636565b6001600160a01b03161461086e576040516330cd747160e01b815260040160405180910390fd5b86156109ea57600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108eb9190612653565b6007541061090c5760405163d05cb60960e01b815260040160405180910390fd5b6007805460010190819055845185908790811061092b5761092b612605565b61ffff9283166020918202929092018101919091529082166000908152600e90915260409020549282019260ff161561097757604051631bbdf5c560e31b815260040160405180910390fd5b600680546001818101909255601081047ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f01805461ffff8086166002600f909516949094026101000a8481029102199091161790556000908152600e60205260409020805460ff19169091179055610aa3565b600554604051634f558e7960e01b815261ffff831660048201526001600160a01b0390911690634f558e7990602401602060405180830381865afa158015610a36573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5a919061266c565b15610a7857604051631bbdf5c560e31b815260040160405180910390fd5b80848681518110610a8b57610a8b612605565b61ffff90921660209283029190910190910152918101915b506001909301926107a1565b841515600103610bb357600480546040516370a0823160e01b8152339281019290925283916001600160a01b03909116906370a0823190602401602060405180830381865afa158015610b06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2a9190612653565b1015610b49576040516349986e7360e01b815260040160405180910390fd5b60048054604051632770a7eb60e21b81523392810192909252602482018490526001600160a01b031690639dc29fac90604401600060405180830381600087803b158015610b9657600080fd5b505af1158015610baa573d6000803e3d6000fd5b50505050610bd3565b813414610bd3576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb790610c059033908790600401612689565b600060405180830381600087803b158015610c1f57600080fd5b505af1158015610c33573d6000803e3d6000fd5b50505050336001600160a01b03167f9550b199fe552455847760820ae1c8e83115f4cd2affdbcced21ad6c1189386b848a8a604051610c74939291906126b5565b60405180910390a250506001600055505050505050565b6001546001600160a01b03163314610cb55760405162461bcd60e51b815260040161070690612711565b600b8190556040518181527fd61bbbbeddbfb5eea9689a8dfb930c8e75982fa9d8f13537ce3583c0c572dc1c906020015b60405180910390a150565b6001546001600160a01b03163314610d1b5760405162461bcd60e51b815260040161070690612711565b600c805460ff19168215159081179091556040519081527fa81e445dac2343503dc87e4663774817434721db7d985310a6959766e6d4480e90602001610ce6565b60068181548110610d6c57600080fd5b9060005260206000209060109182820401919006600202915054906101000a900461ffff1681565b600260005403610db65760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5462010000900460ff1615159003610dea576040516304087ba760e01b815260040160405180910390fd5b8261ffff16841115610e0f576040516349986e7360e01b815260040160405180910390fd5b610e7882828080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050600254604051909250610e5d915033908890602001612746565b60405160208183030381529060405280519060200120612297565b610e955760405163923983b960e01b815260040160405180910390fd5b336000908152600d60205260409020548411610ec457604051636bf4c8e960e11b815260040160405180910390fd5b336000908152600d6020526040902054610ede908561278b565b935060008467ffffffffffffffff811115610efb57610efb6125ef565b604051908082528060200260200182016040528015610f24578160200160208202803683370190505b50905060005b8581101561100457600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fa99190612653565b60075410610fca5760405163d05cb60960e01b815260040160405180910390fd5b60078054600101908190558251839083908110610fe957610fe9612605565b61ffff90921660209283029190910190910152600101610f2a565b336000908152600d6020526040812080548892906110239084906127a2565b9091555050600a546110369087906127ba565b3414611055576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb7906110879033908690600401612689565b600060405180830381600087803b1580156110a157600080fd5b505af11580156110b5573d6000803e3d6000fd5b50505050336001600160a01b03167f3ae68bddc25adfc8364085c5b94801d6fe54d882045bb19941cc99aadad7b813836040516110f29190612579565b60405180910390a25050600160005550505050565b6002600054036111295760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5462010000900460ff161515900361115d576040516304087ba760e01b815260040160405180910390fd5b8261ffff16841115611182576040516349986e7360e01b815260040160405180910390fd5b6111d082828080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525050600254604051909250610e5d915033908890602001612746565b6111ed5760405163923983b960e01b815260040160405180910390fd5b336000908152600d6020526040902054841161121c57604051636bf4c8e960e11b815260040160405180910390fd5b336000908152600d6020526040902054611236908561278b565b935060008467ffffffffffffffff811115611253576112536125ef565b60405190808252806020026020018201604052801561127c578160200160208202803683370190505b50905060005b8581101561135c57600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112dd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113019190612653565b600754106113225760405163d05cb60960e01b815260040160405180910390fd5b6007805460010190819055825183908390811061134157611341612605565b61ffff90921660209283029190910190910152600101611282565b336000908152600d60205260408120805488929061137b9084906127a2565b9091555050600b5461138e9087906127ba565b600480546040516370a0823160e01b815233928101929092526001600160a01b0316906370a0823190602401602060405180830381865afa1580156113d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fb9190612653565b101561141a576040516349986e7360e01b815260040160405180910390fd5b600454600b546001600160a01b0390911690639dc29fac90339061143f908a906127ba565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561148557600080fd5b505af1158015611499573d6000803e3d6000fd5b505060055460405163e5e21bb760e01b81526001600160a01b03909116925063e5e21bb791506110879033908690600401612689565b6001546001600160a01b031633146114f95760405162461bcd60e51b815260040161070690612711565b600c8054821515620100000262ff0000199091161790556040517fa81e445dac2343503dc87e4663774817434721db7d985310a6959766e6d4480e90610ce690831515815260200190565b606060068054806020026020016040519081016040528092919081815260200182805480156115ba57602002820191906000526020600020906000905b82829054906101000a900461ffff1661ffff16815260200190600201906020826001010492830192600103820291508084116115815790505b5050505050905090565b6001546001600160a01b031633146115ee5760405162461bcd60e51b815260040161070690612711565b60078190556040518181527fe6f9d308918044d0909dacf2ede6026b39e9370fcebaf82abb55d30d1009cc8790602001610ce6565b6002600054036116455760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5460ff1615159003611673576040516316851fc760e11b815260040160405180910390fd5b600560009054906101000a90046001600160a01b03166001600160a01b03166332cb6b0c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116ea9190612653565b816007546116f891906127a2565b11156117175760405163d05cb60960e01b815260040160405180910390fd5b600a81111580156117285750600081115b6117705760405162461bcd60e51b81526020600482015260196024820152784d6178203130206d696e74207065722074782c206d696e203160381b6044820152606401610706565b6000808267ffffffffffffffff81111561178c5761178c6125ef565b6040519080825280602002602001820160405280156117b5578160200160208202803683370190505b509050600080856117c857600a546117cc565b600b545b90505b8482101561181857600780546001019081905583518490849081106117f6576117f6612605565b61ffff90921660209283029190910190910152928301926001909101906117cf565b85151560010361191c57600480546040516370a0823160e01b8152339281019290925285916001600160a01b03909116906370a0823190602401602060405180830381865afa15801561186f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118939190612653565b10156118b2576040516349986e7360e01b815260040160405180910390fd5b60048054604051632770a7eb60e21b81523392810192909252602482018690526001600160a01b031690639dc29fac90604401600060405180830381600087803b1580156118ff57600080fd5b505af1158015611913573d6000803e3d6000fd5b5050505061193c565b83341461193c576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb79061196e9033908790600401612689565b600060405180830381600087803b15801561198857600080fd5b505af115801561199c573d6000803e3d6000fd5b50505050336001600160a01b03167f316a3198dc9a479db89f243e71dda16f9b8189796a6085b66a70a70222f1e59b846040516110f29190612579565b6001546001600160a01b03163314611a035760405162461bcd60e51b815260040161070690612711565b611a0d6000612346565b565b6001546001600160a01b03163314611a395760405162461bcd60e51b815260040161070690612711565b604051339081904780156108fc02916000818181858888f19350505050158015611a67573d6000803e3d6000fd5b5050565b6001546001600160a01b03163314611a955760405162461bcd60e51b815260040161070690612711565b600580546001600160a01b0319166001600160a01b038316908117909155604080519182526020820181905260089082015267565844656c75786560c01b60608201527f87ae4ac29cd7bff68d926d03e0d1b716e4f823e33c9b7f235d518e283459027b90608001610ce6565b6001546001600160a01b03163314611b2c5760405162461bcd60e51b815260040161070690612711565b600380546001600160a01b0319166001600160a01b0383169081179091556040805191825260208201819052600b908201526a426561727344656c75786560a81b60608201527f87ae4ac29cd7bff68d926d03e0d1b716e4f823e33c9b7f235d518e283459027b90608001610ce6565b6001546001600160a01b03163314611bc65760405162461bcd60e51b815260040161070690612711565b60028190556040518181527f1b930366dfeaa7eb3b325021e4ae81e36527063452ee55b86c95f85b36f4c31c90602001610ce6565b6001546001600160a01b03163314611c255760405162461bcd60e51b815260040161070690612711565b60088190556040518181527fe6f9d308918044d0909dacf2ede6026b39e9370fcebaf82abb55d30d1009cc8790602001610ce6565b6001546001600160a01b03163314611c845760405162461bcd60e51b815260040161070690612711565b600a8190556040518181527fd61bbbbeddbfb5eea9689a8dfb930c8e75982fa9d8f13537ce3583c0c572dc1c90602001610ce6565b6001546001600160a01b03163314611ce35760405162461bcd60e51b815260040161070690612711565b600c80548215156101000261ff00199091161790556040517fa81e445dac2343503dc87e4663774817434721db7d985310a6959766e6d4480e90610ce690831515815260200190565b600260005403611d4e5760405162461bcd60e51b8152600401610706906125b8565b60026000908155600c5460ff1615159003611d7c576040516316851fc760e11b815260040160405180910390fd5b600654600954611d8d9083906127a2565b1115611dac5760405163d05cb60960e01b815260040160405180910390fd5b600a8111158015611dbd5750600081115b611e055760405162461bcd60e51b81526020600482015260196024820152784d6178203130206d696e74207065722074782c206d696e203160381b6044820152606401610706565b60095460008267ffffffffffffffff811115611e2357611e236125ef565b604051908082528060200260200182016040528015611e4c578160200160208202803683370190505b50905060008085611e5f57600a54611e63565b600b545b905060005b85600954611e7691906127a2565b851015611f7b57600e600060068781548110611e9457611e94612605565b60009182526020808320601083040154600f9092166002026101000a90910461ffff168352820192909252604001902054600160ff909116151514611f0f5760405162461bcd60e51b81526020600482015260116024820152701899585c881b9bdd08199bdc995a5d1959607a1b6044820152606401610706565b60068581548110611f2257611f22612605565b90600052602060002090601091828204019190066002029054906101000a900461ffff16848281518110611f5857611f58612605565b61ffff909216602092830291909101909101526001948501949282019201611e68565b85600954611f8991906127a2565b60095586151560010361209057600480546040516370a0823160e01b8152339281019290925284916001600160a01b03909116906370a0823190602401602060405180830381865afa158015611fe3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120079190612653565b1015612026576040516349986e7360e01b815260040160405180910390fd5b60048054604051632770a7eb60e21b81523392810192909252602482018590526001600160a01b031690639dc29fac90604401600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050506120b0565b8234146120b0576040516349986e7360e01b815260040160405180910390fd5b60055460405163e5e21bb760e01b81526001600160a01b039091169063e5e21bb7906120e29033908890600401612689565b600060405180830381600087803b1580156120fc57600080fd5b505af1158015612110573d6000803e3d6000fd5b50505050336001600160a01b03167f316a3198dc9a479db89f243e71dda16f9b8189796a6085b66a70a70222f1e59b8560405161214d9190612579565b60405180910390a2505060016000555050505050565b6001546001600160a01b0316331461218d5760405162461bcd60e51b815260040161070690612711565b600480546001600160a01b0319166001600160a01b0383169081179091556040805191825260208201819052600a90820152692437b732bcaa37b5b2b760b11b60608201527f87ae4ac29cd7bff68d926d03e0d1b716e4f823e33c9b7f235d518e283459027b90608001610ce6565b6001546001600160a01b031633146122265760405162461bcd60e51b815260040161070690612711565b6001600160a01b03811661228b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610706565b61229481612346565b50565b600081815b855181101561233b5760008682815181106122b9576122b9612605565b602002602001015190508083116122fb576040805160208101859052908101829052606001604051602081830303815290604052805190602001209250612328565b60408051602081018390529081018490526060016040516020818303038152906040528051906020012092505b5080612333816127d9565b91505061229c565b509092149392505050565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60008083601f8401126123aa57600080fd5b50813567ffffffffffffffff8111156123c257600080fd5b6020830191508360208260051b85010111156123dd57600080fd5b9250929050565b801515811461229457600080fd5b6000806000806060858703121561240857600080fd5b843567ffffffffffffffff81111561241f57600080fd5b61242b87828801612398565b909550935050602085013561243f816123e4565b9150604085013561244f816123e4565b939692955090935050565b60006020828403121561246c57600080fd5b5035919050565b60006020828403121561248557600080fd5b8135612490816123e4565b9392505050565b803561ffff811681146124a957600080fd5b919050565b600080600080606085870312156124c457600080fd5b843593506124d460208601612497565b9250604085013567ffffffffffffffff8111156124f057600080fd5b6124fc87828801612398565b95989497509550505050565b6001600160a01b038116811461229457600080fd5b60006020828403121561252f57600080fd5b813561249081612508565b600081518084526020808501945080840160005b8381101561256e57815161ffff168752958201959082019060010161254e565b509495945050505050565b602081526000612490602083018461253a565b6000806040838503121561259f57600080fd5b82356125aa816123e4565b946020939093013593505050565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561262d57600080fd5b61249082612497565b60006020828403121561264857600080fd5b815161249081612508565b60006020828403121561266557600080fd5b5051919050565b60006020828403121561267e57600080fd5b8151612490816123e4565b6001600160a01b03831681526040602082018190526000906126ad9083018461253a565b949350505050565b6040815260006126c8604083018661253a565b8281036020848101919091528482528591810160005b868110156127055761ffff6126f285612497565b16825292820192908201906001016126de565b50979650505050505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60609290921b6bffffffffffffffffffffffff1916825260f01b6001600160f01b031916601482015260160190565b634e487b7160e01b600052601160045260246000fd5b60008282101561279d5761279d612775565b500390565b600082198211156127b5576127b5612775565b500190565b60008160001904831182151516156127d4576127d4612775565b500290565b6000600182016127eb576127eb612775565b506001019056fea164736f6c634300080d000a
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004bb33f6e69fd62cf3abbcc6f1f43b94a5d572c2b00000000000000000000000020e8e2ffc969783430cdd0c434dc018f0a155391000000000000000000000000af9f836cc3e4019addd529c2579e44938252a1ae
-----Decoded View---------------
Arg [0] : _bearsDeluxe (address): 0x4BB33f6E69fd62cf3abbcC6F1F43b94A5D572C2B
Arg [1] : _honey (address): 0x20e8E2fFC969783430cdD0c434Dc018f0a155391
Arg [2] : _vxDeluxe (address): 0xAf9F836cc3E4019AddD529c2579e44938252a1aE
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000004bb33f6e69fd62cf3abbcc6f1f43b94a5d572c2b
Arg [1] : 00000000000000000000000020e8e2ffc969783430cdd0c434dc018f0a155391
Arg [2] : 000000000000000000000000af9f836cc3e4019addd529c2579e44938252a1ae
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 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.