@reclaimprotocol/attestor-core 4.0.3 → 5.0.1-beta.10

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 (474) hide show
  1. package/LICENSE +660 -660
  2. package/README.md +1 -2
  3. package/lib/avs/abis/avsDirectoryABI.js +341 -342
  4. package/lib/avs/abis/delegationABI.js +4 -5
  5. package/lib/avs/abis/registryABI.js +722 -723
  6. package/lib/avs/client/create-claim-on-avs.d.ts +5 -5
  7. package/lib/avs/client/create-claim-on-avs.js +160 -139
  8. package/lib/avs/config.d.ts +1 -1
  9. package/lib/avs/config.js +25 -23
  10. package/lib/avs/contracts/ReclaimServiceManager.d.ts +436 -532
  11. package/lib/avs/contracts/ReclaimServiceManager.js +0 -3
  12. package/lib/avs/contracts/common.d.ts +40 -11
  13. package/lib/avs/contracts/common.js +0 -3
  14. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.d.ts +13 -11
  15. package/lib/avs/contracts/factories/ReclaimServiceManager__factory.js +1157 -1148
  16. package/lib/avs/contracts/factories/index.d.ts +1 -1
  17. package/lib/avs/contracts/factories/index.js +4 -9
  18. package/lib/avs/contracts/index.d.ts +3 -3
  19. package/lib/avs/contracts/index.js +6 -40
  20. package/lib/avs/types/index.d.ts +6 -6
  21. package/lib/avs/types/index.js +0 -3
  22. package/lib/avs/utils/contracts.d.ts +14 -14
  23. package/lib/avs/utils/contracts.js +50 -35
  24. package/lib/avs/utils/register.d.ts +3 -3
  25. package/lib/avs/utils/register.js +71 -79
  26. package/lib/avs/utils/tasks.d.ts +4 -4
  27. package/lib/avs/utils/tasks.js +44 -41
  28. package/lib/browser/avs/abis/avsDirectoryABI.d.ts +60 -0
  29. package/lib/browser/avs/abis/avsDirectoryABI.js +343 -0
  30. package/lib/browser/avs/abis/delegationABI.d.ts +126 -0
  31. package/lib/browser/avs/abis/delegationABI.js +4 -0
  32. package/lib/browser/avs/abis/registryABI.d.ts +136 -0
  33. package/lib/browser/avs/abis/registryABI.js +728 -0
  34. package/lib/browser/avs/client/create-claim-on-avs.d.ts +12 -0
  35. package/lib/browser/avs/client/create-claim-on-avs.js +168 -0
  36. package/lib/browser/avs/config.d.ts +7 -0
  37. package/lib/browser/avs/config.js +26 -0
  38. package/lib/browser/avs/contracts/ReclaimServiceManager.d.ts +601 -0
  39. package/lib/browser/avs/contracts/ReclaimServiceManager.js +0 -0
  40. package/lib/browser/avs/contracts/common.d.ts +50 -0
  41. package/lib/browser/avs/contracts/common.js +0 -0
  42. package/lib/browser/avs/contracts/factories/ReclaimServiceManager__factory.d.ts +890 -0
  43. package/lib/browser/avs/contracts/factories/ReclaimServiceManager__factory.js +1183 -0
  44. package/lib/browser/avs/contracts/factories/index.d.ts +1 -0
  45. package/lib/browser/avs/contracts/factories/index.js +4 -0
  46. package/lib/browser/avs/contracts/index.d.ts +3 -0
  47. package/lib/browser/avs/contracts/index.js +6 -0
  48. package/lib/browser/avs/types/index.d.ts +55 -0
  49. package/lib/browser/avs/types/index.js +0 -0
  50. package/lib/browser/avs/utils/contracts.d.ts +21 -0
  51. package/lib/browser/avs/utils/contracts.js +53 -0
  52. package/lib/browser/avs/utils/register.d.ts +27 -0
  53. package/lib/browser/avs/utils/register.js +74 -0
  54. package/lib/browser/avs/utils/tasks.d.ts +22 -0
  55. package/lib/browser/avs/utils/tasks.js +48 -0
  56. package/lib/browser/client/create-claim.d.ts +5 -0
  57. package/lib/browser/client/create-claim.js +461 -0
  58. package/lib/browser/client/index.d.ts +3 -0
  59. package/lib/browser/client/index.js +3 -0
  60. package/lib/browser/client/tunnels/make-rpc-tcp-tunnel.d.ts +16 -0
  61. package/lib/browser/client/tunnels/make-rpc-tcp-tunnel.js +53 -0
  62. package/lib/browser/client/tunnels/make-rpc-tls-tunnel.d.ts +26 -0
  63. package/lib/browser/client/tunnels/make-rpc-tls-tunnel.js +127 -0
  64. package/lib/browser/client/utils/attestor-pool.d.ts +8 -0
  65. package/lib/browser/client/utils/attestor-pool.js +24 -0
  66. package/lib/browser/client/utils/client-socket.d.ts +11 -0
  67. package/lib/browser/client/utils/client-socket.js +120 -0
  68. package/lib/browser/client/utils/message-handler.d.ts +4 -0
  69. package/lib/browser/client/utils/message-handler.js +97 -0
  70. package/lib/browser/config/index.d.ts +31 -0
  71. package/lib/browser/config/index.js +62 -0
  72. package/lib/browser/external-rpc/benchmark.d.ts +1 -0
  73. package/lib/browser/external-rpc/benchmark.js +82 -0
  74. package/lib/browser/external-rpc/event-bus.d.ts +7 -0
  75. package/lib/browser/external-rpc/event-bus.js +17 -0
  76. package/lib/browser/external-rpc/global.d.js +0 -0
  77. package/lib/browser/external-rpc/handle-incoming-msg.d.ts +2 -0
  78. package/lib/browser/external-rpc/handle-incoming-msg.js +241 -0
  79. package/lib/browser/external-rpc/index.d.ts +3 -0
  80. package/lib/browser/external-rpc/index.js +3 -0
  81. package/lib/browser/external-rpc/jsc-polyfills/1.d.ts +14 -0
  82. package/lib/browser/external-rpc/jsc-polyfills/1.js +80 -0
  83. package/lib/browser/external-rpc/jsc-polyfills/2.js +15 -0
  84. package/lib/browser/external-rpc/jsc-polyfills/event.d.ts +10 -0
  85. package/lib/browser/external-rpc/jsc-polyfills/event.js +19 -0
  86. package/lib/browser/external-rpc/jsc-polyfills/index.d.ts +2 -0
  87. package/lib/browser/external-rpc/jsc-polyfills/index.js +2 -0
  88. package/lib/browser/external-rpc/jsc-polyfills/ws.d.ts +21 -0
  89. package/lib/browser/external-rpc/jsc-polyfills/ws.js +83 -0
  90. package/lib/browser/external-rpc/setup-browser.d.ts +6 -0
  91. package/lib/browser/external-rpc/setup-browser.js +33 -0
  92. package/lib/browser/external-rpc/setup-jsc.d.ts +24 -0
  93. package/lib/browser/external-rpc/setup-jsc.js +22 -0
  94. package/lib/{window-rpc → browser/external-rpc}/types.d.ts +56 -35
  95. package/lib/browser/external-rpc/types.js +0 -0
  96. package/lib/browser/external-rpc/utils.d.ts +20 -0
  97. package/lib/browser/external-rpc/utils.js +100 -0
  98. package/lib/browser/external-rpc/zk.d.ts +14 -0
  99. package/lib/browser/external-rpc/zk.js +58 -0
  100. package/lib/browser/index.browser.js +13 -0
  101. package/lib/browser/index.d.ts +9 -0
  102. package/lib/browser/index.js +13 -0
  103. package/lib/browser/mechain/abis/governanceABI.d.ts +50 -0
  104. package/lib/browser/mechain/abis/governanceABI.js +461 -0
  105. package/lib/browser/mechain/abis/taskABI.d.ts +157 -0
  106. package/lib/browser/mechain/abis/taskABI.js +512 -0
  107. package/lib/browser/mechain/client/create-claim-on-mechain.d.ts +10 -0
  108. package/lib/browser/mechain/client/create-claim-on-mechain.js +33 -0
  109. package/lib/browser/mechain/client/index.d.ts +1 -0
  110. package/lib/browser/mechain/client/index.js +1 -0
  111. package/lib/browser/mechain/constants/index.d.ts +3 -0
  112. package/lib/browser/mechain/constants/index.js +8 -0
  113. package/lib/browser/mechain/index.d.ts +2 -0
  114. package/lib/browser/mechain/index.js +2 -0
  115. package/lib/browser/mechain/types/index.d.ts +23 -0
  116. package/lib/browser/mechain/types/index.js +0 -0
  117. package/lib/browser/proto/api.d.ts +651 -0
  118. package/lib/browser/proto/api.js +4250 -0
  119. package/lib/browser/proto/tee-bundle.d.ts +156 -0
  120. package/lib/browser/proto/tee-bundle.js +1296 -0
  121. package/lib/browser/providers/http/index.d.ts +18 -0
  122. package/lib/browser/providers/http/index.js +640 -0
  123. package/lib/browser/providers/http/patch-parse5-tree.d.ts +6 -0
  124. package/lib/browser/providers/http/patch-parse5-tree.js +34 -0
  125. package/lib/browser/providers/http/utils.d.ts +77 -0
  126. package/lib/browser/providers/http/utils.js +283 -0
  127. package/lib/browser/providers/index.d.ts +4 -0
  128. package/lib/browser/providers/index.js +7 -0
  129. package/lib/browser/scripts/fallbacks/crypto.js +4 -0
  130. package/lib/browser/scripts/fallbacks/empty.js +4 -0
  131. package/lib/browser/scripts/fallbacks/gnark.js +15 -0
  132. package/lib/browser/scripts/fallbacks/re2.js +7 -0
  133. package/lib/browser/scripts/fallbacks/snarkjs.js +10 -0
  134. package/lib/browser/scripts/fallbacks/stwo.js +159 -0
  135. package/lib/browser/types/bgp.d.ts +11 -0
  136. package/lib/browser/types/bgp.js +0 -0
  137. package/lib/browser/types/claims.d.ts +70 -0
  138. package/lib/browser/types/claims.js +0 -0
  139. package/lib/browser/types/client.d.ts +163 -0
  140. package/lib/browser/types/client.js +0 -0
  141. package/lib/browser/types/general.d.ts +77 -0
  142. package/lib/browser/types/general.js +0 -0
  143. package/lib/browser/types/handlers.d.ts +10 -0
  144. package/lib/browser/types/handlers.js +0 -0
  145. package/lib/browser/types/index.d.ts +10 -0
  146. package/lib/browser/types/index.js +10 -0
  147. package/lib/browser/types/providers.d.ts +161 -0
  148. package/lib/browser/types/providers.gen.d.ts +443 -0
  149. package/lib/browser/types/providers.gen.js +16 -0
  150. package/lib/browser/types/providers.js +0 -0
  151. package/lib/browser/types/rpc.d.ts +35 -0
  152. package/lib/browser/types/rpc.js +0 -0
  153. package/lib/browser/types/signatures.d.ts +28 -0
  154. package/lib/browser/types/signatures.js +0 -0
  155. package/lib/browser/types/tunnel.d.ts +18 -0
  156. package/lib/browser/types/tunnel.js +0 -0
  157. package/lib/browser/types/zk.d.ts +38 -0
  158. package/lib/browser/types/zk.js +0 -0
  159. package/lib/browser/utils/auth.d.ts +8 -0
  160. package/lib/browser/utils/auth.js +71 -0
  161. package/lib/browser/utils/b64-json.d.ts +2 -0
  162. package/lib/browser/utils/b64-json.js +17 -0
  163. package/lib/browser/utils/claims.d.ts +33 -0
  164. package/lib/browser/utils/claims.js +89 -0
  165. package/lib/browser/utils/env.d.ts +3 -0
  166. package/lib/browser/utils/env.js +19 -0
  167. package/lib/browser/utils/error.d.ts +26 -0
  168. package/lib/browser/utils/error.js +54 -0
  169. package/lib/browser/utils/generics.d.ts +119 -0
  170. package/lib/browser/utils/generics.js +272 -0
  171. package/lib/browser/utils/http-parser.d.ts +59 -0
  172. package/lib/browser/utils/http-parser.js +201 -0
  173. package/lib/browser/utils/index.browser.js +13 -0
  174. package/lib/browser/utils/index.d.ts +13 -0
  175. package/lib/browser/utils/index.js +13 -0
  176. package/lib/browser/utils/logger.browser.js +88 -0
  177. package/lib/browser/utils/logger.d.ts +14 -0
  178. package/lib/browser/utils/logger.js +88 -0
  179. package/lib/browser/utils/prepare-packets.d.ts +16 -0
  180. package/lib/browser/utils/prepare-packets.js +69 -0
  181. package/lib/browser/utils/redactions.d.ts +73 -0
  182. package/lib/browser/utils/redactions.js +135 -0
  183. package/lib/browser/utils/retries.d.ts +12 -0
  184. package/lib/browser/utils/retries.js +26 -0
  185. package/lib/browser/utils/signatures/eth.d.ts +2 -0
  186. package/lib/browser/utils/signatures/eth.js +31 -0
  187. package/lib/browser/utils/signatures/index.d.ts +5 -0
  188. package/lib/browser/utils/signatures/index.js +12 -0
  189. package/lib/browser/utils/socket-base.d.ts +23 -0
  190. package/lib/browser/utils/socket-base.js +96 -0
  191. package/lib/browser/utils/tls-imports.d.ts +21 -0
  192. package/lib/browser/utils/tls-imports.js +71 -0
  193. package/lib/browser/utils/tls.d.ts +2 -0
  194. package/lib/browser/utils/tls.js +58 -0
  195. package/lib/browser/utils/ws.d.ts +7 -0
  196. package/lib/browser/utils/ws.js +22 -0
  197. package/lib/browser/utils/zk.d.ts +71 -0
  198. package/lib/browser/utils/zk.js +625 -0
  199. package/lib/client/create-claim.d.ts +2 -2
  200. package/lib/client/create-claim.js +437 -400
  201. package/lib/client/index.d.ts +3 -3
  202. package/lib/client/index.js +3 -20
  203. package/lib/client/tunnels/make-rpc-tcp-tunnel.d.ts +2 -2
  204. package/lib/client/tunnels/make-rpc-tcp-tunnel.js +49 -56
  205. package/lib/client/tunnels/make-rpc-tls-tunnel.d.ts +4 -3
  206. package/lib/client/tunnels/make-rpc-tls-tunnel.js +123 -131
  207. package/lib/client/utils/attestor-pool.d.ts +3 -1
  208. package/lib/client/utils/attestor-pool.js +21 -25
  209. package/lib/client/utils/client-socket.d.ts +4 -4
  210. package/lib/client/utils/client-socket.js +114 -94
  211. package/lib/client/utils/message-handler.d.ts +2 -2
  212. package/lib/client/utils/message-handler.js +89 -86
  213. package/lib/config/index.d.ts +6 -3
  214. package/lib/config/index.js +60 -37
  215. package/lib/external-rpc/benchmark.d.ts +1 -0
  216. package/lib/external-rpc/benchmark.js +82 -0
  217. package/lib/external-rpc/event-bus.d.ts +7 -0
  218. package/lib/external-rpc/event-bus.js +17 -0
  219. package/lib/external-rpc/global.d.js +0 -0
  220. package/lib/external-rpc/handle-incoming-msg.d.ts +2 -0
  221. package/lib/external-rpc/handle-incoming-msg.js +241 -0
  222. package/lib/external-rpc/index.d.ts +3 -0
  223. package/lib/external-rpc/index.js +3 -0
  224. package/lib/external-rpc/jsc-polyfills/1.d.ts +14 -0
  225. package/lib/external-rpc/jsc-polyfills/1.js +80 -0
  226. package/lib/external-rpc/jsc-polyfills/2.js +15 -0
  227. package/lib/external-rpc/jsc-polyfills/event.d.ts +10 -0
  228. package/lib/external-rpc/jsc-polyfills/event.js +19 -0
  229. package/lib/external-rpc/jsc-polyfills/index.d.ts +2 -0
  230. package/lib/external-rpc/jsc-polyfills/index.js +2 -0
  231. package/lib/external-rpc/jsc-polyfills/ws.d.ts +21 -0
  232. package/lib/external-rpc/jsc-polyfills/ws.js +83 -0
  233. package/lib/external-rpc/setup-browser.d.ts +6 -0
  234. package/lib/external-rpc/setup-browser.js +33 -0
  235. package/lib/external-rpc/setup-jsc.d.ts +24 -0
  236. package/lib/external-rpc/setup-jsc.js +22 -0
  237. package/lib/external-rpc/types.d.ts +213 -0
  238. package/lib/external-rpc/types.js +0 -0
  239. package/lib/external-rpc/utils.d.ts +20 -0
  240. package/lib/external-rpc/utils.js +100 -0
  241. package/lib/external-rpc/zk.d.ts +14 -0
  242. package/lib/external-rpc/zk.js +58 -0
  243. package/lib/index.browser.d.ts +9 -0
  244. package/lib/index.d.ts +8 -9
  245. package/lib/index.js +12 -49
  246. package/lib/mechain/abis/governanceABI.js +460 -461
  247. package/lib/mechain/abis/taskABI.js +505 -506
  248. package/lib/mechain/client/create-claim-on-mechain.d.ts +3 -3
  249. package/lib/mechain/client/create-claim-on-mechain.js +31 -30
  250. package/lib/mechain/client/index.d.ts +1 -1
  251. package/lib/mechain/client/index.js +1 -18
  252. package/lib/mechain/constants/index.js +8 -7
  253. package/lib/mechain/index.d.ts +2 -2
  254. package/lib/mechain/index.js +2 -19
  255. package/lib/mechain/types/index.d.ts +2 -2
  256. package/lib/mechain/types/index.js +0 -3
  257. package/lib/proto/api.d.ts +182 -39
  258. package/lib/proto/api.js +4105 -3555
  259. package/lib/proto/tee-bundle.d.ts +156 -0
  260. package/lib/proto/tee-bundle.js +1296 -0
  261. package/lib/providers/http/index.d.ts +16 -1
  262. package/lib/providers/http/index.js +603 -576
  263. package/lib/providers/http/patch-parse5-tree.d.ts +6 -0
  264. package/lib/providers/http/patch-parse5-tree.js +34 -0
  265. package/lib/providers/http/utils.d.ts +7 -4
  266. package/lib/providers/http/utils.js +240 -317
  267. package/lib/providers/index.d.ts +1 -1
  268. package/lib/providers/index.js +5 -9
  269. package/lib/scripts/check-avs-registration.d.ts +1 -1
  270. package/lib/scripts/check-avs-registration.js +24 -25
  271. package/lib/scripts/fallbacks/crypto.d.ts +1 -0
  272. package/lib/scripts/fallbacks/crypto.js +4 -0
  273. package/lib/scripts/fallbacks/empty.d.ts +3 -0
  274. package/lib/scripts/fallbacks/empty.js +4 -0
  275. package/lib/scripts/fallbacks/gnark.d.ts +7 -0
  276. package/lib/scripts/fallbacks/gnark.js +15 -0
  277. package/lib/scripts/fallbacks/re2.d.ts +1 -0
  278. package/lib/scripts/fallbacks/re2.js +7 -0
  279. package/lib/scripts/fallbacks/snarkjs.d.ts +1 -0
  280. package/lib/scripts/fallbacks/snarkjs.js +10 -0
  281. package/lib/scripts/fallbacks/stwo.d.ts +6 -0
  282. package/lib/scripts/generate-provider-types.js +92 -73
  283. package/lib/scripts/generate-receipt.d.ts +2 -2
  284. package/lib/scripts/generate-receipt.js +94 -83
  285. package/lib/scripts/generate-toprf-keys.js +17 -16
  286. package/lib/scripts/jsc-cli-rpc.d.ts +1 -0
  287. package/lib/scripts/jsc-cli-rpc.js +35 -0
  288. package/lib/scripts/register-avs-operator.d.ts +1 -1
  289. package/lib/scripts/register-avs-operator.js +3 -7
  290. package/lib/scripts/start-server.d.ts +1 -1
  291. package/lib/scripts/start-server.js +9 -11
  292. package/lib/scripts/update-avs-metadata.d.ts +1 -1
  293. package/lib/scripts/update-avs-metadata.js +17 -19
  294. package/lib/scripts/utils.js +8 -9
  295. package/lib/scripts/whitelist-operator.d.ts +1 -1
  296. package/lib/scripts/whitelist-operator.js +13 -15
  297. package/lib/server/create-server.d.ts +3 -2
  298. package/lib/server/create-server.js +98 -85
  299. package/lib/server/handlers/claimTeeBundle.d.ts +6 -0
  300. package/lib/server/handlers/claimTeeBundle.js +232 -0
  301. package/lib/server/handlers/claimTunnel.d.ts +1 -1
  302. package/lib/server/handlers/claimTunnel.js +75 -73
  303. package/lib/server/handlers/completeClaimOnChain.d.ts +1 -1
  304. package/lib/server/handlers/completeClaimOnChain.js +27 -26
  305. package/lib/server/handlers/createClaimOnChain.d.ts +1 -1
  306. package/lib/server/handlers/createClaimOnChain.js +30 -29
  307. package/lib/server/handlers/createTaskOnMechain.d.ts +1 -1
  308. package/lib/server/handlers/createTaskOnMechain.js +54 -49
  309. package/lib/server/handlers/createTunnel.d.ts +1 -1
  310. package/lib/server/handlers/createTunnel.js +91 -94
  311. package/lib/server/handlers/disconnectTunnel.d.ts +1 -1
  312. package/lib/server/handlers/disconnectTunnel.js +6 -8
  313. package/lib/server/handlers/fetchCertificateBytes.d.ts +2 -0
  314. package/lib/server/handlers/fetchCertificateBytes.js +57 -0
  315. package/lib/server/handlers/index.d.ts +1 -1
  316. package/lib/server/handlers/index.js +24 -21
  317. package/lib/server/handlers/init.d.ts +1 -1
  318. package/lib/server/handlers/init.js +31 -34
  319. package/lib/server/handlers/toprf.d.ts +1 -1
  320. package/lib/server/handlers/toprf.js +17 -19
  321. package/lib/server/index.d.ts +4 -4
  322. package/lib/server/index.js +4 -21
  323. package/lib/server/socket.d.ts +7 -7
  324. package/lib/server/socket.js +104 -106
  325. package/lib/server/tunnels/make-tcp-tunnel.d.ts +5 -3
  326. package/lib/server/tunnels/make-tcp-tunnel.js +189 -162
  327. package/lib/server/utils/apm.d.ts +1 -1
  328. package/lib/server/utils/apm.js +26 -40
  329. package/lib/server/utils/assert-valid-claim-request.d.ts +6 -5
  330. package/lib/server/utils/assert-valid-claim-request.js +339 -185
  331. package/lib/server/utils/config-env.js +4 -7
  332. package/lib/server/utils/dns.js +18 -16
  333. package/lib/server/utils/gcp-attestation.d.ts +17 -0
  334. package/lib/server/utils/gcp-attestation.js +237 -0
  335. package/lib/server/utils/generics.d.ts +3 -3
  336. package/lib/server/utils/generics.js +37 -51
  337. package/lib/server/utils/iso.js +255 -256
  338. package/lib/server/utils/keep-alive.d.ts +2 -2
  339. package/lib/server/utils/keep-alive.js +36 -40
  340. package/lib/server/utils/nitro-attestation.d.ts +33 -0
  341. package/lib/server/utils/nitro-attestation.js +249 -0
  342. package/lib/server/utils/oprf-raw.d.ts +21 -0
  343. package/lib/server/utils/oprf-raw.js +61 -0
  344. package/lib/server/utils/process-handshake.d.ts +3 -3
  345. package/lib/server/utils/process-handshake.js +217 -175
  346. package/lib/server/utils/proxy-session.d.ts +1 -0
  347. package/lib/server/utils/proxy-session.js +4 -0
  348. package/lib/server/utils/tee-oprf-mpc-verification.d.ts +16 -0
  349. package/lib/server/utils/tee-oprf-mpc-verification.js +86 -0
  350. package/lib/server/utils/tee-oprf-verification.d.ts +24 -0
  351. package/lib/server/utils/tee-oprf-verification.js +151 -0
  352. package/lib/server/utils/tee-transcript-reconstruction.d.ts +24 -0
  353. package/lib/server/utils/tee-transcript-reconstruction.js +140 -0
  354. package/lib/server/utils/tee-verification.d.ts +28 -0
  355. package/lib/server/utils/tee-verification.js +358 -0
  356. package/lib/{utils → server/utils}/validation.d.ts +1 -1
  357. package/lib/server/utils/validation.js +45 -0
  358. package/lib/types/bgp.js +0 -3
  359. package/lib/types/claims.d.ts +7 -10
  360. package/lib/types/claims.js +0 -3
  361. package/lib/types/client.d.ts +5 -5
  362. package/lib/types/client.js +0 -3
  363. package/lib/types/general.d.ts +30 -4
  364. package/lib/types/general.js +0 -3
  365. package/lib/types/handlers.d.ts +3 -3
  366. package/lib/types/handlers.js +0 -3
  367. package/lib/types/index.d.ts +10 -10
  368. package/lib/types/index.js +10 -27
  369. package/lib/types/providers.d.ts +15 -4
  370. package/lib/types/providers.gen.d.ts +15 -1
  371. package/lib/types/providers.gen.js +15 -13
  372. package/lib/types/providers.js +0 -3
  373. package/lib/types/rpc.d.ts +2 -2
  374. package/lib/types/rpc.js +0 -3
  375. package/lib/types/signatures.js +0 -3
  376. package/lib/types/tunnel.d.ts +2 -2
  377. package/lib/types/tunnel.js +0 -3
  378. package/lib/types/zk.d.ts +17 -2
  379. package/lib/types/zk.js +0 -3
  380. package/lib/utils/auth.d.ts +2 -1
  381. package/lib/utils/auth.js +66 -59
  382. package/lib/utils/b64-json.js +13 -19
  383. package/lib/utils/bgp-listener.d.ts +1 -1
  384. package/lib/utils/bgp-listener.js +111 -114
  385. package/lib/utils/claims.d.ts +3 -3
  386. package/lib/utils/claims.js +78 -101
  387. package/lib/utils/env.js +15 -16
  388. package/lib/utils/error.d.ts +6 -7
  389. package/lib/utils/error.js +50 -39
  390. package/lib/utils/generics.d.ts +20 -13
  391. package/lib/utils/generics.js +221 -297
  392. package/lib/utils/http-parser.d.ts +1 -1
  393. package/lib/utils/http-parser.js +186 -237
  394. package/lib/utils/index.browser.d.ts +13 -0
  395. package/lib/utils/index.d.ts +14 -12
  396. package/lib/utils/index.js +14 -29
  397. package/lib/utils/logger.browser.d.ts +14 -0
  398. package/lib/utils/logger.d.ts +1 -1
  399. package/lib/utils/logger.js +69 -87
  400. package/lib/utils/prepare-packets.d.ts +3 -3
  401. package/lib/utils/prepare-packets.js +66 -58
  402. package/lib/utils/redactions.d.ts +20 -1
  403. package/lib/utils/redactions.js +116 -129
  404. package/lib/utils/retries.d.ts +1 -1
  405. package/lib/utils/retries.js +24 -26
  406. package/lib/utils/signatures/eth.d.ts +1 -1
  407. package/lib/utils/signatures/eth.js +28 -30
  408. package/lib/utils/signatures/index.d.ts +3 -3
  409. package/lib/utils/signatures/index.js +11 -10
  410. package/lib/utils/socket-base.d.ts +6 -5
  411. package/lib/utils/socket-base.js +89 -88
  412. package/lib/utils/tls-imports.d.ts +21 -0
  413. package/lib/utils/tls-imports.js +71 -0
  414. package/lib/utils/tls.d.ts +1 -1
  415. package/lib/utils/tls.js +54 -28
  416. package/lib/utils/ws.d.ts +1 -6
  417. package/lib/utils/ws.js +17 -33
  418. package/lib/utils/zk.d.ts +28 -12
  419. package/lib/utils/zk.js +587 -406
  420. package/package.json +79 -60
  421. package/lib/avs/tests/test.operator.d.ts +0 -11
  422. package/lib/avs/tests/test.operator.js +0 -313
  423. package/lib/avs/tests/utils.d.ts +0 -2
  424. package/lib/avs/tests/utils.js +0 -50
  425. package/lib/scripts/verify-root-ca.d.ts +0 -1
  426. package/lib/scripts/verify-root-ca.js +0 -51
  427. package/lib/tests/describe-with-server.d.ts +0 -20
  428. package/lib/tests/describe-with-server.js +0 -64
  429. package/lib/tests/mock-provider-server.d.ts +0 -13
  430. package/lib/tests/mock-provider-server.js +0 -65
  431. package/lib/tests/mocks.d.ts +0 -4
  432. package/lib/tests/mocks.js +0 -23
  433. package/lib/tests/test.auth.js +0 -75
  434. package/lib/tests/test.bgp-listener.js +0 -169
  435. package/lib/tests/test.claim-creation.js +0 -280
  436. package/lib/tests/test.http-parser.d.ts +0 -1
  437. package/lib/tests/test.http-parser.js +0 -120
  438. package/lib/tests/test.http-provider-utils.js +0 -2416
  439. package/lib/tests/test.http-provider.js +0 -114
  440. package/lib/tests/test.rpc-communication.d.ts +0 -1
  441. package/lib/tests/test.rpc-communication.js +0 -64
  442. package/lib/tests/test.rpc-tunnel.d.ts +0 -1
  443. package/lib/tests/test.rpc-tunnel.js +0 -172
  444. package/lib/tests/test.signatures.d.ts +0 -1
  445. package/lib/tests/test.signatures.js +0 -24
  446. package/lib/tests/test.tcp-tunnel.d.ts +0 -1
  447. package/lib/tests/test.tcp-tunnel.js +0 -64
  448. package/lib/tests/test.zk.d.ts +0 -1
  449. package/lib/tests/test.zk.js +0 -337
  450. package/lib/tests/utils.d.ts +0 -18
  451. package/lib/tests/utils.js +0 -64
  452. package/lib/utils/atomic-operations.d.ts +0 -24
  453. package/lib/utils/atomic-operations.js +0 -65
  454. package/lib/utils/benchmark.d.ts +0 -1
  455. package/lib/utils/benchmark.js +0 -70
  456. package/lib/utils/connection-state-machine.d.ts +0 -43
  457. package/lib/utils/connection-state-machine.js +0 -129
  458. package/lib/utils/resource-monitor.d.ts +0 -61
  459. package/lib/utils/resource-monitor.js +0 -107
  460. package/lib/utils/validation.js +0 -46
  461. package/lib/window-rpc/index.d.ts +0 -3
  462. package/lib/window-rpc/index.js +0 -20
  463. package/lib/window-rpc/setup-window-rpc.d.ts +0 -5
  464. package/lib/window-rpc/setup-window-rpc.js +0 -291
  465. package/lib/window-rpc/types.js +0 -3
  466. package/lib/window-rpc/utils.d.ts +0 -14
  467. package/lib/window-rpc/utils.js +0 -102
  468. package/lib/window-rpc/window-rpc-zk.d.ts +0 -15
  469. package/lib/window-rpc/window-rpc-zk.js +0 -85
  470. /package/lib/{tests/test.auth.d.ts → browser/external-rpc/jsc-polyfills/2.d.ts} +0 -0
  471. /package/lib/{tests/test.bgp-listener.d.ts → external-rpc/jsc-polyfills/2.d.ts} +0 -0
  472. /package/lib/{tests/test.claim-creation.d.ts → scripts/build-browser.d.ts} +0 -0
  473. /package/lib/{tests/test.http-provider-utils.d.ts → scripts/build-jsc.d.ts} +0 -0
  474. /package/lib/{tests/test.http-provider.d.ts → scripts/build-lib.d.ts} +0 -0
