@enclave-e3/contracts 0.1.4 → 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 +95 -21
  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 -23
  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 +3 -6
  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-9aea5e3f6e25811e781e96c22e8edaf1eb1a01c5.json +0 -130
  399. package/artifacts/build-info/solc-0_8_27-9aea5e3f6e25811e781e96c22e8edaf1eb1a01c5.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
@@ -0,0 +1,1239 @@
1
+ import { Contract, ContractFactory, Interface } from "ethers";
2
+ const _abi = [
3
+ {
4
+ "inputs": [],
5
+ "stateMutability": "nonpayable",
6
+ "type": "constructor"
7
+ },
8
+ {
9
+ "inputs": [],
10
+ "name": "AlreadyRegistered",
11
+ "type": "error"
12
+ },
13
+ {
14
+ "inputs": [],
15
+ "name": "ArrayLengthMismatch",
16
+ "type": "error"
17
+ },
18
+ {
19
+ "inputs": [],
20
+ "name": "CiphernodeBanned",
21
+ "type": "error"
22
+ },
23
+ {
24
+ "inputs": [],
25
+ "name": "ExitInProgress",
26
+ "type": "error"
27
+ },
28
+ {
29
+ "inputs": [],
30
+ "name": "ExitNotReady",
31
+ "type": "error"
32
+ },
33
+ {
34
+ "inputs": [],
35
+ "name": "InsufficientBalance",
36
+ "type": "error"
37
+ },
38
+ {
39
+ "inputs": [],
40
+ "name": "InvalidAmount",
41
+ "type": "error"
42
+ },
43
+ {
44
+ "inputs": [],
45
+ "name": "InvalidConfiguration",
46
+ "type": "error"
47
+ },
48
+ {
49
+ "inputs": [],
50
+ "name": "InvalidInitialization",
51
+ "type": "error"
52
+ },
53
+ {
54
+ "inputs": [],
55
+ "name": "NoPendingDeregistration",
56
+ "type": "error"
57
+ },
58
+ {
59
+ "inputs": [],
60
+ "name": "NotInitializing",
61
+ "type": "error"
62
+ },
63
+ {
64
+ "inputs": [],
65
+ "name": "NotLicensed",
66
+ "type": "error"
67
+ },
68
+ {
69
+ "inputs": [],
70
+ "name": "NotRegistered",
71
+ "type": "error"
72
+ },
73
+ {
74
+ "inputs": [],
75
+ "name": "OnlyRewardDistributor",
76
+ "type": "error"
77
+ },
78
+ {
79
+ "inputs": [
80
+ {
81
+ "internalType": "address",
82
+ "name": "owner",
83
+ "type": "address"
84
+ }
85
+ ],
86
+ "name": "OwnableInvalidOwner",
87
+ "type": "error"
88
+ },
89
+ {
90
+ "inputs": [
91
+ {
92
+ "internalType": "address",
93
+ "name": "account",
94
+ "type": "address"
95
+ }
96
+ ],
97
+ "name": "OwnableUnauthorizedAccount",
98
+ "type": "error"
99
+ },
100
+ {
101
+ "inputs": [
102
+ {
103
+ "internalType": "address",
104
+ "name": "token",
105
+ "type": "address"
106
+ }
107
+ ],
108
+ "name": "SafeERC20FailedOperation",
109
+ "type": "error"
110
+ },
111
+ {
112
+ "inputs": [],
113
+ "name": "TimestampOverflow",
114
+ "type": "error"
115
+ },
116
+ {
117
+ "inputs": [],
118
+ "name": "Unauthorized",
119
+ "type": "error"
120
+ },
121
+ {
122
+ "inputs": [],
123
+ "name": "ZeroAddress",
124
+ "type": "error"
125
+ },
126
+ {
127
+ "inputs": [],
128
+ "name": "ZeroAmount",
129
+ "type": "error"
130
+ },
131
+ {
132
+ "anonymous": false,
133
+ "inputs": [
134
+ {
135
+ "indexed": true,
136
+ "internalType": "address",
137
+ "name": "operator",
138
+ "type": "address"
139
+ },
140
+ {
141
+ "indexed": false,
142
+ "internalType": "uint256",
143
+ "name": "ticketAmount",
144
+ "type": "uint256"
145
+ },
146
+ {
147
+ "indexed": false,
148
+ "internalType": "uint256",
149
+ "name": "licenseAmount",
150
+ "type": "uint256"
151
+ }
152
+ ],
153
+ "name": "AssetsClaimed",
154
+ "type": "event"
155
+ },
156
+ {
157
+ "anonymous": false,
158
+ "inputs": [
159
+ {
160
+ "indexed": true,
161
+ "internalType": "address",
162
+ "name": "operator",
163
+ "type": "address"
164
+ },
165
+ {
166
+ "indexed": false,
167
+ "internalType": "uint256",
168
+ "name": "ticketAmount",
169
+ "type": "uint256"
170
+ },
171
+ {
172
+ "indexed": false,
173
+ "internalType": "uint256",
174
+ "name": "licenseAmount",
175
+ "type": "uint256"
176
+ },
177
+ {
178
+ "indexed": false,
179
+ "internalType": "uint64",
180
+ "name": "unlockTimestamp",
181
+ "type": "uint64"
182
+ }
183
+ ],
184
+ "name": "AssetsQueuedForExit",
185
+ "type": "event"
186
+ },
187
+ {
188
+ "anonymous": false,
189
+ "inputs": [
190
+ {
191
+ "indexed": true,
192
+ "internalType": "address",
193
+ "name": "operator",
194
+ "type": "address"
195
+ },
196
+ {
197
+ "indexed": false,
198
+ "internalType": "uint64",
199
+ "name": "unlockAt",
200
+ "type": "uint64"
201
+ }
202
+ ],
203
+ "name": "CiphernodeDeregistrationRequested",
204
+ "type": "event"
205
+ },
206
+ {
207
+ "anonymous": false,
208
+ "inputs": [
209
+ {
210
+ "indexed": true,
211
+ "internalType": "bytes32",
212
+ "name": "parameter",
213
+ "type": "bytes32"
214
+ },
215
+ {
216
+ "indexed": false,
217
+ "internalType": "uint256",
218
+ "name": "oldValue",
219
+ "type": "uint256"
220
+ },
221
+ {
222
+ "indexed": false,
223
+ "internalType": "uint256",
224
+ "name": "newValue",
225
+ "type": "uint256"
226
+ }
227
+ ],
228
+ "name": "ConfigurationUpdated",
229
+ "type": "event"
230
+ },
231
+ {
232
+ "anonymous": false,
233
+ "inputs": [
234
+ {
235
+ "indexed": false,
236
+ "internalType": "uint64",
237
+ "name": "version",
238
+ "type": "uint64"
239
+ }
240
+ ],
241
+ "name": "Initialized",
242
+ "type": "event"
243
+ },
244
+ {
245
+ "anonymous": false,
246
+ "inputs": [
247
+ {
248
+ "indexed": true,
249
+ "internalType": "address",
250
+ "name": "operator",
251
+ "type": "address"
252
+ },
253
+ {
254
+ "indexed": false,
255
+ "internalType": "int256",
256
+ "name": "delta",
257
+ "type": "int256"
258
+ },
259
+ {
260
+ "indexed": false,
261
+ "internalType": "uint256",
262
+ "name": "newBond",
263
+ "type": "uint256"
264
+ },
265
+ {
266
+ "indexed": true,
267
+ "internalType": "bytes32",
268
+ "name": "reason",
269
+ "type": "bytes32"
270
+ }
271
+ ],
272
+ "name": "LicenseBondUpdated",
273
+ "type": "event"
274
+ },
275
+ {
276
+ "anonymous": false,
277
+ "inputs": [
278
+ {
279
+ "indexed": true,
280
+ "internalType": "address",
281
+ "name": "operator",
282
+ "type": "address"
283
+ },
284
+ {
285
+ "indexed": false,
286
+ "internalType": "bool",
287
+ "name": "active",
288
+ "type": "bool"
289
+ }
290
+ ],
291
+ "name": "OperatorActivationChanged",
292
+ "type": "event"
293
+ },
294
+ {
295
+ "anonymous": false,
296
+ "inputs": [
297
+ {
298
+ "indexed": true,
299
+ "internalType": "address",
300
+ "name": "previousOwner",
301
+ "type": "address"
302
+ },
303
+ {
304
+ "indexed": true,
305
+ "internalType": "address",
306
+ "name": "newOwner",
307
+ "type": "address"
308
+ }
309
+ ],
310
+ "name": "OwnershipTransferred",
311
+ "type": "event"
312
+ },
313
+ {
314
+ "anonymous": false,
315
+ "inputs": [
316
+ {
317
+ "indexed": true,
318
+ "internalType": "address",
319
+ "name": "operator",
320
+ "type": "address"
321
+ },
322
+ {
323
+ "indexed": false,
324
+ "internalType": "uint256",
325
+ "name": "ticketAmount",
326
+ "type": "uint256"
327
+ },
328
+ {
329
+ "indexed": false,
330
+ "internalType": "uint256",
331
+ "name": "licenseAmount",
332
+ "type": "uint256"
333
+ },
334
+ {
335
+ "indexed": false,
336
+ "internalType": "bool",
337
+ "name": "includedLockedAssets",
338
+ "type": "bool"
339
+ }
340
+ ],
341
+ "name": "PendingAssetsSlashed",
342
+ "type": "event"
343
+ },
344
+ {
345
+ "anonymous": false,
346
+ "inputs": [
347
+ {
348
+ "indexed": true,
349
+ "internalType": "address",
350
+ "name": "to",
351
+ "type": "address"
352
+ },
353
+ {
354
+ "indexed": false,
355
+ "internalType": "uint256",
356
+ "name": "ticketAmount",
357
+ "type": "uint256"
358
+ },
359
+ {
360
+ "indexed": false,
361
+ "internalType": "uint256",
362
+ "name": "licenseAmount",
363
+ "type": "uint256"
364
+ }
365
+ ],
366
+ "name": "SlashedFundsWithdrawn",
367
+ "type": "event"
368
+ },
369
+ {
370
+ "anonymous": false,
371
+ "inputs": [
372
+ {
373
+ "indexed": true,
374
+ "internalType": "address",
375
+ "name": "operator",
376
+ "type": "address"
377
+ },
378
+ {
379
+ "indexed": false,
380
+ "internalType": "int256",
381
+ "name": "delta",
382
+ "type": "int256"
383
+ },
384
+ {
385
+ "indexed": false,
386
+ "internalType": "uint256",
387
+ "name": "newBalance",
388
+ "type": "uint256"
389
+ },
390
+ {
391
+ "indexed": true,
392
+ "internalType": "bytes32",
393
+ "name": "reason",
394
+ "type": "bytes32"
395
+ }
396
+ ],
397
+ "name": "TicketBalanceUpdated",
398
+ "type": "event"
399
+ },
400
+ {
401
+ "inputs": [
402
+ {
403
+ "internalType": "uint256",
404
+ "name": "amount",
405
+ "type": "uint256"
406
+ }
407
+ ],
408
+ "name": "addTicketBalance",
409
+ "outputs": [],
410
+ "stateMutability": "nonpayable",
411
+ "type": "function"
412
+ },
413
+ {
414
+ "inputs": [
415
+ {
416
+ "internalType": "address",
417
+ "name": "operator",
418
+ "type": "address"
419
+ }
420
+ ],
421
+ "name": "availableTickets",
422
+ "outputs": [
423
+ {
424
+ "internalType": "uint256",
425
+ "name": "",
426
+ "type": "uint256"
427
+ }
428
+ ],
429
+ "stateMutability": "view",
430
+ "type": "function"
431
+ },
432
+ {
433
+ "inputs": [
434
+ {
435
+ "internalType": "uint256",
436
+ "name": "amount",
437
+ "type": "uint256"
438
+ }
439
+ ],
440
+ "name": "bondLicense",
441
+ "outputs": [],
442
+ "stateMutability": "nonpayable",
443
+ "type": "function"
444
+ },
445
+ {
446
+ "inputs": [
447
+ {
448
+ "internalType": "uint256",
449
+ "name": "maxTicketAmount",
450
+ "type": "uint256"
451
+ },
452
+ {
453
+ "internalType": "uint256",
454
+ "name": "maxLicenseAmount",
455
+ "type": "uint256"
456
+ }
457
+ ],
458
+ "name": "claimExits",
459
+ "outputs": [],
460
+ "stateMutability": "nonpayable",
461
+ "type": "function"
462
+ },
463
+ {
464
+ "inputs": [
465
+ {
466
+ "internalType": "uint256[]",
467
+ "name": "siblingNodes",
468
+ "type": "uint256[]"
469
+ }
470
+ ],
471
+ "name": "deregisterOperator",
472
+ "outputs": [],
473
+ "stateMutability": "nonpayable",
474
+ "type": "function"
475
+ },
476
+ {
477
+ "inputs": [
478
+ {
479
+ "internalType": "contract IERC20",
480
+ "name": "rewardToken",
481
+ "type": "address"
482
+ },
483
+ {
484
+ "internalType": "address[]",
485
+ "name": "recipients",
486
+ "type": "address[]"
487
+ },
488
+ {
489
+ "internalType": "uint256[]",
490
+ "name": "amounts",
491
+ "type": "uint256[]"
492
+ }
493
+ ],
494
+ "name": "distributeRewards",
495
+ "outputs": [],
496
+ "stateMutability": "nonpayable",
497
+ "type": "function"
498
+ },
499
+ {
500
+ "inputs": [],
501
+ "name": "exitDelay",
502
+ "outputs": [
503
+ {
504
+ "internalType": "uint64",
505
+ "name": "",
506
+ "type": "uint64"
507
+ }
508
+ ],
509
+ "stateMutability": "view",
510
+ "type": "function"
511
+ },
512
+ {
513
+ "inputs": [
514
+ {
515
+ "internalType": "address",
516
+ "name": "operator",
517
+ "type": "address"
518
+ }
519
+ ],
520
+ "name": "getLicenseBond",
521
+ "outputs": [
522
+ {
523
+ "internalType": "uint256",
524
+ "name": "",
525
+ "type": "uint256"
526
+ }
527
+ ],
528
+ "stateMutability": "view",
529
+ "type": "function"
530
+ },
531
+ {
532
+ "inputs": [],
533
+ "name": "getLicenseToken",
534
+ "outputs": [
535
+ {
536
+ "internalType": "address",
537
+ "name": "",
538
+ "type": "address"
539
+ }
540
+ ],
541
+ "stateMutability": "view",
542
+ "type": "function"
543
+ },
544
+ {
545
+ "inputs": [
546
+ {
547
+ "internalType": "address",
548
+ "name": "operator",
549
+ "type": "address"
550
+ }
551
+ ],
552
+ "name": "getTicketBalance",
553
+ "outputs": [
554
+ {
555
+ "internalType": "uint256",
556
+ "name": "",
557
+ "type": "uint256"
558
+ }
559
+ ],
560
+ "stateMutability": "view",
561
+ "type": "function"
562
+ },
563
+ {
564
+ "inputs": [
565
+ {
566
+ "internalType": "address",
567
+ "name": "operator",
568
+ "type": "address"
569
+ },
570
+ {
571
+ "internalType": "uint256",
572
+ "name": "blockNumber",
573
+ "type": "uint256"
574
+ }
575
+ ],
576
+ "name": "getTicketBalanceAtBlock",
577
+ "outputs": [
578
+ {
579
+ "internalType": "uint256",
580
+ "name": "",
581
+ "type": "uint256"
582
+ }
583
+ ],
584
+ "stateMutability": "view",
585
+ "type": "function"
586
+ },
587
+ {
588
+ "inputs": [],
589
+ "name": "getTicketToken",
590
+ "outputs": [
591
+ {
592
+ "internalType": "address",
593
+ "name": "",
594
+ "type": "address"
595
+ }
596
+ ],
597
+ "stateMutability": "view",
598
+ "type": "function"
599
+ },
600
+ {
601
+ "inputs": [
602
+ {
603
+ "internalType": "address",
604
+ "name": "operator",
605
+ "type": "address"
606
+ }
607
+ ],
608
+ "name": "hasExitInProgress",
609
+ "outputs": [
610
+ {
611
+ "internalType": "bool",
612
+ "name": "",
613
+ "type": "bool"
614
+ }
615
+ ],
616
+ "stateMutability": "view",
617
+ "type": "function"
618
+ },
619
+ {
620
+ "inputs": [
621
+ {
622
+ "internalType": "address",
623
+ "name": "_owner",
624
+ "type": "address"
625
+ },
626
+ {
627
+ "internalType": "contract EnclaveTicketToken",
628
+ "name": "_ticketToken",
629
+ "type": "address"
630
+ },
631
+ {
632
+ "internalType": "contract IERC20",
633
+ "name": "_licenseToken",
634
+ "type": "address"
635
+ },
636
+ {
637
+ "internalType": "contract ICiphernodeRegistry",
638
+ "name": "_registry",
639
+ "type": "address"
640
+ },
641
+ {
642
+ "internalType": "address",
643
+ "name": "_slashedFundsTreasury",
644
+ "type": "address"
645
+ },
646
+ {
647
+ "internalType": "uint256",
648
+ "name": "_ticketPrice",
649
+ "type": "uint256"
650
+ },
651
+ {
652
+ "internalType": "uint256",
653
+ "name": "_licenseRequiredBond",
654
+ "type": "uint256"
655
+ },
656
+ {
657
+ "internalType": "uint256",
658
+ "name": "_minTicketBalance",
659
+ "type": "uint256"
660
+ },
661
+ {
662
+ "internalType": "uint64",
663
+ "name": "_exitDelay",
664
+ "type": "uint64"
665
+ }
666
+ ],
667
+ "name": "initialize",
668
+ "outputs": [],
669
+ "stateMutability": "nonpayable",
670
+ "type": "function"
671
+ },
672
+ {
673
+ "inputs": [
674
+ {
675
+ "internalType": "address",
676
+ "name": "operator",
677
+ "type": "address"
678
+ }
679
+ ],
680
+ "name": "isActive",
681
+ "outputs": [
682
+ {
683
+ "internalType": "bool",
684
+ "name": "",
685
+ "type": "bool"
686
+ }
687
+ ],
688
+ "stateMutability": "view",
689
+ "type": "function"
690
+ },
691
+ {
692
+ "inputs": [
693
+ {
694
+ "internalType": "address",
695
+ "name": "operator",
696
+ "type": "address"
697
+ }
698
+ ],
699
+ "name": "isLicensed",
700
+ "outputs": [
701
+ {
702
+ "internalType": "bool",
703
+ "name": "",
704
+ "type": "bool"
705
+ }
706
+ ],
707
+ "stateMutability": "view",
708
+ "type": "function"
709
+ },
710
+ {
711
+ "inputs": [
712
+ {
713
+ "internalType": "address",
714
+ "name": "operator",
715
+ "type": "address"
716
+ }
717
+ ],
718
+ "name": "isRegistered",
719
+ "outputs": [
720
+ {
721
+ "internalType": "bool",
722
+ "name": "",
723
+ "type": "bool"
724
+ }
725
+ ],
726
+ "stateMutability": "view",
727
+ "type": "function"
728
+ },
729
+ {
730
+ "inputs": [],
731
+ "name": "licenseActiveBps",
732
+ "outputs": [
733
+ {
734
+ "internalType": "uint256",
735
+ "name": "",
736
+ "type": "uint256"
737
+ }
738
+ ],
739
+ "stateMutability": "view",
740
+ "type": "function"
741
+ },
742
+ {
743
+ "inputs": [],
744
+ "name": "licenseRequiredBond",
745
+ "outputs": [
746
+ {
747
+ "internalType": "uint256",
748
+ "name": "",
749
+ "type": "uint256"
750
+ }
751
+ ],
752
+ "stateMutability": "view",
753
+ "type": "function"
754
+ },
755
+ {
756
+ "inputs": [],
757
+ "name": "licenseToken",
758
+ "outputs": [
759
+ {
760
+ "internalType": "contract IERC20",
761
+ "name": "",
762
+ "type": "address"
763
+ }
764
+ ],
765
+ "stateMutability": "view",
766
+ "type": "function"
767
+ },
768
+ {
769
+ "inputs": [],
770
+ "name": "minTicketBalance",
771
+ "outputs": [
772
+ {
773
+ "internalType": "uint256",
774
+ "name": "",
775
+ "type": "uint256"
776
+ }
777
+ ],
778
+ "stateMutability": "view",
779
+ "type": "function"
780
+ },
781
+ {
782
+ "inputs": [],
783
+ "name": "owner",
784
+ "outputs": [
785
+ {
786
+ "internalType": "address",
787
+ "name": "",
788
+ "type": "address"
789
+ }
790
+ ],
791
+ "stateMutability": "view",
792
+ "type": "function"
793
+ },
794
+ {
795
+ "inputs": [
796
+ {
797
+ "internalType": "address",
798
+ "name": "operator",
799
+ "type": "address"
800
+ }
801
+ ],
802
+ "name": "pendingExits",
803
+ "outputs": [
804
+ {
805
+ "internalType": "uint256",
806
+ "name": "ticket",
807
+ "type": "uint256"
808
+ },
809
+ {
810
+ "internalType": "uint256",
811
+ "name": "license",
812
+ "type": "uint256"
813
+ }
814
+ ],
815
+ "stateMutability": "view",
816
+ "type": "function"
817
+ },
818
+ {
819
+ "inputs": [
820
+ {
821
+ "internalType": "address",
822
+ "name": "operator",
823
+ "type": "address"
824
+ }
825
+ ],
826
+ "name": "previewClaimable",
827
+ "outputs": [
828
+ {
829
+ "internalType": "uint256",
830
+ "name": "ticket",
831
+ "type": "uint256"
832
+ },
833
+ {
834
+ "internalType": "uint256",
835
+ "name": "license",
836
+ "type": "uint256"
837
+ }
838
+ ],
839
+ "stateMutability": "view",
840
+ "type": "function"
841
+ },
842
+ {
843
+ "inputs": [],
844
+ "name": "registerOperator",
845
+ "outputs": [],
846
+ "stateMutability": "nonpayable",
847
+ "type": "function"
848
+ },
849
+ {
850
+ "inputs": [],
851
+ "name": "registry",
852
+ "outputs": [
853
+ {
854
+ "internalType": "contract ICiphernodeRegistry",
855
+ "name": "",
856
+ "type": "address"
857
+ }
858
+ ],
859
+ "stateMutability": "view",
860
+ "type": "function"
861
+ },
862
+ {
863
+ "inputs": [
864
+ {
865
+ "internalType": "uint256",
866
+ "name": "amount",
867
+ "type": "uint256"
868
+ }
869
+ ],
870
+ "name": "removeTicketBalance",
871
+ "outputs": [],
872
+ "stateMutability": "nonpayable",
873
+ "type": "function"
874
+ },
875
+ {
876
+ "inputs": [],
877
+ "name": "renounceOwnership",
878
+ "outputs": [],
879
+ "stateMutability": "nonpayable",
880
+ "type": "function"
881
+ },
882
+ {
883
+ "inputs": [],
884
+ "name": "rewardDistributor",
885
+ "outputs": [
886
+ {
887
+ "internalType": "address",
888
+ "name": "",
889
+ "type": "address"
890
+ }
891
+ ],
892
+ "stateMutability": "view",
893
+ "type": "function"
894
+ },
895
+ {
896
+ "inputs": [
897
+ {
898
+ "internalType": "uint64",
899
+ "name": "newExitDelay",
900
+ "type": "uint64"
901
+ }
902
+ ],
903
+ "name": "setExitDelay",
904
+ "outputs": [],
905
+ "stateMutability": "nonpayable",
906
+ "type": "function"
907
+ },
908
+ {
909
+ "inputs": [
910
+ {
911
+ "internalType": "uint256",
912
+ "name": "newBps",
913
+ "type": "uint256"
914
+ }
915
+ ],
916
+ "name": "setLicenseActiveBps",
917
+ "outputs": [],
918
+ "stateMutability": "nonpayable",
919
+ "type": "function"
920
+ },
921
+ {
922
+ "inputs": [
923
+ {
924
+ "internalType": "uint256",
925
+ "name": "newLicenseRequiredBond",
926
+ "type": "uint256"
927
+ }
928
+ ],
929
+ "name": "setLicenseRequiredBond",
930
+ "outputs": [],
931
+ "stateMutability": "nonpayable",
932
+ "type": "function"
933
+ },
934
+ {
935
+ "inputs": [
936
+ {
937
+ "internalType": "contract IERC20",
938
+ "name": "newLicenseToken",
939
+ "type": "address"
940
+ }
941
+ ],
942
+ "name": "setLicenseToken",
943
+ "outputs": [],
944
+ "stateMutability": "nonpayable",
945
+ "type": "function"
946
+ },
947
+ {
948
+ "inputs": [
949
+ {
950
+ "internalType": "uint256",
951
+ "name": "newMinTicketBalance",
952
+ "type": "uint256"
953
+ }
954
+ ],
955
+ "name": "setMinTicketBalance",
956
+ "outputs": [],
957
+ "stateMutability": "nonpayable",
958
+ "type": "function"
959
+ },
960
+ {
961
+ "inputs": [
962
+ {
963
+ "internalType": "contract ICiphernodeRegistry",
964
+ "name": "newRegistry",
965
+ "type": "address"
966
+ }
967
+ ],
968
+ "name": "setRegistry",
969
+ "outputs": [],
970
+ "stateMutability": "nonpayable",
971
+ "type": "function"
972
+ },
973
+ {
974
+ "inputs": [
975
+ {
976
+ "internalType": "address",
977
+ "name": "newRewardDistributor",
978
+ "type": "address"
979
+ }
980
+ ],
981
+ "name": "setRewardDistributor",
982
+ "outputs": [],
983
+ "stateMutability": "nonpayable",
984
+ "type": "function"
985
+ },
986
+ {
987
+ "inputs": [
988
+ {
989
+ "internalType": "address",
990
+ "name": "newSlashedFundsTreasury",
991
+ "type": "address"
992
+ }
993
+ ],
994
+ "name": "setSlashedFundsTreasury",
995
+ "outputs": [],
996
+ "stateMutability": "nonpayable",
997
+ "type": "function"
998
+ },
999
+ {
1000
+ "inputs": [
1001
+ {
1002
+ "internalType": "address",
1003
+ "name": "newSlashingManager",
1004
+ "type": "address"
1005
+ }
1006
+ ],
1007
+ "name": "setSlashingManager",
1008
+ "outputs": [],
1009
+ "stateMutability": "nonpayable",
1010
+ "type": "function"
1011
+ },
1012
+ {
1013
+ "inputs": [
1014
+ {
1015
+ "internalType": "uint256",
1016
+ "name": "newTicketPrice",
1017
+ "type": "uint256"
1018
+ }
1019
+ ],
1020
+ "name": "setTicketPrice",
1021
+ "outputs": [],
1022
+ "stateMutability": "nonpayable",
1023
+ "type": "function"
1024
+ },
1025
+ {
1026
+ "inputs": [
1027
+ {
1028
+ "internalType": "contract EnclaveTicketToken",
1029
+ "name": "newTicketToken",
1030
+ "type": "address"
1031
+ }
1032
+ ],
1033
+ "name": "setTicketToken",
1034
+ "outputs": [],
1035
+ "stateMutability": "nonpayable",
1036
+ "type": "function"
1037
+ },
1038
+ {
1039
+ "inputs": [
1040
+ {
1041
+ "internalType": "address",
1042
+ "name": "operator",
1043
+ "type": "address"
1044
+ },
1045
+ {
1046
+ "internalType": "uint256",
1047
+ "name": "requestedSlashAmount",
1048
+ "type": "uint256"
1049
+ },
1050
+ {
1051
+ "internalType": "bytes32",
1052
+ "name": "slashReason",
1053
+ "type": "bytes32"
1054
+ }
1055
+ ],
1056
+ "name": "slashLicenseBond",
1057
+ "outputs": [],
1058
+ "stateMutability": "nonpayable",
1059
+ "type": "function"
1060
+ },
1061
+ {
1062
+ "inputs": [
1063
+ {
1064
+ "internalType": "address",
1065
+ "name": "operator",
1066
+ "type": "address"
1067
+ },
1068
+ {
1069
+ "internalType": "uint256",
1070
+ "name": "requestedSlashAmount",
1071
+ "type": "uint256"
1072
+ },
1073
+ {
1074
+ "internalType": "bytes32",
1075
+ "name": "slashReason",
1076
+ "type": "bytes32"
1077
+ }
1078
+ ],
1079
+ "name": "slashTicketBalance",
1080
+ "outputs": [],
1081
+ "stateMutability": "nonpayable",
1082
+ "type": "function"
1083
+ },
1084
+ {
1085
+ "inputs": [],
1086
+ "name": "slashedFundsTreasury",
1087
+ "outputs": [
1088
+ {
1089
+ "internalType": "address",
1090
+ "name": "",
1091
+ "type": "address"
1092
+ }
1093
+ ],
1094
+ "stateMutability": "view",
1095
+ "type": "function"
1096
+ },
1097
+ {
1098
+ "inputs": [],
1099
+ "name": "slashedLicenseBond",
1100
+ "outputs": [
1101
+ {
1102
+ "internalType": "uint256",
1103
+ "name": "",
1104
+ "type": "uint256"
1105
+ }
1106
+ ],
1107
+ "stateMutability": "view",
1108
+ "type": "function"
1109
+ },
1110
+ {
1111
+ "inputs": [],
1112
+ "name": "slashedTicketBalance",
1113
+ "outputs": [
1114
+ {
1115
+ "internalType": "uint256",
1116
+ "name": "",
1117
+ "type": "uint256"
1118
+ }
1119
+ ],
1120
+ "stateMutability": "view",
1121
+ "type": "function"
1122
+ },
1123
+ {
1124
+ "inputs": [],
1125
+ "name": "slashingManager",
1126
+ "outputs": [
1127
+ {
1128
+ "internalType": "address",
1129
+ "name": "",
1130
+ "type": "address"
1131
+ }
1132
+ ],
1133
+ "stateMutability": "view",
1134
+ "type": "function"
1135
+ },
1136
+ {
1137
+ "inputs": [],
1138
+ "name": "ticketPrice",
1139
+ "outputs": [
1140
+ {
1141
+ "internalType": "uint256",
1142
+ "name": "",
1143
+ "type": "uint256"
1144
+ }
1145
+ ],
1146
+ "stateMutability": "view",
1147
+ "type": "function"
1148
+ },
1149
+ {
1150
+ "inputs": [],
1151
+ "name": "ticketToken",
1152
+ "outputs": [
1153
+ {
1154
+ "internalType": "contract EnclaveTicketToken",
1155
+ "name": "",
1156
+ "type": "address"
1157
+ }
1158
+ ],
1159
+ "stateMutability": "view",
1160
+ "type": "function"
1161
+ },
1162
+ {
1163
+ "inputs": [
1164
+ {
1165
+ "internalType": "address",
1166
+ "name": "newOwner",
1167
+ "type": "address"
1168
+ }
1169
+ ],
1170
+ "name": "transferOwnership",
1171
+ "outputs": [],
1172
+ "stateMutability": "nonpayable",
1173
+ "type": "function"
1174
+ },
1175
+ {
1176
+ "inputs": [
1177
+ {
1178
+ "internalType": "uint256",
1179
+ "name": "amount",
1180
+ "type": "uint256"
1181
+ }
1182
+ ],
1183
+ "name": "unbondLicense",
1184
+ "outputs": [],
1185
+ "stateMutability": "nonpayable",
1186
+ "type": "function"
1187
+ },
1188
+ {
1189
+ "inputs": [
1190
+ {
1191
+ "internalType": "uint256",
1192
+ "name": "ticketAmount",
1193
+ "type": "uint256"
1194
+ },
1195
+ {
1196
+ "internalType": "uint256",
1197
+ "name": "licenseAmount",
1198
+ "type": "uint256"
1199
+ }
1200
+ ],
1201
+ "name": "withdrawSlashedFunds",
1202
+ "outputs": [],
1203
+ "stateMutability": "nonpayable",
1204
+ "type": "function"
1205
+ }
1206
+ ];
1207
+ const _bytecode = "0x6080604052348015600e575f5ffd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6134fb806100d65f395ff3fe608060405234801561000f575f5ffd5b5060043610610330575f3560e01c80638e05aaae116101b3578063b7e833e0116100f3578063cca3a5011161009e578063dd8c818e11610079578063dd8c818e14610745578063e5da378f14610758578063e8341e891461076b578063f2fde38b14610774575f5ffd5b8063cca3a5011461070d578063d32759ed14610720578063d5ed4d5a14610733575f5ffd5b8063c3c5a547116100ce578063c3c5a547146106b2578063c43b1f34146106e7578063c9ca1acc146106fa575f5ffd5b8063b7e833e014610683578063bb03bd711461068c578063bff232c11461069f575f5ffd5b80639f8dfddd1161015e578063a91ee0dc11610139578063a91ee0dc14610622578063acc2166a14610635578063ada332dd14610648578063b2f3f6691461065b575f5ffd5b80639f8dfddd146105e9578063a1809b95146105fc578063a542c2a41461060f575f5ffd5b80638f9b1d871161018e5780638f9b1d87146105885780639d7555de146105915780639f8a13d7146105a4575f5ffd5b80638e05aaae1461054f5780638e5ce3ad146105625780638e9ddc0314610575575f5ffd5b8063671b93071161027e5780637333fa82116102295780637b103999116102045780637b103999146104e85780637c79a9da146104fb5780638450e44e1461050c5780638da5cb5b1461051f575f5ffd5b80637333fa82146104bc578063752c36c0146104cf578063781545b3146104d8575f5ffd5b806370f868a61161025957806370f868a61461048e578063715018a6146104a15780637264f3f2146104a9575f5ffd5b8063671b9307146104405780636d3c18d3146104685780636ecfef9a1461047b575f5ffd5b80632c98fd3b116102de5780634cabdd3d116102b95780634cabdd3d146103ef57806351ec538214610402578063561df99e1461042d575f5ffd5b80632c98fd3b146103c05780632e8d9930146103c9578063450e9dec146103dc575f5ffd5b806319fb279a1161030e57806319fb279a14610378578063283886301461038b5780632acde098146103b8575f5ffd5b80630691bdcf146103345780631209b1f6146103495780631598165014610365575b5f5ffd5b6103476103423660046130ff565b610787565b005b61035260065481565b6040519081526020015b60405180910390f35b61034761037336600461313e565b610b23565b61034761038636600461313e565b610bb3565b60095461039f9067ffffffffffffffff1681565b60405167ffffffffffffffff909116815260200161035c565b610347610e7b565b61035260085481565b6103476103d736600461313e565b6110e4565b6103476103ea366004613169565b61117a565b6103476103fd366004613184565b6111a3565b600154610415906001600160a01b031681565b6040516001600160a01b03909116815260200161035c565b61034761043b366004613169565b611412565b61035261044e366004613169565b6001600160a01b03165f908152600b602052604090205490565b610347610476366004613169565b611463565b610352610489366004613169565b61148d565b61034761049c36600461313e565b61150f565b610347611577565b6103476104b73660046131b6565b61158a565b6103476104ca3660046131f2565b6116d5565b61035260075481565b5f546001600160a01b0316610415565b600254610415906001600160a01b031681565b6001546001600160a01b0316610415565b61034761051a366004613289565b611870565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b0316610415565b61034761055d36600461313e565b6118f8565b600354610415906001600160a01b031681565b610347610583366004613184565b611ae8565b610352600a5481565b61034761059f36600461313e565b611c3d565b6105d96105b2366004613169565b6001600160a01b03165f908152600b6020526040902060010154600160501b900460ff1690565b604051901515815260200161035c565b6103476105f73660046131b6565b611e88565b61034761060a366004613169565b611f4d565b6105d961061d366004613169565b611f77565b610347610630366004613169565b611fa3565b600454610415906001600160a01b031681565b61034761065636600461313e565b611fcd565b61066e610669366004613169565b612157565b6040805192835260208301919091520161035c565b610352600c5481565b61035261069a3660046132a2565b61216d565b6103476106ad366004613169565b6121e7565b6105d96106c0366004613169565b6001600160a01b03165f908152600b6020526040902060010154600160401b900460ff1690565b6103476106f536600461313e565b612211565b61066e610708366004613169565b612299565b600554610415906001600160a01b031681565b6105d961072e366004613169565b6122a6565b5f54610415906001600160a01b031681565b6103476107533660046132cc565b61233a565b610352610766366004613169565b61247a565b610352600d5481565b610347610782366004613169565b6124e6565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b909304909316151560808201529161080e5750806020015167ffffffffffffffff1642105b1561082c5760405163376d91e160e21b815260040160405180910390fd5b335f908152600b602052604090206001810154600160401b900460ff166108665760405163aba4733960e01b815260040160405180910390fd5b60018101805469ffff00000000000000001916600160481b1790556009546108989067ffffffffffffffff1642613362565b60018201805467ffffffffffffffff191667ffffffffffffffff929092169190911790555f80546040516370a0823160e01b81523360048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015610902573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109269190613382565b825490915081156109e7575f5460405163216f226360e21b8152336004820152602481018490526001600160a01b03909116906385bc898c906044015f604051808303815f87803b158015610979575f5ffd5b505af115801561098b573d5f5f3e3d5ffd5b5050505067574954484452415760c01b336001600160a01b03167f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e846109d090613399565b604080519182525f60208301520160405180910390a35b8015610a3c575f83556515539093d39160d21b337f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6610a2584613399565b604080519182525f60208301520160405180910390a35b81151580610a4957508015155b15610a6b57600954610a6b90600e90339067ffffffffffffffff168585612528565b60025460405163a04e606560e01b81526001600160a01b039091169063a04e606590610a9f9033908b908b906004016133b3565b5f604051808303815f87803b158015610ab6575f5ffd5b505af1158015610ac8573d5f5f3e3d5ffd5b50505050600183015460405167ffffffffffffffff909116815233907f55278ae09e344fb61a9a1d094010b3ce004a7eacca9b11e10f0f119d03f1f38f9060200160405180910390a2610b1a336126ec565b50505050505050565b610b2b612839565b805f03610b4b5760405163c52a9bd360e01b815260040160405180910390fd5b600680549082905560408051828152602081018490527f7469636b65745072696365000000000000000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a91015b60405180910390a25050565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291610c3a5750806020015167ffffffffffffffff1642105b15610c585760405163376d91e160e21b815260040160405180910390fd5b825f03610c7857604051631f2a200560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff16610cb15760405163aba4733960e01b815260040160405180910390fd5b5f546040516370a0823160e01b815233600482015284916001600160a01b0316906370a0823190602401602060405180830381865afa158015610cf6573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d1a9190613382565b1015610d3957604051631e9acf1760e31b815260040160405180910390fd5b5f5460405163216f226360e21b8152336004820152602481018590526001600160a01b03909116906385bc898c906044015f604051808303815f87803b158015610d81575f5ffd5b505af1158015610d93573d5f5f3e3d5ffd5b5050600954610db39250600e9150339067ffffffffffffffff1686612894565b67574954484452415760c01b337f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e610dea86613399565b5f546040516370a0823160e01b81523360048201526001600160a01b03909116906370a08231906024015b602060405180830381865afa158015610e30573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e549190613382565b604080519283526020830191909152015b60405180910390a3610e76336126ec565b505050565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291610f025750806020015167ffffffffffffffff1642105b15610f205760405163376d91e160e21b815260040160405180910390fd5b335f908152600b6020526040902060010154600160481b900460ff1615610f6457335f908152600b60205260409020600101805469ff00ffffffffffffffff191690555b6003546040516397f735d560e01b81523360048201526001600160a01b03909116906397f735d590602401602060405180830381865afa158015610faa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fce9190613413565b15610fec576040516359b217d560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff161561102657604051630ea075bf60e21b815260040160405180910390fd5b600754335f908152600b60205260409020541015611057576040516396dcc1ef60e01b815260040160405180910390fd5b335f818152600b602052604090819020600101805468ff00000000000000001916600160401b1790556002549051638a78bb1560e01b815260048101929092526001600160a01b031690638a78bb15906024015f604051808303815f87803b1580156110c1575f5ffd5b505af11580156110d3573d5f5f3e3d5ffd5b505050506110e0336126ec565b5050565b6110ec612839565b5f811180156110fd57506127108111155b61111a5760405163c52a9bd360e01b815260040160405180910390fd5b600a80549082905560408051828152602081018490527f6c6963656e736541637469766542707300000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b611182612839565b5f80546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b031633146111cd576040516282b42960e81b815260040160405180910390fd5b815f036111ed57604051631f2a200560e01b815260040160405180910390fd5b5f6111f9600e856128a1565b505f80546040516370a0823160e01b81526001600160a01b038881166004830152939450919216906370a0823190602401602060405180830381865afa158015611245573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112699190613382565b90505f6112768383613432565b90505f61128386836128ca565b9050805f036112955750505050505050565b5f6112a082856128ca565b90508015611309575f5460405163216f226360e21b81526001600160a01b038a8116600483015260248201849052909116906385bc898c906044015f604051808303815f87803b1580156112f2575f5ffd5b505af1158015611304573d5f5f3e3d5ffd5b505050505b5f6113148284613445565b9050801561132e5761132b600e8a835f60016128d9565b50505b82600c5f82825461133f9190613432565b909155508790506001600160a01b038a167f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e61137a86613399565b5f546040516370a0823160e01b81526001600160a01b038f81166004830152909116906370a0823190602401602060405180830381865afa1580156113c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113e59190613382565b604080519283526020830191909152015b60405180910390a3611407896126ec565b505050505050505050565b61141a612839565b6001600160a01b0381166114415760405163d92e233d60e01b815260040160405180910390fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b61146b612839565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6006545f80546040516370a0823160e01b81526001600160a01b038581166004830152929392909116906370a0823190602401602060405180830381865afa1580156114db573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114ff9190613382565b6115099190613458565b92915050565b611517612839565b600880549082905560408051828152602081018490527f6d696e5469636b657442616c616e636500000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b61157f612839565b6115885f6129e7565b565b611592612839565b600c548211156115b557604051631e9acf1760e31b815260040160405180910390fd5b600d548111156115d857604051631e9acf1760e31b815260040160405180910390fd5b81156116575781600c5f8282546115ef9190613445565b90915550505f5460055460405163117de2fd60e01b81526001600160a01b0391821660048201526024810185905291169063117de2fd906044015f604051808303815f87803b158015611640575f5ffd5b505af1158015611652573d5f5f3e3d5ffd5b505050505b80156116905780600d5f82825461166e9190613445565b9091555050600554600154611690916001600160a01b03918216911683612a57565b60055460408051848152602081018490526001600160a01b03909216917f402cfba2a3f22a9ea7e8ad10259b9b4c638cc9c44444b06d6d0927c9e0275b119101610ba7565b5f6116de612acb565b805490915060ff600160401b820416159067ffffffffffffffff165f811580156117055750825b90505f8267ffffffffffffffff1660011480156117215750303b155b90508115801561172f575080155b1561174d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561177c57845468ff00000000000000001916600160401b1785555b61178533612af3565b61178e8d61117a565b6117978c611463565b6117a08b611fa3565b6117a98a611412565b6117b289610b23565b6117bb88612211565b6117c48761150f565b6117cd86611870565b6117d8611f406110e4565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b038f8116911614611815576118158e6124e6565b831561186057845468ff000000000000000019168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050505050505050565b611878612839565b6009805467ffffffffffffffff83811667ffffffffffffffff19831681179093556040519116917f6578697444656c61790000000000000000000000000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a91610ba791859190918252602082015260400190565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b909304909316151560808201529161197f5750806020015167ffffffffffffffff1642105b1561199d5760405163376d91e160e21b815260040160405180910390fd5b825f036119bd57604051631f2a200560e01b815260040160405180910390fd5b335f908152600b6020526040902060010154600160401b900460ff166119f65760405163aba4733960e01b815260040160405180910390fd5b5f546040516368a9674d60e01b815233600482018190526024820152604481018590526001600160a01b03909116906368a9674d906064016020604051808303815f875af1158015611a4a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a6e9190613413565b505f546040516370a0823160e01b815233600482018190527f4445504f534954000000000000000000000000000000000000000000000000009290917f51499681e2c0f67f5df906558cc5b02bba47d9fbedc196587288f05a81f95e7e9187916001600160a01b03909116906370a0823190602401610e15565b6003546001600160a01b03163314611b12576040516282b42960e81b815260040160405180910390fd5b815f03611b3257604051631f2a200560e01b815260040160405180910390fd5b6001600160a01b0383165f908152600b6020526040812090611b55600e866128a1565b9150505f81835f0154611b689190613432565b90505f611b7586836128ca565b9050805f03611b875750505050505050565b5f611b9582865f01546128ca565b90508015611bb55780855f015f828254611baf9190613445565b90915550505b5f611bc08284613445565b90508015611bda57611bd7600e8a5f8460016128d9565b50505b82600d5f828254611beb9190613432565b909155508790506001600160a01b038a167f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6611c2686613399565b8954604080519283526020830191909152016113f6565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b9093049093161515608082015291611cc45750806020015167ffffffffffffffff1642105b15611ce25760405163376d91e160e21b815260040160405180910390fd5b825f03611d0257604051631f2a200560e01b815260040160405180910390fd5b6001546040516370a0823160e01b81523060048201525f916001600160a01b0316906370a0823190602401602060405180830381865afa158015611d48573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d6c9190613382565b600154909150611d87906001600160a01b0316333087612b04565b6001546040516370a0823160e01b81523060048201525f9183916001600160a01b03909116906370a0823190602401602060405180830381865afa158015611dd1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611df59190613382565b611dff9190613445565b335f908152600b6020526040812080549293508392909190611e22908490613432565b9091555050335f818152600b602090815260409182902054825185815291820152631093d39160e21b92917f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d6910160405180910390a3611e81336126ec565b5050505050565b5f80611e97600e338686612b3d565b915091505f821180611ea857505f81115b611ec5576040516353d8d5b960e01b815260040160405180910390fd5b8115611f2a575f5460405163117de2fd60e01b8152336004820152602481018490526001600160a01b039091169063117de2fd906044015f604051808303815f87803b158015611f13575f5ffd5b505af1158015611f25573d5f5f3e3d5ffd5b505050505b8015611f4757600154611f47906001600160a01b03163383612a57565b50505050565b611f55612839565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b5f611f80612c41565b6001600160a01b039092165f908152600b60205260409020549190911015919050565b611fab612839565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b335f818152600b6020908152604091829020825160a0810184528154815260019091015467ffffffffffffffff81169282019290925260ff600160401b83048116151593820193909352600160481b8204831615801560608301819052600160501b90930490931615156080820152916120545750806020015167ffffffffffffffff1642105b156120725760405163376d91e160e21b815260040160405180910390fd5b825f0361209257604051631f2a200560e01b815260040160405180910390fd5b335f908152600b60205260409020548311156120c157604051631e9acf1760e31b815260040160405180910390fd5b335f908152600b6020526040812080548592906120df908490613445565b909155505060095461210090600e90339067ffffffffffffffff1686612c64565b6515539093d39160d21b337f4c52f863bab6f44fc6f6b3b7d4e5f57540cecf3bfc5c6734ce6fa55c6e3304d661213586613399565b335f908152600b60209081526040918290205482519384529083015201610e65565b5f80612164600e846128a1565b91509150915091565b5f8054604051630748d63560e31b81526001600160a01b0385811660048301526024820185905290911690633a46b1a890604401602060405180830381865afa1580156121bc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121e09190613382565b9392505050565b6121ef612839565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b612219612839565b805f036122395760405163c52a9bd360e01b815260040160405180910390fd5b600780549082905560408051828152602081018490527f6c6963656e73655265717569726564426f6e6400000000000000000000000000917f267ae0ed351cb5b33bc50158aa20231f6fe9dae49bf24c85e2d40686b32a1c0a9101610ba7565b5f80612164600e84612c71565b6001600160a01b0381165f908152600b60209081526040808320815160a0810183528154815260019091015467ffffffffffffffff81169382019390935260ff600160401b84048116151592820192909252600160481b8304821615801560608301819052600160501b9094049092161515608082015291906121e057506020015167ffffffffffffffff16421092915050565b6004546001600160a01b03163314612365576040516301e803c360e01b815260040160405180910390fd5b8281146123855760405163512509d360e11b815260040160405180910390fd5b825f5b81811015610b1a575f8484838181106123a3576123a3613477565b905060200201351180156124035750600b5f8787848181106123c7576123c7613477565b90506020020160208101906123dc9190613169565b6001600160a01b0316815260208101919091526040015f2060010154600160401b900460ff165b1561247257600454612472906001600160a01b031687878481811061242a5761242a613477565b905060200201602081019061243f9190613169565b86868581811061245157612451613477565b905060200201358a6001600160a01b0316612b04909392919063ffffffff16565b600101612388565b5f80546040516370a0823160e01b81526001600160a01b038481166004830152909116906370a0823190602401602060405180830381865afa1580156124c2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115099190613382565b6124ee612839565b6001600160a01b03811661251c57604051631e4fbdf760e01b81525f60048201526024015b60405180910390fd5b612525816129e7565b50565b81158015612534575080155b611e81574261254b8467ffffffffffffffff61348b565b67ffffffffffffffff168167ffffffffffffffff16111561257f5760405163549a019760e01b815260040160405180910390fd5b5f61258a8583613362565b6001600160a01b0387165f908152602089905260408120805492935091908115612637575f836125bb600185613445565b815481106125cb576125cb613477565b5f9182526020909120600390910201805490915067ffffffffffffffff8087169116036126355787156126115787816001015f82825461260b9190613432565b90915550505b86156126305786816002015f82825461262a9190613432565b90915550505b600191505b505b8061267d578254600180820185555f858152602090206003909202909101805467ffffffffffffffff191667ffffffffffffffff87161781559081018890556002018690555b61268b8a8a89896001612d15565b604080518881526020810188905267ffffffffffffffff86168183015290516001600160a01b038b16917fa798fa3372862b9279e9279338081d2e0828e908501dbdf4cf8e2ef83867649d919081900360600190a250505050505050505050565b6001600160a01b0381165f908152600b602052604081206001810154909190600160401b900460ff1680156127295750612724612c41565b825410155b80156127ae57506008546006545f546040516370a0823160e01b81526001600160a01b038781166004830152909116906370a0823190602401602060405180830381865afa15801561277d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127a19190613382565b6127ab9190613458565b10155b600183015490915060ff600160501b90910416151581151514610e7657600182018054821515600160501b026aff00000000000000000000199091161790556040516001600160a01b038416907f1e5cd4157c0bec375761492bfd692468cecd66e6cb75f397a5195b570692d9059061282c90841515815260200190565b60405180910390a2505050565b3361286b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b0316146115885760405163118cdaa760e01b8152336004820152602401612513565b611f47848484845f612528565b6001600160a01b0381165f908152600283016020526040902080546001909101545b9250929050565b5f8282188284100282186121e0565b5f808415612925576128ee8787875f87612dc3565b91508115612925576001600160a01b0386165f9081526002880160205260408120805484929061291f908490613445565b90915550505b831561297357612939878786600187612dc3565b90508015612973576001600160a01b0386165f9081526002880160205260408120600101805483929061296d908490613445565b90915550505b5f82118061298057505f81115b156129dd5761298f8787612f66565b60408051838152602081018390528415158183015290516001600160a01b038816917faaff5d2d15d2258450693fb56a7e9be67429e9a925525019086c620c5323fd9b919081900360600190a25b9550959350505050565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a3505050565b6040516001600160a01b03838116602483015260448201839052610e7691859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061300c565b5f807ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00611509565b612afb613078565b6125258161309d565b6040516001600160a01b038481166024830152838116604483015260648201839052611f479186918216906323b872dd90608401612a84565b5f808315612b8957612b528686865f5f612dc3565b91508115612b89576001600160a01b0385165f90815260028701602052604081208054849290612b83908490613445565b90915550505b8215612bd757612b9d86868560015f612dc3565b90508015612bd7576001600160a01b0385165f90815260028701602052604081206001018054839290612bd1908490613445565b90915550505b5f821180612be457505f81115b15612c3857612bf38686612f66565b60408051838152602081018390526001600160a01b038716917fbd58523b9978b5fb3c6487ecc5b6a8ef9cd69c5fb07fb39e0af1e45ef2855fcc910160405180910390a25b94509492505050565b5f612710600a54600754612c5591906134ab565b612c5f9190613458565b905090565b611f478484845f85612528565b6001600160a01b0381165f9081526020838152604080832060018601909252822054829190805b8254811015612d0b575f838281548110612cb457612cb4613477565b5f9182526020909120600390910201805490915067ffffffffffffffff16421015612cdf5750612d0b565b6001810154612cee9087613432565b9550806002015485612d009190613432565b945050600101612c98565b5050509250929050565b82821715611e81576001600160a01b0384165f90815260028601602052604090208115612d7e578315612d5a5783815f015f828254612d549190613432565b90915550505b8215612d795782816001015f828254612d739190613432565b90915550505b612dbb565b8315612d9c5783815f015f828254612d969190613445565b90915550505b8215612dbb5782816001015f828254612db59190613445565b90915550505b505050505050565b5f835f03612dd257505f612f5d565b6001600160a01b0385165f9081526020878152604080832060018a01909252909120548154865b5f81118015612e0757508183105b15612f3f575f848481548110612e1f57612e1f613477565b905f5260205f209060030201905086158015612e455750805467ffffffffffffffff1642105b15612e505750612f3f565b5f80896001811115612e6457612e646134c2565b03612e7457506001810154612e7b565b5060028101545b805f03612e965784612e8c816134d6565b9550505050612df9565b5f818410612ea45781612ea6565b835b90505f8a6001811115612ebb57612ebb6134c2565b03612ede5780836001015f828254612ed39190613445565b90915550612ef79050565b80836002015f828254612ef19190613445565b90915550505b612f018185613445565b9350612f0d8189613432565b975082600101545f148015612f2457506002830154155b15612f375785612f33816134d6565b9650505b505050612df9565b50506001600160a01b0387165f908152600189016020526040902055505b95945050505050565b6001600160a01b0381165f9081526020838152604080832060018601909252909120545b8154811015612fec575f828281548110612fa657612fa6613477565b905f5260205f209060030201905080600101545f148015612fc957506002810154155b15612fe05781612fd8816134d6565b925050612fe6565b50612fec565b50612f8a565b6001600160a01b039092165f908152600190930160205250604090912055565b5f5f60205f8451602086015f885af18061302b576040513d5f823e3d81fd5b50505f513d9150811561304257806001141561304f565b6001600160a01b0384163b155b15611f4757604051635274afe760e01b81526001600160a01b0385166004820152602401612513565b6130806130a5565b61158857604051631afcd79f60e31b815260040160405180910390fd5b6124ee613078565b5f6130ae612acb565b54600160401b900460ff16919050565b5f5f83601f8401126130ce575f5ffd5b50813567ffffffffffffffff8111156130e5575f5ffd5b6020830191508360208260051b85010111156128c3575f5ffd5b5f5f60208385031215613110575f5ffd5b823567ffffffffffffffff811115613126575f5ffd5b613132858286016130be565b90969095509350505050565b5f6020828403121561314e575f5ffd5b5035919050565b6001600160a01b0381168114612525575f5ffd5b5f60208284031215613179575f5ffd5b81356121e081613155565b5f5f5f60608486031215613196575f5ffd5b83356131a181613155565b95602085013595506040909401359392505050565b5f5f604083850312156131c7575f5ffd5b50508035926020909101359150565b803567ffffffffffffffff811681146131ed575f5ffd5b919050565b5f5f5f5f5f5f5f5f5f6101208a8c03121561320b575f5ffd5b893561321681613155565b985060208a013561322681613155565b975060408a013561323681613155565b965060608a013561324681613155565b955060808a013561325681613155565b945060a08a0135935060c08a0135925060e08a0135915061327a6101008b016131d6565b90509295985092959850929598565b5f60208284031215613299575f5ffd5b6121e0826131d6565b5f5f604083850312156132b3575f5ffd5b82356132be81613155565b946020939093013593505050565b5f5f5f5f5f606086880312156132e0575f5ffd5b85356132eb81613155565b9450602086013567ffffffffffffffff811115613306575f5ffd5b613312888289016130be565b909550935050604086013567ffffffffffffffff811115613331575f5ffd5b61333d888289016130be565b969995985093965092949392505050565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156115095761150961334e565b5f60208284031215613392575f5ffd5b5051919050565b5f600160ff1b82016133ad576133ad61334e565b505f0390565b6001600160a01b0384168152604060208201528160408201525f7f07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8311156133f9575f5ffd5b8260051b8085606085013791909101606001949350505050565b5f60208284031215613423575f5ffd5b815180151581146121e0575f5ffd5b808201808211156115095761150961334e565b818103818111156115095761150961334e565b5f8261347257634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b67ffffffffffffffff82811682821603908111156115095761150961334e565b80820281158282048414176115095761150961334e565b634e487b7160e01b5f52602160045260245ffd5b5f600182016134e7576134e761334e565b506001019056fea164736f6c634300081c000a";
1208
+ const isSuperArgs = (xs) => xs.length > 1;
1209
+ export class BondingRegistry__factory extends ContractFactory {
1210
+ constructor(...args) {
1211
+ if (isSuperArgs(args)) {
1212
+ super(...args);
1213
+ }
1214
+ else {
1215
+ super(_abi, _bytecode, args[0]);
1216
+ }
1217
+ }
1218
+ getDeployTransaction(overrides) {
1219
+ return super.getDeployTransaction(overrides || {});
1220
+ }
1221
+ ;
1222
+ deploy(overrides) {
1223
+ return super.deploy(overrides || {});
1224
+ }
1225
+ connect(runner) {
1226
+ return super.connect(runner);
1227
+ }
1228
+ static bytecode = _bytecode;
1229
+ static abi = _abi;
1230
+ static createInterface() {
1231
+ return new Interface(_abi);
1232
+ }
1233
+ attach(address) {
1234
+ return super.attach(address);
1235
+ }
1236
+ static connect(address, runner) {
1237
+ return new Contract(address, _abi, runner);
1238
+ }
1239
+ }