Source Code
Overview
ETH Balance
0 ETH
Token Holdings
More Info
ContractCreator
Multi Chain
Multichain Addresses
0 address found via
Latest 4 from a total of 4 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
Value | ||||
---|---|---|---|---|---|---|---|---|---|
Set Collateral P... | 9531594 | 111 days 25 mins ago | IN | 0 ETH | 0.00030467 | ||||
Set Time Discoun... | 9493879 | 117 days 18 hrs ago | IN | 0 ETH | 0.00025415 | ||||
Set Default NFT ... | 9493878 | 117 days 18 hrs ago | IN | 0 ETH | 0.00025319 | ||||
0x60806040 | 9488093 | 118 days 19 hrs ago | IN | Create: DefaultPriceModel | 0 ETH | 0.04425653 |
Loading...
Loading
Contract Name:
DefaultPriceModel
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT // ENVELOP(NIFTSY) NFT(wNFT) Kiosk Default Price Model; pragma solidity 0.8.19; import "IDisplayPriceModel.sol"; import "IEnvelopNFTKiosk.sol"; import "IWNFT.sol"; /// @title Default price model implementation /// @author Envelop Team /// @notice This model operate sellings of erc20 collateral inside wNFTS V1 /// @dev .. contract DefaultPriceModel is IDisplayPriceModel { struct DiscountUntil { uint256 untilDate; KTypes.Discount discount; } // mapping from displayNameHash to ERC20 collateral prices mapping (bytes32 => mapping(address => KTypes.DenominatedPrice[])) public erc20CollateralPricesForDisplays; // mapping from displayNameHash to default price for all NFT at the display mapping (bytes32 => KTypes.Price[]) public defaultNFTPriceForDisplay; // mapping from displayNameHash to time discounts mapping (bytes32 => DiscountUntil[]) public timeDiscounts; // mapping from displayNameHash to PROMO hash to PROMO discount mapping (bytes32 => mapping (bytes32 => DiscountUntil)) public promoDiscounts; // mapping from displayNameHash to referrer hash to PROMO discount mapping (bytes32 => mapping (bytes32 => DiscountUntil)) public referrerDiscounts; IEnvelopNFTKiosk public kiosk; event CollateralPriceChanged( bytes32 indexed display, address indexed erc20Collateral ); constructor (address _kiosk){ kiosk = IEnvelopNFTKiosk(_kiosk); } /** * @dev Throws if called by any account other than the display owner. */ modifier onlyDisplayOwner(bytes32 _displayNameHash) { require( kiosk.getDisplayOwner(_displayNameHash) == msg.sender, "Only for Display Owner" ); _; } function setCollateralPriceForDisplay( bytes32 _displayNameHash, address _erc20, KTypes.DenominatedPrice[] calldata _prices ) external virtual onlyDisplayOwner(_displayNameHash) { KTypes.DenominatedPrice[] storage prices = erc20CollateralPricesForDisplays[_displayNameHash][_erc20]; for (uint256 i = 0; i < _prices.length; ++ i) { prices.push(_prices[i]); emit CollateralPriceChanged(_displayNameHash, _erc20); } } function editCollateralPriceRecordForDisplay( bytes32 _displayNameHash, address _erc20, uint256 _priceIndex, KTypes.DenominatedPrice calldata _price ) external virtual onlyDisplayOwner(_displayNameHash) { erc20CollateralPricesForDisplays[_displayNameHash][_erc20][_priceIndex] = _price; emit CollateralPriceChanged(_displayNameHash, _erc20); } function setDefaultNFTPriceForDisplay( bytes32 _displayNameHash, KTypes.Price[] calldata _prices ) external virtual onlyDisplayOwner(_displayNameHash) { KTypes.Price[] storage prices = defaultNFTPriceForDisplay[_displayNameHash]; for (uint256 i = 0; i < _prices.length; ++ i) { prices.push(_prices[i]); emit DefaultPriceChanged( _displayNameHash, _prices[i].payWith, _prices[i].amount ); } } function editDefaultNFTPriceRecordForDisplay( bytes32 _displayNameHash, uint256 _priceIndex, KTypes.Price calldata _price ) external virtual onlyDisplayOwner(_displayNameHash) { defaultNFTPriceForDisplay[_displayNameHash][_priceIndex] = _price; emit DefaultPriceChanged( _displayNameHash, _price.payWith, _price.amount ); } function setTimeDiscountsForDisplay( bytes32 _displayNameHash, DiscountUntil[] calldata _discounts ) external virtual onlyDisplayOwner(_displayNameHash) { DiscountUntil[] storage discounts = timeDiscounts[_displayNameHash]; for (uint256 i = 0; i < _discounts.length; ++ i) { discounts.push(_discounts[i]); emit DiscountChanged( _displayNameHash, uint8(KTypes.DiscountType.TIME), bytes32(_discounts[i].untilDate), _discounts[i].discount.dsctPercent ); } } function editTimeDiscountsForDisplay( bytes32 _displayNameHash, uint256 _discountIndex, DiscountUntil calldata _discount ) external virtual onlyDisplayOwner(_displayNameHash) { timeDiscounts[_displayNameHash][_discountIndex] = _discount; emit DiscountChanged( _displayNameHash, uint8(KTypes.DiscountType.TIME), bytes32(_discount.untilDate), _discount.discount.dsctPercent ); } function setPromoDiscountForDisplay( bytes32 _displayNameHash, bytes32 _promoHash, DiscountUntil calldata _discount ) external virtual onlyDisplayOwner(_displayNameHash) { promoDiscounts[_displayNameHash][_promoHash] = _discount; emit DiscountChanged( _displayNameHash, uint8(KTypes.DiscountType.PROMO), _promoHash, _discount.discount.dsctPercent ); } function setRefereerDiscountForDisplay( bytes32 _displayNameHash, address _referrer, DiscountUntil calldata _discount ) external virtual onlyDisplayOwner(_displayNameHash) { referrerDiscounts[_displayNameHash][keccak256(abi.encode(_referrer))] = _discount; emit DiscountChanged( _displayNameHash, uint8(KTypes.DiscountType.REFERRAL), keccak256(abi.encode(_referrer)), _discount.discount.dsctPercent ); } ///////////////////////// function getItemPrices( ETypes.AssetItem memory _assetItem ) external view virtual returns (KTypes.Price[] memory) { // 1. Try get collateral IWNFT wnftContract = IWNFT(_assetItem.asset.contractAddress); try wnftContract.wnftInfo(_assetItem.tokenId) returns (ETypes.WNFT memory wnft){ KTypes.Place memory pl = _getVirtualPlace(_assetItem); // Only first collateral asset is tradable in this pricemodel KTypes.DenominatedPrice[] memory denPrices = _getCollateralUnitPrice( pl.display, wnft.collateral[0].asset.contractAddress ); KTypes.Price[] memory prices = new KTypes.Price[](denPrices.length); for (uint256 i = 0; i < denPrices.length; ++ i ){ // Calc wNFT price prices[i].payWith = denPrices[i].payWith; prices[i].amount = denPrices[i].amount * wnft.collateral[0].amount / denPrices[i].denominator; } return prices; } catch { return getDefaultDisplayPrices(_assetItem); } } function getDefaultDisplayPrices( ETypes.AssetItem memory _assetItem ) public view virtual returns (KTypes.Price[] memory _prices) { // get display of given item KTypes.Place memory pl = _getVirtualPlace(_assetItem); _prices = defaultNFTPriceForDisplay[pl.display]; } function getDisplayTimeDiscounts( bytes32 _displayNameHash ) public view virtual returns (DiscountUntil[] memory) { return timeDiscounts[_displayNameHash]; } function getItemDiscounts( ETypes.AssetItem memory _assetItem, address _buyer, address _referrer, bytes32 _promoHash ) public view virtual returns (KTypes.Discount[] memory) { KTypes.Place memory pl = _getVirtualPlace(_assetItem); // 1.First check time discounts for this display DiscountUntil[] storage tdArray = timeDiscounts[pl.display]; KTypes.Discount memory td; for (uint256 i = 0; i < tdArray.length; ++ i){ if (tdArray[i].untilDate > block.timestamp){ td = tdArray[i].discount; break; } } // This Price Model support 3 slots for discounts KTypes.Discount[] memory discounts = new KTypes.Discount[](3); for (uint256 i = 0; i < discounts.length; ++ i){ // add time discount to result discounts[0] = td; // add promo discount to result if (promoDiscounts[pl.display][_promoHash].untilDate > block.timestamp) { discounts[1] = KTypes.Discount( promoDiscounts[pl.display][_promoHash].discount.dsctType, promoDiscounts[pl.display][_promoHash].discount.dsctPercent ); } // add ref discount if (referrerDiscounts[pl.display][keccak256(abi.encode(_referrer))].untilDate > block.timestamp) { discounts[2] = KTypes.Discount( referrerDiscounts[pl.display][keccak256(abi.encode(_referrer))].discount.dsctType, referrerDiscounts[pl.display][keccak256(abi.encode(_referrer))].discount.dsctPercent ); } } return discounts; } function getBatchPrices( ETypes.AssetItem[] memory _assetItemArray ) external view virtual returns (KTypes.Price[] memory) { } function getBatchDiscounts( ETypes.AssetItem[] memory _assetItemArray, address _buyer, address _referrer, bytes32 _promoHash ) external view virtual returns (KTypes.Discount[] memory) { } function getCollateralUnitPrice( bytes32 _displayNameHash, address _erc20 ) external view returns(KTypes.DenominatedPrice[] memory){ return _getCollateralUnitPrice(_displayNameHash,_erc20); } /////////////////////////////////////////////////////////////////// function _getCollateralUnitPrice( bytes32 _displayNameHash, address _erc20 ) internal view returns(KTypes.DenominatedPrice[] memory){ return erc20CollateralPricesForDisplays[_displayNameHash][_erc20]; } function _getVirtualPlace(ETypes.AssetItem memory _assetItem) internal view returns(KTypes.Place memory place) { place = kiosk.getAssetItemPlace(_assetItem); if (place.display == bytes32(0)) { place.display = kiosk.DEFAULT_DISPLAY(); } } }
// SPDX-License-Identifier: MIT pragma solidity 0.8.19; //import "IERC721Enumerable.sol"; import "LibEnvelopTypes.sol"; import "KTypes.sol"; interface IDisplayPriceModel { event DiscountChanged( bytes32 indexed display, uint8 indexed DiscountType, bytes32 DiscountParam, uint16 DiscountPercent ); event DefaultPriceChanged( bytes32 indexed display, address indexed payWithContract, uint256 indexed priceAmount ); function getItemPrices( ETypes.AssetItem memory _assetItem ) external view returns (KTypes.Price[] memory); function getDefaultDisplayPrices( ETypes.AssetItem memory _assetItem ) external view returns (KTypes.Price[] memory); function getItemDiscounts( ETypes.AssetItem memory _assetItem, address _buyer, address _referrer, bytes32 _promoHash ) external view returns (KTypes.Discount[] memory); function getBatchPrices( ETypes.AssetItem[] memory _assetItemArray ) external view returns (KTypes.Price[] memory); function getBatchDiscounts( ETypes.AssetItem[] memory _assetItemArray, address _buyer, address _referrer, bytes32 _promoHash ) external view returns (KTypes.Discount[] memory); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.5.0) (token/ERC721/extensions/IERC721Enumerable.sol) pragma solidity ^0.8.0; import "IERC721.sol"; /** * @title ERC-721 Non-Fungible Token Standard, optional enumeration extension * @dev See https://eips.ethereum.org/EIPS/eip-721 */ interface IERC721Enumerable is IERC721 { /** * @dev Returns the total amount of tokens stored by the contract. */ function totalSupply() external view returns (uint256); /** * @dev Returns a token ID owned by `owner` at a given `index` of its token list. * Use along with {balanceOf} to enumerate all of ``owner``'s tokens. */ function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256); /** * @dev Returns a token ID at a given `index` of all the tokens stored by the contract. * Use along with {totalSupply} to enumerate all tokens. */ function tokenByIndex(uint256 index) external view returns (uint256); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.8.0) (token/ERC721/IERC721.sol) pragma solidity ^0.8.0; import "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`. * * 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; /** * @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 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: Note that the caller is responsible to confirm that the recipient is capable of receiving ERC721 * or else they may be permanently lost. Usage of {safeTransferFrom} prevents loss, though the caller must * understand this adds an external call which potentially creates a reentrancy vulnerability. * * 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 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 the account approved for `tokenId` token. * * Requirements: * * - `tokenId` must exist. */ function getApproved(uint256 tokenId) external view returns (address operator); /** * @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); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol) 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 // ENVELOP(NIFTSY) protocol V1 for NFT. pragma solidity 0.8.19; /// @title Flibrary ETypes in Envelop PrtocolV1 /// @author Envelop Team /// @notice This contract implement main protocol's data types library ETypes { enum AssetType {EMPTY, NATIVE, ERC20, ERC721, ERC1155, FUTURE1, FUTURE2, FUTURE3} struct Asset { AssetType assetType; address contractAddress; } struct AssetItem { Asset asset; uint256 tokenId; uint256 amount; } struct NFTItem { address contractAddress; uint256 tokenId; } struct Fee { bytes1 feeType; uint256 param; address token; } struct Lock { bytes1 lockType; uint256 param; } struct Royalty { address beneficiary; uint16 percent; } struct WNFT { AssetItem inAsset; AssetItem[] collateral; address unWrapDestination; Fee[] fees; Lock[] locks; Royalty[] royalties; bytes2 rules; } struct INData { AssetItem inAsset; address unWrapDestination; Fee[] fees; Lock[] locks; Royalty[] royalties; AssetType outType; uint256 outBalance; //0- for 721 and any amount for 1155 bytes2 rules; } struct WhiteListItem { bool enabledForFee; bool enabledForCollateral; bool enabledRemoveFromCollateral; address transferFeeModel; } struct Rules { bytes2 onlythis; bytes2 disabled; } }
// SPDX-License-Identifier: MIT // ENVELOP(NIFTSY) protocol V1 for NFT. import "LibEnvelopTypes.sol"; pragma solidity 0.8.19; library KTypes { enum DiscountType {PROMO, REFERRAL, BATCH, TIME, WHITELIST, CUSTOM1, CUSTOM2, CUSTOM3} struct Price { address payWith; uint256 amount; } struct DenominatedPrice { address payWith; uint256 amount; uint256 denominator; } struct Discount { DiscountType dsctType; uint16 dsctPercent; // 100%-10000, 20%-2000, 3%-300 } struct ItemForSale { address owner; ETypes.AssetItem nft; Price[] prices; } struct Display { address owner; address beneficiary; // who will receive assets from sale uint256 enableAfter; uint256 disableAfter; address priceModel; ItemForSale[] items; } struct Place { bytes32 display; uint256 index; } }
// SPDX-License-Identifier: MIT pragma solidity 0.8.19; import "LibEnvelopTypes.sol"; import "KTypes.sol"; interface IEnvelopNFTKiosk { function DEFAULT_DISPLAY() external view returns (bytes32); function buyAssetItem( ETypes.AssetItem calldata _assetItem, uint256 _priceIndex, address _buyer, address _referrer, string calldata _promo ) external payable; function getDisplayOwner( bytes32 _displayNameHash ) external view returns (address); function getAssetItemPlace( ETypes.AssetItem memory _assetItem ) external view returns (KTypes.Place memory); }
// SPDX-License-Identifier: MIT pragma solidity 0.8.19; import "LibEnvelopTypes.sol"; interface IWNFT { function wnftInfo(uint256 tokenId) external view returns (ETypes.WNFT memory); }
{ "evmVersion": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "libraries": { "DefaultPriceModel.sol": {} }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
[{"inputs":[{"internalType":"address","name":"_kiosk","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"display","type":"bytes32"},{"indexed":true,"internalType":"address","name":"erc20Collateral","type":"address"}],"name":"CollateralPriceChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"display","type":"bytes32"},{"indexed":true,"internalType":"address","name":"payWithContract","type":"address"},{"indexed":true,"internalType":"uint256","name":"priceAmount","type":"uint256"}],"name":"DefaultPriceChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"display","type":"bytes32"},{"indexed":true,"internalType":"uint8","name":"DiscountType","type":"uint8"},{"indexed":false,"internalType":"bytes32","name":"DiscountParam","type":"bytes32"},{"indexed":false,"internalType":"uint16","name":"DiscountPercent","type":"uint16"}],"name":"DiscountChanged","type":"event"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"defaultNFTPriceForDisplay","outputs":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"address","name":"_erc20","type":"address"},{"internalType":"uint256","name":"_priceIndex","type":"uint256"},{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"denominator","type":"uint256"}],"internalType":"struct KTypes.DenominatedPrice","name":"_price","type":"tuple"}],"name":"editCollateralPriceRecordForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"uint256","name":"_priceIndex","type":"uint256"},{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct KTypes.Price","name":"_price","type":"tuple"}],"name":"editDefaultNFTPriceRecordForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"uint256","name":"_discountIndex","type":"uint256"},{"components":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"internalType":"struct DefaultPriceModel.DiscountUntil","name":"_discount","type":"tuple"}],"name":"editTimeDiscountsForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"erc20CollateralPricesForDisplays","outputs":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"denominator","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum ETypes.AssetType","name":"assetType","type":"uint8"},{"internalType":"address","name":"contractAddress","type":"address"}],"internalType":"struct ETypes.Asset","name":"asset","type":"tuple"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ETypes.AssetItem[]","name":"_assetItemArray","type":"tuple[]"},{"internalType":"address","name":"_buyer","type":"address"},{"internalType":"address","name":"_referrer","type":"address"},{"internalType":"bytes32","name":"_promoHash","type":"bytes32"}],"name":"getBatchDiscounts","outputs":[{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum ETypes.AssetType","name":"assetType","type":"uint8"},{"internalType":"address","name":"contractAddress","type":"address"}],"internalType":"struct ETypes.Asset","name":"asset","type":"tuple"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ETypes.AssetItem[]","name":"_assetItemArray","type":"tuple[]"}],"name":"getBatchPrices","outputs":[{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct KTypes.Price[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"address","name":"_erc20","type":"address"}],"name":"getCollateralUnitPrice","outputs":[{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"denominator","type":"uint256"}],"internalType":"struct KTypes.DenominatedPrice[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum ETypes.AssetType","name":"assetType","type":"uint8"},{"internalType":"address","name":"contractAddress","type":"address"}],"internalType":"struct ETypes.Asset","name":"asset","type":"tuple"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ETypes.AssetItem","name":"_assetItem","type":"tuple"}],"name":"getDefaultDisplayPrices","outputs":[{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct KTypes.Price[]","name":"_prices","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"}],"name":"getDisplayTimeDiscounts","outputs":[{"components":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"internalType":"struct DefaultPriceModel.DiscountUntil[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum ETypes.AssetType","name":"assetType","type":"uint8"},{"internalType":"address","name":"contractAddress","type":"address"}],"internalType":"struct ETypes.Asset","name":"asset","type":"tuple"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ETypes.AssetItem","name":"_assetItem","type":"tuple"},{"internalType":"address","name":"_buyer","type":"address"},{"internalType":"address","name":"_referrer","type":"address"},{"internalType":"bytes32","name":"_promoHash","type":"bytes32"}],"name":"getItemDiscounts","outputs":[{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"enum ETypes.AssetType","name":"assetType","type":"uint8"},{"internalType":"address","name":"contractAddress","type":"address"}],"internalType":"struct ETypes.Asset","name":"asset","type":"tuple"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct ETypes.AssetItem","name":"_assetItem","type":"tuple"}],"name":"getItemPrices","outputs":[{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct KTypes.Price[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"kiosk","outputs":[{"internalType":"contract IEnvelopNFTKiosk","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"promoDiscounts","outputs":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"referrerDiscounts","outputs":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"address","name":"_erc20","type":"address"},{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"denominator","type":"uint256"}],"internalType":"struct KTypes.DenominatedPrice[]","name":"_prices","type":"tuple[]"}],"name":"setCollateralPriceForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"components":[{"internalType":"address","name":"payWith","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct KTypes.Price[]","name":"_prices","type":"tuple[]"}],"name":"setDefaultNFTPriceForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"bytes32","name":"_promoHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"internalType":"struct DefaultPriceModel.DiscountUntil","name":"_discount","type":"tuple"}],"name":"setPromoDiscountForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"internalType":"address","name":"_referrer","type":"address"},{"components":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"internalType":"struct DefaultPriceModel.DiscountUntil","name":"_discount","type":"tuple"}],"name":"setRefereerDiscountForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_displayNameHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"internalType":"struct DefaultPriceModel.DiscountUntil[]","name":"_discounts","type":"tuple[]"}],"name":"setTimeDiscountsForDisplay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"timeDiscounts","outputs":[{"internalType":"uint256","name":"untilDate","type":"uint256"},{"components":[{"internalType":"enum KTypes.DiscountType","name":"dsctType","type":"uint8"},{"internalType":"uint16","name":"dsctPercent","type":"uint16"}],"internalType":"struct KTypes.Discount","name":"discount","type":"tuple"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b50604051620026843803806200268483398101604081905262000034916200005a565b600580546001600160a01b0319166001600160a01b03929092169190911790556200008c565b6000602082840312156200006d57600080fd5b81516001600160a01b03811681146200008557600080fd5b9392505050565b6125e8806200009c6000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c8063804ae37a116100b8578063b456994c1161007c578063b456994c146102b7578063bb14692f146102ca578063c185f883146102ea578063e36f1986146102fd578063eeeb83d81461032f578063fcf5e47c1461034257600080fd5b8063804ae37a146102405780639b33e82e146102535780639fbf91b514610266578063a002d5f414610279578063a63d41ef146102a457600080fd5b80635ae68026116100ff5780635ae68026146101c55780636700ac2c146101d8578063673d10bd146101f85780636b107c2c1461020c5780636e074f771461021f57600080fd5b806308c68aae1461013c5780631460e3231461016a5780632434c6cb1461017f57806341684fbf1461019257806352d93cd9146101a5575b600080fd5b61015461014a366004611978565b6060949350505050565b6040516101619190611a31565b60405180910390f35b61017d610178366004611a7e565b61037a565b005b61017d61018d366004611b14565b610507565b61017d6101a0366004611b53565b61065e565b6101b86101b3366004611b80565b610759565b6040516101619190611b9c565b61017d6101d3366004611c32565b6107ea565b6101eb6101e6366004611c7d565b61095f565b6040516101619190611cad565b6101b8610206366004611d02565b50606090565b61017d61021a366004611d3e565b610974565b61023261022d366004611d7f565b610a97565b604051610161929190611da1565b61017d61024e366004611b53565b610b04565b61017d610261366004611db5565b610be6565b610232610274366004611d7f565b610d0b565b60055461028c906001600160a01b031681565b6040516001600160a01b039091168152602001610161565b61017d6102b2366004611dfe565b610d67565b6101546102c5366004611e59565b610eba565b6102dd6102d8366004611ea9565b61120e565b6040516101619190611ec2565b6102326102f8366004611d7f565b6112d9565b61031061030b366004611d7f565b61131d565b604080516001600160a01b039093168352602083019190915201610161565b6101b861033d366004611b80565b611363565b610355610350366004611f1b565b61159f565b604080516001600160a01b039094168452602084019290925290820152606001610161565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa1580156103c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103eb9190611f5e565b6001600160a01b03161461041a5760405162461bcd60e51b815260040161041190611f7b565b60405180910390fd5b6000848152600160205260408120905b838110156104ff578185858381811061044557610445611fab565b8354600181018555600094855260209094206040909102929092019260020290910190506104738282611fe1565b505084848281811061048757610487611fab565b905060400201602001358585838181106104a3576104a3611fab565b6104b99260206040909202019081019150612005565b6001600160a01b0316877fc9287c87d9108dffc94744e56ad989771946c1c21955b7c417e408eb3192d8fe60405160405180910390a46104f881612038565b905061042a565b505050505050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610554573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105789190611f5e565b6001600160a01b03161461059e5760405162461bcd60e51b815260040161041190611f7b565b600084815260046020908152604080832081516001600160a01b0388168185015282518082038501815290830183528051908401208452909152902082906105e68282612061565b5050604080516001600160a01b0385166020820152600191869160008051602061259383398151915291016040516020818303038152906040528051906020012085602001602001602081019061063d91906120b0565b6040805192835261ffff90911660208301520160405180910390a350505050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa1580156106ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cf9190611f5e565b6001600160a01b0316146106f55760405162461bcd60e51b815260040161041190611f7b565b600084815260026020526040902080548391908590811061071857610718611fab565b906000526020600020906002020181816107329190612061565b506003905084600080516020612593833981519152843561063d60608701604088016120b0565b60606000610766836115f9565b80516000908152600160209081526040808320805482518185028101850190935280835294955090939092909184015b828210156107de576000848152602090819020604080518082019091526002850290910180546001600160a01b03168252600190810154828401529083529092019101610796565b50505050915050919050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085b9190611f5e565b6001600160a01b0316146108815760405162461bcd60e51b815260040161041190611f7b565b6000848152600260205260408120905b838110156104ff57818585838181106108ac576108ac611fab565b8354600181018555600094855260209094206060909102929092019260020290910190506108da8282612061565b50600390508660008051602061259383398151915287878581811061090157610901611fab565b6060029190910135905088888681811061091d5761091d611fab565b6109349260609182020190810191506040016120b0565b6040805192835261ffff90911660208301520160405180910390a361095881612038565b9050610891565b606061096b8383611703565b90505b92915050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa1580156109c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e59190611f5e565b6001600160a01b031614610a0b5760405162461bcd60e51b815260040161041190611f7b565b6000848152600160205260409020805483919085908110610a2e57610a2e611fab565b90600052602060002090600202018181610a489190611fe1565b505060208201803590610a5b9084612005565b6001600160a01b0316857fc9287c87d9108dffc94744e56ad989771946c1c21955b7c417e408eb3192d8fe60405160405180910390a450505050565b60036020908152600092835260408084209091529082529081902080548251808401909352600182018054919391829060ff166007811115610adb57610adb6119e1565b6007811115610aec57610aec6119e1565b81529054610100900461ffff16602090910152905082565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610b51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b759190611f5e565b6001600160a01b031614610b9b5760405162461bcd60e51b815260040161041190611f7b565b600084815260036020908152604080832086845290915290208290610bc08282612061565b5060009050846000805160206125938339815191528561063d60608701604088016120b0565b60055460405163b1d065f760e01b815260048101869052859133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610c33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c579190611f5e565b6001600160a01b031614610c7d5760405162461bcd60e51b815260040161041190611f7b565b6000858152602081815260408083206001600160a01b03881684529091529020805483919085908110610cb257610cb2611fab565b90600052602060002090600302018181610ccc91906120cd565b50506040516001600160a01b0385169086907f3a188bdc141f7cc1f608c33ff343bd3caafb83f4e70dd7d8b04c038786c2094990600090a35050505050565b60026020528160005260406000208181548110610d2757600080fd5b600091825260209091206002909102018054604080518082019091526001830180549295509293509190829060ff166007811115610adb57610adb6119e1565b60055460405163b1d065f760e01b815260048101869052859133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610db4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd89190611f5e565b6001600160a01b031614610dfe5760405162461bcd60e51b815260040161041190611f7b565b6000858152602081815260408083206001600160a01b03881684529091528120905b83811015610eb15781858583818110610e3b57610e3b611fab565b835460018101855560009485526020909420606090910292909201926003029091019050610e6982826120cd565b50506040516001600160a01b0387169088907f3a188bdc141f7cc1f608c33ff343bd3caafb83f4e70dd7d8b04c038786c2094990600090a3610eaa81612038565b9050610e20565b50505050505050565b60606000610ec7866115f9565b80516000908152600260205260409020909150610ef4604080518082019091526000808252602082015290565b60005b8254811015610fb85742838281548110610f1357610f13611fab565b9060005260206000209060020201600001541115610fa857828181548110610f3d57610f3d611fab565b90600052602060002090600202016001016040518060400160405290816000820160009054906101000a900460ff166007811115610f7d57610f7d6119e1565b6007811115610f8e57610f8e6119e1565b81529054610100900461ffff166020909101529150610fb8565b610fb181612038565b9050610ef7565b5060408051600380825260808201909252600091816020015b6040805180820190915260008082526020820152815260200190600190039081610fd157905050905060005b815181101561120157828260008151811061101a5761101a611fab565b602090810291909101810191909152855160009081526003825260408082208a835290925220544210156110d55760408051808201825286516000908152600360209081528382208b835290529190912060010154819060ff166007811115611085576110856119e1565b8152865160009081526003602090815260408083208c84528252909120600190810154610100900461ffff169190920152835184919081106110c9576110c9611fab565b60200260200101819052505b8451600090815260046020908152604080832081516001600160a01b038d1681850152825180820385018152908301835280519084012084529091529020544210156111f15760408051808201825286516000908152600460209081528382206001600160a01b038d1660608086019190915285518086039091018152608085018652805190830120835290529190912060010154819060ff166007811115611180576111806119e1565b81528651600090815260046020908152604080832081516001600160a01b038f168185015282518082038501815290830183528051908401208452825290912060010154610100900461ffff169101528251839060029081106111e5576111e5611fab565b60200260200101819052505b6111fa81612038565b9050610ffd565b5098975050505050505050565b606060026000838152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b828210156112ce57600084815260209081902060408051808201825260028602909201805483528151808301909252600181018054939491939185019291829060ff166007811115611297576112976119e1565b60078111156112a8576112a86119e1565b81529054610100900461ffff166020918201529152918352506001929092019101611243565b505050509050919050565b60046020908152600092835260408084209091529082529081902080548251808401909352600182018054919391829060ff166007811115610adb57610adb6119e1565b6001602052816000526040600020818154811061133957600080fd5b6000918252602090912060029091020180546001909101546001600160a01b039091169250905082565b8051602090810151908201516040516310976e1960e11b8152606092916001600160a01b0383169163212edc32916113a19160040190815260200190565b600060405180830381865afa9250505080156113df57506040513d6000823e601f3d908101601f191682016040526113dc91908101906123be565b60015b6113f3576113ec83610759565b9392505050565b60006113fe856115f9565b905060006114368260000151846020015160008151811061142157611421611fab565b60200260200101516000015160200151611703565b9050600081516001600160401b03811115611453576114536117a1565b60405190808252806020026020018201604052801561149857816020015b60408051808201909152600080825260208201528152602001906001900390816114715790505b50905060005b8251811015611594578281815181106114b9576114b9611fab565b6020026020010151600001518282815181106114d7576114d7611fab565b60209081029190910101516001600160a01b039091169052825183908290811061150357611503611fab565b602002602001015160400151856020015160008151811061152657611526611fab565b60200260200101516040015184838151811061154457611544611fab565b60200260200101516020015161155a91906124cd565b61156491906124e4565b82828151811061157657611576611fab565b602090810291909101810151015261158d81612038565b905061149e565b509695505050505050565b600060205282600052604060002060205281600052604060002081815481106115c757600080fd5b60009182526020909120600390910201805460018201546002909201546001600160a01b039091169450909250905083565b60408051808201825260008082526020820152600554915163014cd93360e51b815290916001600160a01b03169063299b26609061163b908590600401612506565b6040805180830381865afa158015611657573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061167b9190612547565b80519091506116fe57600560009054906101000a90046001600160a01b03166001600160a01b0316632eeb42b36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116fb9190612579565b81525b919050565b6000828152602081815260408083206001600160a01b03851684528252808320805482518185028101850190935280835260609492939192909184015b82821015611795576000848152602090819020604080516060810182526003860290920180546001600160a01b0316835260018082015484860152600290910154918301919091529083529092019101611740565b50505050905092915050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b03811182821017156117d9576117d96117a1565b60405290565b604080519081016001600160401b03811182821017156117d9576117d96117a1565b60405160e081016001600160401b03811182821017156117d9576117d96117a1565b604051601f8201601f191681016001600160401b038111828210171561184b5761184b6117a1565b604052919050565b60006001600160401b0382111561186c5761186c6117a1565b5060051b60200190565b6008811061188357600080fd5b50565b6001600160a01b038116811461188357600080fd5b600081830360808112156118ae57600080fd5b6118b66117b7565b915060408112156118c657600080fd5b506118cf6117df565b82356118da81611876565b815260208301356118ea81611886565b8060208301525080825250604082013560208201526060820135604082015292915050565b600082601f83011261192057600080fd5b8135602061193561193083611853565b611823565b82815260079290921b8401810191818101908684111561195457600080fd5b8286015b848110156115945761196a888261189b565b835291830191608001611958565b6000806000806080858703121561198e57600080fd5b84356001600160401b038111156119a457600080fd5b6119b08782880161190f565b94505060208501356119c181611886565b925060408501356119d181611886565b9396929550929360600135925050565b634e487b7160e01b600052602160045260246000fd5b6008811061188357634e487b7160e01b600052602160045260246000fd5b8051611a20816119f7565b825260209081015161ffff16910152565b602080825282518282018190526000919060409081850190868401855b82811015611a7157611a61848351611a15565b9284019290850190600101611a4e565b5091979650505050505050565b600080600060408486031215611a9357600080fd5b8335925060208401356001600160401b0380821115611ab157600080fd5b818601915086601f830112611ac557600080fd5b813581811115611ad457600080fd5b8760208260061b8501011115611ae957600080fd5b6020830194508093505050509250925092565b600060608284031215611b0e57600080fd5b50919050565b600080600060a08486031215611b2957600080fd5b833592506020840135611b3b81611886565b9150611b4a8560408601611afc565b90509250925092565b600080600060a08486031215611b6857600080fd5b8335925060208401359150611b4a8560408601611afc565b600060808284031215611b9257600080fd5b61096b838361189b565b602080825282518282018190526000919060409081850190868401855b82811015611a7157815180516001600160a01b03168552860151868501529284019290850190600101611bb9565b60008083601f840112611bf957600080fd5b5081356001600160401b03811115611c1057600080fd5b602083019150836020606083028501011115611c2b57600080fd5b9250929050565b600080600060408486031215611c4757600080fd5b8335925060208401356001600160401b03811115611c6457600080fd5b611c7086828701611be7565b9497909650939450505050565b60008060408385031215611c9057600080fd5b823591506020830135611ca281611886565b809150509250929050565b602080825282518282018190526000919060409081850190868401855b82811015611a7157815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611cca565b600060208284031215611d1457600080fd5b81356001600160401b03811115611d2a57600080fd5b611d368482850161190f565b949350505050565b60008060008385036080811215611d5457600080fd5b84359350602085013592506040603f1982011215611d7157600080fd5b506040840190509250925092565b60008060408385031215611d9257600080fd5b50508035926020909101359150565b828152606081016113ec6020830184611a15565b60008060008060c08587031215611dcb57600080fd5b843593506020850135611ddd81611886565b925060408501359150611df38660608701611afc565b905092959194509250565b60008060008060608587031215611e1457600080fd5b843593506020850135611e2681611886565b925060408501356001600160401b03811115611e4157600080fd5b611e4d87828801611be7565b95989497509550505050565b60008060008060e08587031215611e6f57600080fd5b611e79868661189b565b93506080850135611e8981611886565b925060a0850135611e9981611886565b9396929550929360c00135925050565b600060208284031215611ebb57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015611f0f57835180518452850151611efb86850182611a15565b509284019260609290920191600101611ede565b50909695505050505050565b600080600060608486031215611f3057600080fd5b833592506020840135611f4281611886565b929592945050506040919091013590565b80516116fe81611886565b600060208284031215611f7057600080fd5b81516113ec81611886565b60208082526016908201527527b7363c903337b9102234b9b83630bc9027bbb732b960511b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b80546001600160a01b0319166001600160a01b0392909216919091179055565b8135611fec81611886565b611ff68183611fc1565b50602082013560018201555050565b60006020828403121561201757600080fd5b81356113ec81611886565b634e487b7160e01b600052601160045260246000fd5b60006001820161204a5761204a612022565b5060010190565b61ffff8116811461188357600080fd5b8135815560018101602083013561207781611876565b612080816119f7565b8154604085013561209081612051565b62ffff008160081b1660ff841662ffffff19841617178455505050505050565b6000602082840312156120c257600080fd5b81356113ec81612051565b81356120d881611886565b6120e28183611fc1565b5060208201356001820155604082013560028201555050565b6000818303608081121561210e57600080fd5b6121166117b7565b9150604081121561212657600080fd5b5061212f6117df565b825161213a81611876565b8152602083015161214a81611886565b8060208301525080825250604082015160208201526060820151604082015292915050565b600082601f83011261218057600080fd5b8151602061219061193083611853565b82815260079290921b840181019181810190868411156121af57600080fd5b8286015b84811015611594576121c588826120fb565b8352918301916080016121b3565b80516001600160f81b0319811681146116fe57600080fd5b600082601f8301126121fc57600080fd5b8151602061220c61193083611853565b8281526060928302850182019282820191908785111561222b57600080fd5b8387015b858110156122825781818a0312156122475760008081fd5b61224f6117b7565b612258826121d3565b8152858201518682015260408083015161227181611886565b90820152845292840192810161222f565b5090979650505050505050565b600082601f8301126122a057600080fd5b815160206122b061193083611853565b82815260069290921b840181019181810190868411156122cf57600080fd5b8286015b8481101561159457604081890312156122ec5760008081fd5b6122f46117df565b6122fd826121d3565b815281850151858201528352918301916040016122d3565b600082601f83011261232657600080fd5b8151602061233661193083611853565b82815260069290921b8401810191818101908684111561235557600080fd5b8286015b8481101561159457604081890312156123725760008081fd5b61237a6117df565b815161238581611886565b81528185015161239481612051565b81860152835291830191604001612359565b80516001600160f01b0319811681146116fe57600080fd5b6000602082840312156123d057600080fd5b81516001600160401b03808211156123e757600080fd5b9083019061014082860312156123fc57600080fd5b612404611801565b61240e86846120fb565b815260808301518281111561242257600080fd5b61242e8782860161216f565b60208301525061244060a08401611f53565b604082015260c08301518281111561245757600080fd5b612463878286016121eb565b60608301525060e08301518281111561247b57600080fd5b6124878782860161228f565b608083015250610100830151828111156124a057600080fd5b6124ac87828601612315565b60a0830152506124bf61012084016123a6565b60c082015295945050505050565b808202811582820484141761096e5761096e612022565b60008261250157634e487b7160e01b600052601260045260246000fd5b500490565b81518051608083019190612519816119f7565b83526020908101516001600160a01b0316818401528301516040808401919091529092015160609091015290565b60006040828403121561255957600080fd5b6125616117df565b82518152602083015160208201528091505092915050565b60006020828403121561258b57600080fd5b505191905056feac8105a8870e67771145de5303c00bef4b671420232e5e776ebe7ba1f6078308a264697066735822122034b4f777f37fbd7e6cde9b542a0d203ce962b94f31a3ebfaf439530b286f4bc264736f6c634300081300330000000000000000000000007676f1e6d9a1e3a416636ac055b3f3985d1518ee
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101375760003560e01c8063804ae37a116100b8578063b456994c1161007c578063b456994c146102b7578063bb14692f146102ca578063c185f883146102ea578063e36f1986146102fd578063eeeb83d81461032f578063fcf5e47c1461034257600080fd5b8063804ae37a146102405780639b33e82e146102535780639fbf91b514610266578063a002d5f414610279578063a63d41ef146102a457600080fd5b80635ae68026116100ff5780635ae68026146101c55780636700ac2c146101d8578063673d10bd146101f85780636b107c2c1461020c5780636e074f771461021f57600080fd5b806308c68aae1461013c5780631460e3231461016a5780632434c6cb1461017f57806341684fbf1461019257806352d93cd9146101a5575b600080fd5b61015461014a366004611978565b6060949350505050565b6040516101619190611a31565b60405180910390f35b61017d610178366004611a7e565b61037a565b005b61017d61018d366004611b14565b610507565b61017d6101a0366004611b53565b61065e565b6101b86101b3366004611b80565b610759565b6040516101619190611b9c565b61017d6101d3366004611c32565b6107ea565b6101eb6101e6366004611c7d565b61095f565b6040516101619190611cad565b6101b8610206366004611d02565b50606090565b61017d61021a366004611d3e565b610974565b61023261022d366004611d7f565b610a97565b604051610161929190611da1565b61017d61024e366004611b53565b610b04565b61017d610261366004611db5565b610be6565b610232610274366004611d7f565b610d0b565b60055461028c906001600160a01b031681565b6040516001600160a01b039091168152602001610161565b61017d6102b2366004611dfe565b610d67565b6101546102c5366004611e59565b610eba565b6102dd6102d8366004611ea9565b61120e565b6040516101619190611ec2565b6102326102f8366004611d7f565b6112d9565b61031061030b366004611d7f565b61131d565b604080516001600160a01b039093168352602083019190915201610161565b6101b861033d366004611b80565b611363565b610355610350366004611f1b565b61159f565b604080516001600160a01b039094168452602084019290925290820152606001610161565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa1580156103c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103eb9190611f5e565b6001600160a01b03161461041a5760405162461bcd60e51b815260040161041190611f7b565b60405180910390fd5b6000848152600160205260408120905b838110156104ff578185858381811061044557610445611fab565b8354600181018555600094855260209094206040909102929092019260020290910190506104738282611fe1565b505084848281811061048757610487611fab565b905060400201602001358585838181106104a3576104a3611fab565b6104b99260206040909202019081019150612005565b6001600160a01b0316877fc9287c87d9108dffc94744e56ad989771946c1c21955b7c417e408eb3192d8fe60405160405180910390a46104f881612038565b905061042a565b505050505050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610554573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105789190611f5e565b6001600160a01b03161461059e5760405162461bcd60e51b815260040161041190611f7b565b600084815260046020908152604080832081516001600160a01b0388168185015282518082038501815290830183528051908401208452909152902082906105e68282612061565b5050604080516001600160a01b0385166020820152600191869160008051602061259383398151915291016040516020818303038152906040528051906020012085602001602001602081019061063d91906120b0565b6040805192835261ffff90911660208301520160405180910390a350505050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa1580156106ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cf9190611f5e565b6001600160a01b0316146106f55760405162461bcd60e51b815260040161041190611f7b565b600084815260026020526040902080548391908590811061071857610718611fab565b906000526020600020906002020181816107329190612061565b506003905084600080516020612593833981519152843561063d60608701604088016120b0565b60606000610766836115f9565b80516000908152600160209081526040808320805482518185028101850190935280835294955090939092909184015b828210156107de576000848152602090819020604080518082019091526002850290910180546001600160a01b03168252600190810154828401529083529092019101610796565b50505050915050919050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085b9190611f5e565b6001600160a01b0316146108815760405162461bcd60e51b815260040161041190611f7b565b6000848152600260205260408120905b838110156104ff57818585838181106108ac576108ac611fab565b8354600181018555600094855260209094206060909102929092019260020290910190506108da8282612061565b50600390508660008051602061259383398151915287878581811061090157610901611fab565b6060029190910135905088888681811061091d5761091d611fab565b6109349260609182020190810191506040016120b0565b6040805192835261ffff90911660208301520160405180910390a361095881612038565b9050610891565b606061096b8383611703565b90505b92915050565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa1580156109c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e59190611f5e565b6001600160a01b031614610a0b5760405162461bcd60e51b815260040161041190611f7b565b6000848152600160205260409020805483919085908110610a2e57610a2e611fab565b90600052602060002090600202018181610a489190611fe1565b505060208201803590610a5b9084612005565b6001600160a01b0316857fc9287c87d9108dffc94744e56ad989771946c1c21955b7c417e408eb3192d8fe60405160405180910390a450505050565b60036020908152600092835260408084209091529082529081902080548251808401909352600182018054919391829060ff166007811115610adb57610adb6119e1565b6007811115610aec57610aec6119e1565b81529054610100900461ffff16602090910152905082565b60055460405163b1d065f760e01b815260048101859052849133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610b51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b759190611f5e565b6001600160a01b031614610b9b5760405162461bcd60e51b815260040161041190611f7b565b600084815260036020908152604080832086845290915290208290610bc08282612061565b5060009050846000805160206125938339815191528561063d60608701604088016120b0565b60055460405163b1d065f760e01b815260048101869052859133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610c33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c579190611f5e565b6001600160a01b031614610c7d5760405162461bcd60e51b815260040161041190611f7b565b6000858152602081815260408083206001600160a01b03881684529091529020805483919085908110610cb257610cb2611fab565b90600052602060002090600302018181610ccc91906120cd565b50506040516001600160a01b0385169086907f3a188bdc141f7cc1f608c33ff343bd3caafb83f4e70dd7d8b04c038786c2094990600090a35050505050565b60026020528160005260406000208181548110610d2757600080fd5b600091825260209091206002909102018054604080518082019091526001830180549295509293509190829060ff166007811115610adb57610adb6119e1565b60055460405163b1d065f760e01b815260048101869052859133916001600160a01b039091169063b1d065f790602401602060405180830381865afa158015610db4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd89190611f5e565b6001600160a01b031614610dfe5760405162461bcd60e51b815260040161041190611f7b565b6000858152602081815260408083206001600160a01b03881684529091528120905b83811015610eb15781858583818110610e3b57610e3b611fab565b835460018101855560009485526020909420606090910292909201926003029091019050610e6982826120cd565b50506040516001600160a01b0387169088907f3a188bdc141f7cc1f608c33ff343bd3caafb83f4e70dd7d8b04c038786c2094990600090a3610eaa81612038565b9050610e20565b50505050505050565b60606000610ec7866115f9565b80516000908152600260205260409020909150610ef4604080518082019091526000808252602082015290565b60005b8254811015610fb85742838281548110610f1357610f13611fab565b9060005260206000209060020201600001541115610fa857828181548110610f3d57610f3d611fab565b90600052602060002090600202016001016040518060400160405290816000820160009054906101000a900460ff166007811115610f7d57610f7d6119e1565b6007811115610f8e57610f8e6119e1565b81529054610100900461ffff166020909101529150610fb8565b610fb181612038565b9050610ef7565b5060408051600380825260808201909252600091816020015b6040805180820190915260008082526020820152815260200190600190039081610fd157905050905060005b815181101561120157828260008151811061101a5761101a611fab565b602090810291909101810191909152855160009081526003825260408082208a835290925220544210156110d55760408051808201825286516000908152600360209081528382208b835290529190912060010154819060ff166007811115611085576110856119e1565b8152865160009081526003602090815260408083208c84528252909120600190810154610100900461ffff169190920152835184919081106110c9576110c9611fab565b60200260200101819052505b8451600090815260046020908152604080832081516001600160a01b038d1681850152825180820385018152908301835280519084012084529091529020544210156111f15760408051808201825286516000908152600460209081528382206001600160a01b038d1660608086019190915285518086039091018152608085018652805190830120835290529190912060010154819060ff166007811115611180576111806119e1565b81528651600090815260046020908152604080832081516001600160a01b038f168185015282518082038501815290830183528051908401208452825290912060010154610100900461ffff169101528251839060029081106111e5576111e5611fab565b60200260200101819052505b6111fa81612038565b9050610ffd565b5098975050505050505050565b606060026000838152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b828210156112ce57600084815260209081902060408051808201825260028602909201805483528151808301909252600181018054939491939185019291829060ff166007811115611297576112976119e1565b60078111156112a8576112a86119e1565b81529054610100900461ffff166020918201529152918352506001929092019101611243565b505050509050919050565b60046020908152600092835260408084209091529082529081902080548251808401909352600182018054919391829060ff166007811115610adb57610adb6119e1565b6001602052816000526040600020818154811061133957600080fd5b6000918252602090912060029091020180546001909101546001600160a01b039091169250905082565b8051602090810151908201516040516310976e1960e11b8152606092916001600160a01b0383169163212edc32916113a19160040190815260200190565b600060405180830381865afa9250505080156113df57506040513d6000823e601f3d908101601f191682016040526113dc91908101906123be565b60015b6113f3576113ec83610759565b9392505050565b60006113fe856115f9565b905060006114368260000151846020015160008151811061142157611421611fab565b60200260200101516000015160200151611703565b9050600081516001600160401b03811115611453576114536117a1565b60405190808252806020026020018201604052801561149857816020015b60408051808201909152600080825260208201528152602001906001900390816114715790505b50905060005b8251811015611594578281815181106114b9576114b9611fab565b6020026020010151600001518282815181106114d7576114d7611fab565b60209081029190910101516001600160a01b039091169052825183908290811061150357611503611fab565b602002602001015160400151856020015160008151811061152657611526611fab565b60200260200101516040015184838151811061154457611544611fab565b60200260200101516020015161155a91906124cd565b61156491906124e4565b82828151811061157657611576611fab565b602090810291909101810151015261158d81612038565b905061149e565b509695505050505050565b600060205282600052604060002060205281600052604060002081815481106115c757600080fd5b60009182526020909120600390910201805460018201546002909201546001600160a01b039091169450909250905083565b60408051808201825260008082526020820152600554915163014cd93360e51b815290916001600160a01b03169063299b26609061163b908590600401612506565b6040805180830381865afa158015611657573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061167b9190612547565b80519091506116fe57600560009054906101000a90046001600160a01b03166001600160a01b0316632eeb42b36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116fb9190612579565b81525b919050565b6000828152602081815260408083206001600160a01b03851684528252808320805482518185028101850190935280835260609492939192909184015b82821015611795576000848152602090819020604080516060810182526003860290920180546001600160a01b0316835260018082015484860152600290910154918301919091529083529092019101611740565b50505050905092915050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b03811182821017156117d9576117d96117a1565b60405290565b604080519081016001600160401b03811182821017156117d9576117d96117a1565b60405160e081016001600160401b03811182821017156117d9576117d96117a1565b604051601f8201601f191681016001600160401b038111828210171561184b5761184b6117a1565b604052919050565b60006001600160401b0382111561186c5761186c6117a1565b5060051b60200190565b6008811061188357600080fd5b50565b6001600160a01b038116811461188357600080fd5b600081830360808112156118ae57600080fd5b6118b66117b7565b915060408112156118c657600080fd5b506118cf6117df565b82356118da81611876565b815260208301356118ea81611886565b8060208301525080825250604082013560208201526060820135604082015292915050565b600082601f83011261192057600080fd5b8135602061193561193083611853565b611823565b82815260079290921b8401810191818101908684111561195457600080fd5b8286015b848110156115945761196a888261189b565b835291830191608001611958565b6000806000806080858703121561198e57600080fd5b84356001600160401b038111156119a457600080fd5b6119b08782880161190f565b94505060208501356119c181611886565b925060408501356119d181611886565b9396929550929360600135925050565b634e487b7160e01b600052602160045260246000fd5b6008811061188357634e487b7160e01b600052602160045260246000fd5b8051611a20816119f7565b825260209081015161ffff16910152565b602080825282518282018190526000919060409081850190868401855b82811015611a7157611a61848351611a15565b9284019290850190600101611a4e565b5091979650505050505050565b600080600060408486031215611a9357600080fd5b8335925060208401356001600160401b0380821115611ab157600080fd5b818601915086601f830112611ac557600080fd5b813581811115611ad457600080fd5b8760208260061b8501011115611ae957600080fd5b6020830194508093505050509250925092565b600060608284031215611b0e57600080fd5b50919050565b600080600060a08486031215611b2957600080fd5b833592506020840135611b3b81611886565b9150611b4a8560408601611afc565b90509250925092565b600080600060a08486031215611b6857600080fd5b8335925060208401359150611b4a8560408601611afc565b600060808284031215611b9257600080fd5b61096b838361189b565b602080825282518282018190526000919060409081850190868401855b82811015611a7157815180516001600160a01b03168552860151868501529284019290850190600101611bb9565b60008083601f840112611bf957600080fd5b5081356001600160401b03811115611c1057600080fd5b602083019150836020606083028501011115611c2b57600080fd5b9250929050565b600080600060408486031215611c4757600080fd5b8335925060208401356001600160401b03811115611c6457600080fd5b611c7086828701611be7565b9497909650939450505050565b60008060408385031215611c9057600080fd5b823591506020830135611ca281611886565b809150509250929050565b602080825282518282018190526000919060409081850190868401855b82811015611a7157815180516001600160a01b0316855286810151878601528501518585015260609093019290850190600101611cca565b600060208284031215611d1457600080fd5b81356001600160401b03811115611d2a57600080fd5b611d368482850161190f565b949350505050565b60008060008385036080811215611d5457600080fd5b84359350602085013592506040603f1982011215611d7157600080fd5b506040840190509250925092565b60008060408385031215611d9257600080fd5b50508035926020909101359150565b828152606081016113ec6020830184611a15565b60008060008060c08587031215611dcb57600080fd5b843593506020850135611ddd81611886565b925060408501359150611df38660608701611afc565b905092959194509250565b60008060008060608587031215611e1457600080fd5b843593506020850135611e2681611886565b925060408501356001600160401b03811115611e4157600080fd5b611e4d87828801611be7565b95989497509550505050565b60008060008060e08587031215611e6f57600080fd5b611e79868661189b565b93506080850135611e8981611886565b925060a0850135611e9981611886565b9396929550929360c00135925050565b600060208284031215611ebb57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015611f0f57835180518452850151611efb86850182611a15565b509284019260609290920191600101611ede565b50909695505050505050565b600080600060608486031215611f3057600080fd5b833592506020840135611f4281611886565b929592945050506040919091013590565b80516116fe81611886565b600060208284031215611f7057600080fd5b81516113ec81611886565b60208082526016908201527527b7363c903337b9102234b9b83630bc9027bbb732b960511b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b80546001600160a01b0319166001600160a01b0392909216919091179055565b8135611fec81611886565b611ff68183611fc1565b50602082013560018201555050565b60006020828403121561201757600080fd5b81356113ec81611886565b634e487b7160e01b600052601160045260246000fd5b60006001820161204a5761204a612022565b5060010190565b61ffff8116811461188357600080fd5b8135815560018101602083013561207781611876565b612080816119f7565b8154604085013561209081612051565b62ffff008160081b1660ff841662ffffff19841617178455505050505050565b6000602082840312156120c257600080fd5b81356113ec81612051565b81356120d881611886565b6120e28183611fc1565b5060208201356001820155604082013560028201555050565b6000818303608081121561210e57600080fd5b6121166117b7565b9150604081121561212657600080fd5b5061212f6117df565b825161213a81611876565b8152602083015161214a81611886565b8060208301525080825250604082015160208201526060820151604082015292915050565b600082601f83011261218057600080fd5b8151602061219061193083611853565b82815260079290921b840181019181810190868411156121af57600080fd5b8286015b84811015611594576121c588826120fb565b8352918301916080016121b3565b80516001600160f81b0319811681146116fe57600080fd5b600082601f8301126121fc57600080fd5b8151602061220c61193083611853565b8281526060928302850182019282820191908785111561222b57600080fd5b8387015b858110156122825781818a0312156122475760008081fd5b61224f6117b7565b612258826121d3565b8152858201518682015260408083015161227181611886565b90820152845292840192810161222f565b5090979650505050505050565b600082601f8301126122a057600080fd5b815160206122b061193083611853565b82815260069290921b840181019181810190868411156122cf57600080fd5b8286015b8481101561159457604081890312156122ec5760008081fd5b6122f46117df565b6122fd826121d3565b815281850151858201528352918301916040016122d3565b600082601f83011261232657600080fd5b8151602061233661193083611853565b82815260069290921b8401810191818101908684111561235557600080fd5b8286015b8481101561159457604081890312156123725760008081fd5b61237a6117df565b815161238581611886565b81528185015161239481612051565b81860152835291830191604001612359565b80516001600160f01b0319811681146116fe57600080fd5b6000602082840312156123d057600080fd5b81516001600160401b03808211156123e757600080fd5b9083019061014082860312156123fc57600080fd5b612404611801565b61240e86846120fb565b815260808301518281111561242257600080fd5b61242e8782860161216f565b60208301525061244060a08401611f53565b604082015260c08301518281111561245757600080fd5b612463878286016121eb565b60608301525060e08301518281111561247b57600080fd5b6124878782860161228f565b608083015250610100830151828111156124a057600080fd5b6124ac87828601612315565b60a0830152506124bf61012084016123a6565b60c082015295945050505050565b808202811582820484141761096e5761096e612022565b60008261250157634e487b7160e01b600052601260045260246000fd5b500490565b81518051608083019190612519816119f7565b83526020908101516001600160a01b0316818401528301516040808401919091529092015160609091015290565b60006040828403121561255957600080fd5b6125616117df565b82518152602083015160208201528091505092915050565b60006020828403121561258b57600080fd5b505191905056feac8105a8870e67771145de5303c00bef4b671420232e5e776ebe7ba1f6078308a264697066735822122034b4f777f37fbd7e6cde9b542a0d203ce962b94f31a3ebfaf439530b286f4bc264736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007676f1e6d9a1e3a416636ac055b3f3985d1518ee
-----Decoded View---------------
Arg [0] : _kiosk (address): 0x7676f1E6D9a1E3a416636aC055B3f3985d1518Ee
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007676f1e6d9a1e3a416636ac055b3f3985d1518ee
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.