@exponent-labs/klend-idl 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/build/accounts/LendingMarket.d.ts +88 -0
  2. package/build/accounts/LendingMarket.js +225 -0
  3. package/build/accounts/LendingMarket.js.map +1 -0
  4. package/build/accounts/Obligation.d.ts +85 -0
  5. package/build/accounts/Obligation.js +217 -0
  6. package/build/accounts/Obligation.js.map +1 -0
  7. package/build/accounts/ReferrerState.d.ts +23 -0
  8. package/build/accounts/ReferrerState.js +85 -0
  9. package/build/accounts/ReferrerState.js.map +1 -0
  10. package/build/accounts/ReferrerTokenState.d.ts +36 -0
  11. package/build/accounts/ReferrerTokenState.js +116 -0
  12. package/build/accounts/ReferrerTokenState.js.map +1 -0
  13. package/build/accounts/Reserve.d.ts +61 -0
  14. package/build/accounts/Reserve.js +169 -0
  15. package/build/accounts/Reserve.js.map +1 -0
  16. package/build/accounts/ShortUrl.d.ts +23 -0
  17. package/build/accounts/ShortUrl.js +85 -0
  18. package/build/accounts/ShortUrl.js.map +1 -0
  19. package/build/accounts/UserMetadata.d.ts +36 -0
  20. package/build/accounts/UserMetadata.js +116 -0
  21. package/build/accounts/UserMetadata.js.map +1 -0
  22. package/build/accounts/UserState.d.ts +69 -0
  23. package/build/accounts/UserState.js +182 -0
  24. package/build/accounts/UserState.js.map +1 -0
  25. package/build/accounts/index.d.ts +16 -0
  26. package/build/accounts/index.js +20 -0
  27. package/build/accounts/index.js.map +1 -0
  28. package/build/errors/anchor.d.ts +434 -0
  29. package/build/errors/anchor.js +767 -0
  30. package/build/errors/anchor.js.map +1 -0
  31. package/build/errors/custom.d.ts +898 -0
  32. package/build/errors/custom.js +1580 -0
  33. package/build/errors/custom.js.map +1 -0
  34. package/build/errors/index.d.ts +5 -0
  35. package/build/errors/index.js +71 -0
  36. package/build/errors/index.js.map +1 -0
  37. package/build/index.d.ts +4 -0
  38. package/build/index.js +34 -0
  39. package/build/index.js.map +1 -0
  40. package/build/instructions/borrowObligationLiquidity.d.ts +21 -0
  41. package/build/instructions/borrowObligationLiquidity.js +80 -0
  42. package/build/instructions/borrowObligationLiquidity.js.map +1 -0
  43. package/build/instructions/borrowObligationLiquidityV2.d.ts +28 -0
  44. package/build/instructions/borrowObligationLiquidityV2.js +90 -0
  45. package/build/instructions/borrowObligationLiquidityV2.js.map +1 -0
  46. package/build/instructions/deleteReferrerStateAndShortUrl.d.ts +9 -0
  47. package/build/instructions/deleteReferrerStateAndShortUrl.js +20 -0
  48. package/build/instructions/deleteReferrerStateAndShortUrl.js.map +1 -0
  49. package/build/instructions/depositObligationCollateral.d.ts +17 -0
  50. package/build/instructions/depositObligationCollateral.js +64 -0
  51. package/build/instructions/depositObligationCollateral.js.map +1 -0
  52. package/build/instructions/depositReserveLiquidity.d.ts +21 -0
  53. package/build/instructions/depositReserveLiquidity.js +88 -0
  54. package/build/instructions/depositReserveLiquidity.js.map +1 -0
  55. package/build/instructions/depositReserveLiquidityAndObligationCollateral.d.ts +23 -0
  56. package/build/instructions/depositReserveLiquidityAndObligationCollateral.js +94 -0
  57. package/build/instructions/depositReserveLiquidityAndObligationCollateral.js.map +1 -0
  58. package/build/instructions/depositReserveLiquidityAndObligationCollateralV2.d.ts +30 -0
  59. package/build/instructions/depositReserveLiquidityAndObligationCollateralV2.js +100 -0
  60. package/build/instructions/depositReserveLiquidityAndObligationCollateralV2.js.map +1 -0
  61. package/build/instructions/flashBorrowReserveLiquidity.d.ts +21 -0
  62. package/build/instructions/flashBorrowReserveLiquidity.js +80 -0
  63. package/build/instructions/flashBorrowReserveLiquidity.js.map +1 -0
  64. package/build/instructions/flashRepayReserveLiquidity.d.ts +22 -0
  65. package/build/instructions/flashRepayReserveLiquidity.js +77 -0
  66. package/build/instructions/flashRepayReserveLiquidity.js.map +1 -0
  67. package/build/instructions/idlMissingTypes.d.ts +18 -0
  68. package/build/instructions/idlMissingTypes.js +62 -0
  69. package/build/instructions/idlMissingTypes.js.map +1 -0
  70. package/build/instructions/index.d.ts +74 -0
  71. package/build/instructions/index.js +78 -0
  72. package/build/instructions/index.js.map +1 -0
  73. package/build/instructions/initFarmsForReserve.d.ts +18 -0
  74. package/build/instructions/initFarmsForReserve.js +62 -0
  75. package/build/instructions/initFarmsForReserve.js.map +1 -0
  76. package/build/instructions/initLendingMarket.d.ts +13 -0
  77. package/build/instructions/initLendingMarket.js +53 -0
  78. package/build/instructions/initLendingMarket.js.map +1 -0
  79. package/build/instructions/initObligation.d.ts +18 -0
  80. package/build/instructions/initObligation.js +54 -0
  81. package/build/instructions/initObligation.js.map +1 -0
  82. package/build/instructions/initObligationFarmsForReserve.d.ts +19 -0
  83. package/build/instructions/initObligationFarmsForReserve.js +59 -0
  84. package/build/instructions/initObligationFarmsForReserve.js.map +1 -0
  85. package/build/instructions/initReferrerStateAndShortUrl.d.ts +14 -0
  86. package/build/instructions/initReferrerStateAndShortUrl.js +54 -0
  87. package/build/instructions/initReferrerStateAndShortUrl.js.map +1 -0
  88. package/build/instructions/initReferrerTokenState.d.ts +14 -0
  89. package/build/instructions/initReferrerTokenState.js +50 -0
  90. package/build/instructions/initReferrerTokenState.js.map +1 -0
  91. package/build/instructions/initReserve.d.ts +17 -0
  92. package/build/instructions/initReserve.js +56 -0
  93. package/build/instructions/initReserve.js.map +1 -0
  94. package/build/instructions/initUserMetadata.d.ts +14 -0
  95. package/build/instructions/initUserMetadata.js +54 -0
  96. package/build/instructions/initUserMetadata.js.map +1 -0
  97. package/build/instructions/liquidateObligationAndRedeemReserveCollateral.d.ts +31 -0
  98. package/build/instructions/liquidateObligationAndRedeemReserveCollateral.js +126 -0
  99. package/build/instructions/liquidateObligationAndRedeemReserveCollateral.js.map +1 -0
  100. package/build/instructions/redeemFees.d.ts +11 -0
  101. package/build/instructions/redeemFees.js +38 -0
  102. package/build/instructions/redeemFees.js.map +1 -0
  103. package/build/instructions/redeemReserveCollateral.d.ts +21 -0
  104. package/build/instructions/redeemReserveCollateral.js +92 -0
  105. package/build/instructions/redeemReserveCollateral.js.map +1 -0
  106. package/build/instructions/refreshObligation.d.ts +6 -0
  107. package/build/instructions/refreshObligation.js +17 -0
  108. package/build/instructions/refreshObligation.js.map +1 -0
  109. package/build/instructions/refreshObligationFarmsForReserve.d.ts +18 -0
  110. package/build/instructions/refreshObligationFarmsForReserve.js +62 -0
  111. package/build/instructions/refreshObligationFarmsForReserve.js.map +1 -0
  112. package/build/instructions/refreshReserve.d.ts +10 -0
  113. package/build/instructions/refreshReserve.js +29 -0
  114. package/build/instructions/refreshReserve.js.map +1 -0
  115. package/build/instructions/refreshReservesBatch.d.ts +6 -0
  116. package/build/instructions/refreshReservesBatch.js +43 -0
  117. package/build/instructions/refreshReservesBatch.js.map +1 -0
  118. package/build/instructions/repayObligationLiquidity.d.ts +18 -0
  119. package/build/instructions/repayObligationLiquidity.js +65 -0
  120. package/build/instructions/repayObligationLiquidity.js.map +1 -0
  121. package/build/instructions/repayObligationLiquidityV2.d.ts +26 -0
  122. package/build/instructions/repayObligationLiquidityV2.js +76 -0
  123. package/build/instructions/repayObligationLiquidityV2.js.map +1 -0
  124. package/build/instructions/requestElevationGroup.d.ts +11 -0
  125. package/build/instructions/requestElevationGroup.js +47 -0
  126. package/build/instructions/requestElevationGroup.js.map +1 -0
  127. package/build/instructions/socializeLoss.d.ts +14 -0
  128. package/build/instructions/socializeLoss.js +53 -0
  129. package/build/instructions/socializeLoss.js.map +1 -0
  130. package/build/instructions/updateLendingMarket.d.ts +12 -0
  131. package/build/instructions/updateLendingMarket.js +47 -0
  132. package/build/instructions/updateLendingMarket.js.map +1 -0
  133. package/build/instructions/updateLendingMarketOwner.d.ts +6 -0
  134. package/build/instructions/updateLendingMarketOwner.js +21 -0
  135. package/build/instructions/updateLendingMarketOwner.js.map +1 -0
  136. package/build/instructions/updateReserveConfig.d.ts +14 -0
  137. package/build/instructions/updateReserveConfig.js +49 -0
  138. package/build/instructions/updateReserveConfig.js.map +1 -0
  139. package/build/instructions/withdrawObligationCollateral.d.ts +18 -0
  140. package/build/instructions/withdrawObligationCollateral.js +69 -0
  141. package/build/instructions/withdrawObligationCollateral.js.map +1 -0
  142. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.d.ts +23 -0
  143. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js +98 -0
  144. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.js.map +1 -0
  145. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.d.ts +30 -0
  146. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.js +104 -0
  147. package/build/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.js.map +1 -0
  148. package/build/instructions/withdrawProtocolFee.d.ts +17 -0
  149. package/build/instructions/withdrawProtocolFee.js +64 -0
  150. package/build/instructions/withdrawProtocolFee.js.map +1 -0
  151. package/build/instructions/withdrawReferrerFees.d.ts +13 -0
  152. package/build/instructions/withdrawReferrerFees.js +40 -0
  153. package/build/instructions/withdrawReferrerFees.js.map +1 -0
  154. package/build/kamino_lending.d.ts +3937 -0
  155. package/build/kamino_lending.js +3940 -0
  156. package/build/kamino_lending.js.map +1 -0
  157. package/build/kamino_lending.json +6352 -0
  158. package/build/programId.d.ts +3 -0
  159. package/build/programId.js +9 -0
  160. package/build/programId.js.map +1 -0
  161. package/build/types/AssetTier.d.ts +44 -0
  162. package/build/types/AssetTier.js +122 -0
  163. package/build/types/AssetTier.js.map +1 -0
  164. package/build/types/BigFractionBytes.d.ts +26 -0
  165. package/build/types/BigFractionBytes.js +72 -0
  166. package/build/types/BigFractionBytes.js.map +1 -0
  167. package/build/types/BorrowRateCurve.d.ts +27 -0
  168. package/build/types/BorrowRateCurve.js +63 -0
  169. package/build/types/BorrowRateCurve.js.map +1 -0
  170. package/build/types/CurvePoint.d.ts +25 -0
  171. package/build/types/CurvePoint.js +68 -0
  172. package/build/types/CurvePoint.js.map +1 -0
  173. package/build/types/ElevationGroup.d.ts +62 -0
  174. package/build/types/ElevationGroup.js +125 -0
  175. package/build/types/ElevationGroup.js.map +1 -0
  176. package/build/types/FeeCalculation.d.ts +31 -0
  177. package/build/types/FeeCalculation.js +95 -0
  178. package/build/types/FeeCalculation.js.map +1 -0
  179. package/build/types/InitObligationArgs.d.ts +25 -0
  180. package/build/types/InitObligationArgs.js +68 -0
  181. package/build/types/InitObligationArgs.js.map +1 -0
  182. package/build/types/LastUpdate.d.ts +36 -0
  183. package/build/types/LastUpdate.js +84 -0
  184. package/build/types/LastUpdate.js.map +1 -0
  185. package/build/types/ObligationCollateral.d.ts +43 -0
  186. package/build/types/ObligationCollateral.js +98 -0
  187. package/build/types/ObligationCollateral.js.map +1 -0
  188. package/build/types/ObligationLiquidity.d.ts +64 -0
  189. package/build/types/ObligationLiquidity.js +123 -0
  190. package/build/types/ObligationLiquidity.js.map +1 -0
  191. package/build/types/PriceHeuristic.d.ts +32 -0
  192. package/build/types/PriceHeuristic.js +78 -0
  193. package/build/types/PriceHeuristic.js.map +1 -0
  194. package/build/types/PythConfiguration.d.ts +22 -0
  195. package/build/types/PythConfiguration.js +63 -0
  196. package/build/types/PythConfiguration.js.map +1 -0
  197. package/build/types/ReserveCollateral.d.ts +43 -0
  198. package/build/types/ReserveCollateral.js +97 -0
  199. package/build/types/ReserveCollateral.js.map +1 -0
  200. package/build/types/ReserveConfig.d.ts +246 -0
  201. package/build/types/ReserveConfig.js +269 -0
  202. package/build/types/ReserveConfig.js.map +1 -0
  203. package/build/types/ReserveFarmKind.d.ts +31 -0
  204. package/build/types/ReserveFarmKind.js +98 -0
  205. package/build/types/ReserveFarmKind.js.map +1 -0
  206. package/build/types/ReserveFees.d.ts +32 -0
  207. package/build/types/ReserveFees.js +82 -0
  208. package/build/types/ReserveFees.js.map +1 -0
  209. package/build/types/ReserveLiquidity.d.ts +114 -0
  210. package/build/types/ReserveLiquidity.js +191 -0
  211. package/build/types/ReserveLiquidity.js.map +1 -0
  212. package/build/types/ReserveStatus.d.ts +44 -0
  213. package/build/types/ReserveStatus.js +122 -0
  214. package/build/types/ReserveStatus.js.map +1 -0
  215. package/build/types/ScopeConfiguration.d.ts +32 -0
  216. package/build/types/ScopeConfiguration.js +79 -0
  217. package/build/types/ScopeConfiguration.js.map +1 -0
  218. package/build/types/SwitchboardConfiguration.d.ts +27 -0
  219. package/build/types/SwitchboardConfiguration.js +69 -0
  220. package/build/types/SwitchboardConfiguration.js.map +1 -0
  221. package/build/types/TokenInfo.d.ts +99 -0
  222. package/build/types/TokenInfo.js +145 -0
  223. package/build/types/TokenInfo.js.map +1 -0
  224. package/build/types/UpdateConfigMode.d.ts +616 -0
  225. package/build/types/UpdateConfigMode.js +1178 -0
  226. package/build/types/UpdateConfigMode.js.map +1 -0
  227. package/build/types/UpdateLendingMarketConfigValue.d.ts +177 -0
  228. package/build/types/UpdateLendingMarketConfigValue.js +312 -0
  229. package/build/types/UpdateLendingMarketConfigValue.js.map +1 -0
  230. package/build/types/UpdateLendingMarketMode.d.ts +239 -0
  231. package/build/types/UpdateLendingMarketMode.js +482 -0
  232. package/build/types/UpdateLendingMarketMode.js.map +1 -0
  233. package/build/types/WithdrawalCaps.d.ts +37 -0
  234. package/build/types/WithdrawalCaps.js +89 -0
  235. package/build/types/WithdrawalCaps.js.map +1 -0
  236. package/build/types/index.d.ts +64 -0
  237. package/build/types/index.js +77 -0
  238. package/build/types/index.js.map +1 -0
  239. package/package.json +44 -0
  240. package/src/accounts/LendingMarket.ts +292 -0
  241. package/src/accounts/Obligation.ts +282 -0
  242. package/src/accounts/ReferrerState.ts +90 -0
  243. package/src/accounts/ReferrerTokenState.ts +126 -0
  244. package/src/accounts/Reserve.ts +218 -0
  245. package/src/accounts/ShortUrl.ts +86 -0
  246. package/src/accounts/UserMetadata.ts +126 -0
  247. package/src/accounts/UserState.ts +210 -0
  248. package/src/accounts/index.ts +19 -0
  249. package/src/errors/anchor.ts +773 -0
  250. package/src/errors/custom.ts +1633 -0
  251. package/src/errors/index.ts +62 -0
  252. package/src/index.ts +5 -0
  253. package/src/instructions/borrowObligationLiquidity.ts +81 -0
  254. package/src/instructions/borrowObligationLiquidityV2.ts +103 -0
  255. package/src/instructions/deleteReferrerStateAndShortUrl.ts +27 -0
  256. package/src/instructions/depositObligationCollateral.ts +61 -0
  257. package/src/instructions/depositReserveLiquidity.ts +89 -0
  258. package/src/instructions/depositReserveLiquidityAndObligationCollateral.ts +97 -0
  259. package/src/instructions/depositReserveLiquidityAndObligationCollateralV2.ts +119 -0
  260. package/src/instructions/flashBorrowReserveLiquidity.ts +81 -0
  261. package/src/instructions/flashRepayReserveLiquidity.ts +79 -0
  262. package/src/instructions/idlMissingTypes.ts +59 -0
  263. package/src/instructions/index.ts +158 -0
  264. package/src/instructions/initFarmsForReserve.ts +60 -0
  265. package/src/instructions/initLendingMarket.ts +46 -0
  266. package/src/instructions/initObligation.ts +51 -0
  267. package/src/instructions/initObligationFarmsForReserve.ts +58 -0
  268. package/src/instructions/initReferrerStateAndShortUrl.ts +48 -0
  269. package/src/instructions/initReferrerTokenState.ts +44 -0
  270. package/src/instructions/initReserve.ts +68 -0
  271. package/src/instructions/initUserMetadata.ts +48 -0
  272. package/src/instructions/liquidateObligationAndRedeemReserveCollateral.ts +137 -0
  273. package/src/instructions/redeemFees.ts +44 -0
  274. package/src/instructions/redeemReserveCollateral.ts +93 -0
  275. package/src/instructions/refreshObligation.ts +18 -0
  276. package/src/instructions/refreshObligationFarmsForReserve.ts +60 -0
  277. package/src/instructions/refreshReserve.ts +34 -0
  278. package/src/instructions/refreshReservesBatch.ts +24 -0
  279. package/src/instructions/repayObligationLiquidity.ts +63 -0
  280. package/src/instructions/repayObligationLiquidityV2.ts +87 -0
  281. package/src/instructions/requestElevationGroup.ts +38 -0
  282. package/src/instructions/socializeLoss.ts +47 -0
  283. package/src/instructions/updateLendingMarket.ts +39 -0
  284. package/src/instructions/updateLendingMarketOwner.ts +25 -0
  285. package/src/instructions/updateReserveConfig.ts +43 -0
  286. package/src/instructions/withdrawObligationCollateral.ts +67 -0
  287. package/src/instructions/withdrawObligationCollateralAndRedeemReserveCollateral.ts +101 -0
  288. package/src/instructions/withdrawObligationCollateralAndRedeemReserveCollateralV2.ts +123 -0
  289. package/src/instructions/withdrawProtocolFee.ts +61 -0
  290. package/src/instructions/withdrawReferrerFees.ts +48 -0
  291. package/src/kamino_lending.json +6352 -0
  292. package/src/kamino_lending.ts +7873 -0
  293. package/src/programId.ts +9 -0
  294. package/src/types/AssetTier.ts +116 -0
  295. package/src/types/BigFractionBytes.ts +59 -0
  296. package/src/types/BorrowRateCurve.ts +53 -0
  297. package/src/types/CurvePoint.ts +58 -0
  298. package/src/types/ElevationGroup.ts +129 -0
  299. package/src/types/FeeCalculation.ts +83 -0
  300. package/src/types/InitObligationArgs.ts +58 -0
  301. package/src/types/LastUpdate.ts +78 -0
  302. package/src/types/ObligationCollateral.ts +100 -0
  303. package/src/types/ObligationLiquidity.ts +140 -0
  304. package/src/types/PriceHeuristic.ts +72 -0
  305. package/src/types/PythConfiguration.ts +53 -0
  306. package/src/types/ReserveCollateral.ts +94 -0
  307. package/src/types/ReserveConfig.ts +349 -0
  308. package/src/types/ReserveFarmKind.ts +90 -0
  309. package/src/types/ReserveFees.ts +76 -0
  310. package/src/types/ReserveLiquidity.ts +219 -0
  311. package/src/types/ReserveStatus.ts +120 -0
  312. package/src/types/ScopeConfiguration.ts +76 -0
  313. package/src/types/SwitchboardConfiguration.ts +64 -0
  314. package/src/types/TokenInfo.ts +172 -0
  315. package/src/types/UpdateConfigMode.ts +1440 -0
  316. package/src/types/UpdateLendingMarketConfigValue.ts +376 -0
  317. package/src/types/UpdateLendingMarketMode.ts +570 -0
  318. package/src/types/WithdrawalCaps.ts +85 -0
  319. package/src/types/index.ts +275 -0
  320. package/tsconfig.json +17 -0
