@pendle/core-v2 4.0.6 → 4.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 (116) hide show
  1. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol/PendleAaveV3SY.dbg.json +1 -1
  2. package/build/artifacts/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol/PendleAaveV3SY.json +2 -2
  3. package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthSY.sol/PendleWEEthSY.dbg.json +1 -1
  4. package/build/artifacts/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthSY.sol/PendleWEEthSY.json +2 -2
  5. package/build/artifacts/contracts/core/StandardizedYield/implementations/KelpDAO/PendleRsETHSY.sol/PendleRsETHSY.dbg.json +1 -1
  6. package/build/artifacts/contracts/core/StandardizedYield/implementations/KelpDAO/PendleRsETHSY.sol/PendleRsETHSY.json +20 -2
  7. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleL2LRTSY.sol/PendleL2LRTSY.dbg.json +4 -0
  8. package/build/artifacts/contracts/core/StandardizedYield/implementations/PendleL2LRTSY.sol/PendleL2LRTSY.json +1054 -0
  9. package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHSY.sol/PendleEzETHSY.dbg.json +4 -0
  10. package/build/artifacts/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHSY.sol/PendleEzETHSY.json +1141 -0
  11. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleRswETHSY.sol/PendleRswETHSY.dbg.json +4 -0
  12. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleRswETHSY.sol/PendleRswETHSY.json +1044 -0
  13. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.dbg.json +1 -1
  14. package/build/artifacts/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol/SwETHSY.json +2 -2
  15. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.dbg.json +1 -1
  16. package/build/artifacts/contracts/interfaces/IPActionMarketCoreStatic.sol/IPActionMarketCoreStatic.json +0 -45
  17. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.dbg.json +1 -1
  18. package/build/artifacts/contracts/interfaces/IPActionMintRedeemStatic.sol/IPActionMintRedeemStatic.json +0 -69
  19. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  20. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.json +0 -26
  21. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  22. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.json +0 -140
  23. package/build/artifacts/contracts/interfaces/Renzo/IRenzoOracle.sol/IRenzoOracle.dbg.json +4 -0
  24. package/build/artifacts/contracts/interfaces/Renzo/IRenzoOracle.sol/IRenzoOracle.json +64 -0
  25. package/build/artifacts/contracts/interfaces/Renzo/IRenzoRestakeManager.sol/IRenzoRestakeManager.dbg.json +4 -0
  26. package/build/artifacts/contracts/interfaces/Renzo/IRenzoRestakeManager.sol/IRenzoRestakeManager.json +102 -0
  27. package/build/artifacts/contracts/interfaces/Swell/IRswETH.sol/IRswETH.dbg.json +4 -0
  28. package/build/artifacts/contracts/interfaces/Swell/IRswETH.sol/IRswETH.json +44 -0
  29. package/build/artifacts/contracts/interfaces/Swell/ISwETH.sol/ISwETH.dbg.json +4 -0
  30. package/build/artifacts/contracts/interfaces/{ISwETH.sol → Swell/ISwETH.sol}/ISwETH.json +8 -8
  31. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +4 -0
  32. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +30 -0
  33. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +4 -0
  34. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +307 -0
  35. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +4 -0
  36. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +409 -0
  37. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +4 -0
  38. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +1352 -0
  39. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +4 -0
  40. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +247 -0
  41. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +4 -0
  42. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +202 -0
  43. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +4 -0
  44. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +93 -0
  45. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +4 -0
  46. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.json +10 -0
  47. package/build/artifacts/contracts/oracles/PendleRedStoneRateOracle.sol/PendleRedStoneRateOracle.dbg.json +4 -0
  48. package/build/artifacts/contracts/oracles/PendleRedStoneRateOracle.sol/PendleRedStoneRateOracle.json +66 -0
  49. package/contracts/core/StandardizedYield/implementations/AaveV3/PendleAaveV3SY.sol +1 -1
  50. package/contracts/core/StandardizedYield/implementations/EtherFi/PendleWEEthSY.sol +1 -1
  51. package/contracts/core/StandardizedYield/implementations/KelpDAO/PendleRsETHSY.sol +18 -9
  52. package/contracts/core/StandardizedYield/implementations/PendleL2LRTSY.sol +93 -0
  53. package/contracts/core/StandardizedYield/implementations/Renzo/PendleEzETHSY.sol +139 -0
  54. package/contracts/core/StandardizedYield/implementations/Swell/PendleRswETHSY.sol +101 -0
  55. package/contracts/core/StandardizedYield/implementations/Swell/PendleSwETH.sol +1 -1
  56. package/contracts/interfaces/IPActionMarketCoreStatic.sol +8 -17
  57. package/contracts/interfaces/IPActionMintRedeemStatic.sol +4 -16
  58. package/contracts/interfaces/IPActionStorageStatic.sol +0 -4
  59. package/contracts/interfaces/Renzo/IRenzoOracle.sol +8 -0
  60. package/contracts/interfaces/Renzo/IRenzoRestakeManager.sol +14 -0
  61. package/contracts/interfaces/Swell/IRswETH.sol +10 -0
  62. package/contracts/interfaces/{ISwETH.sol → Swell/ISwETH.sol} +2 -2
  63. package/contracts/offchain-helpers/router-static/PendleRouterStatic.sol +19 -0
  64. package/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol +109 -0
  65. package/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol +182 -0
  66. package/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol +672 -0
  67. package/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol +116 -0
  68. package/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol +64 -0
  69. package/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol +55 -0
  70. package/contracts/offchain-helpers/router-static/base/StorageLayout.sol +20 -0
  71. package/contracts/oracles/PendleRedStoneRateOracle.sol +23 -0
  72. package/deployments/1-markets/EZETH-JUNE2024.json +11 -0
  73. package/deployments/1-markets/RSETH-KELP-JUNE2024.json +11 -0
  74. package/deployments/42161-markets/RSETH-APR2024-ARBITRUM.json +11 -0
  75. package/deployments/42161-markets/WEETH-APR2024.json +11 -0
  76. package/deployments/merkle-distribution/2024-01-25.json +9615 -0
  77. package/package.json +1 -1
  78. package/typechain-types/IPActionMarketCoreStatic.ts +18 -63
  79. package/typechain-types/IPActionMintRedeemStatic.ts +10 -102
  80. package/typechain-types/IPActionStorageStatic.ts +0 -55
  81. package/typechain-types/IPRouterStatic.ts +28 -220
  82. package/typechain-types/IRenzoOracle.ts +152 -0
  83. package/typechain-types/IRenzoRestakeManager.ts +219 -0
  84. package/typechain-types/IRswETH.ts +138 -0
  85. package/typechain-types/ISwETH.ts +24 -9
  86. package/typechain-types/PendleEzETHSY.ts +1471 -0
  87. package/typechain-types/PendleL2LRTSY.ts +1323 -0
  88. package/typechain-types/PendleRedStoneRateOracle.ts +113 -0
  89. package/typechain-types/PendleRsETHSY.ts +21 -0
  90. package/typechain-types/PendleRswETHSY.ts +1294 -0
  91. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  92. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  93. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  94. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  95. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  96. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  97. package/typechain-types/factories/IPActionMarketCoreStatic__factory.ts +0 -45
  98. package/typechain-types/factories/IPActionMintRedeemStatic__factory.ts +0 -69
  99. package/typechain-types/factories/IPActionStorageStatic__factory.ts +0 -26
  100. package/typechain-types/factories/IPRouterStatic__factory.ts +0 -140
  101. package/typechain-types/factories/IRenzoOracle__factory.ts +76 -0
  102. package/typechain-types/factories/IRenzoRestakeManager__factory.ts +121 -0
  103. package/typechain-types/factories/IRswETH__factory.ts +56 -0
  104. package/typechain-types/factories/ISwETH__factory.ts +7 -7
  105. package/typechain-types/factories/PendleAaveV3SY__factory.ts +1 -1
  106. package/typechain-types/factories/PendleEzETHSY__factory.ts +1218 -0
  107. package/typechain-types/factories/PendleL2LRTSY__factory.ts +1139 -0
  108. package/typechain-types/factories/PendleRedStoneRateOracle__factory.ts +142 -0
  109. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  110. package/typechain-types/factories/PendleRsETHSY__factory.ts +23 -1
  111. package/typechain-types/factories/PendleRswETHSY__factory.ts +1117 -0
  112. package/typechain-types/factories/PendleWEEthSY__factory.ts +1 -1
  113. package/typechain-types/factories/SwETHSY__factory.ts +1 -1
  114. package/typechain-types/hardhat.d.ts +135 -0
  115. package/typechain-types/index.ts +28 -0
  116. package/build/artifacts/contracts/interfaces/ISwETH.sol/ISwETH.dbg.json +0 -4
