@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,592 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "../../common.js";
3
+ export declare namespace ISlashingManager {
4
+ type SlashPolicyStruct = {
5
+ ticketPenalty: BigNumberish;
6
+ licensePenalty: BigNumberish;
7
+ requiresProof: boolean;
8
+ proofVerifier: AddressLike;
9
+ banNode: boolean;
10
+ appealWindow: BigNumberish;
11
+ enabled: boolean;
12
+ };
13
+ type SlashPolicyStructOutput = [ticketPenalty: bigint, licensePenalty: bigint, requiresProof: boolean, proofVerifier: string, banNode: boolean, appealWindow: bigint, enabled: boolean] & {
14
+ ticketPenalty: bigint;
15
+ licensePenalty: bigint;
16
+ requiresProof: boolean;
17
+ proofVerifier: string;
18
+ banNode: boolean;
19
+ appealWindow: bigint;
20
+ enabled: boolean;
21
+ };
22
+ type SlashProposalStruct = {
23
+ operator: AddressLike;
24
+ reason: BytesLike;
25
+ ticketAmount: BigNumberish;
26
+ licenseAmount: BigNumberish;
27
+ executed: boolean;
28
+ appealed: boolean;
29
+ resolved: boolean;
30
+ appealUpheld: boolean;
31
+ proposedAt: BigNumberish;
32
+ executableAt: BigNumberish;
33
+ proposer: AddressLike;
34
+ proofHash: BytesLike;
35
+ proofVerified: boolean;
36
+ };
37
+ type SlashProposalStructOutput = [operator: string, reason: string, ticketAmount: bigint, licenseAmount: bigint, executed: boolean, appealed: boolean, resolved: boolean, appealUpheld: boolean, proposedAt: bigint, executableAt: bigint, proposer: string, proofHash: string, proofVerified: boolean] & {
38
+ operator: string;
39
+ reason: string;
40
+ ticketAmount: bigint;
41
+ licenseAmount: bigint;
42
+ executed: boolean;
43
+ appealed: boolean;
44
+ resolved: boolean;
45
+ appealUpheld: boolean;
46
+ proposedAt: bigint;
47
+ executableAt: bigint;
48
+ proposer: string;
49
+ proofHash: string;
50
+ proofVerified: boolean;
51
+ };
52
+ }
53
+ export interface SlashingManagerInterface extends Interface {
54
+ getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "GOVERNANCE_ROLE" | "SLASHER_ROLE" | "VERIFIER_ROLE" | "addSlasher" | "addVerifier" | "banned" | "bondingRegistry" | "executeSlash" | "fileAppeal" | "getRoleAdmin" | "getSlashPolicy" | "getSlashProposal" | "grantRole" | "hasRole" | "isBanned" | "proposeSlash" | "removeSlasher" | "removeVerifier" | "renounceRole" | "resolveAppeal" | "revokeRole" | "setBondingRegistry" | "setSlashPolicy" | "slashPolicies" | "supportsInterface" | "totalProposals" | "updateBanStatus"): FunctionFragment;
55
+ getEvent(nameOrSignatureOrTopic: "AppealFiled" | "AppealResolved" | "NodeBanUpdated" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "SlashExecuted" | "SlashPolicyUpdated" | "SlashProposed"): EventFragment;
56
+ encodeFunctionData(functionFragment: 'DEFAULT_ADMIN_ROLE', values?: undefined): string;
57
+ encodeFunctionData(functionFragment: 'GOVERNANCE_ROLE', values?: undefined): string;
58
+ encodeFunctionData(functionFragment: 'SLASHER_ROLE', values?: undefined): string;
59
+ encodeFunctionData(functionFragment: 'VERIFIER_ROLE', values?: undefined): string;
60
+ encodeFunctionData(functionFragment: 'addSlasher', values: [AddressLike]): string;
61
+ encodeFunctionData(functionFragment: 'addVerifier', values: [AddressLike]): string;
62
+ encodeFunctionData(functionFragment: 'banned', values: [AddressLike]): string;
63
+ encodeFunctionData(functionFragment: 'bondingRegistry', values?: undefined): string;
64
+ encodeFunctionData(functionFragment: 'executeSlash', values: [BigNumberish]): string;
65
+ encodeFunctionData(functionFragment: 'fileAppeal', values: [BigNumberish, string]): string;
66
+ encodeFunctionData(functionFragment: 'getRoleAdmin', values: [BytesLike]): string;
67
+ encodeFunctionData(functionFragment: 'getSlashPolicy', values: [BytesLike]): string;
68
+ encodeFunctionData(functionFragment: 'getSlashProposal', values: [BigNumberish]): string;
69
+ encodeFunctionData(functionFragment: 'grantRole', values: [BytesLike, AddressLike]): string;
70
+ encodeFunctionData(functionFragment: 'hasRole', values: [BytesLike, AddressLike]): string;
71
+ encodeFunctionData(functionFragment: 'isBanned', values: [AddressLike]): string;
72
+ encodeFunctionData(functionFragment: 'proposeSlash', values: [AddressLike, BytesLike, BytesLike]): string;
73
+ encodeFunctionData(functionFragment: 'removeSlasher', values: [AddressLike]): string;
74
+ encodeFunctionData(functionFragment: 'removeVerifier', values: [AddressLike]): string;
75
+ encodeFunctionData(functionFragment: 'renounceRole', values: [BytesLike, AddressLike]): string;
76
+ encodeFunctionData(functionFragment: 'resolveAppeal', values: [BigNumberish, boolean, string]): string;
77
+ encodeFunctionData(functionFragment: 'revokeRole', values: [BytesLike, AddressLike]): string;
78
+ encodeFunctionData(functionFragment: 'setBondingRegistry', values: [AddressLike]): string;
79
+ encodeFunctionData(functionFragment: 'setSlashPolicy', values: [BytesLike, ISlashingManager.SlashPolicyStruct]): string;
80
+ encodeFunctionData(functionFragment: 'slashPolicies', values: [BytesLike]): string;
81
+ encodeFunctionData(functionFragment: 'supportsInterface', values: [BytesLike]): string;
82
+ encodeFunctionData(functionFragment: 'totalProposals', values?: undefined): string;
83
+ encodeFunctionData(functionFragment: 'updateBanStatus', values: [AddressLike, boolean, BytesLike]): string;
84
+ decodeFunctionResult(functionFragment: 'DEFAULT_ADMIN_ROLE', data: BytesLike): Result;
85
+ decodeFunctionResult(functionFragment: 'GOVERNANCE_ROLE', data: BytesLike): Result;
86
+ decodeFunctionResult(functionFragment: 'SLASHER_ROLE', data: BytesLike): Result;
87
+ decodeFunctionResult(functionFragment: 'VERIFIER_ROLE', data: BytesLike): Result;
88
+ decodeFunctionResult(functionFragment: 'addSlasher', data: BytesLike): Result;
89
+ decodeFunctionResult(functionFragment: 'addVerifier', data: BytesLike): Result;
90
+ decodeFunctionResult(functionFragment: 'banned', data: BytesLike): Result;
91
+ decodeFunctionResult(functionFragment: 'bondingRegistry', data: BytesLike): Result;
92
+ decodeFunctionResult(functionFragment: 'executeSlash', data: BytesLike): Result;
93
+ decodeFunctionResult(functionFragment: 'fileAppeal', data: BytesLike): Result;
94
+ decodeFunctionResult(functionFragment: 'getRoleAdmin', data: BytesLike): Result;
95
+ decodeFunctionResult(functionFragment: 'getSlashPolicy', data: BytesLike): Result;
96
+ decodeFunctionResult(functionFragment: 'getSlashProposal', data: BytesLike): Result;
97
+ decodeFunctionResult(functionFragment: 'grantRole', data: BytesLike): Result;
98
+ decodeFunctionResult(functionFragment: 'hasRole', data: BytesLike): Result;
99
+ decodeFunctionResult(functionFragment: 'isBanned', data: BytesLike): Result;
100
+ decodeFunctionResult(functionFragment: 'proposeSlash', data: BytesLike): Result;
101
+ decodeFunctionResult(functionFragment: 'removeSlasher', data: BytesLike): Result;
102
+ decodeFunctionResult(functionFragment: 'removeVerifier', data: BytesLike): Result;
103
+ decodeFunctionResult(functionFragment: 'renounceRole', data: BytesLike): Result;
104
+ decodeFunctionResult(functionFragment: 'resolveAppeal', data: BytesLike): Result;
105
+ decodeFunctionResult(functionFragment: 'revokeRole', data: BytesLike): Result;
106
+ decodeFunctionResult(functionFragment: 'setBondingRegistry', data: BytesLike): Result;
107
+ decodeFunctionResult(functionFragment: 'setSlashPolicy', data: BytesLike): Result;
108
+ decodeFunctionResult(functionFragment: 'slashPolicies', data: BytesLike): Result;
109
+ decodeFunctionResult(functionFragment: 'supportsInterface', data: BytesLike): Result;
110
+ decodeFunctionResult(functionFragment: 'totalProposals', data: BytesLike): Result;
111
+ decodeFunctionResult(functionFragment: 'updateBanStatus', data: BytesLike): Result;
112
+ }
113
+ export declare namespace AppealFiledEvent {
114
+ type InputTuple = [proposalId: BigNumberish, operator: AddressLike, reason: BytesLike, evidence: string];
115
+ type OutputTuple = [proposalId: bigint, operator: string, reason: string, evidence: string];
116
+ interface OutputObject {
117
+ proposalId: bigint;
118
+ operator: string;
119
+ reason: string;
120
+ evidence: string;
121
+ }
122
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
123
+ type Filter = TypedDeferredTopicFilter<Event>;
124
+ type Log = TypedEventLog<Event>;
125
+ type LogDescription = TypedLogDescription<Event>;
126
+ }
127
+ export declare namespace AppealResolvedEvent {
128
+ type InputTuple = [proposalId: BigNumberish, operator: AddressLike, appealUpheld: boolean, resolver: AddressLike, resolution: string];
129
+ type OutputTuple = [proposalId: bigint, operator: string, appealUpheld: boolean, resolver: string, resolution: string];
130
+ interface OutputObject {
131
+ proposalId: bigint;
132
+ operator: string;
133
+ appealUpheld: boolean;
134
+ resolver: string;
135
+ resolution: string;
136
+ }
137
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
138
+ type Filter = TypedDeferredTopicFilter<Event>;
139
+ type Log = TypedEventLog<Event>;
140
+ type LogDescription = TypedLogDescription<Event>;
141
+ }
142
+ export declare namespace NodeBanUpdatedEvent {
143
+ type InputTuple = [node: AddressLike, status: boolean, reason: BytesLike, updater: AddressLike];
144
+ type OutputTuple = [node: string, status: boolean, reason: string, updater: string];
145
+ interface OutputObject {
146
+ node: string;
147
+ status: boolean;
148
+ reason: string;
149
+ updater: string;
150
+ }
151
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
152
+ type Filter = TypedDeferredTopicFilter<Event>;
153
+ type Log = TypedEventLog<Event>;
154
+ type LogDescription = TypedLogDescription<Event>;
155
+ }
156
+ export declare namespace RoleAdminChangedEvent {
157
+ type InputTuple = [role: BytesLike, previousAdminRole: BytesLike, newAdminRole: BytesLike];
158
+ type OutputTuple = [role: string, previousAdminRole: string, newAdminRole: string];
159
+ interface OutputObject {
160
+ role: string;
161
+ previousAdminRole: string;
162
+ newAdminRole: string;
163
+ }
164
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
165
+ type Filter = TypedDeferredTopicFilter<Event>;
166
+ type Log = TypedEventLog<Event>;
167
+ type LogDescription = TypedLogDescription<Event>;
168
+ }
169
+ export declare namespace RoleGrantedEvent {
170
+ type InputTuple = [role: BytesLike, account: AddressLike, sender: AddressLike];
171
+ type OutputTuple = [role: string, account: string, sender: string];
172
+ interface OutputObject {
173
+ role: string;
174
+ account: string;
175
+ sender: string;
176
+ }
177
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
178
+ type Filter = TypedDeferredTopicFilter<Event>;
179
+ type Log = TypedEventLog<Event>;
180
+ type LogDescription = TypedLogDescription<Event>;
181
+ }
182
+ export declare namespace RoleRevokedEvent {
183
+ type InputTuple = [role: BytesLike, account: AddressLike, sender: AddressLike];
184
+ type OutputTuple = [role: string, account: string, sender: string];
185
+ interface OutputObject {
186
+ role: string;
187
+ account: string;
188
+ sender: string;
189
+ }
190
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
191
+ type Filter = TypedDeferredTopicFilter<Event>;
192
+ type Log = TypedEventLog<Event>;
193
+ type LogDescription = TypedLogDescription<Event>;
194
+ }
195
+ export declare namespace SlashExecutedEvent {
196
+ type InputTuple = [proposalId: BigNumberish, operator: AddressLike, reason: BytesLike, ticketAmount: BigNumberish, licenseAmount: BigNumberish, executed: boolean];
197
+ type OutputTuple = [proposalId: bigint, operator: string, reason: string, ticketAmount: bigint, licenseAmount: bigint, executed: boolean];
198
+ interface OutputObject {
199
+ proposalId: bigint;
200
+ operator: string;
201
+ reason: string;
202
+ ticketAmount: bigint;
203
+ licenseAmount: bigint;
204
+ executed: boolean;
205
+ }
206
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
207
+ type Filter = TypedDeferredTopicFilter<Event>;
208
+ type Log = TypedEventLog<Event>;
209
+ type LogDescription = TypedLogDescription<Event>;
210
+ }
211
+ export declare namespace SlashPolicyUpdatedEvent {
212
+ type InputTuple = [reason: BytesLike, policy: ISlashingManager.SlashPolicyStruct];
213
+ type OutputTuple = [reason: string, policy: ISlashingManager.SlashPolicyStructOutput];
214
+ interface OutputObject {
215
+ reason: string;
216
+ policy: ISlashingManager.SlashPolicyStructOutput;
217
+ }
218
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
219
+ type Filter = TypedDeferredTopicFilter<Event>;
220
+ type Log = TypedEventLog<Event>;
221
+ type LogDescription = TypedLogDescription<Event>;
222
+ }
223
+ export declare namespace SlashProposedEvent {
224
+ type InputTuple = [proposalId: BigNumberish, operator: AddressLike, reason: BytesLike, ticketAmount: BigNumberish, licenseAmount: BigNumberish, executableAt: BigNumberish, proposer: AddressLike];
225
+ type OutputTuple = [proposalId: bigint, operator: string, reason: string, ticketAmount: bigint, licenseAmount: bigint, executableAt: bigint, proposer: string];
226
+ interface OutputObject {
227
+ proposalId: bigint;
228
+ operator: string;
229
+ reason: string;
230
+ ticketAmount: bigint;
231
+ licenseAmount: bigint;
232
+ executableAt: bigint;
233
+ proposer: string;
234
+ }
235
+ type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
236
+ type Filter = TypedDeferredTopicFilter<Event>;
237
+ type Log = TypedEventLog<Event>;
238
+ type LogDescription = TypedLogDescription<Event>;
239
+ }
240
+ export interface SlashingManager extends BaseContract {
241
+ connect(runner?: ContractRunner | null): SlashingManager;
242
+ waitForDeployment(): Promise<this>;
243
+ interface: SlashingManagerInterface;
244
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
245
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
246
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
247
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
248
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
249
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
250
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
251
+ listeners(eventName?: string): Promise<Array<Listener>>;
252
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
253
+ DEFAULT_ADMIN_ROLE: TypedContractMethod<[
254
+ ], [
255
+ string
256
+ ], 'view'>;
257
+ GOVERNANCE_ROLE: TypedContractMethod<[
258
+ ], [
259
+ string
260
+ ], 'view'>;
261
+ SLASHER_ROLE: TypedContractMethod<[
262
+ ], [
263
+ string
264
+ ], 'view'>;
265
+ VERIFIER_ROLE: TypedContractMethod<[
266
+ ], [
267
+ string
268
+ ], 'view'>;
269
+ addSlasher: TypedContractMethod<[
270
+ slasher: AddressLike
271
+ ], [
272
+ void
273
+ ], 'nonpayable'>;
274
+ addVerifier: TypedContractMethod<[
275
+ verifier: AddressLike
276
+ ], [
277
+ void
278
+ ], 'nonpayable'>;
279
+ banned: TypedContractMethod<[
280
+ node: AddressLike
281
+ ], [
282
+ boolean
283
+ ], 'view'>;
284
+ bondingRegistry: TypedContractMethod<[
285
+ ], [
286
+ string
287
+ ], 'view'>;
288
+ executeSlash: TypedContractMethod<[
289
+ proposalId: BigNumberish
290
+ ], [
291
+ void
292
+ ], 'nonpayable'>;
293
+ fileAppeal: TypedContractMethod<[
294
+ proposalId: BigNumberish,
295
+ evidence: string
296
+ ], [
297
+ void
298
+ ], 'nonpayable'>;
299
+ getRoleAdmin: TypedContractMethod<[
300
+ role: BytesLike
301
+ ], [
302
+ string
303
+ ], 'view'>;
304
+ getSlashPolicy: TypedContractMethod<[
305
+ reason: BytesLike
306
+ ], [
307
+ ISlashingManager.SlashPolicyStructOutput
308
+ ], 'view'>;
309
+ getSlashProposal: TypedContractMethod<[
310
+ proposalId: BigNumberish
311
+ ], [
312
+ ISlashingManager.SlashProposalStructOutput
313
+ ], 'view'>;
314
+ grantRole: TypedContractMethod<[
315
+ role: BytesLike,
316
+ account: AddressLike
317
+ ], [
318
+ void
319
+ ], 'nonpayable'>;
320
+ hasRole: TypedContractMethod<[
321
+ role: BytesLike,
322
+ account: AddressLike
323
+ ], [
324
+ boolean
325
+ ], 'view'>;
326
+ isBanned: TypedContractMethod<[
327
+ node: AddressLike
328
+ ], [
329
+ boolean
330
+ ], 'view'>;
331
+ proposeSlash: TypedContractMethod<[
332
+ operator: AddressLike,
333
+ reason: BytesLike,
334
+ proof: BytesLike
335
+ ], [
336
+ bigint
337
+ ], 'nonpayable'>;
338
+ removeSlasher: TypedContractMethod<[
339
+ slasher: AddressLike
340
+ ], [
341
+ void
342
+ ], 'nonpayable'>;
343
+ removeVerifier: TypedContractMethod<[
344
+ verifier: AddressLike
345
+ ], [
346
+ void
347
+ ], 'nonpayable'>;
348
+ renounceRole: TypedContractMethod<[
349
+ role: BytesLike,
350
+ callerConfirmation: AddressLike
351
+ ], [
352
+ void
353
+ ], 'nonpayable'>;
354
+ resolveAppeal: TypedContractMethod<[
355
+ proposalId: BigNumberish,
356
+ appealUpheld: boolean,
357
+ resolution: string
358
+ ], [
359
+ void
360
+ ], 'nonpayable'>;
361
+ revokeRole: TypedContractMethod<[
362
+ role: BytesLike,
363
+ account: AddressLike
364
+ ], [
365
+ void
366
+ ], 'nonpayable'>;
367
+ setBondingRegistry: TypedContractMethod<[
368
+ newBondingRegistry: AddressLike
369
+ ], [
370
+ void
371
+ ], 'nonpayable'>;
372
+ setSlashPolicy: TypedContractMethod<[
373
+ reason: BytesLike,
374
+ policy: ISlashingManager.SlashPolicyStruct
375
+ ], [
376
+ void
377
+ ], 'nonpayable'>;
378
+ slashPolicies: TypedContractMethod<[
379
+ reason: BytesLike
380
+ ], [
381
+ [bigint, bigint, boolean, string, boolean, bigint, boolean] & {
382
+ ticketPenalty: bigint;
383
+ licensePenalty: bigint;
384
+ requiresProof: boolean;
385
+ proofVerifier: string;
386
+ banNode: boolean;
387
+ appealWindow: bigint;
388
+ enabled: boolean;
389
+ }
390
+ ], 'view'>;
391
+ supportsInterface: TypedContractMethod<[
392
+ interfaceId: BytesLike
393
+ ], [
394
+ boolean
395
+ ], 'view'>;
396
+ totalProposals: TypedContractMethod<[
397
+ ], [
398
+ bigint
399
+ ], 'view'>;
400
+ updateBanStatus: TypedContractMethod<[
401
+ node: AddressLike,
402
+ status: boolean,
403
+ reason: BytesLike
404
+ ], [
405
+ void
406
+ ], 'nonpayable'>;
407
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
408
+ getFunction(nameOrSignature: 'DEFAULT_ADMIN_ROLE'): TypedContractMethod<[
409
+ ], [
410
+ string
411
+ ], 'view'>;
412
+ getFunction(nameOrSignature: 'GOVERNANCE_ROLE'): TypedContractMethod<[
413
+ ], [
414
+ string
415
+ ], 'view'>;
416
+ getFunction(nameOrSignature: 'SLASHER_ROLE'): TypedContractMethod<[
417
+ ], [
418
+ string
419
+ ], 'view'>;
420
+ getFunction(nameOrSignature: 'VERIFIER_ROLE'): TypedContractMethod<[
421
+ ], [
422
+ string
423
+ ], 'view'>;
424
+ getFunction(nameOrSignature: 'addSlasher'): TypedContractMethod<[
425
+ slasher: AddressLike
426
+ ], [
427
+ void
428
+ ], 'nonpayable'>;
429
+ getFunction(nameOrSignature: 'addVerifier'): TypedContractMethod<[
430
+ verifier: AddressLike
431
+ ], [
432
+ void
433
+ ], 'nonpayable'>;
434
+ getFunction(nameOrSignature: 'banned'): TypedContractMethod<[
435
+ node: AddressLike
436
+ ], [
437
+ boolean
438
+ ], 'view'>;
439
+ getFunction(nameOrSignature: 'bondingRegistry'): TypedContractMethod<[
440
+ ], [
441
+ string
442
+ ], 'view'>;
443
+ getFunction(nameOrSignature: 'executeSlash'): TypedContractMethod<[
444
+ proposalId: BigNumberish
445
+ ], [
446
+ void
447
+ ], 'nonpayable'>;
448
+ getFunction(nameOrSignature: 'fileAppeal'): TypedContractMethod<[
449
+ proposalId: BigNumberish,
450
+ evidence: string
451
+ ], [
452
+ void
453
+ ], 'nonpayable'>;
454
+ getFunction(nameOrSignature: 'getRoleAdmin'): TypedContractMethod<[
455
+ role: BytesLike
456
+ ], [
457
+ string
458
+ ], 'view'>;
459
+ getFunction(nameOrSignature: 'getSlashPolicy'): TypedContractMethod<[
460
+ reason: BytesLike
461
+ ], [
462
+ ISlashingManager.SlashPolicyStructOutput
463
+ ], 'view'>;
464
+ getFunction(nameOrSignature: 'getSlashProposal'): TypedContractMethod<[
465
+ proposalId: BigNumberish
466
+ ], [
467
+ ISlashingManager.SlashProposalStructOutput
468
+ ], 'view'>;
469
+ getFunction(nameOrSignature: 'grantRole'): TypedContractMethod<[
470
+ role: BytesLike,
471
+ account: AddressLike
472
+ ], [
473
+ void
474
+ ], 'nonpayable'>;
475
+ getFunction(nameOrSignature: 'hasRole'): TypedContractMethod<[
476
+ role: BytesLike,
477
+ account: AddressLike
478
+ ], [
479
+ boolean
480
+ ], 'view'>;
481
+ getFunction(nameOrSignature: 'isBanned'): TypedContractMethod<[
482
+ node: AddressLike
483
+ ], [
484
+ boolean
485
+ ], 'view'>;
486
+ getFunction(nameOrSignature: 'proposeSlash'): TypedContractMethod<[
487
+ operator: AddressLike,
488
+ reason: BytesLike,
489
+ proof: BytesLike
490
+ ], [
491
+ bigint
492
+ ], 'nonpayable'>;
493
+ getFunction(nameOrSignature: 'removeSlasher'): TypedContractMethod<[
494
+ slasher: AddressLike
495
+ ], [
496
+ void
497
+ ], 'nonpayable'>;
498
+ getFunction(nameOrSignature: 'removeVerifier'): TypedContractMethod<[
499
+ verifier: AddressLike
500
+ ], [
501
+ void
502
+ ], 'nonpayable'>;
503
+ getFunction(nameOrSignature: 'renounceRole'): TypedContractMethod<[
504
+ role: BytesLike,
505
+ callerConfirmation: AddressLike
506
+ ], [
507
+ void
508
+ ], 'nonpayable'>;
509
+ getFunction(nameOrSignature: 'resolveAppeal'): TypedContractMethod<[
510
+ proposalId: BigNumberish,
511
+ appealUpheld: boolean,
512
+ resolution: string
513
+ ], [
514
+ void
515
+ ], 'nonpayable'>;
516
+ getFunction(nameOrSignature: 'revokeRole'): TypedContractMethod<[
517
+ role: BytesLike,
518
+ account: AddressLike
519
+ ], [
520
+ void
521
+ ], 'nonpayable'>;
522
+ getFunction(nameOrSignature: 'setBondingRegistry'): TypedContractMethod<[
523
+ newBondingRegistry: AddressLike
524
+ ], [
525
+ void
526
+ ], 'nonpayable'>;
527
+ getFunction(nameOrSignature: 'setSlashPolicy'): TypedContractMethod<[
528
+ reason: BytesLike,
529
+ policy: ISlashingManager.SlashPolicyStruct
530
+ ], [
531
+ void
532
+ ], 'nonpayable'>;
533
+ getFunction(nameOrSignature: 'slashPolicies'): TypedContractMethod<[
534
+ reason: BytesLike
535
+ ], [
536
+ [bigint, bigint, boolean, string, boolean, bigint, boolean] & {
537
+ ticketPenalty: bigint;
538
+ licensePenalty: bigint;
539
+ requiresProof: boolean;
540
+ proofVerifier: string;
541
+ banNode: boolean;
542
+ appealWindow: bigint;
543
+ enabled: boolean;
544
+ }
545
+ ], 'view'>;
546
+ getFunction(nameOrSignature: 'supportsInterface'): TypedContractMethod<[
547
+ interfaceId: BytesLike
548
+ ], [
549
+ boolean
550
+ ], 'view'>;
551
+ getFunction(nameOrSignature: 'totalProposals'): TypedContractMethod<[
552
+ ], [
553
+ bigint
554
+ ], 'view'>;
555
+ getFunction(nameOrSignature: 'updateBanStatus'): TypedContractMethod<[
556
+ node: AddressLike,
557
+ status: boolean,
558
+ reason: BytesLike
559
+ ], [
560
+ void
561
+ ], 'nonpayable'>;
562
+ getEvent(key: 'AppealFiled'): TypedContractEvent<AppealFiledEvent.InputTuple, AppealFiledEvent.OutputTuple, AppealFiledEvent.OutputObject>;
563
+ getEvent(key: 'AppealResolved'): TypedContractEvent<AppealResolvedEvent.InputTuple, AppealResolvedEvent.OutputTuple, AppealResolvedEvent.OutputObject>;
564
+ getEvent(key: 'NodeBanUpdated'): TypedContractEvent<NodeBanUpdatedEvent.InputTuple, NodeBanUpdatedEvent.OutputTuple, NodeBanUpdatedEvent.OutputObject>;
565
+ getEvent(key: 'RoleAdminChanged'): TypedContractEvent<RoleAdminChangedEvent.InputTuple, RoleAdminChangedEvent.OutputTuple, RoleAdminChangedEvent.OutputObject>;
566
+ getEvent(key: 'RoleGranted'): TypedContractEvent<RoleGrantedEvent.InputTuple, RoleGrantedEvent.OutputTuple, RoleGrantedEvent.OutputObject>;
567
+ getEvent(key: 'RoleRevoked'): TypedContractEvent<RoleRevokedEvent.InputTuple, RoleRevokedEvent.OutputTuple, RoleRevokedEvent.OutputObject>;
568
+ getEvent(key: 'SlashExecuted'): TypedContractEvent<SlashExecutedEvent.InputTuple, SlashExecutedEvent.OutputTuple, SlashExecutedEvent.OutputObject>;
569
+ getEvent(key: 'SlashPolicyUpdated'): TypedContractEvent<SlashPolicyUpdatedEvent.InputTuple, SlashPolicyUpdatedEvent.OutputTuple, SlashPolicyUpdatedEvent.OutputObject>;
570
+ getEvent(key: 'SlashProposed'): TypedContractEvent<SlashProposedEvent.InputTuple, SlashProposedEvent.OutputTuple, SlashProposedEvent.OutputObject>;
571
+ filters: {
572
+ 'AppealFiled(uint256,address,bytes32,string)': TypedContractEvent<AppealFiledEvent.InputTuple, AppealFiledEvent.OutputTuple, AppealFiledEvent.OutputObject>;
573
+ AppealFiled: TypedContractEvent<AppealFiledEvent.InputTuple, AppealFiledEvent.OutputTuple, AppealFiledEvent.OutputObject>;
574
+ 'AppealResolved(uint256,address,bool,address,string)': TypedContractEvent<AppealResolvedEvent.InputTuple, AppealResolvedEvent.OutputTuple, AppealResolvedEvent.OutputObject>;
575
+ AppealResolved: TypedContractEvent<AppealResolvedEvent.InputTuple, AppealResolvedEvent.OutputTuple, AppealResolvedEvent.OutputObject>;
576
+ 'NodeBanUpdated(address,bool,bytes32,address)': TypedContractEvent<NodeBanUpdatedEvent.InputTuple, NodeBanUpdatedEvent.OutputTuple, NodeBanUpdatedEvent.OutputObject>;
577
+ NodeBanUpdated: TypedContractEvent<NodeBanUpdatedEvent.InputTuple, NodeBanUpdatedEvent.OutputTuple, NodeBanUpdatedEvent.OutputObject>;
578
+ 'RoleAdminChanged(bytes32,bytes32,bytes32)': TypedContractEvent<RoleAdminChangedEvent.InputTuple, RoleAdminChangedEvent.OutputTuple, RoleAdminChangedEvent.OutputObject>;
579
+ RoleAdminChanged: TypedContractEvent<RoleAdminChangedEvent.InputTuple, RoleAdminChangedEvent.OutputTuple, RoleAdminChangedEvent.OutputObject>;
580
+ 'RoleGranted(bytes32,address,address)': TypedContractEvent<RoleGrantedEvent.InputTuple, RoleGrantedEvent.OutputTuple, RoleGrantedEvent.OutputObject>;
581
+ RoleGranted: TypedContractEvent<RoleGrantedEvent.InputTuple, RoleGrantedEvent.OutputTuple, RoleGrantedEvent.OutputObject>;
582
+ 'RoleRevoked(bytes32,address,address)': TypedContractEvent<RoleRevokedEvent.InputTuple, RoleRevokedEvent.OutputTuple, RoleRevokedEvent.OutputObject>;
583
+ RoleRevoked: TypedContractEvent<RoleRevokedEvent.InputTuple, RoleRevokedEvent.OutputTuple, RoleRevokedEvent.OutputObject>;
584
+ 'SlashExecuted(uint256,address,bytes32,uint256,uint256,bool)': TypedContractEvent<SlashExecutedEvent.InputTuple, SlashExecutedEvent.OutputTuple, SlashExecutedEvent.OutputObject>;
585
+ SlashExecuted: TypedContractEvent<SlashExecutedEvent.InputTuple, SlashExecutedEvent.OutputTuple, SlashExecutedEvent.OutputObject>;
586
+ 'SlashPolicyUpdated(bytes32,tuple)': TypedContractEvent<SlashPolicyUpdatedEvent.InputTuple, SlashPolicyUpdatedEvent.OutputTuple, SlashPolicyUpdatedEvent.OutputObject>;
587
+ SlashPolicyUpdated: TypedContractEvent<SlashPolicyUpdatedEvent.InputTuple, SlashPolicyUpdatedEvent.OutputTuple, SlashPolicyUpdatedEvent.OutputObject>;
588
+ 'SlashProposed(uint256,address,bytes32,uint256,uint256,uint256,address)': TypedContractEvent<SlashProposedEvent.InputTuple, SlashProposedEvent.OutputTuple, SlashProposedEvent.OutputObject>;
589
+ SlashProposed: TypedContractEvent<SlashProposedEvent.InputTuple, SlashProposedEvent.OutputTuple, SlashProposedEvent.OutputObject>;
590
+ };
591
+ }
592
+ //# sourceMappingURL=SlashingManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SlashingManager.d.ts","sourceRoot":"","sources":["../../../../types/contracts/slashing/SlashingManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAC9K,OAAO,KAAK,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,aAAa,EAAE,mBAAmB,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE3J,MAAM,CAAC,OAAO,WAAW,gBAAgB,CAAC;IAEtC,KAAY,iBAAiB,GAAG;QAAC,aAAa,EAAE,YAAY,CAAC;QAAC,cAAc,EAAE,YAAY,CAAC;QAAC,aAAa,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,WAAW,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAC,CAAA;IAE/M,KAAY,uBAAuB,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAA;IAG1V,KAAY,mBAAmB,GAAG;QAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,MAAM,EAAE,SAAS,CAAC;QAAC,YAAY,EAAE,YAAY,CAAC;QAAC,aAAa,EAAE,YAAY,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,YAAY,CAAC;QAAC,YAAY,EAAE,YAAY,CAAC;QAAC,QAAQ,EAAE,WAAW,CAAC;QAAC,SAAS,EAAE,SAAS,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAC,CAAA;IAEhV,KAAY,yBAAyB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,GAAG;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,CAAA;CAEvjB;AAEH,MAAM,WAAW,wBAAyB,SAAQ,SAAS;IACzD,WAAW,CAAC,eAAe,EAAE,oBAAoB,GAAG,iBAAiB,GAAG,cAAc,GAAG,eAAe,GAAG,YAAY,GAAG,aAAa,GAAG,QAAQ,GAAG,iBAAiB,GAAG,cAAc,GAAG,YAAY,GAAG,cAAc,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,GAAG,cAAc,GAAG,eAAe,GAAG,YAAY,GAAG,oBAAoB,GAAG,gBAAgB,GAAG,eAAe,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;IAE3hB,QAAQ,CAAC,sBAAsB,EAAE,aAAa,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,aAAa,GAAG,aAAa,GAAG,eAAe,GAAG,oBAAoB,GAAG,eAAe,GAAG,aAAa,CAAC;IAErN,kBAAkB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3F,kBAAkB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACpF,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACjF,kBAAkB,CAAC,gBAAgB,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAClF,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAClF,kBAAkB,CAAC,gBAAgB,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACnF,kBAAkB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAC9E,kBAAkB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACpF,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IACrF,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IAC3F,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IAClF,kBAAkB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IACpF,kBAAkB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IACzF,kBAAkB,CAAC,gBAAgB,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC;IAC5F,kBAAkB,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC;IAC1F,kBAAkB,CAAC,gBAAgB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAChF,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC;IAC1G,kBAAkB,CAAC,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACrF,kBAAkB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IACtF,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC;IAC/F,kBAAkB,CAAC,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IACvG,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC;IAC7F,kBAAkB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC;IAC1F,kBAAkB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC;IACxH,kBAAkB,CAAC,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IACnF,kBAAkB,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IACvF,kBAAkB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACnF,kBAAkB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC;IAEvG,oBAAoB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1F,oBAAoB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACnF,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAChF,oBAAoB,CAAC,gBAAgB,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACjF,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC/E,oBAAoB,CAAC,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1E,oBAAoB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACnF,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAChF,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAChF,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAClF,oBAAoB,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACpF,oBAAoB,CAAC,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7E,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3E,oBAAoB,CAAC,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC5E,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAChF,oBAAoB,CAAC,gBAAgB,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACjF,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAClF,oBAAoB,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAChF,oBAAoB,CAAC,gBAAgB,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACjF,oBAAoB,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAC9E,oBAAoB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACtF,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAClF,oBAAoB,CAAC,gBAAgB,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACjF,oBAAoB,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IACrF,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAClF,oBAAoB,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;CAChF;AAGC,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChH,KAAY,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnG,UAAiB,YAAY;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IACvG,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7I,KAAY,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC9H,UAAiB,YAAY;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;IAClI,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,mBAAmB,CAAC;IACnC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACvG,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3F,UAAiB,YAAY;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAC/F,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,qBAAqB,CAAC;IACrC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;IAClG,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;IAC1F,UAAiB,YAAY;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;IAC9F,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACtF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAC9E,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,UAAU,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACtF,KAAY,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1E,UAAiB,YAAY;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAC9E,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1K,KAAY,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjJ,UAAiB,YAAY;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE;IACrJ,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,uBAAuB,CAAC;IACvC,KAAY,UAAU,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IACzF,KAAY,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;IAC7F,UAAiB,YAAY;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,gBAAgB,CAAC,uBAAuB,CAAA;KAAE;IACjG,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAID,yBAAiB,kBAAkB,CAAC;IAClC,KAAY,UAAU,GAAG,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC1M,KAAY,WAAW,GAAG,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACtK,UAAiB,YAAY;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;IAC1K,KAAY,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAC,CAAA;IAC7E,KAAY,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAA;IACpD,KAAY,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;IACtC,KAAY,cAAc,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;CACxD;AAIH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IAEnD,OAAO,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,eAAe,CAAC;IACzD,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnC,SAAS,EAAE,wBAAwB,CAAC;IAGtC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,KAAK,EAAE,OAAO,EACd,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACzC,WAAW,CAAC,OAAO,SAAS,kBAAkB,EAC5C,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EACzC,oBAAoB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EAClD,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACpC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAE1C,EAAE,CAAC,OAAO,SAAS,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvG,EAAE,CAAC,OAAO,SAAS,kBAAkB,EAAE,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAElI,IAAI,CAAC,OAAO,SAAS,kBAAkB,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzG,IAAI,CAAC,OAAO,SAAS,kBAAkB,EAAE,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpI,SAAS,CAAC,OAAO,SAAS,kBAAkB,EAC1C,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;IACvD,kBAAkB,CAAC,OAAO,SAAS,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAKpF,kBAAkB,EAAE,mBAAmB,CACrC;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,eAAe,EAAE,mBAAmB,CAClC;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,YAAY,EAAE,mBAAmB,CAC/B;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,aAAa,EAAE,mBAAmB,CAChC;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,UAAU,EAAE,mBAAmB,CAC7B;QAAC,OAAO,EAAE,WAAW;KAAG,EACxB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,WAAW,EAAE,mBAAmB,CAC9B;QAAC,QAAQ,EAAE,WAAW;KAAG,EACzB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,MAAM,EAAE,mBAAmB,CACzB;QAAC,IAAI,EAAE,WAAW;KAAG,EACrB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAA;IAID,eAAe,EAAE,mBAAmB,CAClC;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,YAAY,EAAE,mBAAmB,CAC/B;QAAC,UAAU,EAAE,YAAY;KAAG,EAC5B;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,UAAU,EAAE,mBAAmB,CAC7B;QAAC,UAAU,EAAE,YAAY;QAAE,QAAQ,EAAE,MAAM;KAAG,EAC9C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;KAAG,EACnB;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,cAAc,EAAE,mBAAmB,CACjC;QAAC,MAAM,EAAE,SAAS;KAAG,EACrB;QAAC,gBAAgB,CAAC,uBAAuB;KAAC,EAC1C,MAAM,CACP,CAAA;IAID,gBAAgB,EAAE,mBAAmB,CACnC;QAAC,UAAU,EAAE,YAAY;KAAG,EAC5B;QAAC,gBAAgB,CAAC,yBAAyB;KAAC,EAC5C,MAAM,CACP,CAAA;IAID,SAAS,EAAE,mBAAmB,CAC5B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAG,EACzC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,OAAO,EAAE,mBAAmB,CAC1B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAG,EACzC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAA;IAID,QAAQ,EAAE,mBAAmB,CAC3B;QAAC,IAAI,EAAE,WAAW;KAAG,EACrB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAA;IAID,YAAY,EAAE,mBAAmB,CAC/B;QAAC,QAAQ,EAAE,WAAW;QAAE,MAAM,EAAE,SAAS;QAAE,KAAK,EAAE,SAAS;KAAG,EAC9D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAA;IAID,aAAa,EAAE,mBAAmB,CAChC;QAAC,OAAO,EAAE,WAAW;KAAG,EACxB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,cAAc,EAAE,mBAAmB,CACjC;QAAC,QAAQ,EAAE,WAAW;KAAG,EACzB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,YAAY,EAAE,mBAAmB,CAC/B;QAAC,IAAI,EAAE,SAAS;QAAE,kBAAkB,EAAE,WAAW;KAAG,EACpD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,aAAa,EAAE,mBAAmB,CAChC;QAAC,UAAU,EAAE,YAAY;QAAE,YAAY,EAAE,OAAO;QAAE,UAAU,EAAE,MAAM;KAAG,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,UAAU,EAAE,mBAAmB,CAC7B;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAG,EACzC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,kBAAkB,EAAE,mBAAmB,CACrC;QAAC,kBAAkB,EAAE,WAAW;KAAG,EACnC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,cAAc,EAAE,mBAAmB,CACjC;QAAC,MAAM,EAAE,SAAS;QAAE,MAAM,EAAE,gBAAgB,CAAC,iBAAiB;KAAG,EACjE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,aAAa,EAAE,mBAAmB,CAChC;QAAC,MAAM,EAAE,SAAS;KAAG,EACrB;QAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG;YAAC,aAAa,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAC;YAAC,aAAa,EAAE,OAAO,CAAC;YAAC,aAAa,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAC;YAAC,YAAY,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAA;SAAE;KAAC,EACzN,MAAM,CACP,CAAA;IAID,iBAAiB,EAAE,mBAAmB,CACpC;QAAC,WAAW,EAAE,SAAS;KAAG,EAC1B;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAA;IAID,cAAc,EAAE,mBAAmB,CACjC;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAA;IAID,eAAe,EAAE,mBAAmB,CAClC;QAAC,IAAI,EAAE,WAAW;QAAE,MAAM,EAAE,OAAO;QAAE,MAAM,EAAE,SAAS;KAAG,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAA;IAID,WAAW,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,CAAC,CAAC;IAE1F,WAAW,CAAC,eAAe,EAAE,oBAAoB,GAAG,mBAAmB,CACrE;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,iBAAiB,GAAG,mBAAmB,CAC9D;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,cAAc,GAAG,mBAAmB,CAC3D;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,eAAe,GAAG,mBAAmB,CAC5D;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,YAAY,GAAG,mBAAmB,CACzD;QAAC,OAAO,EAAE,WAAW;KAAG,EACxB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,aAAa,GAAG,mBAAmB,CAC1D;QAAC,QAAQ,EAAE,WAAW;KAAG,EACzB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,QAAQ,GAAG,mBAAmB,CACrD;QAAC,IAAI,EAAE,WAAW;KAAG,EACrB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,iBAAiB,GAAG,mBAAmB,CAC9D;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,cAAc,GAAG,mBAAmB,CAC3D;QAAC,UAAU,EAAE,YAAY;KAAG,EAC5B;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,YAAY,GAAG,mBAAmB,CACzD;QAAC,UAAU,EAAE,YAAY;QAAE,QAAQ,EAAE,MAAM;KAAG,EAC9C;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,cAAc,GAAG,mBAAmB,CAC3D;QAAC,IAAI,EAAE,SAAS;KAAG,EACnB;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,gBAAgB,GAAG,mBAAmB,CAC7D;QAAC,MAAM,EAAE,SAAS;KAAG,EACrB;QAAC,gBAAgB,CAAC,uBAAuB;KAAC,EAC1C,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,kBAAkB,GAAG,mBAAmB,CAC/D;QAAC,UAAU,EAAE,YAAY;KAAG,EAC5B;QAAC,gBAAgB,CAAC,yBAAyB;KAAC,EAC5C,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,WAAW,GAAG,mBAAmB,CACxD;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAG,EACzC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,SAAS,GAAG,mBAAmB,CACtD;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAG,EACzC;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,UAAU,GAAG,mBAAmB,CACvD;QAAC,IAAI,EAAE,WAAW;KAAG,EACrB;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,cAAc,GAAG,mBAAmB,CAC3D;QAAC,QAAQ,EAAE,WAAW;QAAE,MAAM,EAAE,SAAS;QAAE,KAAK,EAAE,SAAS;KAAG,EAC9D;QAAC,MAAM;KAAC,EACR,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,eAAe,GAAG,mBAAmB,CAC5D;QAAC,OAAO,EAAE,WAAW;KAAG,EACxB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,gBAAgB,GAAG,mBAAmB,CAC7D;QAAC,QAAQ,EAAE,WAAW;KAAG,EACzB;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,cAAc,GAAG,mBAAmB,CAC3D;QAAC,IAAI,EAAE,SAAS;QAAE,kBAAkB,EAAE,WAAW;KAAG,EACpD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,eAAe,GAAG,mBAAmB,CAC5D;QAAC,UAAU,EAAE,YAAY;QAAE,YAAY,EAAE,OAAO;QAAE,UAAU,EAAE,MAAM;KAAG,EACvE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,YAAY,GAAG,mBAAmB,CACzD;QAAC,IAAI,EAAE,SAAS;QAAE,OAAO,EAAE,WAAW;KAAG,EACzC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,oBAAoB,GAAG,mBAAmB,CACjE;QAAC,kBAAkB,EAAE,WAAW;KAAG,EACnC;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,gBAAgB,GAAG,mBAAmB,CAC7D;QAAC,MAAM,EAAE,SAAS;QAAE,MAAM,EAAE,gBAAgB,CAAC,iBAAiB;KAAG,EACjE;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,eAAe,GAAG,mBAAmB,CAC5D;QAAC,MAAM,EAAE,SAAS;KAAG,EACrB;QAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG;YAAC,aAAa,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAC;YAAC,aAAa,EAAE,OAAO,CAAC;YAAC,aAAa,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAC;YAAC,YAAY,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAA;SAAE;KAAC,EACzN,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,mBAAmB,GAAG,mBAAmB,CAChE;QAAC,WAAW,EAAE,SAAS;KAAG,EAC1B;QAAC,OAAO;KAAC,EACT,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,gBAAgB,GAAG,mBAAmB,CAC7D;KAAE,EACF;QAAC,MAAM;KAAC,EACR,MAAM,CACP,CAAC;IACN,WAAW,CAAC,eAAe,EAAE,iBAAiB,GAAG,mBAAmB,CAC9D;QAAC,IAAI,EAAE,WAAW;QAAE,MAAM,EAAE,OAAO;QAAE,MAAM,EAAE,SAAS;KAAG,EACzD;QAAC,IAAI;KAAC,EACN,YAAY,CACb,CAAC;IAEF,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC/I,QAAQ,CAAC,GAAG,EAAE,gBAAgB,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACvJ,QAAQ,CAAC,GAAG,EAAE,gBAAgB,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACvJ,QAAQ,CAAC,GAAG,EAAE,kBAAkB,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,EAAE,qBAAqB,CAAC,WAAW,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAC/J,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC3I,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC3I,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;IACnJ,QAAQ,CAAC,GAAG,EAAE,oBAAoB,GAAG,kBAAkB,CAAC,uBAAuB,CAAC,UAAU,EAAE,uBAAuB,CAAC,WAAW,EAAE,uBAAuB,CAAC,YAAY,CAAC,CAAC;IACvK,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAE/I,OAAO,EAAE;QAEP,6CAA6C,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAC5J,WAAW,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAG1H,qDAAqD,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAC7K,cAAc,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAGtI,8CAA8C,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;QACtK,cAAc,EAAE,kBAAkB,CAAC,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAGtI,2CAA2C,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,EAAE,qBAAqB,CAAC,WAAW,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;QACzK,gBAAgB,EAAE,kBAAkB,CAAC,qBAAqB,CAAC,UAAU,EAAE,qBAAqB,CAAC,WAAW,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAG9I,sCAAsC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACrJ,WAAW,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAG1H,sCAAsC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACrJ,WAAW,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAG1H,6DAA6D,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAClL,aAAa,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAGlI,mCAAmC,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,UAAU,EAAE,uBAAuB,CAAC,WAAW,EAAE,uBAAuB,CAAC,YAAY,CAAC,CAAC;QACvK,kBAAkB,EAAE,kBAAkB,CAAC,uBAAuB,CAAC,UAAU,EAAE,uBAAuB,CAAC,WAAW,EAAE,uBAAuB,CAAC,YAAY,CAAC,CAAC;QAGtJ,wEAAwE,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC7L,aAAa,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,kBAAkB,CAAC,WAAW,EAAE,kBAAkB,CAAC,YAAY,CAAC,CAAC;KAEnI,CAAC;CACH"}