@mapprotocol/common-contracts 0.1.0

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 (88) hide show
  1. package/README.md +107 -0
  2. package/artifacts/contracts/AuthorityManager.sol/AuthorityManager.json +1237 -0
  3. package/artifacts/contracts/base/BaseImplemention.sol/BaseImplementation.json +298 -0
  4. package/contracts/AuthorityManager.sol +60 -0
  5. package/contracts/base/BaseImplemention.sol +38 -0
  6. package/package.json +73 -0
  7. package/typechain-types/@openzeppelin/contracts/access/index.ts +5 -0
  8. package/typechain-types/@openzeppelin/contracts/access/manager/AccessManager.ts +1109 -0
  9. package/typechain-types/@openzeppelin/contracts/access/manager/IAccessManaged.ts +148 -0
  10. package/typechain-types/@openzeppelin/contracts/access/manager/IAccessManager.ts +1073 -0
  11. package/typechain-types/@openzeppelin/contracts/access/manager/IAuthority.ts +96 -0
  12. package/typechain-types/@openzeppelin/contracts/access/manager/index.ts +7 -0
  13. package/typechain-types/@openzeppelin/contracts/index.ts +11 -0
  14. package/typechain-types/@openzeppelin/contracts/interfaces/IERC1967.ts +168 -0
  15. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.ts +90 -0
  16. package/typechain-types/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  17. package/typechain-types/@openzeppelin/contracts/interfaces/index.ts +6 -0
  18. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils.ts +69 -0
  19. package/typechain-types/@openzeppelin/contracts/proxy/ERC1967/index.ts +4 -0
  20. package/typechain-types/@openzeppelin/contracts/proxy/beacon/IBeacon.ts +90 -0
  21. package/typechain-types/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
  22. package/typechain-types/@openzeppelin/contracts/proxy/index.ts +7 -0
  23. package/typechain-types/@openzeppelin/contracts/utils/Address.ts +69 -0
  24. package/typechain-types/@openzeppelin/contracts/utils/Errors.ts +69 -0
  25. package/typechain-types/@openzeppelin/contracts/utils/Multicall.ts +87 -0
  26. package/typechain-types/@openzeppelin/contracts/utils/index.ts +8 -0
  27. package/typechain-types/@openzeppelin/contracts/utils/math/SafeCast.ts +69 -0
  28. package/typechain-types/@openzeppelin/contracts/utils/math/index.ts +4 -0
  29. package/typechain-types/@openzeppelin/contracts-upgradeable/access/index.ts +5 -0
  30. package/typechain-types/@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable.ts +185 -0
  31. package/typechain-types/@openzeppelin/contracts-upgradeable/access/manager/index.ts +4 -0
  32. package/typechain-types/@openzeppelin/contracts-upgradeable/index.ts +9 -0
  33. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/index.ts +5 -0
  34. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.ts +105 -0
  35. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable.ts +196 -0
  36. package/typechain-types/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
  37. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.ts +105 -0
  38. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable.ts +183 -0
  39. package/typechain-types/@openzeppelin/contracts-upgradeable/utils/index.ts +5 -0
  40. package/typechain-types/@openzeppelin/index.ts +7 -0
  41. package/typechain-types/common.ts +131 -0
  42. package/typechain-types/contracts/AuthorityManager.ts +1163 -0
  43. package/typechain-types/contracts/base/BaseImplemention.sol/BaseImplementation.ts +363 -0
  44. package/typechain-types/contracts/base/BaseImplemention.sol/index.ts +4 -0
  45. package/typechain-types/contracts/base/index.ts +5 -0
  46. package/typechain-types/contracts/index.ts +6 -0
  47. package/typechain-types/factories/@openzeppelin/contracts/access/index.ts +4 -0
  48. package/typechain-types/factories/@openzeppelin/contracts/access/manager/AccessManager__factory.ts +1240 -0
  49. package/typechain-types/factories/@openzeppelin/contracts/access/manager/IAccessManaged__factory.ts +115 -0
  50. package/typechain-types/factories/@openzeppelin/contracts/access/manager/IAccessManager__factory.ts +1085 -0
  51. package/typechain-types/factories/@openzeppelin/contracts/access/manager/IAuthority__factory.ts +51 -0
  52. package/typechain-types/factories/@openzeppelin/contracts/access/manager/index.ts +7 -0
  53. package/typechain-types/factories/@openzeppelin/contracts/index.ts +7 -0
  54. package/typechain-types/factories/@openzeppelin/contracts/interfaces/IERC1967__factory.ts +67 -0
  55. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable__factory.ts +38 -0
  56. package/typechain-types/factories/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/index.ts +4 -0
  57. package/typechain-types/factories/@openzeppelin/contracts/interfaces/index.ts +5 -0
  58. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Utils__factory.ts +105 -0
  59. package/typechain-types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +4 -0
  60. package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/IBeacon__factory.ts +35 -0
  61. package/typechain-types/factories/@openzeppelin/contracts/proxy/beacon/index.ts +4 -0
  62. package/typechain-types/factories/@openzeppelin/contracts/proxy/index.ts +5 -0
  63. package/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.ts +75 -0
  64. package/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.ts +101 -0
  65. package/typechain-types/factories/@openzeppelin/contracts/utils/Multicall__factory.ts +57 -0
  66. package/typechain-types/factories/@openzeppelin/contracts/utils/index.ts +7 -0
  67. package/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.ts +118 -0
  68. package/typechain-types/factories/@openzeppelin/contracts/utils/math/index.ts +4 -0
  69. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/index.ts +4 -0
  70. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/manager/AccessManagedUpgradeable__factory.ts +142 -0
  71. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/access/manager/index.ts +4 -0
  72. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.ts +6 -0
  73. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/index.ts +4 -0
  74. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable__factory.ts +48 -0
  75. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/UUPSUpgradeable__factory.ts +153 -0
  76. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/proxy/utils/index.ts +5 -0
  77. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable__factory.ts +48 -0
  78. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/PausableUpgradeable__factory.ts +101 -0
  79. package/typechain-types/factories/@openzeppelin/contracts-upgradeable/utils/index.ts +5 -0
  80. package/typechain-types/factories/@openzeppelin/index.ts +5 -0
  81. package/typechain-types/factories/contracts/AuthorityManager__factory.ts +1302 -0
  82. package/typechain-types/factories/contracts/base/BaseImplemention.sol/BaseImplementation__factory.ts +312 -0
  83. package/typechain-types/factories/contracts/base/BaseImplemention.sol/index.ts +4 -0
  84. package/typechain-types/factories/contracts/base/index.ts +4 -0
  85. package/typechain-types/factories/contracts/index.ts +5 -0
  86. package/typechain-types/factories/index.ts +5 -0
  87. package/typechain-types/hardhat.d.ts +387 -0
  88. package/typechain-types/index.ts +46 -0
