@enclave-e3/contracts 0.1.5 → 0.1.6

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 (467) hide show
  1. package/README.md +46 -2
  2. package/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.json +135 -0
  3. package/artifacts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/artifacts.d.ts +27 -0
  4. package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.json +77 -0
  5. package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +126 -0
  6. package/artifacts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/artifacts.d.ts +43 -0
  7. package/artifacts/build-info/solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc.json +311 -0
  8. package/artifacts/build-info/solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc.output.json +1 -0
  9. package/artifacts/contracts/Enclave.sol/Enclave.json +239 -147
  10. package/artifacts/contracts/Enclave.sol/artifacts.d.ts +6 -6
  11. package/artifacts/contracts/interfaces/IBondingRegistry.sol/IBondingRegistry.json +881 -0
  12. package/artifacts/contracts/interfaces/IBondingRegistry.sol/artifacts.d.ts +27 -0
  13. package/artifacts/contracts/interfaces/ICiphernodeRegistry.sol/ICiphernodeRegistry.json +326 -10
  14. package/artifacts/contracts/interfaces/ICiphernodeRegistry.sol/artifacts.d.ts +2 -2
  15. package/artifacts/contracts/interfaces/IComputeProvider.sol/IComputeProvider.json +1 -1
  16. package/artifacts/contracts/interfaces/IComputeProvider.sol/artifacts.d.ts +1 -1
  17. package/artifacts/contracts/interfaces/IDecryptionVerifier.sol/IDecryptionVerifier.json +1 -1
  18. package/artifacts/contracts/interfaces/IDecryptionVerifier.sol/artifacts.d.ts +1 -1
  19. package/artifacts/contracts/interfaces/IE3Program.sol/IE3Program.json +21 -3
  20. package/artifacts/contracts/interfaces/IE3Program.sol/artifacts.d.ts +2 -2
  21. package/artifacts/contracts/interfaces/IEnclave.sol/IEnclave.json +247 -27
  22. package/artifacts/contracts/interfaces/IEnclave.sol/artifacts.d.ts +2 -2
  23. package/artifacts/contracts/interfaces/{IRegistryFilter.sol/IRegistryFilter.json → ISlashVerifier.sol/ISlashVerifier.json} +10 -10
  24. package/artifacts/contracts/interfaces/ISlashVerifier.sol/artifacts.d.ts +27 -0
  25. package/artifacts/contracts/interfaces/ISlashingManager.sol/ISlashingManager.json +759 -0
  26. package/artifacts/contracts/interfaces/ISlashingManager.sol/artifacts.d.ts +27 -0
  27. package/artifacts/contracts/lib/ExitQueueLib.sol/ExitQueueLib.json +116 -0
  28. package/artifacts/contracts/lib/ExitQueueLib.sol/artifacts.d.ts +27 -0
  29. package/artifacts/contracts/registry/BondingRegistry.sol/BondingRegistry.json +1217 -0
  30. package/artifacts/contracts/registry/BondingRegistry.sol/artifacts.d.ts +27 -0
  31. package/artifacts/contracts/registry/CiphernodeRegistryOwnable.sol/CiphernodeRegistryOwnable.json +351 -57
  32. package/artifacts/contracts/registry/CiphernodeRegistryOwnable.sol/artifacts.d.ts +6 -6
  33. package/artifacts/contracts/slashing/SlashingManager.sol/SlashingManager.json +1107 -0
  34. package/artifacts/contracts/slashing/SlashingManager.sol/artifacts.d.ts +27 -0
  35. package/artifacts/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.json +328 -12
  36. package/artifacts/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.json +328 -12
  37. package/artifacts/contracts/test/MockCiphernodeRegistry.sol/artifacts.d.ts +8 -8
  38. package/artifacts/contracts/test/MockComputeProvider.sol/MockComputeProvider.json +4 -4
  39. package/artifacts/contracts/test/MockComputeProvider.sol/artifacts.d.ts +4 -4
  40. package/artifacts/contracts/test/MockDecryptionVerifier.sol/MockDecryptionVerifier.json +3 -3
  41. package/artifacts/contracts/test/MockDecryptionVerifier.sol/artifacts.d.ts +3 -3
  42. package/artifacts/contracts/test/MockE3Program.sol/MockE3Program.json +26 -32
  43. package/artifacts/contracts/test/MockE3Program.sol/artifacts.d.ts +4 -4
  44. package/artifacts/contracts/test/MockSlashingVerifier.sol/MockSlashingVerifier.json +38 -0
  45. package/artifacts/contracts/test/MockSlashingVerifier.sol/artifacts.d.ts +27 -0
  46. package/artifacts/contracts/test/MockStableToken.sol/MockUSDC.json +425 -0
  47. package/artifacts/contracts/test/MockStableToken.sol/artifacts.d.ts +27 -0
  48. package/artifacts/contracts/token/EnclaveTicketToken.sol/EnclaveTicketToken.json +1222 -0
  49. package/artifacts/contracts/token/EnclaveTicketToken.sol/artifacts.d.ts +27 -0
  50. package/artifacts/contracts/token/EnclaveToken.sol/EnclaveToken.json +1460 -0
  51. package/artifacts/contracts/token/EnclaveToken.sol/artifacts.d.ts +27 -0
  52. package/artifacts/poseidon-solidity/PoseidonT3.sol/PoseidonT3.json +3 -3
  53. package/artifacts/poseidon-solidity/PoseidonT3.sol/artifacts.d.ts +3 -3
  54. package/contracts/Enclave.sol +230 -81
  55. package/contracts/interfaces/IBondingRegistry.sol +446 -0
  56. package/contracts/interfaces/ICiphernodeRegistry.sol +153 -9
  57. package/contracts/interfaces/IComputeProvider.sol +12 -2
  58. package/contracts/interfaces/IDecryptionVerifier.sol +11 -6
  59. package/contracts/interfaces/IE3.sol +21 -17
  60. package/contracts/interfaces/IE3Program.sol +30 -17
  61. package/contracts/interfaces/IEnclave.sol +90 -16
  62. package/contracts/interfaces/ISlashVerifier.sol +23 -0
  63. package/contracts/interfaces/ISlashingManager.sol +426 -0
  64. package/contracts/lib/ExitQueueLib.sol +490 -0
  65. package/contracts/registry/BondingRegistry.sol +737 -0
  66. package/contracts/registry/CiphernodeRegistryOwnable.sol +393 -26
  67. package/contracts/slashing/SlashingManager.sol +367 -0
  68. package/contracts/test/MockCiphernodeRegistry.sol +118 -24
  69. package/contracts/test/MockComputeProvider.sol +2 -2
  70. package/contracts/test/MockE3Program.sol +17 -14
  71. package/contracts/test/MockSlashingVerifier.sol +19 -0
  72. package/contracts/test/MockStableToken.sol +28 -0
  73. package/contracts/token/EnclaveTicketToken.sol +243 -0
  74. package/contracts/token/EnclaveToken.sol +267 -0
  75. package/dist/hardhat.config.d.ts.map +1 -1
  76. package/dist/hardhat.config.js +35 -16
  77. package/dist/ignition/modules/{mockInputValidator.d.ts → bondingRegistry.d.ts} +1 -1
  78. package/dist/ignition/modules/bondingRegistry.d.ts.map +1 -0
  79. package/dist/ignition/modules/bondingRegistry.js +35 -0
  80. package/dist/ignition/modules/ciphernodeRegistry.d.ts.map +1 -1
  81. package/dist/ignition/modules/ciphernodeRegistry.js +12 -2
  82. package/dist/ignition/modules/enclave.d.ts.map +1 -1
  83. package/dist/ignition/modules/enclave.js +16 -7
  84. package/dist/ignition/modules/{naiveRegistryFilter.d.ts → enclaveTicketToken.d.ts} +1 -1
  85. package/dist/ignition/modules/enclaveTicketToken.d.ts.map +1 -0
  86. package/dist/ignition/modules/enclaveTicketToken.js +17 -0
  87. package/dist/ignition/modules/enclaveToken.d.ts +3 -0
  88. package/dist/ignition/modules/enclaveToken.d.ts.map +1 -0
  89. package/dist/ignition/modules/{mockInputValidator.js → enclaveToken.js} +4 -4
  90. package/dist/ignition/modules/mockCiphernodeRegistry.d.ts.map +1 -1
  91. package/dist/ignition/modules/mockCiphernodeRegistry.js +0 -1
  92. package/dist/ignition/modules/mockCiphernodeRegistryEmptyKey.d.ts.map +1 -1
  93. package/dist/ignition/modules/mockCiphernodeRegistryEmptyKey.js +0 -1
  94. package/dist/ignition/modules/mockComputeProvider.d.ts.map +1 -1
  95. package/dist/ignition/modules/mockComputeProvider.js +0 -1
  96. package/dist/ignition/modules/mockDecryptionVerifier.d.ts.map +1 -1
  97. package/dist/ignition/modules/mockDecryptionVerifier.js +0 -1
  98. package/dist/ignition/modules/mockE3Program.d.ts.map +1 -1
  99. package/dist/ignition/modules/mockE3Program.js +1 -3
  100. package/dist/ignition/modules/mockSlashingVerifier.d.ts +3 -0
  101. package/dist/ignition/modules/mockSlashingVerifier.d.ts.map +1 -0
  102. package/dist/ignition/modules/mockSlashingVerifier.js +10 -0
  103. package/dist/ignition/modules/mockStableToken.d.ts +3 -0
  104. package/dist/ignition/modules/mockStableToken.d.ts.map +1 -0
  105. package/dist/ignition/modules/mockStableToken.js +11 -0
  106. package/dist/ignition/modules/poseidonT3.d.ts.map +1 -1
  107. package/dist/ignition/modules/poseidonT3.js +0 -1
  108. package/dist/ignition/modules/slashingManager.d.ts +3 -0
  109. package/dist/ignition/modules/slashingManager.d.ts.map +1 -0
  110. package/dist/ignition/modules/slashingManager.js +16 -0
  111. package/dist/scripts/cleanIgnitionState.d.ts +12 -0
  112. package/dist/scripts/cleanIgnitionState.d.ts.map +1 -0
  113. package/dist/scripts/cleanIgnitionState.js +41 -0
  114. package/dist/scripts/deployAndSave/bondingRegistry.d.ts +38 -0
  115. package/dist/scripts/deployAndSave/bondingRegistry.d.ts.map +1 -0
  116. package/dist/scripts/deployAndSave/bondingRegistry.js +133 -0
  117. package/dist/scripts/deployAndSave/ciphernodeRegistryOwnable.d.ts +11 -1
  118. package/dist/scripts/deployAndSave/ciphernodeRegistryOwnable.d.ts.map +1 -1
  119. package/dist/scripts/deployAndSave/ciphernodeRegistryOwnable.js +76 -19
  120. package/dist/scripts/deployAndSave/enclave.d.ts +16 -2
  121. package/dist/scripts/deployAndSave/enclave.d.ts.map +1 -1
  122. package/dist/scripts/deployAndSave/enclave.js +89 -22
  123. package/dist/scripts/deployAndSave/enclaveTicketToken.d.ts +20 -0
  124. package/dist/scripts/deployAndSave/enclaveTicketToken.d.ts.map +1 -0
  125. package/dist/scripts/deployAndSave/enclaveTicketToken.js +41 -0
  126. package/dist/scripts/deployAndSave/enclaveToken.d.ts +18 -0
  127. package/dist/scripts/deployAndSave/enclaveToken.d.ts.map +1 -0
  128. package/dist/scripts/deployAndSave/enclaveToken.js +57 -0
  129. package/dist/scripts/deployAndSave/mockComputeProvider.d.ts.map +1 -1
  130. package/dist/scripts/deployAndSave/mockComputeProvider.js +5 -5
  131. package/dist/scripts/deployAndSave/mockDecryptionVerifier.d.ts.map +1 -1
  132. package/dist/scripts/deployAndSave/mockDecryptionVerifier.js +5 -5
  133. package/dist/scripts/deployAndSave/mockProgram.d.ts +1 -2
  134. package/dist/scripts/deployAndSave/mockProgram.d.ts.map +1 -1
  135. package/dist/scripts/deployAndSave/mockProgram.js +7 -19
  136. package/dist/scripts/deployAndSave/mockStableToken.d.ts +18 -0
  137. package/dist/scripts/deployAndSave/mockStableToken.d.ts.map +1 -0
  138. package/dist/scripts/deployAndSave/mockStableToken.js +36 -0
  139. package/dist/scripts/deployAndSave/poseidonT3.d.ts +11 -0
  140. package/dist/scripts/deployAndSave/poseidonT3.d.ts.map +1 -0
  141. package/dist/scripts/deployAndSave/poseidonT3.js +41 -0
  142. package/dist/scripts/deployAndSave/slashingManager.d.ts +19 -0
  143. package/dist/scripts/deployAndSave/slashingManager.d.ts.map +1 -0
  144. package/dist/scripts/deployAndSave/slashingManager.js +38 -0
  145. package/dist/scripts/deployEnclave.d.ts.map +1 -1
  146. package/dist/scripts/deployEnclave.js +109 -32
  147. package/dist/scripts/deployMocks.d.ts +0 -1
  148. package/dist/scripts/deployMocks.d.ts.map +1 -1
  149. package/dist/scripts/deployMocks.js +0 -7
  150. package/dist/scripts/index.d.ts +7 -2
  151. package/dist/scripts/index.d.ts.map +1 -1
  152. package/dist/scripts/index.js +7 -2
  153. package/dist/scripts/proxy.d.ts +22 -0
  154. package/dist/scripts/proxy.d.ts.map +1 -0
  155. package/dist/scripts/proxy.js +36 -0
  156. package/dist/scripts/runVerification.d.ts +2 -0
  157. package/dist/scripts/runVerification.d.ts.map +1 -0
  158. package/dist/scripts/runVerification.js +16 -0
  159. package/dist/scripts/upgrade/bondingRegistry.d.ts +6 -0
  160. package/dist/scripts/upgrade/bondingRegistry.d.ts.map +1 -0
  161. package/dist/scripts/upgrade/bondingRegistry.js +49 -0
  162. package/dist/scripts/upgrade/ciphernodeRegistryOwnable.d.ts +6 -0
  163. package/dist/scripts/upgrade/ciphernodeRegistryOwnable.d.ts.map +1 -0
  164. package/dist/scripts/upgrade/ciphernodeRegistryOwnable.js +52 -0
  165. package/dist/scripts/upgrade/enclave.d.ts +6 -0
  166. package/dist/scripts/upgrade/enclave.d.ts.map +1 -0
  167. package/dist/scripts/upgrade/enclave.js +49 -0
  168. package/dist/scripts/utils.d.ts +51 -2
  169. package/dist/scripts/utils.d.ts.map +1 -1
  170. package/dist/scripts/utils.js +67 -4
  171. package/dist/scripts/verify.d.ts +6 -0
  172. package/dist/scripts/verify.d.ts.map +1 -0
  173. package/dist/scripts/verify.js +142 -0
  174. package/dist/tasks/ciphernode.d.ts +2 -0
  175. package/dist/tasks/ciphernode.d.ts.map +1 -1
  176. package/dist/tasks/ciphernode.js +290 -19
  177. package/dist/tasks/enclave.d.ts.map +1 -1
  178. package/dist/tasks/enclave.js +76 -31
  179. package/dist/test/Enclave.spec.js +377 -370
  180. package/dist/test/Registry/BondingRegistry.spec.d.ts +2 -0
  181. package/dist/test/Registry/BondingRegistry.spec.d.ts.map +1 -0
  182. package/dist/test/Registry/BondingRegistry.spec.js +684 -0
  183. package/dist/test/Registry/CiphernodeRegistryOwnable.spec.d.ts.map +1 -0
  184. package/dist/test/Registry/CiphernodeRegistryOwnable.spec.js +374 -0
  185. package/dist/test/Slashing/SlashingManager.spec.d.ts +2 -0
  186. package/dist/test/Slashing/SlashingManager.spec.d.ts.map +1 -0
  187. package/dist/test/Slashing/SlashingManager.spec.js +672 -0
  188. package/dist/types/@openzeppelin/contracts/index.d.ts +3 -0
  189. package/dist/types/@openzeppelin/contracts/index.d.ts.map +1 -0
  190. package/dist/types/@openzeppelin/contracts/proxy/index.d.ts +3 -0
  191. package/dist/types/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
  192. package/dist/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.d.ts +97 -0
  193. package/dist/types/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.d.ts.map +1 -0
  194. package/dist/types/{contracts/registry/NaiveRegistryFilter.js → @openzeppelin/contracts/proxy/transparent/ProxyAdmin.js} +0 -4
  195. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.d.ts +81 -0
  196. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.d.ts.map +1 -0
  197. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.js +12 -0
  198. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.d.ts +52 -0
  199. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.d.ts.map +1 -0
  200. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.js +8 -0
  201. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +3 -0
  202. package/dist/types/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts.map +1 -0
  203. package/dist/types/@openzeppelin/contracts/proxy/transparent/index.d.ts +4 -0
  204. package/dist/types/@openzeppelin/contracts/proxy/transparent/index.d.ts.map +1 -0
  205. package/dist/types/@openzeppelin/index.d.ts +3 -0
  206. package/dist/types/@openzeppelin/index.d.ts.map +1 -0
  207. package/dist/types/contracts/Enclave.d.ts +126 -53
  208. package/dist/types/contracts/Enclave.d.ts.map +1 -1
  209. package/dist/types/contracts/Enclave.js +12 -0
  210. package/dist/types/contracts/index.d.ts +6 -0
  211. package/dist/types/contracts/index.d.ts.map +1 -1
  212. package/dist/types/contracts/interfaces/IBondingRegistry.d.ts +622 -0
  213. package/dist/types/contracts/interfaces/IBondingRegistry.d.ts.map +1 -0
  214. package/dist/types/contracts/interfaces/IBondingRegistry.js +24 -0
  215. package/dist/types/contracts/interfaces/ICiphernodeRegistry.d.ts +245 -15
  216. package/dist/types/contracts/interfaces/ICiphernodeRegistry.d.ts.map +1 -1
  217. package/dist/types/contracts/interfaces/ICiphernodeRegistry.js +16 -0
  218. package/dist/types/contracts/interfaces/IE3Program.d.ts +20 -10
  219. package/dist/types/contracts/interfaces/IE3Program.d.ts.map +1 -1
  220. package/dist/types/contracts/interfaces/IEnclave.d.ts +149 -20
  221. package/dist/types/contracts/interfaces/IEnclave.d.ts.map +1 -1
  222. package/dist/types/contracts/interfaces/IEnclave.js +12 -0
  223. package/dist/types/contracts/interfaces/{IRegistryFilter.d.ts → ISlashVerifier.d.ts} +16 -16
  224. package/dist/types/contracts/interfaces/ISlashVerifier.d.ts.map +1 -0
  225. package/dist/types/contracts/interfaces/ISlashVerifier.js +1 -0
  226. package/dist/types/contracts/interfaces/ISlashingManager.d.ts +384 -0
  227. package/dist/types/contracts/interfaces/ISlashingManager.d.ts.map +1 -0
  228. package/dist/types/contracts/interfaces/ISlashingManager.js +24 -0
  229. package/dist/types/contracts/interfaces/index.d.ts +3 -2
  230. package/dist/types/contracts/interfaces/index.d.ts.map +1 -1
  231. package/dist/types/contracts/lib/ExitQueueLib.d.ts +73 -0
  232. package/dist/types/contracts/lib/ExitQueueLib.d.ts.map +1 -0
  233. package/dist/types/contracts/lib/ExitQueueLib.js +12 -0
  234. package/dist/types/contracts/lib/index.d.ts +2 -0
  235. package/dist/types/contracts/lib/index.d.ts.map +1 -0
  236. package/dist/types/contracts/lib/index.js +1 -0
  237. package/dist/types/contracts/registry/BondingRegistry.d.ts +821 -0
  238. package/dist/types/contracts/registry/BondingRegistry.d.ts.map +1 -0
  239. package/dist/types/contracts/registry/BondingRegistry.js +44 -0
  240. package/dist/types/contracts/registry/CiphernodeRegistryOwnable.d.ts +194 -34
  241. package/dist/types/contracts/registry/CiphernodeRegistryOwnable.d.ts.map +1 -1
  242. package/dist/types/contracts/registry/CiphernodeRegistryOwnable.js +20 -0
  243. package/dist/types/contracts/registry/index.d.ts +1 -1
  244. package/dist/types/contracts/registry/index.d.ts.map +1 -1
  245. package/dist/types/contracts/slashing/SlashingManager.d.ts +592 -0
  246. package/dist/types/contracts/slashing/SlashingManager.d.ts.map +1 -0
  247. package/dist/types/contracts/slashing/SlashingManager.js +36 -0
  248. package/dist/types/contracts/slashing/index.d.ts +2 -0
  249. package/dist/types/contracts/slashing/index.d.ts.map +1 -0
  250. package/dist/types/contracts/slashing/index.js +1 -0
  251. package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.d.ts +247 -17
  252. package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.d.ts.map +1 -1
  253. package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry.js +16 -0
  254. package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.d.ts +247 -17
  255. package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.d.ts.map +1 -1
  256. package/dist/types/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey.js +16 -0
  257. package/dist/types/contracts/test/MockE3Program.d.ts +20 -14
  258. package/dist/types/contracts/test/MockE3Program.d.ts.map +1 -1
  259. package/dist/types/contracts/test/{MockInputValidator.d.ts → MockSlashingVerifier.d.ts} +15 -15
  260. package/dist/types/contracts/test/MockSlashingVerifier.d.ts.map +1 -0
  261. package/dist/types/contracts/test/MockSlashingVerifier.js +1 -0
  262. package/dist/types/contracts/test/MockStableToken.sol/MockUSDC.d.ts +227 -0
  263. package/dist/types/contracts/test/MockStableToken.sol/MockUSDC.d.ts.map +1 -0
  264. package/dist/types/contracts/test/MockStableToken.sol/MockUSDC.js +12 -0
  265. package/dist/types/contracts/test/MockStableToken.sol/index.d.ts +2 -0
  266. package/dist/types/contracts/test/MockStableToken.sol/index.d.ts.map +1 -0
  267. package/dist/types/contracts/test/MockStableToken.sol/index.js +1 -0
  268. package/dist/types/contracts/test/index.d.ts +3 -3
  269. package/dist/types/contracts/test/index.d.ts.map +1 -1
  270. package/dist/types/contracts/token/EnclaveTicketToken.d.ts +574 -0
  271. package/dist/types/contracts/token/EnclaveTicketToken.d.ts.map +1 -0
  272. package/dist/types/contracts/token/EnclaveTicketToken.js +24 -0
  273. package/dist/types/contracts/token/EnclaveToken.d.ts +775 -0
  274. package/dist/types/contracts/token/EnclaveToken.d.ts.map +1 -0
  275. package/dist/types/contracts/token/EnclaveToken.js +48 -0
  276. package/dist/types/contracts/token/index.d.ts +3 -0
  277. package/dist/types/contracts/token/index.d.ts.map +1 -0
  278. package/dist/types/contracts/token/index.js +1 -0
  279. package/dist/types/factories/@openzeppelin/contracts/index.d.ts +2 -0
  280. package/dist/types/factories/@openzeppelin/contracts/index.d.ts.map +1 -0
  281. package/dist/types/factories/@openzeppelin/contracts/index.js +4 -0
  282. package/dist/types/factories/@openzeppelin/contracts/proxy/index.d.ts +2 -0
  283. package/dist/types/factories/@openzeppelin/contracts/proxy/index.d.ts.map +1 -0
  284. package/dist/types/factories/@openzeppelin/contracts/proxy/index.js +4 -0
  285. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts +118 -0
  286. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts.map +1 -0
  287. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.js +157 -0
  288. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.d.ts +57 -0
  289. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.d.ts.map +1 -0
  290. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy__factory.js +78 -0
  291. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts +105 -0
  292. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts.map +1 -0
  293. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.js +141 -0
  294. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts +3 -0
  295. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.d.ts.map +1 -0
  296. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.js +5 -0
  297. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/index.d.ts +3 -0
  298. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/index.d.ts.map +1 -0
  299. package/dist/types/factories/@openzeppelin/contracts/proxy/transparent/index.js +5 -0
  300. package/dist/types/factories/@openzeppelin/index.d.ts +2 -0
  301. package/dist/types/factories/@openzeppelin/index.d.ts.map +1 -0
  302. package/dist/types/factories/@openzeppelin/index.js +4 -0
  303. package/dist/types/factories/contracts/Enclave__factory.d.ts +190 -104
  304. package/dist/types/factories/contracts/Enclave__factory.d.ts.map +1 -1
  305. package/dist/types/factories/contracts/Enclave__factory.js +241 -134
  306. package/dist/types/factories/contracts/index.d.ts +3 -0
  307. package/dist/types/factories/contracts/index.d.ts.map +1 -1
  308. package/dist/types/factories/contracts/index.js +3 -0
  309. package/dist/types/factories/contracts/interfaces/IBondingRegistry__factory.d.ts +678 -0
  310. package/dist/types/factories/contracts/interfaces/IBondingRegistry__factory.d.ts.map +1 -0
  311. package/dist/types/factories/contracts/interfaces/IBondingRegistry__factory.js +882 -0
  312. package/dist/types/factories/contracts/interfaces/ICiphernodeRegistry__factory.d.ts +253 -9
  313. package/dist/types/factories/contracts/interfaces/ICiphernodeRegistry__factory.d.ts.map +1 -1
  314. package/dist/types/factories/contracts/interfaces/ICiphernodeRegistry__factory.js +325 -9
  315. package/dist/types/factories/contracts/interfaces/IE3Program__factory.d.ts +16 -2
  316. package/dist/types/factories/contracts/interfaces/IE3Program__factory.d.ts.map +1 -1
  317. package/dist/types/factories/contracts/interfaces/IE3Program__factory.js +20 -2
  318. package/dist/types/factories/contracts/interfaces/IEnclave__factory.d.ts +190 -24
  319. package/dist/types/factories/contracts/interfaces/IEnclave__factory.d.ts.map +1 -1
  320. package/dist/types/factories/contracts/interfaces/IEnclave__factory.js +246 -26
  321. package/dist/types/factories/contracts/interfaces/ISlashVerifier__factory.d.ts +26 -0
  322. package/dist/types/factories/contracts/interfaces/ISlashVerifier__factory.d.ts.map +1 -0
  323. package/dist/types/factories/contracts/interfaces/{IRegistryFilter__factory.js → ISlashVerifier__factory.js} +7 -7
  324. package/dist/types/factories/contracts/interfaces/ISlashingManager__factory.d.ts +594 -0
  325. package/dist/types/factories/contracts/interfaces/ISlashingManager__factory.d.ts.map +1 -0
  326. package/dist/types/factories/contracts/interfaces/ISlashingManager__factory.js +760 -0
  327. package/dist/types/factories/contracts/interfaces/index.d.ts +3 -2
  328. package/dist/types/factories/contracts/interfaces/index.d.ts.map +1 -1
  329. package/dist/types/factories/contracts/interfaces/index.js +3 -2
  330. package/dist/types/factories/contracts/lib/ExitQueueLib__factory.d.ts +107 -0
  331. package/dist/types/factories/contracts/lib/ExitQueueLib__factory.d.ts.map +1 -0
  332. package/dist/types/factories/contracts/lib/ExitQueueLib__factory.js +138 -0
  333. package/dist/types/factories/contracts/lib/index.d.ts +2 -0
  334. package/dist/types/factories/contracts/lib/index.d.ts.map +1 -0
  335. package/dist/types/factories/contracts/lib/index.js +4 -0
  336. package/dist/types/factories/contracts/registry/BondingRegistry__factory.d.ts +958 -0
  337. package/dist/types/factories/contracts/registry/BondingRegistry__factory.d.ts.map +1 -0
  338. package/dist/types/factories/contracts/registry/BondingRegistry__factory.js +1239 -0
  339. package/dist/types/factories/contracts/registry/CiphernodeRegistryOwnable__factory.d.ts +272 -40
  340. package/dist/types/factories/contracts/registry/CiphernodeRegistryOwnable__factory.d.ts.map +1 -1
  341. package/dist/types/factories/contracts/registry/CiphernodeRegistryOwnable__factory.js +343 -49
  342. package/dist/types/factories/contracts/registry/index.d.ts +1 -1
  343. package/dist/types/factories/contracts/registry/index.d.ts.map +1 -1
  344. package/dist/types/factories/contracts/registry/index.js +1 -1
  345. package/dist/types/factories/contracts/slashing/SlashingManager__factory.d.ts +879 -0
  346. package/dist/types/factories/contracts/slashing/SlashingManager__factory.d.ts.map +1 -0
  347. package/dist/types/factories/contracts/slashing/SlashingManager__factory.js +1129 -0
  348. package/dist/types/factories/contracts/slashing/index.d.ts +2 -0
  349. package/dist/types/factories/contracts/slashing/index.d.ts.map +1 -0
  350. package/dist/types/factories/contracts/slashing/index.js +4 -0
  351. package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey__factory.d.ts +254 -10
  352. package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey__factory.d.ts.map +1 -1
  353. package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistryEmptyKey__factory.js +326 -10
  354. package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry__factory.d.ts +254 -10
  355. package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry__factory.d.ts.map +1 -1
  356. package/dist/types/factories/contracts/test/MockCiphernodeRegistry.sol/MockCiphernodeRegistry__factory.js +326 -10
  357. package/dist/types/factories/contracts/test/MockComputeProvider__factory.d.ts +2 -2
  358. package/dist/types/factories/contracts/test/MockComputeProvider__factory.d.ts.map +1 -1
  359. package/dist/types/factories/contracts/test/MockComputeProvider__factory.js +2 -2
  360. package/dist/types/factories/contracts/test/MockDecryptionVerifier__factory.d.ts +1 -1
  361. package/dist/types/factories/contracts/test/MockDecryptionVerifier__factory.d.ts.map +1 -1
  362. package/dist/types/factories/contracts/test/MockDecryptionVerifier__factory.js +1 -1
  363. package/dist/types/factories/contracts/test/MockE3Program__factory.d.ts +23 -27
  364. package/dist/types/factories/contracts/test/MockE3Program__factory.d.ts.map +1 -1
  365. package/dist/types/factories/contracts/test/MockE3Program__factory.js +28 -34
  366. package/dist/types/factories/contracts/test/MockSlashingVerifier__factory.d.ts +43 -0
  367. package/dist/types/factories/contracts/test/MockSlashingVerifier__factory.d.ts.map +1 -0
  368. package/dist/types/factories/contracts/test/MockSlashingVerifier__factory.js +60 -0
  369. package/dist/types/factories/contracts/test/MockStableToken.sol/MockUSDC__factory.d.ts +338 -0
  370. package/dist/types/factories/contracts/test/MockStableToken.sol/MockUSDC__factory.d.ts.map +1 -0
  371. package/dist/types/factories/contracts/test/MockStableToken.sol/MockUSDC__factory.js +447 -0
  372. package/dist/types/factories/contracts/test/MockStableToken.sol/index.d.ts +2 -0
  373. package/dist/types/factories/contracts/test/MockStableToken.sol/index.d.ts.map +1 -0
  374. package/dist/types/factories/contracts/test/MockStableToken.sol/index.js +4 -0
  375. package/dist/types/factories/contracts/test/index.d.ts +2 -2
  376. package/dist/types/factories/contracts/test/index.d.ts.map +1 -1
  377. package/dist/types/factories/contracts/test/index.js +2 -2
  378. package/dist/types/factories/contracts/token/EnclaveTicketToken__factory.d.ts +894 -0
  379. package/dist/types/factories/contracts/token/EnclaveTicketToken__factory.d.ts.map +1 -0
  380. package/dist/types/factories/contracts/token/EnclaveTicketToken__factory.js +1175 -0
  381. package/dist/types/factories/contracts/token/EnclaveToken__factory.d.ts +1101 -0
  382. package/dist/types/factories/contracts/token/EnclaveToken__factory.d.ts.map +1 -0
  383. package/dist/types/factories/contracts/token/EnclaveToken__factory.js +1439 -0
  384. package/dist/types/factories/contracts/token/index.d.ts +3 -0
  385. package/dist/types/factories/contracts/token/index.d.ts.map +1 -0
  386. package/dist/types/factories/contracts/token/index.js +5 -0
  387. package/dist/types/factories/index.d.ts +1 -0
  388. package/dist/types/factories/index.d.ts.map +1 -1
  389. package/dist/types/factories/index.js +1 -0
  390. package/dist/types/factories/poseidon-solidity/PoseidonT3__factory.d.ts +1 -1
  391. package/dist/types/factories/poseidon-solidity/PoseidonT3__factory.d.ts.map +1 -1
  392. package/dist/types/factories/poseidon-solidity/PoseidonT3__factory.js +1 -1
  393. package/dist/types/index.d.ts +28 -12
  394. package/dist/types/index.d.ts.map +1 -1
  395. package/dist/types/index.js +13 -6
  396. package/package.json +30 -21
  397. package/LICENSE.md +0 -165
  398. package/artifacts/build-info/solc-0_8_27-97c5c59c2349d6c07bd9b7583fed40a5ace84d56.json +0 -130
  399. package/artifacts/build-info/solc-0_8_27-97c5c59c2349d6c07bd9b7583fed40a5ace84d56.output.json +0 -1
  400. package/artifacts/contracts/interfaces/IInputValidator.sol/IInputValidator.json +0 -38
  401. package/artifacts/contracts/interfaces/IInputValidator.sol/artifacts.d.ts +0 -27
  402. package/artifacts/contracts/interfaces/IRegistryFilter.sol/artifacts.d.ts +0 -27
  403. package/artifacts/contracts/registry/NaiveRegistryFilter.sol/NaiveRegistryFilter.json +0 -309
  404. package/artifacts/contracts/registry/NaiveRegistryFilter.sol/artifacts.d.ts +0 -27
  405. package/artifacts/contracts/test/MockInputValidator.sol/MockInputValidator.json +0 -43
  406. package/artifacts/contracts/test/MockInputValidator.sol/artifacts.d.ts +0 -27
  407. package/artifacts/contracts/test/MockRegistryFilter.sol/IRegistry.json +0 -37
  408. package/artifacts/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.json +0 -262
  409. package/artifacts/contracts/test/MockRegistryFilter.sol/artifacts.d.ts +0 -43
  410. package/contracts/interfaces/IInputValidator.sol +0 -18
  411. package/contracts/interfaces/IRegistryFilter.sol +0 -13
  412. package/contracts/registry/NaiveRegistryFilter.sol +0 -124
  413. package/contracts/test/MockInputValidator.sol +0 -29
  414. package/contracts/test/MockRegistryFilter.sol +0 -117
  415. package/dist/ignition/modules/mockInputValidator.d.ts.map +0 -1
  416. package/dist/ignition/modules/naiveRegistryFilter.d.ts.map +0 -1
  417. package/dist/ignition/modules/naiveRegistryFilter.js +0 -16
  418. package/dist/scripts/deployAndSave/mockInputValidator.d.ts +0 -6
  419. package/dist/scripts/deployAndSave/mockInputValidator.d.ts.map +0 -1
  420. package/dist/scripts/deployAndSave/mockInputValidator.js +0 -18
  421. package/dist/scripts/deployAndSave/naiveRegistryFilter.d.ts +0 -11
  422. package/dist/scripts/deployAndSave/naiveRegistryFilter.d.ts.map +0 -1
  423. package/dist/scripts/deployAndSave/naiveRegistryFilter.js +0 -41
  424. package/dist/test/CiphernodeRegistry/CiphernodeRegistryOwnable.spec.d.ts.map +0 -1
  425. package/dist/test/CiphernodeRegistry/CiphernodeRegistryOwnable.spec.js +0 -279
  426. package/dist/test/CiphernodeRegistry/NaiveRegistryFilter.spec.d.ts +0 -2
  427. package/dist/test/CiphernodeRegistry/NaiveRegistryFilter.spec.d.ts.map +0 -1
  428. package/dist/test/CiphernodeRegistry/NaiveRegistryFilter.spec.js +0 -160
  429. package/dist/types/contracts/interfaces/IInputValidator.d.ts +0 -36
  430. package/dist/types/contracts/interfaces/IInputValidator.d.ts.map +0 -1
  431. package/dist/types/contracts/interfaces/IRegistryFilter.d.ts.map +0 -1
  432. package/dist/types/contracts/registry/NaiveRegistryFilter.d.ts +0 -187
  433. package/dist/types/contracts/registry/NaiveRegistryFilter.d.ts.map +0 -1
  434. package/dist/types/contracts/test/MockInputValidator.d.ts.map +0 -1
  435. package/dist/types/contracts/test/MockRegistryFilter.sol/IRegistry.d.ts +0 -38
  436. package/dist/types/contracts/test/MockRegistryFilter.sol/IRegistry.d.ts.map +0 -1
  437. package/dist/types/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.d.ts +0 -163
  438. package/dist/types/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.d.ts.map +0 -1
  439. package/dist/types/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter.js +0 -8
  440. package/dist/types/contracts/test/MockRegistryFilter.sol/index.d.ts +0 -3
  441. package/dist/types/contracts/test/MockRegistryFilter.sol/index.d.ts.map +0 -1
  442. package/dist/types/factories/contracts/interfaces/IInputValidator__factory.d.ts +0 -26
  443. package/dist/types/factories/contracts/interfaces/IInputValidator__factory.d.ts.map +0 -1
  444. package/dist/types/factories/contracts/interfaces/IInputValidator__factory.js +0 -39
  445. package/dist/types/factories/contracts/interfaces/IRegistryFilter__factory.d.ts +0 -26
  446. package/dist/types/factories/contracts/interfaces/IRegistryFilter__factory.d.ts.map +0 -1
  447. package/dist/types/factories/contracts/registry/NaiveRegistryFilter__factory.d.ts +0 -251
  448. package/dist/types/factories/contracts/registry/NaiveRegistryFilter__factory.d.ts.map +0 -1
  449. package/dist/types/factories/contracts/registry/NaiveRegistryFilter__factory.js +0 -331
  450. package/dist/types/factories/contracts/test/MockInputValidator__factory.d.ts +0 -47
  451. package/dist/types/factories/contracts/test/MockInputValidator__factory.d.ts.map +0 -1
  452. package/dist/types/factories/contracts/test/MockInputValidator__factory.js +0 -65
  453. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/IRegistry__factory.d.ts +0 -26
  454. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/IRegistry__factory.d.ts.map +0 -1
  455. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/IRegistry__factory.js +0 -38
  456. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter__factory.d.ts +0 -216
  457. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter__factory.d.ts.map +0 -1
  458. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/MockNaiveRegistryFilter__factory.js +0 -284
  459. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/index.d.ts +0 -3
  460. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/index.d.ts.map +0 -1
  461. package/dist/types/factories/contracts/test/MockRegistryFilter.sol/index.js +0 -5
  462. /package/dist/test/{CiphernodeRegistry → Registry}/CiphernodeRegistryOwnable.spec.d.ts +0 -0
  463. /package/dist/types/{contracts/test/MockRegistryFilter.sol → @openzeppelin/contracts}/index.js +0 -0
  464. /package/dist/types/{contracts/interfaces/IInputValidator.js → @openzeppelin/contracts/proxy/index.js} +0 -0
  465. /package/dist/types/{contracts/interfaces/IRegistryFilter.js → @openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/index.js} +0 -0
  466. /package/dist/types/{contracts/test/MockInputValidator.js → @openzeppelin/contracts/proxy/transparent/index.js} +0 -0
  467. /package/dist/types/{contracts/test/MockRegistryFilter.sol/IRegistry.js → @openzeppelin/index.js} +0 -0
