@aastar/sdk 0.14.3 → 0.16.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (712) hide show
  1. package/.eslintrc.cjs +30 -0
  2. package/README.md +148 -19
  3. package/abis/BLSAggregator.json +13 -13
  4. package/abis/BLSValidator.json +13 -0
  5. package/abis/DVTValidator.json +13 -0
  6. package/abis/GToken.json +57 -26
  7. package/abis/GTokenStaking.json +13 -39
  8. package/abis/MySBT.json +0 -39
  9. package/abis/Paymaster.json +0 -13
  10. package/abis/PaymasterFactory.json +26 -39
  11. package/abis/PaymasterV4_2.json +68 -58
  12. package/abis/Registry.json +57 -16
  13. package/abis/ReputationSystem.json +182 -0
  14. package/abis/SuperPaymaster.json +169 -0
  15. package/abis/aPNTs.json +13 -26
  16. package/abis/xPNTsFactory.json +13 -26
  17. package/abis/xPNTsToken.json +13 -26
  18. package/config.anvil.json +1 -0
  19. package/config.sepolia.json +1 -0
  20. package/config.test.json +27 -0
  21. package/docs/ABI_Change_Tracking_Workflow.md +41 -0
  22. package/docs/ABI_MAINTENANCE_PLAN.md +132 -0
  23. package/docs/API_REFERENCE.md +169 -9
  24. package/docs/Configuration_Sync.md +47 -0
  25. package/docs/DEMO_REFACTOR_PLAN.md +289 -0
  26. package/docs/ENV_SEPOLIA_UPDATE.md +68 -0
  27. package/docs/Faucet_Gasless_Plan.md +56 -0
  28. package/docs/L2_BUSINESS_CLIENTS_PLAN.md +394 -0
  29. package/docs/L4_Manual_Test_CheatSheet.md +215 -0
  30. package/docs/SDK_ABI_COVERAGE.md +839 -0
  31. package/docs/SDK_COVERAGE_STRATEGY.md +397 -0
  32. package/docs/SDK_REGRESSION_AND_API_PLAN.md +98 -0
  33. package/docs/SDK_STAGE3_PLAN.md +151 -0
  34. package/docs/STAGE3.md +191 -0
  35. package/docs/TESTER_GUIDE_GASLESS.md +663 -0
  36. package/docs/Verifier_L4_Gasless_Plan.md +454 -0
  37. package/docs/api/@aastar/account.md +235 -0
  38. package/docs/api/@aastar/analytics.md +219 -0
  39. package/docs/api/@aastar/core.md +26830 -0
  40. package/docs/api/@aastar/dapp.md +130 -0
  41. package/docs/api/@aastar/identity.md +482 -0
  42. package/docs/api/@aastar/paymaster.md +1387 -0
  43. package/docs/api/@aastar/sdk/README.md +155 -0
  44. package/docs/api/@aastar/sdk/node.md +4044 -0
  45. package/docs/api/@aastar/tokens.md +1971 -0
  46. package/docs/api/README.md +8 -4
  47. package/docs/changelog.md +99 -0
  48. package/docs/examples/README.md +18 -0
  49. package/docs/guide/concepts/account-abstraction.md +95 -0
  50. package/docs/guide/concepts/rainbow-bridge.md +68 -0
  51. package/docs/guide/concepts/reputation.md +95 -0
  52. package/docs/guide/concepts/superpaymaster.md +141 -0
  53. package/docs/guide/use-cases/community-management.md +141 -0
  54. package/docs/guide/use-cases/gasless-transactions.md +71 -0
  55. package/docs/guide/use-cases/operator-staking.md +84 -0
  56. package/docs/guide/use-cases/yop.md +72 -0
  57. package/docs/refactor/2026-01-13-221242-trae-refactor.md +224 -0
  58. package/docs/refactor/2026-01-13-audit-analysis.md +96 -0
  59. package/docs/refactor/2026-01-13-audit-report-v0.16.2.md +76 -0
  60. package/docs/refactor/2026-01-13-audit-report-v0.17.0.md +74 -0
  61. package/docs/refactor/2026-01-13-cursor-refactor.md +511 -0
  62. package/docs/refactor/2026-01-13-refactor-plan.md +88 -0
  63. package/docs/refactor/2026-01-13-refactor-response-plan.md +77 -0
  64. package/docs/refactor/2026-01-13-refactor-review.md +39 -0
  65. package/docs/refactor/2026-01-13-sdk-enhancement-plan.md +120 -0
  66. package/docs/refactor/2026-01-14-audit-response.md +242 -0
  67. package/docs/refactor/2026-01-14-audit-summary.md +133 -0
  68. package/docs/refactor/cursor-2026-01-13-14-00-audit-report.md +267 -0
  69. package/env.template +32 -0
  70. package/examples/l1-api-demo.ts +184 -0
  71. package/examples/l2-clients-demo.ts +138 -0
  72. package/examples/l3-user-onboarding.ts +74 -0
  73. package/examples/prepare-gasless.ts +89 -0
  74. package/examples/simple-gasless-demo.ts +80 -0
  75. package/examples/simple-superpaymaster-demo.ts +96 -0
  76. package/l4-setup.sh +11 -0
  77. package/package.json +12 -8
  78. package/packages/account/package.json +6 -3
  79. package/packages/account/src/accounts/simple.test.ts +93 -0
  80. package/packages/account/src/eoa.test.ts +37 -0
  81. package/packages/account/src/eoa.ts +4 -2
  82. package/packages/account/src/index.test.ts +34 -0
  83. package/packages/account/tsconfig.json +0 -1
  84. package/packages/analytics/package.json +12 -5
  85. package/packages/analytics/tsconfig.json +0 -5
  86. package/packages/core/package.json +16 -6
  87. package/packages/core/scripts/audit-abi-coverage.ts +165 -0
  88. package/packages/core/scripts/debug-regex.ts +36 -0
  89. package/packages/core/src/abis/.abi-hashes.json +26 -0
  90. package/packages/core/src/abis/BLSAggregator.json +686 -572
  91. package/packages/core/src/abis/BLSValidator.json +42 -26
  92. package/packages/core/src/abis/DVTValidator.json +368 -370
  93. package/packages/core/src/abis/EntryPoint.json +1382 -1379
  94. package/packages/core/src/abis/GToken.json +513 -523
  95. package/packages/core/src/abis/GTokenStaking.json +949 -931
  96. package/packages/core/src/abis/MySBT.json +1518 -1586
  97. package/packages/core/src/abis/Paymaster.json +1143 -1205
  98. package/packages/core/src/abis/PaymasterFactory.json +640 -650
  99. package/packages/core/src/abis/Registry.json +1942 -1636
  100. package/packages/core/src/abis/ReputationSystem.json +699 -477
  101. package/packages/core/src/abis/SimpleAccount.json +560 -625
  102. package/packages/core/src/abis/SimpleAccountFactory.json +111 -108
  103. package/packages/core/src/abis/SuperPaymaster.json +1781 -1399
  104. package/packages/core/src/abis/abi.config.json +24 -0
  105. package/packages/core/src/abis/index.ts +74 -38
  106. package/packages/core/src/abis/xPNTsFactory.json +718 -728
  107. package/packages/core/src/abis/xPNTsToken.json +1280 -1173
  108. package/packages/core/src/actions/StateValidator.test.ts +175 -0
  109. package/packages/{sdk/src/utils/validation.ts → core/src/actions/StateValidator.ts} +22 -125
  110. package/packages/core/src/actions/account.test.ts +155 -0
  111. package/packages/core/src/actions/account.ts +179 -0
  112. package/packages/core/src/actions/aggregator.test.ts +88 -0
  113. package/packages/core/src/actions/dvt.test.ts +124 -0
  114. package/packages/core/src/actions/entryPoint.test.ts +176 -0
  115. package/packages/core/src/actions/entryPoint.ts +266 -0
  116. package/packages/core/src/actions/factory.test.ts +250 -0
  117. package/packages/core/src/actions/factory.ts +586 -14
  118. package/packages/core/src/actions/faucet.test.ts +202 -0
  119. package/packages/core/src/actions/faucet.ts +421 -0
  120. package/packages/core/src/actions/gtokenExtended.test.ts +162 -0
  121. package/packages/core/src/actions/gtokenExtended.ts +153 -0
  122. package/packages/core/src/actions/index.ts +8 -0
  123. package/packages/core/src/actions/paymasterV4.test.ts +209 -0
  124. package/packages/core/src/actions/paymasterV4.ts +330 -138
  125. package/packages/core/src/actions/registry.test.ts +443 -0
  126. package/packages/core/src/actions/registry.ts +768 -28
  127. package/packages/core/src/actions/reputation.test.ts +225 -0
  128. package/packages/core/src/actions/reputation.ts +351 -0
  129. package/packages/core/src/actions/sbt.test.ts +322 -0
  130. package/packages/core/src/actions/sbt.ts +614 -30
  131. package/packages/core/src/actions/staking.test.ts +273 -0
  132. package/packages/core/src/actions/staking.ts +350 -8
  133. package/packages/core/src/actions/superPaymaster.test.ts +356 -0
  134. package/packages/core/src/actions/superPaymaster.ts +746 -35
  135. package/packages/core/src/actions/tokens.test.ts +60 -0
  136. package/packages/core/src/actions/tokens.ts +482 -20
  137. package/packages/core/src/actions/validators.test.ts +239 -0
  138. package/packages/core/src/actions/validators.ts +590 -0
  139. package/packages/core/src/clients/BaseClient.ts +78 -0
  140. package/packages/core/src/clients/types.ts +69 -0
  141. package/packages/core/src/clients.ts +1 -1
  142. package/packages/core/src/communities.ts +2 -2
  143. package/packages/core/src/config/ContractConfigManager.ts +63 -0
  144. package/packages/core/src/constants.ts +64 -0
  145. package/packages/core/src/contract-addresses.ts +42 -18
  146. package/packages/core/src/contracts.test.ts +58 -0
  147. package/packages/core/src/contracts.ts +2 -2
  148. package/packages/core/src/index.ts +4 -1
  149. package/packages/core/src/requirementChecker.test.ts +71 -0
  150. package/packages/core/src/requirementChecker.ts +1 -39
  151. package/packages/core/src/roles.test.ts +34 -0
  152. package/packages/core/src/roles.ts +61 -50
  153. package/packages/core/src/utils/validation.test.ts +50 -0
  154. package/packages/core/src/utils/validation.ts +66 -0
  155. package/packages/core/tsconfig.json +2 -2
  156. package/packages/core/vitest.config.ts +14 -0
  157. package/packages/dapp/package.json +6 -3
  158. package/packages/dapp/src/ui/hooks/useCreditScore.ts +1 -1
  159. package/packages/dapp/tsconfig.json +0 -1
  160. package/packages/identity/package.json +6 -3
  161. package/packages/identity/src/index.ts +49 -17
  162. package/packages/identity/tsconfig.json +0 -1
  163. package/packages/paymaster/package.json +6 -3
  164. package/packages/paymaster/src/SuperPaymaster/index.ts +2 -2
  165. package/packages/paymaster/src/V4/PaymasterClient.test.ts +114 -0
  166. package/packages/paymaster/src/V4/PaymasterClient.ts +385 -0
  167. package/packages/paymaster/src/V4/PaymasterOperator.test.ts +80 -0
  168. package/packages/paymaster/src/V4/PaymasterOperator.ts +282 -0
  169. package/packages/paymaster/src/V4/PaymasterUtils.test.ts +54 -0
  170. package/packages/paymaster/src/V4/PaymasterUtils.ts +185 -0
  171. package/packages/paymaster/src/V4/SuperPaymasterClient.test.ts +79 -0
  172. package/packages/paymaster/src/V4/SuperPaymasterClient.ts +123 -0
  173. package/packages/paymaster/src/V4/index.ts +4 -123
  174. package/packages/paymaster/tsconfig.json +0 -1
  175. package/packages/sdk/aastar/tsconfig.json +0 -1
  176. package/packages/sdk/coverage_output.txt +393 -0
  177. package/packages/sdk/coverage_output_final.txt +739 -0
  178. package/packages/sdk/coverage_output_final_v2.txt +722 -0
  179. package/packages/sdk/coverage_output_final_v3.txt +722 -0
  180. package/packages/sdk/package.json +14 -2
  181. package/packages/sdk/src/clients/ExperimentClient.test.ts +65 -0
  182. package/packages/sdk/src/clients/ExperimentClient.ts +80 -0
  183. package/packages/sdk/src/clients/admin.test.ts +98 -0
  184. package/packages/sdk/src/clients/admin.ts +108 -8
  185. package/packages/sdk/src/clients/clients.test.ts +104 -0
  186. package/packages/sdk/src/clients/community.test.ts +118 -0
  187. package/packages/sdk/src/clients/community.ts +175 -241
  188. package/packages/sdk/src/clients/endUser.test.ts +221 -0
  189. package/packages/sdk/src/clients/endUser.ts +430 -52
  190. package/packages/sdk/src/clients/operator.test.ts +162 -0
  191. package/packages/sdk/src/clients/operator.ts +168 -90
  192. package/packages/sdk/src/errors/AAStarError.test.ts +92 -0
  193. package/packages/sdk/src/errors/AAStarError.ts +70 -0
  194. package/packages/sdk/src/errors/decoder.test.ts +107 -0
  195. package/packages/sdk/src/errors/decoder.ts +84 -41
  196. package/packages/sdk/src/index.ts +11 -8
  197. package/packages/sdk/src/node/index.ts +8 -0
  198. package/packages/sdk/src/types/result.ts +29 -0
  199. package/packages/sdk/src/utils/errorHandler.test.ts +102 -0
  200. package/packages/sdk/src/utils/eventDecoder.test.ts +56 -0
  201. package/packages/sdk/src/utils/eventDecoder.ts +66 -0
  202. package/packages/sdk/src/utils/funding.test.ts +117 -0
  203. package/packages/sdk/src/utils/keys.test.ts +105 -0
  204. package/packages/sdk/src/utils/keys.ts +15 -0
  205. package/packages/sdk/src/utils/roleData.test.ts +85 -0
  206. package/packages/sdk/src/utils/roleData.ts +15 -26
  207. package/packages/sdk/src/utils/testScenarios.test.ts +79 -0
  208. package/packages/sdk/src/utils/testScenarios.ts +128 -0
  209. package/packages/sdk/src/utils/userOp.test.ts +190 -0
  210. package/packages/sdk/src/utils/userOp.ts +265 -0
  211. package/packages/sdk/tests/scenarios/01_onboard_community.ts +62 -0
  212. package/packages/sdk/tests/scenarios/02_onboard_operator.ts +109 -0
  213. package/packages/sdk/tests/scenarios/03_onboard_user.ts +53 -0
  214. package/packages/sdk/tests/scenarios/04_gasless_tx_flow.ts +68 -0
  215. package/packages/sdk/tests/scenarios/check_entrypoint.ts +19 -0
  216. package/packages/sdk/tests/scenarios/check_initialization.ts +65 -0
  217. package/packages/sdk/tests/scenarios/debug_addresses.ts +26 -0
  218. package/packages/sdk/tests/scenarios/diagnose_scenario4.ts +55 -0
  219. package/packages/sdk/tests/scenarios/setup.ts +33 -0
  220. package/packages/sdk/tests/scenarios/test_entrypoint_nonce.ts +46 -0
  221. package/packages/sdk/tsconfig.json +0 -1
  222. package/packages/tokens/package.json +6 -3
  223. package/packages/tokens/src/index.ts +92 -64
  224. package/packages/tokens/tsconfig.json +0 -1
  225. package/run_l4_gasless_regression.sh +79 -0
  226. package/run_sdk_regression.sh +200 -175
  227. package/scripts/00_utils.ts +1 -1
  228. package/scripts/01_prepare_all.ts +149 -198
  229. package/scripts/02_test_eoa.ts +27 -24
  230. package/scripts/03_test_standard_aa.ts +48 -153
  231. package/scripts/04_test_paymaster_v4.ts +41 -198
  232. package/scripts/05_test_superpaymaster.ts +40 -362
  233. package/scripts/09_local_test_community_lifecycle.ts +4 -3
  234. package/scripts/11_test_core_flows_full.ts +75 -197
  235. package/scripts/15_test_bls_full.ts +25 -2
  236. package/scripts/15_test_dvt_bls_full.ts +11 -4
  237. package/scripts/18_test_lifecycle_completion.ts +2 -2
  238. package/scripts/19_sdk_experiment_runner.ts +41 -16
  239. package/scripts/20_sdk_full_capability.ts +75 -77
  240. package/scripts/99_bug_hunting_fast.ts +55 -172
  241. package/scripts/analyze_abi_coverage.ts +169 -0
  242. package/scripts/check-admin.ts +95 -0
  243. package/scripts/check-jason-status.ts +184 -0
  244. package/scripts/check-roles.ts +36 -0
  245. package/scripts/clear-nonce.ts +47 -0
  246. package/scripts/complete-jack-superpaymaster.ts +171 -0
  247. package/scripts/debug-addr.ts +43 -0
  248. package/scripts/debug-community-registration.ts +92 -0
  249. package/scripts/debug-deploy-v4.ts +116 -0
  250. package/scripts/debug-paymaster.ts +127 -0
  251. package/scripts/debug-register-role.ts +101 -0
  252. package/scripts/debug-version.ts +71 -0
  253. package/scripts/deploy-sync.ts +104 -0
  254. package/scripts/deprecated/check_aa_entrypoint.ts +29 -0
  255. package/scripts/deprecated/check_paymaster_deposits.ts +45 -0
  256. package/scripts/deprecated/debug_aoa_function.ts +28 -0
  257. package/scripts/deprecated/debug_aoa_issue.ts +16 -0
  258. package/scripts/deprecated/debug_pimlico_aa23.ts +40 -0
  259. package/scripts/deprecated/debug_summary.ts +34 -0
  260. package/scripts/deprecated/deploy_v07_aa.ts +99 -0
  261. package/scripts/deprecated/fix_all_issues.ts +61 -0
  262. package/scripts/deprecated/fund_bpnts.ts +52 -0
  263. package/scripts/deprecated/get_factory_addresses.ts +28 -0
  264. package/scripts/deprecated/recheck_pim.ts +34 -0
  265. package/{extract_abis.sh → scripts/dev_tools/extract_abis.sh} +13 -2
  266. package/scripts/extract-docs.sh +78 -9
  267. package/scripts/fund-jack.ts +38 -0
  268. package/scripts/inspect-anni-token.ts +116 -0
  269. package/scripts/inspect-factory.ts +83 -0
  270. package/scripts/l4-paymasterv4-transfer-test.ts +228 -0
  271. package/scripts/l4-setup.ts +453 -0
  272. package/scripts/l4-state.json +80 -0
  273. package/scripts/phase1_verify_contracts.ts +207 -0
  274. package/scripts/pre_test_sync.ts +83 -0
  275. package/scripts/prepare_sepolia_resources.ts +154 -0
  276. package/scripts/query-jack-token.ts +22 -0
  277. package/scripts/quick_setup_account.ts +80 -0
  278. package/scripts/run_l4_gasless_regression.sh +32 -0
  279. package/scripts/run_sdk_experiment.sh +13 -0
  280. package/scripts/run_sdk_regression-v2.sh +38 -0
  281. package/scripts/sdk_regression_v2.ts +162 -0
  282. package/scripts/setup-bbq-community.ts +187 -0
  283. package/scripts/setup-dancing-community.ts +223 -0
  284. package/scripts/setup_test_accounts.ts +88 -0
  285. package/scripts/setup_test_environment.ts +147 -0
  286. package/scripts/sync_anvil_config.cjs +44 -0
  287. package/scripts/sync_contract_addresses.ts +186 -0
  288. package/scripts/sync_sepolia_config.cjs +90 -0
  289. package/scripts/sync_sepolia_config.mjs +74 -0
  290. package/scripts/test-brown-v4-deploy.ts +90 -0
  291. package/scripts/test-faucet-and-gasless.ts +170 -0
  292. package/scripts/test-jack-gasless.ts +119 -0
  293. package/scripts/test-jack-registration.ts +133 -0
  294. package/scripts/test-jack-superpaymaster-api.ts +112 -0
  295. package/scripts/test-kms-gasless.ts +138 -0
  296. package/scripts/test_groups.ts +63 -192
  297. package/scripts/test_new_sdk_apis_sepolia.ts +78 -0
  298. package/scripts/update_env_from_config.ts +83 -0
  299. package/scripts/v2_regression/00_validate_env.ts +28 -4
  300. package/scripts/v2_regression/02_operator_onboarding.ts +15 -141
  301. package/scripts/v2_regression/03_community_registry.ts +23 -57
  302. package/scripts/v2_regression/04_enduser_flow.ts +15 -48
  303. package/scripts/verify-tx-status.ts +81 -0
  304. package/scripts/verify_onchain_milestone.ts +114 -0
  305. package/scripts/verify_phase1.ts +66 -0
  306. package/scripts/verify_phase2.ts +66 -0
  307. package/sdk_experiment_data.csv +2 -0
  308. package/simple-test-paymaster.sh +2 -0
  309. package/simple-test-superpaymaster.sh +1 -0
  310. package/tests/l1-regression.test.ts +458 -0
  311. package/tests/l4-test-anni-gasless.ts +105 -0
  312. package/tests/l4-test-jason1-gasless.ts +150 -0
  313. package/tests/l4-test-jason2-gasless.ts +174 -0
  314. package/tests/l4-test-pmv4-deposit.ts +111 -0
  315. package/tests/l4-test-pmv4-gasless.ts +166 -0
  316. package/tests/l4-test-pmv4-submit.ts +223 -0
  317. package/tests/regression/README.md +168 -0
  318. package/tests/regression/config.ts +215 -0
  319. package/tests/regression/display-versions.ts +85 -0
  320. package/tests/regression/index.ts +67 -0
  321. package/tests/regression/l1-tests.ts +267 -0
  322. package/tests/regression/l2-tests.ts +171 -0
  323. package/tests/regression/l3-tests.ts +125 -0
  324. package/tests/regression/l4-gasless.ts +897 -0
  325. package/tests/regression/l4-runner.ts +52 -0
  326. package/tests/reports/phase1_contract_verification.md +45 -0
  327. package/tests/utils/contractVerifier.ts +237 -0
  328. package/tests/utils/userOpHelper.ts +194 -0
  329. package/tsconfig.json +32 -6
  330. package/typedoc.json +39 -5
  331. package/vitest.config.ts +16 -0
  332. package/.eslintrc.js +0 -28
  333. package/docs/STAGE_3_SCENARIO_EXP_PLAN.md +0 -77
  334. package/docs/api/@aastar/account/README.md +0 -15
  335. package/docs/api/@aastar/account/classes/UserOpClient.md +0 -87
  336. package/docs/api/@aastar/account/functions/createEOAWalletClient.md +0 -21
  337. package/docs/api/@aastar/account/functions/getUserOpHash.md +0 -23
  338. package/docs/api/@aastar/account/functions/packUserOpLimits.md +0 -19
  339. package/docs/api/@aastar/account/functions/toSimpleSmartAccount.md +0 -83
  340. package/docs/api/@aastar/account/type-aliases/EOAWalletClient.md +0 -37
  341. package/docs/api/@aastar/account/type-aliases/SimpleSmartAccount.md +0 -39
  342. package/docs/api/@aastar/core/README.md +0 -136
  343. package/docs/api/@aastar/core/classes/BLSSigner.md +0 -147
  344. package/docs/api/@aastar/core/enumerations/NodeType.md +0 -33
  345. package/docs/api/@aastar/core/functions/aggregatorActions.md +0 -2714
  346. package/docs/api/@aastar/core/functions/createAAStarPublicClient.md +0 -3105
  347. package/docs/api/@aastar/core/functions/dvtActions.md +0 -2714
  348. package/docs/api/@aastar/core/functions/factoryActions.md +0 -2714
  349. package/docs/api/@aastar/core/functions/getAddressUrl.md +0 -32
  350. package/docs/api/@aastar/core/functions/getAllCommunityConfigs.md +0 -9
  351. package/docs/api/@aastar/core/functions/getAllV2Contracts.md +0 -20
  352. package/docs/api/@aastar/core/functions/getBlockExplorer.md +0 -26
  353. package/docs/api/@aastar/core/functions/getChainId.md +0 -26
  354. package/docs/api/@aastar/core/functions/getCommunities.md +0 -76
  355. package/docs/api/@aastar/core/functions/getCommunity.md +0 -32
  356. package/docs/api/@aastar/core/functions/getCommunityConfig.md +0 -15
  357. package/docs/api/@aastar/core/functions/getContract.md +0 -37
  358. package/docs/api/@aastar/core/functions/getContractNetworks.md +0 -18
  359. package/docs/api/@aastar/core/functions/getContracts.md +0 -178
  360. package/docs/api/@aastar/core/functions/getCoreContracts.md +0 -55
  361. package/docs/api/@aastar/core/functions/getDeploymentDate.md +0 -32
  362. package/docs/api/@aastar/core/functions/getEntryPoint.md +0 -25
  363. package/docs/api/@aastar/core/functions/getNetwork.md +0 -26
  364. package/docs/api/@aastar/core/functions/getPaymasterV4_1.md +0 -25
  365. package/docs/api/@aastar/core/functions/getRpcUrl.md +0 -25
  366. package/docs/api/@aastar/core/functions/getSimpleAccountFactory.md +0 -25
  367. package/docs/api/@aastar/core/functions/getSuperPaymasterV2.md +0 -25
  368. package/docs/api/@aastar/core/functions/getTestAccounts.md +0 -30
  369. package/docs/api/@aastar/core/functions/getTestTokenContracts.md +0 -38
  370. package/docs/api/@aastar/core/functions/getTokenContracts.md +0 -31
  371. package/docs/api/@aastar/core/functions/getTxUrl.md +0 -32
  372. package/docs/api/@aastar/core/functions/getV2ContractByAddress.md +0 -28
  373. package/docs/api/@aastar/core/functions/getV2ContractByName.md +0 -28
  374. package/docs/api/@aastar/core/functions/getV2ContractsByDate.md +0 -26
  375. package/docs/api/@aastar/core/functions/isContractNetworkSupported.md +0 -27
  376. package/docs/api/@aastar/core/functions/isRegisteredCommunity.md +0 -15
  377. package/docs/api/@aastar/core/functions/isV2Contract.md +0 -27
  378. package/docs/api/@aastar/core/functions/paymasterV4Actions.md +0 -2719
  379. package/docs/api/@aastar/core/functions/registryActions.md +0 -2720
  380. package/docs/api/@aastar/core/functions/reputationActions.md +0 -2720
  381. package/docs/api/@aastar/core/functions/sbtActions.md +0 -2720
  382. package/docs/api/@aastar/core/functions/stakingActions.md +0 -2720
  383. package/docs/api/@aastar/core/functions/superPaymasterActions.md +0 -2720
  384. package/docs/api/@aastar/core/functions/tokenActions.md +0 -2714
  385. package/docs/api/@aastar/core/interfaces/CommunityConfig.md +0 -81
  386. package/docs/api/@aastar/core/interfaces/ContractVersion.md +0 -63
  387. package/docs/api/@aastar/core/type-aliases/AggregatorActions.md +0 -79
  388. package/docs/api/@aastar/core/type-aliases/ContractCategory.md +0 -5
  389. package/docs/api/@aastar/core/type-aliases/ContractNetwork.md +0 -5
  390. package/docs/api/@aastar/core/type-aliases/DVTActions.md +0 -139
  391. package/docs/api/@aastar/core/type-aliases/FactoryActions.md +0 -99
  392. package/docs/api/@aastar/core/type-aliases/NetworkContracts.md +0 -5
  393. package/docs/api/@aastar/core/type-aliases/PaymasterV4Actions.md +0 -422
  394. package/docs/api/@aastar/core/type-aliases/RegistryActions.md +0 -263
  395. package/docs/api/@aastar/core/type-aliases/ReputationActions.md +0 -47
  396. package/docs/api/@aastar/core/type-aliases/RoleConfig.md +0 -83
  397. package/docs/api/@aastar/core/type-aliases/SBTActions.md +0 -203
  398. package/docs/api/@aastar/core/type-aliases/StakingActions.md +0 -179
  399. package/docs/api/@aastar/core/type-aliases/SuperPaymasterActions.md +0 -219
  400. package/docs/api/@aastar/core/type-aliases/SupportedNetwork.md +0 -3
  401. package/docs/api/@aastar/core/type-aliases/TokenActions.md +0 -151
  402. package/docs/api/@aastar/core/variables/AASTAR_COMMUNITY.md +0 -8
  403. package/docs/api/@aastar/core/variables/ALL_ADDRESSES.md +0 -71
  404. package/docs/api/@aastar/core/variables/BLSAggregatorABI.md +0 -3
  405. package/docs/api/@aastar/core/variables/BLSHelpers.md +0 -91
  406. package/docs/api/@aastar/core/variables/BPS_DENOMINATOR.md +0 -5
  407. package/docs/api/@aastar/core/variables/BRANDING.md +0 -67
  408. package/docs/api/@aastar/core/variables/BREAD_COMMUNITY.md +0 -8
  409. package/docs/api/@aastar/core/variables/COMMUNITIES.md +0 -5
  410. package/docs/api/@aastar/core/variables/COMMUNITY_OWNERS.md +0 -15
  411. package/docs/api/@aastar/core/variables/CONTRACTS.md +0 -163
  412. package/docs/api/@aastar/core/variables/CONTRACT_METADATA.md +0 -67
  413. package/docs/api/@aastar/core/variables/CORE_ADDRESSES.md +0 -35
  414. package/docs/api/@aastar/core/variables/DEFAULT_APNTS_PRICE_USD.md +0 -5
  415. package/docs/api/@aastar/core/variables/DEFAULT_GAS_TOKEN_MINT_AMOUNT.md +0 -5
  416. package/docs/api/@aastar/core/variables/DEFAULT_USDT_MINT_AMOUNT.md +0 -5
  417. package/docs/api/@aastar/core/variables/DVTValidatorABI.md +0 -3
  418. package/docs/api/@aastar/core/variables/EntryPointABI.md +0 -3
  419. package/docs/api/@aastar/core/variables/FAUCET_API_URL.md +0 -5
  420. package/docs/api/@aastar/core/variables/GTokenABI.md +0 -3
  421. package/docs/api/@aastar/core/variables/GTokenStakingABI.md +0 -3
  422. package/docs/api/@aastar/core/variables/LINKS.md +0 -33
  423. package/docs/api/@aastar/core/variables/MAX_SERVICE_FEE.md +0 -5
  424. package/docs/api/@aastar/core/variables/MONITORING_ADDRESSES.md +0 -15
  425. package/docs/api/@aastar/core/variables/MySBTABI.md +0 -3
  426. package/docs/api/@aastar/core/variables/NETWORKS.md +0 -79
  427. package/docs/api/@aastar/core/variables/NODE_STAKE_AMOUNTS.md +0 -31
  428. package/docs/api/@aastar/core/variables/OFFICIAL_ADDRESSES.md +0 -11
  429. package/docs/api/@aastar/core/variables/PAYMASTER_ADDRESSES.md +0 -15
  430. package/docs/api/@aastar/core/variables/PaymasterABI.md +0 -3
  431. package/docs/api/@aastar/core/variables/PaymasterFactoryABI.md +0 -3
  432. package/docs/api/@aastar/core/variables/PaymasterV4ABI.md +0 -3
  433. package/docs/api/@aastar/core/variables/ROLE_ANODE.md +0 -3
  434. package/docs/api/@aastar/core/variables/ROLE_COMMUNITY.md +0 -3
  435. package/docs/api/@aastar/core/variables/ROLE_ENDUSER.md +0 -5
  436. package/docs/api/@aastar/core/variables/ROLE_KMS.md +0 -3
  437. package/docs/api/@aastar/core/variables/ROLE_PAYMASTER_AOA.md +0 -3
  438. package/docs/api/@aastar/core/variables/ROLE_PAYMASTER_SUPER.md +0 -3
  439. package/docs/api/@aastar/core/variables/RegistryABI.md +0 -3
  440. package/docs/api/@aastar/core/variables/ReputationSystemABI.md +0 -3
  441. package/docs/api/@aastar/core/variables/ReputationSystemV3ABI.md +0 -3
  442. package/docs/api/@aastar/core/variables/SEPOLIA_CONTRACTS.md +0 -159
  443. package/docs/api/@aastar/core/variables/SEPOLIA_V2_VERSIONS.md +0 -67
  444. package/docs/api/@aastar/core/variables/SERVICE_FEE_RATE.md +0 -5
  445. package/docs/api/@aastar/core/variables/Simple7702AccountABI.md +0 -3
  446. package/docs/api/@aastar/core/variables/SimpleAccountABI.md +0 -3
  447. package/docs/api/@aastar/core/variables/SimpleAccountFactoryABI.md +0 -3
  448. package/docs/api/@aastar/core/variables/SimpleAccountFactoryV08ABI.md +0 -3
  449. package/docs/api/@aastar/core/variables/SimpleAccountV08ABI.md +0 -3
  450. package/docs/api/@aastar/core/variables/SuperPaymasterABI.md +0 -3
  451. package/docs/api/@aastar/core/variables/SuperPaymasterV3ABI.md +0 -3
  452. package/docs/api/@aastar/core/variables/TEST_ACCOUNT_ADDRESSES.md +0 -11
  453. package/docs/api/@aastar/core/variables/TEST_ACCOUNT_POOL_SIZE.md +0 -5
  454. package/docs/api/@aastar/core/variables/TEST_COMMUNITIES.md +0 -19
  455. package/docs/api/@aastar/core/variables/TEST_TOKEN_ADDRESSES.md +0 -19
  456. package/docs/api/@aastar/core/variables/TOKEN_ADDRESSES.md +0 -11
  457. package/docs/api/@aastar/core/variables/V2_SUMMARY.md +0 -39
  458. package/docs/api/@aastar/core/variables/xPNTsFactoryABI.md +0 -3
  459. package/docs/api/@aastar/core/variables/xPNTsTokenABI.md +0 -3
  460. package/docs/api/@aastar/paymaster/README.md +0 -14
  461. package/docs/api/@aastar/paymaster/classes/SuperPaymasterClient.md +0 -163
  462. package/docs/api/@aastar/paymaster/functions/checkEligibility.md +0 -28
  463. package/docs/api/@aastar/paymaster/functions/getPaymasterV4Middleware.md +0 -32
  464. package/docs/api/@aastar/paymaster/functions/getSuperPaymasterMiddleware.md +0 -32
  465. package/docs/api/@aastar/paymaster/type-aliases/PaymasterConfig.md +0 -35
  466. package/docs/api/@aastar/paymaster/type-aliases/PaymasterV4MiddlewareConfig.md +0 -35
  467. package/docs/api/@aastar/tokens/README.md +0 -3
  468. package/docs/api/@aastar/tokens/classes/FinanceClient.md +0 -8653
  469. package/ext/permissionless.js/.changeset/README.md +0 -8
  470. package/ext/permissionless.js/.changeset/config.json +0 -11
  471. package/ext/permissionless.js/.env-example +0 -2
  472. package/ext/permissionless.js/.github/actions/install-dependencies/action.yml +0 -17
  473. package/ext/permissionless.js/.github/dependabot.yaml +0 -10
  474. package/ext/permissionless.js/.github/workflows/canary.yml +0 -49
  475. package/ext/permissionless.js/.github/workflows/on-pull-request.yml +0 -61
  476. package/ext/permissionless.js/.github/workflows/on-push-to-main.yml +0 -59
  477. package/ext/permissionless.js/.github/workflows/prune-tags.yml +0 -92
  478. package/ext/permissionless.js/.github/workflows/verify.yml +0 -114
  479. package/ext/permissionless.js/.size-limit.json +0 -13
  480. package/ext/permissionless.js/LICENSE +0 -21
  481. package/ext/permissionless.js/assets/banner.png +0 -0
  482. package/ext/permissionless.js/biome.json +0 -46
  483. package/ext/permissionless.js/bun.lock +0 -2340
  484. package/ext/permissionless.js/bun.lockb +0 -0
  485. package/ext/permissionless.js/package.json +0 -82
  486. package/ext/permissionless.js/packages/mock-paymaster/CHANGELOG.md +0 -31
  487. package/ext/permissionless.js/packages/mock-paymaster/constants.ts +0 -84
  488. package/ext/permissionless.js/packages/mock-paymaster/helpers/abi.ts +0 -1048
  489. package/ext/permissionless.js/packages/mock-paymaster/helpers/erc20-utils.ts +0 -105
  490. package/ext/permissionless.js/packages/mock-paymaster/helpers/schema.ts +0 -307
  491. package/ext/permissionless.js/packages/mock-paymaster/helpers/utils.ts +0 -78
  492. package/ext/permissionless.js/packages/mock-paymaster/index.ts +0 -63
  493. package/ext/permissionless.js/packages/mock-paymaster/package.json +0 -33
  494. package/ext/permissionless.js/packages/mock-paymaster/relay.ts +0 -424
  495. package/ext/permissionless.js/packages/mock-paymaster/setup.ts +0 -163
  496. package/ext/permissionless.js/packages/mock-paymaster/singletonPaymasters.ts +0 -230
  497. package/ext/permissionless.js/packages/permissionless/CHANGELOG.md +0 -893
  498. package/ext/permissionless.js/packages/permissionless/README.md +0 -122
  499. package/ext/permissionless.js/packages/permissionless/accounts/biconomy/abi/BiconomySmartAccountAbi.ts +0 -128
  500. package/ext/permissionless.js/packages/permissionless/accounts/biconomy/toBiconomySmartAccount.ts +0 -374
  501. package/ext/permissionless.js/packages/permissionless/accounts/decodeCalls.test.ts +0 -505
  502. package/ext/permissionless.js/packages/permissionless/accounts/etherspot/abi/EtherspotBootstrapAbi.ts +0 -94
  503. package/ext/permissionless.js/packages/permissionless/accounts/etherspot/constants.ts +0 -27
  504. package/ext/permissionless.js/packages/permissionless/accounts/etherspot/toEtherspotSmartAccount.ts +0 -369
  505. package/ext/permissionless.js/packages/permissionless/accounts/etherspot/utils/getInitMSAData.ts +0 -56
  506. package/ext/permissionless.js/packages/permissionless/accounts/etherspot/utils/getNonceKey.ts +0 -21
  507. package/ext/permissionless.js/packages/permissionless/accounts/etherspot/utils/wrapMessageHash.ts +0 -43
  508. package/ext/permissionless.js/packages/permissionless/accounts/index.ts +0 -86
  509. package/ext/permissionless.js/packages/permissionless/accounts/kernel/abi/KernelAccountAbi.ts +0 -87
  510. package/ext/permissionless.js/packages/permissionless/accounts/kernel/abi/KernelV3AccountAbi.ts +0 -813
  511. package/ext/permissionless.js/packages/permissionless/accounts/kernel/abi/KernelV3FactoryAbi.ts +0 -12
  512. package/ext/permissionless.js/packages/permissionless/accounts/kernel/abi/KernelV3MetaFactoryAbi.ts +0 -17
  513. package/ext/permissionless.js/packages/permissionless/accounts/kernel/constants.ts +0 -14
  514. package/ext/permissionless.js/packages/permissionless/accounts/kernel/to7702KernelSmartAccount.ts +0 -63
  515. package/ext/permissionless.js/packages/permissionless/accounts/kernel/toEcdsaKernelSmartAccount.ts +0 -62
  516. package/ext/permissionless.js/packages/permissionless/accounts/kernel/toKernelSmartAccount.ts +0 -984
  517. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/decodeCallData.ts +0 -43
  518. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/encodeCallData.ts +0 -57
  519. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/getNonceKey.ts +0 -33
  520. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/isKernelV2.ts +0 -6
  521. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/isWebAuthnAccount.ts +0 -8
  522. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/signMessage.ts +0 -115
  523. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/signTypedData.ts +0 -97
  524. package/ext/permissionless.js/packages/permissionless/accounts/kernel/utils/wrapMessageHash.ts +0 -44
  525. package/ext/permissionless.js/packages/permissionless/accounts/light/toLightSmartAccount.ts +0 -496
  526. package/ext/permissionless.js/packages/permissionless/accounts/nexus/toNexusSmartAccount.ts +0 -351
  527. package/ext/permissionless.js/packages/permissionless/accounts/safe/index.ts +0 -14
  528. package/ext/permissionless.js/packages/permissionless/accounts/safe/signUserOperation.test.ts +0 -275
  529. package/ext/permissionless.js/packages/permissionless/accounts/safe/signUserOperation.ts +0 -316
  530. package/ext/permissionless.js/packages/permissionless/accounts/safe/toSafeSmartAccount.ts +0 -1980
  531. package/ext/permissionless.js/packages/permissionless/accounts/simple/to7702SimpleSmartAccount.ts +0 -51
  532. package/ext/permissionless.js/packages/permissionless/accounts/simple/toSimpleSmartAccount.ts +0 -585
  533. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/toThirdwebSmartAccount.ts +0 -221
  534. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/utils/decodeCallData.ts +0 -87
  535. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/utils/encodeCallData.ts +0 -81
  536. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/utils/getAccountAddress.ts +0 -48
  537. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/utils/getFactoryData.ts +0 -40
  538. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/utils/signMessage.ts +0 -33
  539. package/ext/permissionless.js/packages/permissionless/accounts/thirdweb/utils/signTypedData.ts +0 -67
  540. package/ext/permissionless.js/packages/permissionless/accounts/trust/toTrustSmartAccount.ts +0 -232
  541. package/ext/permissionless.js/packages/permissionless/accounts/trust/utils/decodeCallData.ts +0 -87
  542. package/ext/permissionless.js/packages/permissionless/accounts/trust/utils/encodeCallData.ts +0 -81
  543. package/ext/permissionless.js/packages/permissionless/accounts/trust/utils/getFactoryData.ts +0 -51
  544. package/ext/permissionless.js/packages/permissionless/actions/erc7579/accountId.test.ts +0 -39
  545. package/ext/permissionless.js/packages/permissionless/actions/erc7579/accountId.ts +0 -93
  546. package/ext/permissionless.js/packages/permissionless/actions/erc7579/installModule.test.ts +0 -216
  547. package/ext/permissionless.js/packages/permissionless/actions/erc7579/installModule.ts +0 -99
  548. package/ext/permissionless.js/packages/permissionless/actions/erc7579/installModules.test.ts +0 -237
  549. package/ext/permissionless.js/packages/permissionless/actions/erc7579/installModules.ts +0 -96
  550. package/ext/permissionless.js/packages/permissionless/actions/erc7579/isModuleInstalled.test.ts +0 -72
  551. package/ext/permissionless.js/packages/permissionless/actions/erc7579/isModuleInstalled.ts +0 -132
  552. package/ext/permissionless.js/packages/permissionless/actions/erc7579/supportsExecutionMode.test.ts +0 -108
  553. package/ext/permissionless.js/packages/permissionless/actions/erc7579/supportsExecutionMode.ts +0 -158
  554. package/ext/permissionless.js/packages/permissionless/actions/erc7579/supportsModule.test.ts +0 -35
  555. package/ext/permissionless.js/packages/permissionless/actions/erc7579/supportsModule.ts +0 -120
  556. package/ext/permissionless.js/packages/permissionless/actions/erc7579/uninstallModule.test.ts +0 -129
  557. package/ext/permissionless.js/packages/permissionless/actions/erc7579/uninstallModule.ts +0 -98
  558. package/ext/permissionless.js/packages/permissionless/actions/erc7579/uninstallModules.test.ts +0 -117
  559. package/ext/permissionless.js/packages/permissionless/actions/erc7579/uninstallModules.ts +0 -87
  560. package/ext/permissionless.js/packages/permissionless/actions/erc7579.ts +0 -103
  561. package/ext/permissionless.js/packages/permissionless/actions/etherspot/getUserOperationGasPrice.ts +0 -32
  562. package/ext/permissionless.js/packages/permissionless/actions/etherspot.ts +0 -4
  563. package/ext/permissionless.js/packages/permissionless/actions/index.ts +0 -9
  564. package/ext/permissionless.js/packages/permissionless/actions/package.json +0 -6
  565. package/ext/permissionless.js/packages/permissionless/actions/passkeyServer/getCredentials.ts +0 -47
  566. package/ext/permissionless.js/packages/permissionless/actions/passkeyServer/startAuthentication.ts +0 -39
  567. package/ext/permissionless.js/packages/permissionless/actions/passkeyServer/startRegistration.ts +0 -126
  568. package/ext/permissionless.js/packages/permissionless/actions/passkeyServer/verifyAuthentication.ts +0 -142
  569. package/ext/permissionless.js/packages/permissionless/actions/passkeyServer/verifyRegistration.ts +0 -132
  570. package/ext/permissionless.js/packages/permissionless/actions/passkeyServer.ts +0 -17
  571. package/ext/permissionless.js/packages/permissionless/actions/pimlico/estimateErc20PaymasterCost.ts +0 -102
  572. package/ext/permissionless.js/packages/permissionless/actions/pimlico/getTokenQuotes.test.ts +0 -90
  573. package/ext/permissionless.js/packages/permissionless/actions/pimlico/getTokenQuotes.ts +0 -77
  574. package/ext/permissionless.js/packages/permissionless/actions/pimlico/getUserOperationGasPrice.test.ts +0 -82
  575. package/ext/permissionless.js/packages/permissionless/actions/pimlico/getUserOperationGasPrice.ts +0 -67
  576. package/ext/permissionless.js/packages/permissionless/actions/pimlico/getUserOperationStatus.test.ts +0 -199
  577. package/ext/permissionless.js/packages/permissionless/actions/pimlico/getUserOperationStatus.ts +0 -49
  578. package/ext/permissionless.js/packages/permissionless/actions/pimlico/sendCompressedUserOperation.ts +0 -59
  579. package/ext/permissionless.js/packages/permissionless/actions/pimlico/sponsorUserOperation.test.ts +0 -236
  580. package/ext/permissionless.js/packages/permissionless/actions/pimlico/sponsorUserOperation.ts +0 -151
  581. package/ext/permissionless.js/packages/permissionless/actions/pimlico/validateSponsorshipPolicies.test.ts +0 -153
  582. package/ext/permissionless.js/packages/permissionless/actions/pimlico/validateSponsorshipPolicies.ts +0 -74
  583. package/ext/permissionless.js/packages/permissionless/actions/pimlico.ts +0 -38
  584. package/ext/permissionless.js/packages/permissionless/actions/public/getAccountNonce.test.ts +0 -96
  585. package/ext/permissionless.js/packages/permissionless/actions/public/getAccountNonce.ts +0 -75
  586. package/ext/permissionless.js/packages/permissionless/actions/public/getSenderAddress.test.ts +0 -154
  587. package/ext/permissionless.js/packages/permissionless/actions/public/getSenderAddress.ts +0 -129
  588. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/getCallsStatus.test.ts +0 -255
  589. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/getCallsStatus.ts +0 -91
  590. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/sendCalls.test.ts +0 -571
  591. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/sendCalls.ts +0 -38
  592. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/sendTransaction.test.ts +0 -416
  593. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/sendTransaction.ts +0 -133
  594. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/signMessage.test.ts +0 -219
  595. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/signMessage.ts +0 -73
  596. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/signTypedData.test.ts +0 -228
  597. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/signTypedData.ts +0 -157
  598. package/ext/permissionless.js/packages/permissionless/actions/smartAccount/writeContract.ts +0 -70
  599. package/ext/permissionless.js/packages/permissionless/actions/smartAccount.ts +0 -7
  600. package/ext/permissionless.js/packages/permissionless/clients/createSmartAccountClient.ts +0 -181
  601. package/ext/permissionless.js/packages/permissionless/clients/decorators/passkeyServer.ts +0 -57
  602. package/ext/permissionless.js/packages/permissionless/clients/decorators/pimlico.ts +0 -189
  603. package/ext/permissionless.js/packages/permissionless/clients/decorators/smartAccount.ts +0 -350
  604. package/ext/permissionless.js/packages/permissionless/clients/index.ts +0 -2
  605. package/ext/permissionless.js/packages/permissionless/clients/passkeyServer.ts +0 -69
  606. package/ext/permissionless.js/packages/permissionless/clients/pimlico.ts +0 -124
  607. package/ext/permissionless.js/packages/permissionless/errors/index.ts +0 -17
  608. package/ext/permissionless.js/packages/permissionless/experimental/pimlico/index.ts +0 -1
  609. package/ext/permissionless.js/packages/permissionless/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.test.ts +0 -523
  610. package/ext/permissionless.js/packages/permissionless/experimental/pimlico/utils/prepareUserOperationForErc20Paymaster.ts +0 -369
  611. package/ext/permissionless.js/packages/permissionless/index.ts +0 -3
  612. package/ext/permissionless.js/packages/permissionless/package.json +0 -102
  613. package/ext/permissionless.js/packages/permissionless/types/etherspot.ts +0 -12
  614. package/ext/permissionless.js/packages/permissionless/types/package.json +0 -6
  615. package/ext/permissionless.js/packages/permissionless/types/passkeyServer.ts +0 -125
  616. package/ext/permissionless.js/packages/permissionless/types/pimlico.ts +0 -151
  617. package/ext/permissionless.js/packages/permissionless/utils/decode7579Calls.ts +0 -133
  618. package/ext/permissionless.js/packages/permissionless/utils/decodeNonce.test.ts +0 -40
  619. package/ext/permissionless.js/packages/permissionless/utils/decodeNonce.ts +0 -10
  620. package/ext/permissionless.js/packages/permissionless/utils/deepHexlify.test.ts +0 -57
  621. package/ext/permissionless.js/packages/permissionless/utils/deepHexlify.ts +0 -35
  622. package/ext/permissionless.js/packages/permissionless/utils/encode7579Calls.test.ts +0 -69
  623. package/ext/permissionless.js/packages/permissionless/utils/encode7579Calls.ts +0 -114
  624. package/ext/permissionless.js/packages/permissionless/utils/encodeInstallModule.ts +0 -91
  625. package/ext/permissionless.js/packages/permissionless/utils/encodeNonce.test.ts +0 -38
  626. package/ext/permissionless.js/packages/permissionless/utils/encodeNonce.ts +0 -8
  627. package/ext/permissionless.js/packages/permissionless/utils/encodeUninstallModule.ts +0 -88
  628. package/ext/permissionless.js/packages/permissionless/utils/erc20AllowanceOverride.test.ts +0 -59
  629. package/ext/permissionless.js/packages/permissionless/utils/erc20AllowanceOverride.ts +0 -66
  630. package/ext/permissionless.js/packages/permissionless/utils/erc20BalanceOverride.test.ts +0 -57
  631. package/ext/permissionless.js/packages/permissionless/utils/erc20BalanceOverride.ts +0 -49
  632. package/ext/permissionless.js/packages/permissionless/utils/getAddressFromInitCodeOrPaymasterAndData.test.ts +0 -31
  633. package/ext/permissionless.js/packages/permissionless/utils/getAddressFromInitCodeOrPaymasterAndData.ts +0 -13
  634. package/ext/permissionless.js/packages/permissionless/utils/getEstimationCallData.ts +0 -297
  635. package/ext/permissionless.js/packages/permissionless/utils/getPackedUserOperation.test.ts +0 -204
  636. package/ext/permissionless.js/packages/permissionless/utils/getPackedUserOperation.ts +0 -122
  637. package/ext/permissionless.js/packages/permissionless/utils/getRequiredPrefund.test.ts +0 -90
  638. package/ext/permissionless.js/packages/permissionless/utils/getRequiredPrefund.ts +0 -56
  639. package/ext/permissionless.js/packages/permissionless/utils/index.ts +0 -43
  640. package/ext/permissionless.js/packages/permissionless/utils/isSmartAccountDeployed.ts +0 -13
  641. package/ext/permissionless.js/packages/permissionless/utils/ox.ts +0 -48
  642. package/ext/permissionless.js/packages/permissionless/utils/toOwner.ts +0 -89
  643. package/ext/permissionless.js/packages/permissionless/vitest.config.ts +0 -31
  644. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/biconomy.ts +0 -22
  645. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/etherspot.ts +0 -12
  646. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/kernel.ts +0 -63
  647. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/light.ts +0 -10
  648. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/nexus.ts +0 -16
  649. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/safe.ts +0 -75
  650. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/simple.ts +0 -16
  651. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/thirdweb.ts +0 -7
  652. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/accounts/trust.ts +0 -26
  653. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/core.ts +0 -24
  654. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/constants/index.ts +0 -10
  655. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/index.ts +0 -783
  656. package/ext/permissionless.js/packages/permissionless-test/mock-aa-infra/alto/instance.ts +0 -290
  657. package/ext/permissionless.js/packages/permissionless-test/src/testWithRpc.ts +0 -128
  658. package/ext/permissionless.js/packages/permissionless-test/src/types.ts +0 -12
  659. package/ext/permissionless.js/packages/permissionless-test/src/utils.ts +0 -1091
  660. package/ext/permissionless.js/packages/wagmi/CHANGELOG.md +0 -53
  661. package/ext/permissionless.js/packages/wagmi/README.md +0 -93
  662. package/ext/permissionless.js/packages/wagmi/context.ts +0 -22
  663. package/ext/permissionless.js/packages/wagmi/hooks/useAvailableCapabilities.ts +0 -43
  664. package/ext/permissionless.js/packages/wagmi/hooks/useSendTransaction.ts +0 -164
  665. package/ext/permissionless.js/packages/wagmi/hooks/useWaitForTransactionReceipt.ts +0 -427
  666. package/ext/permissionless.js/packages/wagmi/index.ts +0 -15
  667. package/ext/permissionless.js/packages/wagmi/package.json +0 -26
  668. package/ext/permissionless.js/packages/wagmi/utils/observe.ts +0 -76
  669. package/ext/permissionless.js/packages/wagmi-demo/README.md +0 -1
  670. package/ext/permissionless.js/packages/wagmi-demo/biome.json +0 -13
  671. package/ext/permissionless.js/packages/wagmi-demo/index.html +0 -12
  672. package/ext/permissionless.js/packages/wagmi-demo/package.json +0 -16
  673. package/ext/permissionless.js/packages/wagmi-demo/src/App.tsx +0 -98
  674. package/ext/permissionless.js/packages/wagmi-demo/src/PasskeyServerDemo.tsx +0 -286
  675. package/ext/permissionless.js/packages/wagmi-demo/src/PasskeysDemo.tsx +0 -457
  676. package/ext/permissionless.js/packages/wagmi-demo/src/index.css +0 -21
  677. package/ext/permissionless.js/packages/wagmi-demo/src/main.tsx +0 -275
  678. package/ext/permissionless.js/packages/wagmi-demo/src/vite-env.d.ts +0 -1
  679. package/ext/permissionless.js/packages/wagmi-demo/src/wagmi.ts +0 -33
  680. package/ext/permissionless.js/packages/wagmi-demo/tsconfig.json +0 -25
  681. package/ext/permissionless.js/packages/wagmi-demo/tsconfig.node.json +0 -12
  682. package/ext/permissionless.js/packages/wagmi-demo/vite.config.ts +0 -7
  683. package/ext/permissionless.js/tsconfig/tsconfig.base.json +0 -42
  684. package/ext/permissionless.js/tsconfig/tsconfig.mock-paymaster.cjs.json +0 -11
  685. package/ext/permissionless.js/tsconfig/tsconfig.mock-paymaster.esm.json +0 -9
  686. package/ext/permissionless.js/tsconfig/tsconfig.mock-paymaster.json +0 -17
  687. package/ext/permissionless.js/tsconfig/tsconfig.mock-paymaster.types.json +0 -13
  688. package/ext/permissionless.js/tsconfig/tsconfig.permissionless.cjs.json +0 -11
  689. package/ext/permissionless.js/tsconfig/tsconfig.permissionless.esm.json +0 -9
  690. package/ext/permissionless.js/tsconfig/tsconfig.permissionless.json +0 -18
  691. package/ext/permissionless.js/tsconfig/tsconfig.permissionless.types.json +0 -13
  692. package/ext/permissionless.js/tsconfig/tsconfig.wagmi.esm.json +0 -8
  693. package/ext/permissionless.js/tsconfig/tsconfig.wagmi.json +0 -19
  694. package/ext/permissionless.js/tsconfig/tsconfig.wagmi.types.json +0 -12
  695. package/packages/community/package.json +0 -22
  696. package/packages/community/src/index.ts +0 -306
  697. package/packages/community/tsconfig.json +0 -8
  698. package/packages/core/src/abis/PaymasterV4_2.json +0 -1183
  699. package/packages/core/src/abis/aPNTs.json +0 -1173
  700. package/packages/core/src/contract-versions.ts +0 -374
  701. package/packages/enduser/package.json +0 -21
  702. package/packages/enduser/src/index.ts +0 -138
  703. package/packages/enduser/tsconfig.json +0 -8
  704. package/packages/operator/package.json +0 -21
  705. package/packages/operator/src/index.ts +0 -172
  706. package/packages/operator/tsconfig.json +0 -8
  707. package/run_full_regression.sh +0 -215
  708. package/scripts/validate_environment.ts +0 -140
  709. /package/{extract_addresses_to_env.sh → scripts/dev_tools/extract_addresses_to_env.sh} +0 -0
  710. /package/{final_safe_harmonize.py → scripts/dev_tools/final_safe_harmonize.py} +0 -0
  711. /package/{safe_harmonize.py → scripts/dev_tools/safe_harmonize.py} +0 -0
  712. /package/{surgical_harmonize.py → scripts/dev_tools/surgical_harmonize.py} +0 -0
