@gearbox-protocol/sdk 0.0.2

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 (640) hide show
  1. package/.idea/gearbox-sdk.iml +12 -0
  2. package/.idea/modules.xml +8 -0
  3. package/.idea/vcs.xml +6 -0
  4. package/.prettierrc +10 -0
  5. package/README.md +4 -0
  6. package/lib/config.d.ts +1 -0
  7. package/lib/config.js +4 -0
  8. package/lib/core/constants.d.ts +17 -0
  9. package/lib/core/constants.js +36 -0
  10. package/lib/core/contracts.d.ts +64 -0
  11. package/lib/core/contracts.js +104 -0
  12. package/lib/core/contractsRegister.d.ts +2 -0
  13. package/lib/core/contractsRegister.js +43 -0
  14. package/lib/core/creditAccount.d.ts +35 -0
  15. package/lib/core/creditAccount.js +98 -0
  16. package/lib/core/creditCard.d.ts +13 -0
  17. package/lib/core/creditCard.js +2 -0
  18. package/lib/core/creditManager.d.ts +37 -0
  19. package/lib/core/creditManager.js +118 -0
  20. package/lib/core/creditOperation.d.ts +9 -0
  21. package/lib/core/creditOperation.js +2 -0
  22. package/lib/core/creditSession.d.ts +26 -0
  23. package/lib/core/creditSession.js +44 -0
  24. package/lib/core/errors.d.ts +26 -0
  25. package/lib/core/errors.js +74 -0
  26. package/lib/core/event.d.ts +42 -0
  27. package/lib/core/event.js +2 -0
  28. package/lib/core/eventOrTx.d.ts +36 -0
  29. package/lib/core/eventOrTx.js +97 -0
  30. package/lib/core/events.d.ts +369 -0
  31. package/lib/core/events.js +730 -0
  32. package/lib/core/history.d.ts +42 -0
  33. package/lib/core/history.js +2 -0
  34. package/lib/core/operations.d.ts +22 -0
  35. package/lib/core/operations.js +20 -0
  36. package/lib/core/oracles.d.ts +6 -0
  37. package/lib/core/oracles.js +2 -0
  38. package/lib/core/pool.d.ts +28 -0
  39. package/lib/core/pool.js +32 -0
  40. package/lib/core/swap.d.ts +4 -0
  41. package/lib/core/swap.js +8 -0
  42. package/lib/core/token.d.ts +3 -0
  43. package/lib/core/token.js +229 -0
  44. package/lib/core/tokenData.d.ts +28 -0
  45. package/lib/core/tokenData.js +58 -0
  46. package/lib/core/tokenDistributor.d.ts +12 -0
  47. package/lib/core/tokenDistributor.js +9 -0
  48. package/lib/core/trade.d.ts +35 -0
  49. package/lib/core/trade.js +62 -0
  50. package/lib/core/transactions.d.ts +127 -0
  51. package/lib/core/transactions.js +306 -0
  52. package/lib/index.d.ts +33 -0
  53. package/lib/index.js +47 -0
  54. package/lib/payload/creditAccount.d.ts +26 -0
  55. package/lib/payload/creditAccount.js +2 -0
  56. package/lib/payload/creditManager.d.ts +43 -0
  57. package/lib/payload/creditManager.js +2 -0
  58. package/lib/payload/creditSession.d.ts +23 -0
  59. package/lib/payload/creditSession.js +2 -0
  60. package/lib/payload/graphPayload.d.ts +9 -0
  61. package/lib/payload/graphPayload.js +2 -0
  62. package/lib/payload/pool.d.ts +17 -0
  63. package/lib/payload/pool.js +3 -0
  64. package/lib/payload/token.d.ts +5 -0
  65. package/lib/payload/token.js +2 -0
  66. package/lib/types/ACL.d.ts +491 -0
  67. package/lib/types/ACLTrait.d.ts +148 -0
  68. package/lib/types/ACLTraitTest.d.ts +209 -0
  69. package/lib/types/AbstractAccountMiner.d.ts +143 -0
  70. package/lib/types/AccountFactory.d.ts +716 -0
  71. package/lib/types/AccountMinerAuction.d.ts +391 -0
  72. package/lib/types/AccountMinerMock.d.ts +241 -0
  73. package/lib/types/AccountMinerNonReceivableTest.d.ts +127 -0
  74. package/lib/types/AccountMinerOwnFunds.d.ts +218 -0
  75. package/lib/types/AccountMining.d.ts +222 -0
  76. package/lib/types/AdaptersDeployer.d.ts +262 -0
  77. package/lib/types/AddressProvider.d.ts +912 -0
  78. package/lib/types/AggregatorV3Interface.d.ts +234 -0
  79. package/lib/types/ChainlinkPriceFeedMock.d.ts +215 -0
  80. package/lib/types/ContractsRegister.d.ts +398 -0
  81. package/lib/types/CoreDeployer.d.ts +394 -0
  82. package/lib/types/CreditAccount.d.ts +443 -0
  83. package/lib/types/CreditFilter.d.ts +1609 -0
  84. package/lib/types/CreditFilterMock.d.ts +1687 -0
  85. package/lib/types/CreditManager.d.ts +1285 -0
  86. package/lib/types/CreditManagerMockForFilter.d.ts +605 -0
  87. package/lib/types/CreditManagerMockForPoolTest.d.ts +204 -0
  88. package/lib/types/CurveMock.d.ts +298 -0
  89. package/lib/types/CurveV1Adapter.d.ts +349 -0
  90. package/lib/types/DataCompressor.d.ts +1331 -0
  91. package/lib/types/Deployer.d.ts +224 -0
  92. package/lib/types/DieselToken.d.ts +567 -0
  93. package/lib/types/ERC165.d.ts +116 -0
  94. package/lib/types/ERC20.d.ts +411 -0
  95. package/lib/types/ERC20BlockingMock.d.ts +568 -0
  96. package/lib/types/ERC721.d.ts +625 -0
  97. package/lib/types/Errors.d.ts +1854 -0
  98. package/lib/types/ExecutorMock.d.ts +140 -0
  99. package/lib/types/FlashLoanAttacker.d.ts +170 -0
  100. package/lib/types/FuzzHarness.d.ts +124 -0
  101. package/lib/types/GearBeta.d.ts +745 -0
  102. package/lib/types/GearToken.d.ts +888 -0
  103. package/lib/types/GenesisDeployer.d.ts +282 -0
  104. package/lib/types/IAccountFactory.d.ts +317 -0
  105. package/lib/types/IAccountMiner.d.ts +124 -0
  106. package/lib/types/IAppAddressProvider.d.ts +198 -0
  107. package/lib/types/IAppCreditManager.d.ts +408 -0
  108. package/lib/types/IAppERC20.d.ts +309 -0
  109. package/lib/types/IAppPoolService.d.ts +166 -0
  110. package/lib/types/ICreditAccount.d.ts +430 -0
  111. package/lib/types/ICreditAccountData.d.ts +347 -0
  112. package/lib/types/ICreditFilter.d.ts +1162 -0
  113. package/lib/types/ICreditManager.d.ts +971 -0
  114. package/lib/types/ICurvePool.d.ts +298 -0
  115. package/lib/types/IDataCompressor.d.ts +1231 -0
  116. package/lib/types/IERC165.d.ts +116 -0
  117. package/lib/types/IERC20.d.ts +294 -0
  118. package/lib/types/IERC721.d.ts +472 -0
  119. package/lib/types/IERC721Enumerable.d.ts +564 -0
  120. package/lib/types/IERC721Metadata.d.ts +523 -0
  121. package/lib/types/IERC721Receiver.d.ts +132 -0
  122. package/lib/types/IGearToken.d.ts +527 -0
  123. package/lib/types/IInterestRateModel.d.ts +121 -0
  124. package/lib/types/IMerkleDistributor.d.ts +190 -0
  125. package/lib/types/IPoolService.d.ts +772 -0
  126. package/lib/types/IPriceOracle.d.ts +211 -0
  127. package/lib/types/IQuoter.d.ts +269 -0
  128. package/lib/types/ISwapRouter.d.ts +404 -0
  129. package/lib/types/IUniswapV2Migrator.d.ts +134 -0
  130. package/lib/types/IUniswapV2Router01.d.ts +1119 -0
  131. package/lib/types/IUniswapV2Router02.d.ts +1432 -0
  132. package/lib/types/IUniswapV3SwapCallback.d.ts +127 -0
  133. package/lib/types/IWETH.d.ts +169 -0
  134. package/lib/types/IWETHGateway.d.ts +335 -0
  135. package/lib/types/IYVault.d.ts +558 -0
  136. package/lib/types/LeveragedActions.d.ts +772 -0
  137. package/lib/types/LinearInterestRateModel.d.ts +279 -0
  138. package/lib/types/MockPoolService.d.ts +1271 -0
  139. package/lib/types/Multicall2.d.ts +449 -0
  140. package/lib/types/Ownable.d.ts +169 -0
  141. package/lib/types/PathFinder.d.ts +379 -0
  142. package/lib/types/Pausable.d.ts +105 -0
  143. package/lib/types/PercentageMathTest.d.ts +154 -0
  144. package/lib/types/PoolDeployer.d.ts +282 -0
  145. package/lib/types/PoolService.d.ts +1174 -0
  146. package/lib/types/PriceOracle.d.ts +387 -0
  147. package/lib/types/Proxy.d.ts +78 -0
  148. package/lib/types/StepVesting.d.ts +411 -0
  149. package/lib/types/TestPoolService.d.ts +1294 -0
  150. package/lib/types/TokenDistributor.d.ts +640 -0
  151. package/lib/types/TokenFeeMock.d.ts +544 -0
  152. package/lib/types/TokenMock.d.ts +531 -0
  153. package/lib/types/TreasuryMock.d.ts +86 -0
  154. package/lib/types/UniswapRouterMock.d.ts +1520 -0
  155. package/lib/types/UniswapV2Adapter.d.ts +1463 -0
  156. package/lib/types/UniswapV3Adapter.d.ts +455 -0
  157. package/lib/types/VestingDeployer.d.ts +247 -0
  158. package/lib/types/WETHGateway.d.ts +376 -0
  159. package/lib/types/WETHMock.d.ts +433 -0
  160. package/lib/types/WadRayMathTest.d.ts +316 -0
  161. package/lib/types/YearnAdapter.d.ts +609 -0
  162. package/lib/types/YearnMock.d.ts +795 -0
  163. package/lib/types/YearnPriceFeed.d.ts +399 -0
  164. package/lib/types/commons.d.ts +16 -0
  165. package/lib/types/commons.js +5 -0
  166. package/lib/types/factories/ACLTraitTest__factory.d.ts +52 -0
  167. package/lib/types/factories/ACLTraitTest__factory.js +138 -0
  168. package/lib/types/factories/ACLTrait__factory.d.ts +31 -0
  169. package/lib/types/factories/ACLTrait__factory.js +75 -0
  170. package/lib/types/factories/ACL__factory.d.ts +45 -0
  171. package/lib/types/factories/ACL__factory.js +317 -0
  172. package/lib/types/factories/AbstractAccountMiner__factory.d.ts +30 -0
  173. package/lib/types/factories/AbstractAccountMiner__factory.js +61 -0
  174. package/lib/types/factories/AccountFactory__factory.d.ts +72 -0
  175. package/lib/types/factories/AccountFactory__factory.js +508 -0
  176. package/lib/types/factories/AccountMinerAuction__factory.js +304 -0
  177. package/lib/types/factories/AccountMinerMock__factory.js +196 -0
  178. package/lib/types/factories/AccountMinerNonReceivableTest__factory.js +84 -0
  179. package/lib/types/factories/AccountMinerOwnFunds__factory.js +181 -0
  180. package/lib/types/factories/AccountMining__factory.d.ts +56 -0
  181. package/lib/types/factories/AccountMining__factory.js +192 -0
  182. package/lib/types/factories/AdaptersDeployer__factory.d.ts +85 -0
  183. package/lib/types/factories/AdaptersDeployer__factory.js +202 -0
  184. package/lib/types/factories/AddressProvider__factory.d.ts +52 -0
  185. package/lib/types/factories/AddressProvider__factory.js +582 -0
  186. package/lib/types/factories/AggregatorV3Interface__factory.d.ts +22 -0
  187. package/lib/types/factories/AggregatorV3Interface__factory.js +133 -0
  188. package/lib/types/factories/ChainlinkPriceFeedMock__factory.d.ts +42 -0
  189. package/lib/types/factories/ChainlinkPriceFeedMock__factory.js +193 -0
  190. package/lib/types/factories/ContractsRegister__factory.d.ts +56 -0
  191. package/lib/types/factories/ContractsRegister__factory.js +310 -0
  192. package/lib/types/factories/CoreDeployer__factory.js +331 -0
  193. package/lib/types/factories/CreditAccount__factory.d.ts +32 -0
  194. package/lib/types/factories/CreditAccount__factory.js +262 -0
  195. package/lib/types/factories/CreditFilterMock__factory.d.ts +56 -0
  196. package/lib/types/factories/CreditFilterMock__factory.js +1083 -0
  197. package/lib/types/factories/CreditFilter__factory.d.ts +56 -0
  198. package/lib/types/factories/CreditFilter__factory.js +1047 -0
  199. package/lib/types/factories/CreditManagerMockForFilter__factory.d.ts +38 -0
  200. package/lib/types/factories/CreditManagerMockForFilter__factory.js +324 -0
  201. package/lib/types/factories/CreditManagerMockForPoolTest__factory.d.ts +48 -0
  202. package/lib/types/factories/CreditManagerMockForPoolTest__factory.js +131 -0
  203. package/lib/types/factories/CreditManager__factory.d.ts +77 -0
  204. package/lib/types/factories/CreditManager__factory.js +1030 -0
  205. package/lib/types/factories/CurveMock__factory.d.ts +42 -0
  206. package/lib/types/factories/CurveMock__factory.js +210 -0
  207. package/lib/types/factories/CurveV1Adapter__factory.d.ts +42 -0
  208. package/lib/types/factories/CurveV1Adapter__factory.js +254 -0
  209. package/lib/types/factories/DataCompressor__factory.d.ts +71 -0
  210. package/lib/types/factories/DataCompressor__factory.js +944 -0
  211. package/lib/types/factories/Deployer__factory.js +248 -0
  212. package/lib/types/factories/DieselToken__factory.d.ts +56 -0
  213. package/lib/types/factories/DieselToken__factory.js +432 -0
  214. package/lib/types/factories/ERC165__factory.d.ts +22 -0
  215. package/lib/types/factories/ERC165__factory.js +41 -0
  216. package/lib/types/factories/ERC20BlockingMock__factory.d.ts +56 -0
  217. package/lib/types/factories/ERC20BlockingMock__factory.js +429 -0
  218. package/lib/types/factories/ERC20__factory.d.ts +56 -0
  219. package/lib/types/factories/ERC20__factory.js +339 -0
  220. package/lib/types/factories/ERC721__factory.d.ts +56 -0
  221. package/lib/types/factories/ERC721__factory.js +468 -0
  222. package/lib/types/factories/Errors__factory.d.ts +28 -0
  223. package/lib/types/factories/Errors__factory.js +1015 -0
  224. package/lib/types/factories/ExecutorMock__factory.d.ts +38 -0
  225. package/lib/types/factories/ExecutorMock__factory.js +103 -0
  226. package/lib/types/factories/FlashLoanAttacker__factory.d.ts +48 -0
  227. package/lib/types/factories/FlashLoanAttacker__factory.js +117 -0
  228. package/lib/types/factories/FuzzHarness__factory.d.ts +38 -0
  229. package/lib/types/factories/FuzzHarness__factory.js +92 -0
  230. package/lib/types/factories/GearBeta__factory.d.ts +52 -0
  231. package/lib/types/factories/GearBeta__factory.js +527 -0
  232. package/lib/types/factories/GearToken__factory.d.ts +56 -0
  233. package/lib/types/factories/GearToken__factory.js +708 -0
  234. package/lib/types/factories/GenesisDeployer__factory.d.ts +108 -0
  235. package/lib/types/factories/GenesisDeployer__factory.js +231 -0
  236. package/lib/types/factories/IAccountFactory__factory.d.ts +35 -0
  237. package/lib/types/factories/IAccountFactory__factory.js +226 -0
  238. package/lib/types/factories/IAccountMiner__factory.d.ts +28 -0
  239. package/lib/types/factories/IAccountMiner__factory.js +48 -0
  240. package/lib/types/factories/IAppAddressProvider__factory.d.ts +18 -0
  241. package/lib/types/factories/IAppAddressProvider__factory.js +100 -0
  242. package/lib/types/factories/IAppCreditManager__factory.d.ts +42 -0
  243. package/lib/types/factories/IAppCreditManager__factory.js +204 -0
  244. package/lib/types/factories/IAppERC20__factory.d.ts +22 -0
  245. package/lib/types/factories/IAppERC20__factory.js +194 -0
  246. package/lib/types/factories/IAppPoolService__factory.d.ts +22 -0
  247. package/lib/types/factories/IAppPoolService__factory.js +69 -0
  248. package/lib/types/factories/ICreditAccountData__factory.d.ts +35 -0
  249. package/lib/types/factories/ICreditAccountData__factory.js +216 -0
  250. package/lib/types/factories/ICreditAccount__factory.d.ts +22 -0
  251. package/lib/types/factories/ICreditAccount__factory.js +218 -0
  252. package/lib/types/factories/ICreditFilter__factory.d.ts +35 -0
  253. package/lib/types/factories/ICreditFilter__factory.js +700 -0
  254. package/lib/types/factories/ICreditManager__factory.d.ts +56 -0
  255. package/lib/types/factories/ICreditManager__factory.js +720 -0
  256. package/lib/types/factories/ICurvePool__factory.d.ts +22 -0
  257. package/lib/types/factories/ICurvePool__factory.js +168 -0
  258. package/lib/types/factories/IDataCompressor__factory.d.ts +51 -0
  259. package/lib/types/factories/IDataCompressor__factory.js +826 -0
  260. package/lib/types/factories/IERC165__factory.d.ts +22 -0
  261. package/lib/types/factories/IERC165__factory.js +41 -0
  262. package/lib/types/factories/IERC20__factory.d.ts +35 -0
  263. package/lib/types/factories/IERC20__factory.js +205 -0
  264. package/lib/types/factories/IERC721Enumerable__factory.d.ts +35 -0
  265. package/lib/types/factories/IERC721Enumerable__factory.js +363 -0
  266. package/lib/types/factories/IERC721Metadata__factory.d.ts +35 -0
  267. package/lib/types/factories/IERC721Metadata__factory.js +352 -0
  268. package/lib/types/factories/IERC721Receiver__factory.d.ts +22 -0
  269. package/lib/types/factories/IERC721Receiver__factory.js +56 -0
  270. package/lib/types/factories/IERC721__factory.d.ts +35 -0
  271. package/lib/types/factories/IERC721__factory.js +307 -0
  272. package/lib/types/factories/IGearToken__factory.d.ts +35 -0
  273. package/lib/types/factories/IGearToken__factory.js +342 -0
  274. package/lib/types/factories/IInterestRateModel__factory.d.ts +22 -0
  275. package/lib/types/factories/IInterestRateModel__factory.js +46 -0
  276. package/lib/types/factories/IMerkleDistributor__factory.d.ts +35 -0
  277. package/lib/types/factories/IMerkleDistributor__factory.js +109 -0
  278. package/lib/types/factories/IPoolService__factory.d.ts +35 -0
  279. package/lib/types/factories/IPoolService__factory.js +580 -0
  280. package/lib/types/factories/IPriceOracle__factory.d.ts +35 -0
  281. package/lib/types/factories/IPriceOracle__factory.js +112 -0
  282. package/lib/types/factories/IQuoter__factory.d.ts +22 -0
  283. package/lib/types/factories/IQuoter__factory.js +148 -0
  284. package/lib/types/factories/ISwapRouter__factory.d.ts +27 -0
  285. package/lib/types/factories/ISwapRouter__factory.js +236 -0
  286. package/lib/types/factories/IUniswapV2Migrator__factory.d.ts +18 -0
  287. package/lib/types/factories/IUniswapV2Migrator__factory.js +55 -0
  288. package/lib/types/factories/IUniswapV2Router01__factory.d.ts +22 -0
  289. package/lib/types/factories/IUniswapV2Router01__factory.js +771 -0
  290. package/lib/types/factories/IUniswapV2Router02__factory.d.ts +22 -0
  291. package/lib/types/factories/IUniswapV2Router02__factory.js +973 -0
  292. package/lib/types/factories/IUniswapV3SwapCallback__factory.d.ts +18 -0
  293. package/lib/types/factories/IUniswapV3SwapCallback__factory.js +45 -0
  294. package/lib/types/factories/IWETHGateway__factory.d.ts +18 -0
  295. package/lib/types/factories/IWETHGateway__factory.js +150 -0
  296. package/lib/types/factories/IWETH__factory.d.ts +22 -0
  297. package/lib/types/factories/IWETH__factory.js +66 -0
  298. package/lib/types/factories/IYVault__factory.d.ts +35 -0
  299. package/lib/types/factories/IYVault__factory.js +411 -0
  300. package/lib/types/factories/LeveragedActions__factory.d.ts +84 -0
  301. package/lib/types/factories/LeveragedActions__factory.js +569 -0
  302. package/lib/types/factories/LinearInterestRateModel__factory.d.ts +42 -0
  303. package/lib/types/factories/LinearInterestRateModel__factory.js +209 -0
  304. package/lib/types/factories/MockPoolService__factory.d.ts +56 -0
  305. package/lib/types/factories/MockPoolService__factory.js +889 -0
  306. package/lib/types/factories/Multicall2__factory.d.ts +52 -0
  307. package/lib/types/factories/Multicall2__factory.js +364 -0
  308. package/lib/types/factories/Ownable__factory.d.ts +42 -0
  309. package/lib/types/factories/Ownable__factory.js +74 -0
  310. package/lib/types/factories/PathFinder__factory.d.ts +61 -0
  311. package/lib/types/factories/PathFinder__factory.js +302 -0
  312. package/lib/types/factories/Pausable__factory.d.ts +31 -0
  313. package/lib/types/factories/Pausable__factory.js +61 -0
  314. package/lib/types/factories/PercentageMathTest__factory.d.ts +32 -0
  315. package/lib/types/factories/PercentageMathTest__factory.js +101 -0
  316. package/lib/types/factories/PoolDeployer__factory.d.ts +113 -0
  317. package/lib/types/factories/PoolDeployer__factory.js +257 -0
  318. package/lib/types/factories/PoolService__factory.d.ts +56 -0
  319. package/lib/types/factories/PoolService__factory.js +873 -0
  320. package/lib/types/factories/PriceOracle__factory.d.ts +56 -0
  321. package/lib/types/factories/PriceOracle__factory.js +290 -0
  322. package/lib/types/factories/Proxy__factory.d.ts +13 -0
  323. package/lib/types/factories/Proxy__factory.js +30 -0
  324. package/lib/types/factories/StepVesting__factory.d.ts +52 -0
  325. package/lib/types/factories/StepVesting__factory.js +296 -0
  326. package/lib/types/factories/TestPoolService__factory.d.ts +56 -0
  327. package/lib/types/factories/TestPoolService__factory.js +932 -0
  328. package/lib/types/factories/TokenDistributor__factory.d.ts +82 -0
  329. package/lib/types/factories/TokenDistributor__factory.js +481 -0
  330. package/lib/types/factories/TokenFeeMock__factory.d.ts +56 -0
  331. package/lib/types/factories/TokenFeeMock__factory.js +427 -0
  332. package/lib/types/factories/TokenMock__factory.d.ts +56 -0
  333. package/lib/types/factories/TokenMock__factory.js +409 -0
  334. package/lib/types/factories/TreasuryMock__factory.d.ts +35 -0
  335. package/lib/types/factories/TreasuryMock__factory.js +70 -0
  336. package/lib/types/factories/UniswapRouterMock__factory.d.ts +32 -0
  337. package/lib/types/factories/UniswapRouterMock__factory.js +1046 -0
  338. package/lib/types/factories/UniswapV2Adapter__factory.d.ts +42 -0
  339. package/lib/types/factories/UniswapV2Adapter__factory.js +1059 -0
  340. package/lib/types/factories/UniswapV3Adapter__factory.d.ts +47 -0
  341. package/lib/types/factories/UniswapV3Adapter__factory.js +322 -0
  342. package/lib/types/factories/VestingDeployer__factory.js +216 -0
  343. package/lib/types/factories/WETHGateway__factory.d.ts +70 -0
  344. package/lib/types/factories/WETHGateway__factory.js +241 -0
  345. package/lib/types/factories/WETHMock__factory.d.ts +52 -0
  346. package/lib/types/factories/WETHMock__factory.js +355 -0
  347. package/lib/types/factories/WadRayMathTest__factory.d.ts +32 -0
  348. package/lib/types/factories/WadRayMathTest__factory.js +239 -0
  349. package/lib/types/factories/YearnAdapter__factory.d.ts +56 -0
  350. package/lib/types/factories/YearnAdapter__factory.js +497 -0
  351. package/lib/types/factories/YearnMock__factory.d.ts +56 -0
  352. package/lib/types/factories/YearnMock__factory.js +598 -0
  353. package/lib/types/factories/YearnPriceFeed__factory.d.ts +56 -0
  354. package/lib/types/factories/YearnPriceFeed__factory.js +350 -0
  355. package/lib/types/hardhat.d.ts +343 -0
  356. package/lib/types/index.d.ts +152 -0
  357. package/lib/types/index.js +156 -0
  358. package/lib/utils/events.d.ts +2 -0
  359. package/lib/utils/events.js +13 -0
  360. package/lib/utils/formatter.d.ts +13 -0
  361. package/lib/utils/formatter.js +125 -0
  362. package/lib/utils/loading.d.ts +1 -0
  363. package/lib/utils/loading.js +17 -0
  364. package/lib/utils/math.d.ts +6 -0
  365. package/lib/utils/math.js +44 -0
  366. package/lib/utils/multicall.d.ts +15 -0
  367. package/lib/utils/multicall.js +84 -0
  368. package/lib/utils/repeater.d.ts +1 -0
  369. package/lib/utils/repeater.js +72 -0
  370. package/lib/utils/validate.d.ts +1 -0
  371. package/lib/utils/validate.js +13 -0
  372. package/package.json +27 -0
  373. package/src/abi/adapters/YearnV2.sol/YearnAdapter.dbg.json +4 -0
  374. package/src/abi/adapters/YearnV2.sol/YearnAdapter.json +455 -0
  375. package/src/abi/core/ACL.sol/ACL.dbg.json +4 -0
  376. package/src/abi/core/ACL.sol/ACL.json +262 -0
  377. package/src/abi/core/ACLTrait.sol/ACLTrait.dbg.json +4 -0
  378. package/src/abi/core/ACLTrait.sol/ACLTrait.json +64 -0
  379. package/src/abi/core/AccountMining.sol/AccountMining.dbg.json +4 -0
  380. package/src/abi/core/AccountMining.sol/AccountMining.json +150 -0
  381. package/src/abi/core/AddressProvider.sol/AddressProvider.dbg.json +4 -0
  382. package/src/abi/core/AddressProvider.sol/AddressProvider.json +496 -0
  383. package/src/abi/core/ContractsRegister.sol/ContractsRegister.dbg.json +4 -0
  384. package/src/abi/core/ContractsRegister.sol/ContractsRegister.json +255 -0
  385. package/src/abi/credit/LeverageActions.sol/LeveragedActions.dbg.json +4 -0
  386. package/src/abi/credit/LeverageActions.sol/LeveragedActions.json +514 -0
  387. package/src/abi/deployer/AdaptersDeployer.sol/AdaptersDeployer.dbg.json +4 -0
  388. package/src/abi/deployer/AdaptersDeployer.sol/AdaptersDeployer.json +160 -0
  389. package/src/abi/deployer/GenesisDeployer.sol/GenesisDeployer.dbg.json +4 -0
  390. package/src/abi/deployer/GenesisDeployer.sol/GenesisDeployer.json +189 -0
  391. package/src/abi/deployer/PoolDeployer.sol/PoolDeployer.dbg.json +4 -0
  392. package/src/abi/deployer/PoolDeployer.sol/PoolDeployer.json +215 -0
  393. package/src/abi/fuzzing/FuzzHarness.sol/FuzzHarness.dbg.json +4 -0
  394. package/src/abi/fuzzing/FuzzHarness.sol/FuzzHarness.json +50 -0
  395. package/src/abi/integrations/yearn/IYVault.sol/IYVault.dbg.json +4 -0
  396. package/src/abi/integrations/yearn/IYVault.sol/IYVault.json +400 -0
  397. package/src/abi/interfaces/IGearToken.sol/IGearToken.dbg.json +4 -0
  398. package/src/abi/interfaces/IGearToken.sol/IGearToken.json +331 -0
  399. package/src/abi/interfaces/IMerkleDistributor.sol/IMerkleDistributor.dbg.json +4 -0
  400. package/src/abi/interfaces/IMerkleDistributor.sol/IMerkleDistributor.json +98 -0
  401. package/src/abi/mocks/core/ACLTraitTest.sol/ACLTraitTest.dbg.json +4 -0
  402. package/src/abi/mocks/core/ACLTraitTest.sol/ACLTraitTest.json +96 -0
  403. package/src/abi/mocks/credit/ExecutorMock.sol/ExecutorMock.dbg.json +4 -0
  404. package/src/abi/mocks/credit/ExecutorMock.sol/ExecutorMock.json +61 -0
  405. package/src/abi/mocks/integrations/CurveMock.sol/CurveMock.dbg.json +4 -0
  406. package/src/abi/mocks/integrations/CurveMock.sol/CurveMock.json +168 -0
  407. package/src/abi/mocks/integrations/YearnMock.sol/YearnMock.dbg.json +4 -0
  408. package/src/abi/mocks/integrations/YearnMock.sol/YearnMock.json +556 -0
  409. package/src/abi/mocks/oracles/ChainlinkPriceFeedMock.sol/ChainlinkPriceFeedMock.dbg.json +4 -0
  410. package/src/abi/mocks/oracles/ChainlinkPriceFeedMock.sol/ChainlinkPriceFeedMock.json +151 -0
  411. package/src/abi/mocks/pool/CreditManagerMockForPoolTest.sol/CreditManagerMockForPoolTest.dbg.json +4 -0
  412. package/src/abi/mocks/pool/CreditManagerMockForPoolTest.sol/CreditManagerMockForPoolTest.json +89 -0
  413. package/src/abi/mocks/tokens/ERC20Blocking.sol/ERC20BlockingMock.dbg.json +4 -0
  414. package/src/abi/mocks/tokens/ERC20Blocking.sol/ERC20BlockingMock.json +387 -0
  415. package/src/abi/mocks/tokens/ERC20Fee.sol/TokenFeeMock.dbg.json +4 -0
  416. package/src/abi/mocks/tokens/ERC20Fee.sol/TokenFeeMock.json +385 -0
  417. package/src/abi/oracles/YearnPriceFeed.sol/YearnPriceFeed.dbg.json +4 -0
  418. package/src/abi/oracles/YearnPriceFeed.sol/YearnPriceFeed.json +321 -0
  419. package/src/abi/support/PathFinder.sol/PathFinder.dbg.json +4 -0
  420. package/src/abi/support/PathFinder.sol/PathFinder.json +189 -0
  421. package/src/abi/tokens/GearNFT.sol/GearBeta.dbg.json +4 -0
  422. package/src/abi/tokens/GearNFT.sol/GearBeta.json +485 -0
  423. package/src/abi/tokens/TokenDistributor.sol/TokenDistributor.dbg.json +4 -0
  424. package/src/abi/tokens/TokenDistributor.sol/TokenDistributor.json +439 -0
  425. package/src/abi/tokens/Vesting.sol/StepVesting.dbg.json +4 -0
  426. package/src/abi/tokens/Vesting.sol/StepVesting.json +254 -0
  427. package/src/config.ts +1 -0
  428. package/src/core/constants.ts +44 -0
  429. package/src/core/contracts.ts +151 -0
  430. package/src/core/contractsRegister.ts +51 -0
  431. package/src/core/creditAccount.ts +105 -0
  432. package/src/core/creditCard.ts +15 -0
  433. package/src/core/creditManager.ts +171 -0
  434. package/src/core/creditOperation.ts +9 -0
  435. package/src/core/creditSession.ts +67 -0
  436. package/src/core/errors.ts +45 -0
  437. package/src/core/eventOrTx.ts +94 -0
  438. package/src/core/events.ts +1167 -0
  439. package/src/core/history.ts +55 -0
  440. package/src/core/operations.ts +35 -0
  441. package/src/core/oracles.ts +7 -0
  442. package/src/core/pool.ts +60 -0
  443. package/src/core/swap.ts +4 -0
  444. package/src/core/token.ts +275 -0
  445. package/src/core/tokenData.ts +84 -0
  446. package/src/core/tokenDistributor.ts +14 -0
  447. package/src/core/trade.ts +83 -0
  448. package/src/core/transactions.ts +407 -0
  449. package/src/index.ts +42 -0
  450. package/src/payload/creditAccount.ts +29 -0
  451. package/src/payload/creditManager.ts +46 -0
  452. package/src/payload/creditSession.ts +24 -0
  453. package/src/payload/graphPayload.ts +10 -0
  454. package/src/payload/pool.ts +20 -0
  455. package/src/payload/token.ts +5 -0
  456. package/src/types/ACL.d.ts +491 -0
  457. package/src/types/ACLTrait.d.ts +148 -0
  458. package/src/types/ACLTraitTest.d.ts +209 -0
  459. package/src/types/AccountFactory.d.ts +716 -0
  460. package/src/types/AccountMining.d.ts +222 -0
  461. package/src/types/AddressProvider.d.ts +912 -0
  462. package/src/types/AggregatorV3Interface.d.ts +234 -0
  463. package/src/types/ChainlinkPriceFeedMock.d.ts +215 -0
  464. package/src/types/ContractsRegister.d.ts +398 -0
  465. package/src/types/CreditAccount.d.ts +443 -0
  466. package/src/types/CreditFilter.d.ts +1609 -0
  467. package/src/types/CreditFilterMock.d.ts +1687 -0
  468. package/src/types/CreditManager.d.ts +1285 -0
  469. package/src/types/CreditManagerMockForFilter.d.ts +605 -0
  470. package/src/types/CreditManagerMockForPoolTest.d.ts +204 -0
  471. package/src/types/CurveMock.d.ts +298 -0
  472. package/src/types/CurveV1Adapter.d.ts +349 -0
  473. package/src/types/DataCompressor.d.ts +1331 -0
  474. package/src/types/DieselToken.d.ts +567 -0
  475. package/src/types/ERC165.d.ts +116 -0
  476. package/src/types/ERC20.d.ts +411 -0
  477. package/src/types/ERC20BlockingMock.d.ts +568 -0
  478. package/src/types/ERC721.d.ts +625 -0
  479. package/src/types/Errors.d.ts +1854 -0
  480. package/src/types/ExecutorMock.d.ts +140 -0
  481. package/src/types/FlashLoanAttacker.d.ts +170 -0
  482. package/src/types/FuzzHarness.d.ts +124 -0
  483. package/src/types/GearBeta.d.ts +745 -0
  484. package/src/types/GearToken.d.ts +888 -0
  485. package/src/types/IAccountFactory.d.ts +317 -0
  486. package/src/types/IAccountMiner.d.ts +124 -0
  487. package/src/types/IAppAddressProvider.d.ts +198 -0
  488. package/src/types/IAppCreditManager.d.ts +408 -0
  489. package/src/types/IAppERC20.d.ts +309 -0
  490. package/src/types/IAppPoolService.d.ts +166 -0
  491. package/src/types/ICreditAccount.d.ts +430 -0
  492. package/src/types/ICreditFilter.d.ts +1162 -0
  493. package/src/types/ICreditManager.d.ts +971 -0
  494. package/src/types/ICurvePool.d.ts +298 -0
  495. package/src/types/IDataCompressor.d.ts +1231 -0
  496. package/src/types/IERC165.d.ts +116 -0
  497. package/src/types/IERC20.d.ts +294 -0
  498. package/src/types/IERC721.d.ts +472 -0
  499. package/src/types/IERC721Enumerable.d.ts +564 -0
  500. package/src/types/IERC721Metadata.d.ts +523 -0
  501. package/src/types/IERC721Receiver.d.ts +132 -0
  502. package/src/types/IGearToken.d.ts +527 -0
  503. package/src/types/IInterestRateModel.d.ts +121 -0
  504. package/src/types/IMerkleDistributor.d.ts +190 -0
  505. package/src/types/IPoolService.d.ts +772 -0
  506. package/src/types/IPriceOracle.d.ts +211 -0
  507. package/src/types/IQuoter.d.ts +269 -0
  508. package/src/types/ISwapRouter.d.ts +404 -0
  509. package/src/types/IUniswapV2Migrator.d.ts +134 -0
  510. package/src/types/IUniswapV2Router01.d.ts +1119 -0
  511. package/src/types/IUniswapV2Router02.d.ts +1432 -0
  512. package/src/types/IUniswapV3SwapCallback.d.ts +127 -0
  513. package/src/types/IWETH.d.ts +169 -0
  514. package/src/types/IWETHGateway.d.ts +335 -0
  515. package/src/types/IYVault.d.ts +558 -0
  516. package/src/types/LeveragedActions.d.ts +772 -0
  517. package/src/types/LinearInterestRateModel.d.ts +279 -0
  518. package/src/types/MockPoolService.d.ts +1271 -0
  519. package/src/types/Multicall2.d.ts +449 -0
  520. package/src/types/Ownable.d.ts +169 -0
  521. package/src/types/PathFinder.d.ts +379 -0
  522. package/src/types/Pausable.d.ts +105 -0
  523. package/src/types/PercentageMathTest.d.ts +154 -0
  524. package/src/types/PoolService.d.ts +1174 -0
  525. package/src/types/PriceOracle.d.ts +387 -0
  526. package/src/types/StepVesting.d.ts +411 -0
  527. package/src/types/TestPoolService.d.ts +1294 -0
  528. package/src/types/TokenDistributor.d.ts +640 -0
  529. package/src/types/TokenFeeMock.d.ts +544 -0
  530. package/src/types/TokenMock.d.ts +531 -0
  531. package/src/types/TreasuryMock.d.ts +86 -0
  532. package/src/types/UniswapRouterMock.d.ts +1520 -0
  533. package/src/types/UniswapV2Adapter.d.ts +1463 -0
  534. package/src/types/UniswapV3Adapter.d.ts +455 -0
  535. package/src/types/WETHGateway.d.ts +376 -0
  536. package/src/types/WETHMock.d.ts +433 -0
  537. package/src/types/WadRayMathTest.d.ts +316 -0
  538. package/src/types/YearnAdapter.d.ts +609 -0
  539. package/src/types/YearnMock.d.ts +795 -0
  540. package/src/types/YearnPriceFeed.d.ts +399 -0
  541. package/src/types/commons.d.ts +16 -0
  542. package/src/types/commons.js +5 -0
  543. package/src/types/commons.ts +37 -0
  544. package/src/types/factories/ACLTraitTest__factory.ts +137 -0
  545. package/src/types/factories/ACLTrait__factory.ts +76 -0
  546. package/src/types/factories/ACL__factory.ts +308 -0
  547. package/src/types/factories/AccountFactory__factory.ts +510 -0
  548. package/src/types/factories/AccountMining__factory.ts +214 -0
  549. package/src/types/factories/AddressProvider__factory.ts +579 -0
  550. package/src/types/factories/AggregatorV3Interface__factory.ts +141 -0
  551. package/src/types/factories/ChainlinkPriceFeedMock__factory.ts +209 -0
  552. package/src/types/factories/ContractsRegister__factory.ts +312 -0
  553. package/src/types/factories/CreditAccount__factory.ts +256 -0
  554. package/src/types/factories/CreditFilterMock__factory.ts +1092 -0
  555. package/src/types/factories/CreditFilter__factory.ts +1053 -0
  556. package/src/types/factories/CreditManagerMockForFilter__factory.ts +325 -0
  557. package/src/types/factories/CreditManagerMockForPoolTest__factory.ts +137 -0
  558. package/src/types/factories/CreditManager__factory.ts +1063 -0
  559. package/src/types/factories/CurveMock__factory.ts +206 -0
  560. package/src/types/factories/CurveV1Adapter__factory.ts +263 -0
  561. package/src/types/factories/DataCompressor__factory.ts +946 -0
  562. package/src/types/factories/DieselToken__factory.ts +449 -0
  563. package/src/types/factories/ERC165__factory.ts +39 -0
  564. package/src/types/factories/ERC20BlockingMock__factory.ts +434 -0
  565. package/src/types/factories/ERC20__factory.ts +334 -0
  566. package/src/types/factories/ERC721__factory.ts +463 -0
  567. package/src/types/factories/Errors__factory.ts +1006 -0
  568. package/src/types/factories/ExecutorMock__factory.ts +97 -0
  569. package/src/types/factories/FlashLoanAttacker__factory.ts +119 -0
  570. package/src/types/factories/FuzzHarness__factory.ts +94 -0
  571. package/src/types/factories/GearBeta__factory.ts +521 -0
  572. package/src/types/factories/GearToken__factory.ts +704 -0
  573. package/src/types/factories/IAccountFactory__factory.ts +230 -0
  574. package/src/types/factories/IAccountMiner__factory.ts +49 -0
  575. package/src/types/factories/IAppAddressProvider__factory.ts +104 -0
  576. package/src/types/factories/IAppCreditManager__factory.ts +208 -0
  577. package/src/types/factories/IAppERC20__factory.ts +195 -0
  578. package/src/types/factories/IAppPoolService__factory.ts +73 -0
  579. package/src/types/factories/ICreditAccount__factory.ts +222 -0
  580. package/src/types/factories/ICreditFilter__factory.ts +701 -0
  581. package/src/types/factories/ICreditManager__factory.ts +724 -0
  582. package/src/types/factories/ICurvePool__factory.ts +169 -0
  583. package/src/types/factories/IDataCompressor__factory.ts +830 -0
  584. package/src/types/factories/IERC165__factory.ts +42 -0
  585. package/src/types/factories/IERC20__factory.ts +203 -0
  586. package/src/types/factories/IERC721Enumerable__factory.ts +367 -0
  587. package/src/types/factories/IERC721Metadata__factory.ts +356 -0
  588. package/src/types/factories/IERC721Receiver__factory.ts +60 -0
  589. package/src/types/factories/IERC721__factory.ts +308 -0
  590. package/src/types/factories/IGearToken__factory.ts +343 -0
  591. package/src/types/factories/IInterestRateModel__factory.ts +50 -0
  592. package/src/types/factories/IMerkleDistributor__factory.ts +113 -0
  593. package/src/types/factories/IPoolService__factory.ts +581 -0
  594. package/src/types/factories/IPriceOracle__factory.ts +113 -0
  595. package/src/types/factories/IQuoter__factory.ts +149 -0
  596. package/src/types/factories/ISwapRouter__factory.ts +237 -0
  597. package/src/types/factories/IUniswapV2Migrator__factory.ts +59 -0
  598. package/src/types/factories/IUniswapV2Router01__factory.ts +775 -0
  599. package/src/types/factories/IUniswapV2Router02__factory.ts +977 -0
  600. package/src/types/factories/IUniswapV3SwapCallback__factory.ts +53 -0
  601. package/src/types/factories/IWETHGateway__factory.ts +151 -0
  602. package/src/types/factories/IWETH__factory.ts +64 -0
  603. package/src/types/factories/IYVault__factory.ts +412 -0
  604. package/src/types/factories/LeveragedActions__factory.ts +571 -0
  605. package/src/types/factories/LinearInterestRateModel__factory.ts +237 -0
  606. package/src/types/factories/MockPoolService__factory.ts +891 -0
  607. package/src/types/factories/Multicall2__factory.ts +358 -0
  608. package/src/types/factories/Ownable__factory.ts +75 -0
  609. package/src/types/factories/PathFinder__factory.ts +301 -0
  610. package/src/types/factories/Pausable__factory.ts +62 -0
  611. package/src/types/factories/PercentageMathTest__factory.ts +98 -0
  612. package/src/types/factories/PoolService__factory.ts +898 -0
  613. package/src/types/factories/PriceOracle__factory.ts +289 -0
  614. package/src/types/factories/StepVesting__factory.ts +290 -0
  615. package/src/types/factories/TestPoolService__factory.ts +960 -0
  616. package/src/types/factories/TokenDistributor__factory.ts +483 -0
  617. package/src/types/factories/TokenFeeMock__factory.ts +439 -0
  618. package/src/types/factories/TokenMock__factory.ts +407 -0
  619. package/src/types/factories/TreasuryMock__factory.ts +64 -0
  620. package/src/types/factories/UniswapRouterMock__factory.ts +1043 -0
  621. package/src/types/factories/UniswapV2Adapter__factory.ts +1064 -0
  622. package/src/types/factories/UniswapV3Adapter__factory.ts +327 -0
  623. package/src/types/factories/WETHGateway__factory.ts +240 -0
  624. package/src/types/factories/WETHMock__factory.ts +349 -0
  625. package/src/types/factories/WadRayMathTest__factory.ts +236 -0
  626. package/src/types/factories/YearnAdapter__factory.ts +499 -0
  627. package/src/types/factories/YearnMock__factory.ts +594 -0
  628. package/src/types/factories/YearnPriceFeed__factory.ts +378 -0
  629. package/src/types/hardhat.d.ts +343 -0
  630. package/src/types/index.d.ts +174 -0
  631. package/src/types/index.js +178 -0
  632. package/src/types/index.ts +156 -0
  633. package/src/utils/events.ts +10 -0
  634. package/src/utils/formatter.ts +138 -0
  635. package/src/utils/loading.ts +9 -0
  636. package/src/utils/math.ts +42 -0
  637. package/src/utils/multicall.ts +54 -0
  638. package/src/utils/repeater.ts +18 -0
  639. package/src/utils/validate.ts +8 -0
  640. package/tsconfig.json +62 -0
