@cartesi/devnet 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/LICENSE +202 -0
  2. package/build/anvil_state.json +1 -0
  3. package/deployments/localhost/.chainId +1 -0
  4. package/deployments/localhost/AuthorityFactory.json +177 -0
  5. package/deployments/localhost/AuthorityHistoryPairFactory.json +276 -0
  6. package/deployments/localhost/Bitmask.json +44 -0
  7. package/deployments/localhost/CartesiDAppFactory.json +231 -0
  8. package/deployments/localhost/CartesiMathV2.json +213 -0
  9. package/deployments/localhost/DAppAddressRelay.json +102 -0
  10. package/deployments/localhost/ERC1155BatchPortal.json +133 -0
  11. package/deployments/localhost/ERC1155SinglePortal.json +132 -0
  12. package/deployments/localhost/ERC20Portal.json +120 -0
  13. package/deployments/localhost/ERC721Portal.json +126 -0
  14. package/deployments/localhost/EtherPortal.json +121 -0
  15. package/deployments/localhost/HistoryFactory.json +177 -0
  16. package/deployments/localhost/InputBox.json +207 -0
  17. package/deployments/localhost/MerkleV2.json +217 -0
  18. package/deployments/localhost/SelfHostedApplicationFactory.json +226 -0
  19. package/deployments/localhost/TestMultiToken.json +829 -0
  20. package/deployments/localhost/TestNFT.json +891 -0
  21. package/deployments/localhost/TestToken.json +1079 -0
  22. package/deployments/localhost/UnrolledCordic.json +54 -0
  23. package/dist/deploy/01_token.js +15 -0
  24. package/dist/deploy/02_nft.js +15 -0
  25. package/dist/deploy/03_multitoken.js +15 -0
  26. package/dist/src/tasks/deploy-anvil.d.ts +6 -0
  27. package/dist/src/tasks/deploy-anvil.d.ts.map +1 -0
  28. package/dist/src/tasks/deploy-anvil.js +38 -0
  29. package/export/abi/localhost.json +3205 -0
  30. package/export/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.json +128 -0
  31. package/export/artifacts/@openzeppelin/contracts/access/manager/AccessManaged.sol/AccessManaged.json +137 -0
  32. package/export/artifacts/@openzeppelin/contracts/access/manager/AuthorityUtils.sol/AuthorityUtils.json +32 -0
  33. package/export/artifacts/@openzeppelin/contracts/access/manager/IAccessManaged.sol/IAccessManaged.json +133 -0
  34. package/export/artifacts/@openzeppelin/contracts/access/manager/IAccessManager.sol/IAccessManager.json +1251 -0
  35. package/export/artifacts/@openzeppelin/contracts/access/manager/IAuthority.sol/IAuthority.json +60 -0
  36. package/export/artifacts/@openzeppelin/contracts/interfaces/IERC4906.sol/IERC4906.json +401 -0
  37. package/export/artifacts/@openzeppelin/contracts/interfaces/IERC5267.sol/IERC5267.json +84 -0
  38. package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.json +190 -0
  39. package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.json +165 -0
  40. package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.json +197 -0
  41. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/ERC1155.sol/ERC1155.json +553 -0
  42. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/IERC1155.sol/IERC1155.json +362 -0
  43. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol/IERC1155Receiver.json +156 -0
  44. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol/IERC1155MetadataURI.json +385 -0
  45. package/export/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +436 -0
  46. package/export/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.json +242 -0
  47. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.json +472 -0
  48. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol/ERC20Pausable.json +502 -0
  49. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit.sol/ERC20Permit.json +695 -0
  50. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.json +293 -0
  51. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.json +114 -0
  52. package/export/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +595 -0
  53. package/export/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json +363 -0
  54. package/export/artifacts/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol/IERC721Receiver.json +66 -0
  55. package/export/artifacts/@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol/ERC721URIStorage.json +630 -0
  56. package/export/artifacts/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol/IERC721Metadata.json +421 -0
  57. package/export/artifacts/@openzeppelin/contracts/utils/Arrays.sol/Arrays.json +38 -0
  58. package/export/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.json +24 -0
  59. package/export/artifacts/@openzeppelin/contracts/utils/Nonces.sol/Nonces.json +73 -0
  60. package/export/artifacts/@openzeppelin/contracts/utils/Pausable.sol/Pausable.json +103 -0
  61. package/export/artifacts/@openzeppelin/contracts/utils/ShortStrings.sol/ShortStrings.json +55 -0
  62. package/export/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +40 -0
  63. package/export/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +62 -0
  64. package/export/artifacts/@openzeppelin/contracts/utils/cryptography/ECDSA.sol/ECDSA.json +84 -0
  65. package/export/artifacts/@openzeppelin/contracts/utils/cryptography/EIP712.sol/EIP712.json +105 -0
  66. package/export/artifacts/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol/MessageHashUtils.json +36 -0
  67. package/export/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.json +50 -0
  68. package/export/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.json +50 -0
  69. package/export/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.json +65 -0
  70. package/export/artifacts/@openzeppelin/contracts/utils/math/SafeCast.sol/SafeCast.json +173 -0
  71. package/export/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.json +36 -0
  72. package/export/artifacts/@openzeppelin/contracts/utils/types/Time.sol/Time.json +41 -0
  73. package/export/artifacts/contracts/TestMultiToken.sol/TestMultiToken.json +750 -0
  74. package/export/artifacts/contracts/TestNFT.sol/TestNFT.json +779 -0
  75. package/export/artifacts/contracts/TestToken.sol/TestToken.json +963 -0
  76. package/package.json +41 -0