@@ -1,1399 +1,1781 @@
1
- [
2
- {
3
- "type": "constructor",
4
- "inputs": [
5
- {
6
- "name": "_entryPoint",
7
- "type": "address",
8
- "internalType": "contract IEntryPoint"
9
- },
10
- {
11
- "name": "_owner",
12
- "type": "address",
13
- "internalType": "address"
14
- },
15
- {
16
- "name": "_registry",
17
- "type": "address",
18
- "internalType": "contract IRegistryV3"
19
- },
20
- {
21
- "name": "_apntsToken",
22
- "type": "address",
23
- "internalType": "address"
24
- },
25
- {
26
- "name": "_ethUsdPriceFeed",
27
- "type": "address",
28
- "internalType": "address"
29
- },
30
- {
31
- "name": "_protocolTreasury",
32
- "type": "address",
33
- "internalType": "address"
34
- }
35
- ],
36
- "stateMutability": "nonpayable"
37
- },
38
- {
39
- "type": "function",
40
- "name": "APNTS_TOKEN",
41
- "inputs": [],
42
- "outputs": [
43
- {
44
- "name": "",
45
- "type": "address",
46
- "internalType": "address"
47
- }
48
- ],
49
- "stateMutability": "view"
50
- },
51
- {
52
- "type": "function",
53
- "name": "BLS_AGGREGATOR",
54
- "inputs": [],
55
- "outputs": [
56
- {
57
- "name": "",
58
- "type": "address",
59
- "internalType": "address"
60
- }
61
- ],
62
- "stateMutability": "view"
63
- },
64
- {
65
- "type": "function",
66
- "name": "BPS_DENOMINATOR",
67
- "inputs": [],
68
- "outputs": [
69
- {
70
- "name": "",
71
- "type": "uint256",
72
- "internalType": "uint256"
73
- }
74
- ],
75
- "stateMutability": "view"
76
- },
77
- {
78
- "type": "function",
79
- "name": "ETH_USD_PRICE_FEED",
80
- "inputs": [],
81
- "outputs": [
82
- {
83
- "name": "",
84
- "type": "address",
85
- "internalType": "contract AggregatorV3Interface"
86
- }
87
- ],
88
- "stateMutability": "view"
89
- },
90
- {
91
- "type": "function",
92
- "name": "MAX_ETH_USD_PRICE",
93
- "inputs": [],
94
- "outputs": [
95
- {
96
- "name": "",
97
- "type": "int256",
98
- "internalType": "int256"
99
- }
100
- ],
101
- "stateMutability": "view"
102
- },
103
- {
104
- "type": "function",
105
- "name": "MIN_ETH_USD_PRICE",
106
- "inputs": [],
107
- "outputs": [
108
- {
109
- "name": "",
110
- "type": "int256",
111
- "internalType": "int256"
112
- }
113
- ],
114
- "stateMutability": "view"
115
- },
116
- {
117
- "type": "function",
118
- "name": "PAYMASTER_DATA_OFFSET",
119
- "inputs": [],
120
- "outputs": [
121
- {
122
- "name": "",
123
- "type": "uint256",
124
- "internalType": "uint256"
125
- }
126
- ],
127
- "stateMutability": "view"
128
- },
129
- {
130
- "type": "function",
131
- "name": "PRICE_CACHE_DURATION",
132
- "inputs": [],
133
- "outputs": [
134
- {
135
- "name": "",
136
- "type": "uint256",
137
- "internalType": "uint256"
138
- }
139
- ],
140
- "stateMutability": "view"
141
- },
142
- {
143
- "type": "function",
144
- "name": "PRICE_STALENESS_THRESHOLD",
145
- "inputs": [],
146
- "outputs": [
147
- {
148
- "name": "",
149
- "type": "uint256",
150
- "internalType": "uint256"
151
- }
152
- ],
153
- "stateMutability": "view"
154
- },
155
- {
156
- "type": "function",
157
- "name": "RATE_OFFSET",
158
- "inputs": [],
159
- "outputs": [
160
- {
161
- "name": "",
162
- "type": "uint256",
163
- "internalType": "uint256"
164
- }
165
- ],
166
- "stateMutability": "view"
167
- },
168
- {
169
- "type": "function",
170
- "name": "REGISTRY",
171
- "inputs": [],
172
- "outputs": [
173
- {
174
- "name": "",
175
- "type": "address",
176
- "internalType": "contract IRegistryV3"
177
- }
178
- ],
179
- "stateMutability": "view"
180
- },
181
- {
182
- "type": "function",
183
- "name": "aPNTsPriceUSD",
184
- "inputs": [],
185
- "outputs": [
186
- {
187
- "name": "",
188
- "type": "uint256",
189
- "internalType": "uint256"
190
- }
191
- ],
192
- "stateMutability": "view"
193
- },
194
- {
195
- "type": "function",
196
- "name": "addStake",
197
- "inputs": [
198
- {
199
- "name": "unstakeDelaySec",
200
- "type": "uint32",
201
- "internalType": "uint32"
202
- }
203
- ],
204
- "outputs": [],
205
- "stateMutability": "payable"
206
- },
207
- {
208
- "type": "function",
209
- "name": "cachedPrice",
210
- "inputs": [],
211
- "outputs": [
212
- {
213
- "name": "price",
214
- "type": "int256",
215
- "internalType": "int256"
216
- },
217
- {
218
- "name": "updatedAt",
219
- "type": "uint256",
220
- "internalType": "uint256"
221
- },
222
- {
223
- "name": "roundId",
224
- "type": "uint80",
225
- "internalType": "uint80"
226
- },
227
- {
228
- "name": "decimals",
229
- "type": "uint8",
230
- "internalType": "uint8"
231
- }
232
- ],
233
- "stateMutability": "view"
234
- },
235
- {
236
- "type": "function",
237
- "name": "configureOperator",
238
- "inputs": [
239
- {
240
- "name": "xPNTsToken",
241
- "type": "address",
242
- "internalType": "address"
243
- },
244
- {
245
- "name": "_opTreasury",
246
- "type": "address",
247
- "internalType": "address"
248
- },
249
- {
250
- "name": "exchangeRate",
251
- "type": "uint256",
252
- "internalType": "uint256"
253
- }
254
- ],
255
- "outputs": [],
256
- "stateMutability": "nonpayable"
257
- },
258
- {
259
- "type": "function",
260
- "name": "deposit",
261
- "inputs": [
262
- {
263
- "name": "amount",
264
- "type": "uint256",
265
- "internalType": "uint256"
266
- }
267
- ],
268
- "outputs": [],
269
- "stateMutability": "nonpayable"
270
- },
271
- {
272
- "type": "function",
273
- "name": "deposit",
274
- "inputs": [],
275
- "outputs": [],
276
- "stateMutability": "payable"
277
- },
278
- {
279
- "type": "function",
280
- "name": "depositFor",
281
- "inputs": [
282
- {
283
- "name": "targetOperator",
284
- "type": "address",
285
- "internalType": "address"
286
- },
287
- {
288
- "name": "amount",
289
- "type": "uint256",
290
- "internalType": "uint256"
291
- }
292
- ],
293
- "outputs": [],
294
- "stateMutability": "nonpayable"
295
- },
296
- {
297
- "type": "function",
298
- "name": "entryPoint",
299
- "inputs": [],
300
- "outputs": [
301
- {
302
- "name": "",
303
- "type": "address",
304
- "internalType": "contract IEntryPoint"
305
- }
306
- ],
307
- "stateMutability": "view"
308
- },
309
- {
310
- "type": "function",
311
- "name": "executeSlashWithBLS",
312
- "inputs": [
313
- {
314
- "name": "operator",
315
- "type": "address",
316
- "internalType": "address"
317
- },
318
- {
319
- "name": "level",
320
- "type": "uint8",
321
- "internalType": "enum ISuperPaymasterV3.SlashLevel"
322
- },
323
- {
324
- "name": "proof",
325
- "type": "bytes",
326
- "internalType": "bytes"
327
- }
328
- ],
329
- "outputs": [],
330
- "stateMutability": "nonpayable"
331
- },
332
- {
333
- "type": "function",
334
- "name": "getAvailableCredit",
335
- "inputs": [
336
- {
337
- "name": "user",
338
- "type": "address",
339
- "internalType": "address"
340
- },
341
- {
342
- "name": "token",
343
- "type": "address",
344
- "internalType": "address"
345
- }
346
- ],
347
- "outputs": [
348
- {
349
- "name": "",
350
- "type": "uint256",
351
- "internalType": "uint256"
352
- }
353
- ],
354
- "stateMutability": "view"
355
- },
356
- {
357
- "type": "function",
358
- "name": "getDeposit",
359
- "inputs": [],
360
- "outputs": [
361
- {
362
- "name": "",
363
- "type": "uint256",
364
- "internalType": "uint256"
365
- }
366
- ],
367
- "stateMutability": "view"
368
- },
369
- {
370
- "type": "function",
371
- "name": "getLatestSlash",
372
- "inputs": [
373
- {
374
- "name": "operator",
375
- "type": "address",
376
- "internalType": "address"
377
- }
378
- ],
379
- "outputs": [
380
- {
381
- "name": "",
382
- "type": "tuple",
383
- "internalType": "struct ISuperPaymasterV3.SlashRecord",
384
- "components": [
385
- {
386
- "name": "timestamp",
387
- "type": "uint256",
388
- "internalType": "uint256"
389
- },
390
- {
391
- "name": "amount",
392
- "type": "uint256",
393
- "internalType": "uint256"
394
- },
395
- {
396
- "name": "reputationLoss",
397
- "type": "uint256",
398
- "internalType": "uint256"
399
- },
400
- {
401
- "name": "reason",
402
- "type": "string",
403
- "internalType": "string"
404
- },
405
- {
406
- "name": "level",
407
- "type": "uint8",
408
- "internalType": "enum ISuperPaymasterV3.SlashLevel"
409
- }
410
- ]
411
- }
412
- ],
413
- "stateMutability": "view"
414
- },
415
- {
416
- "type": "function",
417
- "name": "getSlashCount",
418
- "inputs": [
419
- {
420
- "name": "operator",
421
- "type": "address",
422
- "internalType": "address"
423
- }
424
- ],
425
- "outputs": [
426
- {
427
- "name": "",
428
- "type": "uint256",
429
- "internalType": "uint256"
430
- }
431
- ],
432
- "stateMutability": "view"
433
- },
434
- {
435
- "type": "function",
436
- "name": "getSlashHistory",
437
- "inputs": [
438
- {
439
- "name": "operator",
440
- "type": "address",
441
- "internalType": "address"
442
- }
443
- ],
444
- "outputs": [
445
- {
446
- "name": "",
447
- "type": "tuple[]",
448
- "internalType": "struct ISuperPaymasterV3.SlashRecord[]",
449
- "components": [
450
- {
451
- "name": "timestamp",
452
- "type": "uint256",
453
- "internalType": "uint256"
454
- },
455
- {
456
- "name": "amount",
457
- "type": "uint256",
458
- "internalType": "uint256"
459
- },
460
- {
461
- "name": "reputationLoss",
462
- "type": "uint256",
463
- "internalType": "uint256"
464
- },
465
- {
466
- "name": "reason",
467
- "type": "string",
468
- "internalType": "string"
469
- },
470
- {
471
- "name": "level",
472
- "type": "uint8",
473
- "internalType": "enum ISuperPaymasterV3.SlashLevel"
474
- }
475
- ]
476
- }
477
- ],
478
- "stateMutability": "view"
479
- },
480
- {
481
- "type": "function",
482
- "name": "onTransferReceived",
483
- "inputs": [
484
- {
485
- "name": "",
486
- "type": "address",
487
- "internalType": "address"
488
- },
489
- {
490
- "name": "from",
491
- "type": "address",
492
- "internalType": "address"
493
- },
494
- {
495
- "name": "value",
496
- "type": "uint256",
497
- "internalType": "uint256"
498
- },
499
- {
500
- "name": "",
501
- "type": "bytes",
502
- "internalType": "bytes"
503
- }
504
- ],
505
- "outputs": [
506
- {
507
- "name": "",
508
- "type": "bytes4",
509
- "internalType": "bytes4"
510
- }
511
- ],
512
- "stateMutability": "nonpayable"
513
- },
514
- {
515
- "type": "function",
516
- "name": "operators",
517
- "inputs": [
518
- {
519
- "name": "",
520
- "type": "address",
521
- "internalType": "address"
522
- }
523
- ],
524
- "outputs": [
525
- {
526
- "name": "aPNTsBalance",
527
- "type": "uint128",
528
- "internalType": "uint128"
529
- },
530
- {
531
- "name": "exchangeRate",
532
- "type": "uint96",
533
- "internalType": "uint96"
534
- },
535
- {
536
- "name": "isConfigured",
537
- "type": "bool",
538
- "internalType": "bool"
539
- },
540
- {
541
- "name": "isPaused",
542
- "type": "bool",
543
- "internalType": "bool"
544
- },
545
- {
546
- "name": "xPNTsToken",
547
- "type": "address",
548
- "internalType": "address"
549
- },
550
- {
551
- "name": "reputation",
552
- "type": "uint32",
553
- "internalType": "uint32"
554
- },
555
- {
556
- "name": "treasury",
557
- "type": "address",
558
- "internalType": "address"
559
- },
560
- {
561
- "name": "totalSpent",
562
- "type": "uint256",
563
- "internalType": "uint256"
564
- },
565
- {
566
- "name": "totalTxSponsored",
567
- "type": "uint256",
568
- "internalType": "uint256"
569
- }
570
- ],
571
- "stateMutability": "view"
572
- },
573
- {
574
- "type": "function",
575
- "name": "owner",
576
- "inputs": [],
577
- "outputs": [
578
- {
579
- "name": "",
580
- "type": "address",
581
- "internalType": "address"
582
- }
583
- ],
584
- "stateMutability": "view"
585
- },
586
- {
587
- "type": "function",
588
- "name": "postOp",
589
- "inputs": [
590
- {
591
- "name": "mode",
592
- "type": "uint8",
593
- "internalType": "enum IPaymaster.PostOpMode"
594
- },
595
- {
596
- "name": "context",
597
- "type": "bytes",
598
- "internalType": "bytes"
599
- },
600
- {
601
- "name": "actualGasCost",
602
- "type": "uint256",
603
- "internalType": "uint256"
604
- },
605
- {
606
- "name": "actualUserOpFeePerGas",
607
- "type": "uint256",
608
- "internalType": "uint256"
609
- }
610
- ],
611
- "outputs": [],
612
- "stateMutability": "nonpayable"
613
- },
614
- {
615
- "type": "function",
616
- "name": "protocolFeeBPS",
617
- "inputs": [],
618
- "outputs": [
619
- {
620
- "name": "",
621
- "type": "uint256",
622
- "internalType": "uint256"
623
- }
624
- ],
625
- "stateMutability": "view"
626
- },
627
- {
628
- "type": "function",
629
- "name": "protocolRevenue",
630
- "inputs": [],
631
- "outputs": [
632
- {
633
- "name": "",
634
- "type": "uint256",
635
- "internalType": "uint256"
636
- }
637
- ],
638
- "stateMutability": "view"
639
- },
640
- {
641
- "type": "function",
642
- "name": "renounceOwnership",
643
- "inputs": [],
644
- "outputs": [],
645
- "stateMutability": "nonpayable"
646
- },
647
- {
648
- "type": "function",
649
- "name": "setAPNTSPrice",
650
- "inputs": [
651
- {
652
- "name": "newPrice",
653
- "type": "uint256",
654
- "internalType": "uint256"
655
- }
656
- ],
657
- "outputs": [],
658
- "stateMutability": "nonpayable"
659
- },
660
- {
661
- "type": "function",
662
- "name": "setAPNTsToken",
663
- "inputs": [
664
- {
665
- "name": "newAPNTsToken",
666
- "type": "address",
667
- "internalType": "address"
668
- }
669
- ],
670
- "outputs": [],
671
- "stateMutability": "nonpayable"
672
- },
673
- {
674
- "type": "function",
675
- "name": "setBLSAggregator",
676
- "inputs": [
677
- {
678
- "name": "_bls",
679
- "type": "address",
680
- "internalType": "address"
681
- }
682
- ],
683
- "outputs": [],
684
- "stateMutability": "nonpayable"
685
- },
686
- {
687
- "type": "function",
688
- "name": "setOperatorPaused",
689
- "inputs": [
690
- {
691
- "name": "operator",
692
- "type": "address",
693
- "internalType": "address"
694
- },
695
- {
696
- "name": "paused",
697
- "type": "bool",
698
- "internalType": "bool"
699
- }
700
- ],
701
- "outputs": [],
702
- "stateMutability": "nonpayable"
703
- },
704
- {
705
- "type": "function",
706
- "name": "setProtocolFee",
707
- "inputs": [
708
- {
709
- "name": "newFeeBPS",
710
- "type": "uint256",
711
- "internalType": "uint256"
712
- }
713
- ],
714
- "outputs": [],
715
- "stateMutability": "nonpayable"
716
- },
717
- {
718
- "type": "function",
719
- "name": "setTreasury",
720
- "inputs": [
721
- {
722
- "name": "_treasury",
723
- "type": "address",
724
- "internalType": "address"
725
- }
726
- ],
727
- "outputs": [],
728
- "stateMutability": "nonpayable"
729
- },
730
- {
731
- "type": "function",
732
- "name": "setXPNTsFactory",
733
- "inputs": [
734
- {
735
- "name": "_factory",
736
- "type": "address",
737
- "internalType": "address"
738
- }
739
- ],
740
- "outputs": [],
741
- "stateMutability": "nonpayable"
742
- },
743
- {
744
- "type": "function",
745
- "name": "slashHistory",
746
- "inputs": [
747
- {
748
- "name": "",
749
- "type": "address",
750
- "internalType": "address"
751
- },
752
- {
753
- "name": "",
754
- "type": "uint256",
755
- "internalType": "uint256"
756
- }
757
- ],
758
- "outputs": [
759
- {
760
- "name": "timestamp",
761
- "type": "uint256",
762
- "internalType": "uint256"
763
- },
764
- {
765
- "name": "amount",
766
- "type": "uint256",
767
- "internalType": "uint256"
768
- },
769
- {
770
- "name": "reputationLoss",
771
- "type": "uint256",
772
- "internalType": "uint256"
773
- },
774
- {
775
- "name": "reason",
776
- "type": "string",
777
- "internalType": "string"
778
- },
779
- {
780
- "name": "level",
781
- "type": "uint8",
782
- "internalType": "enum ISuperPaymasterV3.SlashLevel"
783
- }
784
- ],
785
- "stateMutability": "view"
786
- },
787
- {
788
- "type": "function",
789
- "name": "slashOperator",
790
- "inputs": [
791
- {
792
- "name": "operator",
793
- "type": "address",
794
- "internalType": "address"
795
- },
796
- {
797
- "name": "level",
798
- "type": "uint8",
799
- "internalType": "enum ISuperPaymasterV3.SlashLevel"
800
- },
801
- {
802
- "name": "penaltyAmount",
803
- "type": "uint256",
804
- "internalType": "uint256"
805
- },
806
- {
807
- "name": "reason",
808
- "type": "string",
809
- "internalType": "string"
810
- }
811
- ],
812
- "outputs": [],
813
- "stateMutability": "nonpayable"
814
- },
815
- {
816
- "type": "function",
817
- "name": "totalTrackedBalance",
818
- "inputs": [],
819
- "outputs": [
820
- {
821
- "name": "",
822
- "type": "uint256",
823
- "internalType": "uint256"
824
- }
825
- ],
826
- "stateMutability": "view"
827
- },
828
- {
829
- "type": "function",
830
- "name": "transferOwnership",
831
- "inputs": [
832
- {
833
- "name": "newOwner",
834
- "type": "address",
835
- "internalType": "address"
836
- }
837
- ],
838
- "outputs": [],
839
- "stateMutability": "nonpayable"
840
- },
841
- {
842
- "type": "function",
843
- "name": "treasury",
844
- "inputs": [],
845
- "outputs": [
846
- {
847
- "name": "",
848
- "type": "address",
849
- "internalType": "address"
850
- }
851
- ],
852
- "stateMutability": "view"
853
- },
854
- {
855
- "type": "function",
856
- "name": "unlockStake",
857
- "inputs": [],
858
- "outputs": [],
859
- "stateMutability": "nonpayable"
860
- },
861
- {
862
- "type": "function",
863
- "name": "updatePrice",
864
- "inputs": [],
865
- "outputs": [],
866
- "stateMutability": "nonpayable"
867
- },
868
- {
869
- "type": "function",
870
- "name": "updateReputation",
871
- "inputs": [
872
- {
873
- "name": "operator",
874
- "type": "address",
875
- "internalType": "address"
876
- },
877
- {
878
- "name": "newScore",
879
- "type": "uint256",
880
- "internalType": "uint256"
881
- }
882
- ],
883
- "outputs": [],
884
- "stateMutability": "nonpayable"
885
- },
886
- {
887
- "type": "function",
888
- "name": "validatePaymasterUserOp",
889
- "inputs": [
890
- {
891
- "name": "userOp",
892
- "type": "tuple",
893
- "internalType": "struct PackedUserOperation",
894
- "components": [
895
- {
896
- "name": "sender",
897
- "type": "address",
898
- "internalType": "address"
899
- },
900
- {
901
- "name": "nonce",
902
- "type": "uint256",
903
- "internalType": "uint256"
904
- },
905
- {
906
- "name": "initCode",
907
- "type": "bytes",
908
- "internalType": "bytes"
909
- },
910
- {
911
- "name": "callData",
912
- "type": "bytes",
913
- "internalType": "bytes"
914
- },
915
- {
916
- "name": "accountGasLimits",
917
- "type": "bytes32",
918
- "internalType": "bytes32"
919
- },
920
- {
921
- "name": "preVerificationGas",
922
- "type": "uint256",
923
- "internalType": "uint256"
924
- },
925
- {
926
- "name": "gasFees",
927
- "type": "bytes32",
928
- "internalType": "bytes32"
929
- },
930
- {
931
- "name": "paymasterAndData",
932
- "type": "bytes",
933
- "internalType": "bytes"
934
- },
935
- {
936
- "name": "signature",
937
- "type": "bytes",
938
- "internalType": "bytes"
939
- }
940
- ]
941
- },
942
- {
943
- "name": "userOpHash",
944
- "type": "bytes32",
945
- "internalType": "bytes32"
946
- },
947
- {
948
- "name": "maxCost",
949
- "type": "uint256",
950
- "internalType": "uint256"
951
- }
952
- ],
953
- "outputs": [
954
- {
955
- "name": "context",
956
- "type": "bytes",
957
- "internalType": "bytes"
958
- },
959
- {
960
- "name": "validationData",
961
- "type": "uint256",
962
- "internalType": "uint256"
963
- }
964
- ],
965
- "stateMutability": "nonpayable"
966
- },
967
- {
968
- "type": "function",
969
- "name": "withdraw",
970
- "inputs": [
971
- {
972
- "name": "amount",
973
- "type": "uint256",
974
- "internalType": "uint256"
975
- }
976
- ],
977
- "outputs": [],
978
- "stateMutability": "nonpayable"
979
- },
980
- {
981
- "type": "function",
982
- "name": "withdrawProtocolRevenue",
983
- "inputs": [
984
- {
985
- "name": "to",
986
- "type": "address",
987
- "internalType": "address"
988
- },
989
- {
990
- "name": "amount",
991
- "type": "uint256",
992
- "internalType": "uint256"
993
- }
994
- ],
995
- "outputs": [],
996
- "stateMutability": "nonpayable"
997
- },
998
- {
999
- "type": "function",
1000
- "name": "withdrawStake",
1001
- "inputs": [
1002
- {
1003
- "name": "to",
1004
- "type": "address",
1005
- "internalType": "address payable"
1006
- }
1007
- ],
1008
- "outputs": [],
1009
- "stateMutability": "nonpayable"
1010
- },
1011
- {
1012
- "type": "function",
1013
- "name": "withdrawTo",
1014
- "inputs": [
1015
- {
1016
- "name": "to",
1017
- "type": "address",
1018
- "internalType": "address payable"
1019
- },
1020
- {
1021
- "name": "amount",
1022
- "type": "uint256",
1023
- "internalType": "uint256"
1024
- }
1025
- ],
1026
- "outputs": [],
1027
- "stateMutability": "nonpayable"
1028
- },
1029
- {
1030
- "type": "function",
1031
- "name": "xpntsFactory",
1032
- "inputs": [],
1033
- "outputs": [
1034
- {
1035
- "name": "",
1036
- "type": "address",
1037
- "internalType": "address"
1038
- }
1039
- ],
1040
- "stateMutability": "view"
1041
- },
1042
- {
1043
- "type": "event",
1044
- "name": "APNTsTokenUpdated",
1045
- "inputs": [
1046
- {
1047
- "name": "oldToken",
1048
- "type": "address",
1049
- "indexed": true,
1050
- "internalType": "address"
1051
- },
1052
- {
1053
- "name": "newToken",
1054
- "type": "address",
1055
- "indexed": true,
1056
- "internalType": "address"
1057
- }
1058
- ],
1059
- "anonymous": false
1060
- },
1061
- {
1062
- "type": "event",
1063
- "name": "OperatorConfigured",
1064
- "inputs": [
1065
- {
1066
- "name": "operator",
1067
- "type": "address",
1068
- "indexed": true,
1069
- "internalType": "address"
1070
- },
1071
- {
1072
- "name": "xPNTsToken",
1073
- "type": "address",
1074
- "indexed": false,
1075
- "internalType": "address"
1076
- },
1077
- {
1078
- "name": "treasury",
1079
- "type": "address",
1080
- "indexed": false,
1081
- "internalType": "address"
1082
- },
1083
- {
1084
- "name": "exchangeRate",
1085
- "type": "uint256",
1086
- "indexed": false,
1087
- "internalType": "uint256"
1088
- }
1089
- ],
1090
- "anonymous": false
1091
- },
1092
- {
1093
- "type": "event",
1094
- "name": "OperatorDeposited",
1095
- "inputs": [
1096
- {
1097
- "name": "operator",
1098
- "type": "address",
1099
- "indexed": true,
1100
- "internalType": "address"
1101
- },
1102
- {
1103
- "name": "amount",
1104
- "type": "uint256",
1105
- "indexed": false,
1106
- "internalType": "uint256"
1107
- }
1108
- ],
1109
- "anonymous": false
1110
- },
1111
- {
1112
- "type": "event",
1113
- "name": "OperatorPaused",
1114
- "inputs": [
1115
- {
1116
- "name": "operator",
1117
- "type": "address",
1118
- "indexed": true,
1119
- "internalType": "address"
1120
- }
1121
- ],
1122
- "anonymous": false
1123
- },
1124
- {
1125
- "type": "event",
1126
- "name": "OperatorSlashed",
1127
- "inputs": [
1128
- {
1129
- "name": "operator",
1130
- "type": "address",
1131
- "indexed": true,
1132
- "internalType": "address"
1133
- },
1134
- {
1135
- "name": "amount",
1136
- "type": "uint256",
1137
- "indexed": false,
1138
- "internalType": "uint256"
1139
- },
1140
- {
1141
- "name": "level",
1142
- "type": "uint8",
1143
- "indexed": false,
1144
- "internalType": "enum ISuperPaymasterV3.SlashLevel"
1145
- }
1146
- ],
1147
- "anonymous": false
1148
- },
1149
- {
1150
- "type": "event",
1151
- "name": "OperatorUnpaused",
1152
- "inputs": [
1153
- {
1154
- "name": "operator",
1155
- "type": "address",
1156
- "indexed": true,
1157
- "internalType": "address"
1158
- }
1159
- ],
1160
- "anonymous": false
1161
- },
1162
- {
1163
- "type": "event",
1164
- "name": "OperatorWithdrawn",
1165
- "inputs": [
1166
- {
1167
- "name": "operator",
1168
- "type": "address",
1169
- "indexed": true,
1170
- "internalType": "address"
1171
- },
1172
- {
1173
- "name": "amount",
1174
- "type": "uint256",
1175
- "indexed": false,
1176
- "internalType": "uint256"
1177
- }
1178
- ],
1179
- "anonymous": false
1180
- },
1181
- {
1182
- "type": "event",
1183
- "name": "OwnershipTransferred",
1184
- "inputs": [
1185
- {
1186
- "name": "previousOwner",
1187
- "type": "address",
1188
- "indexed": true,
1189
- "internalType": "address"
1190
- },
1191
- {
1192
- "name": "newOwner",
1193
- "type": "address",
1194
- "indexed": true,
1195
- "internalType": "address"
1196
- }
1197
- ],
1198
- "anonymous": false
1199
- },
1200
- {
1201
- "type": "event",
1202
- "name": "ReputationUpdated",
1203
- "inputs": [
1204
- {
1205
- "name": "operator",
1206
- "type": "address",
1207
- "indexed": true,
1208
- "internalType": "address"
1209
- },
1210
- {
1211
- "name": "newScore",
1212
- "type": "uint256",
1213
- "indexed": false,
1214
- "internalType": "uint256"
1215
- }
1216
- ],
1217
- "anonymous": false
1218
- },
1219
- {
1220
- "type": "event",
1221
- "name": "TransactionSponsored",
1222
- "inputs": [
1223
- {
1224
- "name": "operator",
1225
- "type": "address",
1226
- "indexed": true,
1227
- "internalType": "address"
1228
- },
1229
- {
1230
- "name": "user",
1231
- "type": "address",
1232
- "indexed": true,
1233
- "internalType": "address"
1234
- },
1235
- {
1236
- "name": "aPNTsCost",
1237
- "type": "uint256",
1238
- "indexed": false,
1239
- "internalType": "uint256"
1240
- },
1241
- {
1242
- "name": "xPNTsCost",
1243
- "type": "uint256",
1244
- "indexed": false,
1245
- "internalType": "uint256"
1246
- }
1247
- ],
1248
- "anonymous": false
1249
- },
1250
- {
1251
- "type": "event",
1252
- "name": "UserReputationAccrued",
1253
- "inputs": [
1254
- {
1255
- "name": "user",
1256
- "type": "address",
1257
- "indexed": true,
1258
- "internalType": "address"
1259
- },
1260
- {
1261
- "name": "aPNTsValue",
1262
- "type": "uint256",
1263
- "indexed": false,
1264
- "internalType": "uint256"
1265
- }
1266
- ],
1267
- "anonymous": false
1268
- },
1269
- {
1270
- "type": "event",
1271
- "name": "ValidationRejected",
1272
- "inputs": [
1273
- {
1274
- "name": "user",
1275
- "type": "address",
1276
- "indexed": true,
1277
- "internalType": "address"
1278
- },
1279
- {
1280
- "name": "operator",
1281
- "type": "address",
1282
- "indexed": true,
1283
- "internalType": "address"
1284
- },
1285
- {
1286
- "name": "reasonCode",
1287
- "type": "uint8",
1288
- "indexed": false,
1289
- "internalType": "uint8"
1290
- }
1291
- ],
1292
- "anonymous": false
1293
- },
1294
- {
1295
- "type": "error",
1296
- "name": "AddressEmptyCode",
1297
- "inputs": [
1298
- {
1299
- "name": "target",
1300
- "type": "address",
1301
- "internalType": "address"
1302
- }
1303
- ]
1304
- },
1305
- {
1306
- "type": "error",
1307
- "name": "AddressInsufficientBalance",
1308
- "inputs": [
1309
- {
1310
- "name": "account",
1311
- "type": "address",
1312
- "internalType": "address"
1313
- }
1314
- ]
1315
- },
1316
- {
1317
- "type": "error",
1318
- "name": "DepositNotVerified",
1319
- "inputs": []
1320
- },
1321
- {
1322
- "type": "error",
1323
- "name": "FailedInnerCall",
1324
- "inputs": []
1325
- },
1326
- {
1327
- "type": "error",
1328
- "name": "InsufficientBalance",
1329
- "inputs": []
1330
- },
1331
- {
1332
- "type": "error",
1333
- "name": "InsufficientRevenue",
1334
- "inputs": []
1335
- },
1336
- {
1337
- "type": "error",
1338
- "name": "InvalidAddress",
1339
- "inputs": []
1340
- },
1341
- {
1342
- "type": "error",
1343
- "name": "InvalidConfiguration",
1344
- "inputs": []
1345
- },
1346
- {
1347
- "type": "error",
1348
- "name": "NoSlashHistory",
1349
- "inputs": []
1350
- },
1351
- {
1352
- "type": "error",
1353
- "name": "OracleError",
1354
- "inputs": []
1355
- },
1356
- {
1357
- "type": "error",
1358
- "name": "OwnableInvalidOwner",
1359
- "inputs": [
1360
- {
1361
- "name": "owner",
1362
- "type": "address",
1363
- "internalType": "address"
1364
- }
1365
- ]
1366
- },
1367
- {
1368
- "type": "error",
1369
- "name": "OwnableUnauthorizedAccount",
1370
- "inputs": [
1371
- {
1372
- "name": "account",
1373
- "type": "address",
1374
- "internalType": "address"
1375
- }
1376
- ]
1377
- },
1378
- {
1379
- "type": "error",
1380
- "name": "ReentrancyGuardReentrantCall",
1381
- "inputs": []
1382
- },
1383
- {
1384
- "type": "error",
1385
- "name": "SafeERC20FailedOperation",
1386
- "inputs": [
1387
- {
1388
- "name": "token",
1389
- "type": "address",
1390
- "internalType": "address"
1391
- }
1392
- ]
1393
- },
1394
- {
1395
- "type": "error",
1396
- "name": "Unauthorized",
1397
- "inputs": []
1398
- }
1399
- ]
1
+ {
2
+ "abi": [
3
+ {
4
+ "type": "constructor",
5
+ "inputs": [
6
+ {
7
+ "name": "_entryPoint",
8
+ "type": "address",
9
+ "internalType": "contract IEntryPoint"
10
+ },
11
+ {
12
+ "name": "_owner",
13
+ "type": "address",
14
+ "internalType": "address"
15
+ },
16
+ {
17
+ "name": "_registry",
18
+ "type": "address",
19
+ "internalType": "contract IRegistry"
20
+ },
21
+ {
22
+ "name": "_apntsToken",
23
+ "type": "address",
24
+ "internalType": "address"
25
+ },
26
+ {
27
+ "name": "_ethUsdPriceFeed",
28
+ "type": "address",
29
+ "internalType": "address"
30
+ },
31
+ {
32
+ "name": "_protocolTreasury",
33
+ "type": "address",
34
+ "internalType": "address"
35
+ },
36
+ {
37
+ "name": "_priceStalenessThreshold",
38
+ "type": "uint256",
39
+ "internalType": "uint256"
40
+ }
41
+ ],
42
+ "stateMutability": "nonpayable"
43
+ },
44
+ {
45
+ "type": "function",
46
+ "name": "APNTS_TOKEN",
47
+ "inputs": [],
48
+ "outputs": [
49
+ {
50
+ "name": "",
51
+ "type": "address",
52
+ "internalType": "address"
53
+ }
54
+ ],
55
+ "stateMutability": "view"
56
+ },
57
+ {
58
+ "type": "function",
59
+ "name": "BLS_AGGREGATOR",
60
+ "inputs": [],
61
+ "outputs": [
62
+ {
63
+ "name": "",
64
+ "type": "address",
65
+ "internalType": "address"
66
+ }
67
+ ],
68
+ "stateMutability": "view"
69
+ },
70
+ {
71
+ "type": "function",
72
+ "name": "BPS_DENOMINATOR",
73
+ "inputs": [],
74
+ "outputs": [
75
+ {
76
+ "name": "",
77
+ "type": "uint256",
78
+ "internalType": "uint256"
79
+ }
80
+ ],
81
+ "stateMutability": "view"
82
+ },
83
+ {
84
+ "type": "function",
85
+ "name": "ETH_USD_PRICE_FEED",
86
+ "inputs": [],
87
+ "outputs": [
88
+ {
89
+ "name": "",
90
+ "type": "address",
91
+ "internalType": "contract AggregatorV3Interface"
92
+ }
93
+ ],
94
+ "stateMutability": "view"
95
+ },
96
+ {
97
+ "type": "function",
98
+ "name": "MAX_ETH_USD_PRICE",
99
+ "inputs": [],
100
+ "outputs": [
101
+ {
102
+ "name": "",
103
+ "type": "int256",
104
+ "internalType": "int256"
105
+ }
106
+ ],
107
+ "stateMutability": "view"
108
+ },
109
+ {
110
+ "type": "function",
111
+ "name": "MAX_PROTOCOL_FEE",
112
+ "inputs": [],
113
+ "outputs": [
114
+ {
115
+ "name": "",
116
+ "type": "uint256",
117
+ "internalType": "uint256"
118
+ }
119
+ ],
120
+ "stateMutability": "view"
121
+ },
122
+ {
123
+ "type": "function",
124
+ "name": "MIN_ETH_USD_PRICE",
125
+ "inputs": [],
126
+ "outputs": [
127
+ {
128
+ "name": "",
129
+ "type": "int256",
130
+ "internalType": "int256"
131
+ }
132
+ ],
133
+ "stateMutability": "view"
134
+ },
135
+ {
136
+ "type": "function",
137
+ "name": "PAYMASTER_DATA_OFFSET",
138
+ "inputs": [],
139
+ "outputs": [
140
+ {
141
+ "name": "",
142
+ "type": "uint256",
143
+ "internalType": "uint256"
144
+ }
145
+ ],
146
+ "stateMutability": "view"
147
+ },
148
+ {
149
+ "type": "function",
150
+ "name": "PRICE_CACHE_DURATION",
151
+ "inputs": [],
152
+ "outputs": [
153
+ {
154
+ "name": "",
155
+ "type": "uint256",
156
+ "internalType": "uint256"
157
+ }
158
+ ],
159
+ "stateMutability": "view"
160
+ },
161
+ {
162
+ "type": "function",
163
+ "name": "RATE_OFFSET",
164
+ "inputs": [],
165
+ "outputs": [
166
+ {
167
+ "name": "",
168
+ "type": "uint256",
169
+ "internalType": "uint256"
170
+ }
171
+ ],
172
+ "stateMutability": "view"
173
+ },
174
+ {
175
+ "type": "function",
176
+ "name": "REGISTRY",
177
+ "inputs": [],
178
+ "outputs": [
179
+ {
180
+ "name": "",
181
+ "type": "address",
182
+ "internalType": "contract IRegistry"
183
+ }
184
+ ],
185
+ "stateMutability": "view"
186
+ },
187
+ {
188
+ "type": "function",
189
+ "name": "VALIDATION_BUFFER_BPS",
190
+ "inputs": [],
191
+ "outputs": [
192
+ {
193
+ "name": "",
194
+ "type": "uint256",
195
+ "internalType": "uint256"
196
+ }
197
+ ],
198
+ "stateMutability": "view"
199
+ },
200
+ {
201
+ "type": "function",
202
+ "name": "aPNTsPriceUSD",
203
+ "inputs": [],
204
+ "outputs": [
205
+ {
206
+ "name": "",
207
+ "type": "uint256",
208
+ "internalType": "uint256"
209
+ }
210
+ ],
211
+ "stateMutability": "view"
212
+ },
213
+ {
214
+ "type": "function",
215
+ "name": "addStake",
216
+ "inputs": [
217
+ {
218
+ "name": "unstakeDelaySec",
219
+ "type": "uint32",
220
+ "internalType": "uint32"
221
+ }
222
+ ],
223
+ "outputs": [],
224
+ "stateMutability": "payable"
225
+ },
226
+ {
227
+ "type": "function",
228
+ "name": "cachedPrice",
229
+ "inputs": [],
230
+ "outputs": [
231
+ {
232
+ "name": "price",
233
+ "type": "int256",
234
+ "internalType": "int256"
235
+ },
236
+ {
237
+ "name": "updatedAt",
238
+ "type": "uint256",
239
+ "internalType": "uint256"
240
+ },
241
+ {
242
+ "name": "roundId",
243
+ "type": "uint80",
244
+ "internalType": "uint80"
245
+ },
246
+ {
247
+ "name": "decimals",
248
+ "type": "uint8",
249
+ "internalType": "uint8"
250
+ }
251
+ ],
252
+ "stateMutability": "view"
253
+ },
254
+ {
255
+ "type": "function",
256
+ "name": "configureOperator",
257
+ "inputs": [
258
+ {
259
+ "name": "xPNTsToken",
260
+ "type": "address",
261
+ "internalType": "address"
262
+ },
263
+ {
264
+ "name": "_opTreasury",
265
+ "type": "address",
266
+ "internalType": "address"
267
+ },
268
+ {
269
+ "name": "exchangeRate",
270
+ "type": "uint256",
271
+ "internalType": "uint256"
272
+ }
273
+ ],
274
+ "outputs": [],
275
+ "stateMutability": "nonpayable"
276
+ },
277
+ {
278
+ "type": "function",
279
+ "name": "deposit",
280
+ "inputs": [
281
+ {
282
+ "name": "amount",
283
+ "type": "uint256",
284
+ "internalType": "uint256"
285
+ }
286
+ ],
287
+ "outputs": [],
288
+ "stateMutability": "nonpayable"
289
+ },
290
+ {
291
+ "type": "function",
292
+ "name": "deposit",
293
+ "inputs": [],
294
+ "outputs": [],
295
+ "stateMutability": "payable"
296
+ },
297
+ {
298
+ "type": "function",
299
+ "name": "depositFor",
300
+ "inputs": [
301
+ {
302
+ "name": "targetOperator",
303
+ "type": "address",
304
+ "internalType": "address"
305
+ },
306
+ {
307
+ "name": "amount",
308
+ "type": "uint256",
309
+ "internalType": "uint256"
310
+ }
311
+ ],
312
+ "outputs": [],
313
+ "stateMutability": "nonpayable"
314
+ },
315
+ {
316
+ "type": "function",
317
+ "name": "entryPoint",
318
+ "inputs": [],
319
+ "outputs": [
320
+ {
321
+ "name": "",
322
+ "type": "address",
323
+ "internalType": "contract IEntryPoint"
324
+ }
325
+ ],
326
+ "stateMutability": "view"
327
+ },
328
+ {
329
+ "type": "function",
330
+ "name": "executeSlashWithBLS",
331
+ "inputs": [
332
+ {
333
+ "name": "operator",
334
+ "type": "address",
335
+ "internalType": "address"
336
+ },
337
+ {
338
+ "name": "level",
339
+ "type": "uint8",
340
+ "internalType": "enum ISuperPaymaster.SlashLevel"
341
+ },
342
+ {
343
+ "name": "proof",
344
+ "type": "bytes",
345
+ "internalType": "bytes"
346
+ }
347
+ ],
348
+ "outputs": [],
349
+ "stateMutability": "nonpayable"
350
+ },
351
+ {
352
+ "type": "function",
353
+ "name": "getAvailableCredit",
354
+ "inputs": [
355
+ {
356
+ "name": "user",
357
+ "type": "address",
358
+ "internalType": "address"
359
+ },
360
+ {
361
+ "name": "token",
362
+ "type": "address",
363
+ "internalType": "address"
364
+ }
365
+ ],
366
+ "outputs": [
367
+ {
368
+ "name": "",
369
+ "type": "uint256",
370
+ "internalType": "uint256"
371
+ }
372
+ ],
373
+ "stateMutability": "view"
374
+ },
375
+ {
376
+ "type": "function",
377
+ "name": "getDeposit",
378
+ "inputs": [],
379
+ "outputs": [
380
+ {
381
+ "name": "",
382
+ "type": "uint256",
383
+ "internalType": "uint256"
384
+ }
385
+ ],
386
+ "stateMutability": "view"
387
+ },
388
+ {
389
+ "type": "function",
390
+ "name": "getLatestSlash",
391
+ "inputs": [
392
+ {
393
+ "name": "operator",
394
+ "type": "address",
395
+ "internalType": "address"
396
+ }
397
+ ],
398
+ "outputs": [
399
+ {
400
+ "name": "",
401
+ "type": "tuple",
402
+ "internalType": "struct ISuperPaymaster.SlashRecord",
403
+ "components": [
404
+ {
405
+ "name": "timestamp",
406
+ "type": "uint256",
407
+ "internalType": "uint256"
408
+ },
409
+ {
410
+ "name": "amount",
411
+ "type": "uint256",
412
+ "internalType": "uint256"
413
+ },
414
+ {
415
+ "name": "reputationLoss",
416
+ "type": "uint256",
417
+ "internalType": "uint256"
418
+ },
419
+ {
420
+ "name": "reason",
421
+ "type": "string",
422
+ "internalType": "string"
423
+ },
424
+ {
425
+ "name": "level",
426
+ "type": "uint8",
427
+ "internalType": "enum ISuperPaymaster.SlashLevel"
428
+ }
429
+ ]
430
+ }
431
+ ],
432
+ "stateMutability": "view"
433
+ },
434
+ {
435
+ "type": "function",
436
+ "name": "getSlashCount",
437
+ "inputs": [
438
+ {
439
+ "name": "operator",
440
+ "type": "address",
441
+ "internalType": "address"
442
+ }
443
+ ],
444
+ "outputs": [
445
+ {
446
+ "name": "",
447
+ "type": "uint256",
448
+ "internalType": "uint256"
449
+ }
450
+ ],
451
+ "stateMutability": "view"
452
+ },
453
+ {
454
+ "type": "function",
455
+ "name": "getSlashHistory",
456
+ "inputs": [
457
+ {
458
+ "name": "operator",
459
+ "type": "address",
460
+ "internalType": "address"
461
+ }
462
+ ],
463
+ "outputs": [
464
+ {
465
+ "name": "",
466
+ "type": "tuple[]",
467
+ "internalType": "struct ISuperPaymaster.SlashRecord[]",
468
+ "components": [
469
+ {
470
+ "name": "timestamp",
471
+ "type": "uint256",
472
+ "internalType": "uint256"
473
+ },
474
+ {
475
+ "name": "amount",
476
+ "type": "uint256",
477
+ "internalType": "uint256"
478
+ },
479
+ {
480
+ "name": "reputationLoss",
481
+ "type": "uint256",
482
+ "internalType": "uint256"
483
+ },
484
+ {
485
+ "name": "reason",
486
+ "type": "string",
487
+ "internalType": "string"
488
+ },
489
+ {
490
+ "name": "level",
491
+ "type": "uint8",
492
+ "internalType": "enum ISuperPaymaster.SlashLevel"
493
+ }
494
+ ]
495
+ }
496
+ ],
497
+ "stateMutability": "view"
498
+ },
499
+ {
500
+ "type": "function",
501
+ "name": "onTransferReceived",
502
+ "inputs": [
503
+ {
504
+ "name": "",
505
+ "type": "address",
506
+ "internalType": "address"
507
+ },
508
+ {
509
+ "name": "from",
510
+ "type": "address",
511
+ "internalType": "address"
512
+ },
513
+ {
514
+ "name": "value",
515
+ "type": "uint256",
516
+ "internalType": "uint256"
517
+ },
518
+ {
519
+ "name": "",
520
+ "type": "bytes",
521
+ "internalType": "bytes"
522
+ }
523
+ ],
524
+ "outputs": [
525
+ {
526
+ "name": "",
527
+ "type": "bytes4",
528
+ "internalType": "bytes4"
529
+ }
530
+ ],
531
+ "stateMutability": "nonpayable"
532
+ },
533
+ {
534
+ "type": "function",
535
+ "name": "operators",
536
+ "inputs": [
537
+ {
538
+ "name": "",
539
+ "type": "address",
540
+ "internalType": "address"
541
+ }
542
+ ],
543
+ "outputs": [
544
+ {
545
+ "name": "aPNTsBalance",
546
+ "type": "uint128",
547
+ "internalType": "uint128"
548
+ },
549
+ {
550
+ "name": "exchangeRate",
551
+ "type": "uint96",
552
+ "internalType": "uint96"
553
+ },
554
+ {
555
+ "name": "isConfigured",
556
+ "type": "bool",
557
+ "internalType": "bool"
558
+ },
559
+ {
560
+ "name": "isPaused",
561
+ "type": "bool",
562
+ "internalType": "bool"
563
+ },
564
+ {
565
+ "name": "xPNTsToken",
566
+ "type": "address",
567
+ "internalType": "address"
568
+ },
569
+ {
570
+ "name": "reputation",
571
+ "type": "uint32",
572
+ "internalType": "uint32"
573
+ },
574
+ {
575
+ "name": "minTxInterval",
576
+ "type": "uint48",
577
+ "internalType": "uint48"
578
+ },
579
+ {
580
+ "name": "treasury",
581
+ "type": "address",
582
+ "internalType": "address"
583
+ },
584
+ {
585
+ "name": "totalSpent",
586
+ "type": "uint256",
587
+ "internalType": "uint256"
588
+ },
589
+ {
590
+ "name": "totalTxSponsored",
591
+ "type": "uint256",
592
+ "internalType": "uint256"
593
+ }
594
+ ],
595
+ "stateMutability": "view"
596
+ },
597
+ {
598
+ "type": "function",
599
+ "name": "owner",
600
+ "inputs": [],
601
+ "outputs": [
602
+ {
603
+ "name": "",
604
+ "type": "address",
605
+ "internalType": "address"
606
+ }
607
+ ],
608
+ "stateMutability": "view"
609
+ },
610
+ {
611
+ "type": "function",
612
+ "name": "postOp",
613
+ "inputs": [
614
+ {
615
+ "name": "mode",
616
+ "type": "uint8",
617
+ "internalType": "enum IPaymaster.PostOpMode"
618
+ },
619
+ {
620
+ "name": "context",
621
+ "type": "bytes",
622
+ "internalType": "bytes"
623
+ },
624
+ {
625
+ "name": "actualGasCost",
626
+ "type": "uint256",
627
+ "internalType": "uint256"
628
+ },
629
+ {
630
+ "name": "actualUserOpFeePerGas",
631
+ "type": "uint256",
632
+ "internalType": "uint256"
633
+ }
634
+ ],
635
+ "outputs": [],
636
+ "stateMutability": "nonpayable"
637
+ },
638
+ {
639
+ "type": "function",
640
+ "name": "priceStalenessThreshold",
641
+ "inputs": [],
642
+ "outputs": [
643
+ {
644
+ "name": "",
645
+ "type": "uint256",
646
+ "internalType": "uint256"
647
+ }
648
+ ],
649
+ "stateMutability": "view"
650
+ },
651
+ {
652
+ "type": "function",
653
+ "name": "protocolFeeBPS",
654
+ "inputs": [],
655
+ "outputs": [
656
+ {
657
+ "name": "",
658
+ "type": "uint256",
659
+ "internalType": "uint256"
660
+ }
661
+ ],
662
+ "stateMutability": "view"
663
+ },
664
+ {
665
+ "type": "function",
666
+ "name": "protocolRevenue",
667
+ "inputs": [],
668
+ "outputs": [
669
+ {
670
+ "name": "",
671
+ "type": "uint256",
672
+ "internalType": "uint256"
673
+ }
674
+ ],
675
+ "stateMutability": "view"
676
+ },
677
+ {
678
+ "type": "function",
679
+ "name": "renounceOwnership",
680
+ "inputs": [],
681
+ "outputs": [],
682
+ "stateMutability": "nonpayable"
683
+ },
684
+ {
685
+ "type": "function",
686
+ "name": "sbtHolders",
687
+ "inputs": [
688
+ {
689
+ "name": "",
690
+ "type": "address",
691
+ "internalType": "address"
692
+ }
693
+ ],
694
+ "outputs": [
695
+ {
696
+ "name": "",
697
+ "type": "bool",
698
+ "internalType": "bool"
699
+ }
700
+ ],
701
+ "stateMutability": "view"
702
+ },
703
+ {
704
+ "type": "function",
705
+ "name": "setAPNTSPrice",
706
+ "inputs": [
707
+ {
708
+ "name": "newPrice",
709
+ "type": "uint256",
710
+ "internalType": "uint256"
711
+ }
712
+ ],
713
+ "outputs": [],
714
+ "stateMutability": "nonpayable"
715
+ },
716
+ {
717
+ "type": "function",
718
+ "name": "setAPNTsToken",
719
+ "inputs": [
720
+ {
721
+ "name": "newAPNTsToken",
722
+ "type": "address",
723
+ "internalType": "address"
724
+ }
725
+ ],
726
+ "outputs": [],
727
+ "stateMutability": "nonpayable"
728
+ },
729
+ {
730
+ "type": "function",
731
+ "name": "setBLSAggregator",
732
+ "inputs": [
733
+ {
734
+ "name": "_bls",
735
+ "type": "address",
736
+ "internalType": "address"
737
+ }
738
+ ],
739
+ "outputs": [],
740
+ "stateMutability": "nonpayable"
741
+ },
742
+ {
743
+ "type": "function",
744
+ "name": "setOperatorLimits",
745
+ "inputs": [
746
+ {
747
+ "name": "_minTxInterval",
748
+ "type": "uint48",
749
+ "internalType": "uint48"
750
+ }
751
+ ],
752
+ "outputs": [],
753
+ "stateMutability": "nonpayable"
754
+ },
755
+ {
756
+ "type": "function",
757
+ "name": "setOperatorPaused",
758
+ "inputs": [
759
+ {
760
+ "name": "operator",
761
+ "type": "address",
762
+ "internalType": "address"
763
+ },
764
+ {
765
+ "name": "paused",
766
+ "type": "bool",
767
+ "internalType": "bool"
768
+ }
769
+ ],
770
+ "outputs": [],
771
+ "stateMutability": "nonpayable"
772
+ },
773
+ {
774
+ "type": "function",
775
+ "name": "setProtocolFee",
776
+ "inputs": [
777
+ {
778
+ "name": "newFeeBPS",
779
+ "type": "uint256",
780
+ "internalType": "uint256"
781
+ }
782
+ ],
783
+ "outputs": [],
784
+ "stateMutability": "nonpayable"
785
+ },
786
+ {
787
+ "type": "function",
788
+ "name": "setTreasury",
789
+ "inputs": [
790
+ {
791
+ "name": "_treasury",
792
+ "type": "address",
793
+ "internalType": "address"
794
+ }
795
+ ],
796
+ "outputs": [],
797
+ "stateMutability": "nonpayable"
798
+ },
799
+ {
800
+ "type": "function",
801
+ "name": "setXPNTsFactory",
802
+ "inputs": [
803
+ {
804
+ "name": "_factory",
805
+ "type": "address",
806
+ "internalType": "address"
807
+ }
808
+ ],
809
+ "outputs": [],
810
+ "stateMutability": "nonpayable"
811
+ },
812
+ {
813
+ "type": "function",
814
+ "name": "slashHistory",
815
+ "inputs": [
816
+ {
817
+ "name": "",
818
+ "type": "address",
819
+ "internalType": "address"
820
+ },
821
+ {
822
+ "name": "",
823
+ "type": "uint256",
824
+ "internalType": "uint256"
825
+ }
826
+ ],
827
+ "outputs": [
828
+ {
829
+ "name": "timestamp",
830
+ "type": "uint256",
831
+ "internalType": "uint256"
832
+ },
833
+ {
834
+ "name": "amount",
835
+ "type": "uint256",
836
+ "internalType": "uint256"
837
+ },
838
+ {
839
+ "name": "reputationLoss",
840
+ "type": "uint256",
841
+ "internalType": "uint256"
842
+ },
843
+ {
844
+ "name": "reason",
845
+ "type": "string",
846
+ "internalType": "string"
847
+ },
848
+ {
849
+ "name": "level",
850
+ "type": "uint8",
851
+ "internalType": "enum ISuperPaymaster.SlashLevel"
852
+ }
853
+ ],
854
+ "stateMutability": "view"
855
+ },
856
+ {
857
+ "type": "function",
858
+ "name": "slashOperator",
859
+ "inputs": [
860
+ {
861
+ "name": "operator",
862
+ "type": "address",
863
+ "internalType": "address"
864
+ },
865
+ {
866
+ "name": "level",
867
+ "type": "uint8",
868
+ "internalType": "enum ISuperPaymaster.SlashLevel"
869
+ },
870
+ {
871
+ "name": "penaltyAmount",
872
+ "type": "uint256",
873
+ "internalType": "uint256"
874
+ },
875
+ {
876
+ "name": "reason",
877
+ "type": "string",
878
+ "internalType": "string"
879
+ }
880
+ ],
881
+ "outputs": [],
882
+ "stateMutability": "nonpayable"
883
+ },
884
+ {
885
+ "type": "function",
886
+ "name": "totalTrackedBalance",
887
+ "inputs": [],
888
+ "outputs": [
889
+ {
890
+ "name": "",
891
+ "type": "uint256",
892
+ "internalType": "uint256"
893
+ }
894
+ ],
895
+ "stateMutability": "view"
896
+ },
897
+ {
898
+ "type": "function",
899
+ "name": "transferOwnership",
900
+ "inputs": [
901
+ {
902
+ "name": "newOwner",
903
+ "type": "address",
904
+ "internalType": "address"
905
+ }
906
+ ],
907
+ "outputs": [],
908
+ "stateMutability": "nonpayable"
909
+ },
910
+ {
911
+ "type": "function",
912
+ "name": "treasury",
913
+ "inputs": [],
914
+ "outputs": [
915
+ {
916
+ "name": "",
917
+ "type": "address",
918
+ "internalType": "address"
919
+ }
920
+ ],
921
+ "stateMutability": "view"
922
+ },
923
+ {
924
+ "type": "function",
925
+ "name": "unlockStake",
926
+ "inputs": [],
927
+ "outputs": [],
928
+ "stateMutability": "nonpayable"
929
+ },
930
+ {
931
+ "type": "function",
932
+ "name": "updateBlockedStatus",
933
+ "inputs": [
934
+ {
935
+ "name": "operator",
936
+ "type": "address",
937
+ "internalType": "address"
938
+ },
939
+ {
940
+ "name": "users",
941
+ "type": "address[]",
942
+ "internalType": "address[]"
943
+ },
944
+ {
945
+ "name": "statuses",
946
+ "type": "bool[]",
947
+ "internalType": "bool[]"
948
+ }
949
+ ],
950
+ "outputs": [],
951
+ "stateMutability": "nonpayable"
952
+ },
953
+ {
954
+ "type": "function",
955
+ "name": "updatePrice",
956
+ "inputs": [],
957
+ "outputs": [],
958
+ "stateMutability": "nonpayable"
959
+ },
960
+ {
961
+ "type": "function",
962
+ "name": "updatePriceDVT",
963
+ "inputs": [
964
+ {
965
+ "name": "price",
966
+ "type": "int256",
967
+ "internalType": "int256"
968
+ },
969
+ {
970
+ "name": "updatedAt",
971
+ "type": "uint256",
972
+ "internalType": "uint256"
973
+ },
974
+ {
975
+ "name": "proof",
976
+ "type": "bytes",
977
+ "internalType": "bytes"
978
+ }
979
+ ],
980
+ "outputs": [],
981
+ "stateMutability": "nonpayable"
982
+ },
983
+ {
984
+ "type": "function",
985
+ "name": "updateReputation",
986
+ "inputs": [
987
+ {
988
+ "name": "operator",
989
+ "type": "address",
990
+ "internalType": "address"
991
+ },
992
+ {
993
+ "name": "newScore",
994
+ "type": "uint256",
995
+ "internalType": "uint256"
996
+ }
997
+ ],
998
+ "outputs": [],
999
+ "stateMutability": "nonpayable"
1000
+ },
1001
+ {
1002
+ "type": "function",
1003
+ "name": "updateSBTStatus",
1004
+ "inputs": [
1005
+ {
1006
+ "name": "user",
1007
+ "type": "address",
1008
+ "internalType": "address"
1009
+ },
1010
+ {
1011
+ "name": "status",
1012
+ "type": "bool",
1013
+ "internalType": "bool"
1014
+ }
1015
+ ],
1016
+ "outputs": [],
1017
+ "stateMutability": "nonpayable"
1018
+ },
1019
+ {
1020
+ "type": "function",
1021
+ "name": "userOpState",
1022
+ "inputs": [
1023
+ {
1024
+ "name": "",
1025
+ "type": "address",
1026
+ "internalType": "address"
1027
+ },
1028
+ {
1029
+ "name": "",
1030
+ "type": "address",
1031
+ "internalType": "address"
1032
+ }
1033
+ ],
1034
+ "outputs": [
1035
+ {
1036
+ "name": "lastTimestamp",
1037
+ "type": "uint48",
1038
+ "internalType": "uint48"
1039
+ },
1040
+ {
1041
+ "name": "isBlocked",
1042
+ "type": "bool",
1043
+ "internalType": "bool"
1044
+ }
1045
+ ],
1046
+ "stateMutability": "view"
1047
+ },
1048
+ {
1049
+ "type": "function",
1050
+ "name": "validatePaymasterUserOp",
1051
+ "inputs": [
1052
+ {
1053
+ "name": "userOp",
1054
+ "type": "tuple",
1055
+ "internalType": "struct PackedUserOperation",
1056
+ "components": [
1057
+ {
1058
+ "name": "sender",
1059
+ "type": "address",
1060
+ "internalType": "address"
1061
+ },
1062
+ {
1063
+ "name": "nonce",
1064
+ "type": "uint256",
1065
+ "internalType": "uint256"
1066
+ },
1067
+ {
1068
+ "name": "initCode",
1069
+ "type": "bytes",
1070
+ "internalType": "bytes"
1071
+ },
1072
+ {
1073
+ "name": "callData",
1074
+ "type": "bytes",
1075
+ "internalType": "bytes"
1076
+ },
1077
+ {
1078
+ "name": "accountGasLimits",
1079
+ "type": "bytes32",
1080
+ "internalType": "bytes32"
1081
+ },
1082
+ {
1083
+ "name": "preVerificationGas",
1084
+ "type": "uint256",
1085
+ "internalType": "uint256"
1086
+ },
1087
+ {
1088
+ "name": "gasFees",
1089
+ "type": "bytes32",
1090
+ "internalType": "bytes32"
1091
+ },
1092
+ {
1093
+ "name": "paymasterAndData",
1094
+ "type": "bytes",
1095
+ "internalType": "bytes"
1096
+ },
1097
+ {
1098
+ "name": "signature",
1099
+ "type": "bytes",
1100
+ "internalType": "bytes"
1101
+ }
1102
+ ]
1103
+ },
1104
+ {
1105
+ "name": "userOpHash",
1106
+ "type": "bytes32",
1107
+ "internalType": "bytes32"
1108
+ },
1109
+ {
1110
+ "name": "maxCost",
1111
+ "type": "uint256",
1112
+ "internalType": "uint256"
1113
+ }
1114
+ ],
1115
+ "outputs": [
1116
+ {
1117
+ "name": "context",
1118
+ "type": "bytes",
1119
+ "internalType": "bytes"
1120
+ },
1121
+ {
1122
+ "name": "validationData",
1123
+ "type": "uint256",
1124
+ "internalType": "uint256"
1125
+ }
1126
+ ],
1127
+ "stateMutability": "nonpayable"
1128
+ },
1129
+ {
1130
+ "type": "function",
1131
+ "name": "version",
1132
+ "inputs": [],
1133
+ "outputs": [
1134
+ {
1135
+ "name": "",
1136
+ "type": "string",
1137
+ "internalType": "string"
1138
+ }
1139
+ ],
1140
+ "stateMutability": "pure"
1141
+ },
1142
+ {
1143
+ "type": "function",
1144
+ "name": "withdraw",
1145
+ "inputs": [
1146
+ {
1147
+ "name": "amount",
1148
+ "type": "uint256",
1149
+ "internalType": "uint256"
1150
+ }
1151
+ ],
1152
+ "outputs": [],
1153
+ "stateMutability": "nonpayable"
1154
+ },
1155
+ {
1156
+ "type": "function",
1157
+ "name": "withdrawProtocolRevenue",
1158
+ "inputs": [
1159
+ {
1160
+ "name": "to",
1161
+ "type": "address",
1162
+ "internalType": "address"
1163
+ },
1164
+ {
1165
+ "name": "amount",
1166
+ "type": "uint256",
1167
+ "internalType": "uint256"
1168
+ }
1169
+ ],
1170
+ "outputs": [],
1171
+ "stateMutability": "nonpayable"
1172
+ },
1173
+ {
1174
+ "type": "function",
1175
+ "name": "withdrawStake",
1176
+ "inputs": [
1177
+ {
1178
+ "name": "to",
1179
+ "type": "address",
1180
+ "internalType": "address payable"
1181
+ }
1182
+ ],
1183
+ "outputs": [],
1184
+ "stateMutability": "nonpayable"
1185
+ },
1186
+ {
1187
+ "type": "function",
1188
+ "name": "withdrawTo",
1189
+ "inputs": [
1190
+ {
1191
+ "name": "to",
1192
+ "type": "address",
1193
+ "internalType": "address payable"
1194
+ },
1195
+ {
1196
+ "name": "amount",
1197
+ "type": "uint256",
1198
+ "internalType": "uint256"
1199
+ }
1200
+ ],
1201
+ "outputs": [],
1202
+ "stateMutability": "nonpayable"
1203
+ },
1204
+ {
1205
+ "type": "function",
1206
+ "name": "xpntsFactory",
1207
+ "inputs": [],
1208
+ "outputs": [
1209
+ {
1210
+ "name": "",
1211
+ "type": "address",
1212
+ "internalType": "address"
1213
+ }
1214
+ ],
1215
+ "stateMutability": "view"
1216
+ },
1217
+ {
1218
+ "type": "event",
1219
+ "name": "APNTsPriceUpdated",
1220
+ "inputs": [
1221
+ {
1222
+ "name": "oldPrice",
1223
+ "type": "uint256",
1224
+ "indexed": false,
1225
+ "internalType": "uint256"
1226
+ },
1227
+ {
1228
+ "name": "newPrice",
1229
+ "type": "uint256",
1230
+ "indexed": false,
1231
+ "internalType": "uint256"
1232
+ }
1233
+ ],
1234
+ "anonymous": false
1235
+ },
1236
+ {
1237
+ "type": "event",
1238
+ "name": "APNTsTokenUpdated",
1239
+ "inputs": [
1240
+ {
1241
+ "name": "oldToken",
1242
+ "type": "address",
1243
+ "indexed": true,
1244
+ "internalType": "address"
1245
+ },
1246
+ {
1247
+ "name": "newToken",
1248
+ "type": "address",
1249
+ "indexed": true,
1250
+ "internalType": "address"
1251
+ }
1252
+ ],
1253
+ "anonymous": false
1254
+ },
1255
+ {
1256
+ "type": "event",
1257
+ "name": "BLSAggregatorUpdated",
1258
+ "inputs": [
1259
+ {
1260
+ "name": "oldAggregator",
1261
+ "type": "address",
1262
+ "indexed": true,
1263
+ "internalType": "address"
1264
+ },
1265
+ {
1266
+ "name": "newAggregator",
1267
+ "type": "address",
1268
+ "indexed": true,
1269
+ "internalType": "address"
1270
+ }
1271
+ ],
1272
+ "anonymous": false
1273
+ },
1274
+ {
1275
+ "type": "event",
1276
+ "name": "OperatorConfigured",
1277
+ "inputs": [
1278
+ {
1279
+ "name": "operator",
1280
+ "type": "address",
1281
+ "indexed": true,
1282
+ "internalType": "address"
1283
+ },
1284
+ {
1285
+ "name": "xPNTsToken",
1286
+ "type": "address",
1287
+ "indexed": false,
1288
+ "internalType": "address"
1289
+ },
1290
+ {
1291
+ "name": "treasury",
1292
+ "type": "address",
1293
+ "indexed": false,
1294
+ "internalType": "address"
1295
+ },
1296
+ {
1297
+ "name": "exchangeRate",
1298
+ "type": "uint256",
1299
+ "indexed": false,
1300
+ "internalType": "uint256"
1301
+ }
1302
+ ],
1303
+ "anonymous": false
1304
+ },
1305
+ {
1306
+ "type": "event",
1307
+ "name": "OperatorDeposited",
1308
+ "inputs": [
1309
+ {
1310
+ "name": "operator",
1311
+ "type": "address",
1312
+ "indexed": true,
1313
+ "internalType": "address"
1314
+ },
1315
+ {
1316
+ "name": "amount",
1317
+ "type": "uint256",
1318
+ "indexed": false,
1319
+ "internalType": "uint256"
1320
+ }
1321
+ ],
1322
+ "anonymous": false
1323
+ },
1324
+ {
1325
+ "type": "event",
1326
+ "name": "OperatorMinTxIntervalUpdated",
1327
+ "inputs": [
1328
+ {
1329
+ "name": "operator",
1330
+ "type": "address",
1331
+ "indexed": true,
1332
+ "internalType": "address"
1333
+ },
1334
+ {
1335
+ "name": "minTxInterval",
1336
+ "type": "uint48",
1337
+ "indexed": false,
1338
+ "internalType": "uint48"
1339
+ }
1340
+ ],
1341
+ "anonymous": false
1342
+ },
1343
+ {
1344
+ "type": "event",
1345
+ "name": "OperatorPaused",
1346
+ "inputs": [
1347
+ {
1348
+ "name": "operator",
1349
+ "type": "address",
1350
+ "indexed": true,
1351
+ "internalType": "address"
1352
+ }
1353
+ ],
1354
+ "anonymous": false
1355
+ },
1356
+ {
1357
+ "type": "event",
1358
+ "name": "OperatorSlashed",
1359
+ "inputs": [
1360
+ {
1361
+ "name": "operator",
1362
+ "type": "address",
1363
+ "indexed": true,
1364
+ "internalType": "address"
1365
+ },
1366
+ {
1367
+ "name": "amount",
1368
+ "type": "uint256",
1369
+ "indexed": false,
1370
+ "internalType": "uint256"
1371
+ },
1372
+ {
1373
+ "name": "level",
1374
+ "type": "uint8",
1375
+ "indexed": false,
1376
+ "internalType": "enum ISuperPaymaster.SlashLevel"
1377
+ }
1378
+ ],
1379
+ "anonymous": false
1380
+ },
1381
+ {
1382
+ "type": "event",
1383
+ "name": "OperatorUnpaused",
1384
+ "inputs": [
1385
+ {
1386
+ "name": "operator",
1387
+ "type": "address",
1388
+ "indexed": true,
1389
+ "internalType": "address"
1390
+ }
1391
+ ],
1392
+ "anonymous": false
1393
+ },
1394
+ {
1395
+ "type": "event",
1396
+ "name": "OperatorWithdrawn",
1397
+ "inputs": [
1398
+ {
1399
+ "name": "operator",
1400
+ "type": "address",
1401
+ "indexed": true,
1402
+ "internalType": "address"
1403
+ },
1404
+ {
1405
+ "name": "amount",
1406
+ "type": "uint256",
1407
+ "indexed": false,
1408
+ "internalType": "uint256"
1409
+ }
1410
+ ],
1411
+ "anonymous": false
1412
+ },
1413
+ {
1414
+ "type": "event",
1415
+ "name": "OracleFallbackTriggered",
1416
+ "inputs": [
1417
+ {
1418
+ "name": "timestamp",
1419
+ "type": "uint256",
1420
+ "indexed": false,
1421
+ "internalType": "uint256"
1422
+ }
1423
+ ],
1424
+ "anonymous": false
1425
+ },
1426
+ {
1427
+ "type": "event",
1428
+ "name": "OwnershipTransferred",
1429
+ "inputs": [
1430
+ {
1431
+ "name": "previousOwner",
1432
+ "type": "address",
1433
+ "indexed": true,
1434
+ "internalType": "address"
1435
+ },
1436
+ {
1437
+ "name": "newOwner",
1438
+ "type": "address",
1439
+ "indexed": true,
1440
+ "internalType": "address"
1441
+ }
1442
+ ],
1443
+ "anonymous": false
1444
+ },
1445
+ {
1446
+ "type": "event",
1447
+ "name": "PriceUpdated",
1448
+ "inputs": [
1449
+ {
1450
+ "name": "price",
1451
+ "type": "int256",
1452
+ "indexed": true,
1453
+ "internalType": "int256"
1454
+ },
1455
+ {
1456
+ "name": "timestamp",
1457
+ "type": "uint256",
1458
+ "indexed": true,
1459
+ "internalType": "uint256"
1460
+ }
1461
+ ],
1462
+ "anonymous": false
1463
+ },
1464
+ {
1465
+ "type": "event",
1466
+ "name": "ProtocolFeeUpdated",
1467
+ "inputs": [
1468
+ {
1469
+ "name": "oldFee",
1470
+ "type": "uint256",
1471
+ "indexed": false,
1472
+ "internalType": "uint256"
1473
+ },
1474
+ {
1475
+ "name": "newFee",
1476
+ "type": "uint256",
1477
+ "indexed": false,
1478
+ "internalType": "uint256"
1479
+ }
1480
+ ],
1481
+ "anonymous": false
1482
+ },
1483
+ {
1484
+ "type": "event",
1485
+ "name": "ProtocolRevenueWithdrawn",
1486
+ "inputs": [
1487
+ {
1488
+ "name": "to",
1489
+ "type": "address",
1490
+ "indexed": true,
1491
+ "internalType": "address"
1492
+ },
1493
+ {
1494
+ "name": "amount",
1495
+ "type": "uint256",
1496
+ "indexed": false,
1497
+ "internalType": "uint256"
1498
+ }
1499
+ ],
1500
+ "anonymous": false
1501
+ },
1502
+ {
1503
+ "type": "event",
1504
+ "name": "ReputationUpdated",
1505
+ "inputs": [
1506
+ {
1507
+ "name": "operator",
1508
+ "type": "address",
1509
+ "indexed": true,
1510
+ "internalType": "address"
1511
+ },
1512
+ {
1513
+ "name": "newScore",
1514
+ "type": "uint256",
1515
+ "indexed": false,
1516
+ "internalType": "uint256"
1517
+ }
1518
+ ],
1519
+ "anonymous": false
1520
+ },
1521
+ {
1522
+ "type": "event",
1523
+ "name": "SlashExecutedWithProof",
1524
+ "inputs": [
1525
+ {
1526
+ "name": "operator",
1527
+ "type": "address",
1528
+ "indexed": true,
1529
+ "internalType": "address"
1530
+ },
1531
+ {
1532
+ "name": "level",
1533
+ "type": "uint8",
1534
+ "indexed": false,
1535
+ "internalType": "enum ISuperPaymaster.SlashLevel"
1536
+ },
1537
+ {
1538
+ "name": "penalty",
1539
+ "type": "uint256",
1540
+ "indexed": false,
1541
+ "internalType": "uint256"
1542
+ },
1543
+ {
1544
+ "name": "proofHash",
1545
+ "type": "bytes32",
1546
+ "indexed": false,
1547
+ "internalType": "bytes32"
1548
+ },
1549
+ {
1550
+ "name": "timestamp",
1551
+ "type": "uint256",
1552
+ "indexed": false,
1553
+ "internalType": "uint256"
1554
+ }
1555
+ ],
1556
+ "anonymous": false
1557
+ },
1558
+ {
1559
+ "type": "event",
1560
+ "name": "TransactionSponsored",
1561
+ "inputs": [
1562
+ {
1563
+ "name": "operator",
1564
+ "type": "address",
1565
+ "indexed": true,
1566
+ "internalType": "address"
1567
+ },
1568
+ {
1569
+ "name": "user",
1570
+ "type": "address",
1571
+ "indexed": true,
1572
+ "internalType": "address"
1573
+ },
1574
+ {
1575
+ "name": "aPNTsCost",
1576
+ "type": "uint256",
1577
+ "indexed": false,
1578
+ "internalType": "uint256"
1579
+ },
1580
+ {
1581
+ "name": "xPNTsCost",
1582
+ "type": "uint256",
1583
+ "indexed": false,
1584
+ "internalType": "uint256"
1585
+ }
1586
+ ],
1587
+ "anonymous": false
1588
+ },
1589
+ {
1590
+ "type": "event",
1591
+ "name": "UserBlockedStatusUpdated",
1592
+ "inputs": [
1593
+ {
1594
+ "name": "operator",
1595
+ "type": "address",
1596
+ "indexed": true,
1597
+ "internalType": "address"
1598
+ },
1599
+ {
1600
+ "name": "user",
1601
+ "type": "address",
1602
+ "indexed": true,
1603
+ "internalType": "address"
1604
+ },
1605
+ {
1606
+ "name": "isBlocked",
1607
+ "type": "bool",
1608
+ "indexed": false,
1609
+ "internalType": "bool"
1610
+ }
1611
+ ],
1612
+ "anonymous": false
1613
+ },
1614
+ {
1615
+ "type": "event",
1616
+ "name": "UserReputationAccrued",
1617
+ "inputs": [
1618
+ {
1619
+ "name": "user",
1620
+ "type": "address",
1621
+ "indexed": true,
1622
+ "internalType": "address"
1623
+ },
1624
+ {
1625
+ "name": "aPNTsValue",
1626
+ "type": "uint256",
1627
+ "indexed": false,
1628
+ "internalType": "uint256"
1629
+ }
1630
+ ],
1631
+ "anonymous": false
1632
+ },
1633
+ {
1634
+ "type": "event",
1635
+ "name": "ValidationRejected",
1636
+ "inputs": [
1637
+ {
1638
+ "name": "user",
1639
+ "type": "address",
1640
+ "indexed": true,
1641
+ "internalType": "address"
1642
+ },
1643
+ {
1644
+ "name": "operator",
1645
+ "type": "address",
1646
+ "indexed": true,
1647
+ "internalType": "address"
1648
+ },
1649
+ {
1650
+ "name": "reasonCode",
1651
+ "type": "uint8",
1652
+ "indexed": false,
1653
+ "internalType": "uint8"
1654
+ }
1655
+ ],
1656
+ "anonymous": false
1657
+ },
1658
+ {
1659
+ "type": "error",
1660
+ "name": "AddressEmptyCode",
1661
+ "inputs": [
1662
+ {
1663
+ "name": "target",
1664
+ "type": "address",
1665
+ "internalType": "address"
1666
+ }
1667
+ ]
1668
+ },
1669
+ {
1670
+ "type": "error",
1671
+ "name": "AddressInsufficientBalance",
1672
+ "inputs": [
1673
+ {
1674
+ "name": "account",
1675
+ "type": "address",
1676
+ "internalType": "address"
1677
+ }
1678
+ ]
1679
+ },
1680
+ {
1681
+ "type": "error",
1682
+ "name": "DepositNotVerified",
1683
+ "inputs": []
1684
+ },
1685
+ {
1686
+ "type": "error",
1687
+ "name": "FailedInnerCall",
1688
+ "inputs": []
1689
+ },
1690
+ {
1691
+ "type": "error",
1692
+ "name": "InsufficientBalance",
1693
+ "inputs": [
1694
+ {
1695
+ "name": "available",
1696
+ "type": "uint256",
1697
+ "internalType": "uint256"
1698
+ },
1699
+ {
1700
+ "name": "required",
1701
+ "type": "uint256",
1702
+ "internalType": "uint256"
1703
+ }
1704
+ ]
1705
+ },
1706
+ {
1707
+ "type": "error",
1708
+ "name": "InsufficientRevenue",
1709
+ "inputs": []
1710
+ },
1711
+ {
1712
+ "type": "error",
1713
+ "name": "InvalidAddress",
1714
+ "inputs": []
1715
+ },
1716
+ {
1717
+ "type": "error",
1718
+ "name": "InvalidConfiguration",
1719
+ "inputs": []
1720
+ },
1721
+ {
1722
+ "type": "error",
1723
+ "name": "MathOverflowedMulDiv",
1724
+ "inputs": []
1725
+ },
1726
+ {
1727
+ "type": "error",
1728
+ "name": "NoSlashHistory",
1729
+ "inputs": []
1730
+ },
1731
+ {
1732
+ "type": "error",
1733
+ "name": "OracleError",
1734
+ "inputs": []
1735
+ },
1736
+ {
1737
+ "type": "error",
1738
+ "name": "OwnableInvalidOwner",
1739
+ "inputs": [
1740
+ {
1741
+ "name": "owner",
1742
+ "type": "address",
1743
+ "internalType": "address"
1744
+ }
1745
+ ]
1746
+ },
1747
+ {
1748
+ "type": "error",
1749
+ "name": "OwnableUnauthorizedAccount",
1750
+ "inputs": [
1751
+ {
1752
+ "name": "account",
1753
+ "type": "address",
1754
+ "internalType": "address"
1755
+ }
1756
+ ]
1757
+ },
1758
+ {
1759
+ "type": "error",
1760
+ "name": "ReentrancyGuardReentrantCall",
1761
+ "inputs": []
1762
+ },
1763
+ {
1764
+ "type": "error",
1765
+ "name": "SafeERC20FailedOperation",
1766
+ "inputs": [
1767
+ {
1768
+ "name": "token",
1769
+ "type": "address",
1770
+ "internalType": "address"
1771
+ }
1772
+ ]
1773
+ },
1774
+ {
1775
+ "type": "error",
1776
+ "name": "Unauthorized",
1777
+ "inputs": []
1778
+ }
1779
+ ],
1780
+ "bytecode": "0x60e03461027a57601f61430838819003918201601f19168301916001600160401b0383118484101761027e5780849260e09460405283398101031261027a5780516001600160a01b038116919082810361027a5761005f60208301610292565b60408301519091906001600160a01b038116810361027a5761008360608501610292565b9061009060808601610292565b9260c061009f60a08801610292565b960151966001600160a01b038616908115610267575f80546001600160a01b031981168417825560405193916001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a31561023057506080526001805566470de4df8200006009556103e8600d5560a052600280546001600160a01b0319166001600160a01b0392831617905590811660c05282161561022957505b600480546001600160a01b0319166001600160a01b03929092169190911790558015610220575b60115560405161406190816102a78239608051818181610a2301528181610aca01528181610b7001528181610fcf0152818161127401528181611aa301528181612144015281816124b10152612c18015260a0518181816102f80152818161073a0152818161106c0152818161137f01528181611625015281816117c401528181611f090152818161222201526129ba015260c05181818161122f01528181611c1801528181612a8701526138cc0152f35b50610e1061016e565b9050610147565b62461bcd60e51b8152602060048201526012602482015271125b9d985b1a5908115b9d1c9e541bda5b9d60721b6044820152606490fd5b631e4fbdf760e01b5f525f60045260245ffd5b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b51906001600160a01b038216820361027a5756fe60806040526004361015610011575f80fd5b5f5f3560e01c80630396cb6014612bf0578063058ae10f146129e957806306433b1b146129a4578063079d2d42146125ee57806313e7c9d814612521578063205c28781461248c5780632e1a7d4d146123945780632f4f21e2146121ed57806332726684146121cd57806339788cd9146121ac57806352b7512c14612104578063539f51db146120e757806354fd4d501461208f57806358a2570a1461204a578063594a6f231461202c5780635f4cd4fe14611eac57806360f28de614611e9057806361ad446e14611e7257806361d027b314611e495780636640431f14611de257806366c3687514611da9578063673a7e2814611bf85780636d8a4aff14611bcf578063715018a614611b8857806374f053c414611b5f578063787dce3d14611aff5780637af3816c14611ae15780637c627b2114611a5b578063847807f21461178e57806388a7ca5c146115bc5780638da5cb5b146115955780638e580213146114f257806396daa322146114d4578063a134d63a146113d2578063a3970ae61461136d578063a4b5328f146112a3578063b0d691fe1461125e578063b0f0abe914611219578063b6b55f2514611040578063b8ca3b8314611023578063bb9fe6bf14610fb3578063bc95910114610f48578063bd11187014610f2a578063bfa5a1eb14610cd5578063c06f58e814610cac578063c1d9cb0814610bdc578063c23a5cea14610b4b578063c399ec8814610a9d578063d0e30db014610a0c578063d20727d714610997578063ddc380d81461097a578063e1a452181461095d578063e8ade1a9146108d4578063eafe74b5146106e8578063ec2123f11461067c578063ede3150214610660578063f0f4426014610609578063f2fde38b14610596578063f5c91a08146104e8578063f60fdcb3146104a5578063f7e8cb0d146104665763fc347007146102c4575f80fd5b346104635760203660031901126104635760043565ffffffffffff811690818103610461576040516310fdfea760e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690602081600481855afa90811561045657859161041e575b5060209061035d926040518080958194632474521560e21b835233906004840161309b565b03915afa9081156104135784916103e4575b50156103d6573383526005602052600160408420019081549065ffffffffffff60c01b9060c01b169065ffffffffffff60c01b19161790556040519081527f4419a541734858dec04cd4ea31aff7b399a0b82dc61f30cc777c1907dc8102ed60203392a280f35b6282b42960e81b8352600483fd5b610406915060203d60201161040c575b6103fe8183612dfc565b810190613083565b5f61036f565b503d6103f4565b6040513d86823e3d90fd5b90506020813d60201161044e575b8161043960209383612dfc565b8101031261044a575161035d610338565b5f80fd5b3d915061042c565b6040513d87823e3d90fd5b825b80fd5b50346104635760203660031901126104635760209060ff906040906001600160a01b03610491612cb9565b168152600784522054166040519015158152f35b50346104635780600319360112610463576080600a5460ff600b54600c5490604051938452602084015260018060501b038116604084015260501c166060820152f35b503461046357604036600319011261046357610502612cb9565b6024359061050e613c50565b63ffffffff821161055a5760205f516020613f6c5f395f51905f529160018060a01b0316928385526005825261055063ffffffff821660016040882001613a89565b604051908152a280f35b60405162461bcd60e51b815260206004820152601460248201527329b1b7b9329032bc31b2b2b239903ab4b73a199960611b6044820152606490fd5b5034610463576020366003190112610463576105b0612cb9565b6105b8613c50565b6001600160a01b031680156105f55781546001600160a01b03198116821783556001600160a01b03165f516020613fec5f395f51905f528380a380f35b631e4fbdf760e01b82526004829052602482fd5b503461046357602036600319011261046357610623612cb9565b61062b613c50565b6001600160a01b0316801561065157600480546001600160a01b03191691909117905580f35b63e6c4247b60e01b8252600482fd5b5034610463578060031936011261046357602060405160348152f35b503461046357602036600319011261046357600435610699613c50565b80156106d95760407ffcc60d1b1dedb59d33b8eef97db5a70c8f8f8523c70d6a027dbf676f1290f8d291600954908060095582519182526020820152a180f35b63c52a9bd360e01b8252600482fd5b503461046357604036600319011261046357610702612cb9565b9061070b612ccf565b604051632c333e2560e01b81526001600160a01b039384166004820181905293909190602090839060249082907f0000000000000000000000000000000000000000000000000000000000000000165afa9182156108605783926108a0575b50604051634d3c739760e11b815260048101949094526001600160a01b0316602084602481845afa93841561086057839461086b575b5092602060049460405195868092633ba0b9a960e01b82525afa93841561086057839461082c575b50670de0b6b3a7640000810290808204670de0b6b3a76400001490151715610818576020936107f69161318f565b9081811115610811576108099250612f53565b604051908152f35b5050610809565b634e487b7160e01b83526011600452602483fd5b9093506020813d602011610858575b8161084860209383612dfc565b8101031261044a5751925f6107c8565b3d915061083b565b6040513d85823e3d90fd5b93506020843d602011610898575b8161088660209383612dfc565b8101031261044a5792519260206107a0565b3d9150610879565b9091506020813d6020116108cc575b816108bc60209383612dfc565b8101031261044a5751905f61076a565b3d91506108af565b5034610463576108e336612f24565b906108ec613c50565b6001600160a01b0316808352600560205260408320805460ff60e81b19169215801560e81b60ff60e81b1693909317905590610936575f516020613f8c5f395f51905f528280a280f35b7fae02c1bd695006b6d891af37fdeefea45a10ebcc17071e3471787db4f17728858280a280f35b503461046357806003193601126104635760206040516127108152f35b503461046357806003193601126104635760206040516103e88152f35b5034610463576020366003190112610463576109b1612cb9565b6109b9613c50565b6001600160a01b0316801561065157600280546001600160a01b0319811683179091556001600160a01b03167f75f4cc3f3f70100dc11e396f47f8af2dec5cf7ec94e06062222be779cf2f3dec8380a380f35b508060031936011261046357610a20613c50565b807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b15610a9a57816024916040519283809263b760faf960e01b825230600483015234905af18015610a8f57610a7e5750f35b81610a8891612dfc565b6104635780f35b6040513d84823e3d90fd5b50fd5b50346104635780600319360112610463576040516370a0823160e01b8152306004820152906020826024817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610b3f5790610b0c575b602090604051908152f35b506020813d602011610b37575b81610b2660209383612dfc565b8101031261044a5760209051610b01565b3d9150610b19565b604051903d90823e3d90fd5b50346104635760203660031901126104635780610b66612cb9565b610b6e613c50565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b15610bd85760405163611d2e7560e11b81526001600160a01b0390911660048201529082908290602490829084905af18015610a8f57610a7e5750f35b5050fd5b503461046357602036600319011261046357610bf6612cb9565b816080604051610c0581612de1565b828152826020820152826040820152606080820152015260018060a01b03168082526008602052604082205415610c9d5780825260086020526040822090825260086020526040822054915f198301928311610c8957610c85610c71610c6b8585612d4d565b50613a3a565b604051918291602083526020830190612edd565b0390f35b634e487b7160e01b81526011600452602490fd5b63e0a1dc3160e01b8252600482fd5b5034610463578060031936011261046357600e546040516001600160a01b039091168152602090f35b50346104635760803660031901126104635780610cf0612cb9565b6024356003811015610bd85760443591606435906001600160401b038211610f2657610e075f516020613fac5f395f51905f5260405f516020613f6c5f395f51905f5296602096610d4a63ffffffff973690600401612c8c565b959096610d55613c50565b6001600160a01b0316808c5260058a52848c20909b90978c979082610d7986612ebf565b85610eb25750610dee9087600a945b60018d019c8d8f8890825460a01c16115f14610ea3578f90610db9610dbf928a1663ffffffff835460a01c16613aac565b90613a89565b89610e29575b508b815260088f522092885194610ddb86612de1565b428652888f870152898601523691613034565b6060830152610dfc84612ebf565b836080830152613ac6565b8251918252610e1581612ebf565b87820152a25460a01c16604051908152a280f35b80546001600160801b03168a8110610e7f575080546001600160801b0390610e56908c831690831661306a565b82546001600160801b0319169116179055601054610e75908a906130cd565b6010555b5f610dc5565b81546001600160801b031916909155601054610e9b91906130cd565b601055610e79565b8f60a01b198154169055610dbf565b610ebb86612ebf565b60018603610ed15750610dee9087601494610d88565b92610edb86612ebf565b60028614610eef575b9087610dee92610d88565b8a5460ff60e81b1916600160e81b178b5560329350610dee919088908b5f516020613f8c5f395f51905f528280a291925050610ee4565b8480fd5b50346104635780600319360112610463576020601154604051908152f35b503461046357602036600319011261046357610f62612cb9565b610f6a613c50565b600e80546001600160a01b039283166001600160a01b0319821681179092559091167f019f532f6e08ee8944dc2e7ac40f3c97ad4a20618aee847ddf7c502821c7dad48380a380f35b5034610463578060031936011261046357610fcc613c50565b807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b15610a9a5781809160046040518094819363bb9fe6bf60e01b83525af18015610a8f57610a7e5750f35b503461046357806003193601126104635760206040516107d08152f35b50346104635760203660031901126104635760043561105d613c76565b6040516310fdfea760e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690602081600481855afa9081156104135784916111e5575b506020906110d1926040518080958194632474521560e21b835233906004840161309b565b03915afa9081156108605783916111c6575b50156111b857600254611104908290309033906001600160a01b0316613cd0565b6001600160801b03811161117a5733825260056020526040822080546001600160801b0390611138908483169083166130b4565b82546001600160801b0319169116179055600f546111579082906130cd565b600f556040519081525f516020613fcc5f395f51905f5260203392a26001805580f35b60405162461bcd60e51b8152602060048201526016602482015275082dadeeadce840caf0c6cacac8e640ead2dce86264760531b6044820152606490fd5b6282b42960e81b8252600482fd5b6111df915060203d60201161040c576103fe8183612dfc565b5f6110e3565b90506020813d602011611211575b8161120060209383612dfc565b8101031261044a57516110d16110ac565b3d91506111f3565b50346104635780600319360112610463576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b50346104635780600319360112610463576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5034610463576040366003190112610463576112bd612cb9565b6024356112c8613c50565b6112d0613c76565b6001600160a01b03821691821561135e5760105480831161134f57916113418160209361131e827ff7595c4fd7fa675e456dd9520ac8266c06d237d52900fc573bccc85b7c177c9e97612f53565b60105561132d82600f54612f53565b600f556002546001600160a01b0316613c96565b604051908152a26001805580f35b63b4aa806360e01b8552600485fd5b63e6c4247b60e01b8452600484fd5b50346104635761137c36612f24565b907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633036103d65760018060a01b031682526007602052604082209060ff80198354169115151617905580f35b5034610463576020366003190112610463576001600160a01b036113f4612cb9565b16815260086020526040812080546001600160401b0381116114c0576040519061142460208260051b0183612dfc565b80825260208201809385526020852085915b8383106114a257868587604051928392602084019060208552518091526040840160408260051b8601019392905b82821061147357505050500390f35b919360019193955060206114928192603f198a82030186528851612edd565b9601920192018594939192611464565b600560206001926114b285613a3a565b815201920192019190611436565b634e487b7160e01b83526041600452602483fd5b50346104635780600319360112610463576020600d54604051908152f35b50346104635760403660031901126104635761150c612cb9565b6001600160a01b0316815260086020526040812080546024359190821015610461576115389250612d4d565b50805460018201549161158260028201549160ff600461155a60038401612e1f565b920154169260405195869586526020860152604085015260a0606085015260a0840190612cf9565b9061158c81612ebf565b60808301520390f35b5034610463578060031936011261046357546040516001600160a01b039091168152602090f35b5034610463576080366003190112610463576115d6612cb9565b506115df612ccf565b604435906064356001600160401b03811161178a57611602903690600401612c8c565b50506002546001600160a01b031633036103d6576040516310fdfea760e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602082600481845afa80156104565783928691611752575b509160209161168a93604051809581948293632474521560e21b84526004840161309b565b03915afa908115610413578491611733575b50156103d6576001600160801b03821161117a576001600160a01b0316808352600560209081526040909320805491935f516020613fcc5f395f51905f529390929091906001600160801b03906116f8908285169083166130b4565b82546001600160801b0319169116179055600f546117179082906130cd565b600f55604051908152a2604051632229f29760e21b8152602090f35b61174c915060203d60201161040c576103fe8183612dfc565b5f61169c565b9250506020823d602011611782575b8161176e60209383612dfc565b8101031261044a5790518291906020611665565b3d9150611761565b8380fd5b5034610463576060366003190112610463576117a8612cb9565b6117b0612ccf565b6040516310fdfea760e01b815260443591907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690602081600481855afa9081156119f0578691611a28575b5060206118279160405180938192632474521560e21b835233906004840161309b565b0381855afa9081156119f0578691611a09575b50156119fb57604051635168010760e11b8152602081600481855afa9081156119f05786916119bc575b50602090611889926040518080958194632474521560e21b835233906004840161309b565b03915afa90811561045657859161199d575b501561198f576001600160a01b03831615801561197e575b8015611976575b6119675733808552600560205260408086206001810180546001600160a01b03199081166001600160a01b03898116919091179092556002830180549091169186169190911790558054600160801b600160e81b031916608086901b600160801b600160e01b031617600160e01b1790555190937fff8a1775e676e9fe3cc41088a092f762a9c36c13098d2a9c6a02d1814e0ecbd793919283926119619290919084613a18565b0390a280f35b63c52a9bd360e01b8452600484fd5b5081156118ba565b506001600160a01b038116156118b3565b6282b42960e81b8452600484fd5b6119b6915060203d60201161040c576103fe8183612dfc565b5f61189b565b90506020813d6020116119e8575b816119d760209383612dfc565b8101031261044a5751611889611864565b3d91506119ca565b6040513d88823e3d90fd5b6282b42960e81b8552600485fd5b611a22915060203d60201161040c576103fe8183612dfc565b5f61183a565b90506020813d602011611a53575b81611a4360209383612dfc565b8101031261044a57516020611804565b3d9150611a36565b5034610463576080366003190112610463576004356003811015611add57602435906001600160401b03821161046157611a9c611ada923690600401612c8c565b90611ad1337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146130da565b604435926135d1565b80f35b5080fd5b50346104635780600319360112610463576020601054604051908152f35b503461046357602036600319011261046357600435611b1c613c50565b6107d081116106d95760407fb404cac19fb1cbeff98d325795b08886e3cd8fe8cb1a2f193aac66f13fb239c391600d549080600d5582519182526020820152a180f35b50346104635780600319360112610463576002546040516001600160a01b039091168152602090f35b5034610463578060031936011261046357611ba1613c50565b80546001600160a01b03198116825581906001600160a01b03165f516020613fec5f395f51905f528280a380f35b50346104635780600319360112610463576003546040516001600160a01b039091168152602090f35b5034610463578060031936011261046357604051633fabe5a360e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169060a081600481855afa9183908385938695611d6e575b50611c6b5763b41b6cb160e01b8552600485fd5b6402540be40083128015611d5f575b611d5057611c8a60115442612f53565b8410611d50579060206004926040519384809263313ce56760e01b82525afa918215610456578592611d1f575b5060405190611cc582612db2565b83825284602083015260018060501b031690816040820152606060ff841691015282600a5583600b55600c549160ff60501b9060501b169160018060581b0319161717600c555f516020613f4c5f395f51905f528380a380f35b611d4291925060203d602011611d49575b611d3a8183612dfc565b81019061359d565b905f611cb7565b503d611d30565b63b41b6cb160e01b8552600485fd5b506509184e72a0008313611c7a565b9193509350611d95915060a03d60a011611da2575b611d8d8183612dfc565b810190612f88565b509491939190505f611c57565b503d611d83565b5034610463576020366003190112610463576020906040906001600160a01b03611dd1612cb9565b168152600883522054604051908152f35b5034610463576040366003190112610463576040611dfe612cb9565b91611e07612ccf565b9260018060a01b031681526006602052209060018060a01b03165f526020526040805f205460ff82519165ffffffffffff8116835260301c1615156020820152f35b50346104635780600319360112610463576004546040516001600160a01b039091168152602090f35b50346104635780600319360112610463576020600f54604051908152f35b5034610463578060031936011261046357602060405160488152f35b503461046357606036600319011261046357611ec6612cb9565b6024356001600160401b03811161046157611ee5903690600401612d1d565b906044356001600160401b038111610f2657611f05903690600401612d1d565b90927f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316330361201e5781810361200f5791936001600160a01b031691855b818110611f57578680f35b80611f6d611f686001938689613580565b613590565b858952600660205260408920611f8c611f8784878c613580565b613136565b848060a01b03165f5260205260405f209081549060ff60301b90151560301b169060ff60301b1916179055611fc5611f8782858a613580565b857f272958aacfbf07577da4ede62cc7d612dfb0881c6489c961988ef59378d7709f6020611ff7611f68868a8d613580565b936040519415158552868060a01b031693a301611f4c565b63c52a9bd360e01b8652600486fd5b6282b42960e81b8652600486fd5b50346104635780600319360112610463576020600954604051908152f35b503461046357602036600319011261046357612064612cb9565b61206c613c50565b600380546001600160a01b0319166001600160a01b039290921691909117905580f35b503461046357806003193601126104635750610c856040516120b2604082612dfc565b601481527329bab832b92830bcb6b0b9ba32b916999719171960611b6020820152604051918291602083526020830190612cf9565b5034610463578060031936011261046357602060405161012c8152f35b503461046357606036600319011261046357600435906001600160401b038211610463576101206003198336030112610463576121a261218a83612172337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146130da565b61217a613c76565b6044359060243590600401613199565b60018055604051928392604084526040840190612cf9565b9060208301520390f35b503461046357806003193601126104635760206040516509184e72a0008152f35b503461046357806003193601126104635760206040516402540be4008152f35b503461046357604036600319011261046357612207612cb9565b60243590612213613c76565b6040516310fdfea760e01b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316602082600481845afa8015610456578392869161235c575b509160209161228793604051809581948293632474521560e21b84526004840161309b565b03915afa90811561041357849161233d575b50156103d6576002546122ba908390309033906001600160a01b0316613cd0565b6001600160801b03821161117a576001600160a01b03168083526005602090815260408420805492935f516020613fcc5f395f51905f52939091906001600160801b039061230d908285169083166130b4565b82546001600160801b0319169116179055600f5461232c9082906130cd565b600f55604051908152a26001805580f35b612356915060203d60201161040c576103fe8183612dfc565b5f612299565b9250506020823d60201161238c575b8161237860209383612dfc565b8101031261044a5790518291906020612262565b3d915061236b565b5034610463576020366003190112610463576004356123b1613c76565b338252600560205260408220546001600160801b031681116124615733825260056020526040822080546001600160801b03906123f39084831690831661306a565b82546001600160801b0319169116179055600f54612412908290612f53565b600f5560025461242e90829033906001600160a01b0316613c96565b6040519081527f4eea589c35918e3c4d8e0371a062a1d544e41d78fb522381678923b9cd6e6dfa60203392a26001805580f35b3382526005602052604082205463cf47918160e01b83526001600160801b0316600452602452604490fd5b503461046357604036600319011261046357806124a7612cb9565b6124af613c50565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b15610bd85760405163040b850f60e31b81526001600160a01b03909116600482015260248035908201529082908290604490829084905af18015610a8f57610a7e5750f35b503461046357602036600319011261046357610140906040906001600160a01b0361254a612cb9565b16815260056020522080549060018101549060018060a01b0360028201541665ffffffffffff600460038401549301549360ff6040519660018060801b038116885260018060601b038160801c166020890152818160e01c161515604089015260e81c161515606087015260018060a01b038116608087015263ffffffff8160a01c1660a087015260c01c1660c085015260e0840152610100830152610120820152f35b503461046357606036600319011261046357612608612cb9565b6024356003811015610461576044356001600160401b03811161178a57612633903690600401612c8c565b600e549193916001600160a01b031633036119fb578461265284612ebf565b6001841490811561296c57506001600160a01b038316865260056020526040862054600a6001600160801b039182160416905b612690368488613034565b60208151910120936040936126ce8551986126ab878b612dfc565b600d8a5260208a01926c088aca8408498a640a6d8c2e6d609b1b84523691613034565b508789859360018060a01b0316998a958683526005602052888320906126f38c612ebf565b8b61294c575060ff600a5b16946127098c612ebf565b60028c14612936575b60ff825460e81c1661291f575b600182018663ffffffff825460a01c16115f1461290c5780610db98863ffffffff61274e945460a01c16613aac565b886127f3575b5050509560809795936127be86945f516020613fac5f395f51905f5294848b819a5f51602061400c5f395f51905f529f9d526008602052209085519261279984612de1565b4284528560208501528684015260608301526127b48b612ebf565b8a8c830152613ac6565b81519081526127cc88612ebf565b876020820152a28151936127df81612ebf565b84526020840152820152426060820152a280f35b919650915060018060801b0382541690610bb88202828104610bb814831517156128f857945f516020613fac5f395f51905f52948a8f8f98965f51602061400c5f395f51905f529f9d9b9660809f9d9b968c612710869b048091116128a7575b50508f6127be979850600180612876921b03916080600180911b038a169061306a565b168f600180911b0319825416179055612891866010546130cd565b60105595505094509496989a8296989a50612754565b6127be98506128ef9192965060206010919a87519485915180918484015e81016f2028436170706564206174203330252960801b838201520301600f19810184520182612dfc565b9387965f612853565b634e487b7160e01b8e52601160045260248efd5b805463ffffffff60a01b1916905561274e565b875f516020613f8c5f395f51905f528580a261271f565b815460ff60e81b1916600160e81b178255612712565b6129558c612ebf565b156129635760ff60146126fe565b60ff60326126fe565b9061297685612ebf565b60028503612685576001600160a01b0384168752600560205260408720546001600160801b03169150612685565b50346104635780600319360112610463576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b5034610463576060366003190112610463576024356004356044356001600160401b03811161178a57612a20903690600401612c8c565b600e546001600160a01b031691503382141580612bdc575b6119fb57600b54841115611d5057611c1f194201428111612bc8578410611d5057612bc1575b506402540be40081128015612bb2575b612b6457604051633fabe5a360e21b815260a0816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa8085928692612b89575b50612b1a575b505060086060604051612ad381612db2565b83815260208101859052604081018690520152600a819055600b829055600c80546001600160581b031916600160531b1790555f516020613f4c5f395f51905f528380a380f35b612b27611c209142612f53565b10612b33575b80612ac1565b60149080831315612b735780612b54612b4f612b599386612fbd565b612fd5565b612feb565b13612b64575f612b2d565b63b41b6cb160e01b8352600483fd5b80612b54612b4f85612b8494612fbd565b612b59565b909250612ba5915060a03d60a011611da257611d8d8183612dfc565b509392505091905f612abb565b506509184e72a0008113612a6e565b1515612a5e565b634e487b7160e01b86526011600452602486fd5b5084546001600160a01b0316331415612a38565b50602036600319011261044a5760043563ffffffff811680910361044a57612c16613c50565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b1561044a575f90602460405180948193621cb65b60e51b8352600483015234905af18015612c8157612c73575080f35b612c7f91505f90612dfc565b005b6040513d5f823e3d90fd5b9181601f8401121561044a578235916001600160401b03831161044a576020838186019501011161044a57565b600435906001600160a01b038216820361044a57565b602435906001600160a01b038216820361044a57565b35906001600160a01b038216820361044a57565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9181601f8401121561044a578235916001600160401b03831161044a576020808501948460051b01011161044a57565b8054821015612d66575f52600560205f20910201905f90565b634e487b7160e01b5f52603260045260245ffd5b90600182811c92168015612da8575b6020831014612d9457565b634e487b7160e01b5f52602260045260245ffd5b91607f1691612d89565b608081019081106001600160401b03821117612dcd57604052565b634e487b7160e01b5f52604160045260245ffd5b60a081019081106001600160401b03821117612dcd57604052565b601f909101601f19168101906001600160401b03821190821017612dcd57604052565b9060405191825f825492612e3284612d7a565b8084529360018116908115612e9d5750600114612e59575b50612e5792500383612dfc565b565b90505f9291925260205f20905f915b818310612e81575050906020612e57928201015f612e4a565b6020919350806001915483858901015201910190918492612e68565b905060209250612e5794915060ff191682840152151560051b8201015f612e4a565b60031115612ec957565b634e487b7160e01b5f52602160045260245ffd5b90815181526020820151602082015260408201516040820152608080612f12606085015160a0606086015260a0850190612cf9565b93015191612f1f83612ebf565b015290565b604090600319011261044a576004356001600160a01b038116810361044a5790602435801515810361044a5790565b91908203918211612f6057565b634e487b7160e01b5f52601160045260245ffd5b51906001600160501b038216820361044a57565b908160a091031261044a57612f9c81612f74565b91602082015191604081015191612fba608060608401519301612f74565b90565b81810392915f138015828513169184121617612f6057565b90606482029180830560641490151715612f6057565b811561300557600160ff1b81145f19831416612f60570590565b634e487b7160e01b5f52601260045260245ffd5b6001600160401b038111612dcd57601f01601f191660200190565b92919261304082613019565b9161304e6040519384612dfc565b82948184528183011161044a578281602093845f960137010152565b6001600160801b039182169082160391908211612f6057565b9081602091031261044a5751801515810361044a5790565b9081526001600160a01b03909116602082015260400190565b6001600160801b039182169082160191908211612f6057565b91908201809211612f6057565b156130e157565b60405162461bcd60e51b815260206004820152602760248201527f426173655061796d61737465723a2063616c6c6572206973206e6f7420456e746044820152661c9e541bda5b9d60ca1b6064820152608490fd5b356001600160a01b038116810361044a5790565b903590601e198136030182121561044a57018035906001600160401b03821161044a5760200191813603831361044a57565b81810292918115918404141715612f6057565b8115613005570490565b9092916131a582613cf8565b6001600160a01b03165f8181526005602052604081208054919692939160e081901c60ff16156135185760e81c60ff1661356b576001600160a01b036131ea86613136565b165f52600760205260ff60405f2054161561356b57835f52600660205260405f2061321486613136565b6001600160a01b03165f908152602091909152604090819020815192918301906001600160401b03821184831017612dcd5760ff916040525465ffffffffffff8116845260301c16151580602084015261351857600181019165ffffffffffff835460c01c1690816134af575b50505f199260e087016068613296828a61314a565b90501015613489575b50815493608085901c6001600160601b031611613447576040516060916132c582612db2565b600a54808352600b546020840152600c546001600160501b038116604085015260501c60ff16939092018390528a82131561347a57906133049161317c565b90604d811161343357906133216133279260095490600a0a61317c565b90613daf565b600d5490816127100191826127101161346657612af801809211613433579061334f91613d2f565b926001600160801b0316838110613447576001600160801b0390613376908583169061306a565b82546001600160801b03191691161781556003810180546133989085906130cd565b90556133a6836010546130cd565b6010556004810180545f198114613433576001019055546133f590670de0b6b3a7640000906133e19060801c6001600160601b03168561317c565b92546001600160a01b031696920491613136565b90604051956020870152604086015260018060a01b03166060850152608084015260a083015260c082015260c0815261342f60e082612dfc565b9190565b634e487b7160e01b8a52601160045260248afd5b50505050505050906040519061345e602083612dfc565b815290600190565b634e487b7160e01b8b52601160045260248bfd5b63b41b6cb160e01b8b5260048bfd5b9093506134989198508661314a565b60689891981161044a5760485f980135925f61329f565b5165ffffffffffff16801515919082613560575b82613537575b505061351857845f52600660205260405f206134e487613136565b6001600160a01b03165f90815260209190915260408120805465ffffffffffff19164265ffffffffffff1617905580613281565b505050505050905060405161352e602082612dfc565b5f815290600190565b01905065ffffffffffff8111612f605765ffffffffffff1665ffffffffffff4216105f806134c9565b4281141592506134c3565b5050505050905060405161352e602082612dfc565b9190811015612d665760051b0190565b35801515810361044a5790565b9081602091031261044a575160ff8116810361044a5790565b6001600160a01b039091168152602081019190915260400190565b929160025f946135e081612ebf565b14613a12578015613a12578160c0918101031261044a5761360081612ce5565b9261360d60408301612ce5565b9061361f60a060608501359401612ce5565b600b546001600160a01b03938416969184169593909116925f916136439042612f53565b6011541061399a575b829083926138bd575b83821315613878575b8382131561386957906136709161317c565b90604d8111610818579061332161368d9260095490600a0a61317c565b600d546127100190816127101161081857612710916136ab9161317c565b0492808410156137e557836136bf91612f53565b6001600160801b0381116137d7575b61371d906010548082116137cf575b5085835260056020526040832080546001600160801b0390613704908483169083166130b4565b82546001600160801b0319169116179055601054612f53565b60105583815260056020526040812054670de0b6b3a76400009061374d9060801c6001600160601b03168561317c565b0491803b15611add5781604051809263fa74542d60e01b8252818381613777898d600484016135b6565b03925af18015610a8f576137ba575b50507fcde7e91a718e2439d8ff2a679ad52713e82a37b72622fb530c8c41039fdd5bf09160409182519182526020820152a3565b6137c5828092612dfc565b6104635780613786565b90505f6136dd565b506001600160801b036136ce565b93815260056020526040812054909493919250670de0b6b3a7640000916138189160801c6001600160601b03169061317c565b0491813b1561178a57918391613845938360405180968195829463fa74542d60e01b8452600484016135b6565b03925af18015610a8f57613857575050565b613862828092612dfc565b6104635750565b63b41b6cb160e01b8452600484fd5b915050606060405161388981612db2565b600a54808252600b546020830152600c546001600160501b038116604084015260501c60ff1692909101829052909161365e565b604051633fabe5a360e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169060a081600481855afa869181613974575b50613913575b5050613655565b8581131561390c5760405163313ce56760e01b81529294509250602090829060049082905afa908115610413579060ff918591613955575b5016915f8061390c565b61396e915060203d602011611d4957611d3a8183612dfc565b5f61394b565b61398e91925060a03d60a011611da257611d8d8183612dfc565b5050509050905f613906565b90303b1561044a57604051630ce74fc560e31b81525f8160048183305af190816139fd575b506139f757506001907f190405c3325ce607eef93c6240d9728b865e09aa174052e80e380f33d165c4f46020604051428152a161364c565b9061364c565b613a0a9194505f90612dfc565b5f925f6139bf565b50505050565b6001600160a01b03918216815291166020820152604081019190915260600190565b90604051613a4781612de1565b608060ff60048395805485526001810154602086015260028101546040860152613a7360038201612e1f565b606086015201541691613a8583612ebf565b0152565b805463ffffffff60a01b191660a09290921b63ffffffff60a01b16919091179055565b9063ffffffff8091169116039063ffffffff8211612f6057565b8054600160401b811015612dcd57613ae391600182018155612d4d565b613c3d578151815560208201516001820155604082015160028201556060820151805160038301916001600160401b038211612dcd57613b238354612d7a565b601f8111613bf8575b50602090601f8311600114613b8f57918060049492608096945f92613b84575b50508160011b915f199060031b1c19161790555b01910151613b6d81612ebf565b613b7681612ebf565b60ff80198354169116179055565b015190505f80613b4c565b90601f19831691845f52815f20925f5b818110613be05750926001928592608098966004989610613bc8575b505050811b019055613b60565b01515f1960f88460031b161c191690555f8080613bbb565b92936020600181928786015181550195019301613b9f565b835f5260205f20601f840160051c81019160208510613c33575b601f0160051c01905b818110613c285750613b2c565b5f8155600101613c1b565b9091508190613c12565b634e487b7160e01b5f525f60045260245ffd5b5f546001600160a01b03163303613c6357565b63118cdaa760e01b5f523360045260245ffd5b600260015414613c87576002600155565b633ee5aeb560e01b5f5260045ffd5b613ccb612e579392613cbd60405194859263a9059cbb60e01b6020850152602484016135b6565b03601f198101845283612dfc565b613e5a565b90613ccb90613cbd612e57956040519586936323b872dd60e01b602086015260248501613a18565b60e081016048613d08828461314a565b905010613d2957613d189161314a565b60481161044a576034013560601c90565b50505f90565b9190915f838202915f1985820991838084109303928084039314613da257826127101115613d9357507fbc01a36e2eb1c432ca57a786c226809d495182a9930be0ded288ce703afb7e919394612710910990828211900360fc1b910360041c170290565b63227bc15360e01b8152600490fd5b5050506127109192500490565b90670de0b6b3a76400008202905f19670de0b6b3a7640000840992828085109403938085039414613e4e5783821115613e3f57670de0b6b3a7640000829109815f0382168092046002816003021880820260020302808202600203028082026002030280820260020302808202600203028091026002030293600183805f03040190848311900302920304170290565b63227bc15360e01b5f5260045ffd5b5090612fba925061318f565b5f80613ea29260018060a01b03169360208151910182865af13d15613ee5573d90613e8482613019565b91613e926040519384612dfc565b82523d5f602084013e5b83613eed565b8051908115159182613eca575b5050613eb85750565b635274afe760e01b5f5260045260245ffd5b613edd9250602080918301019101613083565b155f80613eaf565b606090613e9c565b90613f115750805115613f0257805190602001fd5b630a12f52160e11b5f5260045ffd5b81511580613f42575b613f22575090565b639996b31560e01b5f9081526001600160a01b0391909116600452602490fd5b50803b15613f1a56fedb6fb3cf4cc5fb760bcd63b958a53b2396776dff32c063188e864296541e76bdfc577563f1b9a0461e24abef1e1fcc0d33d3d881f20b5df6dda59de4aae2c821c5437eb8dd091f69800961953f2bb0bc16ae1ff2d3e52caa96796db65f8271daa7503227727e36abb7f0ecf24f626347ccc20233c48c554d49d7d2077a1a304006653c045d0a3144153a51ac6909baae43b8d5b67184cb74e988b72858727fe48be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a49f25e6b37dc7492af788d36761dc1b25f8fb6dcc448fb5637dc828725f0d88a26469706673582212201084ed7bfaee9d920045a6bd45667f8b452bf76b5d19070152a6e2e8127a80f164736f6c634300081c0033"
1781
+ }