@pendle/core-v2 5.4.4 → 5.6.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 (174) hide show
  1. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.dbg.json +1 -1
  2. package/build/artifacts/contracts/core/Market/v3/PendleMarketFactoryV3.sol/PendleMarketFactoryV3.json +2 -2
  3. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.dbg.json +1 -1
  4. package/build/artifacts/contracts/core/Market/v3/PendleMarketV3.sol/PendleMarketV3.json +2 -2
  5. package/build/artifacts/contracts/interfaces/IPActionAddRemoveLiqV3.sol/IPActionAddRemoveLiqV3.dbg.json +1 -1
  6. package/build/artifacts/contracts/interfaces/IPActionCallbackV3.sol/IPActionCallbackV3.dbg.json +1 -1
  7. package/build/artifacts/contracts/interfaces/IPActionMarketAuxStatic.sol/IPActionMarketAuxStatic.dbg.json +1 -1
  8. package/build/artifacts/contracts/interfaces/IPActionMiscV3.sol/IPActionMiscV3.dbg.json +1 -1
  9. package/build/artifacts/contracts/interfaces/IPActionSimple.sol/IPActionSimple.dbg.json +1 -1
  10. package/build/artifacts/contracts/interfaces/IPActionStorageStatic.sol/IPActionStorageStatic.dbg.json +1 -1
  11. package/build/artifacts/contracts/interfaces/IPActionStorageV4.sol/IPActionStorageV4.dbg.json +1 -1
  12. package/build/artifacts/contracts/interfaces/IPActionSwapPTV3.sol/IPActionSwapPTV3.dbg.json +1 -1
  13. package/build/artifacts/contracts/interfaces/IPActionSwapYTV3.sol/IPActionSwapYTV3.dbg.json +1 -1
  14. package/build/artifacts/contracts/interfaces/IPAllActionV3.sol/IPAllActionV3.dbg.json +1 -1
  15. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionAddRemoveLiqV3Events.dbg.json +1 -1
  16. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionMiscV3Events.dbg.json +1 -1
  17. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionStorageEvents.dbg.json +1 -1
  18. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapPTV3Events.dbg.json +1 -1
  19. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPActionSwapYTV3Events.dbg.json +1 -1
  20. package/build/artifacts/contracts/interfaces/IPAllEventsV3.sol/IPAllEventsV3.dbg.json +1 -1
  21. package/build/artifacts/contracts/interfaces/IPGovernanceProxy.sol/IPGovernanceProxy.dbg.json +1 -1
  22. package/build/artifacts/contracts/interfaces/IPGovernanceProxy.sol/IPGovernanceProxy.json +77 -0
  23. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitOrderType.dbg.json +1 -1
  24. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.dbg.json +1 -1
  25. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouter.json +32 -0
  26. package/build/artifacts/contracts/interfaces/IPLimitRouter.sol/IPLimitRouterCallback.dbg.json +1 -1
  27. package/build/artifacts/contracts/interfaces/IPMarketFactoryV3.sol/IPMarketFactoryV3.dbg.json +1 -1
  28. package/build/artifacts/contracts/interfaces/IPMarketFactoryV3.sol/IPMarketFactoryV3.json +23 -0
  29. package/build/artifacts/contracts/interfaces/IPRouterStatic.sol/IPRouterStatic.dbg.json +1 -1
  30. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.dbg.json +1 -1
  31. package/build/artifacts/contracts/limit/LimitMathCore.sol/LimitMathCore.json +2 -2
  32. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.dbg.json +1 -1
  33. package/build/artifacts/contracts/limit/LimitRouterBase.sol/LimitRouterBase.json +32 -0
  34. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.dbg.json +1 -1
  35. package/build/artifacts/contracts/limit/PendleLimitRouter.sol/PendleLimitRouter.json +34 -2
  36. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.dbg.json +1 -1
  37. package/build/artifacts/contracts/offchain-helpers/LimitBackendHelper.sol/LimitBackendHelper.json +2 -2
  38. package/build/artifacts/contracts/offchain-helpers/PendleGovernanceProxy.sol/PendleGovernanceProxy.dbg.json +1 -1
  39. package/build/artifacts/contracts/offchain-helpers/PendleGovernanceProxy.sol/PendleGovernanceProxy.json +98 -3
  40. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.dbg.json +1 -1
  41. package/build/artifacts/contracts/offchain-helpers/PendlePoolDeployHelper.sol/PendlePoolDeployHelper.json +2 -2
  42. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.dbg.json +1 -1
  43. package/build/artifacts/contracts/offchain-helpers/router-static/PendleRouterStatic.sol/PendleRouterStatic.json +2 -2
  44. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.dbg.json +1 -1
  45. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionInfoStatic.sol/ActionInfoStatic.json +2 -2
  46. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.dbg.json +1 -1
  47. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketAuxStatic.sol/ActionMarketAuxStatic.json +2 -2
  48. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.dbg.json +1 -1
  49. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMarketCoreStatic.sol/ActionMarketCoreStatic.json +2 -2
  50. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.dbg.json +1 -1
  51. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionMintRedeemStatic.sol/ActionMintRedeemStatic.json +2 -2
  52. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.dbg.json +1 -1
  53. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionStorageStatic.sol/ActionStorageStatic.json +2 -2
  54. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.dbg.json +1 -1
  55. package/build/artifacts/contracts/offchain-helpers/router-static/base/ActionVePendleStatic.sol/ActionVePendleStatic.json +2 -2
  56. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.dbg.json +1 -1
  57. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtInLibV1.json +2 -2
  58. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.dbg.json +1 -1
  59. package/build/artifacts/contracts/offchain-helpers/router-static/base/MarketApproxLibV1.sol/MarketApproxPtOutLibV1.json +2 -2
  60. package/build/artifacts/contracts/offchain-helpers/router-static/base/StorageLayout.sol/StorageLayout.dbg.json +1 -1
  61. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.dbg.json +1 -1
  62. package/build/artifacts/contracts/router/ActionAddRemoveLiqV3.sol/ActionAddRemoveLiqV3.json +2 -2
  63. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.dbg.json +1 -1
  64. package/build/artifacts/contracts/router/ActionCallbackV3.sol/ActionCallbackV3.json +2 -2
  65. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.dbg.json +1 -1
  66. package/build/artifacts/contracts/router/ActionMiscV3.sol/ActionMiscV3.json +2 -2
  67. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.dbg.json +1 -1
  68. package/build/artifacts/contracts/router/ActionSimple.sol/ActionSimple.json +2 -2
  69. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.dbg.json +1 -1
  70. package/build/artifacts/contracts/router/ActionStorageV4.sol/ActionStorageV4.json +2 -2
  71. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.dbg.json +1 -1
  72. package/build/artifacts/contracts/router/ActionSwapPTV3.sol/ActionSwapPTV3.json +2 -2
  73. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.dbg.json +1 -1
  74. package/build/artifacts/contracts/router/ActionSwapYTV3.sol/ActionSwapYTV3.json +2 -2
  75. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.dbg.json +1 -1
  76. package/build/artifacts/contracts/router/PendleRouterV4.sol/PendleRouterV4.json +2 -2
  77. package/build/artifacts/contracts/router/Reflector.sol/Reflector.dbg.json +1 -1
  78. package/build/artifacts/contracts/router/Reflector.sol/Reflector.json +2 -2
  79. package/build/artifacts/contracts/router/base/ActionBase.sol/ActionBase.dbg.json +1 -1
  80. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.dbg.json +1 -1
  81. package/build/artifacts/contracts/router/base/ActionDelegateBase.sol/ActionDelegateBase.json +2 -2
  82. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.dbg.json +1 -1
  83. package/build/artifacts/contracts/router/math/ApproxStateLib.sol/ApproxStateLib.json +2 -2
  84. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.dbg.json +1 -1
  85. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtInLibOnchain.json +2 -2
  86. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.dbg.json +1 -1
  87. package/build/artifacts/contracts/router/math/MarketApproxLibOnchain.sol/MarketApproxPtOutLibOnchain.json +2 -2
  88. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.dbg.json +1 -1
  89. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtInLibV2.json +2 -2
  90. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.dbg.json +1 -1
  91. package/build/artifacts/contracts/router/math/MarketApproxLibV2.sol/MarketApproxPtOutLibV2.json +2 -2
  92. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.dbg.json +1 -1
  93. package/build/artifacts/contracts/router/swap-aggregator/IPSwapAggregator.sol/IPSwapAggregator.json +0 -40
  94. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.dbg.json +4 -0
  95. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/IOKXDexRouter.json +407 -0
  96. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.dbg.json +4 -0
  97. package/build/artifacts/contracts/router/swap-aggregator/OKXScaleHelper.sol/OKXScaleHelper.json +10 -0
  98. package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchAggregationRouterV6.dbg.json +4 -0
  99. package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchAggregationRouterV6.json +214 -0
  100. package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchCommonType.dbg.json +4 -0
  101. package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/I1inchCommonType.json +10 -0
  102. package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/OneInchScaleHelper.dbg.json +4 -0
  103. package/build/artifacts/contracts/router/swap-aggregator/OneInchScaleHelper.sol/OneInchScaleHelper.json +10 -0
  104. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IKyberScalingHelper.dbg.json +1 -1
  105. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/IOdosRouterV2.dbg.json +1 -1
  106. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.dbg.json +1 -1
  107. package/build/artifacts/contracts/router/swap-aggregator/PendleSwap.sol/PendleSwap.json +2 -55
  108. package/contracts/interfaces/IPGovernanceProxy.sol +10 -0
  109. package/contracts/interfaces/IPLimitRouter.sol +5 -0
  110. package/contracts/interfaces/IPMarketFactoryV3.sol +2 -0
  111. package/contracts/limit/LimitRouterBase.sol +6 -10
  112. package/contracts/offchain-helpers/PendleGovernanceProxy.sol +41 -10
  113. package/contracts/router/swap-aggregator/IPSwapAggregator.sol +0 -2
  114. package/contracts/router/swap-aggregator/OKXScaleHelper.sol +215 -0
  115. package/contracts/router/swap-aggregator/OneInchScaleHelper.sol +120 -0
  116. package/contracts/router/swap-aggregator/PendleSwap.sol +24 -7
  117. package/deployments/1-core.json +3 -2
  118. package/deployments/10-core.json +3 -2
  119. package/deployments/42161-core.json +3 -2
  120. package/deployments/5000-core.json +3 -2
  121. package/deployments/56-core.json +3 -2
  122. package/deployments/8453-core.json +3 -2
  123. package/deployments/merkle-distribution/2024-12-26.json +25555 -0
  124. package/deployments/merkle-distribution/2024-12-31-snapshot.json +65767 -0
  125. package/deployments/merkle-distribution/2025-01-30.json +28060 -0
  126. package/package.json +1 -1
  127. package/typechain-types/ActionCallbackV3.ts +164 -0
  128. package/typechain-types/I1inchAggregationRouterV6.ts +337 -0
  129. package/typechain-types/IPActionCallbackV3.ts +164 -0
  130. package/typechain-types/IPGovernanceProxy.ts +236 -0
  131. package/typechain-types/IPLimitRouter.ts +633 -0
  132. package/typechain-types/IPLimitRouterCallback.ts +120 -0
  133. package/typechain-types/IPMarketFactoryV3.ts +321 -0
  134. package/typechain-types/IPSwapAggregator.ts +0 -39
  135. package/typechain-types/LimitBackendHelper.ts +287 -0
  136. package/typechain-types/LimitRouterBase.ts +1138 -0
  137. package/typechain-types/PendleGovernanceProxy.ts +128 -0
  138. package/typechain-types/PendleLimitRouter.ts +1138 -0
  139. package/typechain-types/PendleMarketFactoryV3.ts +719 -0
  140. package/typechain-types/PendleMarketV3.ts +1195 -0
  141. package/typechain-types/PendleSwap.ts +0 -60
  142. package/typechain-types/factories/ActionAddRemoveLiqV3__factory.ts +1 -1
  143. package/typechain-types/factories/ActionCallbackV3__factory.ts +121 -0
  144. package/typechain-types/factories/ActionInfoStatic__factory.ts +1 -1
  145. package/typechain-types/factories/ActionMarketAuxStatic__factory.ts +1 -1
  146. package/typechain-types/factories/ActionMarketCoreStatic__factory.ts +1 -1
  147. package/typechain-types/factories/ActionMintRedeemStatic__factory.ts +1 -1
  148. package/typechain-types/factories/ActionMiscV3__factory.ts +1 -1
  149. package/typechain-types/factories/ActionSimple__factory.ts +1 -1
  150. package/typechain-types/factories/ActionStorageStatic__factory.ts +1 -1
  151. package/typechain-types/factories/ActionStorageV4__factory.ts +1 -1
  152. package/typechain-types/factories/ActionSwapPTV3__factory.ts +1 -1
  153. package/typechain-types/factories/ActionSwapYTV3__factory.ts +1 -1
  154. package/typechain-types/factories/ActionVePendleStatic__factory.ts +1 -1
  155. package/typechain-types/factories/I1inchAggregationRouterV6__factory.ts +233 -0
  156. package/typechain-types/factories/IPActionCallbackV3__factory.ts +83 -0
  157. package/typechain-types/factories/IPGovernanceProxy__factory.ts +152 -0
  158. package/typechain-types/factories/IPLimitRouterCallback__factory.ts +64 -0
  159. package/typechain-types/factories/IPLimitRouter__factory.ts +748 -0
  160. package/typechain-types/factories/IPMarketFactoryV3__factory.ts +217 -0
  161. package/typechain-types/factories/IPSwapAggregator__factory.ts +0 -40
  162. package/typechain-types/factories/LimitBackendHelper__factory.ts +232 -0
  163. package/typechain-types/factories/LimitRouterBase__factory.ts +1069 -0
  164. package/typechain-types/factories/PendleGovernanceProxy__factory.ts +97 -2
  165. package/typechain-types/factories/PendleLimitRouter__factory.ts +1139 -0
  166. package/typechain-types/factories/PendleMarketFactoryV3__factory.ts +714 -0
  167. package/typechain-types/factories/PendleMarketV3__factory.ts +1211 -0
  168. package/typechain-types/factories/PendlePoolDeployHelper__factory.ts +1 -1
  169. package/typechain-types/factories/PendleRouterStatic__factory.ts +1 -1
  170. package/typechain-types/factories/PendleRouterV4__factory.ts +1 -1
  171. package/typechain-types/factories/PendleSwap__factory.ts +1 -54
  172. package/typechain-types/factories/Reflector__factory.ts +1 -1
  173. package/typechain-types/hardhat.d.ts +18 -0
  174. package/typechain-types/index.ts +4 -0