package/README.md CHANGED
@@ -47,12 +47,56 @@ pnpm deploy:mocks --network localhost
47
47
  This will ensure that you are a local node running, as well as that there are no
48
48
  conflicting deployments stored in localhost.
49
49
 
50
+ ## Configuration
51
+
52
+ ### Using Environment Variables (Development)
53
+
54
+ For development, you can set your private key in a `.env` file:
55
+
56
+ ```sh
57
+ # .env
58
+ PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
59
+ ```
60
+
61
+ ### Using Hardhat Configuration Variables (Production)
62
+
63
+ For production, it's recommended to use Hardhat's configuration variables
64
+ system:
65
+
66
+ ```sh
67
+ # Set your configuration variable (securely stored)
68
+ npx hardhat vars set PRIVATE_KEY
69
+
70
+ ```
71
+
72
+ Then update `hardhat.config.ts` to use configuration variables:
73
+
74
+ ```typescript
75
+ import { vars } from "hardhat/config";
76
+
77
+ const privateKey = vars.get("PRIVATE_KEY", "");
78
+ ```
79
+
50
80
  ## Registering a Ciphernode
51
81
 
52
- To add a ciphernode to the registry, run
82
+ The tasks use the first signer configured in your Hardhat network configuration.
83
+
84
+ To add a ciphernode to the registry:
85
+
86
+ ```sh
87
+ pnpm ciphernode:add --network [network]
88
+ ```
89
+
90
+ Options:
91
+
92
+ - `--license-bond-amount`: Amount of ENCL to bond (default: 1000 ENCL)
93
+ - `--ticket-amount`: Amount of USDC for tickets (default: 1000 USDC)
94
+
95
+ For testing/development, you can also use the admin task to register any
96
+ ciphernode address:
53
97
 