@@ -85,11 +85,6 @@ const _abi = [
85
85
  name: "netTokenDesired",
86
86
  type: "uint256",
87
87
  },
88
- {
89
- internalType: "address",
90
- name: "bulk",
91
- type: "address",
92
- },
93
88
  {
94
89
  internalType: "uint256",
95
90
  name: "netPtDesired",
@@ -276,11 +271,6 @@ const _abi = [
276
271
  name: "netTokenIn",
277
272
  type: "uint256",
278
273
  },
279
- {
280
- internalType: "address",
281
- name: "bulk",
282
- type: "address",
283
- },
284
274
  ],
285
275
  name: "addLiquiditySingleTokenKeepYtStatic",
286
276
  outputs: [
@@ -325,11 +315,6 @@ const _abi = [
325
315
  name: "netTokenIn",
326
316
  type: "uint256",
327
317
  },
328
- {
329
- internalType: "address",
330
- name: "bulk",
331
- type: "address",
332
- },
333
318
  ],
334
319
  name: "addLiquiditySingleTokenStatic",
335
320
  outputs: [
@@ -482,11 +467,6 @@ const _abi = [
482
467
  name: "tokenIn",
483
468
  type: "address",
484
469
  },
485
- {
486
- internalType: "address",
487
- name: "bulk",
488
- type: "address",
489
- },
490
470
  {
491
471
  internalType: "uint256",
492
472
  name: "netSyOut",
@@ -504,63 +484,6 @@ const _abi = [
504
484
  stateMutability: "view",
505
485
  type: "function",
506
486
  },
507
- {
508
- inputs: [],
509
- name: "getBulkSellerFactory",
510
- outputs: [
511
- {
512
- internalType: "address",
513
- name: "",
514
- type: "address",
515
- },
516
- ],
517
- stateMutability: "view",
518
- type: "function",
519
- },
520
- {
521
- inputs: [
522
- {
523
- internalType: "address",
524
- name: "token",
525
- type: "address",
526
- },
527
- {
528
- internalType: "address",
529
- name: "SY",
530
- type: "address",
531
- },
532
- {
533
- internalType: "uint256",
534
- name: "netTokenIn",
535
- type: "uint256",
536
- },
537
- {
538
- internalType: "uint256",
539
- name: "netSyIn",
540
- type: "uint256",
541
- },
542
- ],
543
- name: "getBulkSellerInfo",
544
- outputs: [
545
- {
546
- internalType: "address",
547
- name: "bulk",
548
- type: "address",
549
- },
550
- {
551
- internalType: "uint256",
552
- name: "totalToken",
553
- type: "uint256",
554
- },
555
- {
556
- internalType: "uint256",
557
- name: "totalSy",
558
- type: "uint256",
559
- },
560
- ],
561
- stateMutability: "view",
562
- type: "function",
563
- },
564
487
  {
565
488
  inputs: [],
566
489
  name: "getDefaultApproxParams",
@@ -1247,11 +1170,6 @@ const _abi = [
1247
1170
  name: "netTokenIn",
1248
1171
  type: "uint256",
1249
1172
  },
1250
- {
1251
- internalType: "address",
1252
- name: "bulk",
1253
- type: "address",
1254
- },
1255
1173
  ],
1256
1174
  name: "mintPyFromTokenStatic",
1257
1175
  outputs: [
@@ -1281,11 +1199,6 @@ const _abi = [
1281
1199
  name: "netTokenIn",
1282
1200
  type: "uint256",
1283
1201
  },
1284
- {
1285
- internalType: "address",
1286
- name: "bulk",
1287
- type: "address",
1288
- },
1289
1202
  ],
1290
1203
  name: "mintSyFromTokenStatic",
1291
1204
  outputs: [
@@ -1377,11 +1290,6 @@ const _abi = [
1377
1290
  name: "tokenOut",
1378
1291
  type: "address",
1379
1292
  },
1380
- {
1381
- internalType: "address",
1382
- name: "bulk",
1383
- type: "address",
1384
- },
1385
1293
  ],
1386
1294
  name: "redeemPyToTokenStatic",
1387
1295
  outputs: [
@@ -1411,11 +1319,6 @@ const _abi = [
1411
1319
  name: "netSyIn",
1412
1320
  type: "uint256",
1413
1321
  },
1414
- {
1415
- internalType: "address",
1416
- name: "bulk",
1417
- type: "address",
1418
- },
1419
1322
  ],
1420
1323
  name: "redeemSyToTokenStatic",
1421
1324
  outputs: [
@@ -1474,11 +1377,6 @@ const _abi = [
1474
1377
  name: "tokenOut",
1475
1378
  type: "address",
1476
1379
  },
1477
- {
1478
- internalType: "address",
1479
- name: "bulk",
1480
- type: "address",
1481
- },
1482
1380
  ],
1483
1381
  name: "removeLiquidityDualTokenAndPtStatic",
1484
1382
  outputs: [
@@ -1626,11 +1524,6 @@ const _abi = [
1626
1524
  name: "tokenOut",
1627
1525
  type: "address",
1628
1526
  },
1629
- {
1630
- internalType: "address",
1631
- name: "bulk",
1632
- type: "address",
1633
- },
1634
1527
  ],
1635
1528
  name: "removeLiquiditySingleTokenStatic",
1636
1529
  outputs: [
@@ -1678,19 +1571,6 @@ const _abi = [
1678
1571
  stateMutability: "view",
1679
1572
  type: "function",
1680
1573
  },
1681
- {
1682
- inputs: [
1683
- {
1684
- internalType: "address",
1685
- name: "_bulkSellerFactory",
1686
- type: "address",
1687
- },
1688
- ],
1689
- name: "setBulkSellerFactory",
1690
- outputs: [],
1691
- stateMutability: "nonpayable",
1692
- type: "function",
1693
- },
1694
1574
  {
1695
1575
  inputs: [
1696
1576
  {
@@ -1812,11 +1692,6 @@ const _abi = [
1812
1692
  name: "tokenOut",
1813
1693
  type: "address",
1814
1694
  },
1815
- {
1816
- internalType: "address",
1817
- name: "bulk",
1818
- type: "address",
1819
- },
1820
1695
  ],
1821
1696
  name: "swapExactPtForTokenStatic",
1822
1697
  outputs: [
@@ -1988,11 +1863,6 @@ const _abi = [
1988
1863
  name: "amountTokenIn",
1989
1864
  type: "uint256",
1990
1865
  },
1991
- {
1992
- internalType: "address",
1993
- name: "bulk",
1994
- type: "address",
1995
- },
1996
1866
  ],
1997
1867
  name: "swapExactTokenForPtStatic",
1998
1868
  outputs: [
@@ -2042,11 +1912,6 @@ const _abi = [
2042
1912
  name: "amountTokenIn",
2043
1913
  type: "uint256",
2044
1914
  },
2045
- {
2046
- internalType: "address",
2047
- name: "bulk",
2048
- type: "address",
2049
- },
2050
1915
  ],
2051
1916
  name: "swapExactTokenForYtStatic",
2052
1917
  outputs: [
@@ -2194,11 +2059,6 @@ const _abi = [
2194
2059
  name: "tokenOut",
2195
2060
  type: "address",
2196
2061
  },
2197
- {
2198
- internalType: "address",
2199
- name: "bulk",
2200
- type: "address",
2201
- },
2202
2062
  ],
2203
2063
  name: "swapExactYtForTokenStatic",
2204
2064
  outputs: [
@@ -0,0 +1,76 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Signer, utils } from "ethers";
6
+ import { Provider } from "@ethersproject/providers";
7
+ import type { IRenzoOracle, IRenzoOracleInterface } from "../IRenzoOracle";
8
+
9
+ const _abi = [
10
+ {
11
+ inputs: [
12
+ {
13
+ internalType: "uint256",
14
+ name: "tvl",
15
+ type: "uint256",
16
+ },
17
+ {
18
+ internalType: "uint256",
19
+ name: "value",
20
+ type: "uint256",
21
+ },
22
+ {
23
+ internalType: "uint256",
24
+ name: "supply",
25
+ type: "uint256",
26
+ },
27
+ ],
28
+ name: "calculateMintAmount",
29
+ outputs: [
30
+ {
31
+ internalType: "uint256",
32
+ name: "",
33
+ type: "uint256",
34
+ },
35
+ ],
36
+ stateMutability: "view",
37
+ type: "function",
38
+ },
39
+ {
40
+ inputs: [
41
+ {
42
+ internalType: "address",
43
+ name: "token",
44
+ type: "address",
45
+ },
46
+ {
47
+ internalType: "uint256",
48
+ name: "amount",
49
+ type: "uint256",
50
+ },
51
+ ],
52
+ name: "lookupTokenValue",
53
+ outputs: [
54
+ {
55
+ internalType: "uint256",
56
+ name: "",
57
+ type: "uint256",
58
+ },
59
+ ],
60
+ stateMutability: "view",
61
+ type: "function",
62
+ },
63
+ ];
64
+
65
+ export class IRenzoOracle__factory {
66
+ static readonly abi = _abi;
67
+ static createInterface(): IRenzoOracleInterface {
68
+ return new utils.Interface(_abi) as IRenzoOracleInterface;
69
+ }
70
+ static connect(
71
+ address: string,
72
+ signerOrProvider: Signer | Provider
73
+ ): IRenzoOracle {
74
+ return new Contract(address, _abi, signerOrProvider) as IRenzoOracle;
75
+ }
76
+ }
@@ -0,0 +1,121 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Signer, utils } from "ethers";
6
+ import { Provider } from "@ethersproject/providers";
7
+ import type {
8
+ IRenzoRestakeManager,
9
+ IRenzoRestakeManagerInterface,
10
+ } from "../IRenzoRestakeManager";
11
+
12
+ const _abi = [
13
+ {
14
+ inputs: [],
15
+ name: "calculateTVLs",
16
+ outputs: [
17
+ {
18
+ internalType: "uint256[][]",
19
+ name: "",
20
+ type: "uint256[][]",
21
+ },
22
+ {
23
+ internalType: "uint256[]",
24
+ name: "",
25
+ type: "uint256[]",
26
+ },
27
+ {
28
+ internalType: "uint256",
29
+ name: "",
30
+ type: "uint256",
31
+ },
32
+ ],
33
+ stateMutability: "view",
34
+ type: "function",
35
+ },
36
+ {
37
+ inputs: [
38
+ {
39
+ internalType: "uint256",
40
+ name: "i",
41
+ type: "uint256",
42
+ },
43
+ ],
44
+ name: "collateralTokens",
45
+ outputs: [
46
+ {
47
+ internalType: "address",
48
+ name: "",
49
+ type: "address",
50
+ },
51
+ ],
52
+ stateMutability: "view",
53
+ type: "function",
54
+ },
55
+ {
56
+ inputs: [
57
+ {
58
+ internalType: "address",
59
+ name: "_collateralToken",
60
+ type: "address",
61
+ },
62
+ {
63
+ internalType: "uint256",
64
+ name: "_amount",
65
+ type: "uint256",
66
+ },
67
+ {
68
+ internalType: "uint256",
69
+ name: "_referralId",
70
+ type: "uint256",
71
+ },
72
+ ],
73
+ name: "deposit",
74
+ outputs: [],
75
+ stateMutability: "nonpayable",
76
+ type: "function",
77
+ },
78
+ {
79
+ inputs: [
80
+ {
81
+ internalType: "uint256",
82
+ name: "_referralId",
83
+ type: "uint256",
84
+ },
85
+ ],
86
+ name: "depositETH",
87
+ outputs: [],
88
+ stateMutability: "payable",
89
+ type: "function",
90
+ },
91
+ {
92
+ inputs: [],
93
+ name: "renzoOracle",
94
+ outputs: [
95
+ {
96
+ internalType: "address",
97
+ name: "",
98
+ type: "address",
99
+ },
100
+ ],
101
+ stateMutability: "view",
102
+ type: "function",
103
+ },
104
+ ];
105
+
106
+ export class IRenzoRestakeManager__factory {
107
+ static readonly abi = _abi;
108
+ static createInterface(): IRenzoRestakeManagerInterface {
109
+ return new utils.Interface(_abi) as IRenzoRestakeManagerInterface;
110
+ }
111
+ static connect(
112
+ address: string,
113
+ signerOrProvider: Signer | Provider
114
+ ): IRenzoRestakeManager {
115
+ return new Contract(
116
+ address,
117
+ _abi,
118
+ signerOrProvider
119
+ ) as IRenzoRestakeManager;
120
+ }
121
+ }
@@ -0,0 +1,56 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Contract, Signer, utils } from "ethers";
6
+ import { Provider } from "@ethersproject/providers";
7
+ import type { IRswETH, IRswETHInterface } from "../IRswETH";
8
+
9
+ const _abi = [
10
+ {
11
+ inputs: [],
12
+ name: "deposit",
13
+ outputs: [],
14
+ stateMutability: "payable",
15
+ type: "function",
16
+ },
17
+ {
18
+ inputs: [
19
+ {
20
+ internalType: "address",
21
+ name: "referral",
22
+ type: "address",
23
+ },
24
+ ],
25
+ name: "depositWithReferral",
26
+ outputs: [],
27
+ stateMutability: "payable",
28
+ type: "function",
29
+ },
30
+ {
31
+ inputs: [],
32
+ name: "getRate",
33
+ outputs: [
34
+ {
35
+ internalType: "uint256",
36
+ name: "",
37
+ type: "uint256",
38
+ },
39
+ ],
40
+ stateMutability: "view",
41
+ type: "function",
42
+ },
43
+ ];
44
+
45
+ export class IRswETH__factory {
46
+ static readonly abi = _abi;
47
+ static createInterface(): IRswETHInterface {
48
+ return new utils.Interface(_abi) as IRswETHInterface;
49
+ }
50
+ static connect(
51
+ address: string,
52
+ signerOrProvider: Signer | Provider
53
+ ): IRswETH {
54
+ return new Contract(address, _abi, signerOrProvider) as IRswETH;
55
+ }
56
+ }
@@ -15,16 +15,16 @@ const _abi = [
15
15
  type: "function",
16
16
  },
17
17
  {
18
- inputs: [],
19
- name: "ethToSwETHRate",
20
- outputs: [
18
+ inputs: [
21
19
  {
22
- internalType: "uint256",
23
- name: "",
24
- type: "uint256",
20
+ internalType: "address",
21
+ name: "referral",
22
+ type: "address",
25
23
  },
26
24
  ],
27
- stateMutability: "view",
25
+ name: "depositWithReferral",
26
+ outputs: [],
27
+ stateMutability: "payable",
28
28
  type: "function",
29
29
  },
30
30
  {
@@ -1058,7 +1058,7 @@ const _abi = [
1058
1058
  ];
1059
1059
 
1060
1060
  const _bytecode =
1061
- "0x6102006040523480156200001257600080fd5b50604051620037663803806200376683398101604081905262000035916200076e565b8383828282826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000079573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009f9190620007fd565b6040805180820190915260018152603160f81b602082015283908184846003620000ca8482620008ba565b506004620000d98382620008ba565b5060ff166080525050600280546001600160f81b0316600160f81b17905562000104826005620003a2565b6101405262000115816006620003a2565b61016052815160208084019190912061010052815190820120610120524660c052620001a56101005161012051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60a05250503060e0525050603a805460ff1916905550600954600160a81b900460ff1615808015620001e457506009546001600160a01b90910460ff16105b80620002075750303b158015620002075750600954600160a01b900460ff166001145b620002705760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6009805460ff60a01b1916600160a01b17905580156200029e576009805460ff60a81b1916600160a81b1790555b6001600160a01b03821661018052620002b6620003db565b8015620002ff576009805460ff60a81b19169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050506001600160a01b038181166101a08190529083166101c052604080516358b50cef60e11b8152905163b16a19de916004808201926020929091908290030181865afa15801562000357573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037d919062000986565b6001600160a01b03166101e08190526200039890836200045e565b5050505062000a8f565b6000602083511015620003c257620003ba836200052d565b9050620003d5565b81620003cf8482620008ba565b5060ff90505b92915050565b600954600160a81b900460ff166200044a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000267565b600880546001600160a01b03191633179055565b6001600160a01b03821662000471575050565b6200048560026001600160601b03620009a4565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015620004df573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005059190620009d9565b101562000529576200051a8282600062000570565b62000529828260001962000570565b5050565b600080829050601f815111156200055b578260405163305a27a960e01b8152600401620002679190620009f3565b8051620005688262000a28565b179392505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691620005ce919062000a4d565b6000604051808303816000865af19150503d80600081146200060d576040519150601f19603f3d011682016040523d82523d6000602084013e62000612565b606091505b5091509150818015620006405750805115806200064057508080602001905181019062000640919062000a6b565b6200067d5760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640162000267565b5050505050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620006b75781810151838201526020016200069d565b50506000910152565b600082601f830112620006d257600080fd5b81516001600160401b0380821115620006ef57620006ef62000684565b604051601f8301601f19908116603f011681019082821181831017156200071a576200071a62000684565b816040528381528660208588010111156200073457600080fd5b620007478460208301602089016200069a565b9695505050505050565b80516001600160a01b03811681146200076957600080fd5b919050565b600080600080608085870312156200078557600080fd5b84516001600160401b03808211156200079d57600080fd5b620007ab88838901620006c0565b95506020870151915080821115620007c257600080fd5b50620007d187828801620006c0565b935050620007e26040860162000751565b9150620007f26060860162000751565b905092959194509250565b6000602082840312156200081057600080fd5b815160ff811681146200082257600080fd5b9392505050565b600181811c908216806200083e57607f821691505b6020821081036200085f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620008b5576000816000526020600020601f850160051c81016020861015620008905750805b601f850160051c820191505b81811015620008b1578281556001016200089c565b5050505b505050565b81516001600160401b03811115620008d657620008d662000684565b620008ee81620008e7845462000829565b8462000865565b602080601f8311600181146200092657600084156200090d5750858301515b600019600386901b1c1916600185901b178555620008b1565b600085815260208120601f198616915b82811015620009575788860151825594840194600190910190840162000936565b5085821015620009765787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200099957600080fd5b620008228262000751565b60006001600160601b0383811680620009cd57634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b600060208284031215620009ec57600080fd5b5051919050565b602081526000825180602084015262000a148160408501602087016200069a565b601f01601f19169190910160400192915050565b805160208083015191908110156200085f5760001960209190910360031b1b16919050565b6000825162000a618184602087016200069a565b9190910192915050565b60006020828403121562000a7e57600080fd5b815180151581146200082257600080fd5b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051612bdc62000b8a600039600081816103bb0152818161074d01528181610d3001528181610e5901528181610e7a01528181611393015281816113e1015281816119af01528181611bf40152611c420152600081816105380152818161141d015281816119820152611c7901526000818161056c0152818161076e01528181610cf50152611cf10152600061045201526000610df201526000610dc701526000611917015260006118ef0152600061184a015260006118740152600061189e015260006103090152612bdc6000f3fe6080604052600436106101c45760003560e01c806306fdde03146101d0578063071bc3c9146101fb578063078dfbe71461021d578063095ea7b31461023f578063128fced11461026f57806318160ddd1461029c57806320e8c565146102c4578063213cae63146101fb57806323b872dd146102d7578063313ce567146102f75780633644e5151461033d5780633ba0b9a9146103525780633f4ba83a146103675780634e71e0c81461037c5780635c975abb146103915780636f307dc3146103a957806370a08231146103ea578063769f8e5d1461042057806376d5de8514610440578063784367d6146104745780637ecebe00146104945780638456cb59146104b457806384b0196e146104c95780638da5cb5b146104f157806395d89b4114610511578063a03e4bc314610526578063a0c1f15e1461055a578063a40bee501461058e578063a9059cbb146105b2578063b8f82b26146105d2578063c4f59f9b146105f2578063cbe52ae314610613578063d505accf14610633578063da88ecb414610653578063dd62ed3e14610674578063e30c397814610694578063ef5cfb8c1461026f578063f8b2f99114610653578063fa5a4f061461047457600080fd5b366101cb57005b600080fd5b3480156101dc57600080fd5b506101e56106b4565b6040516101f291906125c6565b60405180910390f35b34801561020757600080fd5b50610210610746565b6040516101f291906125d9565b34801561022957600080fd5b5061023d610238366004612650565b610797565b005b34801561024b57600080fd5b5061025f61025a366004612699565b61089d565b60405190151581526020016101f2565b34801561027b57600080fd5b5061028f61028a3660046126c3565b6108b7565b6040516101f2919061271a565b3480156102a857600080fd5b506002546001600160f81b03165b6040519081526020016101f2565b6102b66102d236600461272d565b6108d2565b3480156102e357600080fd5b5061025f6102f236600461276f565b610a1b565b34801561030357600080fd5b5061032b7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101f2565b34801561034957600080fd5b506102b6610a99565b34801561035e57600080fd5b506102b6610aa3565b34801561037357600080fd5b5061023d610abc565b34801561038857600080fd5b5061023d610af0565b34801561039d57600080fd5b50603a5460ff1661025f565b3480156103b557600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101f291906127ab565b3480156103f657600080fd5b506102b66104053660046126c3565b6001600160a01b031660009081526020819052604090205490565b34801561042c57600080fd5b506102b661043b3660046127bf565b610b9c565b34801561044c57600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561048057600080fd5b5061025f61048f3660046126c3565b610cf1565b3480156104a057600080fd5b506102b66104af3660046126c3565b610d69565b3480156104c057600080fd5b5061023d610d87565b3480156104d557600080fd5b506104de610db9565b6040516101f2979695949392919061281a565b3480156104fd57600080fd5b506008546103dd906001600160a01b031681565b34801561051d57600080fd5b506101e5610e42565b34801561053257600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561056657600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561059a57600080fd5b506105a3610e51565b6040516101f2939291906128a0565b3480156105be57600080fd5b5061025f6105cd366004612699565b610f05565b3480156105de57600080fd5b506102b66105ed366004612699565b610f77565b3480156105fe57600080fd5b50604080516000815260208101909152610210565b34801561061f57600080fd5b506102b661062e366004612699565b610fb2565b34801561063f57600080fd5b5061023d61064e3660046128f1565b610fe6565b34801561065f57600080fd5b5060408051600081526020810190915261028f565b34801561068057600080fd5b506102b661068f36600461295e565b61114a565b3480156106a057600080fd5b506009546103dd906001600160a01b031681565b6060600380546106c390612991565b80601f01602080910402602001604051908101604052809291908181526020018280546106ef90612991565b801561073c5780601f106107115761010080835404028352916020019161073c565b820191906000526020600020905b81548152906001019060200180831161071f57829003601f168201915b5050505050905090565b60606107927f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611175565b905090565b6008546001600160a01b031633146107ca5760405162461bcd60e51b81526004016107c1906129c5565b60405180910390fd5b811561087c576001600160a01b0383161515806107e45750805b6108285760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b60448201526064016107c1565b6008546040516001600160a01b03808616921690600080516020612b6783398151915290600090a3600880546001600160a01b0385166001600160a01b031991821617909155600980549091169055505050565b600980546001600160a01b0319166001600160a01b0385161790555b505050565b6000336108ab818585611203565b60019150505b92915050565b604080516000808252602082019092526060915b5092915050565b600254600090600119600160f81b90910460ff16016109035760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b17905561092184610cf1565b61094057836040516315d57ce360e31b81526004016107c191906127ab565b8260000361096157604051630a907f2f60e41b815260040160405180910390fd5b61096c843385611328565b610976848461138f565b90508181101561099d578082604051635e38f95d60e11b81526004016107c1929190612a31565b6109a7858261148b565b836001600160a01b0316856001600160a01b0316336001600160a01b03167f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d5986856040516109f6929190612a31565b60405180910390a4600280546001600160f81b0316600160f81b179055949350505050565b600254600090600119600160f81b90910460ff1601610a4c5760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b17905533610a6d8582856115a1565b610a7885858561161b565b6001915050600280546001600160f81b0316600160f81b1790559392505050565b600061079261183d565b6000633b9aca00610ab2611968565b6107929190612a55565b6008546001600160a01b03163314610ae65760405162461bcd60e51b81526004016107c1906129c5565b610aee611a18565b565b6009546001600160a01b0316338114610b4b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e657260448201526064016107c1565b6008546040516001600160a01b03808416921690600080516020612b6783398151915290600090a3600880546001600160a01b039092166001600160a01b0319928316179055600980549091169055565b600254600090600119600160f81b90910460ff1601610bcd5760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b179055610beb84610cf1565b610c0a57836040516388a5056160e01b81526004016107c191906127ab565b84600003610c2b5760405163c3d83b0760e01b815260040160405180910390fd5b8115610c4057610c3b3086611a64565b610c4a565b610c4a3386611a64565b610c55868587611bdd565b905082811015610c7c5780836040516305ff726560e51b81526004016107c1929190612a31565b836001600160a01b0316866001600160a01b0316336001600160a01b03167faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c8885604051610ccb929190612a31565b60405180910390a4600280546001600160f81b0316600160f81b17905595945050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614806108b157507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161492915050565b6001600160a01b0381166000908152600760205260408120546108b1565b6008546001600160a01b03163314610db15760405162461bcd60e51b81526004016107c1906129c5565b610aee611d17565b600060608082808083610ded7f00000000000000000000000000000000000000000000000000000000000000006005611d54565b610e187f00000000000000000000000000000000000000000000000000000000000000006006611d54565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b6060600480546106c390612991565b6000806000807f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ed6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610efa9190612a77565b925092509250909192565b600254600090600119600160f81b90910460ff1601610f365760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b17905533610f5781858561161b565b6001915050600280546001600160f81b0316600160f81b17905592915050565b6000610f8283610cf1565b610fa157826040516315d57ce360e31b81526004016107c191906127ab565b610fab8383611dff565b9392505050565b6000610fbd83610cf1565b610fdc57826040516388a5056160e01b81526004016107c191906127ab565b610fab8383611e0d565b834211156110365760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016107c1565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886110658c611e1b565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006110c082611e43565b905060006110d082878787611e70565b9050896001600160a01b0316816001600160a01b0316146111335760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016107c1565b61113e8a8a8a611203565b50505050505050505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b604080516002808252606080830184529260208301908036833701905050905082816000815181106111a9576111a9612a94565b60200260200101906001600160a01b031690816001600160a01b03168152505081816001815181106111dd576111dd612a94565b60200260200101906001600160a01b031690816001600160a01b03168152505092915050565b6001600160a01b0383166112655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107c1565b6001600160a01b0382166112c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107c1565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316611374578034146108985760405162461bcd60e51b815260206004820152600c60248201526b0cae8d040dad2e6dac2e8c6d60a31b60448201526064016107c1565b8015610898576108986001600160a01b038416833084611e9a565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03160361147a5760405163617ba03760e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260248201849052306044830152600060648301527f0000000000000000000000000000000000000000000000000000000000000000169063617ba03790608401600060405180830381600087803b15801561146157600080fd5b505af1158015611475573d6000803e3d6000fd5b505050505b610fab82611486611968565b611f05565b6001600160a01b0382166114e15760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016107c1565b6114ed60008383611f11565b6114f681611f19565b600280546000906115119084906001600160f81b0316612aaa565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555080600080846001600160a01b03166001600160a01b0316815260200190815260200160002060008282546115699190612aca565b90915550506040518181526001600160a01b03831690600090600080516020612b878339815191529060200160405180910390a35050565b60006115ad848461114a565b9050600019811461161557818110156116085760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107c1565b6116158484848403611203565b50505050565b6001600160a01b03831661167f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107c1565b6001600160a01b0382166116e15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107c1565b816001600160a01b0316836001600160a01b03160361173c5760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b60448201526064016107c1565b611747838383611f11565b6001600160a01b038316600090815260208190526040902054818110156117bf5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107c1565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906117f6908490612aca565b92505081905550826001600160a01b0316846001600160a01b0316600080516020612b878339815191528460405161183091815260200190565b60405180910390a3611615565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561189657507f000000000000000000000000000000000000000000000000000000000000000046145b156118c057507f000000000000000000000000000000000000000000000000000000000000000090565b610792604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60405163d15e005360e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d15e0053906119d7907f0000000000000000000000000000000000000000000000000000000000000000906004016127ab565b602060405180830381865afa1580156119f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107929190612add565b611a20611f33565b603a805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051611a5a91906127ab565b60405180910390a1565b6001600160a01b038216611ac45760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016107c1565b611ad082600083611f11565b6001600160a01b03821660009081526020819052604090205481811015611b445760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016107c1565b6001600160a01b03831660009081526020819052604090208282039055611b6a82611f19565b60028054600090611b859084906001600160f81b0316612af6565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555060006001600160a01b0316836001600160a01b0316600080516020612b878339815191528460405161131b91815260200190565b6000611bf082611beb611968565b611f7c565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031603611cec57604051631a4ca37b60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301526024820183905285811660448301527f000000000000000000000000000000000000000000000000000000000000000016906369328dec906064016020604051808303816000875af1158015611cc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce69190612add565b50610fab565b610fab7f00000000000000000000000000000000000000000000000000000000000000008583611f9e565b611d1f612062565b603a805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a4d3390565b606060ff8314611d6e57611d67836120a8565b90506108b1565b818054611d7a90612991565b80601f0160208091040260200160405190810160405280929190818152602001828054611da690612991565b8015611df35780601f10611dc857610100808354040283529160200191611df3565b820191906000526020600020905b815481529060010190602001808311611dd657829003601f168201915b505050505090506108b1565b6000610fab82611486611968565b6000610fab82611beb611968565b6001600160a01b03811660009081526007602052604090208054600181018255905b50919050565b60006108b1611e5061183d565b8360405161190160f01b8152600281019290925260228201526042902090565b6000806000611e81878787876120e7565b91509150611e8e816121a1565b5090505b949350505050565b6040516001600160a01b03808516602483015283166044820152606481018290526116159085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526122e9565b6000610fab83836123be565b610898612062565b60006001600160f81b03821115611f2f57600080fd5b5090565b603a5460ff16610aee5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107c1565b6000676765c793fa10079d601b1b611f948385612b16565b610fab9190612a55565b80600003611fab57505050565b6001600160a01b03831661204e576000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612006576040519150601f19603f3d011682016040523d82523d6000602084013e61200b565b606091505b50509050806116155760405162461bcd60e51b815260206004820152600f60248201526e195d1a081cd95b990819985a5b1959608a1b60448201526064016107c1565b6108986001600160a01b03841683836123fb565b603a5460ff1615610aee5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107c1565b606060006120b58361242b565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038311156121145750600090506003612198565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612168573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661219157600060019250925050612198565b9150600090505b94509492505050565b60008160048111156121b5576121b561288a565b036121bd5750565b60018160048111156121d1576121d161288a565b036122195760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b60448201526064016107c1565b600281600481111561222d5761222d61288a565b0361227a5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016107c1565b600381600481111561228e5761228e61288a565b036122e65760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016107c1565b50565b600061233e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166124539092919063ffffffff16565b905080516000148061235f57508080602001905181019061235f9190612b2d565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016107c1565b60008115676765c793fa10079d601b1b600284041904841117156123e157600080fd5b50676765c793fa10079d601b1b9190910260028204010490565b6040516001600160a01b03831660248201526044810182905261089890849063a9059cbb60e01b90606401611ece565b600060ff8216601f8111156108b157604051632cd44ac360e21b815260040160405180910390fd5b6060611e92848460008585600080866001600160a01b0316858760405161247a9190612b4a565b60006040518083038185875af1925050503d80600081146124b7576040519150601f19603f3d011682016040523d82523d6000602084013e6124bc565b606091505b50915091506124cd878383876124d8565b979650505050505050565b60608315612547578251600003612540576001600160a01b0385163b6125405760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016107c1565b5081611e92565b611e92838381511561255c5781518083602001fd5b8060405162461bcd60e51b81526004016107c191906125c6565b60005b83811015612591578181015183820152602001612579565b50506000910152565b600081518084526125b2816020860160208601612576565b601f01601f19169290920160200192915050565b602081526000610fab602083018461259a565b6020808252825182820181905260009190848201906040850190845b8181101561261a5783516001600160a01b0316835292840192918401916001016125f5565b50909695505050505050565b80356001600160a01b038116811461263d57600080fd5b919050565b80151581146122e657600080fd5b60008060006060848603121561266557600080fd5b61266e84612626565b9250602084013561267e81612642565b9150604084013561268e81612642565b809150509250925092565b600080604083850312156126ac57600080fd5b6126b583612626565b946020939093013593505050565b6000602082840312156126d557600080fd5b610fab82612626565b60008151808452602080850194506020840160005b8381101561270f578151875295820195908201906001016126f3565b509495945050505050565b602081526000610fab60208301846126de565b6000806000806080858703121561274357600080fd5b61274c85612626565b935061275a60208601612626565b93969395505050506040820135916060013590565b60008060006060848603121561278457600080fd5b61278d84612626565b925061279b60208501612626565b9150604084013590509250925092565b6001600160a01b0391909116815260200190565b600080600080600060a086880312156127d757600080fd5b6127e086612626565b9450602086013593506127f560408701612626565b925060608601359150608086013561280c81612642565b809150509295509295909350565b60ff60f81b8816815260e06020820152600061283960e083018961259a565b828103604084015261284b818961259a565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152905061287c81856126de565b9a9950505050505050505050565b634e487b7160e01b600052602160045260246000fd5b60608101600285106128c257634e487b7160e01b600052602160045260246000fd5b9381526001600160a01b0392909216602083015260ff1660409091015290565b60ff811681146122e657600080fd5b600080600080600080600060e0888a03121561290c57600080fd5b61291588612626565b965061292360208901612626565b955060408801359450606088013593506080880135612941816128e2565b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561297157600080fd5b61297a83612626565b915061298860208401612626565b90509250929050565b600181811c908216806129a557607f821691505b602082108103611e3d57634e487b7160e01b600052602260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b918252602082015260400190565b634e487b7160e01b600052601160045260246000fd5b600082612a7257634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215612a8957600080fd5b8151610fab816128e2565b634e487b7160e01b600052603260045260246000fd5b6001600160f81b038181168382160190808211156108cb576108cb612a3f565b808201808211156108b1576108b1612a3f565b600060208284031215612aef57600080fd5b5051919050565b6001600160f81b038281168282160390808211156108cb576108cb612a3f565b80820281158282048414176108b1576108b1612a3f565b600060208284031215612b3f57600080fd5b8151610fab81612642565b60008251612b5c818460208701612576565b919091019291505056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220be5b511594785a1a0271c4726fb1c791394c617b5ddbf009eb4ba2840dc4377e64736f6c63430008170033";
1061
+ "0x6102006040523480156200001257600080fd5b50604051620037663803806200376683398101604081905262000035916200076e565b8383828282826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000079573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009f9190620007fd565b6040805180820190915260018152603160f81b602082015283908184846003620000ca8482620008ba565b506004620000d98382620008ba565b5060ff166080525050600280546001600160f81b0316600160f81b17905562000104826005620003a2565b6101405262000115816006620003a2565b61016052815160208084019190912061010052815190820120610120524660c052620001a56101005161012051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60a05250503060e0525050603a805460ff1916905550600954600160a81b900460ff1615808015620001e457506009546001600160a01b90910460ff16105b80620002075750303b158015620002075750600954600160a01b900460ff166001145b620002705760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6009805460ff60a01b1916600160a01b17905580156200029e576009805460ff60a81b1916600160a81b1790555b6001600160a01b03821661018052620002b6620003db565b8015620002ff576009805460ff60a81b19169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050506001600160a01b038181166101a08190529083166101c052604080516358b50cef60e11b8152905163b16a19de916004808201926020929091908290030181865afa15801562000357573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037d919062000986565b6001600160a01b03166101e08190526200039890836200045e565b5050505062000a8f565b6000602083511015620003c257620003ba836200052d565b9050620003d5565b81620003cf8482620008ba565b5060ff90505b92915050565b600954600160a81b900460ff166200044a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000267565b600880546001600160a01b03191633179055565b6001600160a01b03821662000471575050565b6200048560026001600160601b03620009a4565b604051636eb1769f60e11b81523060048201526001600160a01b0383811660248301526001600160601b03929092169184169063dd62ed3e90604401602060405180830381865afa158015620004df573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005059190620009d9565b101562000529576200051a8282600062000570565b62000529828260001962000570565b5050565b600080829050601f815111156200055b578260405163305a27a960e01b8152600401620002679190620009f3565b8051620005688262000a28565b179392505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691620005ce919062000a4d565b6000604051808303816000865af19150503d80600081146200060d576040519150601f19603f3d011682016040523d82523d6000602084013e62000612565b606091505b5091509150818015620006405750805115806200064057508080602001905181019062000640919062000a6b565b6200067d5760405162461bcd60e51b815260206004820152600c60248201526b5361666520417070726f766560a01b604482015260640162000267565b5050505050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620006b75781810151838201526020016200069d565b50506000910152565b600082601f830112620006d257600080fd5b81516001600160401b0380821115620006ef57620006ef62000684565b604051601f8301601f19908116603f011681019082821181831017156200071a576200071a62000684565b816040528381528660208588010111156200073457600080fd5b620007478460208301602089016200069a565b9695505050505050565b80516001600160a01b03811681146200076957600080fd5b919050565b600080600080608085870312156200078557600080fd5b84516001600160401b03808211156200079d57600080fd5b620007ab88838901620006c0565b95506020870151915080821115620007c257600080fd5b50620007d187828801620006c0565b935050620007e26040860162000751565b9150620007f26060860162000751565b905092959194509250565b6000602082840312156200081057600080fd5b815160ff811681146200082257600080fd5b9392505050565b600181811c908216806200083e57607f821691505b6020821081036200085f57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620008b5576000816000526020600020601f850160051c81016020861015620008905750805b601f850160051c820191505b81811015620008b1578281556001016200089c565b5050505b505050565b81516001600160401b03811115620008d657620008d662000684565b620008ee81620008e7845462000829565b8462000865565b602080601f8311600181146200092657600084156200090d5750858301515b600019600386901b1c1916600185901b178555620008b1565b600085815260208120601f198616915b82811015620009575788860151825594840194600190910190840162000936565b5085821015620009765787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200099957600080fd5b620008228262000751565b60006001600160601b0383811680620009cd57634e487b7160e01b600052601260045260246000fd5b92169190910492915050565b600060208284031215620009ec57600080fd5b5051919050565b602081526000825180602084015262000a148160408501602087016200069a565b601f01601f19169190910160400192915050565b805160208083015191908110156200085f5760001960209190910360031b1b16919050565b6000825162000a618184602087016200069a565b9190910192915050565b60006020828403121562000a7e57600080fd5b815180151581146200082257600080fd5b60805160a05160c05160e05161010051610120516101405161016051610180516101a0516101c0516101e051612bdc62000b8a600039600081816103bb0152818161074d01528181610d3001528181610e5901528181610e7a01528181611393015281816113e1015281816119af01528181611bf40152611c420152600081816105380152818161141d015281816119820152611c7901526000818161056c0152818161076e01528181610cf50152611cf10152600061045201526000610df201526000610dc701526000611917015260006118ef0152600061184a015260006118740152600061189e015260006103090152612bdc6000f3fe6080604052600436106101c45760003560e01c806306fdde03146101d0578063071bc3c9146101fb578063078dfbe71461021d578063095ea7b31461023f578063128fced11461026f57806318160ddd1461029c57806320e8c565146102c4578063213cae63146101fb57806323b872dd146102d7578063313ce567146102f75780633644e5151461033d5780633ba0b9a9146103525780633f4ba83a146103675780634e71e0c81461037c5780635c975abb146103915780636f307dc3146103a957806370a08231146103ea578063769f8e5d1461042057806376d5de8514610440578063784367d6146104745780637ecebe00146104945780638456cb59146104b457806384b0196e146104c95780638da5cb5b146104f157806395d89b4114610511578063a03e4bc314610526578063a0c1f15e1461055a578063a40bee501461058e578063a9059cbb146105b2578063b8f82b26146105d2578063c4f59f9b146105f2578063cbe52ae314610613578063d505accf14610633578063da88ecb414610653578063dd62ed3e14610674578063e30c397814610694578063ef5cfb8c1461026f578063f8b2f99114610653578063fa5a4f061461047457600080fd5b366101cb57005b600080fd5b3480156101dc57600080fd5b506101e56106b4565b6040516101f291906125c6565b60405180910390f35b34801561020757600080fd5b50610210610746565b6040516101f291906125d9565b34801561022957600080fd5b5061023d610238366004612650565b610797565b005b34801561024b57600080fd5b5061025f61025a366004612699565b61089d565b60405190151581526020016101f2565b34801561027b57600080fd5b5061028f61028a3660046126c3565b6108b7565b6040516101f2919061271a565b3480156102a857600080fd5b506002546001600160f81b03165b6040519081526020016101f2565b6102b66102d236600461272d565b6108d2565b3480156102e357600080fd5b5061025f6102f236600461276f565b610a1b565b34801561030357600080fd5b5061032b7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101f2565b34801561034957600080fd5b506102b6610a99565b34801561035e57600080fd5b506102b6610aa3565b34801561037357600080fd5b5061023d610abc565b34801561038857600080fd5b5061023d610af0565b34801561039d57600080fd5b50603a5460ff1661025f565b3480156103b557600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101f291906127ab565b3480156103f657600080fd5b506102b66104053660046126c3565b6001600160a01b031660009081526020819052604090205490565b34801561042c57600080fd5b506102b661043b3660046127bf565b610b9c565b34801561044c57600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561048057600080fd5b5061025f61048f3660046126c3565b610cf1565b3480156104a057600080fd5b506102b66104af3660046126c3565b610d69565b3480156104c057600080fd5b5061023d610d87565b3480156104d557600080fd5b506104de610db9565b6040516101f2979695949392919061281a565b3480156104fd57600080fd5b506008546103dd906001600160a01b031681565b34801561051d57600080fd5b506101e5610e42565b34801561053257600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561056657600080fd5b506103dd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561059a57600080fd5b506105a3610e51565b6040516101f2939291906128a0565b3480156105be57600080fd5b5061025f6105cd366004612699565b610f05565b3480156105de57600080fd5b506102b66105ed366004612699565b610f77565b3480156105fe57600080fd5b50604080516000815260208101909152610210565b34801561061f57600080fd5b506102b661062e366004612699565b610fb2565b34801561063f57600080fd5b5061023d61064e3660046128f1565b610fe6565b34801561065f57600080fd5b5060408051600081526020810190915261028f565b34801561068057600080fd5b506102b661068f36600461295e565b61114a565b3480156106a057600080fd5b506009546103dd906001600160a01b031681565b6060600380546106c390612991565b80601f01602080910402602001604051908101604052809291908181526020018280546106ef90612991565b801561073c5780601f106107115761010080835404028352916020019161073c565b820191906000526020600020905b81548152906001019060200180831161071f57829003601f168201915b5050505050905090565b60606107927f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611175565b905090565b6008546001600160a01b031633146107ca5760405162461bcd60e51b81526004016107c1906129c5565b60405180910390fd5b811561087c576001600160a01b0383161515806107e45750805b6108285760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b60448201526064016107c1565b6008546040516001600160a01b03808616921690600080516020612b6783398151915290600090a3600880546001600160a01b0385166001600160a01b031991821617909155600980549091169055505050565b600980546001600160a01b0319166001600160a01b0385161790555b505050565b6000336108ab818585611203565b60019150505b92915050565b604080516000808252602082019092526060915b5092915050565b600254600090600119600160f81b90910460ff16016109035760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b17905561092184610cf1565b61094057836040516315d57ce360e31b81526004016107c191906127ab565b8260000361096157604051630a907f2f60e41b815260040160405180910390fd5b61096c843385611328565b610976848461138f565b90508181101561099d578082604051635e38f95d60e11b81526004016107c1929190612a31565b6109a7858261148b565b836001600160a01b0316856001600160a01b0316336001600160a01b03167f5fe47ed6d4225326d3303476197d782ded5a4e9c14f479dc9ec4992af4e85d5986856040516109f6929190612a31565b60405180910390a4600280546001600160f81b0316600160f81b179055949350505050565b600254600090600119600160f81b90910460ff1601610a4c5760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b17905533610a6d8582856115a1565b610a7885858561161b565b6001915050600280546001600160f81b0316600160f81b1790559392505050565b600061079261183d565b6000633b9aca00610ab2611968565b6107929190612a55565b6008546001600160a01b03163314610ae65760405162461bcd60e51b81526004016107c1906129c5565b610aee611a18565b565b6009546001600160a01b0316338114610b4b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e657260448201526064016107c1565b6008546040516001600160a01b03808416921690600080516020612b6783398151915290600090a3600880546001600160a01b039092166001600160a01b0319928316179055600980549091169055565b600254600090600119600160f81b90910460ff1601610bcd5760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b179055610beb84610cf1565b610c0a57836040516388a5056160e01b81526004016107c191906127ab565b84600003610c2b5760405163c3d83b0760e01b815260040160405180910390fd5b8115610c4057610c3b3086611a64565b610c4a565b610c4a3386611a64565b610c55868587611bdd565b905082811015610c7c5780836040516305ff726560e51b81526004016107c1929190612a31565b836001600160a01b0316866001600160a01b0316336001600160a01b03167faee47cdf925cf525fdae94f9777ee5a06cac37e1c41220d0a8a89ed154f62d1c8885604051610ccb929190612a31565b60405180910390a4600280546001600160f81b0316600160f81b17905595945050505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614806108b157507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161492915050565b6001600160a01b0381166000908152600760205260408120546108b1565b6008546001600160a01b03163314610db15760405162461bcd60e51b81526004016107c1906129c5565b610aee611d17565b600060608082808083610ded7f00000000000000000000000000000000000000000000000000000000000000006005611d54565b610e187f00000000000000000000000000000000000000000000000000000000000000006006611d54565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b6060600480546106c390612991565b6000806000807f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ed6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610efa9190612a77565b925092509250909192565b600254600090600119600160f81b90910460ff1601610f365760405162461bcd60e51b81526004016107c1906129fa565b600280546001600160f81b0316600160f91b17905533610f5781858561161b565b6001915050600280546001600160f81b0316600160f81b17905592915050565b6000610f8283610cf1565b610fa157826040516315d57ce360e31b81526004016107c191906127ab565b610fab8383611dff565b9392505050565b6000610fbd83610cf1565b610fdc57826040516388a5056160e01b81526004016107c191906127ab565b610fab8383611e0d565b834211156110365760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e6500000060448201526064016107c1565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886110658c611e1b565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006110c082611e43565b905060006110d082878787611e70565b9050896001600160a01b0316816001600160a01b0316146111335760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e6174757265000060448201526064016107c1565b61113e8a8a8a611203565b50505050505050505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b604080516002808252606080830184529260208301908036833701905050905082816000815181106111a9576111a9612a94565b60200260200101906001600160a01b031690816001600160a01b03168152505081816001815181106111dd576111dd612a94565b60200260200101906001600160a01b031690816001600160a01b03168152505092915050565b6001600160a01b0383166112655760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107c1565b6001600160a01b0382166112c65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107c1565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316611374578034146108985760405162461bcd60e51b815260206004820152600c60248201526b0cae8d040dad2e6dac2e8c6d60a31b60448201526064016107c1565b8015610898576108986001600160a01b038416833084611e9a565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03160361147a5760405163617ba03760e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260248201849052306044830152600060648301527f0000000000000000000000000000000000000000000000000000000000000000169063617ba03790608401600060405180830381600087803b15801561146157600080fd5b505af1158015611475573d6000803e3d6000fd5b505050505b610fab82611486611968565b611f05565b6001600160a01b0382166114e15760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016107c1565b6114ed60008383611f11565b6114f681611f19565b600280546000906115119084906001600160f81b0316612aaa565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555080600080846001600160a01b03166001600160a01b0316815260200190815260200160002060008282546115699190612aca565b90915550506040518181526001600160a01b03831690600090600080516020612b878339815191529060200160405180910390a35050565b60006115ad848461114a565b9050600019811461161557818110156116085760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107c1565b6116158484848403611203565b50505050565b6001600160a01b03831661167f5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107c1565b6001600160a01b0382166116e15760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107c1565b816001600160a01b0316836001600160a01b03160361173c5760405162461bcd60e51b815260206004820152601760248201527622a92199181d103a3930b739b332b9103a379039b2b63360491b60448201526064016107c1565b611747838383611f11565b6001600160a01b038316600090815260208190526040902054818110156117bf5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107c1565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906117f6908490612aca565b92505081905550826001600160a01b0316846001600160a01b0316600080516020612b878339815191528460405161183091815260200190565b60405180910390a3611615565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801561189657507f000000000000000000000000000000000000000000000000000000000000000046145b156118c057507f000000000000000000000000000000000000000000000000000000000000000090565b610792604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60405163d15e005360e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d15e0053906119d7907f0000000000000000000000000000000000000000000000000000000000000000906004016127ab565b602060405180830381865afa1580156119f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107929190612add565b611a20611f33565b603a805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051611a5a91906127ab565b60405180910390a1565b6001600160a01b038216611ac45760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016107c1565b611ad082600083611f11565b6001600160a01b03821660009081526020819052604090205481811015611b445760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b60648201526084016107c1565b6001600160a01b03831660009081526020819052604090208282039055611b6a82611f19565b60028054600090611b859084906001600160f81b0316612af6565b92506101000a8154816001600160f81b0302191690836001600160f81b0316021790555060006001600160a01b0316836001600160a01b0316600080516020612b878339815191528460405161131b91815260200190565b6000611bf082611beb611968565b611f7c565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031603611cec57604051631a4ca37b60e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301526024820183905285811660448301527f000000000000000000000000000000000000000000000000000000000000000016906369328dec906064016020604051808303816000875af1158015611cc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ce69190612add565b50610fab565b610fab7f00000000000000000000000000000000000000000000000000000000000000008583611f9e565b611d1f612062565b603a805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a4d3390565b606060ff8314611d6e57611d67836120a8565b90506108b1565b818054611d7a90612991565b80601f0160208091040260200160405190810160405280929190818152602001828054611da690612991565b8015611df35780601f10611dc857610100808354040283529160200191611df3565b820191906000526020600020905b815481529060010190602001808311611dd657829003601f168201915b505050505090506108b1565b6000610fab82611486611968565b6000610fab82611beb611968565b6001600160a01b03811660009081526007602052604090208054600181018255905b50919050565b60006108b1611e5061183d565b8360405161190160f01b8152600281019290925260228201526042902090565b6000806000611e81878787876120e7565b91509150611e8e816121a1565b5090505b949350505050565b6040516001600160a01b03808516602483015283166044820152606481018290526116159085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526122e9565b6000610fab83836123be565b610898612062565b60006001600160f81b03821115611f2f57600080fd5b5090565b603a5460ff16610aee5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016107c1565b6000676765c793fa10079d601b1b611f948385612b16565b610fab9190612a55565b80600003611fab57505050565b6001600160a01b03831661204e576000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612006576040519150601f19603f3d011682016040523d82523d6000602084013e61200b565b606091505b50509050806116155760405162461bcd60e51b815260206004820152600f60248201526e195d1a081cd95b990819985a5b1959608a1b60448201526064016107c1565b6108986001600160a01b03841683836123fb565b603a5460ff1615610aee5760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b60448201526064016107c1565b606060006120b58361242b565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b038311156121145750600090506003612198565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612168573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661219157600060019250925050612198565b9150600090505b94509492505050565b60008160048111156121b5576121b561288a565b036121bd5750565b60018160048111156121d1576121d161288a565b036122195760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b60448201526064016107c1565b600281600481111561222d5761222d61288a565b0361227a5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016107c1565b600381600481111561228e5761228e61288a565b036122e65760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b60648201526084016107c1565b50565b600061233e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166124539092919063ffffffff16565b905080516000148061235f57508080602001905181019061235f9190612b2d565b6108985760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016107c1565b60008115676765c793fa10079d601b1b600284041904841117156123e157600080fd5b50676765c793fa10079d601b1b9190910260028204010490565b6040516001600160a01b03831660248201526044810182905261089890849063a9059cbb60e01b90606401611ece565b600060ff8216601f8111156108b157604051632cd44ac360e21b815260040160405180910390fd5b6060611e92848460008585600080866001600160a01b0316858760405161247a9190612b4a565b60006040518083038185875af1925050503d80600081146124b7576040519150601f19603f3d011682016040523d82523d6000602084013e6124bc565b606091505b50915091506124cd878383876124d8565b979650505050505050565b60608315612547578251600003612540576001600160a01b0385163b6125405760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016107c1565b5081611e92565b611e92838381511561255c5781518083602001fd5b8060405162461bcd60e51b81526004016107c191906125c6565b60005b83811015612591578181015183820152602001612579565b50506000910152565b600081518084526125b2816020860160208601612576565b601f01601f19169290920160200192915050565b602081526000610fab602083018461259a565b6020808252825182820181905260009190848201906040850190845b8181101561261a5783516001600160a01b0316835292840192918401916001016125f5565b50909695505050505050565b80356001600160a01b038116811461263d57600080fd5b919050565b80151581146122e657600080fd5b60008060006060848603121561266557600080fd5b61266e84612626565b9250602084013561267e81612642565b9150604084013561268e81612642565b809150509250925092565b600080604083850312156126ac57600080fd5b6126b583612626565b946020939093013593505050565b6000602082840312156126d557600080fd5b610fab82612626565b60008151808452602080850194506020840160005b8381101561270f578151875295820195908201906001016126f3565b509495945050505050565b602081526000610fab60208301846126de565b6000806000806080858703121561274357600080fd5b61274c85612626565b935061275a60208601612626565b93969395505050506040820135916060013590565b60008060006060848603121561278457600080fd5b61278d84612626565b925061279b60208501612626565b9150604084013590509250925092565b6001600160a01b0391909116815260200190565b600080600080600060a086880312156127d757600080fd5b6127e086612626565b9450602086013593506127f560408701612626565b925060608601359150608086013561280c81612642565b809150509295509295909350565b60ff60f81b8816815260e06020820152600061283960e083018961259a565b828103604084015261284b818961259a565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152905061287c81856126de565b9a9950505050505050505050565b634e487b7160e01b600052602160045260246000fd5b60608101600285106128c257634e487b7160e01b600052602160045260246000fd5b9381526001600160a01b0392909216602083015260ff1660409091015290565b60ff811681146122e657600080fd5b600080600080600080600060e0888a03121561290c57600080fd5b61291588612626565b965061292360208901612626565b955060408801359450606088013593506080880135612941816128e2565b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561297157600080fd5b61297a83612626565b915061298860208401612626565b90509250929050565b600181811c908216806129a557607f821691505b602082108103611e3d57634e487b7160e01b600052602260045260246000fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b918252602082015260400190565b634e487b7160e01b600052601160045260246000fd5b600082612a7257634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215612a8957600080fd5b8151610fab816128e2565b634e487b7160e01b600052603260045260246000fd5b6001600160f81b038181168382160190808211156108cb576108cb612a3f565b808201808211156108b1576108b1612a3f565b600060208284031215612aef57600080fd5b5051919050565b6001600160f81b038281168282160390808211156108cb576108cb612a3f565b80820281158282048414176108b1576108b1612a3f565b600060208284031215612b3f57600080fd5b8151610fab81612642565b60008251612b5c818460208701612576565b919091019291505056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220b4c60ea809cac88ffaa8da2eef6bf0e1216dfdd6b3cc61bb5b996a65a0cbe5f064736f6c63430008170033";
1062
1062
 
1063
1063
  type PendleAaveV3SYConstructorParams =
1064
1064
  | [signer?: Signer]