@@ -0,0 +1,890 @@
1
+ import { ContractFactory, ContractTransactionResponse } from "ethers";
2
+ import type { Signer, AddressLike, ContractDeployTransaction, ContractRunner } from "ethers";
3
+ import type { NonPayableOverrides } from "../common.ts";
4
+ import type { ReclaimServiceManager, ReclaimServiceManagerInterface } from "../ReclaimServiceManager.ts";
5
+ type ReclaimServiceManagerConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
+ export declare class ReclaimServiceManager__factory extends ContractFactory {
7
+ constructor(...args: ReclaimServiceManagerConstructorParams);
8
+ getDeployTransaction(_avsDirectory: AddressLike, _stakeRegistry: AddressLike, _delegationManager: AddressLike, overrides?: NonPayableOverrides & {
9
+ from?: string;
10
+ }): Promise<ContractDeployTransaction>;
11
+ deploy(_avsDirectory: AddressLike, _stakeRegistry: AddressLike, _delegationManager: AddressLike, overrides?: NonPayableOverrides & {
12
+ from?: string;
13
+ }): Promise<ReclaimServiceManager & {
14
+ deploymentTransaction(): ContractTransactionResponse;
15
+ }>;
16
+ connect(runner: ContractRunner | null): ReclaimServiceManager__factory;
17
+ static readonly bytecode = "0x610100604052348015610010575f5ffd5b50604051614a44380380614a4483398101604081905261002f91610140565b6001600160a01b0380841660a0528083166080525f60c081905290821660e052839083908361005c610068565b50505050505050610180565b5f54610100900460ff16156100d35760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015610123575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b038116811461013b575f5ffd5b919050565b5f5f5f60608486031215610152575f5ffd5b61015b84610125565b925061016960208501610125565b915061017760408501610125565b90509250925092565b60805160a05160c05160e0516148446102005f395f6120e401525f8181611e6c0152611f3f01525f81816103c30152818161232001528181612496015261250101525f818161039c015281816107d0015281816111930152818161149e015281816119150152818161198301528181611fa4015261294c01526148445ff3fe608060405234801561000f575f5ffd5b5060043610610213575f3560e01c8063715018a61161011f578063a98fb355116100a9578063d5dba76d11610079578063d5dba76d14610509578063e481af9d1461051c578063f289a7fb14610524578063f2fde38b14610577578063fabc1cbc1461058a575f5ffd5b8063a98fb355146104b0578063aa5b9cad146104c3578063abd3b6bd146104d6578063b224b979146104f6575f5ffd5b806394bb371b116100ef57806394bb371b146104365780639926ee7d14610456578063a3524f9514610469578063a364f4da1461047c578063a551c1b81461048f575f5ffd5b8063715018a6146103e5578063886f1195146103ed5780638b00ce7c146104005780638da5cb5b14610425575f5ffd5b80632e8da829116101a05780635c975abb116101705780635c975abb14610369578063630868dc1461037157806366d382031461038457806368304835146103975780636b3aa72e146103be575f5ffd5b80632e8da8291461030b57806333cfb7b71461031e578063595c6a671461033e5780635ac86ab714610346575f5ffd5b80631b445516116101e65780631b445516146102825780631be785ac146102955780631ee3ca10146102a857806324d7806c146102bb5780632d89f6fc146102de575f5ffd5b806310d67a2f14610217578063136439dd1461022c57806314bfd6d01461023f57806316bd83c31461026f575b5f5ffd5b61022a6102253660046133db565b61059d565b005b61022a61023a3660046133f6565b610656565b61025261024d3660046133f6565b610793565b6040516001600160a01b0390911681526020015b60405180910390f35b61022a61027d3660046135a7565b6107bb565b61022a6102903660046135d8565b610b18565b61022a6102a3366004613654565b610b2e565b61022a6102b63660046136ae565b610c23565b6102ce6102c93660046133db565b610ce2565b6040519015158152602001610266565b6102fd6102ec3660046136fc565b60cb6020525f908152604090205481565b604051908152602001610266565b6102ce6103193660046133db565b610d67565b61033161032c3660046133db565b610dd1565b6040516102669190613715565b61022a610de2565b6102ce610354366004613760565b609854600160ff9092169190911b9081161490565b6098546102fd565b61025261037f3660046133f6565b610ea6565b61022a6103923660046133db565b610eb5565b6102527f000000000000000000000000000000000000000000000000000000000000000081565b6102527f000000000000000000000000000000000000000000000000000000000000000081565b61022a611039565b609754610252906001600160a01b031681565b60c9546104109063ffffffff1681565b60405163ffffffff9091168152602001610266565b6033546001600160a01b0316610252565b6104496104443660046133db565b61104c565b60405161026691906137cd565b61022a6104643660046137df565b611188565b61022a610477366004613a33565b61122f565b61022a61048a3660046133db565b611493565b6104a261049d3660046133f6565b6114e4565b604051610266929190613b74565b61022a6104be366004613b97565b6115a2565b6102526104d1366004613bc8565b6115d0565b6104e96104e4366004613c2b565b611606565b6040516102669190613c5c565b61022a610504366004613bc8565b61162f565b6102ce6105173660046133db565b6118f2565b610331611a0c565b60ca5461054e9063ffffffff8082169160ff64010000000082041691650100000000009091041683565b6040805163ffffffff948516815260ff9093166020840152921691810191909152606001610266565b61022a6105853660046133db565b611a1b565b61022a6105983660046133f6565b611a91565b60975f9054906101000a90046001600160a01b03166001600160a01b031663eab66d7a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105ed573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106119190613c6e565b6001600160a01b0316336001600160a01b03161461064a5760405162461bcd60e51b815260040161064190613c89565b60405180910390fd5b61065381611bea565b50565b60975460405163237dfb4760e11b81523360048201526001600160a01b03909116906346fbf68e90602401602060405180830381865afa15801561069c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c09190613cd3565b6106dc5760405162461bcd60e51b815260040161064190613cee565b609854818116146107555760405162461bcd60e51b815260206004820152603860248201527f5061757361626c652e70617573653a20696e76616c696420617474656d70742060448201527f746f20756e70617573652066756e6374696f6e616c69747900000000000000006064820152608401610641565b609881905560405181815233907fab40a374bc51de372200a8bc981af8c9ecdc08dfdaef0bb6e09f88f3c616ef3d906020015b60405180910390a250565b60cd81815481106107a2575f80fd5b5f918252602090912001546001600160a01b0316905081565b60405163ec7fbb3160e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ec7fbb3190602401602060405180830381865afa15801561081d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108419190613cd3565b15156001146108925760405162461bcd60e51b815260206004820152601b60248201527f4f70657261746f72206d757374206265207468652063616c6c657200000000006044820152606401610641565b80516001600160a01b031633146108fa5760405162461bcd60e51b815260206004820152602660248201527f4d657461646174612061646472657373206d757374206d61746368207468652060448201526531b0b63632b960d11b6064820152608401610641565b6020810151511580156109db575f5b60ce5481101561099d57825f01516001600160a01b031660ce828154811061093357610933613d36565b5f9182526020909120600290910201546001600160a01b0316036109955760ce818154811061096457610964613d36565b5f9182526020822060029091020180546001600160a01b03191681559061098e600183018261337c565b5050505050565b600101610909565b5060405162461bcd60e51b815260206004820152601260248201527113dc195c985d1bdc881b9bdd08199bdd5b9960721b6044820152606401610641565b5f5b60ce54811015610a8c57825f01516001600160a01b031660ce8281548110610a0757610a07613d36565b5f9182526020909120600290910201546001600160a01b031603610a84578260ce8281548110610a3957610a39613d36565b5f91825260209182902083516002929092020180546001600160a01b0319166001600160a01b03909216919091178155908201516001820190610a7c9082613dd5565b505050505050565b6001016109dd565b5060ce80546001810182555f9190915282517fd36cd1c74ef8d7326d8021b776c18fb5a5724b7f7bc93c2f42e43e10ef27d12a600290920291820180546001600160a01b0319166001600160a01b03909216919091178155602084015184927fd36cd1c74ef8d7326d8021b776c18fb5a5724b7f7bc93c2f42e43e10ef27d12b019061098e9082613dd5565b610b20611ce1565b610b2a8282611d3b565b5050565b610b3733610ce2565b610b535760405162461bcd60e51b815260040161064190613e8f565b8015610ba95760cc80546001810182555f919091527f47197230e1e4b29fc0bd84d7d78966c0925452aff72a2a121538b102457e9ebe0180546001600160a01b0384166001600160a01b03199091161790555050565b5f5b60cc5481101561099d57826001600160a01b031660cc8281548110610bd257610bd2613d36565b5f918252602090912001546001600160a01b031603610c1b5760cc8181548110610bfe57610bfe613d36565b5f91825260209091200180546001600160a01b0319169055505050565b600101610bab565b610c2c33610ce2565b610c485760405162461bcd60e51b815260040161064190613e8f565b805163ffffffff1615610c7157805160ca805463ffffffff191663ffffffff9092169190911790555b602081015160ff1615610ca457602081015160ca805460ff9092166401000000000264ff00000000199092169190911790555b604081015163ffffffff1615610653576040015160ca805463ffffffff909216650100000000000268ffffffff000000000019909216919091179055565b5f610cf56033546001600160a01b031690565b6001600160a01b03163303610d0c57506001919050565b5f5b60cd54811015610d5f57826001600160a01b031660cd8281548110610d3557610d35613d36565b5f918252602090912001546001600160a01b031603610d575750600192915050565b600101610d0e565b505f92915050565b5f610d7182610ce2565b15610d7e57506001919050565b5f5b60cc54811015610d5f57826001600160a01b031660cc8281548110610da757610da7613d36565b5f918252602090912001546001600160a01b031603610dc95750600192915050565b600101610d80565b6060610ddc82611f9f565b92915050565b60975460405163237dfb4760e11b81523360048201526001600160a01b03909116906346fbf68e90602401602060405180830381865afa158015610e28573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e4c9190613cd3565b610e685760405162461bcd60e51b815260040161064190613cee565b5f19609881905560405190815233907fab40a374bc51de372200a8bc981af8c9ecdc08dfdaef0bb6e09f88f3c616ef3d9060200160405180910390a2565b60cc81815481106107a2575f80fd5b5f54610100900460ff1615808015610ed357505f54600160ff909116105b80610eec5750303b158015610eec57505f5460ff166001145b610f4f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610641565b5f805460ff191660011790558015610f70575f805461ff0019166101001790555b60408051606081018252610708815260016020820181905261012c919092015260ca805468ffffffffffffffffff191666012c010000070817905560cd805491820181555f527f83978b4c69c48dd978ab43fe30f077615294f938fb7f936d9eb340e51ea7db2e0180546001600160a01b0319166001600160a01b0384161790558015610b2a575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b611041611ce1565b61104a5f6122b8565b565b604080518082019091525f8152606060208201525f5b60ce5481101561099d57826001600160a01b031660ce828154811061108957611089613d36565b5f9182526020909120600290910201546001600160a01b0316036111805760ce81815481106110ba576110ba613d36565b5f9182526020918290206040805180820190915260029092020180546001600160a01b0316825260018101805492939192918401916110f890613d4a565b80601f016020809104026020016040519081016040528092919081815260200182805461112490613d4a565b801561116f5780601f106111465761010080835404028352916020019161116f565b820191905f5260205f20905b81548152906001019060200180831161115257829003601f168201915b505050505081525050915050919050565b600101611062565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146111d05760405162461bcd60e51b815260040161064190613ebc565b6111d982610d67565b6112255760405162461bcd60e51b815260206004820152601860248201527f4f70657261746f72206e6f742077686974656c697374656400000000000000006044820152606401610641565b610b2a8282612309565b63ffffffff81165f90815260cb60209081526040918290205484519251909261125a92909101614039565b60405160208183030381529060405280519060200120146112e35760405162461bcd60e51b815260206004820152603d60248201527f737570706c696564207461736b20646f6573206e6f74206d617463682074686560448201527f206f6e65207265636f7264656420696e2074686520636f6e74726163740000006064820152608401610641565b81516040015163ffffffff4281169116116113335760405162461bcd60e51b815260206004820152601060248201526f15185cdac81a185cc8195e1c1a5c995960821b6044820152606401610641565b6040805160c0810182528351518201519181019182528351516080908101516001600160a01b03166060830152845160209081015163ffffffff1682840152600160a08401529282528285015192820192909252835190910151515f906001600160401b038111156113a7576113a761340d565b6040519080825280602002602001820160405280156113d0578160200160208202803683370190505b5090505f5b8151811015611433578451608001518051829081106113f6576113f6613d36565b60200260200101515f015182828151811061141357611413613d36565b6001600160a01b03909216602092830291909101909101526001016113d5565b5061143e8282612357565b63ffffffff83165f81815260cb602052604080822091909155517fa5be567caa88ff11b6da2cf017f9cefffcafa24111a9ecbf0b0bc476944f0f099061148590879061404b565b60405180910390a250505050565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146114db5760405162461bcd60e51b815260040161064190613ebc565b61065381612477565b60ce81815481106114f3575f80fd5b5f918252602090912060029091020180546001820180546001600160a01b0390921693509061152190613d4a565b80601f016020809104026020016040519081016040528092919081815260200182805461154d90613d4a565b80156115985780601f1061156f57610100808354040283529160200191611598565b820191905f5260205f20905b81548152906001019060200180831161157b57829003601f168201915b5050505050905082565b6115ab33610ce2565b6115c75760405162461bcd60e51b815260040161064190613e8f565b610653816124ea565b5f5f836040516020016115e391906140ce565b60405160208183030381529060405290506115fe8184612536565b949350505050565b60608160405160200161161991906140ce565b6040516020818303038152906040529050919050565b60808201516001600160a01b031633146116f3575f8260405160200161165591906140ce565b60405160208183030381529060405290505f6116718284612536565b905083608001516001600160a01b0316816001600160a01b0316146116f05760405162461bcd60e51b815260206004820152602f60248201527f5369676e6572206f6620726571756573745369676e6174757265206973206e6f60448201526e3a103932b8bab2b9ba1737bbb732b960891b6064820152608401610641565b50505b5f611702836060015142612576565b60ca5490915063ffffffff650100000000009091048116908216111561176a5760405162461bcd60e51b815260206004820152601e60248201527f526571756573742074696d657374616d7020746f6f20666172206177617900006044820152606401610641565b6040805161016081018252606060c082018190525f60e08301819052610100830181905261012083018190526101408301819052928201839052808201839052608082015260a081019190915283815263ffffffff4281166020830181905260ca546117d79216906140f4565b63ffffffff1660408281019190915260ca54640100000000900460ff166060830152515f9061180a908390602001614039565b60408051808303601f19018152919052805160209091012060ca5490915061183d90640100000000900460ff16826125aa565b6080830152604051611853908390602001614039565b60408051601f19818403018152828252805160209182012060c9805463ffffffff9081165f90815260cb90945293909220555416907f7738d1b30deac7824a0580de02efde3bb766c7b7b5ea79da34869ebd887cebf3906118b5908590614039565b60405180910390a260c9546118d19063ffffffff1660016140f4565b60c9805463ffffffff191663ffffffff929092169190911790555050505050565b6040516398ec1ac960e01b81526001600160a01b0382811660048301525f9182917f000000000000000000000000000000000000000000000000000000000000000016906398ec1ac990602401602060405180830381865afa15801561195a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061197e9190614110565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340bf2fb76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119dd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a019190614110565b909110159392505050565b6060611a16612947565b905090565b611a23611ce1565b6001600160a01b038116611a885760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610641565b610653816122b8565b60975f9054906101000a90046001600160a01b03166001600160a01b031663eab66d7a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ae1573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b059190613c6e565b6001600160a01b0316336001600160a01b031614611b355760405162461bcd60e51b815260040161064190613c89565b609854198119609854191614611bb35760405162461bcd60e51b815260206004820152603860248201527f5061757361626c652e756e70617573653a20696e76616c696420617474656d7060448201527f7420746f2070617573652066756e6374696f6e616c69747900000000000000006064820152608401610641565b609881905560405181815233907f3582d1828e26bf56bd801502bc021ac0bc8afb57c826e4986b45593c8fad389c90602001610788565b6001600160a01b038116611c785760405162461bcd60e51b815260206004820152604960248201527f5061757361626c652e5f73657450617573657252656769737472793a206e657760448201527f50617573657252656769737472792063616e6e6f7420626520746865207a65726064820152686f206164647265737360b81b608482015260a401610641565b609754604080516001600160a01b03928316815291831660208301527f6e9fcd539896fca60e8b0f01dd580233e48a6b0f7df013b89ba7f565869acdb6910160405180910390a1609780546001600160a01b0319166001600160a01b0392909216919091179055565b6033546001600160a01b0316331461104a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610641565b5f5b81811015611f2757828282818110611d5757611d57613d36565b9050602002810190611d699190614127565b611d7a9060408101906020016133db565b6001600160a01b03166323b872dd3330868686818110611d9c57611d9c613d36565b9050602002810190611dae9190614127565b604080516001600160e01b031960e087901b1681526001600160a01b039485166004820152939092166024840152013560448201526064016020604051808303815f875af1158015611e02573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e269190613cd3565b50828282818110611e3957611e39613d36565b9050602002810190611e4b9190614127565b611e5c9060408101906020016133db565b6001600160a01b031663095ea7b37f0000000000000000000000000000000000000000000000000000000000000000858585818110611e9d57611e9d613d36565b9050602002810190611eaf9190614127565b604080516001600160e01b031960e086901b1681526001600160a01b039093166004840152013560248201526044016020604051808303815f875af1158015611efa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f1e9190613cd3565b50600101611d3d565b50604051630da22a8b60e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631b44551690611f7690859085906004016141d2565b5f604051808303815f87803b158015611f8d575f5ffd5b505af1158015610a7c573d5f5f3e3d5ffd5b60605f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631703a0186040518163ffffffff1660e01b81526004015f60405180830381865afa158015611ffd573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261202491908101906142e7565b8051519091505f816001600160401b038111156120435761204361340d565b60405190808252806020026020018201604052801561206c578160200160208202803683370190505b5090505f5b828110156120ca57835180518290811061208d5761208d613d36565b60200260200101515f01518282815181106120aa576120aa613d36565b6001600160a01b0390921660209283029190910190910152600101612071565b50604051639004134760e01b81525f906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063900413479061211b90899086906004016143e7565b5f60405180830381865afa158015612135573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261215c9190810190614445565b90505f836001600160401b038111156121775761217761340d565b6040519080825280602002602001820160405280156121a0578160200160208202803683370190505b5090505f5f5b858110156121e5575f8482815181106121c1576121c1613d36565b602002602001015111156121dd57816121d9816144d5565b9250505b6001016121a6565b505f816001600160401b038111156121ff576121ff61340d565b604051908082528060200260200182016040528015612228578160200160208202803683370190505b5090505f5b868110156122ab575f85828151811061224857612248613d36565b602002602001015111156122a35783818151811061226857612268613d36565b602002602001015182828151811061228257612282613d36565b60200260200101906001600160a01b031690816001600160a01b0316815250505b60010161222d565b5098975050505050505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b604051639926ee7d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690639926ee7d90611f7690859085906004016144ed565b5f8260200151511161239b5760405162461bcd60e51b815260206004820152600d60248201526c4e6f207369676e61747572657360981b6044820152606401610641565b5f6123a583612a7b565b90505f5b8251811015612471575f805b835181101561241a578483815181106123d0576123d0613d36565b60200260200101516001600160a01b03168482815181106123f3576123f3613d36565b60200260200101516001600160a01b031603612412576001915061241a565b6001016123b5565b50806124685760405162461bcd60e51b815260206004820152601a60248201527f4d697373696e67206174746573746f72207369676e61747572650000000000006044820152606401610641565b506001016123a9565b50505050565b6040516351b27a6d60e11b81526001600160a01b0382811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063a364f4da906024015b5f604051808303815f87803b1580156124d8575f5ffd5b505af115801561098e573d5f5f3e3d5ffd5b60405163a98fb35560e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a98fb355906124c1908490600401613c5c565b5f5f6125428451612b46565b8460405160200161255492919061454e565b6040516020818303038152906040528051906020012090506115fe8184612c6b565b5f8163ffffffff168363ffffffff1611612599576125948383614588565b6125a3565b6125a38284614588565b9392505050565b60ce5460609060ff841611156126025760405162461bcd60e51b815260206004820152601e60248201527f496e7465726e616c3a204e6f7420656e6f756768206f70657261746f727300006044820152606401610641565b5f60ce805480602002602001604051908101604052809291908181526020015f905b828210156126fa575f848152602090819020604080518082019091526002850290910180546001600160a01b03168252600181018054929391929184019161266b90613d4a565b80601f016020809104026020016040519081016040528092919081815260200182805461269790613d4a565b80156126e25780601f106126b9576101008083540402835291602001916126e2565b820191905f5260205f20905b8154815290600101906020018083116126c557829003601f168201915b50505050508152505081526020019060010190612624565b505082519293505f91505060ff86166001600160401b038111156127205761272061340d565b60405190808252806020026020018201604052801561276557816020015b604080518082019091525f81526060602082015281526020019060019003908161273e5790505b5090505f5b81518160ff16101561293d575f83116127eb5760405162461bcd60e51b815260206004820152603760248201527f496e7465726e616c3a204665657320746f6f206c6f772e204e6f206f7065726160448201527f746f7273206c65667420746f207069636b2066726f6d2e0000000000000000006064820152608401610641565b5f836128336127fd60ff85168a6145a4565b60408051446020808301919091524282840152606080830194909452825180830390940184526080909101909152815191012090565b61283d91906145cb565b90505f85828151811061285257612852613d36565b602002602001015190508560018661286a91906145de565b8151811061287a5761287a613d36565b602002602001015186838151811061289457612894613d36565b60209081029190910101526128aa6001866145de565b94506128b8815f01516118f2565b6128c357505061276a565b805f0151848460ff16815181106128dc576128dc613d36565b60200260200101515f01906001600160a01b031690816001600160a01b0316815250508060200151848460ff168151811061291957612919613d36565b6020026020010151602001819052508280612933906145f1565b935050505061276a565b5095945050505050565b60605f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631703a0186040518163ffffffff1660e01b81526004015f60405180830381865afa1580156129a5573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526129cc91908101906142e7565b90505f815f0151516001600160401b038111156129eb576129eb61340d565b604051908082528060200260200182016040528015612a14578160200160208202803683370190505b5090505f5b825151811015612a74578251805182908110612a3757612a37613d36565b60200260200101515f0151828281518110612a5457612a54613d36565b6001600160a01b0390921660209283029190910190910152600101612a19565b5092915050565b60605f612a8a835f0151612c85565b90505f8360200151516001600160401b03811115612aaa57612aaa61340d565b604051908082528060200260200182016040528015612ad3578160200160208202803683370190505b5090505f5b846020015151811015612b3e57612b0c8386602001518381518110612aff57612aff613d36565b6020026020010151612536565b828281518110612b1e57612b1e613d36565b6001600160a01b0390921660209283029190910190910152600101612ad8565b509392505050565b6060815f03612b6c5750506040805180820190915260018152600360fc1b602082015290565b815f5b8115612b955780612b7f816144d5565b9150612b8e9050600a8361460f565b9150612b6f565b5f816001600160401b03811115612bae57612bae61340d565b6040519080825280601f01601f191660200182016040528015612bd8576020820181803683370190505b509050815b8515612c6257612bee6001826145de565b90505f612bfc600a8861460f565b612c0790600a614622565b612c1190886145de565b612c1c906030614639565b90505f8160f81b905080848481518110612c3857612c38613d36565b60200101906001600160f81b03191690815f1a905350612c59600a8961460f565b97505050612bdd565b50949350505050565b5f5f5f612c788585612cf4565b91509150612b3e81612d5f565b6060612cb4825f0151604051602001612ca091815260200190565b604051602081830303815290604052612f14565b612cc183602001516130c9565b612cd4846040015163ffffffff16612b46565b612ce18560600151612b46565b6040516020016116199493929190614652565b5f5f8251604103612d28576020830151604084015160608501515f1a612d1c87828585613224565b94509450505050612d58565b8251604003612d515760208301516040840151612d46868383613309565b935093505050612d58565b505f905060025b9250929050565b5f816004811115612d7257612d726146a8565b03612d7a5750565b6001816004811115612d8e57612d8e6146a8565b03612ddb5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610641565b6002816004811115612def57612def6146a8565b03612e3c5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610641565b6003816004811115612e5057612e506146a8565b03612ea85760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610641565b6004816004811115612ebc57612ebc6146a8565b036106535760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610641565b60605f82516002612f259190614622565b6001600160401b03811115612f3c57612f3c61340d565b6040519080825280601f01601f191660200182016040528015612f66576020820181803683370190505b5060408051808201909152601081526f181899199a1a9b1b9c1cb0b131b232b360811b60208201529091505f5b845181101561309f57818251868381518110612fb157612fb1613d36565b0160200151612fc3919060f81c61460f565b81518110612fd357612fd3613d36565b01602001516001600160f81b03191683612fee836002614622565b81518110612ffe57612ffe613d36565b60200101906001600160f81b03191690815f1a90535081825186838151811061302957613029613d36565b016020015161303b919060f81c6145cb565b8151811061304b5761304b613d36565b01602001516001600160f81b03191683613066836002614622565b6130719060016145a4565b8151811061308157613081613d36565b60200101906001600160f81b03191690815f1a905350600101612f93565b50816040516020016130b191906146bc565b60405160208183030381529060405292505050919050565b60408051602880825260608281019093525f91906020820181803683370190505090505f5b60148110156131fb575f6131038260136145de565b61310e906008614622565b6131199060026147ad565b61312c906001600160a01b03871661460f565b60f81b90505f60108260f81c61314291906147b8565b60f81b90505f8160f81c601061315891906147d9565b8360f81c61316691906147f5565b60f81b905061317482613342565b85613180866002614622565b8151811061319057613190613d36565b60200101906001600160f81b03191690815f1a9053506131af81613342565b856131bb866002614622565b6131c69060016145a4565b815181106131d6576131d6613d36565b60200101906001600160f81b03191690815f1a90535050600190920191506130ee9050565b508060405160200161320d91906146bc565b604051602081830303815290604052915050919050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561325957505f90506003613300565b8460ff16601b1415801561327157508460ff16601c14155b1561328157505f90506004613300565b604080515f8082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156132d2573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b0381166132fa575f60019250925050613300565b91505f90505b94509492505050565b5f806001600160ff1b0383168161332560ff86901c601b6145a4565b905061333387828885613224565b9350935050505b935093915050565b5f600a60f883901c10156133685761335f60f883901c6030614639565b60f81b92915050565b61335f60f883901c6057614639565b919050565b50805461338890613d4a565b5f825580601f10613397575050565b601f0160209004905f5260205f209061065391905f5b808211156133c2575f818401556001016133ad565b505090565b6001600160a01b0381168114610653575f5ffd5b5f602082840312156133eb575f5ffd5b81356125a3816133c7565b5f60208284031215613406575f5ffd5b5035919050565b634e487b7160e01b5f52604160045260245ffd5b604080519081016001600160401b03811182821017156134435761344361340d565b60405290565b604051606081016001600160401b03811182821017156134435761344361340d565b60405160c081016001600160401b03811182821017156134435761344361340d565b604051602081016001600160401b03811182821017156134435761344361340d565b604051601f8201601f191681016001600160401b03811182821017156134d7576134d761340d565b604052919050565b5f82601f8301126134ee575f5ffd5b8135602083015f5f6001600160401b0384111561350d5761350d61340d565b50601f8301601f1916602001613522816134af565b915050828152858383011115613536575f5ffd5b828260208301375f92810160200192909252509392505050565b5f60408284031215613560575f5ffd5b613568613421565b90508135613575816133c7565b815260208201356001600160401b0381111561358f575f5ffd5b61359b848285016134df565b60208301525092915050565b5f602082840312156135b7575f5ffd5b81356001600160401b038111156135cc575f5ffd5b6115fe84828501613550565b5f5f602083850312156135e9575f5ffd5b82356001600160401b038111156135fe575f5ffd5b8301601f8101851361360e575f5ffd5b80356001600160401b03811115613623575f5ffd5b8560208260051b8401011115613637575f5ffd5b6020919091019590945092505050565b8015158114610653575f5ffd5b5f5f60408385031215613665575f5ffd5b8235613670816133c7565b9150602083013561368081613647565b809150509250929050565b803563ffffffff81168114613377575f5ffd5b803560ff81168114613377575f5ffd5b5f60608284031280156136bf575f5ffd5b506136c8613449565b6136d18361368b565b81526136df6020840161369e565b60208201526136f06040840161368b565b60408201529392505050565b5f6020828403121561370c575f5ffd5b6125a38261368b565b602080825282518282018190525f918401906040840190835b818110156137555783516001600160a01b031683526020938401939092019160010161372e565b509095945050505050565b5f60208284031215613770575f5ffd5b6125a38261369e565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b60018060a01b0381511682525f6020820151604060208501526115fe6040850182613779565b602081525f6125a360208301846137a7565b5f5f604083850312156137f0575f5ffd5b82356137fb816133c7565b915060208301356001600160401b03811115613815575f5ffd5b830160608186031215613826575f5ffd5b61382e613449565b81356001600160401b03811115613843575f5ffd5b61384f878285016134df565b8252506020828101359082015260409182013591810191909152919491935090915050565b5f60a08284031215613884575f5ffd5b60405160a081016001600160401b03811182821017156138a6576138a661340d565b60405290508082356001600160401b038111156138c1575f5ffd5b6138cd858286016134df565b82525060208381013590820152604080840135908201526138f06060840161368b565b60608201526080830135613903816133c7565b6080919091015292915050565b5f6001600160401b038211156139285761392861340d565b5060051b60200190565b5f82601f830112613941575f5ffd5b813561395461394f82613910565b6134af565b8082825260208201915060208360051b860101925085831115613975575f5ffd5b602085015b8381101561293d5780356001600160401b03811115613997575f5ffd5b6139a6886020838a0101613550565b8452506020928301920161397a565b5f82601f8301126139c4575f5ffd5b81356139d261394f82613910565b8082825260208201915060208360051b8601019250858311156139f3575f5ffd5b602085015b8381101561293d5780356001600160401b03811115613a15575f5ffd5b613a24886020838a01016134df565b845250602092830192016139f8565b5f5f60408385031215613a44575f5ffd5b82356001600160401b03811115613a59575f5ffd5b830160408186031215613a6a575f5ffd5b613a72613421565b81356001600160401b03811115613a87575f5ffd5b820160c08188031215613a98575f5ffd5b613aa061346b565b81356001600160401b03811115613ab5575f5ffd5b613ac189828501613874565b825250613ad06020830161368b565b6020820152613ae16040830161368b565b6040820152613af26060830161369e565b606082015260808201356001600160401b03811115613b0f575f5ffd5b613b1b89828501613932565b60808301525060a09182013591810191909152815260208201356001600160401b03811115613b48575f5ffd5b613b54878285016139b5565b6020830152508093505050613b6b6020840161368b565b90509250929050565b6001600160a01b03831681526040602082018190525f906115fe90830184613779565b5f60208284031215613ba7575f5ffd5b81356001600160401b03811115613bbc575f5ffd5b6115fe848285016134df565b5f5f60408385031215613bd9575f5ffd5b82356001600160401b03811115613bee575f5ffd5b613bfa85828601613874565b92505060208301356001600160401b03811115613c15575f5ffd5b613c21858286016134df565b9150509250929050565b5f60208284031215613c3b575f5ffd5b81356001600160401b03811115613c50575f5ffd5b6115fe84828501613874565b602081525f6125a36020830184613779565b5f60208284031215613c7e575f5ffd5b81516125a3816133c7565b6020808252602a908201527f6d73672e73656e646572206973206e6f74207065726d697373696f6e6564206160408201526939903ab73830bab9b2b960b11b606082015260800190565b5f60208284031215613ce3575f5ffd5b81516125a381613647565b60208082526028908201527f6d73672e73656e646572206973206e6f74207065726d697373696f6e6564206160408201526739903830bab9b2b960c11b606082015260800190565b634e487b7160e01b5f52603260045260245ffd5b600181811c90821680613d5e57607f821691505b602082108103613d7c57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115613dd05782821115613dd057805f5260205f20601f840160051c6020851015613dad57505f5b90810190601f840160051c035f5b81811015610a7c575f83820155600101613dbb565b505050565b81516001600160401b03811115613dee57613dee61340d565b613e0281613dfc8454613d4a565b84613d82565b6020601f821160018114613e34575f8315613e1d5750848201515b5f19600385901b1c1916600184901b17845561098e565b5f84815260208120601f198516915b82811015613e635787850151825560209485019460019092019101613e43565b5084821015613e8057868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b60208082526013908201527221b0b63632b91034b9903737ba1030b236b4b760691b604082015260600190565b6020808252604a908201527f4543445341536572766963654d616e61676572426173652e6f6e6c795374616b60408201527f6552656769737472793a2063616c6c6572206973206e6f7420746865207374616060820152696b65526567697374727960b01b608082015260a00190565b5f815160a08452613f4060a0850182613779565b602084810151908601526040808501519086015260608085015163ffffffff16908601526080938401516001600160a01b031693909401929092525090919050565b5f815160c08452613f9660c0850182613f2c565b905063ffffffff602084015116602085015263ffffffff604084015116604085015260ff60608401511660608501526080830151848203608086015281815180845260208401915060208160051b8501016020840193505f5b8281101561402057601f1986830301845261400b8286516137a7565b60209586019594909401939150600101613fef565b5060a087015160a0890152809550505050505092915050565b602081525f6125a36020830184613f82565b602081525f8251604060208401526140666060840182613f82565b602085810151858303601f19016040870152805180845292935081019181840191600582901b8501015f5b828110156140c257601f198683030184526140ad828651613779565b60209586019594909401939150600101614091565b50979650505050505050565b602081525f6125a36020830184613f2c565b634e487b7160e01b5f52601160045260245ffd5b63ffffffff8181168382160190811115610ddc57610ddc6140e0565b5f60208284031215614120575f5ffd5b5051919050565b5f8235609e1983360301811261413b575f5ffd5b9190910192915050565b8035613377816133c7565b6bffffffffffffffffffffffff81168114610653575f5ffd5b8183526020830192505f815f5b848110156141c8578135614189816133c7565b6001600160a01b0316865260208201356141a281614150565b6bffffffffffffffffffffffff1660208701526040958601959190910190600101614176565b5093949350505050565b602080825281018290525f6040600584901b830181019083018583609e1936839003015b878210156142da57868503603f190184528235818112614214575f5ffd5b8901803536829003601e1901811261422a575f5ffd5b81016020810190356001600160401b03811115614245575f5ffd5b8060061b3603821315614256575f5ffd5b60a0885261426860a089018284614169565b91505061427760208301614145565b6001600160a01b031660208801526040828101359088015261429b6060830161368b565b63ffffffff1660608801526142b26080830161368b565b63ffffffff8116608089015291509550506020938401939290920191600191909101906141f6565b5092979650505050505050565b5f602082840312156142f7575f5ffd5b81516001600160401b0381111561430c575f5ffd5b82016020818503121561431d575f5ffd5b61432561348d565b81516001600160401b0381111561433a575f5ffd5b80830192505084601f83011261434e575f5ffd5b815161435c61394f82613910565b8082825260208201915060208360061b86010192508783111561437d575f5ffd5b6020850194505b828510156143da576040858903121561439b575f5ffd5b6143a3613421565b85516143ae816133c7565b815260208601516143be81614150565b8060208301525080835250602082019150604085019450614384565b8352509095945050505050565b6001600160a01b03831681526040602080830182905283519183018290525f91908401906060840190835b818110156144395783516001600160a01b0316835260209384019390920191600101614412565b50909695505050505050565b5f60208284031215614455575f5ffd5b81516001600160401b0381111561446a575f5ffd5b8201601f8101841361447a575f5ffd5b805161448861394f82613910565b8082825260208201915060208360051b8501019250868311156144a9575f5ffd5b6020840193505b828410156144cb5783518252602093840193909101906144b0565b9695505050505050565b5f600182016144e6576144e66140e0565b5060010190565b60018060a01b0383168152604060208201525f82516060604084015261451660a0840182613779565b90506020840151606084015260408401516080840152809150509392505050565b5f81518060208401855e5f93019283525090919050565b7f19457468657265756d205369676e6564204d6573736167653a0a00000000000081525f6115fe614582601a840186614537565b84614537565b63ffffffff8281168282160390811115610ddc57610ddc6140e0565b80820180821115610ddc57610ddc6140e0565b634e487b7160e01b5f52601260045260245ffd5b5f826145d9576145d96145b7565b500690565b81810381811115610ddc57610ddc6140e0565b5f60ff821660ff8103614606576146066140e0565b60010192915050565b5f8261461d5761461d6145b7565b500490565b8082028115828204841417610ddc57610ddc6140e0565b60ff8181168382160190811115610ddc57610ddc6140e0565b5f61465d8287614537565b600560f91b81526146716001820187614537565b600560f91b815290506146876001820186614537565b600560f91b8152905061469d6001820185614537565b979650505050505050565b634e487b7160e01b5f52602160045260245ffd5b61060f60f31b81525f6125a36002830184614537565b6001815b600184111561333a578085048111156146f1576146f16140e0565b60018416156146ff57908102905b60019390931c9280026146d6565b5f8261471b57506001610ddc565b8161472757505f610ddc565b816001811461473d576002811461474757614763565b6001915050610ddc565b60ff841115614758576147586140e0565b50506001821b610ddc565b5060208310610133831016604e8410600b8410161715614786575081810a610ddc565b6147925f1984846146d2565b805f19048211156147a5576147a56140e0565b029392505050565b5f6125a3838361470d565b5f60ff8316806147ca576147ca6145b7565b8060ff84160491505092915050565b60ff8181168382160290811690818114612a7457612a746140e0565b60ff8281168282160390811115610ddc57610ddc6140e056fea2646970667358221220a51eaf07872263397e28bcc5982530f164b46c95f25372731d7576b5e5498adf64736f6c63430008210033";
18
+ static readonly abi: readonly [{
19
+ readonly type: "constructor";
20
+ readonly inputs: readonly [{
21
+ readonly name: "_avsDirectory";
22
+ readonly type: "address";
23
+ readonly internalType: "address";
24
+ }, {
25
+ readonly name: "_stakeRegistry";
26
+ readonly type: "address";
27
+ readonly internalType: "address";
28
+ }, {
29
+ readonly name: "_delegationManager";
30
+ readonly type: "address";
31
+ readonly internalType: "address";
32
+ }];
33
+ readonly stateMutability: "nonpayable";
34
+ }, {
35
+ readonly type: "function";
36
+ readonly name: "admins";
37
+ readonly inputs: readonly [{
38
+ readonly name: "";
39
+ readonly type: "uint256";
40
+ readonly internalType: "uint256";
41
+ }];
42
+ readonly outputs: readonly [{
43
+ readonly name: "";
44
+ readonly type: "address";
45
+ readonly internalType: "address";
46
+ }];
47
+ readonly stateMutability: "view";
48
+ }, {
49
+ readonly type: "function";
50
+ readonly name: "allTaskHashes";
51
+ readonly inputs: readonly [{
52
+ readonly name: "";
53
+ readonly type: "uint32";
54
+ readonly internalType: "uint32";
55
+ }];
56
+ readonly outputs: readonly [{
57
+ readonly name: "";
58
+ readonly type: "bytes32";
59
+ readonly internalType: "bytes32";
60
+ }];
61
+ readonly stateMutability: "view";
62
+ }, {
63
+ readonly type: "function";
64
+ readonly name: "avsDirectory";
65
+ readonly inputs: readonly [];
66
+ readonly outputs: readonly [{
67
+ readonly name: "";
68
+ readonly type: "address";
69
+ readonly internalType: "address";
70
+ }];
71
+ readonly stateMutability: "view";
72
+ }, {
73
+ readonly type: "function";
74
+ readonly name: "checkSignerAddress";
75
+ readonly inputs: readonly [{
76
+ readonly name: "request";
77
+ readonly type: "tuple";
78
+ readonly internalType: "struct IReclaimServiceManager.ClaimRequest";
79
+ readonly components: readonly [{
80
+ readonly name: "provider";
81
+ readonly type: "string";
82
+ readonly internalType: "string";
83
+ }, {
84
+ readonly name: "claimUserId";
85
+ readonly type: "bytes32";
86
+ readonly internalType: "bytes32";
87
+ }, {
88
+ readonly name: "claimHash";
89
+ readonly type: "bytes32";
90
+ readonly internalType: "bytes32";
91
+ }, {
92
+ readonly name: "requestedAt";
93
+ readonly type: "uint32";
94
+ readonly internalType: "uint32";
95
+ }, {
96
+ readonly name: "owner";
97
+ readonly type: "address";
98
+ readonly internalType: "address";
99
+ }];
100
+ }, {
101
+ readonly name: "requestSignature";
102
+ readonly type: "bytes";
103
+ readonly internalType: "bytes";
104
+ }];
105
+ readonly outputs: readonly [{
106
+ readonly name: "";
107
+ readonly type: "address";
108
+ readonly internalType: "address";
109
+ }];
110
+ readonly stateMutability: "pure";
111
+ }, {
112
+ readonly type: "function";
113
+ readonly name: "createNewTask";
114
+ readonly inputs: readonly [{
115
+ readonly name: "request";
116
+ readonly type: "tuple";
117
+ readonly internalType: "struct IReclaimServiceManager.ClaimRequest";
118
+ readonly components: readonly [{
119
+ readonly name: "provider";
120
+ readonly type: "string";
121
+ readonly internalType: "string";
122
+ }, {
123
+ readonly name: "claimUserId";
124
+ readonly type: "bytes32";
125
+ readonly internalType: "bytes32";
126
+ }, {
127
+ readonly name: "claimHash";
128
+ readonly type: "bytes32";
129
+ readonly internalType: "bytes32";
130
+ }, {
131
+ readonly name: "requestedAt";
132
+ readonly type: "uint32";
133
+ readonly internalType: "uint32";
134
+ }, {
135
+ readonly name: "owner";
136
+ readonly type: "address";
137
+ readonly internalType: "address";
138
+ }];
139
+ }, {
140
+ readonly name: "requestSignature";
141
+ readonly type: "bytes";
142
+ readonly internalType: "bytes";
143
+ }];
144
+ readonly outputs: readonly [];
145
+ readonly stateMutability: "nonpayable";
146
+ }, {
147
+ readonly type: "function";
148
+ readonly name: "deregisterOperatorFromAVS";
149
+ readonly inputs: readonly [{
150
+ readonly name: "operator";
151
+ readonly type: "address";
152
+ readonly internalType: "address";
153
+ }];
154
+ readonly outputs: readonly [];
155
+ readonly stateMutability: "nonpayable";
156
+ }, {
157
+ readonly type: "function";
158
+ readonly name: "encodeClaimRequest";
159
+ readonly inputs: readonly [{
160
+ readonly name: "request";
161
+ readonly type: "tuple";
162
+ readonly internalType: "struct IReclaimServiceManager.ClaimRequest";
163
+ readonly components: readonly [{
164
+ readonly name: "provider";
165
+ readonly type: "string";
166
+ readonly internalType: "string";
167
+ }, {
168
+ readonly name: "claimUserId";
169
+ readonly type: "bytes32";
170
+ readonly internalType: "bytes32";
171
+ }, {
172
+ readonly name: "claimHash";
173
+ readonly type: "bytes32";
174
+ readonly internalType: "bytes32";
175
+ }, {
176
+ readonly name: "requestedAt";
177
+ readonly type: "uint32";
178
+ readonly internalType: "uint32";
179
+ }, {
180
+ readonly name: "owner";
181
+ readonly type: "address";
182
+ readonly internalType: "address";
183
+ }];
184
+ }];
185
+ readonly outputs: readonly [{
186
+ readonly name: "";
187
+ readonly type: "bytes";
188
+ readonly internalType: "bytes";
189
+ }];
190
+ readonly stateMutability: "pure";
191
+ }, {
192
+ readonly type: "function";
193
+ readonly name: "getMetadataForOperator";
194
+ readonly inputs: readonly [{
195
+ readonly name: "operator";
196
+ readonly type: "address";
197
+ readonly internalType: "address";
198
+ }];
199
+ readonly outputs: readonly [{
200
+ readonly name: "";
201
+ readonly type: "tuple";
202
+ readonly internalType: "struct IReclaimServiceManager.OperatorMetadata";
203
+ readonly components: readonly [{
204
+ readonly name: "addr";
205
+ readonly type: "address";
206
+ readonly internalType: "address";
207
+ }, {
208
+ readonly name: "url";
209
+ readonly type: "string";
210
+ readonly internalType: "string";
211
+ }];
212
+ }];
213
+ readonly stateMutability: "view";
214
+ }, {
215
+ readonly type: "function";
216
+ readonly name: "getOperatorRestakedStrategies";
217
+ readonly inputs: readonly [{
218
+ readonly name: "_operator";
219
+ readonly type: "address";
220
+ readonly internalType: "address";
221
+ }];
222
+ readonly outputs: readonly [{
223
+ readonly name: "";
224
+ readonly type: "address[]";
225
+ readonly internalType: "address[]";
226
+ }];
227
+ readonly stateMutability: "view";
228
+ }, {
229
+ readonly type: "function";
230
+ readonly name: "getRestakeableStrategies";
231
+ readonly inputs: readonly [];
232
+ readonly outputs: readonly [{
233
+ readonly name: "";
234
+ readonly type: "address[]";
235
+ readonly internalType: "address[]";
236
+ }];
237
+ readonly stateMutability: "view";
238
+ }, {
239
+ readonly type: "function";
240
+ readonly name: "isAdmin";
241
+ readonly inputs: readonly [{
242
+ readonly name: "_admin";
243
+ readonly type: "address";
244
+ readonly internalType: "address";
245
+ }];
246
+ readonly outputs: readonly [{
247
+ readonly name: "";
248
+ readonly type: "bool";
249
+ readonly internalType: "bool";
250
+ }];
251
+ readonly stateMutability: "view";
252
+ }, {
253
+ readonly type: "function";
254
+ readonly name: "isOperatorWhitelisted";
255
+ readonly inputs: readonly [{
256
+ readonly name: "operator";
257
+ readonly type: "address";
258
+ readonly internalType: "address";
259
+ }];
260
+ readonly outputs: readonly [{
261
+ readonly name: "";
262
+ readonly type: "bool";
263
+ readonly internalType: "bool";
264
+ }];
265
+ readonly stateMutability: "view";
266
+ }, {
267
+ readonly type: "function";
268
+ readonly name: "latestTaskNum";
269
+ readonly inputs: readonly [];
270
+ readonly outputs: readonly [{
271
+ readonly name: "";
272
+ readonly type: "uint32";
273
+ readonly internalType: "uint32";
274
+ }];
275
+ readonly stateMutability: "view";
276
+ }, {
277
+ readonly type: "function";
278
+ readonly name: "operatorHasMinimumWeight";
279
+ readonly inputs: readonly [{
280
+ readonly name: "operator";
281
+ readonly type: "address";
282
+ readonly internalType: "address";
283
+ }];
284
+ readonly outputs: readonly [{
285
+ readonly name: "";
286
+ readonly type: "bool";
287
+ readonly internalType: "bool";
288
+ }];
289
+ readonly stateMutability: "view";
290
+ }, {
291
+ readonly type: "function";
292
+ readonly name: "owner";
293
+ readonly inputs: readonly [];
294
+ readonly outputs: readonly [{
295
+ readonly name: "";
296
+ readonly type: "address";
297
+ readonly internalType: "address";
298
+ }];
299
+ readonly stateMutability: "view";
300
+ }, {
301
+ readonly type: "function";
302
+ readonly name: "pause";
303
+ readonly inputs: readonly [{
304
+ readonly name: "newPausedStatus";
305
+ readonly type: "uint256";
306
+ readonly internalType: "uint256";
307
+ }];
308
+ readonly outputs: readonly [];
309
+ readonly stateMutability: "nonpayable";
310
+ }, {
311
+ readonly type: "function";
312
+ readonly name: "pauseAll";
313
+ readonly inputs: readonly [];
314
+ readonly outputs: readonly [];
315
+ readonly stateMutability: "nonpayable";
316
+ }, {
317
+ readonly type: "function";
318
+ readonly name: "paused";
319
+ readonly inputs: readonly [{
320
+ readonly name: "index";
321
+ readonly type: "uint8";
322
+ readonly internalType: "uint8";
323
+ }];
324
+ readonly outputs: readonly [{
325
+ readonly name: "";
326
+ readonly type: "bool";
327
+ readonly internalType: "bool";
328
+ }];
329
+ readonly stateMutability: "view";
330
+ }, {
331
+ readonly type: "function";
332
+ readonly name: "paused";
333
+ readonly inputs: readonly [];
334
+ readonly outputs: readonly [{
335
+ readonly name: "";
336
+ readonly type: "uint256";
337
+ readonly internalType: "uint256";
338
+ }];
339
+ readonly stateMutability: "view";
340
+ }, {
341
+ readonly type: "function";
342
+ readonly name: "pauserRegistry";
343
+ readonly inputs: readonly [];
344
+ readonly outputs: readonly [{
345
+ readonly name: "";
346
+ readonly type: "address";
347
+ readonly internalType: "contract IPauserRegistry";
348
+ }];
349
+ readonly stateMutability: "view";
350
+ }, {
351
+ readonly type: "function";
352
+ readonly name: "payForRange";
353
+ readonly inputs: readonly [{
354
+ readonly name: "rangePayments";
355
+ readonly type: "tuple[]";
356
+ readonly internalType: "struct IPaymentCoordinator.RangePayment[]";
357
+ readonly components: readonly [{
358
+ readonly name: "strategiesAndMultipliers";
359
+ readonly type: "tuple[]";
360
+ readonly internalType: "struct IPaymentCoordinator.StrategyAndMultiplier[]";
361
+ readonly components: readonly [{
362
+ readonly name: "strategy";
363
+ readonly type: "address";
364
+ readonly internalType: "contract IStrategy";
365
+ }, {
366
+ readonly name: "multiplier";
367
+ readonly type: "uint96";
368
+ readonly internalType: "uint96";
369
+ }];
370
+ }, {
371
+ readonly name: "token";
372
+ readonly type: "address";
373
+ readonly internalType: "contract IERC20";
374
+ }, {
375
+ readonly name: "amount";
376
+ readonly type: "uint256";
377
+ readonly internalType: "uint256";
378
+ }, {
379
+ readonly name: "startTimestamp";
380
+ readonly type: "uint32";
381
+ readonly internalType: "uint32";
382
+ }, {
383
+ readonly name: "duration";
384
+ readonly type: "uint32";
385
+ readonly internalType: "uint32";
386
+ }];
387
+ }];
388
+ readonly outputs: readonly [];
389
+ readonly stateMutability: "nonpayable";
390
+ }, {
391
+ readonly type: "function";
392
+ readonly name: "registerOperatorToAVS";
393
+ readonly inputs: readonly [{
394
+ readonly name: "operator";
395
+ readonly type: "address";
396
+ readonly internalType: "address";
397
+ }, {
398
+ readonly name: "operatorSignature";
399
+ readonly type: "tuple";
400
+ readonly internalType: "struct ISignatureUtils.SignatureWithSaltAndExpiry";
401
+ readonly components: readonly [{
402
+ readonly name: "signature";
403
+ readonly type: "bytes";
404
+ readonly internalType: "bytes";
405
+ }, {
406
+ readonly name: "salt";
407
+ readonly type: "bytes32";
408
+ readonly internalType: "bytes32";
409
+ }, {
410
+ readonly name: "expiry";
411
+ readonly type: "uint256";
412
+ readonly internalType: "uint256";
413
+ }];
414
+ }];
415
+ readonly outputs: readonly [];
416
+ readonly stateMutability: "nonpayable";
417
+ }, {
418
+ readonly type: "function";
419
+ readonly name: "registeredOperators";
420
+ readonly inputs: readonly [{
421
+ readonly name: "";
422
+ readonly type: "uint256";
423
+ readonly internalType: "uint256";
424
+ }];
425
+ readonly outputs: readonly [{
426
+ readonly name: "addr";
427
+ readonly type: "address";
428
+ readonly internalType: "address";
429
+ }, {
430
+ readonly name: "url";
431
+ readonly type: "string";
432
+ readonly internalType: "string";
433
+ }];
434
+ readonly stateMutability: "view";
435
+ }, {
436
+ readonly type: "function";
437
+ readonly name: "renounceOwnership";
438
+ readonly inputs: readonly [];
439
+ readonly outputs: readonly [];
440
+ readonly stateMutability: "nonpayable";
441
+ }, {
442
+ readonly type: "function";
443
+ readonly name: "setPauserRegistry";
444
+ readonly inputs: readonly [{
445
+ readonly name: "newPauserRegistry";
446
+ readonly type: "address";
447
+ readonly internalType: "contract IPauserRegistry";
448
+ }];
449
+ readonly outputs: readonly [];
450
+ readonly stateMutability: "nonpayable";
451
+ }, {
452
+ readonly type: "function";
453
+ readonly name: "setup";
454
+ readonly inputs: readonly [{
455
+ readonly name: "initialAdmin";
456
+ readonly type: "address";
457
+ readonly internalType: "address";
458
+ }];
459
+ readonly outputs: readonly [];
460
+ readonly stateMutability: "nonpayable";
461
+ }, {
462
+ readonly type: "function";
463
+ readonly name: "stakeRegistry";
464
+ readonly inputs: readonly [];
465
+ readonly outputs: readonly [{
466
+ readonly name: "";
467
+ readonly type: "address";
468
+ readonly internalType: "address";
469
+ }];
470
+ readonly stateMutability: "view";
471
+ }, {
472
+ readonly type: "function";
473
+ readonly name: "taskCompleted";
474
+ readonly inputs: readonly [{
475
+ readonly name: "completedTask";
476
+ readonly type: "tuple";
477
+ readonly internalType: "struct IReclaimServiceManager.CompletedTask";
478
+ readonly components: readonly [{
479
+ readonly name: "task";
480
+ readonly type: "tuple";
481
+ readonly internalType: "struct IReclaimServiceManager.Task";
482
+ readonly components: readonly [{
483
+ readonly name: "request";
484
+ readonly type: "tuple";
485
+ readonly internalType: "struct IReclaimServiceManager.ClaimRequest";
486
+ readonly components: readonly [{
487
+ readonly name: "provider";
488
+ readonly type: "string";
489
+ readonly internalType: "string";
490
+ }, {
491
+ readonly name: "claimUserId";
492
+ readonly type: "bytes32";
493
+ readonly internalType: "bytes32";
494
+ }, {
495
+ readonly name: "claimHash";
496
+ readonly type: "bytes32";
497
+ readonly internalType: "bytes32";
498
+ }, {
499
+ readonly name: "requestedAt";
500
+ readonly type: "uint32";
501
+ readonly internalType: "uint32";
502
+ }, {
503
+ readonly name: "owner";
504
+ readonly type: "address";
505
+ readonly internalType: "address";
506
+ }];
507
+ }, {
508
+ readonly name: "createdAt";
509
+ readonly type: "uint32";
510
+ readonly internalType: "uint32";
511
+ }, {
512
+ readonly name: "expiresAt";
513
+ readonly type: "uint32";
514
+ readonly internalType: "uint32";
515
+ }, {
516
+ readonly name: "minimumSignatures";
517
+ readonly type: "uint8";
518
+ readonly internalType: "uint8";
519
+ }, {
520
+ readonly name: "operators";
521
+ readonly type: "tuple[]";
522
+ readonly internalType: "struct IReclaimServiceManager.Operator[]";
523
+ readonly components: readonly [{
524
+ readonly name: "addr";
525
+ readonly type: "address";
526
+ readonly internalType: "address";
527
+ }, {
528
+ readonly name: "url";
529
+ readonly type: "string";
530
+ readonly internalType: "string";
531
+ }];
532
+ }, {
533
+ readonly name: "feePaid";
534
+ readonly type: "uint256";
535
+ readonly internalType: "uint256";
536
+ }];
537
+ }, {
538
+ readonly name: "signatures";
539
+ readonly type: "bytes[]";
540
+ readonly internalType: "bytes[]";
541
+ }];
542
+ }, {
543
+ readonly name: "referenceTaskIndex";
544
+ readonly type: "uint32";
545
+ readonly internalType: "uint32";
546
+ }];
547
+ readonly outputs: readonly [];
548
+ readonly stateMutability: "nonpayable";
549
+ }, {
550
+ readonly type: "function";
551
+ readonly name: "taskCreationMetadata";
552
+ readonly inputs: readonly [];
553
+ readonly outputs: readonly [{
554
+ readonly name: "maxTaskLifetimeS";
555
+ readonly type: "uint32";
556
+ readonly internalType: "uint32";
557
+ }, {
558
+ readonly name: "minSignaturesPerTask";
559
+ readonly type: "uint8";
560
+ readonly internalType: "uint8";
561
+ }, {
562
+ readonly name: "maxTaskCreationDelayS";
563
+ readonly type: "uint32";
564
+ readonly internalType: "uint32";
565
+ }];
566
+ readonly stateMutability: "view";
567
+ }, {
568
+ readonly type: "function";
569
+ readonly name: "transferOwnership";
570
+ readonly inputs: readonly [{
571
+ readonly name: "newOwner";
572
+ readonly type: "address";
573
+ readonly internalType: "address";
574
+ }];
575
+ readonly outputs: readonly [];
576
+ readonly stateMutability: "nonpayable";
577
+ }, {
578
+ readonly type: "function";
579
+ readonly name: "unpause";
580
+ readonly inputs: readonly [{
581
+ readonly name: "newPausedStatus";
582
+ readonly type: "uint256";
583
+ readonly internalType: "uint256";
584
+ }];
585
+ readonly outputs: readonly [];
586
+ readonly stateMutability: "nonpayable";
587
+ }, {
588
+ readonly type: "function";
589
+ readonly name: "updateAVSMetadataURI";
590
+ readonly inputs: readonly [{
591
+ readonly name: "_metadataURI";
592
+ readonly type: "string";
593
+ readonly internalType: "string";
594
+ }];
595
+ readonly outputs: readonly [];
596
+ readonly stateMutability: "nonpayable";
597
+ }, {
598
+ readonly type: "function";
599
+ readonly name: "updateOperatorMetadata";
600
+ readonly inputs: readonly [{
601
+ readonly name: "metadata";
602
+ readonly type: "tuple";
603
+ readonly internalType: "struct IReclaimServiceManager.OperatorMetadata";
604
+ readonly components: readonly [{
605
+ readonly name: "addr";
606
+ readonly type: "address";
607
+ readonly internalType: "address";
608
+ }, {
609
+ readonly name: "url";
610
+ readonly type: "string";
611
+ readonly internalType: "string";
612
+ }];
613
+ }];
614
+ readonly outputs: readonly [];
615
+ readonly stateMutability: "nonpayable";
616
+ }, {
617
+ readonly type: "function";
618
+ readonly name: "updateTaskCreationMetadata";
619
+ readonly inputs: readonly [{
620
+ readonly name: "newMetadata";
621
+ readonly type: "tuple";
622
+ readonly internalType: "struct IReclaimServiceManager.TaskCreationMetadata";
623
+ readonly components: readonly [{
624
+ readonly name: "maxTaskLifetimeS";
625
+ readonly type: "uint32";
626
+ readonly internalType: "uint32";
627
+ }, {
628
+ readonly name: "minSignaturesPerTask";
629
+ readonly type: "uint8";
630
+ readonly internalType: "uint8";
631
+ }, {
632
+ readonly name: "maxTaskCreationDelayS";
633
+ readonly type: "uint32";
634
+ readonly internalType: "uint32";
635
+ }];
636
+ }];
637
+ readonly outputs: readonly [];
638
+ readonly stateMutability: "nonpayable";
639
+ }, {
640
+ readonly type: "function";
641
+ readonly name: "whitelistAddressAsOperator";
642
+ readonly inputs: readonly [{
643
+ readonly name: "operator";
644
+ readonly type: "address";
645
+ readonly internalType: "address";
646
+ }, {
647
+ readonly name: "isWhitelisted";
648
+ readonly type: "bool";
649
+ readonly internalType: "bool";
650
+ }];
651
+ readonly outputs: readonly [];
652
+ readonly stateMutability: "nonpayable";
653
+ }, {
654
+ readonly type: "function";
655
+ readonly name: "whitelistedOperators";
656
+ readonly inputs: readonly [{
657
+ readonly name: "";
658
+ readonly type: "uint256";
659
+ readonly internalType: "uint256";
660
+ }];
661
+ readonly outputs: readonly [{
662
+ readonly name: "";
663
+ readonly type: "address";
664
+ readonly internalType: "address";
665
+ }];
666
+ readonly stateMutability: "view";
667
+ }, {
668
+ readonly type: "event";
669
+ readonly name: "Initialized";
670
+ readonly inputs: readonly [{
671
+ readonly name: "version";
672
+ readonly type: "uint8";
673
+ readonly indexed: false;
674
+ readonly internalType: "uint8";
675
+ }];
676
+ readonly anonymous: false;
677
+ }, {
678
+ readonly type: "event";
679
+ readonly name: "NewTaskCreated";
680
+ readonly inputs: readonly [{
681
+ readonly name: "taskIndex";
682
+ readonly type: "uint32";
683
+ readonly indexed: true;
684
+ readonly internalType: "uint32";
685
+ }, {
686
+ readonly name: "task";
687
+ readonly type: "tuple";
688
+ readonly indexed: false;
689
+ readonly internalType: "struct IReclaimServiceManager.Task";
690
+ readonly components: readonly [{
691
+ readonly name: "request";
692
+ readonly type: "tuple";
693
+ readonly internalType: "struct IReclaimServiceManager.ClaimRequest";
694
+ readonly components: readonly [{
695
+ readonly name: "provider";
696
+ readonly type: "string";
697
+ readonly internalType: "string";
698
+ }, {
699
+ readonly name: "claimUserId";
700
+ readonly type: "bytes32";
701
+ readonly internalType: "bytes32";
702
+ }, {
703
+ readonly name: "claimHash";
704
+ readonly type: "bytes32";
705
+ readonly internalType: "bytes32";
706
+ }, {
707
+ readonly name: "requestedAt";
708
+ readonly type: "uint32";
709
+ readonly internalType: "uint32";
710
+ }, {
711
+ readonly name: "owner";
712
+ readonly type: "address";
713
+ readonly internalType: "address";
714
+ }];
715
+ }, {
716
+ readonly name: "createdAt";
717
+ readonly type: "uint32";
718
+ readonly internalType: "uint32";
719
+ }, {
720
+ readonly name: "expiresAt";
721
+ readonly type: "uint32";
722
+ readonly internalType: "uint32";
723
+ }, {
724
+ readonly name: "minimumSignatures";
725
+ readonly type: "uint8";
726
+ readonly internalType: "uint8";
727
+ }, {
728
+ readonly name: "operators";
729
+ readonly type: "tuple[]";
730
+ readonly internalType: "struct IReclaimServiceManager.Operator[]";
731
+ readonly components: readonly [{
732
+ readonly name: "addr";
733
+ readonly type: "address";
734
+ readonly internalType: "address";
735
+ }, {
736
+ readonly name: "url";
737
+ readonly type: "string";
738
+ readonly internalType: "string";
739
+ }];
740
+ }, {
741
+ readonly name: "feePaid";
742
+ readonly type: "uint256";
743
+ readonly internalType: "uint256";
744
+ }];
745
+ }];
746
+ readonly anonymous: false;
747
+ }, {
748
+ readonly type: "event";
749
+ readonly name: "OwnershipTransferred";
750
+ readonly inputs: readonly [{
751
+ readonly name: "previousOwner";
752
+ readonly type: "address";
753
+ readonly indexed: true;
754
+ readonly internalType: "address";
755
+ }, {
756
+ readonly name: "newOwner";
757
+ readonly type: "address";
758
+ readonly indexed: true;
759
+ readonly internalType: "address";
760
+ }];
761
+ readonly anonymous: false;
762
+ }, {
763
+ readonly type: "event";
764
+ readonly name: "Paused";
765
+ readonly inputs: readonly [{
766
+ readonly name: "account";
767
+ readonly type: "address";
768
+ readonly indexed: true;
769
+ readonly internalType: "address";
770
+ }, {
771
+ readonly name: "newPausedStatus";
772
+ readonly type: "uint256";
773
+ readonly indexed: false;
774
+ readonly internalType: "uint256";
775
+ }];
776
+ readonly anonymous: false;
777
+ }, {
778
+ readonly type: "event";
779
+ readonly name: "PauserRegistrySet";
780
+ readonly inputs: readonly [{
781
+ readonly name: "pauserRegistry";
782
+ readonly type: "address";
783
+ readonly indexed: false;
784
+ readonly internalType: "contract IPauserRegistry";
785
+ }, {
786
+ readonly name: "newPauserRegistry";
787
+ readonly type: "address";
788
+ readonly indexed: false;
789
+ readonly internalType: "contract IPauserRegistry";
790
+ }];
791
+ readonly anonymous: false;
792
+ }, {
793
+ readonly type: "event";
794
+ readonly name: "TaskCompleted";
795
+ readonly inputs: readonly [{
796
+ readonly name: "taskIndex";
797
+ readonly type: "uint32";
798
+ readonly indexed: true;
799
+ readonly internalType: "uint32";
800
+ }, {
801
+ readonly name: "task";
802
+ readonly type: "tuple";
803
+ readonly indexed: false;
804
+ readonly internalType: "struct IReclaimServiceManager.CompletedTask";
805
+ readonly components: readonly [{
806
+ readonly name: "task";
807
+ readonly type: "tuple";
808
+ readonly internalType: "struct IReclaimServiceManager.Task";
809
+ readonly components: readonly [{
810
+ readonly name: "request";
811
+ readonly type: "tuple";
812
+ readonly internalType: "struct IReclaimServiceManager.ClaimRequest";
813
+ readonly components: readonly [{
814
+ readonly name: "provider";
815
+ readonly type: "string";
816
+ readonly internalType: "string";
817
+ }, {
818
+ readonly name: "claimUserId";
819
+ readonly type: "bytes32";
820
+ readonly internalType: "bytes32";
821
+ }, {
822
+ readonly name: "claimHash";
823
+ readonly type: "bytes32";
824
+ readonly internalType: "bytes32";
825
+ }, {
826
+ readonly name: "requestedAt";
827
+ readonly type: "uint32";
828
+ readonly internalType: "uint32";
829
+ }, {
830
+ readonly name: "owner";
831
+ readonly type: "address";
832
+ readonly internalType: "address";
833
+ }];
834
+ }, {
835
+ readonly name: "createdAt";
836
+ readonly type: "uint32";
837
+ readonly internalType: "uint32";
838
+ }, {
839
+ readonly name: "expiresAt";
840
+ readonly type: "uint32";
841
+ readonly internalType: "uint32";
842
+ }, {
843
+ readonly name: "minimumSignatures";
844
+ readonly type: "uint8";
845
+ readonly internalType: "uint8";
846
+ }, {
847
+ readonly name: "operators";
848
+ readonly type: "tuple[]";
849
+ readonly internalType: "struct IReclaimServiceManager.Operator[]";
850
+ readonly components: readonly [{
851
+ readonly name: "addr";
852
+ readonly type: "address";
853
+ readonly internalType: "address";
854
+ }, {
855
+ readonly name: "url";
856
+ readonly type: "string";
857
+ readonly internalType: "string";
858
+ }];
859
+ }, {
860
+ readonly name: "feePaid";
861
+ readonly type: "uint256";
862
+ readonly internalType: "uint256";
863
+ }];
864
+ }, {
865
+ readonly name: "signatures";
866
+ readonly type: "bytes[]";
867
+ readonly internalType: "bytes[]";
868
+ }];
869
+ }];
870
+ readonly anonymous: false;
871
+ }, {
872
+ readonly type: "event";
873
+ readonly name: "Unpaused";
874
+ readonly inputs: readonly [{
875
+ readonly name: "account";
876
+ readonly type: "address";
877
+ readonly indexed: true;
878
+ readonly internalType: "address";
879
+ }, {
880
+ readonly name: "newPausedStatus";
881
+ readonly type: "uint256";
882
+ readonly indexed: false;
883
+ readonly internalType: "uint256";
884
+ }];
885
+ readonly anonymous: false;
886
+ }];
887
+ static createInterface(): ReclaimServiceManagerInterface;
888
+ static connect(address: string, runner?: ContractRunner | null): ReclaimServiceManager;
889
+ }
890
+ export {};