54
98
  ```sh
55
- pnpm ciphernode:add --network [network] --ciphernode-address [address]
99
+ pnpm ciphernode:admin-add --network localhost --ciphernode-address [address]
56
100
  ```
57
101
 
58
102
  To request a new committee, run
@@ -0,0 +1,135 @@
1
+ {
2
+ "_format": "hh3-artifact-1",
3
+ "contractName": "ProxyAdmin",
4
+ "sourceName": "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "initialOwner",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "stateMutability": "nonpayable",
15
+ "type": "constructor"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "address",
21
+ "name": "owner",
22
+ "type": "address"
23
+ }
24
+ ],
25
+ "name": "OwnableInvalidOwner",
26
+ "type": "error"
27
+ },
28
+ {
29
+ "inputs": [
30
+ {
31
+ "internalType": "address",
32
+ "name": "account",
33
+ "type": "address"
34
+ }
35
+ ],
36
+ "name": "OwnableUnauthorizedAccount",
37
+ "type": "error"
38
+ },
39
+ {
40
+ "anonymous": false,
41
+ "inputs": [
42
+ {
43
+ "indexed": true,
44
+ "internalType": "address",
45
+ "name": "previousOwner",
46
+ "type": "address"
47
+ },
48
+ {
49
+ "indexed": true,
50
+ "internalType": "address",
51
+ "name": "newOwner",
52
+ "type": "address"
53
+ }
54
+ ],
55
+ "name": "OwnershipTransferred",
56
+ "type": "event"
57
+ },
58
+ {
59
+ "inputs": [],
60
+ "name": "UPGRADE_INTERFACE_VERSION",
61
+ "outputs": [
62
+ {
63
+ "internalType": "string",
64
+ "name": "",
65
+ "type": "string"
66
+ }
67
+ ],
68
+ "stateMutability": "view",
69
+ "type": "function"
70
+ },
71
+ {
72
+ "inputs": [],
73
+ "name": "owner",
74
+ "outputs": [
75
+ {
76
+ "internalType": "address",
77
+ "name": "",
78
+ "type": "address"
79
+ }
80
+ ],
81
+ "stateMutability": "view",
82
+ "type": "function"
83
+ },
84
+ {
85
+ "inputs": [],
86
+ "name": "renounceOwnership",
87
+ "outputs": [],
88
+ "stateMutability": "nonpayable",
89
+ "type": "function"
90
+ },
91
+ {
92
+ "inputs": [
93
+ {
94
+ "internalType": "address",
95
+ "name": "newOwner",
96
+ "type": "address"
97
+ }
98
+ ],
99
+ "name": "transferOwnership",
100
+ "outputs": [],
101
+ "stateMutability": "nonpayable",
102
+ "type": "function"
103
+ },
104
+ {
105
+ "inputs": [
106
+ {
107
+ "internalType": "contract ITransparentUpgradeableProxy",
108
+ "name": "proxy",
109
+ "type": "address"
110
+ },
111
+ {
112
+ "internalType": "address",
113
+ "name": "implementation",
114
+ "type": "address"
115
+ },
116
+ {
117
+ "internalType": "bytes",
118
+ "name": "data",
119
+ "type": "bytes"
120
+ }
121
+ ],
122
+ "name": "upgradeAndCall",
123
+ "outputs": [],
124
+ "stateMutability": "payable",
125
+ "type": "function"
126
+ }
127
+ ],
128
+ "bytecode": "0x6080604052348015600e575f5ffd5b506040516104fa3803806104fa833981016040819052602b9160b4565b806001600160a01b038116605857604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b605f816065565b505060df565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f6020828403121560c3575f5ffd5b81516001600160a01b038116811460d8575f5ffd5b9392505050565b61040e806100ec5f395ff3fe608060405260043610610058575f3560e01c80639623609d116100415780639623609d1461009d578063ad3cb1cc146100b0578063f2fde38b14610105575f5ffd5b8063715018a61461005c5780638da5cb5b14610072575b5f5ffd5b348015610067575f5ffd5b50610070610124565b005b34801561007d575f5ffd5b505f546040516001600160a01b0390911681526020015b60405180910390f35b6100706100ab36600461029f565b610137565b3480156100bb575f5ffd5b506100f86040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009491906103a4565b348015610110575f5ffd5b5061007061011f3660046103bd565b6101a2565b61012c6101e4565b6101355f610210565b565b61013f6101e4565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061016f90869086906004016103d8565b5f604051808303818588803b158015610186575f5ffd5b505af1158015610198573d5f5f3e3d5ffd5b5050505050505050565b6101aa6101e4565b6001600160a01b0381166101d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6101e181610210565b50565b5f546001600160a01b031633146101355760405163118cdaa760e01b81523360048201526024016101cf565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101e1575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b5f5f5f606084860312156102b1575f5ffd5b83356102bc81610277565b925060208401356102cc81610277565b9150604084013567ffffffffffffffff8111156102e7575f5ffd5b8401601f810186136102f7575f5ffd5b803567ffffffffffffffff8111156103115761031161028b565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156103405761034061028b565b604052818152828201602001881015610357575f5ffd5b816020840160208301375f602083830101528093505050509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6103b66020830184610376565b9392505050565b5f602082840312156103cd575f5ffd5b81356103b681610277565b6001600160a01b0383168152604060208201525f6103f96040830184610376565b94935050505056fea164736f6c634300081c000a",
129
+ "deployedBytecode": "0x608060405260043610610058575f3560e01c80639623609d116100415780639623609d1461009d578063ad3cb1cc146100b0578063f2fde38b14610105575f5ffd5b8063715018a61461005c5780638da5cb5b14610072575b5f5ffd5b348015610067575f5ffd5b50610070610124565b005b34801561007d575f5ffd5b505f546040516001600160a01b0390911681526020015b60405180910390f35b6100706100ab36600461029f565b610137565b3480156100bb575f5ffd5b506100f86040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009491906103a4565b348015610110575f5ffd5b5061007061011f3660046103bd565b6101a2565b61012c6101e4565b6101355f610210565b565b61013f6101e4565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061016f90869086906004016103d8565b5f604051808303818588803b158015610186575f5ffd5b505af1158015610198573d5f5f3e3d5ffd5b5050505050505050565b6101aa6101e4565b6001600160a01b0381166101d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6101e181610210565b50565b5f546001600160a01b031633146101355760405163118cdaa760e01b81523360048201526024016101cf565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101e1575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b5f5f5f606084860312156102b1575f5ffd5b83356102bc81610277565b925060208401356102cc81610277565b9150604084013567ffffffffffffffff8111156102e7575f5ffd5b8401601f810186136102f7575f5ffd5b803567ffffffffffffffff8111156103115761031161028b565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156103405761034061028b565b604052818152828201602001881015610357575f5ffd5b816020840160208301375f602083830101528093505050509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6103b66020830184610376565b9392505050565b5f602082840312156103cd575f5ffd5b81356103b681610277565b6001600160a01b0383168152604060208201525f6103f96040830184610376565b94935050505056fea164736f6c634300081c000a",
130
+ "linkReferences": {},
131
+ "deployedLinkReferences": {},
132
+ "immutableReferences": {},
133
+ "inputSourceName": "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/ProxyAdmin.sol",
134
+ "buildInfoId": "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc"
135
+ }
@@ -0,0 +1,27 @@
1
+ // This file was autogenerated by Hardhat, do not edit it.
2
+ // prettier-ignore
3
+ // tslint:disable
4
+ // eslint-disable
5
+ // biome-ignore format: see above
6
+
7
+ export interface ProxyAdmin$Type {
8
+ readonly _format: "hh3-artifact-1";
9
+ readonly contractName: "ProxyAdmin";
10
+ readonly sourceName: "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";
11
+ readonly abi: [{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"UPGRADE_INTERFACE_VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ITransparentUpgradeableProxy","name":"proxy","type":"address"},{"internalType":"address","name":"implementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeAndCall","outputs":[],"stateMutability":"payable","type":"function"}];
12
+ readonly bytecode: "0x6080604052348015600e575f5ffd5b506040516104fa3803806104fa833981016040819052602b9160b4565b806001600160a01b038116605857604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b605f816065565b505060df565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f6020828403121560c3575f5ffd5b81516001600160a01b038116811460d8575f5ffd5b9392505050565b61040e806100ec5f395ff3fe608060405260043610610058575f3560e01c80639623609d116100415780639623609d1461009d578063ad3cb1cc146100b0578063f2fde38b14610105575f5ffd5b8063715018a61461005c5780638da5cb5b14610072575b5f5ffd5b348015610067575f5ffd5b50610070610124565b005b34801561007d575f5ffd5b505f546040516001600160a01b0390911681526020015b60405180910390f35b6100706100ab36600461029f565b610137565b3480156100bb575f5ffd5b506100f86040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009491906103a4565b348015610110575f5ffd5b5061007061011f3660046103bd565b6101a2565b61012c6101e4565b6101355f610210565b565b61013f6101e4565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061016f90869086906004016103d8565b5f604051808303818588803b158015610186575f5ffd5b505af1158015610198573d5f5f3e3d5ffd5b5050505050505050565b6101aa6101e4565b6001600160a01b0381166101d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6101e181610210565b50565b5f546001600160a01b031633146101355760405163118cdaa760e01b81523360048201526024016101cf565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101e1575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b5f5f5f606084860312156102b1575f5ffd5b83356102bc81610277565b925060208401356102cc81610277565b9150604084013567ffffffffffffffff8111156102e7575f5ffd5b8401601f810186136102f7575f5ffd5b803567ffffffffffffffff8111156103115761031161028b565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156103405761034061028b565b604052818152828201602001881015610357575f5ffd5b816020840160208301375f602083830101528093505050509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6103b66020830184610376565b9392505050565b5f602082840312156103cd575f5ffd5b81356103b681610277565b6001600160a01b0383168152604060208201525f6103f96040830184610376565b94935050505056fea164736f6c634300081c000a";
13
+ readonly deployedBytecode: "0x608060405260043610610058575f3560e01c80639623609d116100415780639623609d1461009d578063ad3cb1cc146100b0578063f2fde38b14610105575f5ffd5b8063715018a61461005c5780638da5cb5b14610072575b5f5ffd5b348015610067575f5ffd5b50610070610124565b005b34801561007d575f5ffd5b505f546040516001600160a01b0390911681526020015b60405180910390f35b6100706100ab36600461029f565b610137565b3480156100bb575f5ffd5b506100f86040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009491906103a4565b348015610110575f5ffd5b5061007061011f3660046103bd565b6101a2565b61012c6101e4565b6101355f610210565b565b61013f6101e4565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061016f90869086906004016103d8565b5f604051808303818588803b158015610186575f5ffd5b505af1158015610198573d5f5f3e3d5ffd5b5050505050505050565b6101aa6101e4565b6001600160a01b0381166101d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6101e181610210565b50565b5f546001600160a01b031633146101355760405163118cdaa760e01b81523360048201526024016101cf565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101e1575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b5f5f5f606084860312156102b1575f5ffd5b83356102bc81610277565b925060208401356102cc81610277565b9150604084013567ffffffffffffffff8111156102e7575f5ffd5b8401601f810186136102f7575f5ffd5b803567ffffffffffffffff8111156103115761031161028b565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156103405761034061028b565b604052818152828201602001881015610357575f5ffd5b816020840160208301375f602083830101528093505050509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6103b66020830184610376565b9392505050565b5f602082840312156103cd575f5ffd5b81356103b681610277565b6001600160a01b0383168152604060208201525f6103f96040830184610376565b94935050505056fea164736f6c634300081c000a";
14
+ readonly linkReferences: {};
15
+ readonly deployedLinkReferences: {};
16
+ readonly immutableReferences: {};
17
+ readonly inputSourceName: "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/ProxyAdmin.sol";
18
+ readonly buildInfoId: "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc";
19
+ };
20
+
21
+ import "hardhat/types/artifacts";
22
+ declare module "hardhat/types/artifacts" {
23
+ interface ArtifactMap {
24
+ ["ProxyAdmin"]: ProxyAdmin$Type;
25
+ ["@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol:ProxyAdmin"]: ProxyAdmin$Type;
26
+ }
27
+ }
@@ -0,0 +1,77 @@
1
+ {
2
+ "_format": "hh3-artifact-1",
3
+ "contractName": "ITransparentUpgradeableProxy",
4
+ "sourceName": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": false,
11
+ "internalType": "address",
12
+ "name": "previousAdmin",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": false,
17
+ "internalType": "address",
18
+ "name": "newAdmin",
19
+ "type": "address"
20
+ }
21
+ ],
22
+ "name": "AdminChanged",
23
+ "type": "event"
24
+ },
25
+ {
26
+ "anonymous": false,
27
+ "inputs": [
28
+ {
29
+ "indexed": true,
30
+ "internalType": "address",
31
+ "name": "beacon",
32
+ "type": "address"
33
+ }
34
+ ],
35
+ "name": "BeaconUpgraded",
36
+ "type": "event"
37
+ },
38
+ {
39
+ "anonymous": false,
40
+ "inputs": [
41
+ {
42
+ "indexed": true,
43
+ "internalType": "address",
44
+ "name": "implementation",
45
+ "type": "address"
46
+ }
47
+ ],
48
+ "name": "Upgraded",
49
+ "type": "event"
50
+ },
51
+ {
52
+ "inputs": [
53
+ {
54
+ "internalType": "address",
55
+ "name": "newImplementation",
56
+ "type": "address"
57
+ },
58
+ {
59
+ "internalType": "bytes",
60
+ "name": "data",
61
+ "type": "bytes"
62
+ }
63
+ ],
64
+ "name": "upgradeToAndCall",
65
+ "outputs": [],
66
+ "stateMutability": "payable",
67
+ "type": "function"
68
+ }
69
+ ],
70
+ "bytecode": "0x",
71
+ "deployedBytecode": "0x",
72
+ "linkReferences": {},
73
+ "deployedLinkReferences": {},
74
+ "immutableReferences": {},
75
+ "inputSourceName": "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/TransparentUpgradeableProxy.sol",
76
+ "buildInfoId": "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc"
77
+ }
@@ -0,0 +1,126 @@
1
+ {
2
+ "_format": "hh3-artifact-1",
3
+ "contractName": "TransparentUpgradeableProxy",
4
+ "sourceName": "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_logic",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "initialOwner",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "bytes",
20
+ "name": "_data",
21
+ "type": "bytes"
22
+ }
23
+ ],
24
+ "stateMutability": "payable",
25
+ "type": "constructor"
26
+ },
27
+ {
28
+ "inputs": [
29
+ {
30
+ "internalType": "address",
31
+ "name": "target",
32
+ "type": "address"
33
+ }
34
+ ],
35
+ "name": "AddressEmptyCode",
36
+ "type": "error"
37
+ },
38
+ {
39
+ "inputs": [
40
+ {
41
+ "internalType": "address",
42
+ "name": "admin",
43
+ "type": "address"
44
+ }
45
+ ],
46
+ "name": "ERC1967InvalidAdmin",
47
+ "type": "error"
48
+ },
49
+ {
50
+ "inputs": [
51
+ {
52
+ "internalType": "address",
53
+ "name": "implementation",
54
+ "type": "address"
55
+ }
56
+ ],
57
+ "name": "ERC1967InvalidImplementation",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [],
62
+ "name": "ERC1967NonPayable",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "inputs": [],
67
+ "name": "FailedCall",
68
+ "type": "error"
69
+ },
70
+ {
71
+ "inputs": [],
72
+ "name": "ProxyDeniedAdminAccess",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "anonymous": false,
77
+ "inputs": [
78
+ {
79
+ "indexed": false,
80
+ "internalType": "address",
81
+ "name": "previousAdmin",
82
+ "type": "address"
83
+ },
84
+ {
85
+ "indexed": false,
86
+ "internalType": "address",
87
+ "name": "newAdmin",
88
+ "type": "address"
89
+ }
90
+ ],
91
+ "name": "AdminChanged",
92
+ "type": "event"
93
+ },
94
+ {
95
+ "anonymous": false,
96
+ "inputs": [
97
+ {
98
+ "indexed": true,
99
+ "internalType": "address",
100
+ "name": "implementation",
101
+ "type": "address"
102
+ }
103
+ ],
104
+ "name": "Upgraded",
105
+ "type": "event"
106
+ },
107
+ {
108
+ "stateMutability": "payable",
109
+ "type": "fallback"
110
+ }
111
+ ],
112
+ "bytecode": "0x60a0604052604051610de4380380610de48339810160408190526100229161036a565b828161002e828261008c565b50508160405161003d9061032e565b6001600160a01b039091168152602001604051809103905ff080158015610066573d5f5f3e3d5ffd5b506001600160a01b031660805261008461007f60805190565b6100ea565b505050610451565b61009582610157565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a28051156100de576100d982826101d5565b505050565b6100e6610248565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6101295f516020610dc45f395f51905f52546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a161015481610269565b50565b806001600160a01b03163b5f0361019157604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b60605f5f846001600160a01b0316846040516101f1919061043b565b5f60405180830381855af49150503d805f8114610229576040519150601f19603f3d011682016040523d82523d5f602084013e61022e565b606091505b50909250905061023f8583836102a6565b95945050505050565b34156102675760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b03811661029257604051633173bdd160e11b81525f6004820152602401610188565b805f516020610dc45f395f51905f526101b4565b6060826102bb576102b682610305565b6102fe565b81511580156102d257506001600160a01b0384163b155b156102fb57604051639996b31560e01b81526001600160a01b0385166004820152602401610188565b50805b9392505050565b8051156103155780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6104fa806108ca83390190565b80516001600160a01b0381168114610351575f5ffd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f5f5f6060848603121561037c575f5ffd5b6103858461033b565b92506103936020850161033b565b60408501519092506001600160401b038111156103ae575f5ffd5b8401601f810186136103be575f5ffd5b80516001600160401b038111156103d7576103d7610356565b604051601f8201601f19908116603f011681016001600160401b038111828210171561040557610405610356565b60405281815282820160200188101561041c575f5ffd5b8160208401602083015e5f602083830101528093505050509250925092565b5f82518060208501845e5f920191825250919050565b6080516104626104685f395f601001526104625ff3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303610092575f357fffffffff000000000000000000000000000000000000000000000000000000001663278f794360e11b14610088576040516334ad5dbb60e21b815260040160405180910390fd5b61009061009a565b565b6100906100c8565b5f806100a93660048184610333565b8101906100b6919061036e565b915091506100c482826100d8565b5050565b6100906100d3610132565b610169565b6100e182610187565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a280511561012a57610125828261021a565b505050565b6100c461028c565b5f6101647f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f5f375f5f365f845af43d5f5f3e808015610183573d5ff35b3d5ffd5b806001600160a01b03163b5f036101c157604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60605f5f846001600160a01b031684604051610236919061043f565b5f60405180830381855af49150503d805f811461026e576040519150601f19603f3d011682016040523d82523d5f602084013e610273565b606091505b50915091506102838583836102ab565b95945050505050565b34156100905760405163b398979f60e01b815260040160405180910390fd5b6060826102c0576102bb8261030a565b610303565b81511580156102d757506001600160a01b0384163b155b1561030057604051639996b31560e01b81526001600160a01b03851660048201526024016101b8565b50805b9392505050565b80511561031a5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f5f85851115610341575f5ffd5b8386111561034d575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52604160045260245ffd5b5f5f6040838503121561037f575f5ffd5b82356001600160a01b0381168114610395575f5ffd5b9150602083013567ffffffffffffffff8111156103b0575f5ffd5b8301601f810185136103c0575f5ffd5b803567ffffffffffffffff8111156103da576103da61035a565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156104095761040961035a565b604052818152828201602001871015610420575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f82518060208501845e5f92019182525091905056fea164736f6c634300081c000a6080604052348015600e575f5ffd5b506040516104fa3803806104fa833981016040819052602b9160b4565b806001600160a01b038116605857604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b605f816065565b505060df565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f6020828403121560c3575f5ffd5b81516001600160a01b038116811460d8575f5ffd5b9392505050565b61040e806100ec5f395ff3fe608060405260043610610058575f3560e01c80639623609d116100415780639623609d1461009d578063ad3cb1cc146100b0578063f2fde38b14610105575f5ffd5b8063715018a61461005c5780638da5cb5b14610072575b5f5ffd5b348015610067575f5ffd5b50610070610124565b005b34801561007d575f5ffd5b505f546040516001600160a01b0390911681526020015b60405180910390f35b6100706100ab36600461029f565b610137565b3480156100bb575f5ffd5b506100f86040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009491906103a4565b348015610110575f5ffd5b5061007061011f3660046103bd565b6101a2565b61012c6101e4565b6101355f610210565b565b61013f6101e4565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061016f90869086906004016103d8565b5f604051808303818588803b158015610186575f5ffd5b505af1158015610198573d5f5f3e3d5ffd5b5050505050505050565b6101aa6101e4565b6001600160a01b0381166101d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6101e181610210565b50565b5f546001600160a01b031633146101355760405163118cdaa760e01b81523360048201526024016101cf565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101e1575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b5f5f5f606084860312156102b1575f5ffd5b83356102bc81610277565b925060208401356102cc81610277565b9150604084013567ffffffffffffffff8111156102e7575f5ffd5b8401601f810186136102f7575f5ffd5b803567ffffffffffffffff8111156103115761031161028b565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156103405761034061028b565b604052818152828201602001881015610357575f5ffd5b816020840160208301375f602083830101528093505050509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6103b66020830184610376565b9392505050565b5f602082840312156103cd575f5ffd5b81356103b681610277565b6001600160a01b0383168152604060208201525f6103f96040830184610376565b94935050505056fea164736f6c634300081c000ab53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103",
113
+ "deployedBytecode": "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303610092575f357fffffffff000000000000000000000000000000000000000000000000000000001663278f794360e11b14610088576040516334ad5dbb60e21b815260040160405180910390fd5b61009061009a565b565b6100906100c8565b5f806100a93660048184610333565b8101906100b6919061036e565b915091506100c482826100d8565b5050565b6100906100d3610132565b610169565b6100e182610187565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a280511561012a57610125828261021a565b505050565b6100c461028c565b5f6101647f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f5f375f5f365f845af43d5f5f3e808015610183573d5ff35b3d5ffd5b806001600160a01b03163b5f036101c157604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60605f5f846001600160a01b031684604051610236919061043f565b5f60405180830381855af49150503d805f811461026e576040519150601f19603f3d011682016040523d82523d5f602084013e610273565b606091505b50915091506102838583836102ab565b95945050505050565b34156100905760405163b398979f60e01b815260040160405180910390fd5b6060826102c0576102bb8261030a565b610303565b81511580156102d757506001600160a01b0384163b155b1561030057604051639996b31560e01b81526001600160a01b03851660048201526024016101b8565b50805b9392505050565b80511561031a5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f5f85851115610341575f5ffd5b8386111561034d575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52604160045260245ffd5b5f5f6040838503121561037f575f5ffd5b82356001600160a01b0381168114610395575f5ffd5b9150602083013567ffffffffffffffff8111156103b0575f5ffd5b8301601f810185136103c0575f5ffd5b803567ffffffffffffffff8111156103da576103da61035a565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156104095761040961035a565b604052818152828201602001871015610420575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f82518060208501845e5f92019182525091905056fea164736f6c634300081c000a",
114
+ "linkReferences": {},
115
+ "deployedLinkReferences": {},
116
+ "immutableReferences": {
117
+ "2413": [
118
+ {
119
+ "length": 32,
120
+ "start": 16
121
+ }
122
+ ]
123
+ },
124
+ "inputSourceName": "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/TransparentUpgradeableProxy.sol",
125
+ "buildInfoId": "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc"
126
+ }
@@ -0,0 +1,43 @@
1
+ // This file was autogenerated by Hardhat, do not edit it.
2
+ // prettier-ignore
3
+ // tslint:disable
4
+ // eslint-disable
5
+ // biome-ignore format: see above
6
+
7
+ export interface ITransparentUpgradeableProxy$Type {
8
+ readonly _format: "hh3-artifact-1";
9
+ readonly contractName: "ITransparentUpgradeableProxy";
10
+ readonly sourceName: "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
11
+ readonly abi: [{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}];
12
+ readonly bytecode: "0x";
13
+ readonly deployedBytecode: "0x";
14
+ readonly linkReferences: {};
15
+ readonly deployedLinkReferences: {};
16
+ readonly immutableReferences: {};
17
+ readonly inputSourceName: "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/TransparentUpgradeableProxy.sol";
18
+ readonly buildInfoId: "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc";
19
+ };
20
+
21
+ export interface TransparentUpgradeableProxy$Type {
22
+ readonly _format: "hh3-artifact-1";
23
+ readonly contractName: "TransparentUpgradeableProxy";
24
+ readonly sourceName: "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
25
+ readonly abi: [{"inputs":[{"internalType":"address","name":"_logic","type":"address"},{"internalType":"address","name":"initialOwner","type":"address"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"constructor"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"name":"ERC1967InvalidAdmin","type":"error"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"}],"name":"ERC1967InvalidImplementation","type":"error"},{"inputs":[],"name":"ERC1967NonPayable","type":"error"},{"inputs":[],"name":"FailedCall","type":"error"},{"inputs":[],"name":"ProxyDeniedAdminAccess","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"}];
26
+ readonly bytecode: "0x60a0604052604051610de4380380610de48339810160408190526100229161036a565b828161002e828261008c565b50508160405161003d9061032e565b6001600160a01b039091168152602001604051809103905ff080158015610066573d5f5f3e3d5ffd5b506001600160a01b031660805261008461007f60805190565b6100ea565b505050610451565b61009582610157565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a28051156100de576100d982826101d5565b505050565b6100e6610248565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6101295f516020610dc45f395f51905f52546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a161015481610269565b50565b806001600160a01b03163b5f0361019157604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b60605f5f846001600160a01b0316846040516101f1919061043b565b5f60405180830381855af49150503d805f8114610229576040519150601f19603f3d011682016040523d82523d5f602084013e61022e565b606091505b50909250905061023f8583836102a6565b95945050505050565b34156102675760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b03811661029257604051633173bdd160e11b81525f6004820152602401610188565b805f516020610dc45f395f51905f526101b4565b6060826102bb576102b682610305565b6102fe565b81511580156102d257506001600160a01b0384163b155b156102fb57604051639996b31560e01b81526001600160a01b0385166004820152602401610188565b50805b9392505050565b8051156103155780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b6104fa806108ca83390190565b80516001600160a01b0381168114610351575f5ffd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f5f5f6060848603121561037c575f5ffd5b6103858461033b565b92506103936020850161033b565b60408501519092506001600160401b038111156103ae575f5ffd5b8401601f810186136103be575f5ffd5b80516001600160401b038111156103d7576103d7610356565b604051601f8201601f19908116603f011681016001600160401b038111828210171561040557610405610356565b60405281815282820160200188101561041c575f5ffd5b8160208401602083015e5f602083830101528093505050509250925092565b5f82518060208501845e5f920191825250919050565b6080516104626104685f395f601001526104625ff3fe608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303610092575f357fffffffff000000000000000000000000000000000000000000000000000000001663278f794360e11b14610088576040516334ad5dbb60e21b815260040160405180910390fd5b61009061009a565b565b6100906100c8565b5f806100a93660048184610333565b8101906100b6919061036e565b915091506100c482826100d8565b5050565b6100906100d3610132565b610169565b6100e182610187565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a280511561012a57610125828261021a565b505050565b6100c461028c565b5f6101647f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f5f375f5f365f845af43d5f5f3e808015610183573d5ff35b3d5ffd5b806001600160a01b03163b5f036101c157604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60605f5f846001600160a01b031684604051610236919061043f565b5f60405180830381855af49150503d805f811461026e576040519150601f19603f3d011682016040523d82523d5f602084013e610273565b606091505b50915091506102838583836102ab565b95945050505050565b34156100905760405163b398979f60e01b815260040160405180910390fd5b6060826102c0576102bb8261030a565b610303565b81511580156102d757506001600160a01b0384163b155b1561030057604051639996b31560e01b81526001600160a01b03851660048201526024016101b8565b50805b9392505050565b80511561031a5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f5f85851115610341575f5ffd5b8386111561034d575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52604160045260245ffd5b5f5f6040838503121561037f575f5ffd5b82356001600160a01b0381168114610395575f5ffd5b9150602083013567ffffffffffffffff8111156103b0575f5ffd5b8301601f810185136103c0575f5ffd5b803567ffffffffffffffff8111156103da576103da61035a565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156104095761040961035a565b604052818152828201602001871015610420575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f82518060208501845e5f92019182525091905056fea164736f6c634300081c000a6080604052348015600e575f5ffd5b506040516104fa3803806104fa833981016040819052602b9160b4565b806001600160a01b038116605857604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b605f816065565b505060df565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f6020828403121560c3575f5ffd5b81516001600160a01b038116811460d8575f5ffd5b9392505050565b61040e806100ec5f395ff3fe608060405260043610610058575f3560e01c80639623609d116100415780639623609d1461009d578063ad3cb1cc146100b0578063f2fde38b14610105575f5ffd5b8063715018a61461005c5780638da5cb5b14610072575b5f5ffd5b348015610067575f5ffd5b50610070610124565b005b34801561007d575f5ffd5b505f546040516001600160a01b0390911681526020015b60405180910390f35b6100706100ab36600461029f565b610137565b3480156100bb575f5ffd5b506100f86040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b60405161009491906103a4565b348015610110575f5ffd5b5061007061011f3660046103bd565b6101a2565b61012c6101e4565b6101355f610210565b565b61013f6101e4565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061016f90869086906004016103d8565b5f604051808303818588803b158015610186575f5ffd5b505af1158015610198573d5f5f3e3d5ffd5b5050505050505050565b6101aa6101e4565b6001600160a01b0381166101d857604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b6101e181610210565b50565b5f546001600160a01b031633146101355760405163118cdaa760e01b81523360048201526024016101cf565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101e1575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b5f5f5f606084860312156102b1575f5ffd5b83356102bc81610277565b925060208401356102cc81610277565b9150604084013567ffffffffffffffff8111156102e7575f5ffd5b8401601f810186136102f7575f5ffd5b803567ffffffffffffffff8111156103115761031161028b565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156103405761034061028b565b604052818152828201602001881015610357575f5ffd5b816020840160208301375f602083830101528093505050509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6103b66020830184610376565b9392505050565b5f602082840312156103cd575f5ffd5b81356103b681610277565b6001600160a01b0383168152604060208201525f6103f96040830184610376565b94935050505056fea164736f6c634300081c000ab53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103";
27
+ readonly deployedBytecode: "0x608060405261000c61000e565b005b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163303610092575f357fffffffff000000000000000000000000000000000000000000000000000000001663278f794360e11b14610088576040516334ad5dbb60e21b815260040160405180910390fd5b61009061009a565b565b6100906100c8565b5f806100a93660048184610333565b8101906100b6919061036e565b915091506100c482826100d8565b5050565b6100906100d3610132565b610169565b6100e182610187565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a280511561012a57610125828261021a565b505050565b6100c461028c565b5f6101647f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f5f375f5f365f845af43d5f5f3e808015610183573d5ff35b3d5ffd5b806001600160a01b03163b5f036101c157604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60605f5f846001600160a01b031684604051610236919061043f565b5f60405180830381855af49150503d805f811461026e576040519150601f19603f3d011682016040523d82523d5f602084013e610273565b606091505b50915091506102838583836102ab565b95945050505050565b34156100905760405163b398979f60e01b815260040160405180910390fd5b6060826102c0576102bb8261030a565b610303565b81511580156102d757506001600160a01b0384163b155b1561030057604051639996b31560e01b81526001600160a01b03851660048201526024016101b8565b50805b9392505050565b80511561031a5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f5f85851115610341575f5ffd5b8386111561034d575f5ffd5b5050820193919092039150565b634e487b7160e01b5f52604160045260245ffd5b5f5f6040838503121561037f575f5ffd5b82356001600160a01b0381168114610395575f5ffd5b9150602083013567ffffffffffffffff8111156103b0575f5ffd5b8301601f810185136103c0575f5ffd5b803567ffffffffffffffff8111156103da576103da61035a565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156104095761040961035a565b604052818152828201602001871015610420575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f82518060208501845e5f92019182525091905056fea164736f6c634300081c000a";
28
+ readonly linkReferences: {};
29
+ readonly deployedLinkReferences: {};
30
+ readonly immutableReferences: {"2413":[{"length":32,"start":16}]};
31
+ readonly inputSourceName: "npm/@openzeppelin/contracts@5.3.0/proxy/transparent/TransparentUpgradeableProxy.sol";
32
+ readonly buildInfoId: "solc-0_8_28-5150b9e6b6cf4df4986fccba97bea37a16fdfebc";
33
+ };
34
+
35
+ import "hardhat/types/artifacts";
36
+ declare module "hardhat/types/artifacts" {
37
+ interface ArtifactMap {
38
+ ["ITransparentUpgradeableProxy"]: ITransparentUpgradeableProxy$Type
39
+ ["TransparentUpgradeableProxy"]: TransparentUpgradeableProxy$Type;
40
+ ["@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol:ITransparentUpgradeableProxy"]: ITransparentUpgradeableProxy$Type
41
+ ["@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol:TransparentUpgradeableProxy"]: TransparentUpgradeableProxy$Type;
42
+ }
43
+ }