@@ -0,0 +1,55 @@
1
+ {
2
+ "contractName": "ShortStrings",
3
+ "sourceName": "@openzeppelin/contracts/utils/ShortStrings.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [],
7
+ "name": "InvalidShortString",
8
+ "type": "error"
9
+ },
10
+ {
11
+ "inputs": [
12
+ {
13
+ "internalType": "string",
14
+ "name": "str",
15
+ "type": "string"
16
+ }
17
+ ],
18
+ "name": "StringTooLong",
19
+ "type": "error"
20
+ }
21
+ ],
22
+ "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122081d3d6345205316247d3fa39203c4bac2cd0f2647a714000b60696cfd5822c6664736f6c63430008140033",
23
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122081d3d6345205316247d3fa39203c4bac2cd0f2647a714000b60696cfd5822c6664736f6c63430008140033",
24
+ "linkReferences": {},
25
+ "deployedLinkReferences": {},
26
+ "devdoc": {
27
+ "details": "This library provides functions to convert short memory strings into a `ShortString` type that can be used as an immutable variable. Strings of arbitrary length can be optimized using this library if they are short enough (up to 31 bytes) by packing them with their length (1 byte) in a single EVM word (32 bytes). Additionally, a fallback mechanism can be used for every other case. Usage example: ```solidity contract Named { using ShortStrings for *; ShortString private immutable _name; string private _nameFallback; constructor(string memory contractName) { _name = contractName.toShortStringWithFallback(_nameFallback); } function name() external view returns (string memory) { return _name.toStringWithFallback(_nameFallback); } } ```",
28
+ "kind": "dev",
29
+ "methods": {},
30
+ "version": 1
31
+ },
32
+ "userdoc": {
33
+ "kind": "user",
34
+ "methods": {},
35
+ "version": 1
36
+ },
37
+ "evm": {
38
+ "gasEstimates": {
39
+ "creation": {
40
+ "codeDepositCost": "17200",
41
+ "executionCost": "97",
42
+ "totalCost": "17297"
43
+ },
44
+ "internal": {
45
+ "byteLength(ShortString)": "infinite",
46
+ "byteLengthWithFallback(ShortString,string storage pointer)": "infinite",
47
+ "toShortString(string memory)": "infinite",
48
+ "toShortStringWithFallback(string memory,string storage pointer)": "infinite",
49
+ "toString(ShortString)": "infinite",
50
+ "toStringWithFallback(ShortString,string storage pointer)": "infinite"
51
+ }
52
+ },
53
+ "methodIdentifiers": {}
54
+ }
55
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "contractName": "StorageSlot",
3
+ "sourceName": "@openzeppelin/contracts/utils/StorageSlot.sol",
4
+ "abi": [],
5
+ "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ca1595973fd439c5bf54ecb399e3bbb86bff8a362f2c39af80e988822322fa2b64736f6c63430008140033",
6
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ca1595973fd439c5bf54ecb399e3bbb86bff8a362f2c39af80e988822322fa2b64736f6c63430008140033",
7
+ "linkReferences": {},
8
+ "deployedLinkReferences": {},
9
+ "devdoc": {
10
+ "details": "Library for reading and writing primitive types to specific storage slots. Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts. This library helps with reading and writing to such slots without the need for inline assembly. The functions in this library return Slot structs that contain a `value` member that can be used to read or write. Example usage to set ERC1967 implementation slot: ```solidity contract ERC1967 { bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc; function _getImplementation() internal view returns (address) { return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value; } function _setImplementation(address newImplementation) internal { require(newImplementation.code.length > 0); StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation; } } ```",
11
+ "kind": "dev",
12
+ "methods": {},
13
+ "version": 1
14
+ },
15
+ "userdoc": {
16
+ "kind": "user",
17
+ "methods": {},
18
+ "version": 1
19
+ },
20
+ "evm": {
21
+ "gasEstimates": {
22
+ "creation": {
23
+ "codeDepositCost": "17200",
24
+ "executionCost": "97",
25
+ "totalCost": "17297"
26
+ },
27
+ "internal": {
28
+ "getAddressSlot(bytes32)": "infinite",
29
+ "getBooleanSlot(bytes32)": "infinite",
30
+ "getBytes32Slot(bytes32)": "infinite",
31
+ "getBytesSlot(bytes storage pointer)": "infinite",
32
+ "getBytesSlot(bytes32)": "infinite",
33
+ "getStringSlot(bytes32)": "infinite",
34
+ "getStringSlot(string storage pointer)": "infinite",
35
+ "getUint256Slot(bytes32)": "infinite"
36
+ }
37
+ },
38
+ "methodIdentifiers": {}
39
+ }
40
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "contractName": "Strings",
3
+ "sourceName": "@openzeppelin/contracts/utils/Strings.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [
7
+ {
8
+ "internalType": "uint256",
9
+ "name": "value",
10
+ "type": "uint256"
11
+ },
12
+ {
13
+ "internalType": "uint256",
14
+ "name": "length",
15
+ "type": "uint256"
16
+ }
17
+ ],
18
+ "name": "StringsInsufficientHexLength",
19
+ "type": "error"
20
+ }
21
+ ],
22
+ "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122011d1a1503b94e67b1140e37648e2b81c7ec8d2834b954c500654eb5772ec9e9164736f6c63430008140033",
23
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122011d1a1503b94e67b1140e37648e2b81c7ec8d2834b954c500654eb5772ec9e9164736f6c63430008140033",
24
+ "linkReferences": {},
25
+ "deployedLinkReferences": {},
26
+ "devdoc": {
27
+ "details": "String operations.",
28
+ "errors": {
29
+ "StringsInsufficientHexLength(uint256,uint256)": [
30
+ {
31
+ "details": "The `value` string doesn't fit in the specified `length`."
32
+ }
33
+ ]
34
+ },
35
+ "kind": "dev",
36
+ "methods": {},
37
+ "version": 1
38
+ },
39
+ "userdoc": {
40
+ "kind": "user",
41
+ "methods": {},
42
+ "version": 1
43
+ },
44
+ "evm": {
45
+ "gasEstimates": {
46
+ "creation": {
47
+ "codeDepositCost": "17200",
48
+ "executionCost": "97",
49
+ "totalCost": "17297"
50
+ },
51
+ "internal": {
52
+ "equal(string memory,string memory)": "infinite",
53
+ "toHexString(address)": "infinite",
54
+ "toHexString(uint256)": "infinite",
55
+ "toHexString(uint256,uint256)": "infinite",
56
+ "toString(uint256)": "infinite",
57
+ "toStringSigned(int256)": "infinite"
58
+ }
59
+ },
60
+ "methodIdentifiers": {}
61
+ }
62
+ }
@@ -0,0 +1,84 @@
1
+ {
2
+ "contractName": "ECDSA",
3
+ "sourceName": "@openzeppelin/contracts/utils/cryptography/ECDSA.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [],
7
+ "name": "ECDSAInvalidSignature",
8
+ "type": "error"
9
+ },
10
+ {
11
+ "inputs": [
12
+ {
13
+ "internalType": "uint256",
14
+ "name": "length",
15
+ "type": "uint256"
16
+ }
17
+ ],
18
+ "name": "ECDSAInvalidSignatureLength",
19
+ "type": "error"
20
+ },
21
+ {
22
+ "inputs": [
23
+ {
24
+ "internalType": "bytes32",
25
+ "name": "s",
26
+ "type": "bytes32"
27
+ }
28
+ ],
29
+ "name": "ECDSAInvalidSignatureS",
30
+ "type": "error"
31
+ }
32
+ ],
33
+ "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ae35b5b007244dc137b12fc97e6ccbb51f382a2853ac7b32e7dfc638302b45d164736f6c63430008140033",
34
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220ae35b5b007244dc137b12fc97e6ccbb51f382a2853ac7b32e7dfc638302b45d164736f6c63430008140033",
35
+ "linkReferences": {},
36
+ "deployedLinkReferences": {},
37
+ "devdoc": {
38
+ "details": "Elliptic Curve Digital Signature Algorithm (ECDSA) operations. These functions can be used to verify that a message was signed by the holder of the private keys of a given address.",
39
+ "errors": {
40
+ "ECDSAInvalidSignature()": [
41
+ {
42
+ "details": "The signature derives the `address(0)`."
43
+ }
44
+ ],
45
+ "ECDSAInvalidSignatureLength(uint256)": [
46
+ {
47
+ "details": "The signature has an invalid length."
48
+ }
49
+ ],
50
+ "ECDSAInvalidSignatureS(bytes32)": [
51
+ {
52
+ "details": "The signature has an S value that is in the upper half order."
53
+ }
54
+ ]
55
+ },
56
+ "kind": "dev",
57
+ "methods": {},
58
+ "version": 1
59
+ },
60
+ "userdoc": {
61
+ "kind": "user",
62
+ "methods": {},
63
+ "version": 1
64
+ },
65
+ "evm": {
66
+ "gasEstimates": {
67
+ "creation": {
68
+ "codeDepositCost": "17200",
69
+ "executionCost": "97",
70
+ "totalCost": "17297"
71
+ },
72
+ "internal": {
73
+ "_throwError(enum ECDSA.RecoverError,bytes32)": "infinite",
74
+ "recover(bytes32,bytes memory)": "infinite",
75
+ "recover(bytes32,bytes32,bytes32)": "infinite",
76
+ "recover(bytes32,uint8,bytes32,bytes32)": "infinite",
77
+ "tryRecover(bytes32,bytes memory)": "infinite",
78
+ "tryRecover(bytes32,bytes32,bytes32)": "infinite",
79
+ "tryRecover(bytes32,uint8,bytes32,bytes32)": "infinite"
80
+ }
81
+ },
82
+ "methodIdentifiers": {}
83
+ }
84
+ }
@@ -0,0 +1,105 @@
1
+ {
2
+ "contractName": "EIP712",
3
+ "sourceName": "@openzeppelin/contracts/utils/cryptography/EIP712.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [],
7
+ "name": "InvalidShortString",
8
+ "type": "error"
9
+ },
10
+ {
11
+ "inputs": [
12
+ {
13
+ "internalType": "string",
14
+ "name": "str",
15
+ "type": "string"
16
+ }
17
+ ],
18
+ "name": "StringTooLong",
19
+ "type": "error"
20
+ },
21
+ {
22
+ "anonymous": false,
23
+ "inputs": [],
24
+ "name": "EIP712DomainChanged",
25
+ "type": "event"
26
+ },
27
+ {
28
+ "inputs": [],
29
+ "name": "eip712Domain",
30
+ "outputs": [
31
+ {
32
+ "internalType": "bytes1",
33
+ "name": "fields",
34
+ "type": "bytes1"
35
+ },
36
+ {
37
+ "internalType": "string",
38
+ "name": "name",
39
+ "type": "string"
40
+ },
41
+ {
42
+ "internalType": "string",
43
+ "name": "version",
44
+ "type": "string"
45
+ },
46
+ {
47
+ "internalType": "uint256",
48
+ "name": "chainId",
49
+ "type": "uint256"
50
+ },
51
+ {
52
+ "internalType": "address",
53
+ "name": "verifyingContract",
54
+ "type": "address"
55
+ },
56
+ {
57
+ "internalType": "bytes32",
58
+ "name": "salt",
59
+ "type": "bytes32"
60
+ },
61
+ {
62
+ "internalType": "uint256[]",
63
+ "name": "extensions",
64
+ "type": "uint256[]"
65
+ }
66
+ ],
67
+ "stateMutability": "view",
68
+ "type": "function"
69
+ }
70
+ ],
71
+ "bytecode": "0x",
72
+ "deployedBytecode": "0x",
73
+ "linkReferences": {},
74
+ "deployedLinkReferences": {},
75
+ "devdoc": {
76
+ "custom:oz-upgrades-unsafe-allow": "state-variable-immutable",
77
+ "details": "https://eips.ethereum.org/EIPS/eip-712[EIP 712] is a standard for hashing and signing of typed structured data. The encoding scheme specified in the EIP requires a domain separator and a hash of the typed structured data, whose encoding is very generic and therefore its implementation in Solidity is not feasible, thus this contract does not implement the encoding itself. Protocols need to implement the type-specific encoding they need in order to produce the hash of their typed data using a combination of `abi.encode` and `keccak256`. This contract implements the EIP 712 domain separator ({_domainSeparatorV4}) that is used as part of the encoding scheme, and the final step of the encoding to obtain the message digest that is then signed via ECDSA ({_hashTypedDataV4}). The implementation of the domain separator was designed to be as efficient as possible while still properly updating the chain id to protect against replay attacks on an eventual fork of the chain. NOTE: This contract implements the version of the encoding known as \"v4\", as implemented by the JSON RPC method https://docs.metamask.io/guide/signing-data.html[`eth_signTypedDataV4` in MetaMask]. NOTE: In the upgradeable version of this contract, the cached values will correspond to the address, and the domain separator of the implementation contract. This will cause the {_domainSeparatorV4} function to always rebuild the separator from the immutable values, which is cheaper than accessing a cached version in cold storage.",
78
+ "events": {
79
+ "EIP712DomainChanged()": {
80
+ "details": "MAY be emitted to signal that the domain could have changed."
81
+ }
82
+ },
83
+ "kind": "dev",
84
+ "methods": {
85
+ "constructor": {
86
+ "details": "Initializes the domain separator and parameter caches. The meaning of `name` and `version` is specified in https://eips.ethereum.org/EIPS/eip-712#definition-of-domainseparator[EIP 712]: - `name`: the user readable name of the signing domain, i.e. the name of the DApp or the protocol. - `version`: the current major version of the signing domain. NOTE: These parameters cannot be changed except through a xref:learn::upgrading-smart-contracts.adoc[smart contract upgrade]."
87
+ },
88
+ "eip712Domain()": {
89
+ "details": "See {IERC-5267}."
90
+ }
91
+ },
92
+ "version": 1
93
+ },
94
+ "userdoc": {
95
+ "kind": "user",
96
+ "methods": {},
97
+ "version": 1
98
+ },
99
+ "evm": {
100
+ "gasEstimates": null,
101
+ "methodIdentifiers": {
102
+ "eip712Domain()": "84b0196e"
103
+ }
104
+ }
105
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "contractName": "MessageHashUtils",
3
+ "sourceName": "@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol",
4
+ "abi": [],
5
+ "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205833160ba09965af505f97dc169edd66550b36456d3e76be8a7377189683c04264736f6c63430008140033",
6
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212205833160ba09965af505f97dc169edd66550b36456d3e76be8a7377189683c04264736f6c63430008140033",
7
+ "linkReferences": {},
8
+ "deployedLinkReferences": {},
9
+ "devdoc": {
10
+ "details": "Signature message hash utilities for producing digests to be consumed by {ECDSA} recovery or signing. The library provides methods for generating a hash of a message that conforms to the https://eips.ethereum.org/EIPS/eip-191[EIP 191] and https://eips.ethereum.org/EIPS/eip-712[EIP 712] specifications.",
11
+ "kind": "dev",
12
+ "methods": {},
13
+ "version": 1
14
+ },
15
+ "userdoc": {
16
+ "kind": "user",
17
+ "methods": {},
18
+ "version": 1
19
+ },
20
+ "evm": {
21
+ "gasEstimates": {
22
+ "creation": {
23
+ "codeDepositCost": "17200",
24
+ "executionCost": "97",
25
+ "totalCost": "17297"
26
+ },
27
+ "internal": {
28
+ "toDataWithIntendedValidatorHash(address,bytes memory)": "infinite",
29
+ "toEthSignedMessageHash(bytes memory)": "infinite",
30
+ "toEthSignedMessageHash(bytes32)": "infinite",
31
+ "toTypedDataHash(bytes32,bytes32)": "infinite"
32
+ }
33
+ },
34
+ "methodIdentifiers": {}
35
+ }
36
+ }
@@ -0,0 +1,50 @@
1
+ {
2
+ "contractName": "ERC165",
3
+ "sourceName": "@openzeppelin/contracts/utils/introspection/ERC165.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [
7
+ {
8
+ "internalType": "bytes4",
9
+ "name": "interfaceId",
10
+ "type": "bytes4"
11
+ }
12
+ ],
13
+ "name": "supportsInterface",
14
+ "outputs": [
15
+ {
16
+ "internalType": "bool",
17
+ "name": "",
18
+ "type": "bool"
19
+ }
20
+ ],
21
+ "stateMutability": "view",
22
+ "type": "function"
23
+ }
24
+ ],
25
+ "bytecode": "0x",
26
+ "deployedBytecode": "0x",
27
+ "linkReferences": {},
28
+ "deployedLinkReferences": {},
29
+ "devdoc": {
30
+ "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); } ```",
31
+ "kind": "dev",
32
+ "methods": {
33
+ "supportsInterface(bytes4)": {
34
+ "details": "See {IERC165-supportsInterface}."
35
+ }
36
+ },
37
+ "version": 1
38
+ },
39
+ "userdoc": {
40
+ "kind": "user",
41
+ "methods": {},
42
+ "version": 1
43
+ },
44
+ "evm": {
45
+ "gasEstimates": null,
46
+ "methodIdentifiers": {
47
+ "supportsInterface(bytes4)": "01ffc9a7"
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,50 @@
1
+ {
2
+ "contractName": "IERC165",
3
+ "sourceName": "@openzeppelin/contracts/utils/introspection/IERC165.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [
7
+ {
8
+ "internalType": "bytes4",
9
+ "name": "interfaceId",
10
+ "type": "bytes4"
11
+ }
12
+ ],
13
+ "name": "supportsInterface",
14
+ "outputs": [
15
+ {
16
+ "internalType": "bool",
17
+ "name": "",
18
+ "type": "bool"
19
+ }
20
+ ],
21
+ "stateMutability": "view",
22
+ "type": "function"
23
+ }
24
+ ],
25
+ "bytecode": "0x",
26
+ "deployedBytecode": "0x",
27
+ "linkReferences": {},
28
+ "deployedLinkReferences": {},
29
+ "devdoc": {
30
+ "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}.",
31
+ "kind": "dev",
32
+ "methods": {
33
+ "supportsInterface(bytes4)": {
34
+ "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."
35
+ }
36
+ },
37
+ "version": 1
38
+ },
39
+ "userdoc": {
40
+ "kind": "user",
41
+ "methods": {},
42
+ "version": 1
43
+ },
44
+ "evm": {
45
+ "gasEstimates": null,
46
+ "methodIdentifiers": {
47
+ "supportsInterface(bytes4)": "01ffc9a7"
48
+ }
49
+ }
50
+ }
@@ -0,0 +1,65 @@
1
+ {
2
+ "contractName": "Math",
3
+ "sourceName": "@openzeppelin/contracts/utils/math/Math.sol",
4
+ "abi": [
5
+ {
6
+ "inputs": [],
7
+ "name": "MathOverflowedMulDiv",
8
+ "type": "error"
9
+ }
10
+ ],
11
+ "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c9332d4b0da81becbc8931c24d2cd33cbff57a93f4d2e609e7f243f8b0d2b8dc64736f6c63430008140033",
12
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220c9332d4b0da81becbc8931c24d2cd33cbff57a93f4d2e609e7f243f8b0d2b8dc64736f6c63430008140033",
13
+ "linkReferences": {},
14
+ "deployedLinkReferences": {},
15
+ "devdoc": {
16
+ "details": "Standard math utilities missing in the Solidity language.",
17
+ "errors": {
18
+ "MathOverflowedMulDiv()": [
19
+ {
20
+ "details": "Muldiv operation overflow."
21
+ }
22
+ ]
23
+ },
24
+ "kind": "dev",
25
+ "methods": {},
26
+ "version": 1
27
+ },
28
+ "userdoc": {
29
+ "kind": "user",
30
+ "methods": {},
31
+ "version": 1
32
+ },
33
+ "evm": {
34
+ "gasEstimates": {
35
+ "creation": {
36
+ "codeDepositCost": "17200",
37
+ "executionCost": "97",
38
+ "totalCost": "17297"
39
+ },
40
+ "internal": {
41
+ "average(uint256,uint256)": "infinite",
42
+ "ceilDiv(uint256,uint256)": "infinite",
43
+ "log10(uint256)": "infinite",
44
+ "log10(uint256,enum Math.Rounding)": "infinite",
45
+ "log2(uint256)": "infinite",
46
+ "log2(uint256,enum Math.Rounding)": "infinite",
47
+ "log256(uint256)": "infinite",
48
+ "log256(uint256,enum Math.Rounding)": "infinite",
49
+ "max(uint256,uint256)": "infinite",
50
+ "min(uint256,uint256)": "infinite",
51
+ "mulDiv(uint256,uint256,uint256)": "infinite",
52
+ "mulDiv(uint256,uint256,uint256,enum Math.Rounding)": "infinite",
53
+ "sqrt(uint256)": "infinite",
54
+ "sqrt(uint256,enum Math.Rounding)": "infinite",
55
+ "tryAdd(uint256,uint256)": "infinite",
56
+ "tryDiv(uint256,uint256)": "infinite",
57
+ "tryMod(uint256,uint256)": "infinite",
58
+ "tryMul(uint256,uint256)": "infinite",
59
+ "trySub(uint256,uint256)": "infinite",
60
+ "unsignedRoundsUp(enum Math.Rounding)": "infinite"
61
+ }
62
+ },
63
+ "methodIdentifiers": {}
64
+ }
65
+ }