@aastar/core 0.16.7

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 (136) hide show
  1. package/LICENSE +21 -0
  2. package/dist/abis/BLSAggregator.json +686 -0
  3. package/dist/abis/BLSValidator.json +42 -0
  4. package/dist/abis/DVTValidator.json +368 -0
  5. package/dist/abis/Eip7702Support.json +24 -0
  6. package/dist/abis/EntryPoint.json +1382 -0
  7. package/dist/abis/GToken.json +513 -0
  8. package/dist/abis/GTokenStaking.json +949 -0
  9. package/dist/abis/LegacyAccount.json +625 -0
  10. package/dist/abis/MySBT.json +1518 -0
  11. package/dist/abis/Paymaster.json +1143 -0
  12. package/dist/abis/PaymasterFactory.json +640 -0
  13. package/dist/abis/Registry.json +1942 -0
  14. package/dist/abis/ReputationSystem.json +699 -0
  15. package/dist/abis/SenderCreator.json +99 -0
  16. package/dist/abis/Simple7702Account.json +395 -0
  17. package/dist/abis/SimpleAccount.json +560 -0
  18. package/dist/abis/SimpleAccountFactory.json +111 -0
  19. package/dist/abis/SimpleAccountFactoryV08.json +87 -0
  20. package/dist/abis/SimpleAccountV08.json +557 -0
  21. package/dist/abis/SuperPaymaster.json +1781 -0
  22. package/dist/abis/UserOperationLib.json +57 -0
  23. package/dist/abis/abi.config.json +24 -0
  24. package/dist/abis/index.d.ts +1126 -0
  25. package/dist/abis/index.js +91 -0
  26. package/dist/abis/xPNTsFactory.json +718 -0
  27. package/dist/abis/xPNTsToken.json +1280 -0
  28. package/dist/actions/StateValidator.d.ts +68 -0
  29. package/dist/actions/StateValidator.js +187 -0
  30. package/dist/actions/StateValidator.test.d.ts +1 -0
  31. package/dist/actions/StateValidator.test.js +144 -0
  32. package/dist/actions/account.d.ts +55 -0
  33. package/dist/actions/account.js +133 -0
  34. package/dist/actions/account.test.d.ts +1 -0
  35. package/dist/actions/account.test.js +118 -0
  36. package/dist/actions/aggregator.d.ts +17 -0
  37. package/dist/actions/aggregator.js +31 -0
  38. package/dist/actions/aggregator.test.d.ts +1 -0
  39. package/dist/actions/aggregator.test.js +67 -0
  40. package/dist/actions/dvt.d.ts +30 -0
  41. package/dist/actions/dvt.js +41 -0
  42. package/dist/actions/dvt.test.d.ts +1 -0
  43. package/dist/actions/dvt.test.js +98 -0
  44. package/dist/actions/entryPoint.d.ts +90 -0
  45. package/dist/actions/entryPoint.js +211 -0
  46. package/dist/actions/entryPoint.test.d.ts +1 -0
  47. package/dist/actions/entryPoint.test.js +139 -0
  48. package/dist/actions/factory.d.ts +215 -0
  49. package/dist/actions/factory.js +442 -0
  50. package/dist/actions/factory.test.d.ts +1 -0
  51. package/dist/actions/factory.test.js +197 -0
  52. package/dist/actions/faucet.d.ts +48 -0
  53. package/dist/actions/faucet.js +337 -0
  54. package/dist/actions/faucet.test.d.ts +1 -0
  55. package/dist/actions/faucet.test.js +120 -0
  56. package/dist/actions/gtokenExtended.d.ts +39 -0
  57. package/dist/actions/gtokenExtended.js +115 -0
  58. package/dist/actions/gtokenExtended.test.d.ts +1 -0
  59. package/dist/actions/gtokenExtended.test.js +118 -0
  60. package/dist/actions/index.d.ts +15 -0
  61. package/dist/actions/index.js +17 -0
  62. package/dist/actions/paymasterV4.d.ts +170 -0
  63. package/dist/actions/paymasterV4.js +334 -0
  64. package/dist/actions/paymasterV4.test.d.ts +1 -0
  65. package/dist/actions/paymasterV4.test.js +159 -0
  66. package/dist/actions/registry.d.ts +246 -0
  67. package/dist/actions/registry.js +667 -0
  68. package/dist/actions/registry.test.d.ts +1 -0
  69. package/dist/actions/registry.test.js +360 -0
  70. package/dist/actions/reputation.d.ts +129 -0
  71. package/dist/actions/reputation.js +281 -0
  72. package/dist/actions/reputation.test.d.ts +1 -0
  73. package/dist/actions/reputation.test.js +169 -0
  74. package/dist/actions/sbt.d.ts +191 -0
  75. package/dist/actions/sbt.js +533 -0
  76. package/dist/actions/sbt.test.d.ts +1 -0
  77. package/dist/actions/sbt.test.js +256 -0
  78. package/dist/actions/staking.d.ts +132 -0
  79. package/dist/actions/staking.js +330 -0
  80. package/dist/actions/staking.test.d.ts +1 -0
  81. package/dist/actions/staking.test.js +223 -0
  82. package/dist/actions/superPaymaster.d.ts +237 -0
  83. package/dist/actions/superPaymaster.js +644 -0
  84. package/dist/actions/superPaymaster.test.d.ts +1 -0
  85. package/dist/actions/superPaymaster.test.js +287 -0
  86. package/dist/actions/tokens.d.ts +229 -0
  87. package/dist/actions/tokens.js +415 -0
  88. package/dist/actions/tokens.test.d.ts +1 -0
  89. package/dist/actions/tokens.test.js +53 -0
  90. package/dist/actions/validators.d.ts +194 -0
  91. package/dist/actions/validators.js +433 -0
  92. package/dist/actions/validators.test.d.ts +1 -0
  93. package/dist/actions/validators.test.js +215 -0
  94. package/dist/branding.d.ts +30 -0
  95. package/dist/branding.js +30 -0
  96. package/dist/clients/BaseClient.d.ts +25 -0
  97. package/dist/clients/BaseClient.js +66 -0
  98. package/dist/clients/types.d.ts +60 -0
  99. package/dist/clients/types.js +1 -0
  100. package/dist/clients.d.ts +5 -0
  101. package/dist/clients.js +11 -0
  102. package/dist/communities.d.ts +52 -0
  103. package/dist/communities.js +73 -0
  104. package/dist/config/ContractConfigManager.d.ts +20 -0
  105. package/dist/config/ContractConfigManager.js +48 -0
  106. package/dist/constants.d.ts +88 -0
  107. package/dist/constants.js +125 -0
  108. package/dist/contract-addresses.d.ts +110 -0
  109. package/dist/contract-addresses.js +99 -0
  110. package/dist/contracts.d.ts +424 -0
  111. package/dist/contracts.js +343 -0
  112. package/dist/contracts.test.d.ts +1 -0
  113. package/dist/contracts.test.js +40 -0
  114. package/dist/crypto/blsSigner.d.ts +64 -0
  115. package/dist/crypto/blsSigner.js +98 -0
  116. package/dist/crypto/index.d.ts +1 -0
  117. package/dist/crypto/index.js +1 -0
  118. package/dist/index.d.ts +21 -0
  119. package/dist/index.js +21 -0
  120. package/dist/networks.d.ts +127 -0
  121. package/dist/networks.js +118 -0
  122. package/dist/requirementChecker.d.ts +38 -0
  123. package/dist/requirementChecker.js +139 -0
  124. package/dist/requirementChecker.test.d.ts +1 -0
  125. package/dist/requirementChecker.test.js +60 -0
  126. package/dist/roles.d.ts +204 -0
  127. package/dist/roles.js +211 -0
  128. package/dist/roles.test.d.ts +1 -0
  129. package/dist/roles.test.js +23 -0
  130. package/dist/utils/validation.d.ts +24 -0
  131. package/dist/utils/validation.js +56 -0
  132. package/dist/utils/validation.test.d.ts +1 -0
  133. package/dist/utils/validation.test.js +40 -0
  134. package/dist/utils.d.ts +12 -0
  135. package/dist/utils.js +14 -0
  136. package/package.json +33 -0
@@ -0,0 +1,1781 @@
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
+ }