Remove cache files, add/fix tests, update contract to remove/change methods
This commit is contained in:
parent
afb1f1e73b
commit
a0adff1702
|
|
@ -6,4 +6,8 @@ cache
|
|||
artifacts
|
||||
|
||||
# NPM
|
||||
package-lock.json
|
||||
package-lock.json
|
||||
|
||||
# Foundry
|
||||
./out
|
||||
./forge-cache
|
||||
|
|
@ -84,15 +84,6 @@ contract FleekERC721 is ERC721, FleekAccessControl {
|
|||
return tokenId;
|
||||
}
|
||||
|
||||
function upgradeTokenBuild(
|
||||
uint256 tokenId,
|
||||
string memory commit,
|
||||
string memory repository
|
||||
) public payable requireTokenOwner(tokenId) {
|
||||
_requireMinted(tokenId);
|
||||
setTokenBuild(tokenId, commit, repository);
|
||||
}
|
||||
|
||||
function tokenURI(
|
||||
uint256 tokenId
|
||||
) public view virtual override returns (string memory) {
|
||||
|
|
@ -123,8 +114,7 @@ contract FleekERC721 is ERC721, FleekAccessControl {
|
|||
uint256 tokenId,
|
||||
address controller
|
||||
) public requireTokenOwner(tokenId) {
|
||||
_requireMinted(tokenId);
|
||||
_grantRole(_tokenRole(tokenId, "CONTROLLER"), controller);
|
||||
_addTokenController(tokenId, controller);
|
||||
}
|
||||
|
||||
function _addTokenController(
|
||||
|
|
@ -211,6 +201,7 @@ contract FleekERC721 is ERC721, FleekAccessControl {
|
|||
function burn(
|
||||
uint256 tokenId
|
||||
) public virtual requireTokenController(tokenId) {
|
||||
_requireMinted(tokenId);
|
||||
require(
|
||||
ownerOf(tokenId) == msg.sender,
|
||||
"FleekERC721: must be token owner"
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -1,644 +0,0 @@
|
|||
{
|
||||
"abi": [],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Common.sol\":\"CommonBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Common.sol\":{\"keccak256\":\"0x3ed7f49e907eaf339c3bb0b79a81d303d0f9e37aa5b8a9854c0cbfc3ad9a3ef0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01c2532fb5fea32c6dc165518f2c4918af25d9139d17c11da330414c9797a70b\",\"dweb:/ipfs/QmV4r8a1e9Rgu2xoigVCuSv3fZ737wD2DXbV6ZmHXVUtDn\"]},\"lib/forge-std/src/Components.sol\":{\"keccak256\":\"0xd3b8ba6df58174d5d650a668dfa49eeee28b2b855514b9e793e1c0b69d747149\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cce2b2ca79d5ce993b91358ed3d588396295e0aba9bb923481c1ffa5058a0dcd\",\"dweb:/ipfs/QmPNymteQmLWk7SqQhNsF6Rbc3xFPY7xGb4fBKravHLXD3\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xde2bdee8e0e530de3269da50ebba83f4f90dde817971488980b720281e3cde4d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb3f05bb06b654db43f4ce38e22aa7e2296ee00615df5329623c08c9ac030f8d\",\"dweb:/ipfs/QmdKwTpFsTiDFmc8zGwbPRu8mDs4oiKdZvzSj3WpiiGaez\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xf0c5c17c4cdfd0de659cf5e58e0e1611b6ee53900d3ab8b07b871d71d0b37bc6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://21ffda3891e7480d5fdbf7f5e9d539f0ed76204bca69738f8ee006395ef1e23e\",\"dweb:/ipfs/Qmbhbn8zVXrCyvhvoQ5AUSj3usVGqMbMSEHYkNPdbQKBxt\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x2291ee8f379552b86f34d98acb248d50442c7d4ab94aed03f1c8ddb6aea6852d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1ca6ca6fe35692428b507008b24e4ec4ba0cabaf58110fd0b4456a42e0166bdc\",\"dweb:/ipfs/QmUcSeXfYMyusrWxEdPRMeWFYhf9qD6YJaZXCVo29F4eus\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb0da85ce6999940eba6190a26c15b9bc7aede57123891287e1b30f80333a9cf5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d287fd41de40ef992588f7a9531e66d1e9f8e4f3f194b9e721ac576d4613964a\",\"dweb:/ipfs/QmbFYYjoc8WGLKVfDe4rscYPwdGq48incbwRQNoLtcMMjn\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0x216818221765c43713791708d7dc83fcd5ada81766c9d4ce54551528c191a59f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f03d0ef065ce600e5922f3e9c92f0f54ff7c12895a250fa97d83e9ee38e7e2b\",\"dweb:/ipfs/QmX59m9mNRNEhjhEZnxbDirniesi26pnDaNzF5hPB4A3E8\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xf4442ded918d167635adc30ba3c451d45666c89b38e0eec2adaf0857b49a72f7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4cb181bd626fe852a36f9b1cf2d79ef0fa9d2bf2cbf0ec86f33f5bf492c0b69\",\"dweb:/ipfs/QmaZKevWdZbjoTB7qtzKjP3dZhiUGymJc4Wb9qkNMewxjB\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x225cc1ec33efd35c90e78aec0792ed9751cd6217e646271172421e96e2e2cc0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c6adbd216e40ca2387835b8618c82e7153cb826023d38943bbb0c2e992644aa\",\"dweb:/ipfs/QmZeejwEkm7iH9NHih7dPbuNqivuFn27EkgJesgByzS9wD\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"lib/forge-std/src/Common.sol": "CommonBase"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"lib/forge-std/lib/ds-test/src/test.sol": {
|
||||
"keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54",
|
||||
"urls": [
|
||||
"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5",
|
||||
"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr"
|
||||
],
|
||||
"license": "GPL-3.0-or-later"
|
||||
},
|
||||
"lib/forge-std/src/Common.sol": {
|
||||
"keccak256": "0x3ed7f49e907eaf339c3bb0b79a81d303d0f9e37aa5b8a9854c0cbfc3ad9a3ef0",
|
||||
"urls": [
|
||||
"bzz-raw://01c2532fb5fea32c6dc165518f2c4918af25d9139d17c11da330414c9797a70b",
|
||||
"dweb:/ipfs/QmV4r8a1e9Rgu2xoigVCuSv3fZ737wD2DXbV6ZmHXVUtDn"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/Components.sol": {
|
||||
"keccak256": "0xd3b8ba6df58174d5d650a668dfa49eeee28b2b855514b9e793e1c0b69d747149",
|
||||
"urls": [
|
||||
"bzz-raw://cce2b2ca79d5ce993b91358ed3d588396295e0aba9bb923481c1ffa5058a0dcd",
|
||||
"dweb:/ipfs/QmPNymteQmLWk7SqQhNsF6Rbc3xFPY7xGb4fBKravHLXD3"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdAssertions.sol": {
|
||||
"keccak256": "0xde2bdee8e0e530de3269da50ebba83f4f90dde817971488980b720281e3cde4d",
|
||||
"urls": [
|
||||
"bzz-raw://cb3f05bb06b654db43f4ce38e22aa7e2296ee00615df5329623c08c9ac030f8d",
|
||||
"dweb:/ipfs/QmdKwTpFsTiDFmc8zGwbPRu8mDs4oiKdZvzSj3WpiiGaez"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdCheats.sol": {
|
||||
"keccak256": "0xf0c5c17c4cdfd0de659cf5e58e0e1611b6ee53900d3ab8b07b871d71d0b37bc6",
|
||||
"urls": [
|
||||
"bzz-raw://21ffda3891e7480d5fdbf7f5e9d539f0ed76204bca69738f8ee006395ef1e23e",
|
||||
"dweb:/ipfs/Qmbhbn8zVXrCyvhvoQ5AUSj3usVGqMbMSEHYkNPdbQKBxt"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdError.sol": {
|
||||
"keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77",
|
||||
"urls": [
|
||||
"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6",
|
||||
"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdJson.sol": {
|
||||
"keccak256": "0x2291ee8f379552b86f34d98acb248d50442c7d4ab94aed03f1c8ddb6aea6852d",
|
||||
"urls": [
|
||||
"bzz-raw://1ca6ca6fe35692428b507008b24e4ec4ba0cabaf58110fd0b4456a42e0166bdc",
|
||||
"dweb:/ipfs/QmUcSeXfYMyusrWxEdPRMeWFYhf9qD6YJaZXCVo29F4eus"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdMath.sol": {
|
||||
"keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2",
|
||||
"urls": [
|
||||
"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92",
|
||||
"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdStorage.sol": {
|
||||
"keccak256": "0xb0da85ce6999940eba6190a26c15b9bc7aede57123891287e1b30f80333a9cf5",
|
||||
"urls": [
|
||||
"bzz-raw://d287fd41de40ef992588f7a9531e66d1e9f8e4f3f194b9e721ac576d4613964a",
|
||||
"dweb:/ipfs/QmbFYYjoc8WGLKVfDe4rscYPwdGq48incbwRQNoLtcMMjn"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdUtils.sol": {
|
||||
"keccak256": "0x216818221765c43713791708d7dc83fcd5ada81766c9d4ce54551528c191a59f",
|
||||
"urls": [
|
||||
"bzz-raw://3f03d0ef065ce600e5922f3e9c92f0f54ff7c12895a250fa97d83e9ee38e7e2b",
|
||||
"dweb:/ipfs/QmX59m9mNRNEhjhEZnxbDirniesi26pnDaNzF5hPB4A3E8"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/Vm.sol": {
|
||||
"keccak256": "0xf4442ded918d167635adc30ba3c451d45666c89b38e0eec2adaf0857b49a72f7",
|
||||
"urls": [
|
||||
"bzz-raw://b4cb181bd626fe852a36f9b1cf2d79ef0fa9d2bf2cbf0ec86f33f5bf492c0b69",
|
||||
"dweb:/ipfs/QmaZKevWdZbjoTB7qtzKjP3dZhiUGymJc4Wb9qkNMewxjB"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/console.sol": {
|
||||
"keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba",
|
||||
"urls": [
|
||||
"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70",
|
||||
"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/console2.sol": {
|
||||
"keccak256": "0x225cc1ec33efd35c90e78aec0792ed9751cd6217e646271172421e96e2e2cc0f",
|
||||
"urls": [
|
||||
"bzz-raw://6c6adbd216e40ca2387835b8618c82e7153cb826023d38943bbb0c2e992644aa",
|
||||
"dweb:/ipfs/QmZeejwEkm7iH9NHih7dPbuNqivuFn27EkgJesgByzS9wD"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "lib/forge-std/src/Common.sol",
|
||||
"id": 2545,
|
||||
"exportedSymbols": {
|
||||
"CommonBase": [
|
||||
2544
|
||||
],
|
||||
"StdStorage": [
|
||||
6388
|
||||
],
|
||||
"Vm": [
|
||||
9256
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "32:429:3",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 2514,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "32:31:3",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
">=",
|
||||
"0.6",
|
||||
".2",
|
||||
"<",
|
||||
"0.9",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 2517,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "65:48:3",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/Components.sol",
|
||||
"file": "./Components.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2545,
|
||||
"sourceUnit": 2557,
|
||||
"symbolAliases": [
|
||||
{
|
||||
"foreign": {
|
||||
"id": 2515,
|
||||
"name": "StdStorage",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 6388,
|
||||
"src": "73:10:3",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 2516,
|
||||
"name": "Vm",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 9256,
|
||||
"src": "85:2:3",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
}
|
||||
],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2544,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "115:345:3",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 2531,
|
||||
"nodeType": "VariableDeclaration",
|
||||
"src": "150:94:3",
|
||||
"nodes": [],
|
||||
"constant": true,
|
||||
"mutability": "constant",
|
||||
"name": "VM_ADDRESS",
|
||||
"nameLocation": "176:10:3",
|
||||
"scope": 2544,
|
||||
"stateVariable": true,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2518,
|
||||
"name": "address",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "150:7:3",
|
||||
"stateMutability": "nonpayable",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"arguments": [
|
||||
{
|
||||
"arguments": [
|
||||
{
|
||||
"arguments": [
|
||||
{
|
||||
"arguments": [
|
||||
{
|
||||
"hexValue": "6865766d20636865617420636f6465",
|
||||
"id": 2526,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "string",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "223:17:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d",
|
||||
"typeString": "literal_string \"hevm cheat code\""
|
||||
},
|
||||
"value": "hevm cheat code"
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_stringliteral_885cb69240a935d632d79c317109709ecfa91a80626ff3989d68f67f5b1dd12d",
|
||||
"typeString": "literal_string \"hevm cheat code\""
|
||||
}
|
||||
],
|
||||
"id": 2525,
|
||||
"name": "keccak256",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": -8,
|
||||
"src": "213:9:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$",
|
||||
"typeString": "function (bytes memory) pure returns (bytes32)"
|
||||
}
|
||||
},
|
||||
"id": 2527,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "functionCall",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "213:28:3",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes32",
|
||||
"typeString": "bytes32"
|
||||
}
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_bytes32",
|
||||
"typeString": "bytes32"
|
||||
}
|
||||
],
|
||||
"id": 2524,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"lValueRequested": false,
|
||||
"nodeType": "ElementaryTypeNameExpression",
|
||||
"src": "205:7:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_type$_t_uint256_$",
|
||||
"typeString": "type(uint256)"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2523,
|
||||
"name": "uint256",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "205:7:3",
|
||||
"typeDescriptions": {}
|
||||
}
|
||||
},
|
||||
"id": 2528,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "typeConversion",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "205:37:3",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
],
|
||||
"id": 2522,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"lValueRequested": false,
|
||||
"nodeType": "ElementaryTypeNameExpression",
|
||||
"src": "197:7:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_type$_t_uint160_$",
|
||||
"typeString": "type(uint160)"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2521,
|
||||
"name": "uint160",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "197:7:3",
|
||||
"typeDescriptions": {}
|
||||
}
|
||||
},
|
||||
"id": 2529,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "typeConversion",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "197:46:3",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint160",
|
||||
"typeString": "uint160"
|
||||
}
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_uint160",
|
||||
"typeString": "uint160"
|
||||
}
|
||||
],
|
||||
"id": 2520,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"lValueRequested": false,
|
||||
"nodeType": "ElementaryTypeNameExpression",
|
||||
"src": "189:7:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_type$_t_address_$",
|
||||
"typeString": "type(address)"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2519,
|
||||
"name": "address",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "189:7:3",
|
||||
"typeDescriptions": {}
|
||||
}
|
||||
},
|
||||
"id": 2530,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "typeConversion",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "189:55:3",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 2534,
|
||||
"nodeType": "VariableDeclaration",
|
||||
"src": "250:126:3",
|
||||
"nodes": [],
|
||||
"constant": true,
|
||||
"mutability": "constant",
|
||||
"name": "UINT256_MAX",
|
||||
"nameLocation": "276:11:3",
|
||||
"scope": 2544,
|
||||
"stateVariable": true,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2532,
|
||||
"name": "uint256",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "250:7:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"hexValue": "313135373932303839323337333136313935343233353730393835303038363837393037383533323639393834363635363430353634303339343537353834303037393133313239363339393335",
|
||||
"id": 2533,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "number",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "298:78:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1",
|
||||
"typeString": "int_const 1157...(70 digits omitted)...9935"
|
||||
},
|
||||
"value": "115792089237316195423570985008687907853269984665640564039457584007913129639935"
|
||||
},
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 2537,
|
||||
"nodeType": "VariableDeclaration",
|
||||
"src": "383:28:3",
|
||||
"nodes": [],
|
||||
"constant": false,
|
||||
"mutability": "mutable",
|
||||
"name": "stdstore",
|
||||
"nameLocation": "403:8:3",
|
||||
"scope": 2544,
|
||||
"stateVariable": true,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_StdStorage_$6388_storage",
|
||||
"typeString": "struct StdStorage"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2536,
|
||||
"nodeType": "UserDefinedTypeName",
|
||||
"pathNode": {
|
||||
"id": 2535,
|
||||
"name": "StdStorage",
|
||||
"nameLocations": [
|
||||
"383:10:3"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 6388,
|
||||
"src": "383:10:3"
|
||||
},
|
||||
"referencedDeclaration": 6388,
|
||||
"src": "383:10:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_StdStorage_$6388_storage_ptr",
|
||||
"typeString": "struct StdStorage"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 2543,
|
||||
"nodeType": "VariableDeclaration",
|
||||
"src": "417:40:3",
|
||||
"nodes": [],
|
||||
"constant": true,
|
||||
"mutability": "constant",
|
||||
"name": "vm",
|
||||
"nameLocation": "438:2:3",
|
||||
"scope": 2544,
|
||||
"stateVariable": true,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_contract$_Vm_$9256",
|
||||
"typeString": "contract Vm"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 2539,
|
||||
"nodeType": "UserDefinedTypeName",
|
||||
"pathNode": {
|
||||
"id": 2538,
|
||||
"name": "Vm",
|
||||
"nameLocations": [
|
||||
"417:2:3"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 9256,
|
||||
"src": "417:2:3"
|
||||
},
|
||||
"referencedDeclaration": 9256,
|
||||
"src": "417:2:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_contract$_Vm_$9256",
|
||||
"typeString": "contract Vm"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"arguments": [
|
||||
{
|
||||
"id": 2541,
|
||||
"name": "VM_ADDRESS",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 2531,
|
||||
"src": "446:10:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
],
|
||||
"id": 2540,
|
||||
"name": "Vm",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 9256,
|
||||
"src": "443:2:3",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_type$_t_contract$_Vm_$9256_$",
|
||||
"typeString": "type(contract Vm)"
|
||||
}
|
||||
},
|
||||
"id": 2542,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "typeConversion",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "443:14:3",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_contract$_Vm_$9256",
|
||||
"typeString": "contract Vm"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"abstract": true,
|
||||
"baseContracts": [],
|
||||
"canonicalName": "CommonBase",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "contract",
|
||||
"fullyImplemented": true,
|
||||
"linearizedBaseContracts": [
|
||||
2544
|
||||
],
|
||||
"name": "CommonBase",
|
||||
"nameLocation": "133:10:3",
|
||||
"scope": 2545,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 3
|
||||
}
|
||||
|
|
@ -1,213 +0,0 @@
|
|||
{
|
||||
"abi": [],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "lib/forge-std/src/Components.sol",
|
||||
"id": 2557,
|
||||
"exportedSymbols": {
|
||||
"DSTest": [
|
||||
2512
|
||||
],
|
||||
"StdAssertions": [
|
||||
3370
|
||||
],
|
||||
"StdCheats": [
|
||||
5483
|
||||
],
|
||||
"StdCheatsSafe": [
|
||||
5094
|
||||
],
|
||||
"StdStorage": [
|
||||
6388
|
||||
],
|
||||
"StdUtils": [
|
||||
8251
|
||||
],
|
||||
"Vm": [
|
||||
9256
|
||||
],
|
||||
"VmSafe": [
|
||||
8931
|
||||
],
|
||||
"console": [
|
||||
17320
|
||||
],
|
||||
"console2": [
|
||||
25385
|
||||
],
|
||||
"stdError": [
|
||||
5549
|
||||
],
|
||||
"stdJson": [
|
||||
6215
|
||||
],
|
||||
"stdMath": [
|
||||
6357
|
||||
],
|
||||
"stdStorage": [
|
||||
7822
|
||||
],
|
||||
"stdStorageSafe": [
|
||||
7281
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "32:282:4",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 2546,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "32:31:4",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
">=",
|
||||
"0.6",
|
||||
".2",
|
||||
"<",
|
||||
"0.9",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 2547,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "65:23:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/console.sol",
|
||||
"file": "./console.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 17321,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2548,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "89:24:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/console2.sol",
|
||||
"file": "./console2.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 25386,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2549,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "114:29:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdAssertions.sol",
|
||||
"file": "./StdAssertions.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 3371,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2550,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "144:25:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdCheats.sol",
|
||||
"file": "./StdCheats.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 5484,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2551,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "170:24:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdError.sol",
|
||||
"file": "./StdError.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 5550,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2552,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "195:23:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdJson.sol",
|
||||
"file": "./StdJson.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 6216,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2553,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "219:23:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdMath.sol",
|
||||
"file": "./StdMath.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 6358,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2554,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "243:26:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdStorage.sol",
|
||||
"file": "./StdStorage.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 7823,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2555,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "270:24:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/StdUtils.sol",
|
||||
"file": "./StdUtils.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 8252,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 2556,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "295:18:4",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/Vm.sol",
|
||||
"file": "./Vm.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 2557,
|
||||
"sourceUnit": 9257,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 4
|
||||
}
|
||||
|
|
@ -1,314 +0,0 @@
|
|||
{
|
||||
"abi": [],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"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.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@openzeppelin/contracts/utils/Context.sol\":\"Context\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"node_modules/@openzeppelin/contracts/utils/Context.sol": "Context"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"node_modules/@openzeppelin/contracts/utils/Context.sol": {
|
||||
"keccak256": "0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7",
|
||||
"urls": [
|
||||
"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92",
|
||||
"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "node_modules/@openzeppelin/contracts/utils/Context.sol",
|
||||
"id": 27280,
|
||||
"exportedSymbols": {
|
||||
"Context": [
|
||||
27279
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "86:758:24",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27259,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "86:23:24",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
"^",
|
||||
"0.8",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 27279,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "608:235:24",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27269,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "640:96:24",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27268,
|
||||
"nodeType": "Block",
|
||||
"src": "702:34:24",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"expression": {
|
||||
"id": 27265,
|
||||
"name": "msg",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": -15,
|
||||
"src": "719:3:24",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_magic_message",
|
||||
"typeString": "msg"
|
||||
}
|
||||
},
|
||||
"id": 27266,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"memberLocation": "723:6:24",
|
||||
"memberName": "sender",
|
||||
"nodeType": "MemberAccess",
|
||||
"src": "719:10:24",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
},
|
||||
"functionReturnParameters": 27264,
|
||||
"id": 27267,
|
||||
"nodeType": "Return",
|
||||
"src": "712:17:24"
|
||||
}
|
||||
]
|
||||
},
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "_msgSender",
|
||||
"nameLocation": "649:10:24",
|
||||
"parameters": {
|
||||
"id": 27261,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [],
|
||||
"src": "659:2:24"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27264,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27263,
|
||||
"mutability": "mutable",
|
||||
"name": "",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27269,
|
||||
"src": "693:7:24",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27262,
|
||||
"name": "address",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "693:7:24",
|
||||
"stateMutability": "nonpayable",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "692:9:24"
|
||||
},
|
||||
"scope": 27279,
|
||||
"stateMutability": "view",
|
||||
"virtual": true,
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 27278,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "742:99:24",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27277,
|
||||
"nodeType": "Block",
|
||||
"src": "809:32:24",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"expression": {
|
||||
"id": 27274,
|
||||
"name": "msg",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": -15,
|
||||
"src": "826:3:24",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_magic_message",
|
||||
"typeString": "msg"
|
||||
}
|
||||
},
|
||||
"id": 27275,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"memberLocation": "830:4:24",
|
||||
"memberName": "data",
|
||||
"nodeType": "MemberAccess",
|
||||
"src": "826:8:24",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes_calldata_ptr",
|
||||
"typeString": "bytes calldata"
|
||||
}
|
||||
},
|
||||
"functionReturnParameters": 27273,
|
||||
"id": 27276,
|
||||
"nodeType": "Return",
|
||||
"src": "819:15:24"
|
||||
}
|
||||
]
|
||||
},
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "_msgData",
|
||||
"nameLocation": "751:8:24",
|
||||
"parameters": {
|
||||
"id": 27270,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [],
|
||||
"src": "759:2:24"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27273,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27272,
|
||||
"mutability": "mutable",
|
||||
"name": "",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27278,
|
||||
"src": "793:14:24",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "calldata",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes_calldata_ptr",
|
||||
"typeString": "bytes"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27271,
|
||||
"name": "bytes",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "793:5:24",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes_storage_ptr",
|
||||
"typeString": "bytes"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "792:16:24"
|
||||
},
|
||||
"scope": 27279,
|
||||
"stateMutability": "view",
|
||||
"virtual": true,
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"abstract": true,
|
||||
"baseContracts": [],
|
||||
"canonicalName": "Context",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "contract",
|
||||
"documentation": {
|
||||
"id": 27260,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "111:496:24",
|
||||
"text": " @dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned).\n This contract is only required for intermediate, library-like contracts."
|
||||
},
|
||||
"fullyImplemented": true,
|
||||
"linearizedBaseContracts": [
|
||||
27279
|
||||
],
|
||||
"name": "Context",
|
||||
"nameLocation": "626:7:24",
|
||||
"scope": 27280,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 24
|
||||
}
|
||||
|
|
@ -1,924 +0,0 @@
|
|||
{
|
||||
"abi": [],
|
||||
"bytecode": {
|
||||
"object": "0x60808060405234601757603a9081601d823930815050f35b600080fdfe600080fdfea2646970667358221220bf0ddfe91e11913198c1ecf5498e1f03f0e472589cb8e27394f39a0a55b3e22a64736f6c63430008110033",
|
||||
"sourceMap": "424:971:25:-:0;;;;;;;;;;;;;;;;;;;;;",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x600080fdfea2646970667358221220bf0ddfe91e11913198c1ecf5498e1f03f0e472589cb8e27394f39a0a55b3e22a64736f6c63430008110033",
|
||||
"sourceMap": "424:971:25:-:0;;",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"Matt Condon (@shrugs)\",\"details\":\"Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number of elements in a mapping, issuing ERC721 ids, or counting request ids. Include with `using Counters for Counters.Counter;`\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Counters\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@openzeppelin/contracts/utils/Counters.sol\":\"Counters\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/utils/Counters.sol\":{\"keccak256\":\"0xf0018c2440fbe238dd3a8732fa8e17a0f9dce84d31451dc8a32f6d62b349c9f1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e1c62884d55b70f3ae5432b44bb3166ad71ae3acd19c57ab6ddc3c87c325ee\",\"dweb:/ipfs/QmezuXg5GK5oeA4F91EZhozBFekhq5TD966bHPH18cCqhu\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"node_modules/@openzeppelin/contracts/utils/Counters.sol": "Counters"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"node_modules/@openzeppelin/contracts/utils/Counters.sol": {
|
||||
"keccak256": "0xf0018c2440fbe238dd3a8732fa8e17a0f9dce84d31451dc8a32f6d62b349c9f1",
|
||||
"urls": [
|
||||
"bzz-raw://59e1c62884d55b70f3ae5432b44bb3166ad71ae3acd19c57ab6ddc3c87c325ee",
|
||||
"dweb:/ipfs/QmezuXg5GK5oeA4F91EZhozBFekhq5TD966bHPH18cCqhu"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "node_modules/@openzeppelin/contracts/utils/Counters.sol",
|
||||
"id": 27354,
|
||||
"exportedSymbols": {
|
||||
"Counters": [
|
||||
27353
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "87:1309:25",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27281,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "87:23:25",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
"^",
|
||||
"0.8",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 27353,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "424:971:25",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27285,
|
||||
"nodeType": "StructDefinition",
|
||||
"src": "447:374:25",
|
||||
"nodes": [],
|
||||
"canonicalName": "Counters.Counter",
|
||||
"members": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27284,
|
||||
"mutability": "mutable",
|
||||
"name": "_value",
|
||||
"nameLocation": "794:6:25",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27285,
|
||||
"src": "786:14:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27283,
|
||||
"name": "uint256",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "786:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"name": "Counter",
|
||||
"nameLocation": "454:7:25",
|
||||
"scope": 27353,
|
||||
"visibility": "public"
|
||||
},
|
||||
{
|
||||
"id": 27297,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "827:112:25",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27296,
|
||||
"nodeType": "Block",
|
||||
"src": "901:38:25",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"expression": {
|
||||
"id": 27293,
|
||||
"name": "counter",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27288,
|
||||
"src": "918:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter storage pointer"
|
||||
}
|
||||
},
|
||||
"id": 27294,
|
||||
"isConstant": false,
|
||||
"isLValue": true,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"memberLocation": "926:6:25",
|
||||
"memberName": "_value",
|
||||
"nodeType": "MemberAccess",
|
||||
"referencedDeclaration": 27284,
|
||||
"src": "918:14:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"functionReturnParameters": 27292,
|
||||
"id": 27295,
|
||||
"nodeType": "Return",
|
||||
"src": "911:21:25"
|
||||
}
|
||||
]
|
||||
},
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "current",
|
||||
"nameLocation": "836:7:25",
|
||||
"parameters": {
|
||||
"id": 27289,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27288,
|
||||
"mutability": "mutable",
|
||||
"name": "counter",
|
||||
"nameLocation": "860:7:25",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27297,
|
||||
"src": "844:23:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "storage",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27287,
|
||||
"nodeType": "UserDefinedTypeName",
|
||||
"pathNode": {
|
||||
"id": 27286,
|
||||
"name": "Counter",
|
||||
"nameLocations": [
|
||||
"844:7:25"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "844:7:25"
|
||||
},
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "844:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "843:25:25"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27292,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27291,
|
||||
"mutability": "mutable",
|
||||
"name": "",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27297,
|
||||
"src": "892:7:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27290,
|
||||
"name": "uint256",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "892:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "891:9:25"
|
||||
},
|
||||
"scope": 27353,
|
||||
"stateMutability": "view",
|
||||
"virtual": false,
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 27311,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "945:123:25",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27310,
|
||||
"nodeType": "Block",
|
||||
"src": "998:70:25",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"id": 27309,
|
||||
"nodeType": "UncheckedBlock",
|
||||
"src": "1008:54:25",
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"id": 27307,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"leftHandSide": {
|
||||
"expression": {
|
||||
"id": 27303,
|
||||
"name": "counter",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27300,
|
||||
"src": "1032:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter storage pointer"
|
||||
}
|
||||
},
|
||||
"id": 27305,
|
||||
"isConstant": false,
|
||||
"isLValue": true,
|
||||
"isPure": false,
|
||||
"lValueRequested": true,
|
||||
"memberLocation": "1040:6:25",
|
||||
"memberName": "_value",
|
||||
"nodeType": "MemberAccess",
|
||||
"referencedDeclaration": 27284,
|
||||
"src": "1032:14:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"nodeType": "Assignment",
|
||||
"operator": "+=",
|
||||
"rightHandSide": {
|
||||
"hexValue": "31",
|
||||
"id": 27306,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "number",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "1050:1:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_rational_1_by_1",
|
||||
"typeString": "int_const 1"
|
||||
},
|
||||
"value": "1"
|
||||
},
|
||||
"src": "1032:19:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"id": 27308,
|
||||
"nodeType": "ExpressionStatement",
|
||||
"src": "1032:19:25"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "increment",
|
||||
"nameLocation": "954:9:25",
|
||||
"parameters": {
|
||||
"id": 27301,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27300,
|
||||
"mutability": "mutable",
|
||||
"name": "counter",
|
||||
"nameLocation": "980:7:25",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27311,
|
||||
"src": "964:23:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "storage",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27299,
|
||||
"nodeType": "UserDefinedTypeName",
|
||||
"pathNode": {
|
||||
"id": 27298,
|
||||
"name": "Counter",
|
||||
"nameLocations": [
|
||||
"964:7:25"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "964:7:25"
|
||||
},
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "964:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "963:25:25"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27302,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [],
|
||||
"src": "998:0:25"
|
||||
},
|
||||
"scope": 27353,
|
||||
"stateMutability": "nonpayable",
|
||||
"virtual": false,
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 27339,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "1074:229:25",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27338,
|
||||
"nodeType": "Block",
|
||||
"src": "1127:176:25",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"assignments": [
|
||||
27318
|
||||
],
|
||||
"declarations": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27318,
|
||||
"mutability": "mutable",
|
||||
"name": "value",
|
||||
"nameLocation": "1145:5:25",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27338,
|
||||
"src": "1137:13:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27317,
|
||||
"name": "uint256",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "1137:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"id": 27321,
|
||||
"initialValue": {
|
||||
"expression": {
|
||||
"id": 27319,
|
||||
"name": "counter",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27314,
|
||||
"src": "1153:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter storage pointer"
|
||||
}
|
||||
},
|
||||
"id": 27320,
|
||||
"isConstant": false,
|
||||
"isLValue": true,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"memberLocation": "1161:6:25",
|
||||
"memberName": "_value",
|
||||
"nodeType": "MemberAccess",
|
||||
"referencedDeclaration": 27284,
|
||||
"src": "1153:14:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"nodeType": "VariableDeclarationStatement",
|
||||
"src": "1137:30:25"
|
||||
},
|
||||
{
|
||||
"expression": {
|
||||
"arguments": [
|
||||
{
|
||||
"commonType": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"id": 27325,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"leftExpression": {
|
||||
"id": 27323,
|
||||
"name": "value",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27318,
|
||||
"src": "1185:5:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"nodeType": "BinaryOperation",
|
||||
"operator": ">",
|
||||
"rightExpression": {
|
||||
"hexValue": "30",
|
||||
"id": 27324,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "number",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "1193:1:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_rational_0_by_1",
|
||||
"typeString": "int_const 0"
|
||||
},
|
||||
"value": "0"
|
||||
},
|
||||
"src": "1185:9:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
}
|
||||
},
|
||||
{
|
||||
"hexValue": "436f756e7465723a2064656372656d656e74206f766572666c6f77",
|
||||
"id": 27326,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "string",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "1196:29:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_stringliteral_1dfd0d5389474d871b8e8929aab9d4def041f55f90f625754fb5f9a9ba08af6f",
|
||||
"typeString": "literal_string \"Counter: decrement overflow\""
|
||||
},
|
||||
"value": "Counter: decrement overflow"
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
},
|
||||
{
|
||||
"typeIdentifier": "t_stringliteral_1dfd0d5389474d871b8e8929aab9d4def041f55f90f625754fb5f9a9ba08af6f",
|
||||
"typeString": "literal_string \"Counter: decrement overflow\""
|
||||
}
|
||||
],
|
||||
"id": 27322,
|
||||
"name": "require",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [
|
||||
-18,
|
||||
-18
|
||||
],
|
||||
"referencedDeclaration": -18,
|
||||
"src": "1177:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
|
||||
"typeString": "function (bool,string memory) pure"
|
||||
}
|
||||
},
|
||||
"id": 27327,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"kind": "functionCall",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "1177:49:25",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_tuple$__$",
|
||||
"typeString": "tuple()"
|
||||
}
|
||||
},
|
||||
"id": 27328,
|
||||
"nodeType": "ExpressionStatement",
|
||||
"src": "1177:49:25"
|
||||
},
|
||||
{
|
||||
"id": 27337,
|
||||
"nodeType": "UncheckedBlock",
|
||||
"src": "1236:61:25",
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"id": 27335,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"leftHandSide": {
|
||||
"expression": {
|
||||
"id": 27329,
|
||||
"name": "counter",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27314,
|
||||
"src": "1260:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter storage pointer"
|
||||
}
|
||||
},
|
||||
"id": 27331,
|
||||
"isConstant": false,
|
||||
"isLValue": true,
|
||||
"isPure": false,
|
||||
"lValueRequested": true,
|
||||
"memberLocation": "1268:6:25",
|
||||
"memberName": "_value",
|
||||
"nodeType": "MemberAccess",
|
||||
"referencedDeclaration": 27284,
|
||||
"src": "1260:14:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"nodeType": "Assignment",
|
||||
"operator": "=",
|
||||
"rightHandSide": {
|
||||
"commonType": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"id": 27334,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"leftExpression": {
|
||||
"id": 27332,
|
||||
"name": "value",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27318,
|
||||
"src": "1277:5:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"nodeType": "BinaryOperation",
|
||||
"operator": "-",
|
||||
"rightExpression": {
|
||||
"hexValue": "31",
|
||||
"id": 27333,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "number",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "1285:1:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_rational_1_by_1",
|
||||
"typeString": "int_const 1"
|
||||
},
|
||||
"value": "1"
|
||||
},
|
||||
"src": "1277:9:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"src": "1260:26:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"id": 27336,
|
||||
"nodeType": "ExpressionStatement",
|
||||
"src": "1260:26:25"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "decrement",
|
||||
"nameLocation": "1083:9:25",
|
||||
"parameters": {
|
||||
"id": 27315,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27314,
|
||||
"mutability": "mutable",
|
||||
"name": "counter",
|
||||
"nameLocation": "1109:7:25",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27339,
|
||||
"src": "1093:23:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "storage",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27313,
|
||||
"nodeType": "UserDefinedTypeName",
|
||||
"pathNode": {
|
||||
"id": 27312,
|
||||
"name": "Counter",
|
||||
"nameLocations": [
|
||||
"1093:7:25"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "1093:7:25"
|
||||
},
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "1093:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "1092:25:25"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27316,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [],
|
||||
"src": "1127:0:25"
|
||||
},
|
||||
"scope": 27353,
|
||||
"stateMutability": "nonpayable",
|
||||
"virtual": false,
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"id": 27352,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "1309:84:25",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27351,
|
||||
"nodeType": "Block",
|
||||
"src": "1358:35:25",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"id": 27349,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"leftHandSide": {
|
||||
"expression": {
|
||||
"id": 27345,
|
||||
"name": "counter",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27342,
|
||||
"src": "1368:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter storage pointer"
|
||||
}
|
||||
},
|
||||
"id": 27347,
|
||||
"isConstant": false,
|
||||
"isLValue": true,
|
||||
"isPure": false,
|
||||
"lValueRequested": true,
|
||||
"memberLocation": "1376:6:25",
|
||||
"memberName": "_value",
|
||||
"nodeType": "MemberAccess",
|
||||
"referencedDeclaration": 27284,
|
||||
"src": "1368:14:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"nodeType": "Assignment",
|
||||
"operator": "=",
|
||||
"rightHandSide": {
|
||||
"hexValue": "30",
|
||||
"id": 27348,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "number",
|
||||
"lValueRequested": false,
|
||||
"nodeType": "Literal",
|
||||
"src": "1385:1:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_rational_0_by_1",
|
||||
"typeString": "int_const 0"
|
||||
},
|
||||
"value": "0"
|
||||
},
|
||||
"src": "1368:18:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"id": 27350,
|
||||
"nodeType": "ExpressionStatement",
|
||||
"src": "1368:18:25"
|
||||
}
|
||||
]
|
||||
},
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "reset",
|
||||
"nameLocation": "1318:5:25",
|
||||
"parameters": {
|
||||
"id": 27343,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27342,
|
||||
"mutability": "mutable",
|
||||
"name": "counter",
|
||||
"nameLocation": "1340:7:25",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27352,
|
||||
"src": "1324:23:25",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "storage",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27341,
|
||||
"nodeType": "UserDefinedTypeName",
|
||||
"pathNode": {
|
||||
"id": 27340,
|
||||
"name": "Counter",
|
||||
"nameLocations": [
|
||||
"1324:7:25"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "1324:7:25"
|
||||
},
|
||||
"referencedDeclaration": 27285,
|
||||
"src": "1324:7:25",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_struct$_Counter_$27285_storage_ptr",
|
||||
"typeString": "struct Counters.Counter"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "1323:25:25"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27344,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [],
|
||||
"src": "1358:0:25"
|
||||
},
|
||||
"scope": 27353,
|
||||
"stateMutability": "nonpayable",
|
||||
"virtual": false,
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"abstract": false,
|
||||
"baseContracts": [],
|
||||
"canonicalName": "Counters",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "library",
|
||||
"documentation": {
|
||||
"id": 27282,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "112:311:25",
|
||||
"text": " @title Counters\n @author Matt Condon (@shrugs)\n @dev Provides counters that can only be incremented, decremented or reset. This can be used e.g. to track the number\n of elements in a mapping, issuing ERC721 ids, or counting request ids.\n Include with `using Counters for Counters.Counter;`"
|
||||
},
|
||||
"fullyImplemented": true,
|
||||
"linearizedBaseContracts": [
|
||||
27353
|
||||
],
|
||||
"name": "Counters",
|
||||
"nameLocation": "432:8:25",
|
||||
"scope": 27354,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 25
|
||||
}
|
||||
|
|
@ -1,415 +0,0 @@
|
|||
{
|
||||
"abi": [
|
||||
{
|
||||
"inputs": [
|
||||
{
|
||||
"internalType": "bytes4",
|
||||
"name": "interfaceId",
|
||||
"type": "bytes4"
|
||||
}
|
||||
],
|
||||
"name": "supportsInterface",
|
||||
"outputs": [
|
||||
{
|
||||
"internalType": "bool",
|
||||
"name": "",
|
||||
"type": "bool"
|
||||
}
|
||||
],
|
||||
"stateMutability": "view",
|
||||
"type": "function"
|
||||
}
|
||||
],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {
|
||||
"supportsInterface(bytes4)": "01ffc9a7"
|
||||
},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the {IERC165} interface. Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check for the additional interface id that will be supported. For example: ```solidity function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) { return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId); } ``` Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol\":\"ERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [
|
||||
{
|
||||
"inputs": [
|
||||
{
|
||||
"internalType": "bytes4",
|
||||
"name": "interfaceId",
|
||||
"type": "bytes4"
|
||||
}
|
||||
],
|
||||
"stateMutability": "view",
|
||||
"type": "function",
|
||||
"name": "supportsInterface",
|
||||
"outputs": [
|
||||
{
|
||||
"internalType": "bool",
|
||||
"name": "",
|
||||
"type": "bool"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {
|
||||
"supportsInterface(bytes4)": {
|
||||
"details": "See {IERC165-supportsInterface}."
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol": "ERC165"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol": {
|
||||
"keccak256": "0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b",
|
||||
"urls": [
|
||||
"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d",
|
||||
"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol": {
|
||||
"keccak256": "0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1",
|
||||
"urls": [
|
||||
"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f",
|
||||
"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "node_modules/@openzeppelin/contracts/utils/introspection/ERC165.sol",
|
||||
"id": 27553,
|
||||
"exportedSymbols": {
|
||||
"ERC165": [
|
||||
27552
|
||||
],
|
||||
"IERC165": [
|
||||
27564
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "99:888:27",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27530,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "99:23:27",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
"^",
|
||||
"0.8",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 27531,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "124:23:27",
|
||||
"nodes": [],
|
||||
"absolutePath": "node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol",
|
||||
"file": "./IERC165.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 27553,
|
||||
"sourceUnit": 27565,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 27552,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "726:260:27",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27551,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "829:155:27",
|
||||
"nodes": [],
|
||||
"body": {
|
||||
"id": 27550,
|
||||
"nodeType": "Block",
|
||||
"src": "920:64:27",
|
||||
"nodes": [],
|
||||
"statements": [
|
||||
{
|
||||
"expression": {
|
||||
"commonType": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
},
|
||||
"id": 27548,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": false,
|
||||
"lValueRequested": false,
|
||||
"leftExpression": {
|
||||
"id": 27543,
|
||||
"name": "interfaceId",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27537,
|
||||
"src": "937:11:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
}
|
||||
},
|
||||
"nodeType": "BinaryOperation",
|
||||
"operator": "==",
|
||||
"rightExpression": {
|
||||
"expression": {
|
||||
"arguments": [
|
||||
{
|
||||
"id": 27545,
|
||||
"name": "IERC165",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 27564,
|
||||
"src": "957:7:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_type$_t_contract$_IERC165_$27564_$",
|
||||
"typeString": "type(contract IERC165)"
|
||||
}
|
||||
}
|
||||
],
|
||||
"expression": {
|
||||
"argumentTypes": [
|
||||
{
|
||||
"typeIdentifier": "t_type$_t_contract$_IERC165_$27564_$",
|
||||
"typeString": "type(contract IERC165)"
|
||||
}
|
||||
],
|
||||
"id": 27544,
|
||||
"name": "type",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": -27,
|
||||
"src": "952:4:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_function_metatype_pure$__$returns$__$",
|
||||
"typeString": "function () pure"
|
||||
}
|
||||
},
|
||||
"id": 27546,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"kind": "functionCall",
|
||||
"lValueRequested": false,
|
||||
"nameLocations": [],
|
||||
"names": [],
|
||||
"nodeType": "FunctionCall",
|
||||
"src": "952:13:27",
|
||||
"tryCall": false,
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_magic_meta_type_t_contract$_IERC165_$27564",
|
||||
"typeString": "type(contract IERC165)"
|
||||
}
|
||||
},
|
||||
"id": 27547,
|
||||
"isConstant": false,
|
||||
"isLValue": false,
|
||||
"isPure": true,
|
||||
"lValueRequested": false,
|
||||
"memberLocation": "966:11:27",
|
||||
"memberName": "interfaceId",
|
||||
"nodeType": "MemberAccess",
|
||||
"src": "952:25:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
}
|
||||
},
|
||||
"src": "937:40:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
}
|
||||
},
|
||||
"functionReturnParameters": 27542,
|
||||
"id": 27549,
|
||||
"nodeType": "Return",
|
||||
"src": "930:47:27"
|
||||
}
|
||||
]
|
||||
},
|
||||
"baseFunctions": [
|
||||
27563
|
||||
],
|
||||
"documentation": {
|
||||
"id": 27535,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "768:56:27",
|
||||
"text": " @dev See {IERC165-supportsInterface}."
|
||||
},
|
||||
"functionSelector": "01ffc9a7",
|
||||
"implemented": true,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "supportsInterface",
|
||||
"nameLocation": "838:17:27",
|
||||
"overrides": {
|
||||
"id": 27539,
|
||||
"nodeType": "OverrideSpecifier",
|
||||
"overrides": [],
|
||||
"src": "896:8:27"
|
||||
},
|
||||
"parameters": {
|
||||
"id": 27538,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27537,
|
||||
"mutability": "mutable",
|
||||
"name": "interfaceId",
|
||||
"nameLocation": "863:11:27",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27551,
|
||||
"src": "856:18:27",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27536,
|
||||
"name": "bytes4",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "856:6:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "855:20:27"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27542,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27541,
|
||||
"mutability": "mutable",
|
||||
"name": "",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27551,
|
||||
"src": "914:4:27",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27540,
|
||||
"name": "bool",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "914:4:27",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "913:6:27"
|
||||
},
|
||||
"scope": 27552,
|
||||
"stateMutability": "view",
|
||||
"virtual": true,
|
||||
"visibility": "public"
|
||||
}
|
||||
],
|
||||
"abstract": true,
|
||||
"baseContracts": [
|
||||
{
|
||||
"baseName": {
|
||||
"id": 27533,
|
||||
"name": "IERC165",
|
||||
"nameLocations": [
|
||||
"754:7:27"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 27564,
|
||||
"src": "754:7:27"
|
||||
},
|
||||
"id": 27534,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "754:7:27"
|
||||
}
|
||||
],
|
||||
"canonicalName": "ERC165",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "contract",
|
||||
"documentation": {
|
||||
"id": 27532,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "149:576:27",
|
||||
"text": " @dev Implementation of the {IERC165} interface.\n Contracts that want to implement ERC165 should inherit from this contract and override {supportsInterface} to check\n for the additional interface id that will be supported. For example:\n ```solidity\n function supportsInterface(bytes4 interfaceId) public view virtual override returns (bool) {\n return interfaceId == type(MyInterface).interfaceId || super.supportsInterface(interfaceId);\n }\n ```\n Alternatively, {ERC165Storage} provides an easier to use but more expensive implementation."
|
||||
},
|
||||
"fullyImplemented": true,
|
||||
"linearizedBaseContracts": [
|
||||
27552,
|
||||
27564
|
||||
],
|
||||
"name": "ERC165",
|
||||
"nameLocation": "744:6:27",
|
||||
"scope": 27553,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 27
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,257 +0,0 @@
|
|||
{
|
||||
"abi": [
|
||||
{
|
||||
"inputs": [
|
||||
{
|
||||
"internalType": "bytes4",
|
||||
"name": "interfaceId",
|
||||
"type": "bytes4"
|
||||
}
|
||||
],
|
||||
"name": "supportsInterface",
|
||||
"outputs": [
|
||||
{
|
||||
"internalType": "bool",
|
||||
"name": "",
|
||||
"type": "bool"
|
||||
}
|
||||
],
|
||||
"stateMutability": "view",
|
||||
"type": "function"
|
||||
}
|
||||
],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {
|
||||
"supportsInterface(bytes4)": "01ffc9a7"
|
||||
},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"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}.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"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.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":\"IERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [
|
||||
{
|
||||
"inputs": [
|
||||
{
|
||||
"internalType": "bytes4",
|
||||
"name": "interfaceId",
|
||||
"type": "bytes4"
|
||||
}
|
||||
],
|
||||
"stateMutability": "view",
|
||||
"type": "function",
|
||||
"name": "supportsInterface",
|
||||
"outputs": [
|
||||
{
|
||||
"internalType": "bool",
|
||||
"name": "",
|
||||
"type": "bool"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {
|
||||
"supportsInterface(bytes4)": {
|
||||
"details": "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."
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol": "IERC165"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol": {
|
||||
"keccak256": "0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1",
|
||||
"urls": [
|
||||
"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f",
|
||||
"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "node_modules/@openzeppelin/contracts/utils/introspection/IERC165.sol",
|
||||
"id": 27565,
|
||||
"exportedSymbols": {
|
||||
"IERC165": [
|
||||
27564
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "100:753:28",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27554,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "100:23:28",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
"^",
|
||||
"0.8",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 27564,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "405:447:28",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 27563,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "774:76:28",
|
||||
"nodes": [],
|
||||
"documentation": {
|
||||
"id": 27556,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "429:340:28",
|
||||
"text": " @dev Returns true if this contract implements the interface defined by\n `interfaceId`. See the corresponding\n https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n to learn more about how these ids are created.\n This function call must use less than 30 000 gas."
|
||||
},
|
||||
"functionSelector": "01ffc9a7",
|
||||
"implemented": false,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "supportsInterface",
|
||||
"nameLocation": "783:17:28",
|
||||
"parameters": {
|
||||
"id": 27559,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27558,
|
||||
"mutability": "mutable",
|
||||
"name": "interfaceId",
|
||||
"nameLocation": "808:11:28",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27563,
|
||||
"src": "801:18:28",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27557,
|
||||
"name": "bytes4",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "801:6:28",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "800:20:28"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 27562,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 27561,
|
||||
"mutability": "mutable",
|
||||
"name": "",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 27563,
|
||||
"src": "844:4:28",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 27560,
|
||||
"name": "bool",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "844:4:28",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bool",
|
||||
"typeString": "bool"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "843:6:28"
|
||||
},
|
||||
"scope": 27564,
|
||||
"stateMutability": "view",
|
||||
"virtual": false,
|
||||
"visibility": "external"
|
||||
}
|
||||
],
|
||||
"abstract": false,
|
||||
"baseContracts": [],
|
||||
"canonicalName": "IERC165",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "interface",
|
||||
"documentation": {
|
||||
"id": 27555,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "125:279:28",
|
||||
"text": " @dev Interface of the ERC165 standard, as defined in the\n https://eips.ethereum.org/EIPS/eip-165[EIP].\n Implementers can declare support of contract interfaces, which can then be\n queried by others ({ERC165Checker}).\n For an implementation, see {ERC165}."
|
||||
},
|
||||
"fullyImplemented": false,
|
||||
"linearizedBaseContracts": [
|
||||
27564
|
||||
],
|
||||
"name": "IERC165",
|
||||
"nameLocation": "415:7:28",
|
||||
"scope": 27565,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 28
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -1,370 +0,0 @@
|
|||
{
|
||||
"abi": [
|
||||
{
|
||||
"inputs": [
|
||||
{
|
||||
"internalType": "address",
|
||||
"name": "operator",
|
||||
"type": "address"
|
||||
},
|
||||
{
|
||||
"internalType": "address",
|
||||
"name": "from",
|
||||
"type": "address"
|
||||
},
|
||||
{
|
||||
"internalType": "uint256",
|
||||
"name": "tokenId",
|
||||
"type": "uint256"
|
||||
},
|
||||
{
|
||||
"internalType": "bytes",
|
||||
"name": "data",
|
||||
"type": "bytes"
|
||||
}
|
||||
],
|
||||
"name": "onERC721Received",
|
||||
"outputs": [
|
||||
{
|
||||
"internalType": "bytes4",
|
||||
"name": "",
|
||||
"type": "bytes4"
|
||||
}
|
||||
],
|
||||
"stateMutability": "nonpayable",
|
||||
"type": "function"
|
||||
}
|
||||
],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {
|
||||
"onERC721Received(address,address,uint256,bytes)": "150b7a02"
|
||||
},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onERC721Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface for any contract that wants to support safeTransfers from ERC721 asset contracts.\",\"kind\":\"dev\",\"methods\":{\"onERC721Received(address,address,uint256,bytes)\":{\"details\":\"Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom} by `operator` from `from`, this function is called. It must return its Solidity selector to confirm the token transfer. If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted. The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`.\"}},\"title\":\"ERC721 token receiver interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":\"IERC721Receiver\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [
|
||||
{
|
||||
"inputs": [
|
||||
{
|
||||
"internalType": "address",
|
||||
"name": "operator",
|
||||
"type": "address"
|
||||
},
|
||||
{
|
||||
"internalType": "address",
|
||||
"name": "from",
|
||||
"type": "address"
|
||||
},
|
||||
{
|
||||
"internalType": "uint256",
|
||||
"name": "tokenId",
|
||||
"type": "uint256"
|
||||
},
|
||||
{
|
||||
"internalType": "bytes",
|
||||
"name": "data",
|
||||
"type": "bytes"
|
||||
}
|
||||
],
|
||||
"stateMutability": "nonpayable",
|
||||
"type": "function",
|
||||
"name": "onERC721Received",
|
||||
"outputs": [
|
||||
{
|
||||
"internalType": "bytes4",
|
||||
"name": "",
|
||||
"type": "bytes4"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {
|
||||
"onERC721Received(address,address,uint256,bytes)": {
|
||||
"details": "Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom} by `operator` from `from`, this function is called. It must return its Solidity selector to confirm the token transfer. If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted. The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`."
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": "IERC721Receiver"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol": {
|
||||
"keccak256": "0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da",
|
||||
"urls": [
|
||||
"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708",
|
||||
"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol",
|
||||
"id": 26854,
|
||||
"exportedSymbols": {
|
||||
"IERC721Receiver": [
|
||||
26853
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "116:871:20",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 26837,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "116:23:20",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
"^",
|
||||
"0.8",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 26853,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "294:692:20",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 26852,
|
||||
"nodeType": "FunctionDefinition",
|
||||
"src": "824:160:20",
|
||||
"nodes": [],
|
||||
"documentation": {
|
||||
"id": 26839,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "326:493:20",
|
||||
"text": " @dev Whenever an {IERC721} `tokenId` token is transferred to this contract via {IERC721-safeTransferFrom}\n by `operator` from `from`, this function is called.\n It must return its Solidity selector to confirm the token transfer.\n If any other value is returned or the interface is not implemented by the recipient, the transfer will be reverted.\n The selector can be obtained in Solidity with `IERC721Receiver.onERC721Received.selector`."
|
||||
},
|
||||
"functionSelector": "150b7a02",
|
||||
"implemented": false,
|
||||
"kind": "function",
|
||||
"modifiers": [],
|
||||
"name": "onERC721Received",
|
||||
"nameLocation": "833:16:20",
|
||||
"parameters": {
|
||||
"id": 26848,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 26841,
|
||||
"mutability": "mutable",
|
||||
"name": "operator",
|
||||
"nameLocation": "867:8:20",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 26852,
|
||||
"src": "859:16:20",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 26840,
|
||||
"name": "address",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "859:7:20",
|
||||
"stateMutability": "nonpayable",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"constant": false,
|
||||
"id": 26843,
|
||||
"mutability": "mutable",
|
||||
"name": "from",
|
||||
"nameLocation": "893:4:20",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 26852,
|
||||
"src": "885:12:20",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 26842,
|
||||
"name": "address",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "885:7:20",
|
||||
"stateMutability": "nonpayable",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_address",
|
||||
"typeString": "address"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"constant": false,
|
||||
"id": 26845,
|
||||
"mutability": "mutable",
|
||||
"name": "tokenId",
|
||||
"nameLocation": "915:7:20",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 26852,
|
||||
"src": "907:15:20",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 26844,
|
||||
"name": "uint256",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "907:7:20",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_uint256",
|
||||
"typeString": "uint256"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
},
|
||||
{
|
||||
"constant": false,
|
||||
"id": 26847,
|
||||
"mutability": "mutable",
|
||||
"name": "data",
|
||||
"nameLocation": "947:4:20",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 26852,
|
||||
"src": "932:19:20",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "calldata",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes_calldata_ptr",
|
||||
"typeString": "bytes"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 26846,
|
||||
"name": "bytes",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "932:5:20",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes_storage_ptr",
|
||||
"typeString": "bytes"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "849:108:20"
|
||||
},
|
||||
"returnParameters": {
|
||||
"id": 26851,
|
||||
"nodeType": "ParameterList",
|
||||
"parameters": [
|
||||
{
|
||||
"constant": false,
|
||||
"id": 26850,
|
||||
"mutability": "mutable",
|
||||
"name": "",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"nodeType": "VariableDeclaration",
|
||||
"scope": 26852,
|
||||
"src": "976:6:20",
|
||||
"stateVariable": false,
|
||||
"storageLocation": "default",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
},
|
||||
"typeName": {
|
||||
"id": 26849,
|
||||
"name": "bytes4",
|
||||
"nodeType": "ElementaryTypeName",
|
||||
"src": "976:6:20",
|
||||
"typeDescriptions": {
|
||||
"typeIdentifier": "t_bytes4",
|
||||
"typeString": "bytes4"
|
||||
}
|
||||
},
|
||||
"visibility": "internal"
|
||||
}
|
||||
],
|
||||
"src": "975:8:20"
|
||||
},
|
||||
"scope": 26853,
|
||||
"stateMutability": "nonpayable",
|
||||
"virtual": false,
|
||||
"visibility": "external"
|
||||
}
|
||||
],
|
||||
"abstract": false,
|
||||
"baseContracts": [],
|
||||
"canonicalName": "IERC721Receiver",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "interface",
|
||||
"documentation": {
|
||||
"id": 26838,
|
||||
"nodeType": "StructuredDocumentation",
|
||||
"src": "141:152:20",
|
||||
"text": " @title ERC721 token receiver interface\n @dev Interface for any contract that wants to support safeTransfers\n from ERC721 asset contracts."
|
||||
},
|
||||
"fullyImplemented": false,
|
||||
"linearizedBaseContracts": [
|
||||
26853
|
||||
],
|
||||
"name": "IERC721Receiver",
|
||||
"nameLocation": "304:15:20",
|
||||
"scope": 26854,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 20
|
||||
}
|
||||
11755
out/Math.sol/Math.json
11755
out/Math.sol/Math.json
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
|
@ -1,567 +0,0 @@
|
|||
{
|
||||
"abi": [],
|
||||
"bytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"deployedBytecode": {
|
||||
"object": "0x",
|
||||
"sourceMap": "",
|
||||
"linkReferences": {}
|
||||
},
|
||||
"methodIdentifiers": {},
|
||||
"rawMetadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/Test.sol\":\"TestBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@ensdomains/=node_modules/@ensdomains/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":hardhat-deploy/=node_modules/hardhat-deploy/\",\":hardhat/=node_modules/hardhat/\"],\"viaIR\":true},\"sources\":{\"lib/forge-std/lib/ds-test/src/test.sol\":{\"keccak256\":\"0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54\",\"license\":\"GPL-3.0-or-later\",\"urls\":[\"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5\",\"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr\"]},\"lib/forge-std/src/Common.sol\":{\"keccak256\":\"0x3ed7f49e907eaf339c3bb0b79a81d303d0f9e37aa5b8a9854c0cbfc3ad9a3ef0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01c2532fb5fea32c6dc165518f2c4918af25d9139d17c11da330414c9797a70b\",\"dweb:/ipfs/QmV4r8a1e9Rgu2xoigVCuSv3fZ737wD2DXbV6ZmHXVUtDn\"]},\"lib/forge-std/src/Components.sol\":{\"keccak256\":\"0xd3b8ba6df58174d5d650a668dfa49eeee28b2b855514b9e793e1c0b69d747149\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cce2b2ca79d5ce993b91358ed3d588396295e0aba9bb923481c1ffa5058a0dcd\",\"dweb:/ipfs/QmPNymteQmLWk7SqQhNsF6Rbc3xFPY7xGb4fBKravHLXD3\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xde2bdee8e0e530de3269da50ebba83f4f90dde817971488980b720281e3cde4d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb3f05bb06b654db43f4ce38e22aa7e2296ee00615df5329623c08c9ac030f8d\",\"dweb:/ipfs/QmdKwTpFsTiDFmc8zGwbPRu8mDs4oiKdZvzSj3WpiiGaez\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xf0c5c17c4cdfd0de659cf5e58e0e1611b6ee53900d3ab8b07b871d71d0b37bc6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://21ffda3891e7480d5fdbf7f5e9d539f0ed76204bca69738f8ee006395ef1e23e\",\"dweb:/ipfs/Qmbhbn8zVXrCyvhvoQ5AUSj3usVGqMbMSEHYkNPdbQKBxt\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x2291ee8f379552b86f34d98acb248d50442c7d4ab94aed03f1c8ddb6aea6852d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1ca6ca6fe35692428b507008b24e4ec4ba0cabaf58110fd0b4456a42e0166bdc\",\"dweb:/ipfs/QmUcSeXfYMyusrWxEdPRMeWFYhf9qD6YJaZXCVo29F4eus\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0xb0da85ce6999940eba6190a26c15b9bc7aede57123891287e1b30f80333a9cf5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d287fd41de40ef992588f7a9531e66d1e9f8e4f3f194b9e721ac576d4613964a\",\"dweb:/ipfs/QmbFYYjoc8WGLKVfDe4rscYPwdGq48incbwRQNoLtcMMjn\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0x216818221765c43713791708d7dc83fcd5ada81766c9d4ce54551528c191a59f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f03d0ef065ce600e5922f3e9c92f0f54ff7c12895a250fa97d83e9ee38e7e2b\",\"dweb:/ipfs/QmX59m9mNRNEhjhEZnxbDirniesi26pnDaNzF5hPB4A3E8\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x6dc670615c9d04adf786ed4f18095b2142311c93dfda6459732da919d9113c17\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4eb56f37ea1c9bb72d2064b5e8fd134dd871dd0a9a3e081995c0fa52dd82c74\",\"dweb:/ipfs/QmbQZeD1RfPWjUSZ8iEdUYoLBn1PuSHvSYzZ7V9rLrRK4T\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0xf4442ded918d167635adc30ba3c451d45666c89b38e0eec2adaf0857b49a72f7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b4cb181bd626fe852a36f9b1cf2d79ef0fa9d2bf2cbf0ec86f33f5bf492c0b69\",\"dweb:/ipfs/QmaZKevWdZbjoTB7qtzKjP3dZhiUGymJc4Wb9qkNMewxjB\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x225cc1ec33efd35c90e78aec0792ed9751cd6217e646271172421e96e2e2cc0f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c6adbd216e40ca2387835b8618c82e7153cb826023d38943bbb0c2e992644aa\",\"dweb:/ipfs/QmZeejwEkm7iH9NHih7dPbuNqivuFn27EkgJesgByzS9wD\"]}},\"version\":1}",
|
||||
"metadata": {
|
||||
"compiler": {
|
||||
"version": "0.8.17+commit.8df45f5f"
|
||||
},
|
||||
"language": "Solidity",
|
||||
"output": {
|
||||
"abi": [],
|
||||
"devdoc": {
|
||||
"kind": "dev",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
},
|
||||
"userdoc": {
|
||||
"kind": "user",
|
||||
"methods": {},
|
||||
"version": 1
|
||||
}
|
||||
},
|
||||
"settings": {
|
||||
"remappings": [
|
||||
":@ensdomains/=node_modules/@ensdomains/",
|
||||
":@openzeppelin/=node_modules/@openzeppelin/",
|
||||
":ds-test/=lib/forge-std/lib/ds-test/src/",
|
||||
":eth-gas-reporter/=node_modules/eth-gas-reporter/",
|
||||
":forge-std/=lib/forge-std/src/",
|
||||
":hardhat-deploy/=node_modules/hardhat-deploy/",
|
||||
":hardhat/=node_modules/hardhat/"
|
||||
],
|
||||
"optimizer": {
|
||||
"enabled": true,
|
||||
"runs": 200
|
||||
},
|
||||
"metadata": {
|
||||
"bytecodeHash": "ipfs"
|
||||
},
|
||||
"compilationTarget": {
|
||||
"lib/forge-std/src/Test.sol": "TestBase"
|
||||
},
|
||||
"libraries": {},
|
||||
"viaIR": true
|
||||
},
|
||||
"sources": {
|
||||
"lib/forge-std/lib/ds-test/src/test.sol": {
|
||||
"keccak256": "0xb39cd1d5220cb474947b131e15a4538334b7e886af244b440ae5c9c6bba96a54",
|
||||
"urls": [
|
||||
"bzz-raw://3101520221449ac0070bda3881311a71d9aa87e5210765e875246922cb5cb5f5",
|
||||
"dweb:/ipfs/Qmbg6kAHNoG7ox9N9Xqd9Ere2H2XixMFWFqvyPwFCzB3Gr"
|
||||
],
|
||||
"license": "GPL-3.0-or-later"
|
||||
},
|
||||
"lib/forge-std/src/Common.sol": {
|
||||
"keccak256": "0x3ed7f49e907eaf339c3bb0b79a81d303d0f9e37aa5b8a9854c0cbfc3ad9a3ef0",
|
||||
"urls": [
|
||||
"bzz-raw://01c2532fb5fea32c6dc165518f2c4918af25d9139d17c11da330414c9797a70b",
|
||||
"dweb:/ipfs/QmV4r8a1e9Rgu2xoigVCuSv3fZ737wD2DXbV6ZmHXVUtDn"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/Components.sol": {
|
||||
"keccak256": "0xd3b8ba6df58174d5d650a668dfa49eeee28b2b855514b9e793e1c0b69d747149",
|
||||
"urls": [
|
||||
"bzz-raw://cce2b2ca79d5ce993b91358ed3d588396295e0aba9bb923481c1ffa5058a0dcd",
|
||||
"dweb:/ipfs/QmPNymteQmLWk7SqQhNsF6Rbc3xFPY7xGb4fBKravHLXD3"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdAssertions.sol": {
|
||||
"keccak256": "0xde2bdee8e0e530de3269da50ebba83f4f90dde817971488980b720281e3cde4d",
|
||||
"urls": [
|
||||
"bzz-raw://cb3f05bb06b654db43f4ce38e22aa7e2296ee00615df5329623c08c9ac030f8d",
|
||||
"dweb:/ipfs/QmdKwTpFsTiDFmc8zGwbPRu8mDs4oiKdZvzSj3WpiiGaez"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdCheats.sol": {
|
||||
"keccak256": "0xf0c5c17c4cdfd0de659cf5e58e0e1611b6ee53900d3ab8b07b871d71d0b37bc6",
|
||||
"urls": [
|
||||
"bzz-raw://21ffda3891e7480d5fdbf7f5e9d539f0ed76204bca69738f8ee006395ef1e23e",
|
||||
"dweb:/ipfs/Qmbhbn8zVXrCyvhvoQ5AUSj3usVGqMbMSEHYkNPdbQKBxt"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdError.sol": {
|
||||
"keccak256": "0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77",
|
||||
"urls": [
|
||||
"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6",
|
||||
"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdJson.sol": {
|
||||
"keccak256": "0x2291ee8f379552b86f34d98acb248d50442c7d4ab94aed03f1c8ddb6aea6852d",
|
||||
"urls": [
|
||||
"bzz-raw://1ca6ca6fe35692428b507008b24e4ec4ba0cabaf58110fd0b4456a42e0166bdc",
|
||||
"dweb:/ipfs/QmUcSeXfYMyusrWxEdPRMeWFYhf9qD6YJaZXCVo29F4eus"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdMath.sol": {
|
||||
"keccak256": "0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2",
|
||||
"urls": [
|
||||
"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92",
|
||||
"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdStorage.sol": {
|
||||
"keccak256": "0xb0da85ce6999940eba6190a26c15b9bc7aede57123891287e1b30f80333a9cf5",
|
||||
"urls": [
|
||||
"bzz-raw://d287fd41de40ef992588f7a9531e66d1e9f8e4f3f194b9e721ac576d4613964a",
|
||||
"dweb:/ipfs/QmbFYYjoc8WGLKVfDe4rscYPwdGq48incbwRQNoLtcMMjn"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/StdUtils.sol": {
|
||||
"keccak256": "0x216818221765c43713791708d7dc83fcd5ada81766c9d4ce54551528c191a59f",
|
||||
"urls": [
|
||||
"bzz-raw://3f03d0ef065ce600e5922f3e9c92f0f54ff7c12895a250fa97d83e9ee38e7e2b",
|
||||
"dweb:/ipfs/QmX59m9mNRNEhjhEZnxbDirniesi26pnDaNzF5hPB4A3E8"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/Test.sol": {
|
||||
"keccak256": "0x6dc670615c9d04adf786ed4f18095b2142311c93dfda6459732da919d9113c17",
|
||||
"urls": [
|
||||
"bzz-raw://b4eb56f37ea1c9bb72d2064b5e8fd134dd871dd0a9a3e081995c0fa52dd82c74",
|
||||
"dweb:/ipfs/QmbQZeD1RfPWjUSZ8iEdUYoLBn1PuSHvSYzZ7V9rLrRK4T"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/Vm.sol": {
|
||||
"keccak256": "0xf4442ded918d167635adc30ba3c451d45666c89b38e0eec2adaf0857b49a72f7",
|
||||
"urls": [
|
||||
"bzz-raw://b4cb181bd626fe852a36f9b1cf2d79ef0fa9d2bf2cbf0ec86f33f5bf492c0b69",
|
||||
"dweb:/ipfs/QmaZKevWdZbjoTB7qtzKjP3dZhiUGymJc4Wb9qkNMewxjB"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/console.sol": {
|
||||
"keccak256": "0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba",
|
||||
"urls": [
|
||||
"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70",
|
||||
"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"lib/forge-std/src/console2.sol": {
|
||||
"keccak256": "0x225cc1ec33efd35c90e78aec0792ed9751cd6217e646271172421e96e2e2cc0f",
|
||||
"urls": [
|
||||
"bzz-raw://6c6adbd216e40ca2387835b8618c82e7153cb826023d38943bbb0c2e992644aa",
|
||||
"dweb:/ipfs/QmZeejwEkm7iH9NHih7dPbuNqivuFn27EkgJesgByzS9wD"
|
||||
],
|
||||
"license": "MIT"
|
||||
}
|
||||
},
|
||||
"version": 1
|
||||
},
|
||||
"ast": {
|
||||
"absolutePath": "lib/forge-std/src/Test.sol",
|
||||
"id": 8283,
|
||||
"exportedSymbols": {
|
||||
"CommonBase": [
|
||||
2544
|
||||
],
|
||||
"DSTest": [
|
||||
2512
|
||||
],
|
||||
"StdAssertions": [
|
||||
3370
|
||||
],
|
||||
"StdCheats": [
|
||||
5483
|
||||
],
|
||||
"StdStorage": [
|
||||
6388
|
||||
],
|
||||
"StdUtils": [
|
||||
8251
|
||||
],
|
||||
"Test": [
|
||||
8282
|
||||
],
|
||||
"TestBase": [
|
||||
8271
|
||||
],
|
||||
"Vm": [
|
||||
9256
|
||||
],
|
||||
"console": [
|
||||
17320
|
||||
],
|
||||
"console2": [
|
||||
25385
|
||||
],
|
||||
"stdError": [
|
||||
5549
|
||||
],
|
||||
"stdJson": [
|
||||
6215
|
||||
],
|
||||
"stdMath": [
|
||||
6357
|
||||
],
|
||||
"stdStorage": [
|
||||
7822
|
||||
]
|
||||
},
|
||||
"nodeType": "SourceUnit",
|
||||
"src": "32:404:12",
|
||||
"nodes": [
|
||||
{
|
||||
"id": 8253,
|
||||
"nodeType": "PragmaDirective",
|
||||
"src": "32:31:12",
|
||||
"nodes": [],
|
||||
"literals": [
|
||||
"solidity",
|
||||
">=",
|
||||
"0.6",
|
||||
".2",
|
||||
"<",
|
||||
"0.9",
|
||||
".0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": 8255,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "65:40:12",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/Common.sol",
|
||||
"file": "./Common.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 8283,
|
||||
"sourceUnit": 2545,
|
||||
"symbolAliases": [
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8254,
|
||||
"name": "CommonBase",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 2544,
|
||||
"src": "73:10:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
}
|
||||
],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 8256,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "106:26:12",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/lib/ds-test/src/test.sol",
|
||||
"file": "ds-test/test.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 8283,
|
||||
"sourceUnit": 2513,
|
||||
"symbolAliases": [],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 8268,
|
||||
"nodeType": "ImportDirective",
|
||||
"src": "164:143:12",
|
||||
"nodes": [],
|
||||
"absolutePath": "lib/forge-std/src/Components.sol",
|
||||
"file": "./Components.sol",
|
||||
"nameLocation": "-1:-1:-1",
|
||||
"scope": 8283,
|
||||
"sourceUnit": 2557,
|
||||
"symbolAliases": [
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8257,
|
||||
"name": "console",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 17320,
|
||||
"src": "172:7:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8258,
|
||||
"name": "console2",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 25385,
|
||||
"src": "181:8:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8259,
|
||||
"name": "StdAssertions",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 3370,
|
||||
"src": "191:13:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8260,
|
||||
"name": "StdCheats",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 5483,
|
||||
"src": "206:9:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8261,
|
||||
"name": "stdError",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 5549,
|
||||
"src": "217:8:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8262,
|
||||
"name": "stdJson",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 6215,
|
||||
"src": "227:7:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8263,
|
||||
"name": "stdMath",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 6357,
|
||||
"src": "236:7:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8264,
|
||||
"name": "StdStorage",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 6388,
|
||||
"src": "245:10:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8265,
|
||||
"name": "stdStorage",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 7822,
|
||||
"src": "257:10:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8266,
|
||||
"name": "StdUtils",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 8251,
|
||||
"src": "269:8:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
},
|
||||
{
|
||||
"foreign": {
|
||||
"id": 8267,
|
||||
"name": "Vm",
|
||||
"nodeType": "Identifier",
|
||||
"overloadedDeclarations": [],
|
||||
"referencedDeclaration": 9256,
|
||||
"src": "279:2:12",
|
||||
"typeDescriptions": {}
|
||||
},
|
||||
"nameLocation": "-1:-1:-1"
|
||||
}
|
||||
],
|
||||
"unitAlias": ""
|
||||
},
|
||||
{
|
||||
"id": 8271,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "309:43:12",
|
||||
"nodes": [],
|
||||
"abstract": true,
|
||||
"baseContracts": [
|
||||
{
|
||||
"baseName": {
|
||||
"id": 8269,
|
||||
"name": "CommonBase",
|
||||
"nameLocations": [
|
||||
"339:10:12"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 2544,
|
||||
"src": "339:10:12"
|
||||
},
|
||||
"id": 8270,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "339:10:12"
|
||||
}
|
||||
],
|
||||
"canonicalName": "TestBase",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "contract",
|
||||
"fullyImplemented": true,
|
||||
"linearizedBaseContracts": [
|
||||
8271,
|
||||
2544
|
||||
],
|
||||
"name": "TestBase",
|
||||
"nameLocation": "327:8:12",
|
||||
"scope": 8283,
|
||||
"usedErrors": []
|
||||
},
|
||||
{
|
||||
"id": 8282,
|
||||
"nodeType": "ContractDefinition",
|
||||
"src": "354:81:12",
|
||||
"nodes": [],
|
||||
"abstract": true,
|
||||
"baseContracts": [
|
||||
{
|
||||
"baseName": {
|
||||
"id": 8272,
|
||||
"name": "TestBase",
|
||||
"nameLocations": [
|
||||
"380:8:12"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 8271,
|
||||
"src": "380:8:12"
|
||||
},
|
||||
"id": 8273,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "380:8:12"
|
||||
},
|
||||
{
|
||||
"baseName": {
|
||||
"id": 8274,
|
||||
"name": "DSTest",
|
||||
"nameLocations": [
|
||||
"390:6:12"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 2512,
|
||||
"src": "390:6:12"
|
||||
},
|
||||
"id": 8275,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "390:6:12"
|
||||
},
|
||||
{
|
||||
"baseName": {
|
||||
"id": 8276,
|
||||
"name": "StdAssertions",
|
||||
"nameLocations": [
|
||||
"398:13:12"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 3370,
|
||||
"src": "398:13:12"
|
||||
},
|
||||
"id": 8277,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "398:13:12"
|
||||
},
|
||||
{
|
||||
"baseName": {
|
||||
"id": 8278,
|
||||
"name": "StdCheats",
|
||||
"nameLocations": [
|
||||
"413:9:12"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 5483,
|
||||
"src": "413:9:12"
|
||||
},
|
||||
"id": 8279,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "413:9:12"
|
||||
},
|
||||
{
|
||||
"baseName": {
|
||||
"id": 8280,
|
||||
"name": "StdUtils",
|
||||
"nameLocations": [
|
||||
"424:8:12"
|
||||
],
|
||||
"nodeType": "IdentifierPath",
|
||||
"referencedDeclaration": 8251,
|
||||
"src": "424:8:12"
|
||||
},
|
||||
"id": 8281,
|
||||
"nodeType": "InheritanceSpecifier",
|
||||
"src": "424:8:12"
|
||||
}
|
||||
],
|
||||
"canonicalName": "Test",
|
||||
"contractDependencies": [],
|
||||
"contractKind": "contract",
|
||||
"fullyImplemented": true,
|
||||
"linearizedBaseContracts": [
|
||||
8282,
|
||||
8251,
|
||||
5483,
|
||||
5094,
|
||||
3370,
|
||||
2512,
|
||||
8271,
|
||||
2544
|
||||
],
|
||||
"name": "Test",
|
||||
"nameLocation": "372:4:12",
|
||||
"scope": 8283,
|
||||
"usedErrors": []
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"id": 12
|
||||
}
|
||||
16731
out/Vm.sol/Vm.json
16731
out/Vm.sol/Vm.json
File diff suppressed because one or more lines are too long
15063
out/Vm.sol/VmSafe.json
15063
out/Vm.sol/VmSafe.json
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
111635
out/console.sol/console.json
111635
out/console.sol/console.json
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
23857
out/test.sol/DSTest.json
23857
out/test.sol/DSTest.json
File diff suppressed because it is too large
Load Diff
|
|
@ -3,13 +3,13 @@ pragma solidity ^0.8.7;
|
|||
import "forge-std/Test.sol";
|
||||
import "../../contracts/FleekERC721.sol";
|
||||
|
||||
contract ContractBTest is Test {
|
||||
contract FleekTest is Test {
|
||||
FleekERC721 fleekContract;
|
||||
|
||||
address constant DEPLOYER = 0x7FA9385bE102ac3EAc297483Dd6233D62b3e1496;
|
||||
function setUp() public {
|
||||
fleekContract = new FleekERC721('Test Contract', 'FLKAPS');
|
||||
}
|
||||
|
||||
|
||||
function testName() public {
|
||||
assertEq(fleekContract.name(), 'Test Contract');
|
||||
}
|
||||
|
|
@ -18,9 +18,13 @@ contract ContractBTest is Test {
|
|||
assertEq(fleekContract.symbol(), 'FLKAPS');
|
||||
}
|
||||
|
||||
function test() public {
|
||||
assertEq(fleekContract.symbol(), 'FLKAPS');
|
||||
}
|
||||
|
||||
function testMint() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -35,7 +39,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testMintingMintedToken() public {
|
||||
uint256 first_mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -46,7 +50,7 @@ contract ContractBTest is Test {
|
|||
);
|
||||
|
||||
uint256 second_mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -62,7 +66,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testMintingMoreThanOneTokenForTheSameAddress() public {
|
||||
uint256 first_mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -75,7 +79,7 @@ contract ContractBTest is Test {
|
|||
assertEq(first_mint, 0);
|
||||
|
||||
uint256 second_mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App 2',
|
||||
'This is a test application submitted by foundry tests [2].',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -90,7 +94,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testMintingTwoTokensForTwoAddresses() public {
|
||||
uint256 first_mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -103,7 +107,7 @@ contract ContractBTest is Test {
|
|||
assertEq(first_mint, 0);
|
||||
|
||||
uint256 second_mint = fleekContract.mint(
|
||||
address(0),
|
||||
address(12),
|
||||
'Foundry Test App 2',
|
||||
'This is a test application submitted by foundry tests[2].',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -118,7 +122,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testTokenURI() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -136,7 +140,7 @@ contract ContractBTest is Test {
|
|||
'{',
|
||||
'"name":"Foundry Test App",',
|
||||
'"description":"This is a test application submitted by foundry tests.",',
|
||||
'"owner":"0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84",',
|
||||
'"owner":"DEPLOYER",',
|
||||
'"external_url":"https://fleek.xyz",',
|
||||
'"image":"https://fleek.xyz",',
|
||||
'"attributes": [',
|
||||
|
|
@ -156,7 +160,7 @@ contract ContractBTest is Test {
|
|||
'{',
|
||||
'"name":"Foundry Test App",',
|
||||
'"description":"This is a test application submitted by foundry tests.",',
|
||||
'"owner":"0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84",',
|
||||
'"owner":"DEPLOYER",',
|
||||
'"external_url":"https://fleek.xyz",',
|
||||
'"image":"https://fleek.xyz",',
|
||||
'"attributes": [',
|
||||
|
|
@ -173,7 +177,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testBurn() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -194,7 +198,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testSetTokenName() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -211,7 +215,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testSetTokenDescription() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -228,7 +232,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testSetTokenImage() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -245,7 +249,7 @@ contract ContractBTest is Test {
|
|||
|
||||
function testSetTokenExternalURL() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84,
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
|
|
@ -261,18 +265,72 @@ contract ContractBTest is Test {
|
|||
}
|
||||
|
||||
function testSetTokenBuild() public {
|
||||
}
|
||||
uint256 mint = fleekContract.mint(
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
'https://fleek.xyz',
|
||||
'fleek_xyz',
|
||||
'afff3f6',
|
||||
'https://github.com/fleekxyz/contracts'
|
||||
);
|
||||
|
||||
function testUpgradeTokenBuild() public {
|
||||
assertEq(mint, 0);
|
||||
|
||||
fleekContract.setTokenBuild(mint, 'aaaaaaa', 'https://github.com/fleekxyz/test_contracts');
|
||||
}
|
||||
|
||||
function testSetTokenENS() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
'https://fleek.xyz',
|
||||
'fleek_xyz',
|
||||
'afff3f6',
|
||||
'https://github.com/fleekxyz/contracts'
|
||||
);
|
||||
|
||||
assertEq(mint, 0);
|
||||
|
||||
fleekContract.setTokenENS(mint, 'fleek_nfts');
|
||||
}
|
||||
|
||||
function testAddTokenController() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
'https://fleek.xyz',
|
||||
'fleek_xyz',
|
||||
'afff3f6',
|
||||
'https://github.com/fleekxyz/contracts'
|
||||
);
|
||||
|
||||
assertEq(mint, 0);
|
||||
|
||||
fleekContract.addTokenController(mint, 0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84);
|
||||
}
|
||||
|
||||
function testRemoveTokenController() public {
|
||||
uint256 mint = fleekContract.mint(
|
||||
DEPLOYER,
|
||||
'Foundry Test App',
|
||||
'This is a test application submitted by foundry tests.',
|
||||
'https://fleek.xyz',
|
||||
'https://fleek.xyz',
|
||||
'fleek_xyz',
|
||||
'afff3f6',
|
||||
'https://github.com/fleekxyz/contracts'
|
||||
);
|
||||
|
||||
assertEq(mint, 0);
|
||||
|
||||
fleekContract.addTokenController(mint, 0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84);
|
||||
fleekContract.removeTokenController(mint, 0xb4c79daB8f259C7Aee6E5b2Aa729821864227e84);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue