1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56// Anonymous struct7struct Tuple0 {8 uint256 field_0;9 string field_1;10}1112// Common stubs holder13contract Dummy {14 uint8 dummy;15 string stub_error = "this contract is implemented in native";16}1718contract ERC165 is Dummy {19 function supportsInterface(bytes4 interfaceID)20 external21 view22 returns (bool)23 {24 require(false, stub_error);25 interfaceID;26 return true;27 }28}2930// Inline31contract ERC721Events {32 event Transfer(33 address indexed from,34 address indexed to,35 uint256 indexed tokenId36 );37 event Approval(38 address indexed owner,39 address indexed approved,40 uint256 indexed tokenId41 );42 event ApprovalForAll(43 address indexed owner,44 address indexed operator,45 bool approved46 );47}4849// Inline50contract ERC721MintableEvents {51 event MintingFinished();52}5354contract ERC721 is Dummy, ERC165, ERC721Events {55 // Selector: balanceOf(address) 70a0823156 function balanceOf(address owner) public view returns (uint256) {57 require(false, stub_error);58 owner;59 dummy;60 return 0;61 }6263 // Selector: ownerOf(uint256) 6352211e64 function ownerOf(uint256 tokenId) public view returns (address) {65 require(false, stub_error);66 tokenId;67 dummy;68 return 0x0000000000000000000000000000000000000000;69 }7071 // Selector: safeTransferFromWithData(address,address,uint256,bytes) 60a1167272 function safeTransferFromWithData(73 address from,74 address to,75 uint256 tokenId,76 bytes memory data77 ) public {78 require(false, stub_error);79 from;80 to;81 tokenId;82 data;83 dummy = 0;84 }8586 // Selector: safeTransferFrom(address,address,uint256) 42842e0e87 function safeTransferFrom(88 address from,89 address to,90 uint256 tokenId91 ) public {92 require(false, stub_error);93 from;94 to;95 tokenId;96 dummy = 0;97 }9899 // Selector: transferFrom(address,address,uint256) 23b872dd100 function transferFrom(101 address from,102 address to,103 uint256 tokenId104 ) public {105 require(false, stub_error);106 from;107 to;108 tokenId;109 dummy = 0;110 }111112 // Selector: approve(address,uint256) 095ea7b3113 function approve(address approved, uint256 tokenId) public {114 require(false, stub_error);115 approved;116 tokenId;117 dummy = 0;118 }119120 // Selector: setApprovalForAll(address,bool) a22cb465121 function setApprovalForAll(address operator, bool approved) public {122 require(false, stub_error);123 operator;124 approved;125 dummy = 0;126 }127128 // Selector: getApproved(uint256) 081812fc129 function getApproved(uint256 tokenId) public view returns (address) {130 require(false, stub_error);131 tokenId;132 dummy;133 return 0x0000000000000000000000000000000000000000;134 }135136 // Selector: isApprovedForAll(address,address) e985e9c5137 function isApprovedForAll(address owner, address operator)138 public139 view140 returns (address)141 {142 require(false, stub_error);143 owner;144 operator;145 dummy;146 return 0x0000000000000000000000000000000000000000;147 }148}149150contract ERC721Burnable is Dummy, ERC165 {151 // Selector: burn(uint256) 42966c68152 function burn(uint256 tokenId) public {153 require(false, stub_error);154 tokenId;155 dummy = 0;156 }157}158159contract ERC721Enumerable is Dummy, ERC165 {160 // Selector: tokenByIndex(uint256) 4f6ccce7161 function tokenByIndex(uint256 index) public view returns (uint256) {162 require(false, stub_error);163 index;164 dummy;165 return 0;166 }167168 // Selector: tokenOfOwnerByIndex(address,uint256) 2f745c59169 function tokenOfOwnerByIndex(address owner, uint256 index)170 public171 view172 returns (uint256)173 {174 require(false, stub_error);175 owner;176 index;177 dummy;178 return 0;179 }180181 // Selector: totalSupply() 18160ddd182 function totalSupply() public view returns (uint256) {183 require(false, stub_error);184 dummy;185 return 0;186 }187}188189contract ERC721Metadata is Dummy, ERC165 {190 // Selector: name() 06fdde03191 function name() public view returns (string memory) {192 require(false, stub_error);193 dummy;194 return "";195 }196197 // Selector: symbol() 95d89b41198 function symbol() public view returns (string memory) {199 require(false, stub_error);200 dummy;201 return "";202 }203204 // Selector: tokenURI(uint256) c87b56dd205 function tokenURI(uint256 tokenId) public view returns (string memory) {206 require(false, stub_error);207 tokenId;208 dummy;209 return "";210 }211}212213contract ERC721Mintable is Dummy, ERC165, ERC721MintableEvents {214 // Selector: mintingFinished() 05d2035b215 function mintingFinished() public view returns (bool) {216 require(false, stub_error);217 dummy;218 return false;219 }220221 // Selector: mint(address,uint256) 40c10f19222 function mint(address to, uint256 tokenId) public returns (bool) {223 require(false, stub_error);224 to;225 tokenId;226 dummy = 0;227 return false;228 }229230 // Selector: mintWithTokenURI(address,uint256,string) 50bb4e7f231 function mintWithTokenURI(232 address to,233 uint256 tokenId,234 string memory tokenUri235 ) public returns (bool) {236 require(false, stub_error);237 to;238 tokenId;239 tokenUri;240 dummy = 0;241 return false;242 }243244 // Selector: finishMinting() 7d64bcb4245 function finishMinting() public returns (bool) {246 require(false, stub_error);247 dummy = 0;248 return false;249 }250}251252contract ERC721UniqueExtensions is Dummy, ERC165 {253 // Selector: transfer(address,uint256) a9059cbb254 function transfer(address to, uint256 tokenId) public {255 require(false, stub_error);256 to;257 tokenId;258 dummy = 0;259 }260261 // Selector: burnFrom(address,uint256) 79cc6790262 function burnFrom(address from, uint256 tokenId) public {263 require(false, stub_error);264 from;265 tokenId;266 dummy = 0;267 }268269 // Selector: nextTokenId() 75794a3c270 function nextTokenId() public view returns (uint256) {271 require(false, stub_error);272 dummy;273 return 0;274 }275276 // Selector: setVariableMetadata(uint256,bytes) d4eac26d277 function setVariableMetadata(uint256 tokenId, bytes memory data) public {278 require(false, stub_error);279 tokenId;280 data;281 dummy = 0;282 }283284 // Selector: getVariableMetadata(uint256) e6c5ce6f285 function getVariableMetadata(uint256 tokenId)286 public287 view288 returns (bytes memory)289 {290 require(false, stub_error);291 tokenId;292 dummy;293 return hex"";294 }295296 // Selector: mintBulk(address,uint256[]) 44a9945e297 function mintBulk(address to, uint256[] memory tokenIds)298 public299 returns (bool)300 {301 require(false, stub_error);302 to;303 tokenIds;304 dummy = 0;305 return false;306 }307308 // Selector: mintBulkWithTokenURI(address,(uint256,string)[]) 36543006309 function mintBulkWithTokenURI(address to, Tuple0[] memory tokens)310 public311 returns (bool)312 {313 require(false, stub_error);314 to;315 tokens;316 dummy = 0;317 return false;318 }319}320321contract UniqueNFT is322 Dummy,323 ERC165,324 ERC721,325 ERC721Metadata,326 ERC721Enumerable,327 ERC721UniqueExtensions,328 ERC721Mintable,329 ERC721Burnable330{}