@@ -0,0 +1,1240 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import {
5
+ Contract,
6
+ ContractFactory,
7
+ ContractTransactionResponse,
8
+ Interface,
9
+ } from "ethers";
10
+ import type {
11
+ Signer,
12
+ AddressLike,
13
+ ContractDeployTransaction,
14
+ ContractRunner,
15
+ } from "ethers";
16
+ import type { NonPayableOverrides } from "../../../../../common";
17
+ import type {
18
+ AccessManager,
19
+ AccessManagerInterface,
20
+ } from "../../../../../@openzeppelin/contracts/access/manager/AccessManager";
21
+
22
+ const _abi = [
23
+ {
24
+ inputs: [
25
+ {
26
+ internalType: "address",
27
+ name: "initialAdmin",
28
+ type: "address",
29
+ },
30
+ ],
31
+ stateMutability: "nonpayable",
32
+ type: "constructor",
33
+ },
34
+ {
35
+ inputs: [
36
+ {
37
+ internalType: "bytes32",
38
+ name: "operationId",
39
+ type: "bytes32",
40
+ },
41
+ ],
42
+ name: "AccessManagerAlreadyScheduled",
43
+ type: "error",
44
+ },
45
+ {
46
+ inputs: [],
47
+ name: "AccessManagerBadConfirmation",
48
+ type: "error",
49
+ },
50
+ {
51
+ inputs: [
52
+ {
53
+ internalType: "bytes32",
54
+ name: "operationId",
55
+ type: "bytes32",
56
+ },
57
+ ],
58
+ name: "AccessManagerExpired",
59
+ type: "error",
60
+ },
61
+ {
62
+ inputs: [
63
+ {
64
+ internalType: "address",
65
+ name: "initialAdmin",
66
+ type: "address",
67
+ },
68
+ ],
69
+ name: "AccessManagerInvalidInitialAdmin",
70
+ type: "error",
71
+ },
72
+ {
73
+ inputs: [
74
+ {
75
+ internalType: "uint64",
76
+ name: "roleId",
77
+ type: "uint64",
78
+ },
79
+ ],
80
+ name: "AccessManagerLockedRole",
81
+ type: "error",
82
+ },
83
+ {
84
+ inputs: [
85
+ {
86
+ internalType: "bytes32",
87
+ name: "operationId",
88
+ type: "bytes32",
89
+ },
90
+ ],
91
+ name: "AccessManagerNotReady",
92
+ type: "error",
93
+ },
94
+ {
95
+ inputs: [
96
+ {
97
+ internalType: "bytes32",
98
+ name: "operationId",
99
+ type: "bytes32",
100
+ },
101
+ ],
102
+ name: "AccessManagerNotScheduled",
103
+ type: "error",
104
+ },
105
+ {
106
+ inputs: [
107
+ {
108
+ internalType: "address",
109
+ name: "msgsender",
110
+ type: "address",
111
+ },
112
+ {
113
+ internalType: "uint64",
114
+ name: "roleId",
115
+ type: "uint64",
116
+ },
117
+ ],
118
+ name: "AccessManagerUnauthorizedAccount",
119
+ type: "error",
120
+ },
121
+ {
122
+ inputs: [
123
+ {
124
+ internalType: "address",
125
+ name: "caller",
126
+ type: "address",
127
+ },
128
+ {
129
+ internalType: "address",
130
+ name: "target",
131
+ type: "address",
132
+ },
133
+ {
134
+ internalType: "bytes4",
135
+ name: "selector",
136
+ type: "bytes4",
137
+ },
138
+ ],
139
+ name: "AccessManagerUnauthorizedCall",
140
+ type: "error",
141
+ },
142
+ {
143
+ inputs: [
144
+ {
145
+ internalType: "address",
146
+ name: "msgsender",
147
+ type: "address",
148
+ },
149
+ {
150
+ internalType: "address",
151
+ name: "caller",
152
+ type: "address",
153
+ },
154
+ {
155
+ internalType: "address",
156
+ name: "target",
157
+ type: "address",
158
+ },
159
+ {
160
+ internalType: "bytes4",
161
+ name: "selector",
162
+ type: "bytes4",
163
+ },
164
+ ],
165
+ name: "AccessManagerUnauthorizedCancel",
166
+ type: "error",
167
+ },
168
+ {
169
+ inputs: [
170
+ {
171
+ internalType: "address",
172
+ name: "target",
173
+ type: "address",
174
+ },
175
+ ],
176
+ name: "AccessManagerUnauthorizedConsume",
177
+ type: "error",
178
+ },
179
+ {
180
+ inputs: [
181
+ {
182
+ internalType: "address",
183
+ name: "target",
184
+ type: "address",
185
+ },
186
+ ],
187
+ name: "AddressEmptyCode",
188
+ type: "error",
189
+ },
190
+ {
191
+ inputs: [],
192
+ name: "FailedCall",
193
+ type: "error",
194
+ },
195
+ {
196
+ inputs: [
197
+ {
198
+ internalType: "uint256",
199
+ name: "balance",
200
+ type: "uint256",
201
+ },
202
+ {
203
+ internalType: "uint256",
204
+ name: "needed",
205
+ type: "uint256",
206
+ },
207
+ ],
208
+ name: "InsufficientBalance",
209
+ type: "error",
210
+ },
211
+ {
212
+ inputs: [
213
+ {
214
+ internalType: "uint8",
215
+ name: "bits",
216
+ type: "uint8",
217
+ },
218
+ {
219
+ internalType: "uint256",
220
+ name: "value",
221
+ type: "uint256",
222
+ },
223
+ ],
224
+ name: "SafeCastOverflowedUintDowncast",
225
+ type: "error",
226
+ },
227
+ {
228
+ anonymous: false,
229
+ inputs: [
230
+ {
231
+ indexed: true,
232
+ internalType: "bytes32",
233
+ name: "operationId",
234
+ type: "bytes32",
235
+ },
236
+ {
237
+ indexed: true,
238
+ internalType: "uint32",
239
+ name: "nonce",
240
+ type: "uint32",
241
+ },
242
+ ],
243
+ name: "OperationCanceled",
244
+ type: "event",
245
+ },
246
+ {
247
+ anonymous: false,
248
+ inputs: [
249
+ {
250
+ indexed: true,
251
+ internalType: "bytes32",
252
+ name: "operationId",
253
+ type: "bytes32",
254
+ },
255
+ {
256
+ indexed: true,
257
+ internalType: "uint32",
258
+ name: "nonce",
259
+ type: "uint32",
260
+ },
261
+ ],
262
+ name: "OperationExecuted",
263
+ type: "event",
264
+ },
265
+ {
266
+ anonymous: false,
267
+ inputs: [
268
+ {
269
+ indexed: true,
270
+ internalType: "bytes32",
271
+ name: "operationId",
272
+ type: "bytes32",
273
+ },
274
+ {
275
+ indexed: true,
276
+ internalType: "uint32",
277
+ name: "nonce",
278
+ type: "uint32",
279
+ },
280
+ {
281
+ indexed: false,
282
+ internalType: "uint48",
283
+ name: "schedule",
284
+ type: "uint48",
285
+ },
286
+ {
287
+ indexed: false,
288
+ internalType: "address",
289
+ name: "caller",
290
+ type: "address",
291
+ },
292
+ {
293
+ indexed: false,
294
+ internalType: "address",
295
+ name: "target",
296
+ type: "address",
297
+ },
298
+ {
299
+ indexed: false,
300
+ internalType: "bytes",
301
+ name: "data",
302
+ type: "bytes",
303
+ },
304
+ ],
305
+ name: "OperationScheduled",
306
+ type: "event",
307
+ },
308
+ {
309
+ anonymous: false,
310
+ inputs: [
311
+ {
312
+ indexed: true,
313
+ internalType: "uint64",
314
+ name: "roleId",
315
+ type: "uint64",
316
+ },
317
+ {
318
+ indexed: true,
319
+ internalType: "uint64",
320
+ name: "admin",
321
+ type: "uint64",
322
+ },
323
+ ],
324
+ name: "RoleAdminChanged",
325
+ type: "event",
326
+ },
327
+ {
328
+ anonymous: false,
329
+ inputs: [
330
+ {
331
+ indexed: true,
332
+ internalType: "uint64",
333
+ name: "roleId",
334
+ type: "uint64",
335
+ },
336
+ {
337
+ indexed: false,
338
+ internalType: "uint32",
339
+ name: "delay",
340
+ type: "uint32",
341
+ },
342
+ {
343
+ indexed: false,
344
+ internalType: "uint48",
345
+ name: "since",
346
+ type: "uint48",
347
+ },
348
+ ],
349
+ name: "RoleGrantDelayChanged",
350
+ type: "event",
351
+ },
352
+ {
353
+ anonymous: false,
354
+ inputs: [
355
+ {
356
+ indexed: true,
357
+ internalType: "uint64",
358
+ name: "roleId",
359
+ type: "uint64",
360
+ },
361
+ {
362
+ indexed: true,
363
+ internalType: "address",
364
+ name: "account",
365
+ type: "address",
366
+ },
367
+ {
368
+ indexed: false,
369
+ internalType: "uint32",
370
+ name: "delay",
371
+ type: "uint32",
372
+ },
373
+ {
374
+ indexed: false,
375
+ internalType: "uint48",
376
+ name: "since",
377
+ type: "uint48",
378
+ },
379
+ {
380
+ indexed: false,
381
+ internalType: "bool",
382
+ name: "newMember",
383
+ type: "bool",
384
+ },
385
+ ],
386
+ name: "RoleGranted",
387
+ type: "event",
388
+ },
389
+ {
390
+ anonymous: false,
391
+ inputs: [
392
+ {
393
+ indexed: true,
394
+ internalType: "uint64",
395
+ name: "roleId",
396
+ type: "uint64",
397
+ },
398
+ {
399
+ indexed: true,
400
+ internalType: "uint64",
401
+ name: "guardian",
402
+ type: "uint64",
403
+ },
404
+ ],
405
+ name: "RoleGuardianChanged",
406
+ type: "event",
407
+ },
408
+ {
409
+ anonymous: false,
410
+ inputs: [
411
+ {
412
+ indexed: true,
413
+ internalType: "uint64",
414
+ name: "roleId",
415
+ type: "uint64",
416
+ },
417
+ {
418
+ indexed: false,
419
+ internalType: "string",
420
+ name: "label",
421
+ type: "string",
422
+ },
423
+ ],
424
+ name: "RoleLabel",
425
+ type: "event",
426
+ },
427
+ {
428
+ anonymous: false,
429
+ inputs: [
430
+ {
431
+ indexed: true,
432
+ internalType: "uint64",
433
+ name: "roleId",
434
+ type: "uint64",
435
+ },
436
+ {
437
+ indexed: true,
438
+ internalType: "address",
439
+ name: "account",
440
+ type: "address",
441
+ },
442
+ ],
443
+ name: "RoleRevoked",
444
+ type: "event",
445
+ },
446
+ {
447
+ anonymous: false,
448
+ inputs: [
449
+ {
450
+ indexed: true,
451
+ internalType: "address",
452
+ name: "target",
453
+ type: "address",
454
+ },
455
+ {
456
+ indexed: false,
457
+ internalType: "uint32",
458
+ name: "delay",
459
+ type: "uint32",
460
+ },
461
+ {
462
+ indexed: false,
463
+ internalType: "uint48",
464
+ name: "since",
465
+ type: "uint48",
466
+ },
467
+ ],
468
+ name: "TargetAdminDelayUpdated",
469
+ type: "event",
470
+ },
471
+ {
472
+ anonymous: false,
473
+ inputs: [
474
+ {
475
+ indexed: true,
476
+ internalType: "address",
477
+ name: "target",
478
+ type: "address",
479
+ },
480
+ {
481
+ indexed: false,
482
+ internalType: "bool",
483
+ name: "closed",
484
+ type: "bool",
485
+ },
486
+ ],
487
+ name: "TargetClosed",
488
+ type: "event",
489
+ },
490
+ {
491
+ anonymous: false,
492
+ inputs: [
493
+ {
494
+ indexed: true,
495
+ internalType: "address",
496
+ name: "target",
497
+ type: "address",
498
+ },
499
+ {
500
+ indexed: false,
501
+ internalType: "bytes4",
502
+ name: "selector",
503
+ type: "bytes4",
504
+ },
505
+ {
506
+ indexed: true,
507
+ internalType: "uint64",
508
+ name: "roleId",
509
+ type: "uint64",
510
+ },
511
+ ],
512
+ name: "TargetFunctionRoleUpdated",
513
+ type: "event",
514
+ },
515
+ {
516
+ inputs: [],
517
+ name: "ADMIN_ROLE",
518
+ outputs: [
519
+ {
520
+ internalType: "uint64",
521
+ name: "",
522
+ type: "uint64",
523
+ },
524
+ ],
525
+ stateMutability: "view",
526
+ type: "function",
527
+ },
528
+ {
529
+ inputs: [],
530
+ name: "PUBLIC_ROLE",
531
+ outputs: [
532
+ {
533
+ internalType: "uint64",
534
+ name: "",
535
+ type: "uint64",
536
+ },
537
+ ],
538
+ stateMutability: "view",
539
+ type: "function",
540
+ },
541
+ {
542
+ inputs: [
543
+ {
544
+ internalType: "address",
545
+ name: "caller",
546
+ type: "address",
547
+ },
548
+ {
549
+ internalType: "address",
550
+ name: "target",
551
+ type: "address",
552
+ },
553
+ {
554
+ internalType: "bytes4",
555
+ name: "selector",
556
+ type: "bytes4",
557
+ },
558
+ ],
559
+ name: "canCall",
560
+ outputs: [
561
+ {
562
+ internalType: "bool",
563
+ name: "immediate",
564
+ type: "bool",
565
+ },
566
+ {
567
+ internalType: "uint32",
568
+ name: "delay",
569
+ type: "uint32",
570
+ },
571
+ ],
572
+ stateMutability: "view",
573
+ type: "function",
574
+ },
575
+ {
576
+ inputs: [
577
+ {
578
+ internalType: "address",
579
+ name: "caller",
580
+ type: "address",
581
+ },
582
+ {
583
+ internalType: "address",
584
+ name: "target",
585
+ type: "address",
586
+ },
587
+ {
588
+ internalType: "bytes",
589
+ name: "data",
590
+ type: "bytes",
591
+ },
592
+ ],
593
+ name: "cancel",
594
+ outputs: [
595
+ {
596
+ internalType: "uint32",
597
+ name: "",
598
+ type: "uint32",
599
+ },
600
+ ],
601
+ stateMutability: "nonpayable",
602
+ type: "function",
603
+ },
604
+ {
605
+ inputs: [
606
+ {
607
+ internalType: "address",
608
+ name: "caller",
609
+ type: "address",
610
+ },
611
+ {
612
+ internalType: "bytes",
613
+ name: "data",
614
+ type: "bytes",
615
+ },
616
+ ],
617
+ name: "consumeScheduledOp",
618
+ outputs: [],
619
+ stateMutability: "nonpayable",
620
+ type: "function",
621
+ },
622
+ {
623
+ inputs: [
624
+ {
625
+ internalType: "address",
626
+ name: "target",
627
+ type: "address",
628
+ },
629
+ {
630
+ internalType: "bytes",
631
+ name: "data",
632
+ type: "bytes",
633
+ },
634
+ ],
635
+ name: "execute",
636
+ outputs: [
637
+ {
638
+ internalType: "uint32",
639
+ name: "",
640
+ type: "uint32",
641
+ },
642
+ ],
643
+ stateMutability: "payable",
644
+ type: "function",
645
+ },
646
+ {
647
+ inputs: [],
648
+ name: "expiration",
649
+ outputs: [
650
+ {
651
+ internalType: "uint32",
652
+ name: "",
653
+ type: "uint32",
654
+ },
655
+ ],
656
+ stateMutability: "view",
657
+ type: "function",
658
+ },
659
+ {
660
+ inputs: [
661
+ {
662
+ internalType: "uint64",
663
+ name: "roleId",
664
+ type: "uint64",
665
+ },
666
+ {
667
+ internalType: "address",
668
+ name: "account",
669
+ type: "address",
670
+ },
671
+ ],
672
+ name: "getAccess",
673
+ outputs: [
674
+ {
675
+ internalType: "uint48",
676
+ name: "since",
677
+ type: "uint48",
678
+ },
679
+ {
680
+ internalType: "uint32",
681
+ name: "currentDelay",
682
+ type: "uint32",
683
+ },
684
+ {
685
+ internalType: "uint32",
686
+ name: "pendingDelay",
687
+ type: "uint32",
688
+ },
689
+ {
690
+ internalType: "uint48",
691
+ name: "effect",
692
+ type: "uint48",
693
+ },
694
+ ],
695
+ stateMutability: "view",
696
+ type: "function",
697
+ },
698
+ {
699
+ inputs: [
700
+ {
701
+ internalType: "bytes32",
702
+ name: "id",
703
+ type: "bytes32",
704
+ },
705
+ ],
706
+ name: "getNonce",
707
+ outputs: [
708
+ {
709
+ internalType: "uint32",
710
+ name: "",
711
+ type: "uint32",
712
+ },
713
+ ],
714
+ stateMutability: "view",
715
+ type: "function",
716
+ },
717
+ {
718
+ inputs: [
719
+ {
720
+ internalType: "uint64",
721
+ name: "roleId",
722
+ type: "uint64",
723
+ },
724
+ ],
725
+ name: "getRoleAdmin",
726
+ outputs: [
727
+ {
728
+ internalType: "uint64",
729
+ name: "",
730
+ type: "uint64",
731
+ },
732
+ ],
733
+ stateMutability: "view",
734
+ type: "function",
735
+ },
736
+ {
737
+ inputs: [
738
+ {
739
+ internalType: "uint64",
740
+ name: "roleId",
741
+ type: "uint64",
742
+ },
743
+ ],
744
+ name: "getRoleGrantDelay",
745
+ outputs: [
746
+ {
747
+ internalType: "uint32",
748
+ name: "",
749
+ type: "uint32",
750
+ },
751
+ ],
752
+ stateMutability: "view",
753
+ type: "function",
754
+ },
755
+ {
756
+ inputs: [
757
+ {
758
+ internalType: "uint64",
759
+ name: "roleId",
760
+ type: "uint64",
761
+ },
762
+ ],
763
+ name: "getRoleGuardian",
764
+ outputs: [
765
+ {
766
+ internalType: "uint64",
767
+ name: "",
768
+ type: "uint64",
769
+ },
770
+ ],
771
+ stateMutability: "view",
772
+ type: "function",
773
+ },
774
+ {
775
+ inputs: [
776
+ {
777
+ internalType: "bytes32",
778
+ name: "id",
779
+ type: "bytes32",
780
+ },
781
+ ],
782
+ name: "getSchedule",
783
+ outputs: [
784
+ {
785
+ internalType: "uint48",
786
+ name: "",
787
+ type: "uint48",
788
+ },
789
+ ],
790
+ stateMutability: "view",
791
+ type: "function",
792
+ },
793
+ {
794
+ inputs: [
795
+ {
796
+ internalType: "address",
797
+ name: "target",
798
+ type: "address",
799
+ },
800
+ ],
801
+ name: "getTargetAdminDelay",
802
+ outputs: [
803
+ {
804
+ internalType: "uint32",
805
+ name: "",
806
+ type: "uint32",
807
+ },
808
+ ],
809
+ stateMutability: "view",
810
+ type: "function",
811
+ },
812
+ {
813
+ inputs: [
814
+ {
815
+ internalType: "address",
816
+ name: "target",
817
+ type: "address",
818
+ },
819
+ {
820
+ internalType: "bytes4",
821
+ name: "selector",
822
+ type: "bytes4",
823
+ },
824
+ ],
825
+ name: "getTargetFunctionRole",
826
+ outputs: [
827
+ {
828
+ internalType: "uint64",
829
+ name: "",
830
+ type: "uint64",
831
+ },
832
+ ],
833
+ stateMutability: "view",
834
+ type: "function",
835
+ },
836
+ {
837
+ inputs: [
838
+ {
839
+ internalType: "uint64",
840
+ name: "roleId",
841
+ type: "uint64",
842
+ },
843
+ {
844
+ internalType: "address",
845
+ name: "account",
846
+ type: "address",
847
+ },
848
+ {
849
+ internalType: "uint32",
850
+ name: "executionDelay",
851
+ type: "uint32",
852
+ },
853
+ ],
854
+ name: "grantRole",
855
+ outputs: [],
856
+ stateMutability: "nonpayable",
857
+ type: "function",
858
+ },
859
+ {
860
+ inputs: [
861
+ {
862
+ internalType: "uint64",
863
+ name: "roleId",
864
+ type: "uint64",
865
+ },
866
+ {
867
+ internalType: "address",
868
+ name: "account",
869
+ type: "address",
870
+ },
871
+ ],
872
+ name: "hasRole",
873
+ outputs: [
874
+ {
875
+ internalType: "bool",
876
+ name: "isMember",
877
+ type: "bool",
878
+ },
879
+ {
880
+ internalType: "uint32",
881
+ name: "executionDelay",
882
+ type: "uint32",
883
+ },
884
+ ],
885
+ stateMutability: "view",
886
+ type: "function",
887
+ },
888
+ {
889
+ inputs: [
890
+ {
891
+ internalType: "address",
892
+ name: "caller",
893
+ type: "address",
894
+ },
895
+ {
896
+ internalType: "address",
897
+ name: "target",
898
+ type: "address",
899
+ },
900
+ {
901
+ internalType: "bytes",
902
+ name: "data",
903
+ type: "bytes",
904
+ },
905
+ ],
906
+ name: "hashOperation",
907
+ outputs: [
908
+ {
909
+ internalType: "bytes32",
910
+ name: "",
911
+ type: "bytes32",
912
+ },
913
+ ],
914
+ stateMutability: "view",
915
+ type: "function",
916
+ },
917
+ {
918
+ inputs: [
919
+ {
920
+ internalType: "address",
921
+ name: "target",
922
+ type: "address",
923
+ },
924
+ ],
925
+ name: "isTargetClosed",
926
+ outputs: [
927
+ {
928
+ internalType: "bool",
929
+ name: "",
930
+ type: "bool",
931
+ },
932
+ ],
933
+ stateMutability: "view",
934
+ type: "function",
935
+ },
936
+ {
937
+ inputs: [
938
+ {
939
+ internalType: "uint64",
940
+ name: "roleId",
941
+ type: "uint64",
942
+ },
943
+ {
944
+ internalType: "string",
945
+ name: "label",
946
+ type: "string",
947
+ },
948
+ ],
949
+ name: "labelRole",
950
+ outputs: [],
951
+ stateMutability: "nonpayable",
952
+ type: "function",
953
+ },
954
+ {
955
+ inputs: [],
956
+ name: "minSetback",
957
+ outputs: [
958
+ {
959
+ internalType: "uint32",
960
+ name: "",
961
+ type: "uint32",
962
+ },
963
+ ],
964
+ stateMutability: "view",
965
+ type: "function",
966
+ },
967
+ {
968
+ inputs: [
969
+ {
970
+ internalType: "bytes[]",
971
+ name: "data",
972
+ type: "bytes[]",
973
+ },
974
+ ],
975
+ name: "multicall",
976
+ outputs: [
977
+ {
978
+ internalType: "bytes[]",
979
+ name: "results",
980
+ type: "bytes[]",
981
+ },
982
+ ],
983
+ stateMutability: "nonpayable",
984
+ type: "function",
985
+ },
986
+ {
987
+ inputs: [
988
+ {
989
+ internalType: "uint64",
990
+ name: "roleId",
991
+ type: "uint64",
992
+ },
993
+ {
994
+ internalType: "address",
995
+ name: "callerConfirmation",
996
+ type: "address",
997
+ },
998
+ ],
999
+ name: "renounceRole",
1000
+ outputs: [],
1001
+ stateMutability: "nonpayable",
1002
+ type: "function",
1003
+ },
1004
+ {
1005
+ inputs: [
1006
+ {
1007
+ internalType: "uint64",
1008
+ name: "roleId",
1009
+ type: "uint64",
1010
+ },
1011
+ {
1012
+ internalType: "address",
1013
+ name: "account",
1014
+ type: "address",
1015
+ },
1016
+ ],
1017
+ name: "revokeRole",
1018
+ outputs: [],
1019
+ stateMutability: "nonpayable",
1020
+ type: "function",
1021
+ },
1022
+ {
1023
+ inputs: [
1024
+ {
1025
+ internalType: "address",
1026
+ name: "target",
1027
+ type: "address",
1028
+ },
1029
+ {
1030
+ internalType: "bytes",
1031
+ name: "data",
1032
+ type: "bytes",
1033
+ },
1034
+ {
1035
+ internalType: "uint48",
1036
+ name: "when",
1037
+ type: "uint48",
1038
+ },
1039
+ ],
1040
+ name: "schedule",
1041
+ outputs: [
1042
+ {
1043
+ internalType: "bytes32",
1044
+ name: "operationId",
1045
+ type: "bytes32",
1046
+ },
1047
+ {
1048
+ internalType: "uint32",
1049
+ name: "nonce",
1050
+ type: "uint32",
1051
+ },
1052
+ ],
1053
+ stateMutability: "nonpayable",
1054
+ type: "function",
1055
+ },
1056
+ {
1057
+ inputs: [
1058
+ {
1059
+ internalType: "uint64",
1060
+ name: "roleId",
1061
+ type: "uint64",
1062
+ },
1063
+ {
1064
+ internalType: "uint32",
1065
+ name: "newDelay",
1066
+ type: "uint32",
1067
+ },
1068
+ ],
1069
+ name: "setGrantDelay",
1070
+ outputs: [],
1071
+ stateMutability: "nonpayable",
1072
+ type: "function",
1073
+ },
1074
+ {
1075
+ inputs: [
1076
+ {
1077
+ internalType: "uint64",
1078
+ name: "roleId",
1079
+ type: "uint64",
1080
+ },
1081
+ {
1082
+ internalType: "uint64",
1083
+ name: "admin",
1084
+ type: "uint64",
1085
+ },
1086
+ ],
1087
+ name: "setRoleAdmin",
1088
+ outputs: [],
1089
+ stateMutability: "nonpayable",
1090
+ type: "function",
1091
+ },
1092
+ {
1093
+ inputs: [
1094
+ {
1095
+ internalType: "uint64",
1096
+ name: "roleId",
1097
+ type: "uint64",
1098
+ },
1099
+ {
1100
+ internalType: "uint64",
1101
+ name: "guardian",
1102
+ type: "uint64",
1103
+ },
1104
+ ],
1105
+ name: "setRoleGuardian",
1106
+ outputs: [],
1107
+ stateMutability: "nonpayable",
1108
+ type: "function",
1109
+ },
1110
+ {
1111
+ inputs: [
1112
+ {
1113
+ internalType: "address",
1114
+ name: "target",
1115
+ type: "address",
1116
+ },
1117
+ {
1118
+ internalType: "uint32",
1119
+ name: "newDelay",
1120
+ type: "uint32",
1121
+ },
1122
+ ],
1123
+ name: "setTargetAdminDelay",
1124
+ outputs: [],
1125
+ stateMutability: "nonpayable",
1126
+ type: "function",
1127
+ },
1128
+ {
1129
+ inputs: [
1130
+ {
1131
+ internalType: "address",
1132
+ name: "target",
1133
+ type: "address",
1134
+ },
1135
+ {
1136
+ internalType: "bool",
1137
+ name: "closed",
1138
+ type: "bool",
1139
+ },
1140
+ ],
1141
+ name: "setTargetClosed",
1142
+ outputs: [],
1143
+ stateMutability: "nonpayable",
1144
+ type: "function",
1145
+ },
1146
+ {
1147
+ inputs: [
1148
+ {
1149
+ internalType: "address",
1150
+ name: "target",
1151
+ type: "address",
1152
+ },
1153
+ {
1154
+ internalType: "bytes4[]",
1155
+ name: "selectors",
1156
+ type: "bytes4[]",
1157
+ },
1158
+ {
1159
+ internalType: "uint64",
1160
+ name: "roleId",
1161
+ type: "uint64",
1162
+ },
1163
+ ],
1164
+ name: "setTargetFunctionRole",
1165
+ outputs: [],
1166
+ stateMutability: "nonpayable",
1167
+ type: "function",
1168
+ },
1169
+ {
1170
+ inputs: [
1171
+ {
1172
+ internalType: "address",
1173
+ name: "target",
1174
+ type: "address",
1175
+ },
1176
+ {
1177
+ internalType: "address",
1178
+ name: "newAuthority",
1179
+ type: "address",
1180
+ },
1181
+ ],
1182
+ name: "updateAuthority",
1183
+ outputs: [],
1184
+ stateMutability: "nonpayable",
1185
+ type: "function",
1186
+ },
1187
+ ] as const;
1188
+
1189
+ const _bytecode =
1190
+ "0x60806040523480156200001157600080fd5b5060405162002e2c38038062002e2c833981016040819052620000349162000481565b6001600160a01b0381166200006457604051630409d6d160e11b8152600060048201526024015b60405180910390fd5b6200007360008281806200007b565b50506200050b565b60006002600160401b03196001600160401b03861601620000bb5760405163061c6a4360e21b81526001600160401b03861660048201526024016200005b565b6001600160401b03851660009081526001602090815260408083206001600160a01b038816845290915281205465ffffffffffff1615908115620001ba5763ffffffff85166200010a620002d2565b620001169190620004c2565b905060405180604001604052808265ffffffffffff168152602001620001488663ffffffff16620002e460201b60201c565b6001600160701b039081169091526001600160401b03891660009081526001602090815260408083206001600160a01b038c16845282529091208351815494909201519092166601000000000000026001600160a01b031990931665ffffffffffff9091161791909117905562000264565b6001600160401b03871660009081526001602090815260408083206001600160a01b038a168452909152812054620002099166010000000000009091046001600160701b0316908690620002ed565b6001600160401b03891660009081526001602090815260408083206001600160a01b038c168452909152902080546001600160701b03909316660100000000000002600160301b600160a01b03199093169290921790915590505b6040805163ffffffff8616815265ffffffffffff831660208201528315158183015290516001600160a01b038816916001600160401b038a16917ff98448b987f1428e0e230e1f3c6e2ce15b5693eaf31827fbd0b1ec4b424ae7cf9181900360600190a35095945050505050565b6000620002df42620003a2565b905090565b63ffffffff1690565b60008080620003056001600160701b038716620003db565b90506000620003488563ffffffff168763ffffffff168463ffffffff1611620003305760006200033c565b6200033c8885620004eb565b63ffffffff16620003fc565b905063ffffffff81166200035b620002d2565b620003679190620004c2565b925063ffffffff8616602083901b67ffffffff0000000016604085901b6dffffffffffff000000000000000016171793505050935093915050565b600065ffffffffffff821115620003d7576040516306dfcc6560e41b815260306004820152602481018390526044016200005b565b5090565b600080620003f26001600160701b0384166200040f565b5090949350505050565b60008282188284110282185b9392505050565b60008080620004288462000422620002d2565b62000435565b9250925092509193909250565b6001600160501b03602083901c166001600160701b03831665ffffffffffff604085901c81169084168111156200046f5782828262000474565b816000805b9250925092509250925092565b6000602082840312156200049457600080fd5b81516001600160a01b03811681146200040857600080fd5b634e487b7160e01b600052601160045260246000fd5b65ffffffffffff818116838216019080821115620004e457620004e4620004ac565b5092915050565b63ffffffff828116828216039080821115620004e457620004e4620004ac565b612911806200051b6000396000f3fe6080604052600436106101e35760003560e01c80636d5115bd11610102578063b700961311610095578063d22b598911610064578063d22b59891461065e578063d6bb62c61461067e578063f801a6981461069e578063fe0776f5146106d857600080fd5b8063b7009613146105cc578063b7d2b16214610608578063cc1b6c8114610628578063d1f856ee1461063e57600080fd5b8063a166aa89116100d1578063a166aa8914610521578063a64d95ce14610551578063abd9bd2a14610571578063ac9650d81461059f57600080fd5b80636d5115bd146104ac57806375b238fc146104cc578063853551b8146104e157806394c7d7ee1461050157600080fd5b806330cae1871161017a5780634665096d116101495780634665096d146104195780634c1da1e21461042f578063529629521461044f578063530dd4561461046f57600080fd5b806330cae1871461036d5780633adc277a1461038d5780633ca7c02a146103c45780634136a33c146103df57600080fd5b806318ff183c116101b657806318ff183c146102c05780631cff79cd146102e057806325c471a0146102f35780633078f1141461031357600080fd5b806308d6122d146101e85780630b0a93ba1461020a57806312be87271461026b578063167bd395146102a0575b600080fd5b3480156101f457600080fd5b50610208610203366004612179565b6106f8565b005b34801561021657600080fd5b5061024e6102253660046121df565b6001600160401b0390811660009081526001602081905260409091200154600160401b90041690565b6040516001600160401b0390911681526020015b60405180910390f35b34801561027757600080fd5b5061028b6102863660046121df565b61074b565b60405163ffffffff9091168152602001610262565b3480156102ac57600080fd5b506102086102bb3660046121fa565b610786565b3480156102cc57600080fd5b506102086102db366004612238565b61079c565b61028b6102ee3660046122a7565b610803565b3480156102ff57600080fd5b5061020861030e36600461230f565b610933565b34801561031f57600080fd5b5061033361032e366004612354565b610955565b604051610262949392919065ffffffffffff948516815263ffffffff93841660208201529190921660408201529116606082015260800190565b34801561037957600080fd5b50610208610388366004612370565b6109ba565b34801561039957600080fd5b506103ad6103a83660046123a3565b6109cc565b60405165ffffffffffff9091168152602001610262565b3480156103d057600080fd5b5061024e6001600160401b0381565b3480156103eb57600080fd5b5061028b6103fa3660046123a3565b600090815260026020526040902054600160301b900463ffffffff1690565b34801561042557600080fd5b5062093a8061028b565b34801561043b57600080fd5b5061028b61044a3660046123bc565b6109ff565b34801561045b57600080fd5b5061020861046a366004612370565b610a2d565b34801561047b57600080fd5b5061024e61048a3660046121df565b6001600160401b03908116600090815260016020819052604090912001541690565b3480156104b857600080fd5b5061024e6104c73660046123ef565b610a3f565b3480156104d857600080fd5b5061024e600081565b3480156104ed57600080fd5b506102086104fc36600461241d565b610a7a565b34801561050d57600080fd5b5061020861051c3660046122a7565b610b11565b34801561052d57600080fd5b5061054161053c3660046123bc565b610bbd565b6040519015158152602001610262565b34801561055d57600080fd5b5061020861056c36600461243b565b610be5565b34801561057d57600080fd5b5061059161058c366004612465565b610bf7565b604051908152602001610262565b3480156105ab57600080fd5b506105bf6105ba3660046124c9565b610c30565b604051610262919061252e565b3480156105d857600080fd5b506105ec6105e73660046125a8565b610d17565b60408051921515835263ffffffff909116602083015201610262565b34801561061457600080fd5b50610208610623366004612354565b610d9e565b34801561063457600080fd5b506206978061028b565b34801561064a57600080fd5b506105ec610659366004612354565b610db5565b34801561066a57600080fd5b506102086106793660046125f3565b610e32565b34801561068a57600080fd5b5061028b610699366004612465565b610e44565b3480156106aa57600080fd5b506106be6106b9366004612611565b610f9e565b6040805192835263ffffffff909116602083015201610262565b3480156106e457600080fd5b506102086106f3366004612354565b6110e3565b61070061110c565b60005b828110156107445761073c8585858481811061072157610721612683565b90506020020160208101906107369190612699565b84611187565b600101610703565b5050505050565b6001600160401b03811660009081526001602081905260408220015461078090600160801b90046001600160701b0316611209565b92915050565b61078e61110c565b6107988282611228565b5050565b6107a461110c565b604051637a9e5e4b60e01b81526001600160a01b038281166004830152831690637a9e5e4b90602401600060405180830381600087803b1580156107e757600080fd5b505af11580156107fb573d6000803e3d6000fd5b505050505050565b60003381806108148388888861129a565b915091508115801561082a575063ffffffff8116155b1561087d57828761083b88886112ed565b6040516381c6f24b60e01b81526001600160a01b0393841660048201529290911660248301526001600160e01b03191660448201526064015b60405180910390fd5b600061088b84898989610bf7565b9050600063ffffffff83161515806108b257506108a7826109cc565b65ffffffffffff1615155b156108c3576108c082611305565b90505b6003546108d98a6108d48b8b6112ed565b611405565b6003819055506109218a8a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250349250611447915050565b506003559450505050505b9392505050565b61093b61110c565b61094f83836109498661074b565b846114eb565b50505050565b6001600160401b03821660009081526001602090815260408083206001600160a01b03851684529091528120805465ffffffffffff8116929182918291906109ac90600160301b90046001600160701b0316611736565b969991985096509350505050565b6109c261110c565b6107988282611759565b60008181526002602052604081205465ffffffffffff166109ec816117fd565b6109f6578061092c565b60009392505050565b6001600160a01b038116600090815260208190526040812060010154610780906001600160701b0316611209565b610a3561110c565b610798828261182c565b6001600160a01b0382166000908152602081815260408083206001600160e01b0319851684529091529020546001600160401b031692915050565b610a8261110c565b6001600160401b0383161580610aa057506001600160401b03838116145b15610ac95760405163061c6a4360e21b81526001600160401b0384166004820152602401610874565b826001600160401b03167f1256f5b5ecb89caec12db449738f2fbcd1ba5806cf38f35413f4e5c15bf6a4508383604051610b049291906126df565b60405180910390a2505050565b60408051638fb3603760e01b80825291513392918391638fb36037916004808201926020929091908290030181865afa158015610b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7691906126fb565b6001600160e01b03191614610ba957604051630641fee960e31b81526001600160a01b0382166004820152602401610874565b610744610bb885838686610bf7565b611305565b6001600160a01b0316600090815260208190526040902060010154600160701b900460ff1690565b610bed61110c565b61079882826118de565b600084848484604051602001610c109493929190612718565b604051602081830303815290604052805190602001209050949350505050565b604080516000815260208101909152606090826001600160401b03811115610c5a57610c5a612785565b604051908082528060200260200182016040528015610c8d57816020015b6060815260200190600190039081610c785790505b50915060005b83811015610d0f57610cea30868684818110610cb157610cb1612683565b9050602002810190610cc3919061279b565b85604051602001610cd6939291906127e1565b6040516020818303038152906040526119ef565b838281518110610cfc57610cfc612683565b6020908102919091010152600101610c93565b505092915050565b600080610d2384610bbd565b15610d3357506000905080610d96565b306001600160a01b03861603610d5857610d4d8484611a65565b600091509150610d96565b6000610d648585610a3f565b9050600080610d738389610db5565b9150915081610d8457600080610d8e565b63ffffffff811615815b945094505050505b935093915050565b610da661110c565b610db08282611a7c565b505050565b60008067fffffffffffffffe196001600160401b03851601610ddd5750600190506000610e2b565b600080610dea8686610955565b5050915091508165ffffffffffff16600014158015610e205750610e0c611b69565b65ffffffffffff168265ffffffffffff1611155b93509150610e2b9050565b9250929050565b610e3a61110c565b6107988282611b79565b60003381610e5285856112ed565b90506000610e6288888888610bf7565b60008181526002602052604081205491925065ffffffffffff9091169003610ea05760405163060a299b60e41b815260048101829052602401610874565b826001600160a01b0316886001600160a01b031614610f3c576000610ec6600085610db5565b5090506000610ee1610edb6102258b87610a3f565b86610db5565b50905081158015610ef0575080155b15610f3957604051630ff89d4760e21b81526001600160a01b038087166004830152808c1660248301528a1660448201526001600160e01b031985166064820152608401610874565b50505b600081815260026020526040808220805465ffffffffffff1916908190559051600160301b90910463ffffffff1691829184917fbd9ac67a6e2f6463b80927326310338bcbb4bdb7936ce1365ea3e01067e7b9f791a398975050505050505050565b6000803381610faf8289898961129a565b91505060008163ffffffff16610fc3611b69565b610fcd9190612808565b905063ffffffff82161580611004575060008665ffffffffffff1611801561100457508065ffffffffffff168665ffffffffffff16105b1561101557828961083b8a8a6112ed565b61102f8665ffffffffffff168265ffffffffffff16611c36565b955061103d838a8a8a610bf7565b945061104885611c46565b60008581526002602052604090819020805465ffffffffffff891669ffffffffffffffffffff19821617600160301b9182900463ffffffff90811660010190811692830291909117909255915190955086907f82a2da5dee54ea8021c6545b4444620291e07ee83be6dd57edb175062715f3b4906110cf908a9088908f908f908f9061282e565b60405180910390a350505094509492505050565b6001600160a01b0381163314610da657604051635f159e6360e01b815260040160405180910390fd5b3360008061111b838236611c93565b9150915081610db0578063ffffffff1660000361117757600061113e8136611d5d565b5060405163f07e038f60e01b81526001600160a01b03871660048201526001600160401b03821660248201529092506044019050610874565b61094f610bb88430600036610bf7565b6001600160a01b0383166000818152602081815260408083206001600160e01b0319871680855290835292819020805467ffffffffffffffff19166001600160401b038716908117909155905192835292917f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151910160405180910390a3505050565b60008061121e836001600160701b0316611736565b5090949350505050565b6001600160a01b038216600081815260208190526040908190206001018054841515600160701b0260ff60701b19909116179055517f90d4e7bb7e5d933792b3562e1741306f8be94837e1348dacef9b6f1df56eb1389061128e90841515815260200190565b60405180910390a25050565b600080306001600160a01b038616036112c1576112b8868585611c93565b915091506112e4565b600483106112dd576112d886866105e787876112ed565b6112b8565b5060009050805b94509492505050565b60006112fc600482848661275b565b61092c91612874565b60008181526002602052604081205465ffffffffffff811690600160301b900463ffffffff1681830361134e5760405163060a299b60e41b815260048101859052602401610874565b611356611b69565b65ffffffffffff168265ffffffffffff16111561138957604051630c65b5bd60e11b815260048101859052602401610874565b611392826117fd565b156113b357604051631e2975b960e21b815260048101859052602401610874565b600084815260026020526040808220805465ffffffffffff191690555163ffffffff83169186917f76a2a46953689d4861a5d3f6ed883ad7e6af674a21f8e162707159fc9dde614d9190a39392505050565b604080516001600160a01b03939093166020808501919091526001600160e01b0319929092168382015280518084038201815260609093019052815191012090565b6060814710156114735760405163cf47918160e01b815247600482015260248101839052604401610874565b600080856001600160a01b0316848660405161148f91906128a2565b60006040518083038185875af1925050503d80600081146114cc576040519150601f19603f3d011682016040523d82523d6000602084013e6114d1565b606091505b50915091506114e1868383611f4f565b9695505050505050565b600067fffffffffffffffe196001600160401b0386160161152a5760405163061c6a4360e21b81526001600160401b0386166004820152602401610874565b6001600160401b03851660009081526001602090815260408083206001600160a01b038816845290915281205465ffffffffffff161590811561161c578463ffffffff16611576611b69565b6115809190612808565b905060405180604001604052808265ffffffffffff1681526020016115ae8663ffffffff1663ffffffff1690565b6001600160701b039081169091526001600160401b03891660009081526001602090815260408083206001600160a01b038c1684528252909120835181549490920151909216600160301b026001600160a01b031990931665ffffffffffff909116179190911790556116c8565b6001600160401b03871660009081526001602090815260408083206001600160a01b038a16845290915281205461166691600160301b9091046001600160701b0316908690611fab565b6001600160401b03891660009081526001602090815260408083206001600160a01b038c168452909152902080546001600160701b03909316600160301b0273ffffffffffffffffffffffffffff000000000000199093169290921790915590505b6040805163ffffffff8616815265ffffffffffff831660208201528315158183015290516001600160a01b038816916001600160401b038a16917ff98448b987f1428e0e230e1f3c6e2ce15b5693eaf31827fbd0b1ec4b424ae7cf9181900360600190a35095945050505050565b600080600061174c84611747611b69565b612055565b9250925092509193909250565b6001600160401b038216158061177757506001600160401b03828116145b156117a05760405163061c6a4360e21b81526001600160401b0383166004820152602401610874565b6001600160401b038281166000818152600160208190526040808320909101805467ffffffffffffffff19169486169485179055517f1fd6dd7631312dfac2205b52913f99de03b4d7e381d5d27d3dbfe0713e6e63409190a35050565b6000611807611b69565b65ffffffffffff1661181c62093a8084612808565b65ffffffffffff16111592915050565b6001600160401b038216158061184a57506001600160401b03828116145b156118735760405163061c6a4360e21b81526001600160401b0383166004820152602401610874565b6001600160401b03828116600081815260016020819052604080832090910180546fffffffffffffffff00000000000000001916600160401b958716958602179055517f7a8059630b897b5de4c08ade69f8b90c3ead1f8596d62d10b6c4d14a0afb4ae29190a35050565b67fffffffffffffffe196001600160401b0383160161191b5760405163061c6a4360e21b81526001600160401b0383166004820152602401610874565b6001600160401b03821660009081526001602081905260408220015461195590600160801b90046001600160701b03168362069780611fab565b6001600160401b0385166000818152600160208190526040918290200180546001600160701b03909516600160801b026dffffffffffffffffffffffffffff60801b199095169490941790935591519092507ffeb69018ee8b8fd50ea86348f1267d07673379f72cffdeccec63853ee8ce8b4890610b04908590859063ffffffff92909216825265ffffffffffff16602082015260400190565b6060600080846001600160a01b031684604051611a0c91906128a2565b600060405180830381855af49150503d8060008114611a47576040519150601f19603f3d011682016040523d82523d6000602084013e611a4c565b606091505b5091509150611a5c858383611f4f565b95945050505050565b6000611a718383611405565b600354149392505050565b600067fffffffffffffffe196001600160401b03841601611abb5760405163061c6a4360e21b81526001600160401b0384166004820152602401610874565b6001600160401b03831660009081526001602090815260408083206001600160a01b038616845290915281205465ffffffffffff169003611afe57506000610780565b6001600160401b03831660008181526001602090815260408083206001600160a01b038716808552925280832080546001600160a01b0319169055519092917ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c16691a350600192915050565b6000611b74426120a2565b905090565b6001600160a01b038216600090815260208190526040812060010154611bac906001600160701b03168362069780611fab565b6001600160a01b0385166000818152602081815260409182902060010180546dffffffffffffffffffffffffffff19166001600160701b039690961695909517909455805163ffffffff8716815265ffffffffffff841694810194909452919350917fa56b76017453f399ec2327ba00375dbfb1fd070ff854341ad6191e6a2e2de19c9101610b04565b600082821882841102821861092c565b60008181526002602052604090205465ffffffffffff168015801590611c725750611c70816117fd565b155b156107985760405163813e945960e01b815260048101839052602401610874565b6000806004831015611caa57506000905080610d96565b306001600160a01b03861603611ccd57610d4d30611cc886866112ed565b611a65565b6000806000611cdc8787611d5d565b92509250925082158015611cf45750611cf430610bbd565b15611d085760008094509450505050610d96565b600080611d15848b610db5565b9150915081611d2f57600080965096505050505050610d96565b611d458363ffffffff168263ffffffff16611c36565b63ffffffff8116159b909a5098505050505050505050565b600080806004841015611d7857506000915081905080611f48565b6000611d8486866112ed565b90506001600160e01b031981166310a6aa3760e31b1480611db557506001600160e01b031981166330cae18760e01b145b80611dd057506001600160e01b0319811663294b14a960e11b145b80611deb57506001600160e01b03198116635326cae760e11b145b80611e0657506001600160e01b0319811663d22b598960e01b145b15611e1c57600160008093509350935050611f48565b6001600160e01b0319811663063fc60f60e21b1480611e4b57506001600160e01b0319811663167bd39560e01b145b80611e6657506001600160e01b031981166308d6122d60e01b145b15611ea8576000611e7b60246004888a61275b565b810190611e8891906123bc565b90506000611e95826109ff565b60019650600095509350611f4892505050565b6001600160e01b0319811663012e238d60e51b1480611ed757506001600160e01b03198116635be958b160e11b145b15611f32576000611eec60246004888a61275b565b810190611ef991906121df565b90506001611f23826001600160401b03908116600090815260016020819052604090912001541690565b60009450945094505050611f48565b6000611f3e3083610a3f565b6000935093509350505b9250925092565b606082611f6457611f5f826120d9565b61092c565b8151158015611f7b57506001600160a01b0384163b155b15611fa457604051639996b31560e01b81526001600160a01b0385166004820152602401610874565b508061092c565b6000806000611fc2866001600160701b0316611209565b90506000611fff8563ffffffff168763ffffffff168463ffffffff1611611fea576000611ff4565b611ff488856128be565b63ffffffff16611c36565b90508063ffffffff16612010611b69565b61201a9190612808565b925063ffffffff8616602083901b67ffffffff0000000016604085901b6dffffffffffff000000000000000016171793505050935093915050565b69ffffffffffffffffffff602083901c166001600160701b03831665ffffffffffff604085901c811690841681111561209057828282612095565b816000805b9250925092509250925092565b600065ffffffffffff8211156120d5576040516306dfcc6560e41b81526030600482015260248101839052604401610874565b5090565b8051156120e857805160208201fd5b60405163d6bda27560e01b815260040160405180910390fd5b50565b6001600160a01b038116811461210157600080fd5b60008083601f84011261212b57600080fd5b5081356001600160401b0381111561214257600080fd5b6020830191508360208260051b8501011115610e2b57600080fd5b80356001600160401b038116811461217457600080fd5b919050565b6000806000806060858703121561218f57600080fd5b843561219a81612104565b935060208501356001600160401b038111156121b557600080fd5b6121c187828801612119565b90945092506121d490506040860161215d565b905092959194509250565b6000602082840312156121f157600080fd5b61092c8261215d565b6000806040838503121561220d57600080fd5b823561221881612104565b91506020830135801515811461222d57600080fd5b809150509250929050565b6000806040838503121561224b57600080fd5b823561225681612104565b9150602083013561222d81612104565b60008083601f84011261227857600080fd5b5081356001600160401b0381111561228f57600080fd5b602083019150836020828501011115610e2b57600080fd5b6000806000604084860312156122bc57600080fd5b83356122c781612104565b925060208401356001600160401b038111156122e257600080fd5b6122ee86828701612266565b9497909650939450505050565b803563ffffffff8116811461217457600080fd5b60008060006060848603121561232457600080fd5b61232d8461215d565b9250602084013561233d81612104565b915061234b604085016122fb565b90509250925092565b6000806040838503121561236757600080fd5b6122568361215d565b6000806040838503121561238357600080fd5b61238c8361215d565b915061239a6020840161215d565b90509250929050565b6000602082840312156123b557600080fd5b5035919050565b6000602082840312156123ce57600080fd5b813561092c81612104565b6001600160e01b03198116811461210157600080fd5b6000806040838503121561240257600080fd5b823561240d81612104565b9150602083013561222d816123d9565b60008060006040848603121561243257600080fd5b6122c78461215d565b6000806040838503121561244e57600080fd5b6124578361215d565b915061239a602084016122fb565b6000806000806060858703121561247b57600080fd5b843561248681612104565b9350602085013561249681612104565b925060408501356001600160401b038111156124b157600080fd5b6124bd87828801612266565b95989497509550505050565b600080602083850312156124dc57600080fd5b82356001600160401b038111156124f257600080fd5b6124fe85828601612119565b90969095509350505050565b60005b8381101561252557818101518382015260200161250d565b50506000910152565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561259b57878503603f190184528151805180875261257c818989018a850161250a565b601f01601f191695909501860194509285019290850190600101612555565b5092979650505050505050565b6000806000606084860312156125bd57600080fd5b83356125c881612104565b925060208401356125d881612104565b915060408401356125e8816123d9565b809150509250925092565b6000806040838503121561260657600080fd5b823561245781612104565b6000806000806060858703121561262757600080fd5b843561263281612104565b935060208501356001600160401b0381111561264d57600080fd5b61265987828801612266565b909450925050604085013565ffffffffffff8116811461267857600080fd5b939692955090935050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156126ab57600080fd5b813561092c816123d9565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6020815260006126f36020830184866126b6565b949350505050565b60006020828403121561270d57600080fd5b815161092c816123d9565b6001600160a01b038581168252841660208201526060604082018190526000906114e190830184866126b6565b634e487b7160e01b600052601160045260246000fd5b6000808585111561276b57600080fd5b8386111561277857600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b6000808335601e198436030181126127b257600080fd5b8301803591506001600160401b038211156127cc57600080fd5b602001915036819003821315610e2b57600080fd5b8284823760008382016000815283516127fe81836020880161250a565b0195945050505050565b65ffffffffffff81811683821601908082111561282757612827612745565b5092915050565b65ffffffffffff861681526001600160a01b0385811660208301528416604082015260806060820181905260009061286990830184866126b6565b979650505050505050565b6001600160e01b03198135818116916004851015610d0f5760049490940360031b84901b1690921692915050565b600082516128b481846020870161250a565b9190910192915050565b63ffffffff8281168282160390808211156128275761282761274556fea264697066735822122081cb68b0a785c9112ecafc7557a7cf47ffc208a84b3c60b008005f9f66eac44964736f6c63430008180033";
1191
+
1192
+ type AccessManagerConstructorParams =
1193
+ | [signer?: Signer]
1194
+ | ConstructorParameters<typeof ContractFactory>;
1195
+
1196
+ const isSuperArgs = (
1197
+ xs: AccessManagerConstructorParams
1198
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1199
+
1200
+ export class AccessManager__factory extends ContractFactory {
1201
+ constructor(...args: AccessManagerConstructorParams) {
1202
+ if (isSuperArgs(args)) {
1203
+ super(...args);
1204
+ } else {
1205
+ super(_abi, _bytecode, args[0]);
1206
+ }
1207
+ }
1208
+
1209
+ override getDeployTransaction(
1210
+ initialAdmin: AddressLike,
1211
+ overrides?: NonPayableOverrides & { from?: string }
1212
+ ): Promise<ContractDeployTransaction> {
1213
+ return super.getDeployTransaction(initialAdmin, overrides || {});
1214
+ }
1215
+ override deploy(
1216
+ initialAdmin: AddressLike,
1217
+ overrides?: NonPayableOverrides & { from?: string }
1218
+ ) {
1219
+ return super.deploy(initialAdmin, overrides || {}) as Promise<
1220
+ AccessManager & {
1221
+ deploymentTransaction(): ContractTransactionResponse;
1222
+ }
1223
+ >;
1224
+ }
1225
+ override connect(runner: ContractRunner | null): AccessManager__factory {
1226
+ return super.connect(runner) as AccessManager__factory;
1227
+ }
1228
+
1229
+ static readonly bytecode = _bytecode;
1230
+ static readonly abi = _abi;
1231
+ static createInterface(): AccessManagerInterface {
1232
+ return new Interface(_abi) as AccessManagerInterface;
1233
+ }
1234
+ static connect(
1235
+ address: string,
1236
+ runner?: ContractRunner | null
1237
+ ): AccessManager {
1238
+ return new Contract(address, _abi, runner) as unknown as AccessManager;
1239
+ }
1240
+ }