@@ -0,0 +1,946 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
6
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
7
+ import type {
8
+ DataCompressor,
9
+ DataCompressorInterface,
10
+ } from "../DataCompressor";
11
+
12
+ const _abi = [
13
+ {
14
+ inputs: [
15
+ {
16
+ internalType: "address",
17
+ name: "_addressProvider",
18
+ type: "address",
19
+ },
20
+ ],
21
+ stateMutability: "nonpayable",
22
+ type: "constructor",
23
+ },
24
+ {
25
+ inputs: [],
26
+ name: "WETHToken",
27
+ outputs: [
28
+ {
29
+ internalType: "address",
30
+ name: "",
31
+ type: "address",
32
+ },
33
+ ],
34
+ stateMutability: "view",
35
+ type: "function",
36
+ },
37
+ {
38
+ inputs: [],
39
+ name: "addressProvider",
40
+ outputs: [
41
+ {
42
+ internalType: "contract AddressProvider",
43
+ name: "",
44
+ type: "address",
45
+ },
46
+ ],
47
+ stateMutability: "view",
48
+ type: "function",
49
+ },
50
+ {
51
+ inputs: [
52
+ {
53
+ internalType: "address",
54
+ name: "_creditManager",
55
+ type: "address",
56
+ },
57
+ {
58
+ internalType: "address",
59
+ name: "token",
60
+ type: "address",
61
+ },
62
+ {
63
+ internalType: "uint256",
64
+ name: "amount",
65
+ type: "uint256",
66
+ },
67
+ {
68
+ internalType: "uint256",
69
+ name: "borrowedAmount",
70
+ type: "uint256",
71
+ },
72
+ ],
73
+ name: "calcExpectedAtOpenHf",
74
+ outputs: [
75
+ {
76
+ internalType: "uint256",
77
+ name: "",
78
+ type: "uint256",
79
+ },
80
+ ],
81
+ stateMutability: "view",
82
+ type: "function",
83
+ },
84
+ {
85
+ inputs: [
86
+ {
87
+ internalType: "address",
88
+ name: "_creditManager",
89
+ type: "address",
90
+ },
91
+ {
92
+ internalType: "address",
93
+ name: "borrower",
94
+ type: "address",
95
+ },
96
+ {
97
+ internalType: "uint256[]",
98
+ name: "balances",
99
+ type: "uint256[]",
100
+ },
101
+ ],
102
+ name: "calcExpectedHf",
103
+ outputs: [
104
+ {
105
+ internalType: "uint256",
106
+ name: "",
107
+ type: "uint256",
108
+ },
109
+ ],
110
+ stateMutability: "view",
111
+ type: "function",
112
+ },
113
+ {
114
+ inputs: [],
115
+ name: "contractsRegister",
116
+ outputs: [
117
+ {
118
+ internalType: "contract ContractsRegister",
119
+ name: "",
120
+ type: "address",
121
+ },
122
+ ],
123
+ stateMutability: "view",
124
+ type: "function",
125
+ },
126
+ {
127
+ inputs: [
128
+ {
129
+ internalType: "address",
130
+ name: "_creditManager",
131
+ type: "address",
132
+ },
133
+ {
134
+ internalType: "address",
135
+ name: "_allowedContract",
136
+ type: "address",
137
+ },
138
+ ],
139
+ name: "getAdapter",
140
+ outputs: [
141
+ {
142
+ internalType: "address",
143
+ name: "",
144
+ type: "address",
145
+ },
146
+ ],
147
+ stateMutability: "view",
148
+ type: "function",
149
+ },
150
+ {
151
+ inputs: [
152
+ {
153
+ internalType: "address",
154
+ name: "_creditManager",
155
+ type: "address",
156
+ },
157
+ {
158
+ internalType: "address",
159
+ name: "borrower",
160
+ type: "address",
161
+ },
162
+ ],
163
+ name: "getCreditAccountData",
164
+ outputs: [
165
+ {
166
+ components: [
167
+ {
168
+ internalType: "address",
169
+ name: "addr",
170
+ type: "address",
171
+ },
172
+ {
173
+ internalType: "address",
174
+ name: "borrower",
175
+ type: "address",
176
+ },
177
+ {
178
+ internalType: "bool",
179
+ name: "inUse",
180
+ type: "bool",
181
+ },
182
+ {
183
+ internalType: "address",
184
+ name: "creditManager",
185
+ type: "address",
186
+ },
187
+ {
188
+ internalType: "address",
189
+ name: "underlyingToken",
190
+ type: "address",
191
+ },
192
+ {
193
+ internalType: "uint256",
194
+ name: "borrowedAmountPlusInterest",
195
+ type: "uint256",
196
+ },
197
+ {
198
+ internalType: "uint256",
199
+ name: "totalValue",
200
+ type: "uint256",
201
+ },
202
+ {
203
+ internalType: "uint256",
204
+ name: "healthFactor",
205
+ type: "uint256",
206
+ },
207
+ {
208
+ internalType: "uint256",
209
+ name: "borrowRate",
210
+ type: "uint256",
211
+ },
212
+ {
213
+ components: [
214
+ {
215
+ internalType: "address",
216
+ name: "token",
217
+ type: "address",
218
+ },
219
+ {
220
+ internalType: "uint256",
221
+ name: "balance",
222
+ type: "uint256",
223
+ },
224
+ {
225
+ internalType: "bool",
226
+ name: "isAllowed",
227
+ type: "bool",
228
+ },
229
+ ],
230
+ internalType: "struct DataTypes.TokenBalance[]",
231
+ name: "balances",
232
+ type: "tuple[]",
233
+ },
234
+ ],
235
+ internalType: "struct DataTypes.CreditAccountData",
236
+ name: "",
237
+ type: "tuple",
238
+ },
239
+ ],
240
+ stateMutability: "view",
241
+ type: "function",
242
+ },
243
+ {
244
+ inputs: [
245
+ {
246
+ internalType: "address",
247
+ name: "creditManager",
248
+ type: "address",
249
+ },
250
+ {
251
+ internalType: "address",
252
+ name: "borrower",
253
+ type: "address",
254
+ },
255
+ ],
256
+ name: "getCreditAccountDataExtended",
257
+ outputs: [
258
+ {
259
+ components: [
260
+ {
261
+ internalType: "address",
262
+ name: "addr",
263
+ type: "address",
264
+ },
265
+ {
266
+ internalType: "address",
267
+ name: "borrower",
268
+ type: "address",
269
+ },
270
+ {
271
+ internalType: "bool",
272
+ name: "inUse",
273
+ type: "bool",
274
+ },
275
+ {
276
+ internalType: "address",
277
+ name: "creditManager",
278
+ type: "address",
279
+ },
280
+ {
281
+ internalType: "address",
282
+ name: "underlyingToken",
283
+ type: "address",
284
+ },
285
+ {
286
+ internalType: "uint256",
287
+ name: "borrowedAmountPlusInterest",
288
+ type: "uint256",
289
+ },
290
+ {
291
+ internalType: "uint256",
292
+ name: "totalValue",
293
+ type: "uint256",
294
+ },
295
+ {
296
+ internalType: "uint256",
297
+ name: "healthFactor",
298
+ type: "uint256",
299
+ },
300
+ {
301
+ internalType: "uint256",
302
+ name: "borrowRate",
303
+ type: "uint256",
304
+ },
305
+ {
306
+ components: [
307
+ {
308
+ internalType: "address",
309
+ name: "token",
310
+ type: "address",
311
+ },
312
+ {
313
+ internalType: "uint256",
314
+ name: "balance",
315
+ type: "uint256",
316
+ },
317
+ {
318
+ internalType: "bool",
319
+ name: "isAllowed",
320
+ type: "bool",
321
+ },
322
+ ],
323
+ internalType: "struct DataTypes.TokenBalance[]",
324
+ name: "balances",
325
+ type: "tuple[]",
326
+ },
327
+ {
328
+ internalType: "uint256",
329
+ name: "repayAmount",
330
+ type: "uint256",
331
+ },
332
+ {
333
+ internalType: "uint256",
334
+ name: "liquidationAmount",
335
+ type: "uint256",
336
+ },
337
+ {
338
+ internalType: "bool",
339
+ name: "canBeClosed",
340
+ type: "bool",
341
+ },
342
+ {
343
+ internalType: "uint256",
344
+ name: "borrowedAmount",
345
+ type: "uint256",
346
+ },
347
+ {
348
+ internalType: "uint256",
349
+ name: "cumulativeIndexAtOpen",
350
+ type: "uint256",
351
+ },
352
+ {
353
+ internalType: "uint256",
354
+ name: "since",
355
+ type: "uint256",
356
+ },
357
+ ],
358
+ internalType: "struct DataTypes.CreditAccountDataExtended",
359
+ name: "",
360
+ type: "tuple",
361
+ },
362
+ ],
363
+ stateMutability: "view",
364
+ type: "function",
365
+ },
366
+ {
367
+ inputs: [
368
+ {
369
+ internalType: "address",
370
+ name: "borrower",
371
+ type: "address",
372
+ },
373
+ ],
374
+ name: "getCreditAccountList",
375
+ outputs: [
376
+ {
377
+ components: [
378
+ {
379
+ internalType: "address",
380
+ name: "addr",
381
+ type: "address",
382
+ },
383
+ {
384
+ internalType: "address",
385
+ name: "borrower",
386
+ type: "address",
387
+ },
388
+ {
389
+ internalType: "bool",
390
+ name: "inUse",
391
+ type: "bool",
392
+ },
393
+ {
394
+ internalType: "address",
395
+ name: "creditManager",
396
+ type: "address",
397
+ },
398
+ {
399
+ internalType: "address",
400
+ name: "underlyingToken",
401
+ type: "address",
402
+ },
403
+ {
404
+ internalType: "uint256",
405
+ name: "borrowedAmountPlusInterest",
406
+ type: "uint256",
407
+ },
408
+ {
409
+ internalType: "uint256",
410
+ name: "totalValue",
411
+ type: "uint256",
412
+ },
413
+ {
414
+ internalType: "uint256",
415
+ name: "healthFactor",
416
+ type: "uint256",
417
+ },
418
+ {
419
+ internalType: "uint256",
420
+ name: "borrowRate",
421
+ type: "uint256",
422
+ },
423
+ {
424
+ components: [
425
+ {
426
+ internalType: "address",
427
+ name: "token",
428
+ type: "address",
429
+ },
430
+ {
431
+ internalType: "uint256",
432
+ name: "balance",
433
+ type: "uint256",
434
+ },
435
+ {
436
+ internalType: "bool",
437
+ name: "isAllowed",
438
+ type: "bool",
439
+ },
440
+ ],
441
+ internalType: "struct DataTypes.TokenBalance[]",
442
+ name: "balances",
443
+ type: "tuple[]",
444
+ },
445
+ ],
446
+ internalType: "struct DataTypes.CreditAccountData[]",
447
+ name: "",
448
+ type: "tuple[]",
449
+ },
450
+ ],
451
+ stateMutability: "view",
452
+ type: "function",
453
+ },
454
+ {
455
+ inputs: [
456
+ {
457
+ internalType: "address",
458
+ name: "_creditManager",
459
+ type: "address",
460
+ },
461
+ {
462
+ internalType: "address",
463
+ name: "borrower",
464
+ type: "address",
465
+ },
466
+ ],
467
+ name: "getCreditManagerData",
468
+ outputs: [
469
+ {
470
+ components: [
471
+ {
472
+ internalType: "address",
473
+ name: "addr",
474
+ type: "address",
475
+ },
476
+ {
477
+ internalType: "bool",
478
+ name: "hasAccount",
479
+ type: "bool",
480
+ },
481
+ {
482
+ internalType: "address",
483
+ name: "underlyingToken",
484
+ type: "address",
485
+ },
486
+ {
487
+ internalType: "bool",
488
+ name: "isWETH",
489
+ type: "bool",
490
+ },
491
+ {
492
+ internalType: "bool",
493
+ name: "canBorrow",
494
+ type: "bool",
495
+ },
496
+ {
497
+ internalType: "uint256",
498
+ name: "borrowRate",
499
+ type: "uint256",
500
+ },
501
+ {
502
+ internalType: "uint256",
503
+ name: "minAmount",
504
+ type: "uint256",
505
+ },
506
+ {
507
+ internalType: "uint256",
508
+ name: "maxAmount",
509
+ type: "uint256",
510
+ },
511
+ {
512
+ internalType: "uint256",
513
+ name: "maxLeverageFactor",
514
+ type: "uint256",
515
+ },
516
+ {
517
+ internalType: "uint256",
518
+ name: "availableLiquidity",
519
+ type: "uint256",
520
+ },
521
+ {
522
+ internalType: "address[]",
523
+ name: "allowedTokens",
524
+ type: "address[]",
525
+ },
526
+ {
527
+ components: [
528
+ {
529
+ internalType: "address",
530
+ name: "allowedContract",
531
+ type: "address",
532
+ },
533
+ {
534
+ internalType: "address",
535
+ name: "adapter",
536
+ type: "address",
537
+ },
538
+ ],
539
+ internalType: "struct DataTypes.ContractAdapter[]",
540
+ name: "adapters",
541
+ type: "tuple[]",
542
+ },
543
+ ],
544
+ internalType: "struct DataTypes.CreditManagerData",
545
+ name: "",
546
+ type: "tuple",
547
+ },
548
+ ],
549
+ stateMutability: "view",
550
+ type: "function",
551
+ },
552
+ {
553
+ inputs: [
554
+ {
555
+ internalType: "address",
556
+ name: "borrower",
557
+ type: "address",
558
+ },
559
+ ],
560
+ name: "getCreditManagersList",
561
+ outputs: [
562
+ {
563
+ components: [
564
+ {
565
+ internalType: "address",
566
+ name: "addr",
567
+ type: "address",
568
+ },
569
+ {
570
+ internalType: "bool",
571
+ name: "hasAccount",
572
+ type: "bool",
573
+ },
574
+ {
575
+ internalType: "address",
576
+ name: "underlyingToken",
577
+ type: "address",
578
+ },
579
+ {
580
+ internalType: "bool",
581
+ name: "isWETH",
582
+ type: "bool",
583
+ },
584
+ {
585
+ internalType: "bool",
586
+ name: "canBorrow",
587
+ type: "bool",
588
+ },
589
+ {
590
+ internalType: "uint256",
591
+ name: "borrowRate",
592
+ type: "uint256",
593
+ },
594
+ {
595
+ internalType: "uint256",
596
+ name: "minAmount",
597
+ type: "uint256",
598
+ },
599
+ {
600
+ internalType: "uint256",
601
+ name: "maxAmount",
602
+ type: "uint256",
603
+ },
604
+ {
605
+ internalType: "uint256",
606
+ name: "maxLeverageFactor",
607
+ type: "uint256",
608
+ },
609
+ {
610
+ internalType: "uint256",
611
+ name: "availableLiquidity",
612
+ type: "uint256",
613
+ },
614
+ {
615
+ internalType: "address[]",
616
+ name: "allowedTokens",
617
+ type: "address[]",
618
+ },
619
+ {
620
+ components: [
621
+ {
622
+ internalType: "address",
623
+ name: "allowedContract",
624
+ type: "address",
625
+ },
626
+ {
627
+ internalType: "address",
628
+ name: "adapter",
629
+ type: "address",
630
+ },
631
+ ],
632
+ internalType: "struct DataTypes.ContractAdapter[]",
633
+ name: "adapters",
634
+ type: "tuple[]",
635
+ },
636
+ ],
637
+ internalType: "struct DataTypes.CreditManagerData[]",
638
+ name: "",
639
+ type: "tuple[]",
640
+ },
641
+ ],
642
+ stateMutability: "view",
643
+ type: "function",
644
+ },
645
+ {
646
+ inputs: [
647
+ {
648
+ internalType: "address",
649
+ name: "_pool",
650
+ type: "address",
651
+ },
652
+ ],
653
+ name: "getPoolData",
654
+ outputs: [
655
+ {
656
+ components: [
657
+ {
658
+ internalType: "address",
659
+ name: "addr",
660
+ type: "address",
661
+ },
662
+ {
663
+ internalType: "bool",
664
+ name: "isWETH",
665
+ type: "bool",
666
+ },
667
+ {
668
+ internalType: "address",
669
+ name: "underlyingToken",
670
+ type: "address",
671
+ },
672
+ {
673
+ internalType: "address",
674
+ name: "dieselToken",
675
+ type: "address",
676
+ },
677
+ {
678
+ internalType: "uint256",
679
+ name: "linearCumulativeIndex",
680
+ type: "uint256",
681
+ },
682
+ {
683
+ internalType: "uint256",
684
+ name: "availableLiquidity",
685
+ type: "uint256",
686
+ },
687
+ {
688
+ internalType: "uint256",
689
+ name: "expectedLiquidity",
690
+ type: "uint256",
691
+ },
692
+ {
693
+ internalType: "uint256",
694
+ name: "expectedLiquidityLimit",
695
+ type: "uint256",
696
+ },
697
+ {
698
+ internalType: "uint256",
699
+ name: "totalBorrowed",
700
+ type: "uint256",
701
+ },
702
+ {
703
+ internalType: "uint256",
704
+ name: "depositAPY_RAY",
705
+ type: "uint256",
706
+ },
707
+ {
708
+ internalType: "uint256",
709
+ name: "borrowAPY_RAY",
710
+ type: "uint256",
711
+ },
712
+ {
713
+ internalType: "uint256",
714
+ name: "dieselRate_RAY",
715
+ type: "uint256",
716
+ },
717
+ {
718
+ internalType: "uint256",
719
+ name: "withdrawFee",
720
+ type: "uint256",
721
+ },
722
+ {
723
+ internalType: "uint256",
724
+ name: "cumulativeIndex_RAY",
725
+ type: "uint256",
726
+ },
727
+ {
728
+ internalType: "uint256",
729
+ name: "timestampLU",
730
+ type: "uint256",
731
+ },
732
+ ],
733
+ internalType: "struct DataTypes.PoolData",
734
+ name: "",
735
+ type: "tuple",
736
+ },
737
+ ],
738
+ stateMutability: "view",
739
+ type: "function",
740
+ },
741
+ {
742
+ inputs: [],
743
+ name: "getPoolsList",
744
+ outputs: [
745
+ {
746
+ components: [
747
+ {
748
+ internalType: "address",
749
+ name: "addr",
750
+ type: "address",
751
+ },
752
+ {
753
+ internalType: "bool",
754
+ name: "isWETH",
755
+ type: "bool",
756
+ },
757
+ {
758
+ internalType: "address",
759
+ name: "underlyingToken",
760
+ type: "address",
761
+ },
762
+ {
763
+ internalType: "address",
764
+ name: "dieselToken",
765
+ type: "address",
766
+ },
767
+ {
768
+ internalType: "uint256",
769
+ name: "linearCumulativeIndex",
770
+ type: "uint256",
771
+ },
772
+ {
773
+ internalType: "uint256",
774
+ name: "availableLiquidity",
775
+ type: "uint256",
776
+ },
777
+ {
778
+ internalType: "uint256",
779
+ name: "expectedLiquidity",
780
+ type: "uint256",
781
+ },
782
+ {
783
+ internalType: "uint256",
784
+ name: "expectedLiquidityLimit",
785
+ type: "uint256",
786
+ },
787
+ {
788
+ internalType: "uint256",
789
+ name: "totalBorrowed",
790
+ type: "uint256",
791
+ },
792
+ {
793
+ internalType: "uint256",
794
+ name: "depositAPY_RAY",
795
+ type: "uint256",
796
+ },
797
+ {
798
+ internalType: "uint256",
799
+ name: "borrowAPY_RAY",
800
+ type: "uint256",
801
+ },
802
+ {
803
+ internalType: "uint256",
804
+ name: "dieselRate_RAY",
805
+ type: "uint256",
806
+ },
807
+ {
808
+ internalType: "uint256",
809
+ name: "withdrawFee",
810
+ type: "uint256",
811
+ },
812
+ {
813
+ internalType: "uint256",
814
+ name: "cumulativeIndex_RAY",
815
+ type: "uint256",
816
+ },
817
+ {
818
+ internalType: "uint256",
819
+ name: "timestampLU",
820
+ type: "uint256",
821
+ },
822
+ ],
823
+ internalType: "struct DataTypes.PoolData[]",
824
+ name: "",
825
+ type: "tuple[]",
826
+ },
827
+ ],
828
+ stateMutability: "view",
829
+ type: "function",
830
+ },
831
+ {
832
+ inputs: [
833
+ {
834
+ internalType: "address[]",
835
+ name: "addr",
836
+ type: "address[]",
837
+ },
838
+ ],
839
+ name: "getTokenData",
840
+ outputs: [
841
+ {
842
+ components: [
843
+ {
844
+ internalType: "address",
845
+ name: "addr",
846
+ type: "address",
847
+ },
848
+ {
849
+ internalType: "string",
850
+ name: "symbol",
851
+ type: "string",
852
+ },
853
+ {
854
+ internalType: "uint8",
855
+ name: "decimals",
856
+ type: "uint8",
857
+ },
858
+ ],
859
+ internalType: "struct DataTypes.TokenInfo[]",
860
+ name: "",
861
+ type: "tuple[]",
862
+ },
863
+ ],
864
+ stateMutability: "view",
865
+ type: "function",
866
+ },
867
+ {
868
+ inputs: [
869
+ {
870
+ internalType: "address",
871
+ name: "_creditManager",
872
+ type: "address",
873
+ },
874
+ {
875
+ internalType: "address",
876
+ name: "borrower",
877
+ type: "address",
878
+ },
879
+ ],
880
+ name: "hasOpenedCreditAccount",
881
+ outputs: [
882
+ {
883
+ internalType: "bool",
884
+ name: "",
885
+ type: "bool",
886
+ },
887
+ ],
888
+ stateMutability: "view",
889
+ type: "function",
890
+ },
891
+ {
892
+ inputs: [],
893
+ name: "version",
894
+ outputs: [
895
+ {
896
+ internalType: "uint256",
897
+ name: "",
898
+ type: "uint256",
899
+ },
900
+ ],
901
+ stateMutability: "view",
902
+ type: "function",
903
+ },
904
+ ];
905
+
906
+ const _bytecode =
907
+ "0x60c06040523480156200001157600080fd5b506040516200639e3803806200639e8339818101604052810190620000379190620002f1565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156040518060400160405280600281526020017f5a3000000000000000000000000000000000000000000000000000000000000081525090620000e2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000d991906200035e565b60405180910390fd5b50806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c513c9bb6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200018a57600080fd5b505afa1580156200019f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c59190620002f1565b73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b8152505060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634c252f916040518163ffffffff1660e01b815260040160206040518083038186803b1580156200026257600080fd5b505afa15801562000277573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029d9190620002f1565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250505062000433565b600081519050620002eb8162000419565b92915050565b6000602082840312156200030457600080fd5b60006200031484828501620002da565b91505092915050565b60006200032a8262000382565b6200033681856200038d565b935062000348818560208601620003d2565b620003538162000408565b840191505092915050565b600060208201905081810360008301526200037a81846200031d565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000620003ab82620003b2565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60005b83811015620003f2578082015181840152602081019050620003d5565b8381111562000402576000848401525b50505050565b6000601f19601f8301169050919050565b62000424816200039e565b81146200043057600080fd5b50565b60805160601c60a05160601c615ef6620004a8600039806112a752806120a15280612948525080610b1352806115ba5280611c3b5280611d3e52806120c852806122fd528061232b52806123d25280612580528061262752806131db52806132de5280613b505280613d0d5250615ef66000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806354fd4d5011610097578063b816903911610066578063b8169039146102eb578063ba3b73451461031b578063bf2eb19e1461034b578063fc9914cb1461037b57610100565b806354fd4d501461024f5780637a0c7b211461026d578063a80deda31461028b578063b10b074e146102bb57610100565b80632954018c116100d35780632954018c146101b357806339595cf8146101d15780634b2f336d146102015780634c472fc91461021f57610100565b80630dbd616d1461010557806313d21cdf14610135578063191482d4146101655780631bcd8fc014610195575b600080fd5b61011f600480360381019061011a919061482f565b6103ab565b60405161012c9190615a10565b60405180910390f35b61014f600480360381019061014a91906147dd565b610b08565b60405161015c9190615a54565b60405180910390f35b61017f600480360381019061017a919061482f565b6115af565b60405161018c91906159ee565b60405180910390f35b61019d611c35565b6040516101aa9190615917565b60405180910390f35b6101bb611e1e565b6040516101c89190615976565b60405180910390f35b6101eb60048036038101906101e691906148d2565b611e42565b6040516101f89190615a70565b60405180910390f35b61020961209f565b604051610216919061582f565b60405180910390f35b6102396004803603810190610234919061482f565b6120c3565b604051610246919061582f565b60405180910390f35b6102576122f6565b6040516102649190615a70565b60405180910390f35b6102756122fb565b6040516102829190615991565b60405180910390f35b6102a560048036038101906102a091906147dd565b61231f565b6040516102b291906158d3565b60405180910390f35b6102d560048036038101906102d0919061482f565b6127a1565b6040516102e29190615a32565b60405180910390f35b610305600480360381019061030091906147dd565b6131d5565b60405161031291906158f5565b60405180910390f35b6103356004803603810190610330919061486b565b6133c1565b6040516103429190615a70565b60405180910390f35b61036560048036038101906103609190614998565b61394c565b6040516103729190615939565b60405180910390f35b6103956004803603810190610390919061482f565b613b4b565b6040516103a2919061595b565b60405180910390f35b6103b361422a565b6000806103bf85613d07565b9150915060008273ffffffffffffffffffffffffffffffffffffffff1663e958b704866040518263ffffffff1660e01b81526004016103fe919061582f565b60206040518083038186803b15801561041657600080fd5b505afa15801561042a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044e9190614806565b905061045861422a565b85816020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505086816060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505081816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff16632495a5996040518163ffffffff1660e01b815260040160206040518083038186803b15801561054657600080fd5b505afa15801561055a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057e9190614806565b816080019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1663c7de38a6836040518263ffffffff1660e01b81526004016105ee919061582f565b60206040518083038186803b15801561060657600080fd5b505afa15801561061a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061063e9190614a6c565b8160c00181815250508273ffffffffffffffffffffffffffffffffffffffff1663dfd59465836040518263ffffffff1660e01b8152600401610680919061582f565b60206040518083038186803b15801561069857600080fd5b505afa1580156106ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106d09190614a6c565b8160e001818152505060008473ffffffffffffffffffffffffffffffffffffffff1663570a7af26040518163ffffffff1660e01b815260040160206040518083038186803b15801561072157600080fd5b505afa158015610735573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107599190614806565b90508073ffffffffffffffffffffffffffffffffffffffff166345d31f9d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156107a157600080fd5b505afa1580156107b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d99190614a6c565b8261010001818152505060008473ffffffffffffffffffffffffffffffffffffffff166320a05ff76040518163ffffffff1660e01b815260040160206040518083038186803b15801561082b57600080fd5b505afa15801561083f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108639190614a6c565b90508067ffffffffffffffff8111801561087c57600080fd5b506040519080825280602002602001820160405280156108b657816020015b6108a36142d7565b81526020019060019003908161089b5790505b5083610120018190525060005b81811015610a66576108d36142d7565b8673ffffffffffffffffffffffffffffffffffffffff1663af0a650287846040518363ffffffff1660e01b815260040161090e929190615873565b60806040518083038186803b15801561092657600080fd5b505afa15801561093a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095e9190614935565b9050508260000183602001828152508273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050508673ffffffffffffffffffffffffffffffffffffffff1663f9eaee0d82600001516040518263ffffffff1660e01b81526004016109dc919061582f565b60206040518083038186803b1580156109f457600080fd5b505afa158015610a08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2c91906149d9565b816040019015159081151581525050808561012001518381518110610a4d57fe5b60200260200101819052505080806001019150506108c3565b508473ffffffffffffffffffffffffffffffffffffffff16633192195c856040518263ffffffff1660e01b8152600401610aa0919061582f565b60206040518083038186803b158015610ab857600080fd5b505afa158015610acc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af09190614a6c565b8360a001818152505082965050505050505092915050565b610b10614310565b817f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16635b16ebb7826040518263ffffffff1660e01b8152600401610b6a919061582f565b60206040518083038186803b158015610b8257600080fd5b505afa158015610b96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bba91906149d9565b6040518060400160405280600281526020017f525000000000000000000000000000000000000000000000000000000000000081525090610c31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2891906159ac565b60405180910390fd5b50610c3a614310565b600084905084826000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663fe14112d6040518163ffffffff1660e01b815260040160206040518083038186803b158015610cbd57600080fd5b505afa158015610cd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf59190614a6c565b8260c00181815250508073ffffffffffffffffffffffffffffffffffffffff1663ef8d96036040518163ffffffff1660e01b815260040160206040518083038186803b158015610d4457600080fd5b505afa158015610d58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d7c9190614a6c565b8260e00181815250508073ffffffffffffffffffffffffffffffffffffffff1663743753596040518163ffffffff1660e01b815260040160206040518083038186803b158015610dcb57600080fd5b505afa158015610ddf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e039190614a6c565b8260a00181815250508073ffffffffffffffffffffffffffffffffffffffff16634c19386c6040518163ffffffff1660e01b815260040160206040518083038186803b158015610e5257600080fd5b505afa158015610e66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8a9190614a6c565b826101000181815250508073ffffffffffffffffffffffffffffffffffffffff1663788c6bfe6040518163ffffffff1660e01b815260040160206040518083038186803b158015610eda57600080fd5b505afa158015610eee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f129190614a6c565b826101600181815250508073ffffffffffffffffffffffffffffffffffffffff16630fce70fb6040518163ffffffff1660e01b815260040160206040518083038186803b158015610f6257600080fd5b505afa158015610f76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f9a9190614a6c565b8260800181815250508073ffffffffffffffffffffffffffffffffffffffff166345d31f9d6040518163ffffffff1660e01b815260040160206040518083038186803b158015610fe957600080fd5b505afa158015610ffd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110219190614a6c565b826101400181815250508073ffffffffffffffffffffffffffffffffffffffff16632495a5996040518163ffffffff1660e01b815260040160206040518083038186803b15801561107157600080fd5b505afa158015611085573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a99190614806565b826040019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff166336dda7d56040518163ffffffff1660e01b815260040160206040518083038186803b15801561112657600080fd5b505afa15801561113a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115e9190614806565b826060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663788c6bfe6040518163ffffffff1660e01b815260040160206040518083038186803b1580156111db57600080fd5b505afa1580156111ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112139190614a6c565b826101600181815250508073ffffffffffffffffffffffffffffffffffffffff1663e941fa786040518163ffffffff1660e01b815260040160206040518083038186803b15801561126357600080fd5b505afa158015611277573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129b9190614a6c565b826101800181815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16826040015173ffffffffffffffffffffffffffffffffffffffff16148260200190151590811515815250508073ffffffffffffffffffffffffffffffffffffffff1663609ae3176040518163ffffffff1660e01b815260040160206040518083038186803b15801561134d57600080fd5b505afa158015611361573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113859190614a6c565b826101c00181815250508073ffffffffffffffffffffffffffffffffffffffff1663dbcb313b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156113d557600080fd5b505afa1580156113e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140d9190614a6c565b826101a00181815250506000826060015173ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561146357600080fd5b505afa158015611477573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149b9190614a6c565b905060008273ffffffffffffffffffffffffffffffffffffffff16635427c938836040518263ffffffff1660e01b81526004016114d89190615a70565b60206040518083038186803b1580156114f057600080fd5b505afa158015611504573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115289190614a6c565b9050600081146115915761158c8161157e611553876101800151612710613eb590919063ffffffff16565b611570886101000151896101400151613f3890919063ffffffff16565b613fbe90919063ffffffff16565b61411990919063ffffffff16565b611598565b8361014001515b846101200181815250508395505050505050919050565b6115b76143ca565b827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636fbc6f6b826040518263ffffffff1660e01b8152600401611611919061582f565b60206040518083038186803b15801561162957600080fd5b505afa15801561163d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166191906149d9565b6040518060400160405280600281526020017f4350000000000000000000000000000000000000000000000000000000000000815250906116d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116cf91906159ac565b60405180910390fd5b506116e16143ca565b60006116ed86866103ab565b90508060000151826000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508060200151826020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508060600151826060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508060800151826080019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508060a001518260a00181815250508060c001518260c00181815250508060e001518260e00181815250508061010001518261010001818152505080610120015182610120018190525060008673ffffffffffffffffffffffffffffffffffffffff1663e958b704876040518263ffffffff1660e01b8152600401611863919061582f565b60206040518083038186803b15801561187b57600080fd5b505afa15801561188f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118b39190614806565b90508073ffffffffffffffffffffffffffffffffffffffff16631afbb7a46040518163ffffffff1660e01b815260040160206040518083038186803b1580156118fb57600080fd5b505afa15801561190f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119339190614a6c565b836101a00181815250508073ffffffffffffffffffffffffffffffffffffffff166317d11a156040518163ffffffff1660e01b815260040160206040518083038186803b15801561198357600080fd5b505afa158015611997573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119bb9190614a6c565b836101c00181815250508073ffffffffffffffffffffffffffffffffffffffff16633dc54b406040518163ffffffff1660e01b815260040160206040518083038186803b158015611a0b57600080fd5b505afa158015611a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a439190614a6c565b836101e00181815250508673ffffffffffffffffffffffffffffffffffffffff16633ce073558760006040518363ffffffff1660e01b8152600401611a8992919061584a565b60206040518083038186803b158015611aa157600080fd5b505afa158015611ab5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ad99190614a6c565b836101400181815250508673ffffffffffffffffffffffffffffffffffffffff16633ce073558760016040518363ffffffff1660e01b8152600401611b1f92919061584a565b60206040518083038186803b158015611b3757600080fd5b505afa158015611b4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b6f9190614a6c565b8361016001818152505060008773ffffffffffffffffffffffffffffffffffffffff1663996329f8838560c0015160006040518463ffffffff1660e01b8152600401611bbd9392919061589c565b60a06040518083038186803b158015611bd557600080fd5b505afa158015611be9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0d9190614a95565b5050925050506000811184610180019015159081151581525050839550505050505092915050565b606060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b4ac68606040518163ffffffff1660e01b815260040160206040518083038186803b158015611c9f57600080fd5b505afa158015611cb3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cd79190614a6c565b905060008167ffffffffffffffff81118015611cf257600080fd5b50604051908082528060200260200182016040528015611d2c57816020015b611d19614310565b815260200190600190039081611d115790505b50905060005b82811015611e155760007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ac4afa38836040518263ffffffff1660e01b8152600401611d959190615a70565b60206040518083038186803b158015611dad57600080fd5b505afa158015611dc1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611de59190614806565b9050611df081610b08565b838381518110611dfc57fe5b6020026020010181905250508080600101915050611d32565b50809250505090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000611e5087613d07565b9150915060008173ffffffffffffffffffffffffffffffffffffffff16632630c12f6040518163ffffffff1660e01b815260040160206040518083038186803b158015611e9c57600080fd5b505afa158015611eb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ed49190614806565b9050600061207c8373ffffffffffffffffffffffffffffffffffffffff1663783274388a6040518263ffffffff1660e01b8152600401611f14919061582f565b60206040518083038186803b158015611f2c57600080fd5b505afa158015611f40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f649190614a6c565b8373ffffffffffffffffffffffffffffffffffffffff1663b66102df8a8c8973ffffffffffffffffffffffffffffffffffffffff16632495a5996040518163ffffffff1660e01b815260040160206040518083038186803b158015611fc857600080fd5b505afa158015611fdc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120009190614806565b6040518463ffffffff1660e01b815260040161201e93929190615a8b565b60206040518083038186803b15801561203657600080fd5b505afa15801561204a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206e9190614a6c565b613f3890919063ffffffff16565b9050612091868261411990919063ffffffff16565b945050505050949350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636fbc6f6b826040518263ffffffff1660e01b815260040161211f919061582f565b60206040518083038186803b15801561213757600080fd5b505afa15801561214b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061216f91906149d9565b6040518060400160405280600281526020017f4350000000000000000000000000000000000000000000000000000000000000815250906121e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121dd91906159ac565b60405180910390fd5b508373ffffffffffffffffffffffffffffffffffffffff1663f93f515b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561222d57600080fd5b505afa158015612241573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122659190614a02565b73ffffffffffffffffffffffffffffffffffffffff1663fdd57645846040518263ffffffff1660e01b815260040161229d919061582f565b60206040518083038186803b1580156122b557600080fd5b505afa1580156122c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122ed9190614806565b91505092915050565b600181565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060600080600090505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c29277cd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561238f57600080fd5b505afa1580156123a3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123c79190614a6c565b8110156125205760007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631e16e4fc836040518263ffffffff1660e01b81526004016124299190615a70565b60206040518083038186803b15801561244157600080fd5b505afa158015612455573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124799190614806565b90508073ffffffffffffffffffffffffffffffffffffffff1663256ac915866040518263ffffffff1660e01b81526004016124b4919061582f565b60206040518083038186803b1580156124cc57600080fd5b505afa1580156124e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061250491906149d9565b156125125782806001019350505b508080600101915050612329565b5060008167ffffffffffffffff8111801561253a57600080fd5b5060405190808252806020026020018201604052801561257457816020015b61256161422a565b8152602001906001900390816125595790505b5090506000915060005b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c29277cd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156125e457600080fd5b505afa1580156125f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261c9190614a6c565b8110156127965760007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631e16e4fc836040518263ffffffff1660e01b815260040161267e9190615a70565b60206040518083038186803b15801561269657600080fd5b505afa1580156126aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126ce9190614806565b90508073ffffffffffffffffffffffffffffffffffffffff1663256ac915876040518263ffffffff1660e01b8152600401612709919061582f565b60206040518083038186803b15801561272157600080fd5b505afa158015612735573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061275991906149d9565b156127885761276881876103ab565b83858151811061277457fe5b602002602001018190525083806001019450505b50808060010191505061257e565b508092505050919050565b6127a96144a3565b6000806127b585613d07565b915091506127c16144a3565b85816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1663256ac915866040518263ffffffff1660e01b8152600401612832919061582f565b60206040518083038186803b15801561284a57600080fd5b505afa15801561285e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061288291906149d9565b8160200190151590811515815250508173ffffffffffffffffffffffffffffffffffffffff16632495a5996040518163ffffffff1660e01b815260040160206040518083038186803b1580156128d757600080fd5b505afa1580156128eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061290f9190614806565b816040019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16816040015173ffffffffffffffffffffffffffffffffffffffff161481606001901515908115158152505060008373ffffffffffffffffffffffffffffffffffffffff1663570a7af26040518163ffffffff1660e01b815260040160206040518083038186803b1580156129f057600080fd5b505afa158015612a04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a289190614806565b90508073ffffffffffffffffffffffffffffffffffffffff16632e97ca21886040518263ffffffff1660e01b8152600401612a63919061582f565b60206040518083038186803b158015612a7b57600080fd5b505afa158015612a8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ab391906149d9565b8260800190151590811515815250508073ffffffffffffffffffffffffffffffffffffffff166345d31f9d6040518163ffffffff1660e01b815260040160206040518083038186803b158015612b0857600080fd5b505afa158015612b1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b409190614a6c565b8260a00181815250508073ffffffffffffffffffffffffffffffffffffffff1663743753596040518163ffffffff1660e01b815260040160206040518083038186803b158015612b8f57600080fd5b505afa158015612ba3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bc79190614a6c565b826101200181815250508373ffffffffffffffffffffffffffffffffffffffff16639b2cb5d86040518163ffffffff1660e01b815260040160206040518083038186803b158015612c1757600080fd5b505afa158015612c2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c4f9190614a6c565b8260c00181815250508373ffffffffffffffffffffffffffffffffffffffff16635f48f3936040518163ffffffff1660e01b815260040160206040518083038186803b158015612c9e57600080fd5b505afa158015612cb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612cd69190614a6c565b8260e00181815250508373ffffffffffffffffffffffffffffffffffffffff1663b2c53a6c6040518163ffffffff1660e01b815260040160206040518083038186803b158015612d2557600080fd5b505afa158015612d39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d5d9190614a6c565b8261010001818152505060008373ffffffffffffffffffffffffffffffffffffffff166320a05ff76040518163ffffffff1660e01b815260040160206040518083038186803b158015612daf57600080fd5b505afa158015612dc3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612de79190614a6c565b90508067ffffffffffffffff81118015612e0057600080fd5b50604051908082528060200260200182016040528015612e2f5781602001602082028036833780820191505090505b5083610140018190525060005b81811015612f25578473ffffffffffffffffffffffffffffffffffffffff16635e5f2e26826040518263ffffffff1660e01b8152600401612e7d9190615a70565b60206040518083038186803b158015612e9557600080fd5b505afa158015612ea9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ecd9190614806565b8461014001518281518110612ede57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080600101915050612e3c565b5060008473ffffffffffffffffffffffffffffffffffffffff166350e036ff6040518163ffffffff1660e01b815260040160206040518083038186803b158015612f6e57600080fd5b505afa158015612f82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fa69190614a6c565b90508067ffffffffffffffff81118015612fbf57600080fd5b50604051908082528060200260200182016040528015612ff957816020015b612fe6614536565b815260200190600190039081612fde5790505b5084610160018190525060005b818110156131c557613016614536565b8673ffffffffffffffffffffffffffffffffffffffff16635094cb4f836040518263ffffffff1660e01b815260040161304f9190615a70565b60206040518083038186803b15801561306757600080fd5b505afa15801561307b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061309f9190614806565b816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508673ffffffffffffffffffffffffffffffffffffffff1663fdd5764582600001516040518263ffffffff1660e01b8152600401613113919061582f565b60206040518083038186803b15801561312b57600080fd5b505afa15801561313f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131639190614806565b816020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508086610160015183815181106131ac57fe5b6020026020010181905250508080600101915050613006565b5083965050505050505092915050565b606060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c29277cd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561323f57600080fd5b505afa158015613253573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132779190614a6c565b905060008167ffffffffffffffff8111801561329257600080fd5b506040519080825280602002602001820160405280156132cc57816020015b6132b96144a3565b8152602001906001900390816132b15790505b50905060005b828110156133b65760007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631e16e4fc836040518263ffffffff1660e01b81526004016133359190615a70565b60206040518083038186803b15801561334d57600080fd5b505afa158015613361573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133859190614806565b905061339181876127a1565b83838151811061339d57fe5b60200260200101819052505080806001019150506132d2565b508092505050919050565b60008060006133cf86613d07565b9150915060008273ffffffffffffffffffffffffffffffffffffffff1663e958b704876040518263ffffffff1660e01b815260040161340e919061582f565b60206040518083038186803b15801561342657600080fd5b505afa15801561343a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061345e9190614806565b905060008273ffffffffffffffffffffffffffffffffffffffff16632630c12f6040518163ffffffff1660e01b815260040160206040518083038186803b1580156134a857600080fd5b505afa1580156134bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134e09190614806565b905060008373ffffffffffffffffffffffffffffffffffffffff166320a05ff76040518163ffffffff1660e01b815260040160206040518083038186803b15801561352a57600080fd5b505afa15801561353e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906135629190614a6c565b9050808751146135a7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161359e906159ce565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff16632495a5996040518163ffffffff1660e01b815260040160206040518083038186803b1580156135f057600080fd5b505afa158015613604573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136289190614806565b905060005b838110156138a0576138916138828873ffffffffffffffffffffffffffffffffffffffff1663783274388a73ffffffffffffffffffffffffffffffffffffffff16635e5f2e26866040518263ffffffff1660e01b81526004016136909190615a70565b60206040518083038186803b1580156136a857600080fd5b505afa1580156136bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136e09190614806565b6040518263ffffffff1660e01b81526004016136fc919061582f565b60206040518083038186803b15801561371457600080fd5b505afa158015613728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061374c9190614a6c565b8773ffffffffffffffffffffffffffffffffffffffff1663b66102df8e868151811061377457fe5b60200260200101518c73ffffffffffffffffffffffffffffffffffffffff16635e5f2e26886040518263ffffffff1660e01b81526004016137b59190615a70565b60206040518083038186803b1580156137cd57600080fd5b505afa1580156137e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138059190614806565b886040518463ffffffff1660e01b815260040161382493929190615a8b565b60206040518083038186803b15801561383c57600080fd5b505afa158015613850573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138749190614a6c565b613f3890919063ffffffff16565b846141a290919063ffffffff16565b9250808060010191505061362d565b5061393c8673ffffffffffffffffffffffffffffffffffffffff16633192195c876040518263ffffffff1660e01b81526004016138dd919061582f565b60206040518083038186803b1580156138f557600080fd5b505afa158015613909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061392d9190614a6c565b8361411990919063ffffffff16565b9750505050505050509392505050565b60606000825167ffffffffffffffff8111801561396857600080fd5b506040519080825280602002602001820160405280156139a257816020015b61398f61457c565b8152602001906001900390816139875790505b50905060005b8351811015613b415760405180606001604052808583815181106139c857fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1681526020018583815181106139f757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b815260040160006040518083038186803b158015613a4457600080fd5b505afa158015613a58573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190613a819190614a2b565b8152602001858381518110613a9257fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b158015613adf57600080fd5b505afa158015613af3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b179190614b0c565b60ff16815250828281518110613b2957fe5b602002602001018190525080806001019150506139a8565b5080915050919050565b6000827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636fbc6f6b826040518263ffffffff1660e01b8152600401613ba7919061582f565b60206040518083038186803b158015613bbf57600080fd5b505afa158015613bd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613bf791906149d9565b6040518060400160405280600281526020017f435000000000000000000000000000000000000000000000000000000000000081525090613c6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c6591906159ac565b60405180910390fd5b5060008490508073ffffffffffffffffffffffffffffffffffffffff1663256ac915856040518263ffffffff1660e01b8152600401613cad919061582f565b60206040518083038186803b158015613cc557600080fd5b505afa158015613cd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cfd91906149d9565b9250505092915050565b600080827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636fbc6f6b826040518263ffffffff1660e01b8152600401613d64919061582f565b60206040518083038186803b158015613d7c57600080fd5b505afa158015613d90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613db491906149d9565b6040518060400160405280600281526020017f435000000000000000000000000000000000000000000000000000000000000081525090613e2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613e2291906159ac565b60405180910390fd5b508392508273ffffffffffffffffffffffffffffffffffffffff1663f93f515b6040518163ffffffff1660e01b815260040160206040518083038186803b158015613e7557600080fd5b505afa158015613e89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ead9190614a02565b915050915091565b600082821115613f2d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b818303905092915050565b600080831415613f4b5760009050613fb8565b6000828402905082848281613f5c57fe5b0414613fb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180615ea06021913960400191505060405180910390fd5b809150505b92915050565b600080831480613fce5750600082145b15613fdc5760009050614113565b81600261271081613fe957fe5b047fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038161401357fe5b048311156040518060400160405280600281526020017f4d31000000000000000000000000000000000000000000000000000000000000815250906140f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156140b857808201518184015260208101905061409d565b50505050905090810190601f1680156140e55780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5061271060026127108161410357fe5b04838502018161410f57fe5b0490505b92915050565b6000808211614190576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b81838161419957fe5b04905092915050565b600080828401905083811015614220576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b604051806101400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081526020016000815260200160008152602001606081525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000151581525090565b604051806101e00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b604051806102000160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000815260200160008152602001600081526020016060815260200160008152602001600081526020016000151581526020016000815260200160008152602001600081525090565b604051806101800160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600015158152602001600015158152602001600081526020016000815260200160008152602001600081526020016000815260200160608152602001606081525090565b6040518060400160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001600060ff1681525090565b60006145c96145c484615af3565b615ac2565b905080838252602082019050828560208602820111156145e857600080fd5b60005b8581101561461857816145fe88826146cc565b8452602084019350602083019250506001810190506145eb565b5050509392505050565b600061463561463084615b1f565b615ac2565b9050808382526020820190508285602086028201111561465457600080fd5b60005b85811015614684578161466a888261479e565b845260208401935060208301925050600181019050614657565b5050509392505050565b60006146a161469c84615b4b565b615ac2565b9050828152602081018484840111156146b957600080fd5b6146c4848285615de6565b509392505050565b6000813590506146db81615e2c565b92915050565b6000815190506146f081615e2c565b92915050565b600082601f83011261470757600080fd5b81356147178482602086016145b6565b91505092915050565b600082601f83011261473157600080fd5b8135614741848260208601614622565b91505092915050565b60008151905061475981615e43565b92915050565b60008151905061476e81615e5a565b92915050565b600082601f83011261478557600080fd5b815161479584826020860161468e565b91505092915050565b6000813590506147ad81615e71565b92915050565b6000815190506147c281615e71565b92915050565b6000815190506147d781615e88565b92915050565b6000602082840312156147ef57600080fd5b60006147fd848285016146cc565b91505092915050565b60006020828403121561481857600080fd5b6000614826848285016146e1565b91505092915050565b6000806040838503121561484257600080fd5b6000614850858286016146cc565b9250506020614861858286016146cc565b9150509250929050565b60008060006060848603121561488057600080fd5b600061488e868287016146cc565b935050602061489f868287016146cc565b925050604084013567ffffffffffffffff8111156148bc57600080fd5b6148c886828701614720565b9150509250925092565b600080600080608085870312156148e857600080fd5b60006148f6878288016146cc565b9450506020614907878288016146cc565b93505060406149188782880161479e565b92505060606149298782880161479e565b91505092959194509250565b6000806000806080858703121561494b57600080fd5b6000614959878288016146e1565b945050602061496a878288016147b3565b935050604061497b878288016147b3565b925050606061498c878288016147b3565b91505092959194509250565b6000602082840312156149aa57600080fd5b600082013567ffffffffffffffff8111156149c457600080fd5b6149d0848285016146f6565b91505092915050565b6000602082840312156149eb57600080fd5b60006149f98482850161474a565b91505092915050565b600060208284031215614a1457600080fd5b6000614a228482850161475f565b91505092915050565b600060208284031215614a3d57600080fd5b600082015167ffffffffffffffff811115614a5757600080fd5b614a6384828501614774565b91505092915050565b600060208284031215614a7e57600080fd5b6000614a8c848285016147b3565b91505092915050565b600080600080600060a08688031215614aad57600080fd5b6000614abb888289016147b3565b9550506020614acc888289016147b3565b9450506040614add888289016147b3565b9350506060614aee888289016147b3565b9250506080614aff888289016147b3565b9150509295509295909350565b600060208284031215614b1e57600080fd5b6000614b2c848285016147c8565b91505092915050565b6000614b418383614bd2565b60208301905092915050565b6000614b598383614fb5565b60408301905092915050565b6000614b71838361513c565b905092915050565b6000614b8583836152f0565b905092915050565b6000614b998383615506565b6101e08301905092915050565b6000614bb28383615770565b60608301905092915050565b6000614bca83836157b2565b905092915050565b614bdb81615d37565b82525050565b614bea81615d37565b82525050565b6000614bfb82615beb565b614c058185615c9e565b9350614c1083615b7b565b8060005b83811015614c41578151614c288882614b35565b9750614c3383615c43565b925050600181019050614c14565b5085935050505092915050565b6000614c5982615bf6565b614c638185615caf565b9350614c6e83615b8b565b8060005b83811015614c9f578151614c868882614b4d565b9750614c9183615c50565b925050600181019050614c72565b5085935050505092915050565b6000614cb782615c01565b614cc18185615cc0565b935083602082028501614cd385615b9b565b8060005b85811015614d0f5784840389528151614cf08582614b65565b9450614cfb83615c5d565b925060208a01995050600181019050614cd7565b50829750879550505050505092915050565b6000614d2c82615c0c565b614d368185615cd1565b935083602082028501614d4885615bab565b8060005b85811015614d845784840389528151614d658582614b79565b9450614d7083615c6a565b925060208a01995050600181019050614d4c565b50829750879550505050505092915050565b6000614da182615c17565b614dab8185615ce2565b9350614db683615bbb565b8060005b83811015614de7578151614dce8882614b8d565b9750614dd983615c77565b925050600181019050614dba565b5085935050505092915050565b6000614dff82615c22565b614e098185615cf3565b9350614e1483615bcb565b8060005b83811015614e45578151614e2c8882614ba6565b9750614e3783615c84565b925050600181019050614e18565b5085935050505092915050565b6000614e5d82615c2d565b614e678185615d04565b935083602082028501614e7985615bdb565b8060005b85811015614eb55784840389528151614e968582614bbe565b9450614ea183615c91565b925060208a01995050600181019050614e7d565b50829750879550505050505092915050565b614ed081615d49565b82525050565b614edf81615d49565b82525050565b614eee81615d9e565b82525050565b614efd81615dc2565b82525050565b6000614f0e82615c38565b614f188185615d15565b9350614f28818560208601615de6565b614f3181615e1b565b840191505092915050565b6000614f4782615c38565b614f518185615d26565b9350614f61818560208601615de6565b614f6a81615e1b565b840191505092915050565b6000614f82601783615d26565b91507f496e636f72726563742062616c616e6365732073697a650000000000000000006000830152602082019050919050565b604082016000820151614fcb6000850182614bd2565b506020820151614fde6020850182614bd2565b50505050565b600061020083016000830151614ffd6000860182614bd2565b5060208301516150106020860182614bd2565b5060408301516150236040860182614ec7565b5060608301516150366060860182614bd2565b5060808301516150496080860182614bd2565b5060a083015161505c60a0860182615802565b5060c083015161506f60c0860182615802565b5060e083015161508260e0860182615802565b50610100830151615097610100860182615802565b506101208301518482036101208601526150b18282614df4565b9150506101408301516150c8610140860182615802565b506101608301516150dd610160860182615802565b506101808301516150f2610180860182614ec7565b506101a08301516151076101a0860182615802565b506101c083015161511c6101c0860182615802565b506101e08301516151316101e0860182615802565b508091505092915050565b6000610140830160008301516151556000860182614bd2565b5060208301516151686020860182614bd2565b50604083015161517b6040860182614ec7565b50606083015161518e6060860182614bd2565b5060808301516151a16080860182614bd2565b5060a08301516151b460a0860182615802565b5060c08301516151c760c0860182615802565b5060e08301516151da60e0860182615802565b506101008301516151ef610100860182615802565b506101208301518482036101208601526152098282614df4565b9150508091505092915050565b60006101408301600083015161522f6000860182614bd2565b5060208301516152426020860182614bd2565b5060408301516152556040860182614ec7565b5060608301516152686060860182614bd2565b50608083015161527b6080860182614bd2565b5060a083015161528e60a0860182615802565b5060c08301516152a160c0860182615802565b5060e08301516152b460e0860182615802565b506101008301516152c9610100860182615802565b506101208301518482036101208601526152e38282614df4565b9150508091505092915050565b6000610180830160008301516153096000860182614bd2565b50602083015161531c6020860182614ec7565b50604083015161532f6040860182614bd2565b5060608301516153426060860182614ec7565b5060808301516153556080860182614ec7565b5060a083015161536860a0860182615802565b5060c083015161537b60c0860182615802565b5060e083015161538e60e0860182615802565b506101008301516153a3610100860182615802565b506101208301516153b8610120860182615802565b506101408301518482036101408601526153d28282614bf0565b9150506101608301518482036101608601526153ee8282614c4e565b9150508091505092915050565b6000610180830160008301516154146000860182614bd2565b5060208301516154276020860182614ec7565b50604083015161543a6040860182614bd2565b50606083015161544d6060860182614ec7565b5060808301516154606080860182614ec7565b5060a083015161547360a0860182615802565b5060c083015161548660c0860182615802565b5060e083015161549960e0860182615802565b506101008301516154ae610100860182615802565b506101208301516154c3610120860182615802565b506101408301518482036101408601526154dd8282614bf0565b9150506101608301518482036101608601526154f98282614c4e565b9150508091505092915050565b6101e08201600082015161551d6000850182614bd2565b5060208201516155306020850182614ec7565b5060408201516155436040850182614bd2565b5060608201516155566060850182614bd2565b5060808201516155696080850182615802565b5060a082015161557c60a0850182615802565b5060c082015161558f60c0850182615802565b5060e08201516155a260e0850182615802565b506101008201516155b7610100850182615802565b506101208201516155cc610120850182615802565b506101408201516155e1610140850182615802565b506101608201516155f6610160850182615802565b5061018082015161560b610180850182615802565b506101a08201516156206101a0850182615802565b506101c08201516156356101c0850182615802565b50505050565b6101e0820160008201516156526000850182614bd2565b5060208201516156656020850182614ec7565b5060408201516156786040850182614bd2565b50606082015161568b6060850182614bd2565b50608082015161569e6080850182615802565b5060a08201516156b160a0850182615802565b5060c08201516156c460c0850182615802565b5060e08201516156d760e0850182615802565b506101008201516156ec610100850182615802565b50610120820151615701610120850182615802565b50610140820151615716610140850182615802565b5061016082015161572b610160850182615802565b50610180820151615740610180850182615802565b506101a08201516157556101a0850182615802565b506101c082015161576a6101c0850182615802565b50505050565b6060820160008201516157866000850182614bd2565b5060208201516157996020850182615802565b5060408201516157ac6040850182614ec7565b50505050565b60006060830160008301516157ca6000860182614bd2565b50602083015184820360208601526157e28282614f03565b91505060408301516157f76040860182615820565b508091505092915050565b61580b81615d87565b82525050565b61581a81615d87565b82525050565b61582981615d91565b82525050565b60006020820190506158446000830184614be1565b92915050565b600060408201905061585f6000830185614be1565b61586c6020830184614ed6565b9392505050565b60006040820190506158886000830185614be1565b6158956020830184615811565b9392505050565b60006060820190506158b16000830186614be1565b6158be6020830185615811565b6158cb6040830184614ed6565b949350505050565b600060208201905081810360008301526158ed8184614cac565b905092915050565b6000602082019050818103600083015261590f8184614d21565b905092915050565b600060208201905081810360008301526159318184614d96565b905092915050565b600060208201905081810360008301526159538184614e52565b905092915050565b60006020820190506159706000830184614ed6565b92915050565b600060208201905061598b6000830184614ee5565b92915050565b60006020820190506159a66000830184614ef4565b92915050565b600060208201905081810360008301526159c68184614f3c565b905092915050565b600060208201905081810360008301526159e781614f75565b9050919050565b60006020820190508181036000830152615a088184614fe4565b905092915050565b60006020820190508181036000830152615a2a8184615216565b905092915050565b60006020820190508181036000830152615a4c81846153fb565b905092915050565b60006101e082019050615a6a600083018461563b565b92915050565b6000602082019050615a856000830184615811565b92915050565b6000606082019050615aa06000830186615811565b615aad6020830185614be1565b615aba6040830184614be1565b949350505050565b6000604051905081810181811067ffffffffffffffff82111715615ae957615ae8615e19565b5b8060405250919050565b600067ffffffffffffffff821115615b0e57615b0d615e19565b5b602082029050602081019050919050565b600067ffffffffffffffff821115615b3a57615b39615e19565b5b602082029050602081019050919050565b600067ffffffffffffffff821115615b6657615b65615e19565b5b601f19601f8301169050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000615d4282615d67565b9050919050565b60008115159050919050565b6000615d6082615d37565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000615da982615db0565b9050919050565b6000615dbb82615d67565b9050919050565b6000615dcd82615dd4565b9050919050565b6000615ddf82615d67565b9050919050565b60005b83811015615e04578082015181840152602081019050615de9565b83811115615e13576000848401525b50505050565bfe5b6000601f19601f8301169050919050565b615e3581615d37565b8114615e4057600080fd5b50565b615e4c81615d49565b8114615e5757600080fd5b50565b615e6381615d55565b8114615e6e57600080fd5b50565b615e7a81615d87565b8114615e8557600080fd5b50565b615e9181615d91565b8114615e9c57600080fd5b5056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212200ad158fab81d005c37e0bc210bd47040e26a5a19b21cdef465cc20194f518c4164736f6c63430007060033";
908
+
909
+ export class DataCompressor__factory extends ContractFactory {
910
+ constructor(signer?: Signer) {
911
+ super(_abi, _bytecode, signer);
912
+ }
913
+
914
+ deploy(
915
+ _addressProvider: string,
916
+ overrides?: Overrides & { from?: string | Promise<string> }
917
+ ): Promise<DataCompressor> {
918
+ return super.deploy(
919
+ _addressProvider,
920
+ overrides || {}
921
+ ) as Promise<DataCompressor>;
922
+ }
923
+ getDeployTransaction(
924
+ _addressProvider: string,
925
+ overrides?: Overrides & { from?: string | Promise<string> }
926
+ ): TransactionRequest {
927
+ return super.getDeployTransaction(_addressProvider, overrides || {});
928
+ }
929
+ attach(address: string): DataCompressor {
930
+ return super.attach(address) as DataCompressor;
931
+ }
932
+ connect(signer: Signer): DataCompressor__factory {
933
+ return super.connect(signer) as DataCompressor__factory;
934
+ }
935
+ static readonly bytecode = _bytecode;
936
+ static readonly abi = _abi;
937
+ static createInterface(): DataCompressorInterface {
938
+ return new utils.Interface(_abi) as DataCompressorInterface;
939
+ }
940
+ static connect(
941
+ address: string,
942
+ signerOrProvider: Signer | Provider
943
+ ): DataCompressor {
944
+ return new Contract(address, _abi, signerOrProvider) as DataCompressor;
945
+ }
946
+ }