@@ -0,0 +1,88 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { PublicKey, Connection } from "@solana/web3.js";
4
+ import BN from "bn.js";
5
+ import * as types from "../types";
6
+ export interface LendingMarketFields {
7
+ version: BN;
8
+ bumpSeed: BN;
9
+ lendingMarketOwner: PublicKey;
10
+ lendingMarketOwnerCached: PublicKey;
11
+ quoteCurrency: Array<number>;
12
+ referralFeeBps: number;
13
+ emergencyMode: number;
14
+ autodeleverageEnabled: number;
15
+ borrowDisabled: number;
16
+ priceRefreshTriggerToMaxAgePct: number;
17
+ liquidationMaxDebtCloseFactorPct: number;
18
+ insolvencyRiskUnhealthyLtvPct: number;
19
+ minFullLiquidationValueThreshold: BN;
20
+ maxLiquidatableDebtMarketValueAtOnce: BN;
21
+ globalUnhealthyBorrowValue: BN;
22
+ globalAllowedBorrowValue: BN;
23
+ riskCouncil: PublicKey;
24
+ reserved1: Array<number>;
25
+ elevationGroups: Array<types.ElevationGroupFields>;
26
+ elevationGroupPadding: Array<BN>;
27
+ minNetValueInObligationSf: BN;
28
+ minValueSkipLiquidationLtvBfChecks: BN;
29
+ padding1: Array<BN>;
30
+ }
31
+ export interface LendingMarketJSON {
32
+ version: string;
33
+ bumpSeed: string;
34
+ lendingMarketOwner: string;
35
+ lendingMarketOwnerCached: string;
36
+ quoteCurrency: Array<number>;
37
+ referralFeeBps: number;
38
+ emergencyMode: number;
39
+ autodeleverageEnabled: number;
40
+ borrowDisabled: number;
41
+ priceRefreshTriggerToMaxAgePct: number;
42
+ liquidationMaxDebtCloseFactorPct: number;
43
+ insolvencyRiskUnhealthyLtvPct: number;
44
+ minFullLiquidationValueThreshold: string;
45
+ maxLiquidatableDebtMarketValueAtOnce: string;
46
+ globalUnhealthyBorrowValue: string;
47
+ globalAllowedBorrowValue: string;
48
+ riskCouncil: string;
49
+ reserved1: Array<number>;
50
+ elevationGroups: Array<types.ElevationGroupJSON>;
51
+ elevationGroupPadding: Array<string>;
52
+ minNetValueInObligationSf: string;
53
+ minValueSkipLiquidationLtvBfChecks: string;
54
+ padding1: Array<string>;
55
+ }
56
+ export declare class LendingMarket {
57
+ readonly version: BN;
58
+ readonly bumpSeed: BN;
59
+ readonly lendingMarketOwner: PublicKey;
60
+ readonly lendingMarketOwnerCached: PublicKey;
61
+ readonly quoteCurrency: Array<number>;
62
+ readonly referralFeeBps: number;
63
+ readonly emergencyMode: number;
64
+ readonly autodeleverageEnabled: number;
65
+ readonly borrowDisabled: number;
66
+ readonly priceRefreshTriggerToMaxAgePct: number;
67
+ readonly liquidationMaxDebtCloseFactorPct: number;
68
+ readonly insolvencyRiskUnhealthyLtvPct: number;
69
+ readonly minFullLiquidationValueThreshold: BN;
70
+ readonly maxLiquidatableDebtMarketValueAtOnce: BN;
71
+ readonly globalUnhealthyBorrowValue: BN;
72
+ readonly globalAllowedBorrowValue: BN;
73
+ readonly riskCouncil: PublicKey;
74
+ readonly reserved1: Array<number>;
75
+ readonly elevationGroups: Array<types.ElevationGroup>;
76
+ readonly elevationGroupPadding: Array<BN>;
77
+ readonly minNetValueInObligationSf: BN;
78
+ readonly minValueSkipLiquidationLtvBfChecks: BN;
79
+ readonly padding1: Array<BN>;
80
+ static readonly discriminator: Buffer;
81
+ static readonly layout: any;
82
+ constructor(fields: LendingMarketFields);
83
+ static fetch(c: Connection, address: PublicKey, programId?: PublicKey): Promise<LendingMarket | null>;
84
+ static fetchMultiple(c: Connection, addresses: PublicKey[], programId?: PublicKey): Promise<Array<LendingMarket | null>>;
85
+ static decode(data: Buffer): LendingMarket;
86
+ toJSON(): LendingMarketJSON;
87
+ static fromJSON(obj: LendingMarketJSON): LendingMarket;
88
+ }
@@ -0,0 +1,225 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.LendingMarket = void 0;
30
+ const web3_js_1 = require("@solana/web3.js");
31
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
32
+ const borsh = __importStar(require("@coral-xyz/borsh")); // eslint-disable-line @typescript-eslint/no-unused-vars
33
+ const types = __importStar(require("../types")); // eslint-disable-line @typescript-eslint/no-unused-vars
34
+ const programId_1 = require("../programId");
35
+ class LendingMarket {
36
+ version;
37
+ bumpSeed;
38
+ lendingMarketOwner;
39
+ lendingMarketOwnerCached;
40
+ quoteCurrency;
41
+ referralFeeBps;
42
+ emergencyMode;
43
+ autodeleverageEnabled;
44
+ borrowDisabled;
45
+ priceRefreshTriggerToMaxAgePct;
46
+ liquidationMaxDebtCloseFactorPct;
47
+ insolvencyRiskUnhealthyLtvPct;
48
+ minFullLiquidationValueThreshold;
49
+ maxLiquidatableDebtMarketValueAtOnce;
50
+ globalUnhealthyBorrowValue;
51
+ globalAllowedBorrowValue;
52
+ riskCouncil;
53
+ reserved1;
54
+ elevationGroups;
55
+ elevationGroupPadding;
56
+ minNetValueInObligationSf;
57
+ minValueSkipLiquidationLtvBfChecks;
58
+ padding1;
59
+ static discriminator = Buffer.from([
60
+ 246, 114, 50, 98, 72, 157, 28, 120,
61
+ ]);
62
+ static layout = borsh.struct([
63
+ borsh.u64("version"),
64
+ borsh.u64("bumpSeed"),
65
+ borsh.publicKey("lendingMarketOwner"),
66
+ borsh.publicKey("lendingMarketOwnerCached"),
67
+ borsh.array(borsh.u8(), 32, "quoteCurrency"),
68
+ borsh.u16("referralFeeBps"),
69
+ borsh.u8("emergencyMode"),
70
+ borsh.u8("autodeleverageEnabled"),
71
+ borsh.u8("borrowDisabled"),
72
+ borsh.u8("priceRefreshTriggerToMaxAgePct"),
73
+ borsh.u8("liquidationMaxDebtCloseFactorPct"),
74
+ borsh.u8("insolvencyRiskUnhealthyLtvPct"),
75
+ borsh.u64("minFullLiquidationValueThreshold"),
76
+ borsh.u64("maxLiquidatableDebtMarketValueAtOnce"),
77
+ borsh.u64("globalUnhealthyBorrowValue"),
78
+ borsh.u64("globalAllowedBorrowValue"),
79
+ borsh.publicKey("riskCouncil"),
80
+ borsh.array(borsh.u8(), 8, "reserved1"),
81
+ borsh.array(types.ElevationGroup.layout(), 32, "elevationGroups"),
82
+ borsh.array(borsh.u64(), 90, "elevationGroupPadding"),
83
+ borsh.u128("minNetValueInObligationSf"),
84
+ borsh.u64("minValueSkipLiquidationLtvBfChecks"),
85
+ borsh.array(borsh.u64(), 177, "padding1"),
86
+ ]);
87
+ constructor(fields) {
88
+ this.version = fields.version;
89
+ this.bumpSeed = fields.bumpSeed;
90
+ this.lendingMarketOwner = fields.lendingMarketOwner;
91
+ this.lendingMarketOwnerCached = fields.lendingMarketOwnerCached;
92
+ this.quoteCurrency = fields.quoteCurrency;
93
+ this.referralFeeBps = fields.referralFeeBps;
94
+ this.emergencyMode = fields.emergencyMode;
95
+ this.autodeleverageEnabled = fields.autodeleverageEnabled;
96
+ this.borrowDisabled = fields.borrowDisabled;
97
+ this.priceRefreshTriggerToMaxAgePct = fields.priceRefreshTriggerToMaxAgePct;
98
+ this.liquidationMaxDebtCloseFactorPct =
99
+ fields.liquidationMaxDebtCloseFactorPct;
100
+ this.insolvencyRiskUnhealthyLtvPct = fields.insolvencyRiskUnhealthyLtvPct;
101
+ this.minFullLiquidationValueThreshold =
102
+ fields.minFullLiquidationValueThreshold;
103
+ this.maxLiquidatableDebtMarketValueAtOnce =
104
+ fields.maxLiquidatableDebtMarketValueAtOnce;
105
+ this.globalUnhealthyBorrowValue = fields.globalUnhealthyBorrowValue;
106
+ this.globalAllowedBorrowValue = fields.globalAllowedBorrowValue;
107
+ this.riskCouncil = fields.riskCouncil;
108
+ this.reserved1 = fields.reserved1;
109
+ this.elevationGroups = fields.elevationGroups.map((item) => new types.ElevationGroup({ ...item }));
110
+ this.elevationGroupPadding = fields.elevationGroupPadding;
111
+ this.minNetValueInObligationSf = fields.minNetValueInObligationSf;
112
+ this.minValueSkipLiquidationLtvBfChecks =
113
+ fields.minValueSkipLiquidationLtvBfChecks;
114
+ this.padding1 = fields.padding1;
115
+ }
116
+ static async fetch(c, address, programId = programId_1.PROGRAM_ID) {
117
+ const info = await c.getAccountInfo(address);
118
+ if (info === null) {
119
+ return null;
120
+ }
121
+ if (!info.owner.equals(programId)) {
122
+ throw new Error("account doesn't belong to this program");
123
+ }
124
+ return this.decode(info.data);
125
+ }
126
+ static async fetchMultiple(c, addresses, programId = programId_1.PROGRAM_ID) {
127
+ const infos = await c.getMultipleAccountsInfo(addresses);
128
+ return infos.map((info) => {
129
+ if (info === null) {
130
+ return null;
131
+ }
132
+ if (!info.owner.equals(programId)) {
133
+ throw new Error("account doesn't belong to this program");
134
+ }
135
+ return this.decode(info.data);
136
+ });
137
+ }
138
+ static decode(data) {
139
+ if (!data.slice(0, 8).equals(LendingMarket.discriminator)) {
140
+ throw new Error("invalid account discriminator");
141
+ }
142
+ const dec = LendingMarket.layout.decode(data.slice(8));
143
+ return new LendingMarket({
144
+ version: dec.version,
145
+ bumpSeed: dec.bumpSeed,
146
+ lendingMarketOwner: dec.lendingMarketOwner,
147
+ lendingMarketOwnerCached: dec.lendingMarketOwnerCached,
148
+ quoteCurrency: dec.quoteCurrency,
149
+ referralFeeBps: dec.referralFeeBps,
150
+ emergencyMode: dec.emergencyMode,
151
+ autodeleverageEnabled: dec.autodeleverageEnabled,
152
+ borrowDisabled: dec.borrowDisabled,
153
+ priceRefreshTriggerToMaxAgePct: dec.priceRefreshTriggerToMaxAgePct,
154
+ liquidationMaxDebtCloseFactorPct: dec.liquidationMaxDebtCloseFactorPct,
155
+ insolvencyRiskUnhealthyLtvPct: dec.insolvencyRiskUnhealthyLtvPct,
156
+ minFullLiquidationValueThreshold: dec.minFullLiquidationValueThreshold,
157
+ maxLiquidatableDebtMarketValueAtOnce: dec.maxLiquidatableDebtMarketValueAtOnce,
158
+ globalUnhealthyBorrowValue: dec.globalUnhealthyBorrowValue,
159
+ globalAllowedBorrowValue: dec.globalAllowedBorrowValue,
160
+ riskCouncil: dec.riskCouncil,
161
+ reserved1: dec.reserved1,
162
+ elevationGroups: dec.elevationGroups.map((item /* eslint-disable-line @typescript-eslint/no-explicit-any */) => types.ElevationGroup.fromDecoded(item)),
163
+ elevationGroupPadding: dec.elevationGroupPadding,
164
+ minNetValueInObligationSf: dec.minNetValueInObligationSf,
165
+ minValueSkipLiquidationLtvBfChecks: dec.minValueSkipLiquidationLtvBfChecks,
166
+ padding1: dec.padding1,
167
+ });
168
+ }
169
+ toJSON() {
170
+ return {
171
+ version: this.version.toString(),
172
+ bumpSeed: this.bumpSeed.toString(),
173
+ lendingMarketOwner: this.lendingMarketOwner.toString(),
174
+ lendingMarketOwnerCached: this.lendingMarketOwnerCached.toString(),
175
+ quoteCurrency: this.quoteCurrency,
176
+ referralFeeBps: this.referralFeeBps,
177
+ emergencyMode: this.emergencyMode,
178
+ autodeleverageEnabled: this.autodeleverageEnabled,
179
+ borrowDisabled: this.borrowDisabled,
180
+ priceRefreshTriggerToMaxAgePct: this.priceRefreshTriggerToMaxAgePct,
181
+ liquidationMaxDebtCloseFactorPct: this.liquidationMaxDebtCloseFactorPct,
182
+ insolvencyRiskUnhealthyLtvPct: this.insolvencyRiskUnhealthyLtvPct,
183
+ minFullLiquidationValueThreshold: this.minFullLiquidationValueThreshold.toString(),
184
+ maxLiquidatableDebtMarketValueAtOnce: this.maxLiquidatableDebtMarketValueAtOnce.toString(),
185
+ globalUnhealthyBorrowValue: this.globalUnhealthyBorrowValue.toString(),
186
+ globalAllowedBorrowValue: this.globalAllowedBorrowValue.toString(),
187
+ riskCouncil: this.riskCouncil.toString(),
188
+ reserved1: this.reserved1,
189
+ elevationGroups: this.elevationGroups.map((item) => item.toJSON()),
190
+ elevationGroupPadding: this.elevationGroupPadding.map((item) => item.toString()),
191
+ minNetValueInObligationSf: this.minNetValueInObligationSf.toString(),
192
+ minValueSkipLiquidationLtvBfChecks: this.minValueSkipLiquidationLtvBfChecks.toString(),
193
+ padding1: this.padding1.map((item) => item.toString()),
194
+ };
195
+ }
196
+ static fromJSON(obj) {
197
+ return new LendingMarket({
198
+ version: new bn_js_1.default(obj.version),
199
+ bumpSeed: new bn_js_1.default(obj.bumpSeed),
200
+ lendingMarketOwner: new web3_js_1.PublicKey(obj.lendingMarketOwner),
201
+ lendingMarketOwnerCached: new web3_js_1.PublicKey(obj.lendingMarketOwnerCached),
202
+ quoteCurrency: obj.quoteCurrency,
203
+ referralFeeBps: obj.referralFeeBps,
204
+ emergencyMode: obj.emergencyMode,
205
+ autodeleverageEnabled: obj.autodeleverageEnabled,
206
+ borrowDisabled: obj.borrowDisabled,
207
+ priceRefreshTriggerToMaxAgePct: obj.priceRefreshTriggerToMaxAgePct,
208
+ liquidationMaxDebtCloseFactorPct: obj.liquidationMaxDebtCloseFactorPct,
209
+ insolvencyRiskUnhealthyLtvPct: obj.insolvencyRiskUnhealthyLtvPct,
210
+ minFullLiquidationValueThreshold: new bn_js_1.default(obj.minFullLiquidationValueThreshold),
211
+ maxLiquidatableDebtMarketValueAtOnce: new bn_js_1.default(obj.maxLiquidatableDebtMarketValueAtOnce),
212
+ globalUnhealthyBorrowValue: new bn_js_1.default(obj.globalUnhealthyBorrowValue),
213
+ globalAllowedBorrowValue: new bn_js_1.default(obj.globalAllowedBorrowValue),
214
+ riskCouncil: new web3_js_1.PublicKey(obj.riskCouncil),
215
+ reserved1: obj.reserved1,
216
+ elevationGroups: obj.elevationGroups.map((item) => types.ElevationGroup.fromJSON(item)),
217
+ elevationGroupPadding: obj.elevationGroupPadding.map((item) => new bn_js_1.default(item)),
218
+ minNetValueInObligationSf: new bn_js_1.default(obj.minNetValueInObligationSf),
219
+ minValueSkipLiquidationLtvBfChecks: new bn_js_1.default(obj.minValueSkipLiquidationLtvBfChecks),
220
+ padding1: obj.padding1.map((item) => new bn_js_1.default(item)),
221
+ });
222
+ }
223
+ }
224
+ exports.LendingMarket = LendingMarket;
225
+ //# sourceMappingURL=LendingMarket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LendingMarket.js","sourceRoot":"","sources":["../../src/accounts/LendingMarket.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import { PublicKey, Connection } from "@solana/web3.js";
4
+ import BN from "bn.js";
5
+ import * as types from "../types";
6
+ export interface ObligationFields {
7
+ tag: BN;
8
+ lastUpdate: types.LastUpdateFields;
9
+ lendingMarket: PublicKey;
10
+ owner: PublicKey;
11
+ deposits: Array<types.ObligationCollateralFields>;
12
+ lowestReserveDepositLiquidationLtv: BN;
13
+ depositedValueSf: BN;
14
+ borrows: Array<types.ObligationLiquidityFields>;
15
+ borrowFactorAdjustedDebtValueSf: BN;
16
+ borrowedAssetsMarketValueSf: BN;
17
+ allowedBorrowValueSf: BN;
18
+ unhealthyBorrowValueSf: BN;
19
+ depositsAssetTiers: Array<number>;
20
+ borrowsAssetTiers: Array<number>;
21
+ elevationGroup: number;
22
+ numOfObsoleteReserves: number;
23
+ hasDebt: number;
24
+ referrer: PublicKey;
25
+ borrowingDisabled: number;
26
+ reserved: Array<number>;
27
+ highestBorrowFactorPct: BN;
28
+ padding3: Array<BN>;
29
+ }
30
+ export interface ObligationJSON {
31
+ tag: string;
32
+ lastUpdate: types.LastUpdateJSON;
33
+ lendingMarket: string;
34
+ owner: string;
35
+ deposits: Array<types.ObligationCollateralJSON>;
36
+ lowestReserveDepositLiquidationLtv: string;
37
+ depositedValueSf: string;
38
+ borrows: Array<types.ObligationLiquidityJSON>;
39
+ borrowFactorAdjustedDebtValueSf: string;
40
+ borrowedAssetsMarketValueSf: string;
41
+ allowedBorrowValueSf: string;
42
+ unhealthyBorrowValueSf: string;
43
+ depositsAssetTiers: Array<number>;
44
+ borrowsAssetTiers: Array<number>;
45
+ elevationGroup: number;
46
+ numOfObsoleteReserves: number;
47
+ hasDebt: number;
48
+ referrer: string;
49
+ borrowingDisabled: number;
50
+ reserved: Array<number>;
51
+ highestBorrowFactorPct: string;
52
+ padding3: Array<string>;
53
+ }
54
+ export declare class Obligation {
55
+ readonly tag: BN;
56
+ readonly lastUpdate: types.LastUpdate;
57
+ readonly lendingMarket: PublicKey;
58
+ readonly owner: PublicKey;
59
+ readonly deposits: Array<types.ObligationCollateral>;
60
+ readonly lowestReserveDepositLiquidationLtv: BN;
61
+ readonly depositedValueSf: BN;
62
+ readonly borrows: Array<types.ObligationLiquidity>;
63
+ readonly borrowFactorAdjustedDebtValueSf: BN;
64
+ readonly borrowedAssetsMarketValueSf: BN;
65
+ readonly allowedBorrowValueSf: BN;
66
+ readonly unhealthyBorrowValueSf: BN;
67
+ readonly depositsAssetTiers: Array<number>;
68
+ readonly borrowsAssetTiers: Array<number>;
69
+ readonly elevationGroup: number;
70
+ readonly numOfObsoleteReserves: number;
71
+ readonly hasDebt: number;
72
+ readonly referrer: PublicKey;
73
+ readonly borrowingDisabled: number;
74
+ readonly reserved: Array<number>;
75
+ readonly highestBorrowFactorPct: BN;
76
+ readonly padding3: Array<BN>;
77
+ static readonly discriminator: Buffer;
78
+ static readonly layout: any;
79
+ constructor(fields: ObligationFields);
80
+ static fetch(c: Connection, address: PublicKey, programId?: PublicKey): Promise<Obligation | null>;
81
+ static fetchMultiple(c: Connection, addresses: PublicKey[], programId?: PublicKey): Promise<Array<Obligation | null>>;
82
+ static decode(data: Buffer): Obligation;
83
+ toJSON(): ObligationJSON;
84
+ static fromJSON(obj: ObligationJSON): Obligation;
85
+ }
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.Obligation = void 0;
30
+ const web3_js_1 = require("@solana/web3.js");
31
+ const bn_js_1 = __importDefault(require("bn.js")); // eslint-disable-line @typescript-eslint/no-unused-vars
32
+ const borsh = __importStar(require("@coral-xyz/borsh")); // eslint-disable-line @typescript-eslint/no-unused-vars
33
+ const types = __importStar(require("../types")); // eslint-disable-line @typescript-eslint/no-unused-vars
34
+ const programId_1 = require("../programId");
35
+ class Obligation {
36
+ tag;
37
+ lastUpdate;
38
+ lendingMarket;
39
+ owner;
40
+ deposits;
41
+ lowestReserveDepositLiquidationLtv;
42
+ depositedValueSf;
43
+ borrows;
44
+ borrowFactorAdjustedDebtValueSf;
45
+ borrowedAssetsMarketValueSf;
46
+ allowedBorrowValueSf;
47
+ unhealthyBorrowValueSf;
48
+ depositsAssetTiers;
49
+ borrowsAssetTiers;
50
+ elevationGroup;
51
+ numOfObsoleteReserves;
52
+ hasDebt;
53
+ referrer;
54
+ borrowingDisabled;
55
+ reserved;
56
+ highestBorrowFactorPct;
57
+ padding3;
58
+ static discriminator = Buffer.from([
59
+ 168, 206, 141, 106, 88, 76, 172, 167,
60
+ ]);
61
+ static layout = borsh.struct([
62
+ borsh.u64("tag"),
63
+ types.LastUpdate.layout("lastUpdate"),
64
+ borsh.publicKey("lendingMarket"),
65
+ borsh.publicKey("owner"),
66
+ borsh.array(types.ObligationCollateral.layout(), 8, "deposits"),
67
+ borsh.u64("lowestReserveDepositLiquidationLtv"),
68
+ borsh.u128("depositedValueSf"),
69
+ borsh.array(types.ObligationLiquidity.layout(), 5, "borrows"),
70
+ borsh.u128("borrowFactorAdjustedDebtValueSf"),
71
+ borsh.u128("borrowedAssetsMarketValueSf"),
72
+ borsh.u128("allowedBorrowValueSf"),
73
+ borsh.u128("unhealthyBorrowValueSf"),
74
+ borsh.array(borsh.u8(), 8, "depositsAssetTiers"),
75
+ borsh.array(borsh.u8(), 5, "borrowsAssetTiers"),
76
+ borsh.u8("elevationGroup"),
77
+ borsh.u8("numOfObsoleteReserves"),
78
+ borsh.u8("hasDebt"),
79
+ borsh.publicKey("referrer"),
80
+ borsh.u8("borrowingDisabled"),
81
+ borsh.array(borsh.u8(), 7, "reserved"),
82
+ borsh.u64("highestBorrowFactorPct"),
83
+ borsh.array(borsh.u64(), 126, "padding3"),
84
+ ]);
85
+ constructor(fields) {
86
+ this.tag = fields.tag;
87
+ this.lastUpdate = new types.LastUpdate({ ...fields.lastUpdate });
88
+ this.lendingMarket = fields.lendingMarket;
89
+ this.owner = fields.owner;
90
+ this.deposits = fields.deposits.map((item) => new types.ObligationCollateral({ ...item }));
91
+ this.lowestReserveDepositLiquidationLtv =
92
+ fields.lowestReserveDepositLiquidationLtv;
93
+ this.depositedValueSf = fields.depositedValueSf;
94
+ this.borrows = fields.borrows.map((item) => new types.ObligationLiquidity({ ...item }));
95
+ this.borrowFactorAdjustedDebtValueSf =
96
+ fields.borrowFactorAdjustedDebtValueSf;
97
+ this.borrowedAssetsMarketValueSf = fields.borrowedAssetsMarketValueSf;
98
+ this.allowedBorrowValueSf = fields.allowedBorrowValueSf;
99
+ this.unhealthyBorrowValueSf = fields.unhealthyBorrowValueSf;
100
+ this.depositsAssetTiers = fields.depositsAssetTiers;
101
+ this.borrowsAssetTiers = fields.borrowsAssetTiers;
102
+ this.elevationGroup = fields.elevationGroup;
103
+ this.numOfObsoleteReserves = fields.numOfObsoleteReserves;
104
+ this.hasDebt = fields.hasDebt;
105
+ this.referrer = fields.referrer;
106
+ this.borrowingDisabled = fields.borrowingDisabled;
107
+ this.reserved = fields.reserved;
108
+ this.highestBorrowFactorPct = fields.highestBorrowFactorPct;
109
+ this.padding3 = fields.padding3;
110
+ }
111
+ static async fetch(c, address, programId = programId_1.PROGRAM_ID) {
112
+ const info = await c.getAccountInfo(address);
113
+ if (info === null) {
114
+ return null;
115
+ }
116
+ if (!info.owner.equals(programId)) {
117
+ throw new Error("account doesn't belong to this program");
118
+ }
119
+ return this.decode(info.data);
120
+ }
121
+ static async fetchMultiple(c, addresses, programId = programId_1.PROGRAM_ID) {
122
+ const infos = await c.getMultipleAccountsInfo(addresses);
123
+ return infos.map((info) => {
124
+ if (info === null) {
125
+ return null;
126
+ }
127
+ if (!info.owner.equals(programId)) {
128
+ throw new Error("account doesn't belong to this program");
129
+ }
130
+ return this.decode(info.data);
131
+ });
132
+ }
133
+ static decode(data) {
134
+ if (!data.slice(0, 8).equals(Obligation.discriminator)) {
135
+ throw new Error("invalid account discriminator");
136
+ }
137
+ const dec = Obligation.layout.decode(data.slice(8));
138
+ return new Obligation({
139
+ tag: dec.tag,
140
+ lastUpdate: types.LastUpdate.fromDecoded(dec.lastUpdate),
141
+ lendingMarket: dec.lendingMarket,
142
+ owner: dec.owner,
143
+ deposits: dec.deposits.map((item /* eslint-disable-line @typescript-eslint/no-explicit-any */) => types.ObligationCollateral.fromDecoded(item)),
144
+ lowestReserveDepositLiquidationLtv: dec.lowestReserveDepositLiquidationLtv,
145
+ depositedValueSf: dec.depositedValueSf,
146
+ borrows: dec.borrows.map((item /* eslint-disable-line @typescript-eslint/no-explicit-any */) => types.ObligationLiquidity.fromDecoded(item)),
147
+ borrowFactorAdjustedDebtValueSf: dec.borrowFactorAdjustedDebtValueSf,
148
+ borrowedAssetsMarketValueSf: dec.borrowedAssetsMarketValueSf,
149
+ allowedBorrowValueSf: dec.allowedBorrowValueSf,
150
+ unhealthyBorrowValueSf: dec.unhealthyBorrowValueSf,
151
+ depositsAssetTiers: dec.depositsAssetTiers,
152
+ borrowsAssetTiers: dec.borrowsAssetTiers,
153
+ elevationGroup: dec.elevationGroup,
154
+ numOfObsoleteReserves: dec.numOfObsoleteReserves,
155
+ hasDebt: dec.hasDebt,
156
+ referrer: dec.referrer,
157
+ borrowingDisabled: dec.borrowingDisabled,
158
+ reserved: dec.reserved,
159
+ highestBorrowFactorPct: dec.highestBorrowFactorPct,
160
+ padding3: dec.padding3,
161
+ });
162
+ }
163
+ toJSON() {
164
+ return {
165
+ tag: this.tag.toString(),
166
+ lastUpdate: this.lastUpdate.toJSON(),
167
+ lendingMarket: this.lendingMarket.toString(),
168
+ owner: this.owner.toString(),
169
+ deposits: this.deposits.map((item) => item.toJSON()),
170
+ lowestReserveDepositLiquidationLtv: this.lowestReserveDepositLiquidationLtv.toString(),
171
+ depositedValueSf: this.depositedValueSf.toString(),
172
+ borrows: this.borrows.map((item) => item.toJSON()),
173
+ borrowFactorAdjustedDebtValueSf: this.borrowFactorAdjustedDebtValueSf.toString(),
174
+ borrowedAssetsMarketValueSf: this.borrowedAssetsMarketValueSf.toString(),
175
+ allowedBorrowValueSf: this.allowedBorrowValueSf.toString(),
176
+ unhealthyBorrowValueSf: this.unhealthyBorrowValueSf.toString(),
177
+ depositsAssetTiers: this.depositsAssetTiers,
178
+ borrowsAssetTiers: this.borrowsAssetTiers,
179
+ elevationGroup: this.elevationGroup,
180
+ numOfObsoleteReserves: this.numOfObsoleteReserves,
181
+ hasDebt: this.hasDebt,
182
+ referrer: this.referrer.toString(),
183
+ borrowingDisabled: this.borrowingDisabled,
184
+ reserved: this.reserved,
185
+ highestBorrowFactorPct: this.highestBorrowFactorPct.toString(),
186
+ padding3: this.padding3.map((item) => item.toString()),
187
+ };
188
+ }
189
+ static fromJSON(obj) {
190
+ return new Obligation({
191
+ tag: new bn_js_1.default(obj.tag),
192
+ lastUpdate: types.LastUpdate.fromJSON(obj.lastUpdate),
193
+ lendingMarket: new web3_js_1.PublicKey(obj.lendingMarket),
194
+ owner: new web3_js_1.PublicKey(obj.owner),
195
+ deposits: obj.deposits.map((item) => types.ObligationCollateral.fromJSON(item)),
196
+ lowestReserveDepositLiquidationLtv: new bn_js_1.default(obj.lowestReserveDepositLiquidationLtv),
197
+ depositedValueSf: new bn_js_1.default(obj.depositedValueSf),
198
+ borrows: obj.borrows.map((item) => types.ObligationLiquidity.fromJSON(item)),
199
+ borrowFactorAdjustedDebtValueSf: new bn_js_1.default(obj.borrowFactorAdjustedDebtValueSf),
200
+ borrowedAssetsMarketValueSf: new bn_js_1.default(obj.borrowedAssetsMarketValueSf),
201
+ allowedBorrowValueSf: new bn_js_1.default(obj.allowedBorrowValueSf),
202
+ unhealthyBorrowValueSf: new bn_js_1.default(obj.unhealthyBorrowValueSf),
203
+ depositsAssetTiers: obj.depositsAssetTiers,
204
+ borrowsAssetTiers: obj.borrowsAssetTiers,
205
+ elevationGroup: obj.elevationGroup,
206
+ numOfObsoleteReserves: obj.numOfObsoleteReserves,
207
+ hasDebt: obj.hasDebt,
208
+ referrer: new web3_js_1.PublicKey(obj.referrer),
209
+ borrowingDisabled: obj.borrowingDisabled,
210
+ reserved: obj.reserved,
211
+ highestBorrowFactorPct: new bn_js_1.default(obj.highestBorrowFactorPct),
212
+ padding3: obj.padding3.map((item) => new bn_js_1.default(item)),
213
+ });
214
+ }
215
+ }
216
+ exports.Obligation = Obligation;
217
+ //# sourceMappingURL=Obligation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Obligation.js","sourceRoot":"","sources":["../../src/accounts/Obligation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAuD;AACvD,kDAAsB,CAAC,wDAAwD;AAC/E,wDAAyC,CAAC,wDAAwD;AAClG,gDAAiC,CAAC,wDAAwD;AAC1F,4CAAyC;AAoDzC,MAAa,UAAU;IACZ,GAAG,CAAI;IACP,UAAU,CAAkB;IAC5B,aAAa,CAAW;IACxB,KAAK,CAAW;IAChB,QAAQ,CAAmC;IAC3C,kCAAkC,CAAI;IACtC,gBAAgB,CAAI;IACpB,OAAO,CAAkC;IACzC,+BAA+B,CAAI;IACnC,2BAA2B,CAAI;IAC/B,oBAAoB,CAAI;IACxB,sBAAsB,CAAI;IAC1B,kBAAkB,CAAe;IACjC,iBAAiB,CAAe;IAChC,cAAc,CAAQ;IACtB,qBAAqB,CAAQ;IAC7B,OAAO,CAAQ;IACf,QAAQ,CAAW;IACnB,iBAAiB,CAAQ;IACzB,QAAQ,CAAe;IACvB,sBAAsB,CAAI;IAC1B,QAAQ,CAAW;IAE5B,MAAM,CAAU,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC;QAC1C,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG;KACrC,CAAC,CAAA;IAEF,MAAM,CAAU,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QACpC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;QAChB,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC;QACrC,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC;QACxB,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC;QAC/D,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC;QAC9B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC;QAC7C,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC;QACpC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,oBAAoB,CAAC;QAChD,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,mBAAmB,CAAC;QAC/C,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC;QACjC,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC;QACnB,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC;QAC3B,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAAC;QAC7B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC;QACtC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC;QACnC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC;KAC1C,CAAC,CAAA;IAEF,YAAY,MAAwB;QAClC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,CAAA;QAChE,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAA;QACzC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QACzB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CACjC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CACtD,CAAA;QACD,IAAI,CAAC,kCAAkC;YACrC,MAAM,CAAC,kCAAkC,CAAA;QAC3C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAA;QAC/C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAC/B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CACrD,CAAA;QACD,IAAI,CAAC,+BAA+B;YAClC,MAAM,CAAC,+BAA+B,CAAA;QACxC,IAAI,CAAC,2BAA2B,GAAG,MAAM,CAAC,2BAA2B,CAAA;QACrE,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAA;QACvD,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAA;QAC3D,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,kBAAkB,CAAA;QACnD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAA;QACjD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;QAC3C,IAAI,CAAC,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAA;QACzD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;QAC7B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC/B,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAA;QACjD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QAC/B,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAA;QAC3D,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;IACjC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAChB,CAAa,EACb,OAAkB,EAClB,YAAuB,sBAAU;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;QAE5C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC3D,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,aAAa,CACxB,CAAa,EACb,SAAsB,EACtB,YAAuB,sBAAU;QAEjC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAA;QAExD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACxB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;YAC3D,CAAC;YAED,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,IAAY;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;QAClD,CAAC;QAED,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAEnD,OAAO,IAAI,UAAU,CAAC;YACpB,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;YACxD,aAAa,EAAE,GAAG,CAAC,aAAa;YAChC,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CACxB,CACE,IAAS,CAAC,4DAA4D,EACtE,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,CAClD;YACD,kCAAkC,EAChC,GAAG,CAAC,kCAAkC;YACxC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;YACtC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CACtB,CACE,IAAS,CAAC,4DAA4D,EACtE,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,WAAW,CAAC,IAAI,CAAC,CACjD;YACD,+BAA+B,EAAE,GAAG,CAAC,+BAA+B;YACpE,2BAA2B,EAAE,GAAG,CAAC,2BAA2B;YAC5D,oBAAoB,EAAE,GAAG,CAAC,oBAAoB;YAC9C,sBAAsB,EAAE,GAAG,CAAC,sBAAsB;YAClD,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;YAC1C,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;YAChD,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,sBAAsB,EAAE,GAAG,CAAC,sBAAsB;YAClD,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM;QACJ,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;YACxB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YACpC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;YAC5C,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACpD,kCAAkC,EAChC,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE;YACpD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE;YAClD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClD,+BAA+B,EAC7B,IAAI,CAAC,+BAA+B,CAAC,QAAQ,EAAE;YACjD,2BAA2B,EAAE,IAAI,CAAC,2BAA2B,CAAC,QAAQ,EAAE;YACxE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE;YAC1D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE;YAC9D,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;YACjD,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAClC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE;YAC9D,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;SACvD,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,GAAmB;QACjC,OAAO,IAAI,UAAU,CAAC;YACpB,GAAG,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,GAAG,CAAC;YACpB,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;YACrD,aAAa,EAAE,IAAI,mBAAS,CAAC,GAAG,CAAC,aAAa,CAAC;YAC/C,KAAK,EAAE,IAAI,mBAAS,CAAC,GAAG,CAAC,KAAK,CAAC;YAC/B,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClC,KAAK,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC1C;YACD,kCAAkC,EAAE,IAAI,eAAE,CACxC,GAAG,CAAC,kCAAkC,CACvC;YACD,gBAAgB,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC;YAC9C,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAChC,KAAK,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACzC;YACD,+BAA+B,EAAE,IAAI,eAAE,CACrC,GAAG,CAAC,+BAA+B,CACpC;YACD,2BAA2B,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,2BAA2B,CAAC;YACpE,oBAAoB,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACtD,sBAAsB,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC;YAC1D,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;YAC1C,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;YAChD,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,QAAQ,EAAE,IAAI,mBAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;YACrC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,sBAAsB,EAAE,IAAI,eAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC;YAC1D,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,eAAE,CAAC,IAAI,CAAC,CAAC;SACnD,CAAC,CAAA;IACJ,CAAC;;AAhOH,gCAiOC"}