diff --git a/.env.example b/.env.example index 558638b..0d77181 100644 --- a/.env.example +++ b/.env.example @@ -4,9 +4,11 @@ POLYGONSCAN_API_KEY= MUMBAI_RPC_URL= ZETACHAIN_TESTNET_RPC_URL= ZETASCAN_API_KEY= -ALCHEMY_ETH_RPC= +ALCHEMY_ETH_API= OPBNB_API_KEY= SCROLL_API_KEY= X1_API_KEY= BASE_API_KEY= -BASE_SEPOLIA_API_KEY= \ No newline at end of file +BASE_SEPOLIA_API_KEY= +PLUME_TESTNET_API_KEY= +BERACHAIN_TESTNET_API_KEY= \ No newline at end of file diff --git a/.openzeppelin/sepolia.json b/.openzeppelin/sepolia.json new file mode 100644 index 0000000..bddda3d --- /dev/null +++ b/.openzeppelin/sepolia.json @@ -0,0 +1,406 @@ +{ + "manifestVersion": "3.2", + "proxies": [ + { + "address": "0x878c92FD89d8E0B93Dc0a3c907A2adc7577e39c5", + "txHash": "0x62903b9a26b532e25c60c998d500bd2a7f5dc08e357022efc7aa33565e73d1a9", + "kind": "uups" + } + ], + "impls": { + "8e57015e0d23cd9f03e542c03fb6317ac652ae232fd6c2bb8654aea0b0163ab6": { + "address": "0xF1652Cd77b01Adad92456C6a4cf860C4Cc082b8f", + "txHash": "0x35357de7637ee0505054d7dfe9ad2c89d1452dba0efd8fdd135fcdbec6e64944", + "layout": { + "solcVersion": "0.8.23", + "storage": [], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_bytes_storage)dyn_storage": { + "label": "bytes[]", + "numberOfBytes": "32" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes_storage": { + "label": "bytes", + "numberOfBytes": "32" + }, + "t_contract(ISPGlobalHook)1156": { + "label": "contract ISPGlobalHook", + "numberOfBytes": "20" + }, + "t_contract(ISPHook)1170": { + "label": "contract ISPHook", + "numberOfBytes": "20" + }, + "t_enum(DataLocation)1290": { + "label": "enum DataLocation", + "members": [ + "ONCHAIN", + "ARWEAVE", + "IPFS", + "CUSTOM" + ], + "numberOfBytes": "1" + }, + "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)": { + "label": "mapping(string => struct OffchainAttestation)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint64,t_struct(Attestation)1276_storage)": { + "label": "mapping(uint64 => struct Attestation)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint64,t_struct(Schema)1314_storage)": { + "label": "mapping(uint64 => struct Schema)", + "numberOfBytes": "32" + }, + "t_string_memory_ptr": { + "label": "string", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Attestation)1276_storage": { + "label": "struct Attestation", + "members": [ + { + "label": "schemaId", + "type": "t_uint64", + "offset": 0, + "slot": "0" + }, + { + "label": "linkedAttestationId", + "type": "t_uint64", + "offset": 8, + "slot": "0" + }, + { + "label": "attestTimestamp", + "type": "t_uint64", + "offset": 16, + "slot": "0" + }, + { + "label": "revokeTimestamp", + "type": "t_uint64", + "offset": 24, + "slot": "0" + }, + { + "label": "attester", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "validUntil", + "type": "t_uint64", + "offset": 20, + "slot": "1" + }, + { + "label": "dataLocation", + "type": "t_enum(DataLocation)1290", + "offset": 28, + "slot": "1" + }, + { + "label": "revoked", + "type": "t_bool", + "offset": 29, + "slot": "1" + }, + { + "label": "recipients", + "type": "t_array(t_bytes_storage)dyn_storage", + "offset": 0, + "slot": "2" + }, + { + "label": "data", + "type": "t_bytes_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(InitializableStorage)64_storage": { + "label": "struct Initializable.InitializableStorage", + "members": [ + { + "label": "_initialized", + "type": "t_uint64", + "offset": 0, + "slot": "0" + }, + { + "label": "_initializing", + "type": "t_bool", + "offset": 8, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(OffchainAttestation)1282_storage": { + "label": "struct OffchainAttestation", + "members": [ + { + "label": "attester", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "timestamp", + "type": "t_uint64", + "offset": 20, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(OwnableStorage)14_storage": { + "label": "struct OwnableUpgradeable.OwnableStorage", + "members": [ + { + "label": "_owner", + "type": "t_address", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(SPStorage)859_storage": { + "label": "struct SP.SPStorage", + "members": [ + { + "label": "paused", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "schemaRegistry", + "type": "t_mapping(t_uint64,t_struct(Schema)1314_storage)", + "offset": 0, + "slot": "1" + }, + { + "label": "attestationRegistry", + "type": "t_mapping(t_uint64,t_struct(Attestation)1276_storage)", + "offset": 0, + "slot": "2" + }, + { + "label": "offchainAttestationRegistry", + "type": "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)", + "offset": 0, + "slot": "3" + }, + { + "label": "schemaCounter", + "type": "t_uint64", + "offset": 0, + "slot": "4" + }, + { + "label": "attestationCounter", + "type": "t_uint64", + "offset": 8, + "slot": "4" + }, + { + "label": "initialSchemaCounter", + "type": "t_uint64", + "offset": 16, + "slot": "4" + }, + { + "label": "initialAttestationCounter", + "type": "t_uint64", + "offset": 24, + "slot": "4" + }, + { + "label": "globalHook", + "type": "t_contract(ISPGlobalHook)1156", + "offset": 0, + "slot": "5" + } + ], + "numberOfBytes": "192" + }, + "t_struct(Schema)1314_storage": { + "label": "struct Schema", + "members": [ + { + "label": "registrant", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "revocable", + "type": "t_bool", + "offset": 20, + "slot": "0" + }, + { + "label": "dataLocation", + "type": "t_enum(DataLocation)1290", + "offset": 21, + "slot": "0" + }, + { + "label": "maxValidFor", + "type": "t_uint64", + "offset": 22, + "slot": "0" + }, + { + "label": "hook", + "type": "t_contract(ISPHook)1170", + "offset": 0, + "slot": "1" + }, + { + "label": "timestamp", + "type": "t_uint64", + "offset": 20, + "slot": "1" + }, + { + "label": "data", + "type": "t_string_storage", + "offset": 0, + "slot": "2" + } + ], + "numberOfBytes": "96" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + } + }, + "namespaces": { + "erc7201:ethsign.SP": [ + { + "contract": "SP", + "label": "paused", + "type": "t_bool", + "src": "src/core/SP.sol:19", + "offset": 0, + "slot": "0" + }, + { + "contract": "SP", + "label": "schemaRegistry", + "type": "t_mapping(t_uint64,t_struct(Schema)1314_storage)", + "src": "src/core/SP.sol:20", + "offset": 0, + "slot": "1" + }, + { + "contract": "SP", + "label": "attestationRegistry", + "type": "t_mapping(t_uint64,t_struct(Attestation)1276_storage)", + "src": "src/core/SP.sol:21", + "offset": 0, + "slot": "2" + }, + { + "contract": "SP", + "label": "offchainAttestationRegistry", + "type": "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)", + "src": "src/core/SP.sol:22", + "offset": 0, + "slot": "3" + }, + { + "contract": "SP", + "label": "schemaCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:23", + "offset": 0, + "slot": "4" + }, + { + "contract": "SP", + "label": "attestationCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:24", + "offset": 8, + "slot": "4" + }, + { + "contract": "SP", + "label": "initialSchemaCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:25", + "offset": 16, + "slot": "4" + }, + { + "contract": "SP", + "label": "initialAttestationCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:26", + "offset": 24, + "slot": "4" + }, + { + "contract": "SP", + "label": "globalHook", + "type": "t_contract(ISPGlobalHook)1156", + "src": "src/core/SP.sol:27", + "offset": 0, + "slot": "5" + } + ], + "erc7201:openzeppelin.storage.Ownable": [ + { + "contract": "OwnableUpgradeable", + "label": "_owner", + "type": "t_address", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:24", + "offset": 0, + "slot": "0" + } + ], + "erc7201:openzeppelin.storage.Initializable": [ + { + "contract": "Initializable", + "label": "_initialized", + "type": "t_uint64", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:69", + "offset": 0, + "slot": "0" + }, + { + "contract": "Initializable", + "label": "_initializing", + "type": "t_bool", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:73", + "offset": 8, + "slot": "0" + } + ] + } + } + } + } +} diff --git a/.openzeppelin/unknown-161221135.json b/.openzeppelin/unknown-161221135.json new file mode 100644 index 0000000..04e54cd --- /dev/null +++ b/.openzeppelin/unknown-161221135.json @@ -0,0 +1,406 @@ +{ + "manifestVersion": "3.2", + "proxies": [ + { + "address": "0x4e4af2a21ebf62850fD99Eb6253E1eFBb56098cD", + "txHash": "0x4bc2257a84cf4a7ad3df77f167a09543e308261bd91bd12bbc21271746ec2683", + "kind": "uups" + } + ], + "impls": { + "8e57015e0d23cd9f03e542c03fb6317ac652ae232fd6c2bb8654aea0b0163ab6": { + "address": "0x8D92827CdB67A503e9FB21B28a58F9dAb36B4973", + "txHash": "0x0c6631058262b29707289245be9bc4eebe3fdca22ac71f8e4e194a560e1ce988", + "layout": { + "solcVersion": "0.8.23", + "storage": [], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_bytes_storage)dyn_storage": { + "label": "bytes[]", + "numberOfBytes": "32" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes_storage": { + "label": "bytes", + "numberOfBytes": "32" + }, + "t_contract(ISPGlobalHook)1156": { + "label": "contract ISPGlobalHook", + "numberOfBytes": "20" + }, + "t_contract(ISPHook)1170": { + "label": "contract ISPHook", + "numberOfBytes": "20" + }, + "t_enum(DataLocation)1290": { + "label": "enum DataLocation", + "members": [ + "ONCHAIN", + "ARWEAVE", + "IPFS", + "CUSTOM" + ], + "numberOfBytes": "1" + }, + "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)": { + "label": "mapping(string => struct OffchainAttestation)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint64,t_struct(Attestation)1276_storage)": { + "label": "mapping(uint64 => struct Attestation)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint64,t_struct(Schema)1314_storage)": { + "label": "mapping(uint64 => struct Schema)", + "numberOfBytes": "32" + }, + "t_string_memory_ptr": { + "label": "string", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Attestation)1276_storage": { + "label": "struct Attestation", + "members": [ + { + "label": "schemaId", + "type": "t_uint64", + "offset": 0, + "slot": "0" + }, + { + "label": "linkedAttestationId", + "type": "t_uint64", + "offset": 8, + "slot": "0" + }, + { + "label": "attestTimestamp", + "type": "t_uint64", + "offset": 16, + "slot": "0" + }, + { + "label": "revokeTimestamp", + "type": "t_uint64", + "offset": 24, + "slot": "0" + }, + { + "label": "attester", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "validUntil", + "type": "t_uint64", + "offset": 20, + "slot": "1" + }, + { + "label": "dataLocation", + "type": "t_enum(DataLocation)1290", + "offset": 28, + "slot": "1" + }, + { + "label": "revoked", + "type": "t_bool", + "offset": 29, + "slot": "1" + }, + { + "label": "recipients", + "type": "t_array(t_bytes_storage)dyn_storage", + "offset": 0, + "slot": "2" + }, + { + "label": "data", + "type": "t_bytes_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(InitializableStorage)64_storage": { + "label": "struct Initializable.InitializableStorage", + "members": [ + { + "label": "_initialized", + "type": "t_uint64", + "offset": 0, + "slot": "0" + }, + { + "label": "_initializing", + "type": "t_bool", + "offset": 8, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(OffchainAttestation)1282_storage": { + "label": "struct OffchainAttestation", + "members": [ + { + "label": "attester", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "timestamp", + "type": "t_uint64", + "offset": 20, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(OwnableStorage)14_storage": { + "label": "struct OwnableUpgradeable.OwnableStorage", + "members": [ + { + "label": "_owner", + "type": "t_address", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(SPStorage)859_storage": { + "label": "struct SP.SPStorage", + "members": [ + { + "label": "paused", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "schemaRegistry", + "type": "t_mapping(t_uint64,t_struct(Schema)1314_storage)", + "offset": 0, + "slot": "1" + }, + { + "label": "attestationRegistry", + "type": "t_mapping(t_uint64,t_struct(Attestation)1276_storage)", + "offset": 0, + "slot": "2" + }, + { + "label": "offchainAttestationRegistry", + "type": "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)", + "offset": 0, + "slot": "3" + }, + { + "label": "schemaCounter", + "type": "t_uint64", + "offset": 0, + "slot": "4" + }, + { + "label": "attestationCounter", + "type": "t_uint64", + "offset": 8, + "slot": "4" + }, + { + "label": "initialSchemaCounter", + "type": "t_uint64", + "offset": 16, + "slot": "4" + }, + { + "label": "initialAttestationCounter", + "type": "t_uint64", + "offset": 24, + "slot": "4" + }, + { + "label": "globalHook", + "type": "t_contract(ISPGlobalHook)1156", + "offset": 0, + "slot": "5" + } + ], + "numberOfBytes": "192" + }, + "t_struct(Schema)1314_storage": { + "label": "struct Schema", + "members": [ + { + "label": "registrant", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "revocable", + "type": "t_bool", + "offset": 20, + "slot": "0" + }, + { + "label": "dataLocation", + "type": "t_enum(DataLocation)1290", + "offset": 21, + "slot": "0" + }, + { + "label": "maxValidFor", + "type": "t_uint64", + "offset": 22, + "slot": "0" + }, + { + "label": "hook", + "type": "t_contract(ISPHook)1170", + "offset": 0, + "slot": "1" + }, + { + "label": "timestamp", + "type": "t_uint64", + "offset": 20, + "slot": "1" + }, + { + "label": "data", + "type": "t_string_storage", + "offset": 0, + "slot": "2" + } + ], + "numberOfBytes": "96" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + } + }, + "namespaces": { + "erc7201:ethsign.SP": [ + { + "contract": "SP", + "label": "paused", + "type": "t_bool", + "src": "src/core/SP.sol:19", + "offset": 0, + "slot": "0" + }, + { + "contract": "SP", + "label": "schemaRegistry", + "type": "t_mapping(t_uint64,t_struct(Schema)1314_storage)", + "src": "src/core/SP.sol:20", + "offset": 0, + "slot": "1" + }, + { + "contract": "SP", + "label": "attestationRegistry", + "type": "t_mapping(t_uint64,t_struct(Attestation)1276_storage)", + "src": "src/core/SP.sol:21", + "offset": 0, + "slot": "2" + }, + { + "contract": "SP", + "label": "offchainAttestationRegistry", + "type": "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)", + "src": "src/core/SP.sol:22", + "offset": 0, + "slot": "3" + }, + { + "contract": "SP", + "label": "schemaCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:23", + "offset": 0, + "slot": "4" + }, + { + "contract": "SP", + "label": "attestationCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:24", + "offset": 8, + "slot": "4" + }, + { + "contract": "SP", + "label": "initialSchemaCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:25", + "offset": 16, + "slot": "4" + }, + { + "contract": "SP", + "label": "initialAttestationCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:26", + "offset": 24, + "slot": "4" + }, + { + "contract": "SP", + "label": "globalHook", + "type": "t_contract(ISPGlobalHook)1156", + "src": "src/core/SP.sol:27", + "offset": 0, + "slot": "5" + } + ], + "erc7201:openzeppelin.storage.Ownable": [ + { + "contract": "OwnableUpgradeable", + "label": "_owner", + "type": "t_address", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:24", + "offset": 0, + "slot": "0" + } + ], + "erc7201:openzeppelin.storage.Initializable": [ + { + "contract": "Initializable", + "label": "_initialized", + "type": "t_uint64", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:69", + "offset": 0, + "slot": "0" + }, + { + "contract": "Initializable", + "label": "_initializing", + "type": "t_bool", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:73", + "offset": 8, + "slot": "0" + } + ] + } + } + } + } +} diff --git a/.openzeppelin/unknown-80085.json b/.openzeppelin/unknown-80085.json new file mode 100644 index 0000000..d4211d7 --- /dev/null +++ b/.openzeppelin/unknown-80085.json @@ -0,0 +1,406 @@ +{ + "manifestVersion": "3.2", + "proxies": [ + { + "address": "0x2774d96a841E522549CE7ADd3825fC31075384Cf", + "txHash": "0x40a519c9f08bd8d9377f502ea19e9d09d219598fd60357af234f2f340f76c86a", + "kind": "uups" + } + ], + "impls": { + "8e57015e0d23cd9f03e542c03fb6317ac652ae232fd6c2bb8654aea0b0163ab6": { + "address": "0x91eEC742c970eF28CE307B53f0b6A7704D63b209", + "txHash": "0xf89b926d5ccafa3ba635a1ea4229056f5eb1f78243c6a0f69882e6cf5d271db2", + "layout": { + "solcVersion": "0.8.23", + "storage": [], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_bytes_storage)dyn_storage": { + "label": "bytes[]", + "numberOfBytes": "32" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes_storage": { + "label": "bytes", + "numberOfBytes": "32" + }, + "t_contract(ISPGlobalHook)1156": { + "label": "contract ISPGlobalHook", + "numberOfBytes": "20" + }, + "t_contract(ISPHook)1170": { + "label": "contract ISPHook", + "numberOfBytes": "20" + }, + "t_enum(DataLocation)1290": { + "label": "enum DataLocation", + "members": [ + "ONCHAIN", + "ARWEAVE", + "IPFS", + "CUSTOM" + ], + "numberOfBytes": "1" + }, + "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)": { + "label": "mapping(string => struct OffchainAttestation)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint64,t_struct(Attestation)1276_storage)": { + "label": "mapping(uint64 => struct Attestation)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint64,t_struct(Schema)1314_storage)": { + "label": "mapping(uint64 => struct Schema)", + "numberOfBytes": "32" + }, + "t_string_memory_ptr": { + "label": "string", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Attestation)1276_storage": { + "label": "struct Attestation", + "members": [ + { + "label": "schemaId", + "type": "t_uint64", + "offset": 0, + "slot": "0" + }, + { + "label": "linkedAttestationId", + "type": "t_uint64", + "offset": 8, + "slot": "0" + }, + { + "label": "attestTimestamp", + "type": "t_uint64", + "offset": 16, + "slot": "0" + }, + { + "label": "revokeTimestamp", + "type": "t_uint64", + "offset": 24, + "slot": "0" + }, + { + "label": "attester", + "type": "t_address", + "offset": 0, + "slot": "1" + }, + { + "label": "validUntil", + "type": "t_uint64", + "offset": 20, + "slot": "1" + }, + { + "label": "dataLocation", + "type": "t_enum(DataLocation)1290", + "offset": 28, + "slot": "1" + }, + { + "label": "revoked", + "type": "t_bool", + "offset": 29, + "slot": "1" + }, + { + "label": "recipients", + "type": "t_array(t_bytes_storage)dyn_storage", + "offset": 0, + "slot": "2" + }, + { + "label": "data", + "type": "t_bytes_storage", + "offset": 0, + "slot": "3" + } + ], + "numberOfBytes": "128" + }, + "t_struct(InitializableStorage)64_storage": { + "label": "struct Initializable.InitializableStorage", + "members": [ + { + "label": "_initialized", + "type": "t_uint64", + "offset": 0, + "slot": "0" + }, + { + "label": "_initializing", + "type": "t_bool", + "offset": 8, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(OffchainAttestation)1282_storage": { + "label": "struct OffchainAttestation", + "members": [ + { + "label": "attester", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "timestamp", + "type": "t_uint64", + "offset": 20, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(OwnableStorage)14_storage": { + "label": "struct OwnableUpgradeable.OwnableStorage", + "members": [ + { + "label": "_owner", + "type": "t_address", + "offset": 0, + "slot": "0" + } + ], + "numberOfBytes": "32" + }, + "t_struct(SPStorage)859_storage": { + "label": "struct SP.SPStorage", + "members": [ + { + "label": "paused", + "type": "t_bool", + "offset": 0, + "slot": "0" + }, + { + "label": "schemaRegistry", + "type": "t_mapping(t_uint64,t_struct(Schema)1314_storage)", + "offset": 0, + "slot": "1" + }, + { + "label": "attestationRegistry", + "type": "t_mapping(t_uint64,t_struct(Attestation)1276_storage)", + "offset": 0, + "slot": "2" + }, + { + "label": "offchainAttestationRegistry", + "type": "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)", + "offset": 0, + "slot": "3" + }, + { + "label": "schemaCounter", + "type": "t_uint64", + "offset": 0, + "slot": "4" + }, + { + "label": "attestationCounter", + "type": "t_uint64", + "offset": 8, + "slot": "4" + }, + { + "label": "initialSchemaCounter", + "type": "t_uint64", + "offset": 16, + "slot": "4" + }, + { + "label": "initialAttestationCounter", + "type": "t_uint64", + "offset": 24, + "slot": "4" + }, + { + "label": "globalHook", + "type": "t_contract(ISPGlobalHook)1156", + "offset": 0, + "slot": "5" + } + ], + "numberOfBytes": "192" + }, + "t_struct(Schema)1314_storage": { + "label": "struct Schema", + "members": [ + { + "label": "registrant", + "type": "t_address", + "offset": 0, + "slot": "0" + }, + { + "label": "revocable", + "type": "t_bool", + "offset": 20, + "slot": "0" + }, + { + "label": "dataLocation", + "type": "t_enum(DataLocation)1290", + "offset": 21, + "slot": "0" + }, + { + "label": "maxValidFor", + "type": "t_uint64", + "offset": 22, + "slot": "0" + }, + { + "label": "hook", + "type": "t_contract(ISPHook)1170", + "offset": 0, + "slot": "1" + }, + { + "label": "timestamp", + "type": "t_uint64", + "offset": 20, + "slot": "1" + }, + { + "label": "data", + "type": "t_string_storage", + "offset": 0, + "slot": "2" + } + ], + "numberOfBytes": "96" + }, + "t_uint64": { + "label": "uint64", + "numberOfBytes": "8" + } + }, + "namespaces": { + "erc7201:ethsign.SP": [ + { + "contract": "SP", + "label": "paused", + "type": "t_bool", + "src": "src/core/SP.sol:19", + "offset": 0, + "slot": "0" + }, + { + "contract": "SP", + "label": "schemaRegistry", + "type": "t_mapping(t_uint64,t_struct(Schema)1314_storage)", + "src": "src/core/SP.sol:20", + "offset": 0, + "slot": "1" + }, + { + "contract": "SP", + "label": "attestationRegistry", + "type": "t_mapping(t_uint64,t_struct(Attestation)1276_storage)", + "src": "src/core/SP.sol:21", + "offset": 0, + "slot": "2" + }, + { + "contract": "SP", + "label": "offchainAttestationRegistry", + "type": "t_mapping(t_string_memory_ptr,t_struct(OffchainAttestation)1282_storage)", + "src": "src/core/SP.sol:22", + "offset": 0, + "slot": "3" + }, + { + "contract": "SP", + "label": "schemaCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:23", + "offset": 0, + "slot": "4" + }, + { + "contract": "SP", + "label": "attestationCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:24", + "offset": 8, + "slot": "4" + }, + { + "contract": "SP", + "label": "initialSchemaCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:25", + "offset": 16, + "slot": "4" + }, + { + "contract": "SP", + "label": "initialAttestationCounter", + "type": "t_uint64", + "src": "src/core/SP.sol:26", + "offset": 24, + "slot": "4" + }, + { + "contract": "SP", + "label": "globalHook", + "type": "t_contract(ISPGlobalHook)1156", + "src": "src/core/SP.sol:27", + "offset": 0, + "slot": "5" + } + ], + "erc7201:openzeppelin.storage.Ownable": [ + { + "contract": "OwnableUpgradeable", + "label": "_owner", + "type": "t_address", + "src": "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol:24", + "offset": 0, + "slot": "0" + } + ], + "erc7201:openzeppelin.storage.Initializable": [ + { + "contract": "Initializable", + "label": "_initialized", + "type": "t_uint64", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:69", + "offset": 0, + "slot": "0" + }, + { + "contract": "Initializable", + "label": "_initializing", + "type": "t_bool", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:73", + "offset": 8, + "slot": "0" + } + ] + } + } + } + } +} diff --git a/hardhat.config.ts b/hardhat.config.ts index c89fe51..06dd2e0 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -38,6 +38,13 @@ const config: HardhatUserConfig = { saveDeployments: true, zksync: false, }, + sepolia: { + chainId: 11155111, + url: `https://eth-sepolia-public.unifra.io`, + accounts: [process.env.PRIVATE_KEY!], + saveDeployments: true, + zksync: false, + }, polygon: { url: "https://polygon-rpc.com", chainId: 137, @@ -75,7 +82,7 @@ const config: HardhatUserConfig = { }, ethereum: { chainId: 1, - url: process.env.ALCHEMY_ETH_RPC!, + url: `https://eth-mainnet.g.alchemy.com/v2/${process.env.ALCHEMY_ETH_API!}`, accounts: [process.env.PRIVATE_KEY!], saveDeployments: true, zksync: false, @@ -115,6 +122,21 @@ const config: HardhatUserConfig = { saveDeployments: true, zksync: false, }, + berachainTestnet: { + chainId: 80085, + url: "https://artio.rpc.berachain.com/", + gasPrice: 40000, + accounts: [process.env.PRIVATE_KEY!], + saveDeployments: true, + zksync: false, + }, + plumeTestnet: { + chainId: 161221135, + url: "https://testnet-rpc.plumenetwork.xyz/http", + accounts: [process.env.PRIVATE_KEY!], + saveDeployments: true, + zksync: false, + }, }, etherscan: { apiKey: { @@ -133,6 +155,8 @@ const config: HardhatUserConfig = { x1: process.env.X1_API_KEY!, base: process.env.BASE_API_KEY!, baseTestnet: process.env.BASE_SEPOLIA_API_KEY!, + plumeTestnet: process.env.PLUME_TESTNET_API_KEY!, + berachainTestnet: process.env.BERACHAIN_TESTNET_API_KEY!, }, customChains: [ { @@ -211,8 +235,24 @@ const config: HardhatUserConfig = { network: "baseTestnet", chainId: 84532, urls: { - apiURL: "https://base-sepolia.blockscout.com/api", - browserURL: "https://base-sepolia.blockscout.com", + apiURL: "https://api-sepolia.basescan.org/api", + browserURL: "https://sepolia.basescan.org", + }, + }, + { + network: "plumeTestnet", + chainId: 161221135, + urls: { + apiURL: "https://testnet-explorer.plumenetwork.xyz/api", + browserURL: "https://testnet-explorer.plumenetwork.xyz/", + }, + }, + { + network: "berachainTestnet", + chainId: 80085, + urls: { + apiURL: "https://api.routescan.io/v2/network/mainnet/evm/80085/etherscan", + browserURL: "https://artio.beratrail.io/", }, }, ],