@@ -0,0 +1,1139 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
5
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
6
+ import type {
7
+ PendleLimitRouter,
8
+ PendleLimitRouterInterface,
9
+ } from "../PendleLimitRouter";
10
+
11
+ const _abi = [
12
+ {
13
+ inputs: [
14
+ {
15
+ internalType: "address",
16
+ name: "_WNATIVE",
17
+ type: "address",
18
+ },
19
+ ],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor",
22
+ },
23
+ {
24
+ inputs: [
25
+ {
26
+ internalType: "bool",
27
+ name: "success",
28
+ type: "bool",
29
+ },
30
+ {
31
+ internalType: "bytes",
32
+ name: "res",
33
+ type: "bytes",
34
+ },
35
+ ],
36
+ name: "SimulationResults",
37
+ type: "error",
38
+ },
39
+ {
40
+ anonymous: false,
41
+ inputs: [],
42
+ name: "EIP712DomainChanged",
43
+ type: "event",
44
+ },
45
+ {
46
+ anonymous: false,
47
+ inputs: [
48
+ {
49
+ indexed: false,
50
+ internalType: "uint8",
51
+ name: "version",
52
+ type: "uint8",
53
+ },
54
+ ],
55
+ name: "Initialized",
56
+ type: "event",
57
+ },
58
+ {
59
+ anonymous: false,
60
+ inputs: [
61
+ {
62
+ indexed: false,
63
+ internalType: "address[]",
64
+ name: "YTs",
65
+ type: "address[]",
66
+ },
67
+ {
68
+ indexed: false,
69
+ internalType: "uint256[]",
70
+ name: "lnFeeRateRoots",
71
+ type: "uint256[]",
72
+ },
73
+ ],
74
+ name: "LnFeeRateRootsSet",
75
+ type: "event",
76
+ },
77
+ {
78
+ anonymous: false,
79
+ inputs: [
80
+ {
81
+ indexed: true,
82
+ internalType: "address",
83
+ name: "maker",
84
+ type: "address",
85
+ },
86
+ {
87
+ indexed: false,
88
+ internalType: "uint256",
89
+ name: "oldNonce",
90
+ type: "uint256",
91
+ },
92
+ {
93
+ indexed: false,
94
+ internalType: "uint256",
95
+ name: "newNonce",
96
+ type: "uint256",
97
+ },
98
+ ],
99
+ name: "NonceIncreased",
100
+ type: "event",
101
+ },
102
+ {
103
+ anonymous: false,
104
+ inputs: [
105
+ {
106
+ indexed: true,
107
+ internalType: "address",
108
+ name: "maker",
109
+ type: "address",
110
+ },
111
+ {
112
+ indexed: true,
113
+ internalType: "bytes32",
114
+ name: "orderHash",
115
+ type: "bytes32",
116
+ },
117
+ ],
118
+ name: "OrderCanceled",
119
+ type: "event",
120
+ },
121
+ {
122
+ anonymous: false,
123
+ inputs: [
124
+ {
125
+ indexed: true,
126
+ internalType: "bytes32",
127
+ name: "orderHash",
128
+ type: "bytes32",
129
+ },
130
+ {
131
+ indexed: true,
132
+ internalType: "enum IPLimitOrderType.OrderType",
133
+ name: "orderType",
134
+ type: "uint8",
135
+ },
136
+ {
137
+ indexed: true,
138
+ internalType: "address",
139
+ name: "YT",
140
+ type: "address",
141
+ },
142
+ {
143
+ indexed: false,
144
+ internalType: "address",
145
+ name: "token",
146
+ type: "address",
147
+ },
148
+ {
149
+ indexed: false,
150
+ internalType: "uint256",
151
+ name: "netInputFromMaker",
152
+ type: "uint256",
153
+ },
154
+ {
155
+ indexed: false,
156
+ internalType: "uint256",
157
+ name: "netOutputToMaker",
158
+ type: "uint256",
159
+ },
160
+ {
161
+ indexed: false,
162
+ internalType: "uint256",
163
+ name: "feeAmount",
164
+ type: "uint256",
165
+ },
166
+ {
167
+ indexed: false,
168
+ internalType: "uint256",
169
+ name: "notionalVolume",
170
+ type: "uint256",
171
+ },
172
+ ],
173
+ name: "OrderFilled",
174
+ type: "event",
175
+ },
176
+ {
177
+ anonymous: false,
178
+ inputs: [
179
+ {
180
+ indexed: true,
181
+ internalType: "bytes32",
182
+ name: "orderHash",
183
+ type: "bytes32",
184
+ },
185
+ {
186
+ indexed: true,
187
+ internalType: "enum IPLimitOrderType.OrderType",
188
+ name: "orderType",
189
+ type: "uint8",
190
+ },
191
+ {
192
+ indexed: true,
193
+ internalType: "address",
194
+ name: "YT",
195
+ type: "address",
196
+ },
197
+ {
198
+ indexed: false,
199
+ internalType: "address",
200
+ name: "token",
201
+ type: "address",
202
+ },
203
+ {
204
+ indexed: false,
205
+ internalType: "uint256",
206
+ name: "netInputFromMaker",
207
+ type: "uint256",
208
+ },
209
+ {
210
+ indexed: false,
211
+ internalType: "uint256",
212
+ name: "netOutputToMaker",
213
+ type: "uint256",
214
+ },
215
+ {
216
+ indexed: false,
217
+ internalType: "uint256",
218
+ name: "feeAmount",
219
+ type: "uint256",
220
+ },
221
+ {
222
+ indexed: false,
223
+ internalType: "uint256",
224
+ name: "notionalVolume",
225
+ type: "uint256",
226
+ },
227
+ {
228
+ indexed: false,
229
+ internalType: "address",
230
+ name: "maker",
231
+ type: "address",
232
+ },
233
+ {
234
+ indexed: false,
235
+ internalType: "address",
236
+ name: "taker",
237
+ type: "address",
238
+ },
239
+ ],
240
+ name: "OrderFilledV2",
241
+ type: "event",
242
+ },
243
+ {
244
+ anonymous: false,
245
+ inputs: [
246
+ {
247
+ indexed: true,
248
+ internalType: "address",
249
+ name: "previousOwner",
250
+ type: "address",
251
+ },
252
+ {
253
+ indexed: true,
254
+ internalType: "address",
255
+ name: "newOwner",
256
+ type: "address",
257
+ },
258
+ ],
259
+ name: "OwnershipTransferred",
260
+ type: "event",
261
+ },
262
+ {
263
+ inputs: [],
264
+ name: "DOMAIN_SEPARATOR",
265
+ outputs: [
266
+ {
267
+ internalType: "bytes32",
268
+ name: "",
269
+ type: "bytes32",
270
+ },
271
+ ],
272
+ stateMutability: "view",
273
+ type: "function",
274
+ },
275
+ {
276
+ inputs: [],
277
+ name: "WNATIVE",
278
+ outputs: [
279
+ {
280
+ internalType: "address",
281
+ name: "",
282
+ type: "address",
283
+ },
284
+ ],
285
+ stateMutability: "view",
286
+ type: "function",
287
+ },
288
+ {
289
+ inputs: [
290
+ {
291
+ components: [
292
+ {
293
+ internalType: "uint256",
294
+ name: "salt",
295
+ type: "uint256",
296
+ },
297
+ {
298
+ internalType: "uint256",
299
+ name: "expiry",
300
+ type: "uint256",
301
+ },
302
+ {
303
+ internalType: "uint256",
304
+ name: "nonce",
305
+ type: "uint256",
306
+ },
307
+ {
308
+ internalType: "enum IPLimitOrderType.OrderType",
309
+ name: "orderType",
310
+ type: "uint8",
311
+ },
312
+ {
313
+ internalType: "address",
314
+ name: "token",
315
+ type: "address",
316
+ },
317
+ {
318
+ internalType: "address",
319
+ name: "YT",
320
+ type: "address",
321
+ },
322
+ {
323
+ internalType: "address",
324
+ name: "maker",
325
+ type: "address",
326
+ },
327
+ {
328
+ internalType: "address",
329
+ name: "receiver",
330
+ type: "address",
331
+ },
332
+ {
333
+ internalType: "uint256",
334
+ name: "makingAmount",
335
+ type: "uint256",
336
+ },
337
+ {
338
+ internalType: "uint256",
339
+ name: "lnImpliedRate",
340
+ type: "uint256",
341
+ },
342
+ {
343
+ internalType: "uint256",
344
+ name: "failSafeRate",
345
+ type: "uint256",
346
+ },
347
+ {
348
+ internalType: "bytes",
349
+ name: "permit",
350
+ type: "bytes",
351
+ },
352
+ ],
353
+ internalType: "struct Order",
354
+ name: "order",
355
+ type: "tuple",
356
+ },
357
+ {
358
+ internalType: "bytes",
359
+ name: "signature",
360
+ type: "bytes",
361
+ },
362
+ ],
363
+ name: "_checkSig",
364
+ outputs: [
365
+ {
366
+ internalType: "bytes32",
367
+ name: "",
368
+ type: "bytes32",
369
+ },
370
+ {
371
+ internalType: "uint256",
372
+ name: "",
373
+ type: "uint256",
374
+ },
375
+ {
376
+ internalType: "uint256",
377
+ name: "",
378
+ type: "uint256",
379
+ },
380
+ ],
381
+ stateMutability: "view",
382
+ type: "function",
383
+ },
384
+ {
385
+ inputs: [
386
+ {
387
+ internalType: "uint8",
388
+ name: "amount",
389
+ type: "uint8",
390
+ },
391
+ ],
392
+ name: "advanceNonce",
393
+ outputs: [],
394
+ stateMutability: "nonpayable",
395
+ type: "function",
396
+ },
397
+ {
398
+ inputs: [
399
+ {
400
+ components: [
401
+ {
402
+ internalType: "uint256",
403
+ name: "salt",
404
+ type: "uint256",
405
+ },
406
+ {
407
+ internalType: "uint256",
408
+ name: "expiry",
409
+ type: "uint256",
410
+ },
411
+ {
412
+ internalType: "uint256",
413
+ name: "nonce",
414
+ type: "uint256",
415
+ },
416
+ {
417
+ internalType: "enum IPLimitOrderType.OrderType",
418
+ name: "orderType",
419
+ type: "uint8",
420
+ },
421
+ {
422
+ internalType: "address",
423
+ name: "token",
424
+ type: "address",
425
+ },
426
+ {
427
+ internalType: "address",
428
+ name: "YT",
429
+ type: "address",
430
+ },
431
+ {
432
+ internalType: "address",
433
+ name: "maker",
434
+ type: "address",
435
+ },
436
+ {
437
+ internalType: "address",
438
+ name: "receiver",
439
+ type: "address",
440
+ },
441
+ {
442
+ internalType: "uint256",
443
+ name: "makingAmount",
444
+ type: "uint256",
445
+ },
446
+ {
447
+ internalType: "uint256",
448
+ name: "lnImpliedRate",
449
+ type: "uint256",
450
+ },
451
+ {
452
+ internalType: "uint256",
453
+ name: "failSafeRate",
454
+ type: "uint256",
455
+ },
456
+ {
457
+ internalType: "bytes",
458
+ name: "permit",
459
+ type: "bytes",
460
+ },
461
+ ],
462
+ internalType: "struct Order[]",
463
+ name: "orders",
464
+ type: "tuple[]",
465
+ },
466
+ ],
467
+ name: "cancelBatch",
468
+ outputs: [],
469
+ stateMutability: "nonpayable",
470
+ type: "function",
471
+ },
472
+ {
473
+ inputs: [
474
+ {
475
+ components: [
476
+ {
477
+ internalType: "uint256",
478
+ name: "salt",
479
+ type: "uint256",
480
+ },
481
+ {
482
+ internalType: "uint256",
483
+ name: "expiry",
484
+ type: "uint256",
485
+ },
486
+ {
487
+ internalType: "uint256",
488
+ name: "nonce",
489
+ type: "uint256",
490
+ },
491
+ {
492
+ internalType: "enum IPLimitOrderType.OrderType",
493
+ name: "orderType",
494
+ type: "uint8",
495
+ },
496
+ {
497
+ internalType: "address",
498
+ name: "token",
499
+ type: "address",
500
+ },
501
+ {
502
+ internalType: "address",
503
+ name: "YT",
504
+ type: "address",
505
+ },
506
+ {
507
+ internalType: "address",
508
+ name: "maker",
509
+ type: "address",
510
+ },
511
+ {
512
+ internalType: "address",
513
+ name: "receiver",
514
+ type: "address",
515
+ },
516
+ {
517
+ internalType: "uint256",
518
+ name: "makingAmount",
519
+ type: "uint256",
520
+ },
521
+ {
522
+ internalType: "uint256",
523
+ name: "lnImpliedRate",
524
+ type: "uint256",
525
+ },
526
+ {
527
+ internalType: "uint256",
528
+ name: "failSafeRate",
529
+ type: "uint256",
530
+ },
531
+ {
532
+ internalType: "bytes",
533
+ name: "permit",
534
+ type: "bytes",
535
+ },
536
+ ],
537
+ internalType: "struct Order",
538
+ name: "order",
539
+ type: "tuple",
540
+ },
541
+ ],
542
+ name: "cancelSingle",
543
+ outputs: [],
544
+ stateMutability: "nonpayable",
545
+ type: "function",
546
+ },
547
+ {
548
+ inputs: [],
549
+ name: "claimOwnership",
550
+ outputs: [],
551
+ stateMutability: "nonpayable",
552
+ type: "function",
553
+ },
554
+ {
555
+ inputs: [],
556
+ name: "eip712Domain",
557
+ outputs: [
558
+ {
559
+ internalType: "bytes1",
560
+ name: "fields",
561
+ type: "bytes1",
562
+ },
563
+ {
564
+ internalType: "string",
565
+ name: "name",
566
+ type: "string",
567
+ },
568
+ {
569
+ internalType: "string",
570
+ name: "version",
571
+ type: "string",
572
+ },
573
+ {
574
+ internalType: "uint256",
575
+ name: "chainId",
576
+ type: "uint256",
577
+ },
578
+ {
579
+ internalType: "address",
580
+ name: "verifyingContract",
581
+ type: "address",
582
+ },
583
+ {
584
+ internalType: "bytes32",
585
+ name: "salt",
586
+ type: "bytes32",
587
+ },
588
+ {
589
+ internalType: "uint256[]",
590
+ name: "extensions",
591
+ type: "uint256[]",
592
+ },
593
+ ],
594
+ stateMutability: "view",
595
+ type: "function",
596
+ },
597
+ {
598
+ inputs: [],
599
+ name: "feeRecipient",
600
+ outputs: [
601
+ {
602
+ internalType: "address",
603
+ name: "",
604
+ type: "address",
605
+ },
606
+ ],
607
+ stateMutability: "view",
608
+ type: "function",
609
+ },
610
+ {
611
+ inputs: [
612
+ {
613
+ components: [
614
+ {
615
+ components: [
616
+ {
617
+ internalType: "uint256",
618
+ name: "salt",
619
+ type: "uint256",
620
+ },
621
+ {
622
+ internalType: "uint256",
623
+ name: "expiry",
624
+ type: "uint256",
625
+ },
626
+ {
627
+ internalType: "uint256",
628
+ name: "nonce",
629
+ type: "uint256",
630
+ },
631
+ {
632
+ internalType: "enum IPLimitOrderType.OrderType",
633
+ name: "orderType",
634
+ type: "uint8",
635
+ },
636
+ {
637
+ internalType: "address",
638
+ name: "token",
639
+ type: "address",
640
+ },
641
+ {
642
+ internalType: "address",
643
+ name: "YT",
644
+ type: "address",
645
+ },
646
+ {
647
+ internalType: "address",
648
+ name: "maker",
649
+ type: "address",
650
+ },
651
+ {
652
+ internalType: "address",
653
+ name: "receiver",
654
+ type: "address",
655
+ },
656
+ {
657
+ internalType: "uint256",
658
+ name: "makingAmount",
659
+ type: "uint256",
660
+ },
661
+ {
662
+ internalType: "uint256",
663
+ name: "lnImpliedRate",
664
+ type: "uint256",
665
+ },
666
+ {
667
+ internalType: "uint256",
668
+ name: "failSafeRate",
669
+ type: "uint256",
670
+ },
671
+ {
672
+ internalType: "bytes",
673
+ name: "permit",
674
+ type: "bytes",
675
+ },
676
+ ],
677
+ internalType: "struct Order",
678
+ name: "order",
679
+ type: "tuple",
680
+ },
681
+ {
682
+ internalType: "bytes",
683
+ name: "signature",
684
+ type: "bytes",
685
+ },
686
+ {
687
+ internalType: "uint256",
688
+ name: "makingAmount",
689
+ type: "uint256",
690
+ },
691
+ ],
692
+ internalType: "struct FillOrderParams[]",
693
+ name: "params",
694
+ type: "tuple[]",
695
+ },
696
+ {
697
+ internalType: "address",
698
+ name: "receiver",
699
+ type: "address",
700
+ },
701
+ {
702
+ internalType: "uint256",
703
+ name: "maxTaking",
704
+ type: "uint256",
705
+ },
706
+ {
707
+ internalType: "bytes",
708
+ name: "",
709
+ type: "bytes",
710
+ },
711
+ {
712
+ internalType: "bytes",
713
+ name: "callback",
714
+ type: "bytes",
715
+ },
716
+ ],
717
+ name: "fill",
718
+ outputs: [
719
+ {
720
+ internalType: "uint256",
721
+ name: "actualMaking",
722
+ type: "uint256",
723
+ },
724
+ {
725
+ internalType: "uint256",
726
+ name: "actualTaking",
727
+ type: "uint256",
728
+ },
729
+ {
730
+ internalType: "uint256",
731
+ name: "totalFee",
732
+ type: "uint256",
733
+ },
734
+ {
735
+ internalType: "bytes",
736
+ name: "callbackReturn",
737
+ type: "bytes",
738
+ },
739
+ ],
740
+ stateMutability: "nonpayable",
741
+ type: "function",
742
+ },
743
+ {
744
+ inputs: [
745
+ {
746
+ internalType: "address",
747
+ name: "YT",
748
+ type: "address",
749
+ },
750
+ ],
751
+ name: "getLnFeeRateRoot",
752
+ outputs: [
753
+ {
754
+ internalType: "uint256",
755
+ name: "res",
756
+ type: "uint256",
757
+ },
758
+ ],
759
+ stateMutability: "view",
760
+ type: "function",
761
+ },
762
+ {
763
+ inputs: [
764
+ {
765
+ components: [
766
+ {
767
+ internalType: "uint256",
768
+ name: "salt",
769
+ type: "uint256",
770
+ },
771
+ {
772
+ internalType: "uint256",
773
+ name: "expiry",
774
+ type: "uint256",
775
+ },
776
+ {
777
+ internalType: "uint256",
778
+ name: "nonce",
779
+ type: "uint256",
780
+ },
781
+ {
782
+ internalType: "enum IPLimitOrderType.OrderType",
783
+ name: "orderType",
784
+ type: "uint8",
785
+ },
786
+ {
787
+ internalType: "address",
788
+ name: "token",
789
+ type: "address",
790
+ },
791
+ {
792
+ internalType: "address",
793
+ name: "YT",
794
+ type: "address",
795
+ },
796
+ {
797
+ internalType: "address",
798
+ name: "maker",
799
+ type: "address",
800
+ },
801
+ {
802
+ internalType: "address",
803
+ name: "receiver",
804
+ type: "address",
805
+ },
806
+ {
807
+ internalType: "uint256",
808
+ name: "makingAmount",
809
+ type: "uint256",
810
+ },
811
+ {
812
+ internalType: "uint256",
813
+ name: "lnImpliedRate",
814
+ type: "uint256",
815
+ },
816
+ {
817
+ internalType: "uint256",
818
+ name: "failSafeRate",
819
+ type: "uint256",
820
+ },
821
+ {
822
+ internalType: "bytes",
823
+ name: "permit",
824
+ type: "bytes",
825
+ },
826
+ ],
827
+ internalType: "struct Order",
828
+ name: "order",
829
+ type: "tuple",
830
+ },
831
+ ],
832
+ name: "hashOrder",
833
+ outputs: [
834
+ {
835
+ internalType: "bytes32",
836
+ name: "",
837
+ type: "bytes32",
838
+ },
839
+ ],
840
+ stateMutability: "view",
841
+ type: "function",
842
+ },
843
+ {
844
+ inputs: [],
845
+ name: "increaseNonce",
846
+ outputs: [],
847
+ stateMutability: "nonpayable",
848
+ type: "function",
849
+ },
850
+ {
851
+ inputs: [
852
+ {
853
+ internalType: "address",
854
+ name: "_feeRecipient",
855
+ type: "address",
856
+ },
857
+ ],
858
+ name: "initialize",
859
+ outputs: [],
860
+ stateMutability: "nonpayable",
861
+ type: "function",
862
+ },
863
+ {
864
+ inputs: [
865
+ {
866
+ internalType: "address",
867
+ name: "",
868
+ type: "address",
869
+ },
870
+ ],
871
+ name: "nonce",
872
+ outputs: [
873
+ {
874
+ internalType: "uint256",
875
+ name: "",
876
+ type: "uint256",
877
+ },
878
+ ],
879
+ stateMutability: "view",
880
+ type: "function",
881
+ },
882
+ {
883
+ inputs: [
884
+ {
885
+ internalType: "address",
886
+ name: "makerAddress",
887
+ type: "address",
888
+ },
889
+ {
890
+ internalType: "uint256",
891
+ name: "makerNonce",
892
+ type: "uint256",
893
+ },
894
+ ],
895
+ name: "nonceEquals",
896
+ outputs: [
897
+ {
898
+ internalType: "bool",
899
+ name: "",
900
+ type: "bool",
901
+ },
902
+ ],
903
+ stateMutability: "view",
904
+ type: "function",
905
+ },
906
+ {
907
+ inputs: [
908
+ {
909
+ internalType: "bytes32[]",
910
+ name: "orderHashes",
911
+ type: "bytes32[]",
912
+ },
913
+ ],
914
+ name: "orderStatuses",
915
+ outputs: [
916
+ {
917
+ internalType: "uint256[]",
918
+ name: "remainings",
919
+ type: "uint256[]",
920
+ },
921
+ {
922
+ internalType: "uint256[]",
923
+ name: "filledAmounts",
924
+ type: "uint256[]",
925
+ },
926
+ ],
927
+ stateMutability: "view",
928
+ type: "function",
929
+ },
930
+ {
931
+ inputs: [
932
+ {
933
+ internalType: "bytes32[]",
934
+ name: "orderHashes",
935
+ type: "bytes32[]",
936
+ },
937
+ ],
938
+ name: "orderStatusesRaw",
939
+ outputs: [
940
+ {
941
+ internalType: "uint256[]",
942
+ name: "remainingsRaw",
943
+ type: "uint256[]",
944
+ },
945
+ {
946
+ internalType: "uint256[]",
947
+ name: "filledAmounts",
948
+ type: "uint256[]",
949
+ },
950
+ ],
951
+ stateMutability: "view",
952
+ type: "function",
953
+ },
954
+ {
955
+ inputs: [],
956
+ name: "owner",
957
+ outputs: [
958
+ {
959
+ internalType: "address",
960
+ name: "",
961
+ type: "address",
962
+ },
963
+ ],
964
+ stateMutability: "view",
965
+ type: "function",
966
+ },
967
+ {
968
+ inputs: [],
969
+ name: "ownerHelper",
970
+ outputs: [
971
+ {
972
+ internalType: "address",
973
+ name: "",
974
+ type: "address",
975
+ },
976
+ ],
977
+ stateMutability: "view",
978
+ type: "function",
979
+ },
980
+ {
981
+ inputs: [],
982
+ name: "pendingOwner",
983
+ outputs: [
984
+ {
985
+ internalType: "address",
986
+ name: "",
987
+ type: "address",
988
+ },
989
+ ],
990
+ stateMutability: "view",
991
+ type: "function",
992
+ },
993
+ {
994
+ inputs: [
995
+ {
996
+ internalType: "address",
997
+ name: "_feeRecipient",
998
+ type: "address",
999
+ },
1000
+ ],
1001
+ name: "setFeeRecipient",
1002
+ outputs: [],
1003
+ stateMutability: "nonpayable",
1004
+ type: "function",
1005
+ },
1006
+ {
1007
+ inputs: [
1008
+ {
1009
+ internalType: "address[]",
1010
+ name: "YTs",
1011
+ type: "address[]",
1012
+ },
1013
+ {
1014
+ internalType: "uint256[]",
1015
+ name: "lnFeeRateRoots",
1016
+ type: "uint256[]",
1017
+ },
1018
+ ],
1019
+ name: "setLnFeeRateRoots",
1020
+ outputs: [],
1021
+ stateMutability: "nonpayable",
1022
+ type: "function",
1023
+ },
1024
+ {
1025
+ inputs: [
1026
+ {
1027
+ internalType: "address",
1028
+ name: "_helper",
1029
+ type: "address",
1030
+ },
1031
+ ],
1032
+ name: "setOwnerHelper",
1033
+ outputs: [],
1034
+ stateMutability: "nonpayable",
1035
+ type: "function",
1036
+ },
1037
+ {
1038
+ inputs: [
1039
+ {
1040
+ internalType: "address",
1041
+ name: "target",
1042
+ type: "address",
1043
+ },
1044
+ {
1045
+ internalType: "bytes",
1046
+ name: "data",
1047
+ type: "bytes",
1048
+ },
1049
+ ],
1050
+ name: "simulate",
1051
+ outputs: [],
1052
+ stateMutability: "payable",
1053
+ type: "function",
1054
+ },
1055
+ {
1056
+ inputs: [
1057
+ {
1058
+ internalType: "address",
1059
+ name: "newOwner",
1060
+ type: "address",
1061
+ },
1062
+ {
1063
+ internalType: "bool",
1064
+ name: "direct",
1065
+ type: "bool",
1066
+ },
1067
+ {
1068
+ internalType: "bool",
1069
+ name: "renounce",
1070
+ type: "bool",
1071
+ },
1072
+ ],
1073
+ name: "transferOwnership",
1074
+ outputs: [],
1075
+ stateMutability: "nonpayable",
1076
+ type: "function",
1077
+ },
1078
+ {
1079
+ stateMutability: "payable",
1080
+ type: "receive",
1081
+ },
1082
+ ];
1083
+
1084
+ const _bytecode =
1085
+ "0x60a0346200014a57601f62005bee38819003918201601f19168301916001600160401b038311848410176200014f578084926020946040528339810103126200014a57516001600160a01b03811681036200014a5760805260015460ff8160a81c16620000f55760ff808260a01c1603620000b1575b604051615a889081620001668239608051818181611203015281816147300152818161477f015281816147ed01528181614a4c0152614c9f0152f35b60ff60a01b191660ff60a01b1760015560405160ff81527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a13862000075565b60405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b6064820152608490fd5b600080fd5b634e487b7160e01b600052604160045260246000fdfe6080604052600436101561001b575b361561001957600080fd5b005b60003560e01c8063078dfbe7146101bb5780630b4e3350146101b65780630c0b8c9c146101b15780632545e4bd146101ac57806332707597146101a757806335ee3ffc146101a25780633644e5151461019d57806346904840146101985780634e71e0c8146101935780635413fba71461018e5780635d436b7e146101895780636122b1731461018457806370ae92d21461017f57806372c244a81461017a57806384b0196e146101755780638da5cb5b14610170578063b381cf401461016b578063bd61951d14610166578063c4d66de814610161578063c53a02921461015c578063c6a6fcf114610157578063cf6fc6e314610152578063e30c39781461014d578063e74b981b14610148578063f1d4deb3146101435763f34c010c0361000e5761184b565b611786565b6116f7565b6116a5565b611638565b61156d565b611477565b6112e5565b611227565b6111b8565b611166565b611094565b610f5b565b610ef2565b610d68565b610c39565b610bdd565b610a93565b610a41565b610a08565b6109dc565b610983565b610936565b610850565b6106b6565b610207565b73ffffffffffffffffffffffffffffffffffffffff8116036101de57565b600080fd5b602435906101f0826101c0565b565b35906101f0826101c0565b801515036101de57565b346101de5760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57600435610242816101c0565b6024359061024f826101fd565b6044359061025c826101fd565b73ffffffffffffffffffffffffffffffffffffffff6000936102828286541633146118da565b156103d4578116918215908115916103cc575b501561036e5761033e916102d96102c0855473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1690565b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a373ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff00000000000000000000000000000000000000006000541617600055565b61036b7fffffffffffffffffffffffff000000000000000000000000000000000000000060015416600155565b80f35b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4f776e61626c653a207a65726f206164647265737300000000000000000000006044820152fd5b905038610295565b9150167fffffffffffffffffffffffff0000000000000000000000000000000000000000600154161760015580f35b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6060810190811067ffffffffffffffff82111761044e57604052565b610403565b6040810190811067ffffffffffffffff82111761044e57604052565b610160810190811067ffffffffffffffff82111761044e57604052565b610180810190811067ffffffffffffffff82111761044e57604052565b67ffffffffffffffff811161044e57604052565b60a0810190811067ffffffffffffffff82111761044e57604052565b6020810190811067ffffffffffffffff82111761044e57604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff82111761044e57604052565b604051906101f08261048c565b604051906101f0826104bd565b604051906101f082610453565b359060048210156101de57565b67ffffffffffffffff811161044e57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b81601f820112156101de578035906105bb8261056a565b926105c960405194856104f5565b828452602083830101116101de57816000926020809301838601378301015290565b9190610180838203126101de57610600610536565b928035845260208101356020850152604081013560408501526106256060820161055d565b6060850152610636608082016101f2565b608085015261064760a082016101f2565b60a085015261065860c082016101f2565b60c085015261066960e082016101f2565b60e0850152610100808201359085015261012080820135908501526101408082013590850152610160918282013567ffffffffffffffff81116101de576106b092016105a4565b90830152565b346101de5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5767ffffffffffffffff6004358181116101de576107069036906004016105eb565b906024359081116101de5760609161072561072b9236906004016105a4565b906119a4565b9060405192835260208301526040820152f35b67ffffffffffffffff811161044e5760051b60200190565b6020807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc8301126101de576004359167ffffffffffffffff83116101de57806023840112156101de5782600401356107ad8161073e565b936107bb60405195866104f5565b8185526024602086019260051b8201019283116101de57602401905b8282106107e5575050505090565b813581529083019083016107d7565b90815180825260208080930193019160005b828110610814575050505090565b835185529381019392810192600101610806565b909161083f61084d936040845260408401906107f4565b9160208184039101526107f4565b90565b346101de5761086661086136610756565b611e84565b60005b82518110156109215761087c8184611bae565b51156108c357807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6108b060019386611bae565b51016108bc8286611bae565b5201610869565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4c4f503a20556e6b6e6f776e206f7264657200000000000000000000000000006044820152fd5b509061093260405192839283610828565b0390f35b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602061097b600435610976816101c0565b611bc2565b604051908152f35b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5760043567ffffffffffffffff81116101de5761097b6109d760209236906004016105eb565b611d9e565b346101de576109ed61086136610756565b9061093260405192839283610828565b60009103126101de57565b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602061097b6132b8565b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602073ffffffffffffffffffffffffffffffffffffffff60cb5416604051908152f35b346101de576000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610bda5773ffffffffffffffffffffffffffffffffffffffff8060015416803303610b7c5780610b51928454167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a373ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffff00000000000000000000000000000000000000006000541617600055565b7fffffffffffffffffffffffff00000000000000000000000000000000000000006001541660015580f35b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e65726044820152fd5b80fd5b346101de577ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc6020813601126101de576004359067ffffffffffffffff82116101de576101809082360301126101de5761001990600401611f12565b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602073ffffffffffffffffffffffffffffffffffffffff60ce5416604051908152f35b9181601f840112156101de5782359167ffffffffffffffff83116101de57602083818601950101116101de57565b60005b838110610ccc5750506000910152565b8181015183820152602001610cbc565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602093610d1881518092818752878088019101610cb9565b0116010190565b90608061084d926000815260006020820152600060408201528160608201520190610cdc565b909260809261084d95948352602083015260408201528160608201520190610cdc565b346101de5760a07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5760043567ffffffffffffffff8082116101de57366023830112156101de578160040135602492610dc68261073e565b93604092610dd760405196876104f5565b8086526020936024602088019260051b850101933685116101de5760248101925b858410610e5c578888610e096101e3565b6064358281116101de57610e21903690600401610c8b565b50506084359182116101de5761093292610e42610e4c9336906004016105a4565b91604435916120a9565b9060409492945194859485610d45565b83358881116101de57820160607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc82360301126101de57835191610e9f83610432565b868201358a81116101de57610eb9908836918501016105eb565b83526044820135928a84116101de5760648a9493610edd86958b36918401016105a4565b85840152013586820152815201930192610df8565b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5773ffffffffffffffffffffffffffffffffffffffff600435610f42816101c0565b1660005260666020526020604060002054604051908152f35b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5760043560ff81168091036101de5760009033825260666020526040822054908082018092116110095733835260666020528160408420558103908082116110095760408051928352602083019190915233917fdc0537f71d06d3708f52baf4ddf6918b25f1a145ba08873de27485682b35cac191819081015b0390a280f35b612189565b919361107461084d96949561106673ffffffffffffffffffffffffffffffffffffffff947f0f00000000000000000000000000000000000000000000000000000000000000875260e0602088015260e0870190610cdc565b908582036040870152610cdc565b946060840152166080820152600060a082015260c08184039101526107f4565b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57600254158061115c575b156110fe576110da613073565b6110e2613156565b906109326110ee611e1d565b604051938493309146918661100e565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4549503731323a20556e696e697469616c697a656400000000000000000000006044820152fd5b50600354156110cd565b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602073ffffffffffffffffffffffffffffffffffffffff60005416604051908152f35b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602060405173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b60407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5760043561125d816101c0565b60243567ffffffffffffffff81116101de5760009161128183923690600401610c8b565b90816040519283928337810184815203915af461129c6121d2565b906112e16040519283927f1934afc800000000000000000000000000000000000000000000000000000000845215156004840152604060248401526044830190610cdc565b0390fd5b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57600435611320816101c0565b6113966001549161134860ff8460a81c161580948195611465575b8115611442575b50612202565b8261138d740100000000000000000000000000000000000000007fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff6001541617600155565b6113f85761228d565b61139c57005b6113c97fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff60015416600155565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b61143d75010000000000000000000000000000000000000000007fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff6001541617600155565b61228d565b303b15915081611454575b5038611342565b60a01c60ff1660011490503861144d565b9050600160ff8260a01c16109061133b565b346101de576000807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610bda573381526066602052604081205460018101808211611009576110037fdc0537f71d06d3708f52baf4ddf6918b25f1a145ba08873de27485682b35cac191338552606660205280604086205560405191829133958360209093929193604081019481520152565b9080601f830112156101de5760209082356115278161073e565b9361153560405195866104f5565b81855260208086019260051b8201019283116101de57602001905b82821061155e575050505090565b81358152908301908301611550565b346101de5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5767ffffffffffffffff6004358181116101de57366023820112156101de5780600401356115c88161073e565b916115d660405193846104f5565b8183526020916024602085019160051b830101913683116101de57602401905b82821061161f57602435858782116101de5761161961001992369060040161150d565b906124c7565b838091833561162d816101c0565b8152019101906115f6565b346101de5760407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5773ffffffffffffffffffffffffffffffffffffffff600435611688816101c0565b166000526066602052602060243560406000205414604051908152f35b346101de5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57602073ffffffffffffffffffffffffffffffffffffffff60015416604051908152f35b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57600435611732816101c0565b73ffffffffffffffffffffffffffffffffffffffff90611757826000541633146118da565b167fffffffffffffffffffffffff000000000000000000000000000000000000000060cb54161760cb55600080f35b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de5767ffffffffffffffff6004358181116101de57366023820112156101de5780600401359182116101de5760059060243684841b83018201116101de57600093927ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe5d83360301945b84811061182557005b8281831b8501013590868212156101de5761184584600193870101611f12565b0161181c565b346101de5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101de57600435611886816101c0565b73ffffffffffffffffffffffffffffffffffffffff906118ab826000541633146118da565b167fffffffffffffffffffffffff000000000000000000000000000000000000000060ce54161760ce55600080f35b156118e157565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b1561194657565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4c4f503a20626164207369676e617475726500000000000000000000000000006044820152fd5b916119ae83611d9e565b92600084815260209060cd8252604081209482604051966119ce88610453565b54966fffffffffffffffffffffffffffffffff88169788825260801c91829101528015600014611b42575073ffffffffffffffffffffffffffffffffffffffff928360c086015116611a20838a613280565b9390956005851015611b3d578a94159687611b31575b50508515611a57575b505050505090611a516101009261193f565b01519190565b849550908492939491604051611ad581611aa9888201947f1626ba7e000000000000000000000000000000000000000000000000000000009a8b87526024840152604060448401526064830190610cdc565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081018352826104f5565b51915afa92611ae26121d2565b9084611b24575b84611b02575b50611a5192508791503890508080611a3f565b90918093945082805181010312610bda5750015114611a516101003880611aef565b9350818151101593611ae9565b16821495503880611a36565b611c4d565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0195949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b805115611ba95760200190565b611b6d565b8051821015611ba95760209160051b010190565b73ffffffffffffffffffffffffffffffffffffffff1660005260cc602052604060002054908115611bef57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4c4f503a20666565206e6f7420736574000000000000000000000000000000006044820152fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60041115611b3d57565b906004821015611b3d5752565b61018090939291936101a08101947f22742a2f8610a2d0e945db84f408aacc9d3081f99974bc30b023966fa2fd59318252805160208301526020810151604083015260408101516060830152611cf160608201516080840190611c86565b608081015173ffffffffffffffffffffffffffffffffffffffff1660a083015260a081015173ffffffffffffffffffffffffffffffffffffffff1660c083015260c081015173ffffffffffffffffffffffffffffffffffffffff1660e083015260e0810151611d7b610100918285019073ffffffffffffffffffffffffffffffffffffffff169052565b810151610120908184015281015190610140918284015201516101608201520152565b61084d90604051611dae8161046f565b6101406000918281528260208201528260408201528260608201528260808201528260a08201528260c08201528260e082015282610100820152826101208201520152611aa9611e1561016083015160208151910120604051928391602083019586611c93565b519020612820565b604051611e29816104d9565b60008152906000368137565b90611e3f8261073e565b611e4c60405191826104f5565b8281527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0611e7a829461073e565b0190602036910137565b805191611e9083611e35565b92611e9a81611e35565b9260009060005b838110611eae5750505050565b80611ebb60019284611bae565b518452602060cd81526040808620905190611ed582610453565b54906fffffffffffffffffffffffffffffffff82169182825260801c9283910152611f00838a611bae565b52611f0b828a611bae565b5201611ea1565b60c0810135611f20816101c0565b73ffffffffffffffffffffffffffffffffffffffff33911603612032576109d7611f4b9136906105eb565b6001611f618260005260cd602052604060002090565b5460801c14611fd457611fac611f818260005260cd602052604060002090565b7001000000000000000000000000000000006fffffffffffffffffffffffffffffffff825416179055565b337f35ab4a1a0e9bec7fd7ae164679b9cc00e6568e4db238d8055a75b1862f62ec2e600080a3565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4c4f503a20616c72656164792066696c6c6564000000000000000000000000006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601260248201527f4c4f503a204163636573732064656e69656400000000000000000000000000006044820152fd5b516004811015611b3d5790565b6004821015611b3d5752565b6120b590939193612ac8565b91825115612173576120d360606120cb85611b9c565b515101612090565b926120dd84611c7c565b83158015612160575b1561213e5761213694612127916121056120fe610543565b968761209d565b602086015273ffffffffffffffffffffffffffffffffffffffff166040850152565b60608301526080820152612eee565b929391929091565b61213694612151916121056120fe610543565b60608301526080820152612dab565b5061216a84611c7c565b600284146120e6565b509050612180915061332e565b60009182918291565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9190820180921161100957565b9190820391821161100957565b3d156121fd573d906121e38261056a565b916121f160405193846104f5565b82523d6000602084013e565b606090565b1561220957565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152fd5b9060019160ff60015460a81c166122a3816131f5565b337fffffffffffffffffffffffff00000000000000000000000000000000000000006000541617600055604051936122da85610453565b601b85526020907f50656e646c65204c696d6974204f726465722050726f746f636f6c0000000000602087015261234f6040519361231785610453565b600185527f3100000000000000000000000000000000000000000000000000000000000000602086015261234a816131f5565b6131f5565b85519167ffffffffffffffff831161044e5761237583612370600454613020565b61412c565b602091601f84116001146123fa575050816123d693926123ce926101f097986000926123ef575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c19161790565b600455614210565b6123e06000600255565b6123ea6000600355565b6127cf565b01519050388061239c565b600460009081527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08516987f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b949390925b8a83106124b0575050509183916001936123d696956101f0999a10612479575b505050811b01600455614210565b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c1916905538808061246b565b83850151865594850194938101939181019161244b565b73ffffffffffffffffffffffffffffffffffffffff8060ce54163314908115612691575b5015612633578051825181036125d55760005b81811061253e575050907fc3db6554492d97a6a5438d341beeab3232f4f79acc844de8e881ccf16330d31f9161253960405192839283612769565b0390a1565b8061255661254e60019387611bae565b51151561269f565b61257366ad566553da1bc361256b8388611bae565b511115612704565b61257d8186611bae565b516125ce6125a861258e8488611bae565b5173ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1660005260cc602052604060002090565b55016124fe565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f4c4f503a206c656e677468206d69736d617463680000000000000000000000006044820152fd5b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600b60248201527f6e6f7420616c6c6f7765640000000000000000000000000000000000000000006044820152fd5b9050600054163314386124eb565b156126a657565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f4c4f503a207a65726f20666565206e6f7420616c6c6f776564000000000000006044820152fd5b1561270b57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f4c4f503a2066656520746f6f20686967680000000000000000000000000000006044820152fd5b9092916040820191604081528451809352606081019260208096019060005b8181106127a55750505061084d93945060208184039101526107f4565b825173ffffffffffffffffffffffffffffffffffffffff1686529487019491870191600101612788565b73ffffffffffffffffffffffffffffffffffffffff906127f4826000541633146118da565b167fffffffffffffffffffffffff000000000000000000000000000000000000000060cb54161760cb55565b60429061282b6132b8565b90604051917f19010000000000000000000000000000000000000000000000000000000000008352600283015260228201522090565b1561286857565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f4c4f503a20656d707479206261746368000000000000000000000000000000006044820152fd5b908160209103126101de575190565b6040513d6000823e3d90fd5b156128e857565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f4c4f503a205059206578706972656400000000000000000000000000000000006044820152fd5b1561294d57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4c4f503a206d69736d61746368207479706573000000000000000000000000006044820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146110095760010190565b6040516000815261084d816104d9565b906129f28261073e565b604090612a0260405191826104f5565b8381527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0612a30829561073e565b019160005b838110612a425750505050565b6020908251612a5081610432565b8351612a5b8161048c565b60008152839060008282015260008682015260609060008282015260006080820152600060a0820152600060c0820152600060e082015260006101008201526000610120820152600061014082015281610160820152835281830152600085830152828601015201612a35565b908151612ad6811515612861565b60a0612b0360a0612ae686611b9c565b5151015173ffffffffffffffffffffffffffffffffffffffff1690565b606091612b1460606120cb88611b9c565b9073ffffffffffffffffffffffffffffffffffffffff80931693604091604051957fe184c9be0000000000000000000000000000000000000000000000000000000087526020968781600481855afa8015612d4157612b7d91600091612d14575b5042106128e1565b60009560005b898110612c095750505050505050612b9e612ba391846121c5565b6129e8565b9360009160005b848110612bb8575050505050565b81612bc38285611bae565b51015151612bd4575b600101612baa565b92612c01600191612be58686611bae565b51612bf0828b611bae565b52612bfb818a611bae565b506129ab565b939050612bcc565b612c13818d611bae565b51518786820151612c2381611c7c565b612c2c82611c7c565b612c3581611c7c565b1480612ce5575b612c4590612946565b8981015142109081612c8c575b5015612c61575b600101612b83565b96612c6d6001916129ab565b978c8a612c8283612c7c6129d8565b93611bae565b5101529050612c59565b9050612cdc612cb660c08984015193015173ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff166000526066602052604060002090565b54111538612c52565b50612c458484612d0b8885015173ffffffffffffffffffffffffffffffffffffffff1690565b16149050612c3c565b612d349150893d8b11612d3a575b612d2c81836104f5565b8101906128c6565b38612b75565b503d612d22565b6128d5565b15612d4d57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4c4f503a206d617854616b696e672065786365656465640000000000000000006044820152fd5b906020820191612dbb8351613516565b612dd6879492979693965188612dd081611bc2565b91613774565b805192602082015195612def60408401978851906121b8565b9651978799869b612e0660608401518b1115612d46565b60018351612e1381611c7c565b612e1c81611c7c565b03612ee65750955b888a73ffffffffffffffffffffffffffffffffffffffff9385516040820151612e609073ffffffffffffffffffffffffffffffffffffffff1690565b9a60808a019b878d51921692612e759361386a565b6080015191612e839361340f565b97303392851692612e93936138e7565b805160a0840151612ea491846139da565b918860cb54612ec69073ffffffffffffffffffffffffffffffffffffffff1690565b612ecf92613c9c565b51935160c08301519260e00151936101f095613da1565b905095612e24565b9060208201908151612eff90613516565b9592859492919451612f119082613efd565b96865186612f1e81611bc2565b90612f2892613774565b9081519860408301998a51612f3c916121c5565b9860208401519a5198898c9b809d60608c0151811115612f5b90612d46565b60408c0151612f8290839073ffffffffffffffffffffffffffffffffffffffff168b613c9c565b8260808d015191612f929361340f565b9951612f9d81611c7c565b612fa681611c7c565b1560001497613004926101f0996130185750965b612fe584519860a08901998a519173ffffffffffffffffffffffffffffffffffffffff3391166140af565b60cb5473ffffffffffffffffffffffffffffffffffffffff1690613c9c565b5193519160e060c085015194015194613da1565b905096612fba565b90600182811c92168015613069575b602083101461303a57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f169161302f565b604051906000826004549161308783613020565b8083529260209060019081811690811561311357506001146130b2575b50506101f0925003836104f5565b91509260046000527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b936000925b8284106130fb57506101f094505050810160200138806130a4565b855488850183015294850194879450928101926130e0565b9050602093506101f09592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b82010138806130a4565b604051906000826005549161316a83613020565b8083529260209060019081811690811561311357506001146131945750506101f0925003836104f5565b91509260056000527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0936000925b8284106131dd57506101f094505050810160200138806130a4565b855488850183015294850194879450928101926131c2565b156131fc57565b60846040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152fd5b9060418151146000146132ae576132aa916020820151906060604084015193015160001a9061434e565b9091565b5050600090600290565b6132c06143dd565b6132c8614428565b6040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815260c0810181811067ffffffffffffffff82111761044e5760405251902090565b90606091805161333b5750565b613378919250604051907feb3a7d470000000000000000000000000000000000000000000000000000000082528180600094859360048301610d1f565b038183335af1918215612d4157809261339057505090565b9091503d8082843e6133a281846104f5565b8201916020818403126134075780519067ffffffffffffffff821161340b570182601f82011215613407578051916133d98361056a565b936133e760405195866104f5565b83855260208484010111610bda57509061084d9160208085019101610cb9565b5080fd5b8280fd5b909193926060948151613423575b50505050565b6134639394955060405193849283927feb3a7d47000000000000000000000000000000000000000000000000000000008452600097889660048601610d45565b038183335af1918215612d41578092613483575b5050903880808061341d565b9091503d8082843e61349581846104f5565b8201916020818403126134075780519067ffffffffffffffff821161340b570182601f82011215613407578051916134cc8361056a565b936134da60405195866104f5565b83855260208484010111610bda5750906134fa9160208085019101610cb9565b3880613477565b908160209103126101de575161084d816101c0565b9081519161352383611e35565b9260005b81811061362257505060a0612ae661353e92611b9c565b73ffffffffffffffffffffffffffffffffffffffff8116926040517fafd27bf50000000000000000000000000000000000000000000000000000000081526020908181600481895afa908115612d41576004918391600091613605575b5096604051928380927fd94073d40000000000000000000000000000000000000000000000000000000082525afa918215612d41576000926135dc57505092565b6135fb9250803d106135fe575b6135f381836104f5565b810190613501565b92565b503d6135e9565b61361c9150823d84116135fe576135f381836104f5565b3861359b565b8060406001613632819487611bae565b5161371081516136b261367561364e60209384870151906119a4565b9291989096019561366e61366382895161444e565b988980930301614460565b9201614460565b92613699613681610550565b6fffffffffffffffffffffffffffffffff9095168552565b8301906fffffffffffffffffffffffffffffffff169052565b6136c68560005260cd602052604060002090565b815160209092015160801b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b5261371b8288611bae565b5201613527565b60405190610100820182811067ffffffffffffffff82111761044e57604052606060e0836000815260006020820152600060408201526000838201528260808201528260a08201528260c08201520152565b919073ffffffffffffffffffffffffffffffffffffffff90613794613722565b5016604051907fe184c9be0000000000000000000000000000000000000000000000000000000082526020938483600481855afa8015612d41576137e58691600095869161384d575b5042906121c5565b926004604051809681937f1d52edc40000000000000000000000000000000000000000000000000000000083525af1928315612d415761084d9560009461382e575b50506144e2565b613845929450803d10612d3a57612d2c81836104f5565b913880613827565b6138649150833d8511612d3a57612d2c81836104f5565b386137dd565b909182519360005b85811061388157505050505050565b60019060c073ffffffffffffffffffffffffffffffffffffffff80826138a7858b611bae565b5151015116818716146138e0576138da916138c2848a611bae565b5151015116856138d28487611bae565b519188614696565b01613872565b50506138da565b929190826138f55750505050565b6138fe93614696565b3880808061341d565b90670de0b6b3a76400009182810292818404149015171561100957565b8181029291811591840414171561100957565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8115613970570490565b613937565b1561397c57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4c4f503a206661696c20736166650000000000000000000000000000000000006044820152fd5b9092918351906139e982611e35565b94600080945b8482106139fe57505050505050565b608097949697959192939591613a1883612ae68688611bae565b9060005b89821080613c7f575b15613a4e57613a42613a4891613a3b848c611bae565b51906121b8565b916129ab565b90613a1c565b99989795949293919096998015613c765773ffffffffffffffffffffffffffffffffffffffff808316918187168314613c20576001613a8d878c6121c5565b03613b4257505050613abc9150613aa960e0612ae68588611bae565b9084613ab58589611bae565b51926147bb565b613ac6828a611bae565b525b848110613adb57505b83909493946139ef565b80613af7613aeb60019386611bae565b51516130859051061590565b613b02575b01613ac8565b613b3d613b0f8287611bae565b51613b36613b1d848d611bae565b5191610140613b2c868a611bae565b5151015190614bea565b1115613975565b613afc565b613b4e818589306147bb565b8d89888c8e5b8210613b695750505050505050505050613ac8565b81868682938d613b798589611bae565b5151015173ffffffffffffffffffffffffffffffffffffffff1693613b9d91611bae565b5190613ba891613924565b90613bb291613966565b613bbc8387611bae565b52898186848b83168d141597613bf996613be89560e095612ae69560019c613c03575b50505050611bae565b613bf28487611bae565b5191613c9c565b018a908c8e613b54565b613c1793613c1091611bae565b5191614b3c565b818f878c613bdf565b50505050505b848110613c335750613ad1565b80613c5a613c4860e0612ae660019588611bae565b613c528388611bae565b519085613c9c565b613c648186611bae565b51613c6f828b611bae565b5201613c26565b50505050613ad1565b50613c97613c9186612ae6858b611bae565b846146fb565b613a25565b8215613d9c5773ffffffffffffffffffffffffffffffffffffffff1680613d355750600080809381935af1613ccf6121d2565b5015613cd757565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600f60248201527f6574682073656e64206661696c656400000000000000000000000000000000006044820152fd5b6040517fa9059cbb00000000000000000000000000000000000000000000000000000000602082015273ffffffffffffffffffffffffffffffffffffffff9290921660248301526044808301939093529181526101f091613d976064836104f5565b614e7f565b505050565b919394909485519560005b878110613dbd575050505050505050565b80878782808080808c8c8c8c613dd38585611bae565b515197613ddf91611bae565b519860608801519a613df08c611c7c565b60a089015173ffffffffffffffffffffffffffffffffffffffff1660809099015173ffffffffffffffffffffffffffffffffffffffff1697613e3191611bae565b5195613e3c91611bae565b519a613e4791611bae565b5196613e5291611bae565b5191613e5d91611bae565b515160c0015173ffffffffffffffffffffffffffffffffffffffff1690613e8388611c7c565b6040805173ffffffffffffffffffffffffffffffffffffffff958616815260208101949094528301989098526060820194909452608081019690965291821660a08601523360c086015216927f338aa396bce529256f46f1d51f463cc5be80195004e47cf0a1527507d38404479060e090a4600101613dac565b9190918251613f0b81611e35565b93600090815b838110613f1f575050505050565b6080969496959395929192613f3881612ae68487611bae565b946000935b88811080614080575b15613fb45780613f91613f6160c0612ae6613faf958b611bae565b96613f7d60409889613f73868d611bae565b510151908c614c01565b87613f88848b611bae565b510151906121b8565b95613f9c8289611bae565b510151613fa9828b611bae565b526129ab565b613f3d565b9590979493915097959773ffffffffffffffffffffffffffffffffffffffff808816908216148015614078575b6140705781613ff09188614c9d565b915b858110614005575050505b829192613f11565b6001906040806140158388611bae565b5101519061402c856140278885613924565b613966565b918261403b613aeb868b611bae565b614055575b505061404c8388611bae565b51015201613ff2565b613b3661406992610140613b2c888d611bae565b3882614040565b505050613ffd565b508115613fe1565b5061408f83612ae68389611bae565b73ffffffffffffffffffffffffffffffffffffffff808916911614613f46565b909282519360005b8581106140c657505050505050565b60019060e073ffffffffffffffffffffffffffffffffffffffff80826140ec858b611bae565b5151015116818616146141255761411f91614107848a611bae565b51510151166141168387611bae565b51908588614696565b016140b7565b505061411f565b601f8111614138575050565b60009060046000527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b906020601f850160051c83019410614194575b601f0160051c01915b82811061418957505050565b81815560010161417d565b9092508290614174565b601f81116141aa575050565b60009060056000527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db0906020601f850160051c83019410614206575b601f0160051c01915b8281106141fb57505050565b8181556001016141ef565b90925082906141e6565b90815167ffffffffffffffff811161044e5761423681614231600554613020565b61419e565b602080601f831160011461428a5750819061428593946000926123ef5750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8260011b9260031b1c19161790565b600555565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08316946142db60056000527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db090565b926000905b8782106143365750508360019596106142ff575b505050811b01600555565b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690553880806142f4565b806001859682949686015181550195019301906142e0565b9291907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083116143d15791608094939160ff602094604051948552168484015260408301526060820152600093849182805260015afa15612d4157815173ffffffffffffffffffffffffffffffffffffffff8116156143cb579190565b50600190565b50505050600090600390565b6143e5613073565b80519081156143f5576020012090565b505060025480156144035790565b507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47090565b614430613156565b8051908115614440576020012090565b505060035480156144035790565b908082101561445b575090565b905090565b6fffffffffffffffffffffffffffffffff908181116101de571690565b1561448457565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f4c4f503a2063616e27742073776170203020616d6f756e7400000000000000006044820152fd5b93929091936144ef613722565b948151936144fc85611e35565b608088015261450a85611e35565b60a088015261451885611e35565b60c088015261452685611e35565b60e088015261455361454e8261454861454360606120cb89611b9c565b614e24565b966152a1565b614e74565b92600094602089019060408a01928a60608101985b8a811061457c575050505050505050505050565b88888260019461458c8288611bae565b51908860408301928d8451156146895761467e976146529760e09688956145bf6145e59561012061460c98510151614e6a565b91516145cf8860808b0151611bae565b526145de8760808a0151611bae565b519061596b565b906146068560a08897959701519360c089015190614606838c8c0151611bae565b52611bae565b5261462661461e8460a0840151611bae565b51151561447d565b61463f614637846080840151611bae565b5182516121b8565b815261465a6146528460a0840151611bae565b518b516121b8565b8a5261467561466d8460c0840151611bae565b518c516121b8565b8b520151611bae565b8a525b018b90614568565b5050505050505050614681565b90926101f093604051937f23b872dd00000000000000000000000000000000000000000000000000000000602086015273ffffffffffffffffffffffffffffffffffffffff8092166024860152166044840152606483015260648252613d97826104bd565b73ffffffffffffffffffffffffffffffffffffffff80809316911681811492831561476b575b831561472e575b50505090565b7f00000000000000000000000000000000000000000000000000000000000000001614915081614762575b50388080614728565b90501538614759565b925080158061477b575b92614721565b50827f0000000000000000000000000000000000000000000000000000000000000000168214614775565b908160209103126101de575161084d816101fd565b73ffffffffffffffffffffffffffffffffffffffff8381169594928615808015614a48575b1561499b571561499257817f0000000000000000000000000000000000000000000000000000000000000000915b6040517f784367d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff881660048201526020969290911692918682602481875afa928315612d41576148f1938893600091614965575b501561495d5750879384915b60006040518096819582947f769f8e5d0000000000000000000000000000000000000000000000000000000084523060048501608091600093959460a083019673ffffffffffffffffffffffffffffffffffffffff809316845260208401521660408201528260608201520152565b03925af1948515612d415760009561493e575b5050838581988484160361492d575b505050309082160361492457505050565b6101f092613c9c565b61493692614b3c565b388385614913565b614955929550803d10612d3a57612d2c81836104f5565b923880614904565b938491614882565b6149859150843d861161498b575b61497d81836104f5565b8101906147a6565b38614876565b503d614973565b8160009161480e565b5091614a189596506020949391600091604051978896879586937f769f8e5d00000000000000000000000000000000000000000000000000000000855260048501608091600093959460a083019673ffffffffffffffffffffffffffffffffffffffff809316845260208401521660408201528260608201520152565b0393165af1908115612d4157600091614a2f575090565b61084d915060203d602011612d3a57612d2c81836104f5565b50827f00000000000000000000000000000000000000000000000000000000000000001688146147e0565b73ffffffffffffffffffffffffffffffffffffffff1680614ae9575060003b156101de576000600491604051928380927fd0e30db0000000000000000000000000000000000000000000000000000000008252845af18015612d4157614ad65750565b80614ae36101f0926104a9565b806109fd565b803b156101de576040517f2e1a7d4d00000000000000000000000000000000000000000000000000000000815260048101929092526000908290818381602481015b03925af18015612d4157614ad65750565b73ffffffffffffffffffffffffffffffffffffffff9190821680614ba1575016803b156101de576000906004604051809481937fd0e30db00000000000000000000000000000000000000000000000000000000083525af18015612d4157614ad65750565b915050803b156101de576040517f2e1a7d4d0000000000000000000000000000000000000000000000000000000081526004810192909252600090829081838160248101614b2b565b670de0b6b3a764000091614bfd91613924565b0490565b90919073ffffffffffffffffffffffffffffffffffffffff1680614c88575090503403614c2a57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f657468206d69736d6174636800000000000000000000000000000000000000006044820152fd5b81614c9257505050565b6101f0923091614696565b7f0000000000000000000000000000000000000000000000000000000000000000929173ffffffffffffffffffffffffffffffffffffffff8082168186161480614d8d575b9084614a1896602096959493614d78575b5050614cff8383614f9f565b818116614d705783905b6040518097819682957f20e8c56500000000000000000000000000000000000000000000000000000000845230600485016000929493606092608083019673ffffffffffffffffffffffffffffffffffffffff809216845216602083015260408201520152565b600090614d09565b614d83929350614a73565b6000908338614cf3565b506040517ffa5a4f0600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86166004820152939291906020856024818487165afa948515612d4157614a18966020968692600091614e07575b5015929394955096509450614ce2565b614e1e9150883d8a1161498b5761497d81836104f5565b38614df7565b6004811015611b3d5780614e385750600190565b614e4181611c7c565b60018103614e4f5750600290565b80614e5b600292611c7c565b03614e6557600390565b600490565b90614e74916152a1565b600081126101de5790565b604051614eea9173ffffffffffffffffffffffffffffffffffffffff16614ea582610453565b6000806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af1614ee46121d2565b91615870565b805190828215928315614f87575b50505015614f035750565b608490604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152fd5b614f9793508201810191016147a6565b388281614ef8565b919073ffffffffffffffffffffffffffffffffffffffff92838116938415615162576040519485917fdd62ed3e0000000000000000000000000000000000000000000000000000000083523060048401528416602483015281604460209788935afa8015612d41576b7fffffffffffffffffffffff91600091615145575b501061502a575b50509050565b6040517f095ea7b30000000000000000000000000000000000000000000000000000000085820190815273ffffffffffffffffffffffffffffffffffffffff841660248301526000604483018190529182919061508a8160648101611aa9565b519082855af16150986121d2565b81615115575b50156150b7576150af9293506152e1565b803880615024565b606484604051907f08c379a00000000000000000000000000000000000000000000000000000000082526004820152600c60248201527f5361666520417070726f766500000000000000000000000000000000000000006044820152fd5b8051801592508690831561512d575b5050503861509e565b61513d93508201810191016147a6565b388581615124565b61515c9150863d8811612d3a57612d2c81836104f5565b3861501d565b5050509050565b929391937ffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c0000948583019280841161100957670de0b6b3a76400006151b06151b69388613924565b04613924565b82156139705782900494810190811161100957816151d7614bfd9286613924565b0493613907565b6151ed90949394929192613907565b918015613970576151ff92049061540b565b917ffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c000081019081116110095761523d670de0b6b3a76400009184613924565b04908290565b9293916151b09161526091670de0b6b3a764000093849187613924565b04927ffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c00008101818111611009576152969084613924565b811561397057049190565b6301e13380916152b091613924565b047f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81116101de5761084d90615494565b6040517f095ea7b3000000000000000000000000000000000000000000000000000000006020820190815273ffffffffffffffffffffffffffffffffffffffff90931660248201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff604482015260009283929183906153648160648101611aa9565b51925af16153706121d2565b816153dc575b501561537e57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f5361666520417070726f766500000000000000000000000000000000000000006044820152fd5b80518015925082156153f1575b505038615376565b61540492506020809183010191016147a6565b38806153e9565b9061396690613907565b1561541c57565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f496e76616c6964206578706f6e656e74000000000000000000000000000000006044820152fd5b8015613970576ec097ce7bc90715b34b9f10000000000590565b7ffffffffffffffffffffffffffffffffffffffffffffffffdc702bd3a30fc00008112158061585d575b6154c790615415565b60008112615848576064906806f05b59d3b200000081126157e5577ffffffffffffffffffffffffffffffffffffffffffffffff90fa4a62c4e0000000168056bc75e2d6310000082770195e54c5dd42177f53a27172fa9ec630262827000000000925b02819068ad78ebc5ac620000008112156157ac575b6856bc75e2d631000000811215615772575b682b5e3af16b1880000081121561573a575b6815af1d78b58c400000811215615702575b680ad78ebc5ac62000008112156156cb575b82811215615694575b6802b5e3af16b188000081121561565d575b68015af1d78b58c40000811215615626575b60028382800205058360038184840205056004828583020505600583868302050560068487830205056007858883020505906008868984020505926009878a8602050594600a888b8802050596600b898c8a02050599600c8a8d8d0205059b0101010101010101010101010205020590565b6806f5f17757889379377ffffffffffffffffffffffffffffffffffffffffffffffffea50e2874a73c0000849201920205906155b4565b6808f00f760a4b2db55d7ffffffffffffffffffffffffffffffffffffffffffffffffd4a1c50e94e780000849201920205906155a2565b680ebc5fb417461211107ffffffffffffffffffffffffffffffffffffffffffffffffa9438a1d29cf0000084920192020590615590565b68280e60114edb805d037ffffffffffffffffffffffffffffffffffffffffffffffff5287143a539e0000084920192020590615587565b690127fa27722cc06cc5e27fffffffffffffffffffffffffffffffffffffffffffffffea50e2874a73c0000084920192020590615575565b693f1fce3da636ea5cf8507fffffffffffffffffffffffffffffffffffffffffffffffd4a1c50e94e780000084920192020590615563565b6b02df0ab5a80a22c61ab5a7007fffffffffffffffffffffffffffffffffffffffffffffffa9438a1d29cf00000084920192020590615551565b6e01855144814a7ff805980ff008400091507fffffffffffffffffffffffffffffffffffffffffffffff5287143a539e0000000161553f565b6803782dace9d90000008112615835577ffffffffffffffffffffffffffffffffffffffffffffffffc87d25316270000000168056bc75e2d63100000826b1425982cf597cd205cef73809261552a565b68056bc75e2d631000008260019261552a565b61585490600003615494565b61084d9061547a565b5068070c1cc73b00c800008113156154be565b919290156158eb5750815115615884575090565b3b1561588d5790565b60646040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152fd5b8251909150156158fe5750805190602001fd5b6112e1906040519182917f08c379a0000000000000000000000000000000000000000000000000000000008352602060048401526024830190610cdc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052605160045260246000fd5b9392919093806004146159b357806003146159a9578060021461599f5760010361593c5761599893615243565b9192909190565b50615998936151de565b5061599893615169565b507ffffffffffffffffffffffffffffffffffffffffffffffffff21f494c589c00009492919394938482019582871161100957866159f091613924565b91801561397057615a0292049061540b565b92810181811161100957615a169084613924565b8115613970570492670de0b6b3a76400009384810294818604149015171561100957801561397057615a4b8161402785613907565b929304919056fea26469706673582212209e344550411a3e70784b0542bf56f9fd68fb2ddbabb1bdaefa1782ed0e7f4bed64736f6c63430008170033";
1086
+
1087
+ type PendleLimitRouterConstructorParams =
1088
+ | [signer?: Signer]
1089
+ | ConstructorParameters<typeof ContractFactory>;
1090
+
1091
+ const isSuperArgs = (
1092
+ xs: PendleLimitRouterConstructorParams
1093
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1094
+
1095
+ export class PendleLimitRouter__factory extends ContractFactory {
1096
+ constructor(...args: PendleLimitRouterConstructorParams) {
1097
+ if (isSuperArgs(args)) {
1098
+ super(...args);
1099
+ } else {
1100
+ super(_abi, _bytecode, args[0]);
1101
+ }
1102
+ this.contractName = "PendleLimitRouter";
1103
+ }
1104
+
1105
+ deploy(
1106
+ _WNATIVE: string,
1107
+ overrides?: Overrides & { from?: string | Promise<string> }
1108
+ ): Promise<PendleLimitRouter> {
1109
+ return super.deploy(
1110
+ _WNATIVE,
1111
+ overrides || {}
1112
+ ) as Promise<PendleLimitRouter>;
1113
+ }
1114
+ getDeployTransaction(
1115
+ _WNATIVE: string,
1116
+ overrides?: Overrides & { from?: string | Promise<string> }
1117
+ ): TransactionRequest {
1118
+ return super.getDeployTransaction(_WNATIVE, overrides || {});
1119
+ }
1120
+ attach(address: string): PendleLimitRouter {
1121
+ return super.attach(address) as PendleLimitRouter;
1122
+ }
1123
+ connect(signer: Signer): PendleLimitRouter__factory {
1124
+ return super.connect(signer) as PendleLimitRouter__factory;
1125
+ }
1126
+ static readonly contractName: "PendleLimitRouter";
1127
+ public readonly contractName: "PendleLimitRouter";
1128
+ static readonly bytecode = _bytecode;
1129
+ static readonly abi = _abi;
1130
+ static createInterface(): PendleLimitRouterInterface {
1131
+ return new utils.Interface(_abi) as PendleLimitRouterInterface;
1132
+ }
1133
+ static connect(
1134
+ address: string,
1135
+ signerOrProvider: Signer | Provider
1136
+ ): PendleLimitRouter {
1137
+ return new Contract(address, _abi, signerOrProvider) as PendleLimitRouter;
1138
+ }
1139
+ }