@venusprotocol/venus-protocol 3.0.0-dev.13 → 3.0.0-dev.14

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 (201) hide show
  1. package/README.md +46 -139
  2. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +4 -0
  3. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.json +183 -0
  4. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
  5. package/artifacts/@openzeppelin/contracts/access/Ownable2Step.sol/Ownable2Step.dbg.json +1 -1
  6. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  7. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.dbg.json +4 -0
  8. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/{draft-IERC20Permit.sol → IERC20Permit.sol}/IERC20Permit.json +1 -1
  9. package/artifacts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  10. package/artifacts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.json +2 -2
  11. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  12. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.json +2 -2
  13. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  14. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +1 -1
  15. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  16. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  17. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +1 -1
  18. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  19. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol/IERC20MetadataUpgradeable.dbg.json +4 -0
  20. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol/IERC20MetadataUpgradeable.json +233 -0
  21. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +4 -0
  22. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/{draft-IERC20PermitUpgradeable.sol → IERC20PermitUpgradeable.sol}/IERC20PermitUpgradeable.json +1 -1
  23. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +1 -1
  24. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.json +2 -2
  25. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  26. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +2 -2
  27. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  28. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.dbg.json +4 -0
  29. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.json +181 -0
  30. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.dbg.json +4 -0
  31. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.json +282 -0
  32. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.dbg.json +4 -0
  33. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.json +40 -0
  34. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.dbg.json +4 -0
  35. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.json +30 -0
  36. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.dbg.json +4 -0
  37. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.json +75 -0
  38. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.dbg.json +4 -0
  39. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.json +49 -0
  40. package/artifacts/build-info/ace314491952b59855cb85d2b2f6e8f3.json +1 -0
  41. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/IComptroller.dbg.json +1 -1
  42. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/IPriceOracle.dbg.json +1 -1
  43. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/IVToken.dbg.json +1 -1
  44. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate.dbg.json +1 -1
  45. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate.json +2 -2
  46. package/artifacts/contracts/Liquidator/Interfaces.sol/IComptroller.dbg.json +1 -1
  47. package/artifacts/contracts/Liquidator/Interfaces.sol/IVAIController.dbg.json +1 -1
  48. package/artifacts/contracts/Liquidator/Interfaces.sol/IVBNB.dbg.json +1 -1
  49. package/artifacts/contracts/Liquidator/Interfaces.sol/IVBep20.dbg.json +1 -1
  50. package/artifacts/contracts/Liquidator/Interfaces.sol/IVToken.dbg.json +1 -1
  51. package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.dbg.json +1 -1
  52. package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.json +2 -2
  53. package/artifacts/contracts/PegStability/IVAI.sol/IVAI.dbg.json +4 -0
  54. package/artifacts/contracts/PegStability/IVAI.sol/IVAI.json +95 -0
  55. package/artifacts/contracts/PegStability/PegStability.sol/PegStability.dbg.json +4 -0
  56. package/artifacts/contracts/PegStability/PegStability.sol/PegStability.json +787 -0
  57. package/artifacts/contracts/Swap/IRouterHelper.sol/IRouterHelper.dbg.json +1 -1
  58. package/artifacts/contracts/Swap/RouterHelper.sol/RouterHelper.dbg.json +1 -1
  59. package/artifacts/contracts/Swap/SwapRouter.sol/SwapRouter.dbg.json +1 -1
  60. package/artifacts/contracts/Swap/SwapRouter.sol/SwapRouter.json +2 -2
  61. package/artifacts/contracts/Swap/interfaces/IPancakePair.sol/IPancakePair.dbg.json +1 -1
  62. package/artifacts/contracts/Swap/interfaces/IPancakeSwapV2Factory.sol/IPancakeSwapV2Factory.dbg.json +1 -1
  63. package/artifacts/contracts/Swap/interfaces/IPancakeSwapV2Router.sol/IPancakeSwapV2Router.dbg.json +1 -1
  64. package/artifacts/contracts/Swap/interfaces/IVBNB.sol/IVBNB.dbg.json +1 -1
  65. package/artifacts/contracts/Swap/interfaces/IVtoken.sol/IVToken.dbg.json +1 -1
  66. package/artifacts/contracts/Swap/interfaces/IWBNB.sol/IWBNB.dbg.json +1 -1
  67. package/artifacts/contracts/Swap/interfaces/InterfaceComptroller.sol/InterfaceComptroller.dbg.json +1 -1
  68. package/artifacts/contracts/Swap/lib/PancakeLibrary.sol/PancakeLibrary.dbg.json +1 -1
  69. package/artifacts/contracts/Swap/lib/TransferHelper.sol/TransferHelper.dbg.json +1 -1
  70. package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.dbg.json +1 -1
  71. package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.json +2 -2
  72. package/contracts/PegStability/IVAI.sol +12 -0
  73. package/contracts/PegStability/PegStability.sol +500 -0
  74. package/deployments/bscmainnet/DefaultProxyAdmin.json +257 -0
  75. package/deployments/bscmainnet/PegStability_USDT.json +945 -0
  76. package/deployments/bscmainnet/PegStability_USDT_Implementation.json +1076 -0
  77. package/deployments/bscmainnet/PegStability_USDT_Proxy.json +267 -0
  78. package/deployments/bscmainnet/solcInputs/0e89febeebc7444140de8e67c9067d2c.json +78 -0
  79. package/deployments/bscmainnet/solcInputs/822f68e7114df9df2dc3cc4555bcf616.json +132 -0
  80. package/deployments/bsctestnet/.migrations.json +3 -0
  81. package/deployments/bsctestnet/DefaultProxyAdmin.json +257 -0
  82. package/deployments/bsctestnet/PegStability_USDT.json +945 -0
  83. package/deployments/bsctestnet/PegStability_USDT_Implementation.json +1076 -0
  84. package/deployments/bsctestnet/PegStability_USDT_Proxy.json +267 -0
  85. package/deployments/bsctestnet/solcInputs/0e89febeebc7444140de8e67c9067d2c.json +78 -0
  86. package/deployments/bsctestnet/solcInputs/6f56db373f5e9158556be1af9ccf91fb.json +132 -0
  87. package/deployments/bsctestnet/solcInputs/70d128da5db4d0b45c404d3f3fe2c806.json +69 -0
  88. package/deployments/bsctestnet/solcInputs/76ea5ea1fe9239cc3ffbe46145aeead0.json +69 -0
  89. package/dist/deploy/006-deploy-psm.d.ts +3 -0
  90. package/dist/deploy/006-deploy-psm.js +65 -0
  91. package/dist/deploy/006-update-psm.d.ts +3 -0
  92. package/dist/deploy/006-update-psm.js +29 -0
  93. package/dist/hardhat.config.js +2 -2
  94. package/dist/typechain/@openzeppelin/contracts/access/IAccessControl.d.ts +145 -0
  95. package/dist/typechain/@openzeppelin/contracts/access/IAccessControl.js +3 -0
  96. package/dist/typechain/@openzeppelin/contracts/access/index.d.ts +1 -0
  97. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/{draft-IERC20Permit.sol/IERC20Permit.d.ts → IERC20Permit.d.ts} +1 -1
  98. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.js +3 -0
  99. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -2
  100. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/index.js +0 -1
  101. package/dist/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.d.ts +166 -0
  102. package/dist/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/{draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.d.ts → IERC20PermitUpgradeable.d.ts} +1 -1
  103. package/dist/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.d.ts +2 -2
  104. package/dist/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.js +0 -1
  105. package/dist/typechain/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.d.ts +172 -0
  106. package/dist/typechain/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.js +3 -0
  107. package/dist/typechain/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.d.ts +205 -0
  108. package/dist/typechain/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.js +3 -0
  109. package/dist/typechain/@venusprotocol/governance-contracts/contracts/Governance/index.d.ts +2 -0
  110. package/dist/typechain/@venusprotocol/index.d.ts +2 -0
  111. package/dist/typechain/@venusprotocol/oracle/contracts/index.d.ts +2 -0
  112. package/dist/typechain/@venusprotocol/oracle/contracts/index.js +3 -0
  113. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.d.ts +46 -0
  114. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.js +3 -0
  115. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.d.ts +42 -0
  116. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.js +3 -0
  117. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.d.ts +82 -0
  118. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.js +3 -0
  119. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.d.ts +58 -0
  120. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.js +3 -0
  121. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/index.d.ts +4 -0
  122. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/index.d.ts +2 -0
  123. package/dist/typechain/@venusprotocol/oracle/contracts/interfaces/index.js +3 -0
  124. package/dist/typechain/@venusprotocol/oracle/index.d.ts +2 -0
  125. package/dist/typechain/@venusprotocol/oracle/index.js +3 -0
  126. package/dist/typechain/contracts/PegStability/IVAI.d.ts +102 -0
  127. package/dist/typechain/contracts/PegStability/IVAI.js +3 -0
  128. package/dist/typechain/contracts/PegStability/PegStability.d.ts +564 -0
  129. package/dist/typechain/contracts/PegStability/PegStability.js +3 -0
  130. package/dist/typechain/contracts/PegStability/index.d.ts +2 -0
  131. package/dist/typechain/contracts/index.d.ts +2 -0
  132. package/dist/typechain/factories/@openzeppelin/contracts/access/IAccessControl__factory.d.ts +142 -0
  133. package/dist/typechain/factories/@openzeppelin/contracts/access/IAccessControl__factory.js +189 -0
  134. package/dist/typechain/factories/@openzeppelin/contracts/access/index.d.ts +1 -0
  135. package/dist/typechain/factories/@openzeppelin/contracts/access/index.js +3 -1
  136. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/{draft-IERC20Permit.sol/IERC20Permit__factory.d.ts → IERC20Permit__factory.d.ts} +1 -1
  137. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -1
  138. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/index.js +3 -25
  139. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.d.ts +178 -0
  140. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable__factory.js +239 -0
  141. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/{draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable__factory.d.ts → IERC20PermitUpgradeable__factory.d.ts} +1 -1
  142. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.d.ts +2 -1
  143. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/index.js +5 -25
  144. package/dist/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8__factory.d.ts +141 -0
  145. package/dist/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8__factory.js +187 -0
  146. package/dist/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8__factory.d.ts +218 -0
  147. package/dist/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8__factory.js +288 -0
  148. package/dist/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/index.d.ts +2 -0
  149. package/dist/typechain/factories/@venusprotocol/governance-contracts/contracts/Governance/index.js +5 -1
  150. package/dist/typechain/factories/@venusprotocol/index.d.ts +1 -0
  151. package/dist/typechain/factories/@venusprotocol/index.js +2 -1
  152. package/dist/typechain/factories/@venusprotocol/oracle/contracts/index.d.ts +1 -0
  153. package/dist/typechain/factories/@venusprotocol/oracle/contracts/index.js +30 -0
  154. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface__factory.d.ts +30 -0
  155. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface__factory.js +46 -0
  156. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface__factory.d.ts +22 -0
  157. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface__factory.js +36 -0
  158. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface__factory.d.ts +56 -0
  159. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface__factory.js +81 -0
  160. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface__factory.d.ts +36 -0
  161. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface__factory.js +55 -0
  162. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/index.d.ts +4 -0
  163. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/index.js +14 -0
  164. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/index.d.ts +1 -0
  165. package/dist/typechain/factories/@venusprotocol/oracle/contracts/interfaces/index.js +30 -0
  166. package/dist/typechain/factories/@venusprotocol/oracle/index.d.ts +1 -0
  167. package/dist/typechain/factories/@venusprotocol/oracle/index.js +30 -0
  168. package/dist/typechain/factories/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate__factory.d.ts +1 -1
  169. package/dist/typechain/factories/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate__factory.js +1 -1
  170. package/dist/typechain/factories/contracts/Liquidator/Liquidator__factory.d.ts +1 -1
  171. package/dist/typechain/factories/contracts/Liquidator/Liquidator__factory.js +1 -1
  172. package/dist/typechain/factories/contracts/PegStability/IVAI__factory.d.ts +72 -0
  173. package/dist/typechain/factories/contracts/PegStability/IVAI__factory.js +101 -0
  174. package/dist/typechain/factories/contracts/PegStability/PegStability__factory.d.ts +625 -0
  175. package/dist/typechain/factories/contracts/PegStability/PegStability__factory.js +816 -0
  176. package/dist/typechain/factories/contracts/PegStability/index.d.ts +2 -0
  177. package/dist/typechain/factories/contracts/PegStability/index.js +10 -0
  178. package/dist/typechain/factories/contracts/Swap/SwapRouter__factory.d.ts +1 -1
  179. package/dist/typechain/factories/contracts/Swap/SwapRouter__factory.js +1 -1
  180. package/dist/typechain/factories/contracts/index.d.ts +1 -0
  181. package/dist/typechain/factories/contracts/index.js +2 -1
  182. package/dist/typechain/factories/contracts/test/LiquidatorHarness__factory.d.ts +1 -1
  183. package/dist/typechain/factories/contracts/test/LiquidatorHarness__factory.js +1 -1
  184. package/dist/typechain/index.d.ts +24 -4
  185. package/dist/typechain/index.js +27 -7
  186. package/package.json +2 -1
  187. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.dbg.json +0 -4
  188. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +0 -4
  189. package/artifacts/build-info/7ba4636f17a9306e510e09b5ee7b87c3.json +0 -1
  190. package/dist/typechain/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.d.ts +0 -1
  191. package/dist/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/index.d.ts +0 -1
  192. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.d.ts +0 -1
  193. package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/index.js +0 -8
  194. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/index.d.ts +0 -1
  195. package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol/index.js +0 -8
  196. /package/dist/typechain/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/{draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.js → IERC20MetadataUpgradeable.js} +0 -0
  197. /package/dist/typechain/@openzeppelin/{contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.js → contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.js} +0 -0
  198. /package/dist/typechain/{@openzeppelin/contracts-upgradeable/token/ERC20/extensions/draft-IERC20PermitUpgradeable.sol → @venusprotocol/oracle/contracts/interfaces/OracleInterface.sol}/index.js +0 -0
  199. /package/dist/typechain/{@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol → contracts/PegStability}/index.js +0 -0
  200. /package/dist/typechain/factories/@openzeppelin/contracts/token/ERC20/extensions/{draft-IERC20Permit.sol/IERC20Permit__factory.js → IERC20Permit__factory.js} +0 -0
  201. /package/dist/typechain/factories/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/{draft-IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable__factory.js → IERC20PermitUpgradeable__factory.js} +0 -0
@@ -0,0 +1,816 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.PegStability__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ inputs: [
9
+ {
10
+ internalType: "address",
11
+ name: "stableTokenAddress_",
12
+ type: "address",
13
+ },
14
+ {
15
+ internalType: "address",
16
+ name: "vaiAddress_",
17
+ type: "address",
18
+ },
19
+ ],
20
+ stateMutability: "nonpayable",
21
+ type: "constructor",
22
+ },
23
+ {
24
+ inputs: [],
25
+ name: "AlreadyPaused",
26
+ type: "error",
27
+ },
28
+ {
29
+ inputs: [],
30
+ name: "AmountTooSmall",
31
+ type: "error",
32
+ },
33
+ {
34
+ inputs: [],
35
+ name: "InvalidFee",
36
+ type: "error",
37
+ },
38
+ {
39
+ inputs: [],
40
+ name: "NotEnoughVAI",
41
+ type: "error",
42
+ },
43
+ {
44
+ inputs: [],
45
+ name: "NotPaused",
46
+ type: "error",
47
+ },
48
+ {
49
+ inputs: [],
50
+ name: "Paused",
51
+ type: "error",
52
+ },
53
+ {
54
+ inputs: [],
55
+ name: "TooManyDecimals",
56
+ type: "error",
57
+ },
58
+ {
59
+ inputs: [
60
+ {
61
+ internalType: "address",
62
+ name: "sender",
63
+ type: "address",
64
+ },
65
+ {
66
+ internalType: "address",
67
+ name: "calledContract",
68
+ type: "address",
69
+ },
70
+ {
71
+ internalType: "string",
72
+ name: "methodSignature",
73
+ type: "string",
74
+ },
75
+ ],
76
+ name: "Unauthorized",
77
+ type: "error",
78
+ },
79
+ {
80
+ inputs: [],
81
+ name: "VAIMintCapReached",
82
+ type: "error",
83
+ },
84
+ {
85
+ inputs: [],
86
+ name: "VAIMintedUnderflow",
87
+ type: "error",
88
+ },
89
+ {
90
+ inputs: [],
91
+ name: "VAITransferFail",
92
+ type: "error",
93
+ },
94
+ {
95
+ inputs: [],
96
+ name: "ZeroAddress",
97
+ type: "error",
98
+ },
99
+ {
100
+ inputs: [],
101
+ name: "ZeroAmount",
102
+ type: "error",
103
+ },
104
+ {
105
+ anonymous: false,
106
+ inputs: [
107
+ {
108
+ indexed: false,
109
+ internalType: "uint256",
110
+ name: "oldFeeIn",
111
+ type: "uint256",
112
+ },
113
+ {
114
+ indexed: false,
115
+ internalType: "uint256",
116
+ name: "newFeeIn",
117
+ type: "uint256",
118
+ },
119
+ ],
120
+ name: "FeeInChanged",
121
+ type: "event",
122
+ },
123
+ {
124
+ anonymous: false,
125
+ inputs: [
126
+ {
127
+ indexed: false,
128
+ internalType: "uint256",
129
+ name: "oldFeeOut",
130
+ type: "uint256",
131
+ },
132
+ {
133
+ indexed: false,
134
+ internalType: "uint256",
135
+ name: "newFeeOut",
136
+ type: "uint256",
137
+ },
138
+ ],
139
+ name: "FeeOutChanged",
140
+ type: "event",
141
+ },
142
+ {
143
+ anonymous: false,
144
+ inputs: [
145
+ {
146
+ indexed: false,
147
+ internalType: "uint8",
148
+ name: "version",
149
+ type: "uint8",
150
+ },
151
+ ],
152
+ name: "Initialized",
153
+ type: "event",
154
+ },
155
+ {
156
+ anonymous: false,
157
+ inputs: [
158
+ {
159
+ indexed: false,
160
+ internalType: "address",
161
+ name: "oldAccessControlManager",
162
+ type: "address",
163
+ },
164
+ {
165
+ indexed: false,
166
+ internalType: "address",
167
+ name: "newAccessControlManager",
168
+ type: "address",
169
+ },
170
+ ],
171
+ name: "NewAccessControlManager",
172
+ type: "event",
173
+ },
174
+ {
175
+ anonymous: false,
176
+ inputs: [
177
+ {
178
+ indexed: true,
179
+ internalType: "address",
180
+ name: "oldOracle",
181
+ type: "address",
182
+ },
183
+ {
184
+ indexed: true,
185
+ internalType: "address",
186
+ name: "newOracle",
187
+ type: "address",
188
+ },
189
+ ],
190
+ name: "OracleChanged",
191
+ type: "event",
192
+ },
193
+ {
194
+ anonymous: false,
195
+ inputs: [
196
+ {
197
+ indexed: true,
198
+ internalType: "address",
199
+ name: "previousOwner",
200
+ type: "address",
201
+ },
202
+ {
203
+ indexed: true,
204
+ internalType: "address",
205
+ name: "newOwner",
206
+ type: "address",
207
+ },
208
+ ],
209
+ name: "OwnershipTransferStarted",
210
+ type: "event",
211
+ },
212
+ {
213
+ anonymous: false,
214
+ inputs: [
215
+ {
216
+ indexed: true,
217
+ internalType: "address",
218
+ name: "previousOwner",
219
+ type: "address",
220
+ },
221
+ {
222
+ indexed: true,
223
+ internalType: "address",
224
+ name: "newOwner",
225
+ type: "address",
226
+ },
227
+ ],
228
+ name: "OwnershipTransferred",
229
+ type: "event",
230
+ },
231
+ {
232
+ anonymous: false,
233
+ inputs: [
234
+ {
235
+ indexed: true,
236
+ internalType: "address",
237
+ name: "admin",
238
+ type: "address",
239
+ },
240
+ ],
241
+ name: "PSMPaused",
242
+ type: "event",
243
+ },
244
+ {
245
+ anonymous: false,
246
+ inputs: [
247
+ {
248
+ indexed: true,
249
+ internalType: "address",
250
+ name: "admin",
251
+ type: "address",
252
+ },
253
+ ],
254
+ name: "PSMResumed",
255
+ type: "event",
256
+ },
257
+ {
258
+ anonymous: false,
259
+ inputs: [
260
+ {
261
+ indexed: false,
262
+ internalType: "uint256",
263
+ name: "stableIn",
264
+ type: "uint256",
265
+ },
266
+ {
267
+ indexed: false,
268
+ internalType: "uint256",
269
+ name: "vaiOut",
270
+ type: "uint256",
271
+ },
272
+ {
273
+ indexed: false,
274
+ internalType: "uint256",
275
+ name: "fee",
276
+ type: "uint256",
277
+ },
278
+ ],
279
+ name: "StableForVAISwapped",
280
+ type: "event",
281
+ },
282
+ {
283
+ anonymous: false,
284
+ inputs: [
285
+ {
286
+ indexed: false,
287
+ internalType: "uint256",
288
+ name: "vaiBurnt",
289
+ type: "uint256",
290
+ },
291
+ {
292
+ indexed: false,
293
+ internalType: "uint256",
294
+ name: "stableOut",
295
+ type: "uint256",
296
+ },
297
+ {
298
+ indexed: false,
299
+ internalType: "uint256",
300
+ name: "vaiFee",
301
+ type: "uint256",
302
+ },
303
+ ],
304
+ name: "VAIForStableSwapped",
305
+ type: "event",
306
+ },
307
+ {
308
+ anonymous: false,
309
+ inputs: [
310
+ {
311
+ indexed: false,
312
+ internalType: "uint256",
313
+ name: "oldCap",
314
+ type: "uint256",
315
+ },
316
+ {
317
+ indexed: false,
318
+ internalType: "uint256",
319
+ name: "newCap",
320
+ type: "uint256",
321
+ },
322
+ ],
323
+ name: "VAIMintCapChanged",
324
+ type: "event",
325
+ },
326
+ {
327
+ anonymous: false,
328
+ inputs: [
329
+ {
330
+ indexed: true,
331
+ internalType: "address",
332
+ name: "oldTreasury",
333
+ type: "address",
334
+ },
335
+ {
336
+ indexed: true,
337
+ internalType: "address",
338
+ name: "newTreasury",
339
+ type: "address",
340
+ },
341
+ ],
342
+ name: "VenusTreasuryChanged",
343
+ type: "event",
344
+ },
345
+ {
346
+ inputs: [],
347
+ name: "BASIS_POINTS_DIVISOR",
348
+ outputs: [
349
+ {
350
+ internalType: "uint256",
351
+ name: "",
352
+ type: "uint256",
353
+ },
354
+ ],
355
+ stateMutability: "view",
356
+ type: "function",
357
+ },
358
+ {
359
+ inputs: [],
360
+ name: "MANTISSA_ONE",
361
+ outputs: [
362
+ {
363
+ internalType: "uint256",
364
+ name: "",
365
+ type: "uint256",
366
+ },
367
+ ],
368
+ stateMutability: "view",
369
+ type: "function",
370
+ },
371
+ {
372
+ inputs: [],
373
+ name: "ONE_DOLLAR",
374
+ outputs: [
375
+ {
376
+ internalType: "uint256",
377
+ name: "",
378
+ type: "uint256",
379
+ },
380
+ ],
381
+ stateMutability: "view",
382
+ type: "function",
383
+ },
384
+ {
385
+ inputs: [],
386
+ name: "STABLE_TOKEN_ADDRESS",
387
+ outputs: [
388
+ {
389
+ internalType: "address",
390
+ name: "",
391
+ type: "address",
392
+ },
393
+ ],
394
+ stateMutability: "view",
395
+ type: "function",
396
+ },
397
+ {
398
+ inputs: [],
399
+ name: "VAI",
400
+ outputs: [
401
+ {
402
+ internalType: "contract IVAI",
403
+ name: "",
404
+ type: "address",
405
+ },
406
+ ],
407
+ stateMutability: "view",
408
+ type: "function",
409
+ },
410
+ {
411
+ inputs: [],
412
+ name: "acceptOwnership",
413
+ outputs: [],
414
+ stateMutability: "nonpayable",
415
+ type: "function",
416
+ },
417
+ {
418
+ inputs: [],
419
+ name: "accessControlManager",
420
+ outputs: [
421
+ {
422
+ internalType: "contract IAccessControlManagerV8",
423
+ name: "",
424
+ type: "address",
425
+ },
426
+ ],
427
+ stateMutability: "view",
428
+ type: "function",
429
+ },
430
+ {
431
+ inputs: [],
432
+ name: "feeIn",
433
+ outputs: [
434
+ {
435
+ internalType: "uint256",
436
+ name: "",
437
+ type: "uint256",
438
+ },
439
+ ],
440
+ stateMutability: "view",
441
+ type: "function",
442
+ },
443
+ {
444
+ inputs: [],
445
+ name: "feeOut",
446
+ outputs: [
447
+ {
448
+ internalType: "uint256",
449
+ name: "",
450
+ type: "uint256",
451
+ },
452
+ ],
453
+ stateMutability: "view",
454
+ type: "function",
455
+ },
456
+ {
457
+ inputs: [
458
+ {
459
+ internalType: "address",
460
+ name: "accessControlManager_",
461
+ type: "address",
462
+ },
463
+ {
464
+ internalType: "address",
465
+ name: "venusTreasury_",
466
+ type: "address",
467
+ },
468
+ {
469
+ internalType: "address",
470
+ name: "oracleAddress_",
471
+ type: "address",
472
+ },
473
+ {
474
+ internalType: "uint256",
475
+ name: "feeIn_",
476
+ type: "uint256",
477
+ },
478
+ {
479
+ internalType: "uint256",
480
+ name: "feeOut_",
481
+ type: "uint256",
482
+ },
483
+ {
484
+ internalType: "uint256",
485
+ name: "vaiMintCap_",
486
+ type: "uint256",
487
+ },
488
+ ],
489
+ name: "initialize",
490
+ outputs: [],
491
+ stateMutability: "nonpayable",
492
+ type: "function",
493
+ },
494
+ {
495
+ inputs: [],
496
+ name: "isPaused",
497
+ outputs: [
498
+ {
499
+ internalType: "bool",
500
+ name: "",
501
+ type: "bool",
502
+ },
503
+ ],
504
+ stateMutability: "view",
505
+ type: "function",
506
+ },
507
+ {
508
+ inputs: [],
509
+ name: "oracle",
510
+ outputs: [
511
+ {
512
+ internalType: "contract ResilientOracleInterface",
513
+ name: "",
514
+ type: "address",
515
+ },
516
+ ],
517
+ stateMutability: "view",
518
+ type: "function",
519
+ },
520
+ {
521
+ inputs: [],
522
+ name: "owner",
523
+ outputs: [
524
+ {
525
+ internalType: "address",
526
+ name: "",
527
+ type: "address",
528
+ },
529
+ ],
530
+ stateMutability: "view",
531
+ type: "function",
532
+ },
533
+ {
534
+ inputs: [],
535
+ name: "pause",
536
+ outputs: [],
537
+ stateMutability: "nonpayable",
538
+ type: "function",
539
+ },
540
+ {
541
+ inputs: [],
542
+ name: "pendingOwner",
543
+ outputs: [
544
+ {
545
+ internalType: "address",
546
+ name: "",
547
+ type: "address",
548
+ },
549
+ ],
550
+ stateMutability: "view",
551
+ type: "function",
552
+ },
553
+ {
554
+ inputs: [
555
+ {
556
+ internalType: "uint256",
557
+ name: "stableTknAmount",
558
+ type: "uint256",
559
+ },
560
+ ],
561
+ name: "previewSwapStableForVAI",
562
+ outputs: [
563
+ {
564
+ internalType: "uint256",
565
+ name: "",
566
+ type: "uint256",
567
+ },
568
+ ],
569
+ stateMutability: "view",
570
+ type: "function",
571
+ },
572
+ {
573
+ inputs: [
574
+ {
575
+ internalType: "uint256",
576
+ name: "stableTknAmount",
577
+ type: "uint256",
578
+ },
579
+ ],
580
+ name: "previewSwapVAIForStable",
581
+ outputs: [
582
+ {
583
+ internalType: "uint256",
584
+ name: "",
585
+ type: "uint256",
586
+ },
587
+ ],
588
+ stateMutability: "view",
589
+ type: "function",
590
+ },
591
+ {
592
+ inputs: [],
593
+ name: "renounceOwnership",
594
+ outputs: [],
595
+ stateMutability: "nonpayable",
596
+ type: "function",
597
+ },
598
+ {
599
+ inputs: [],
600
+ name: "resume",
601
+ outputs: [],
602
+ stateMutability: "nonpayable",
603
+ type: "function",
604
+ },
605
+ {
606
+ inputs: [
607
+ {
608
+ internalType: "address",
609
+ name: "accessControlManager_",
610
+ type: "address",
611
+ },
612
+ ],
613
+ name: "setAccessControlManager",
614
+ outputs: [],
615
+ stateMutability: "nonpayable",
616
+ type: "function",
617
+ },
618
+ {
619
+ inputs: [
620
+ {
621
+ internalType: "uint256",
622
+ name: "feeIn_",
623
+ type: "uint256",
624
+ },
625
+ ],
626
+ name: "setFeeIn",
627
+ outputs: [],
628
+ stateMutability: "nonpayable",
629
+ type: "function",
630
+ },
631
+ {
632
+ inputs: [
633
+ {
634
+ internalType: "uint256",
635
+ name: "feeOut_",
636
+ type: "uint256",
637
+ },
638
+ ],
639
+ name: "setFeeOut",
640
+ outputs: [],
641
+ stateMutability: "nonpayable",
642
+ type: "function",
643
+ },
644
+ {
645
+ inputs: [
646
+ {
647
+ internalType: "address",
648
+ name: "oracleAddress_",
649
+ type: "address",
650
+ },
651
+ ],
652
+ name: "setOracle",
653
+ outputs: [],
654
+ stateMutability: "nonpayable",
655
+ type: "function",
656
+ },
657
+ {
658
+ inputs: [
659
+ {
660
+ internalType: "uint256",
661
+ name: "vaiMintCap_",
662
+ type: "uint256",
663
+ },
664
+ ],
665
+ name: "setVAIMintCap",
666
+ outputs: [],
667
+ stateMutability: "nonpayable",
668
+ type: "function",
669
+ },
670
+ {
671
+ inputs: [
672
+ {
673
+ internalType: "address",
674
+ name: "venusTreasury_",
675
+ type: "address",
676
+ },
677
+ ],
678
+ name: "setVenusTreasury",
679
+ outputs: [],
680
+ stateMutability: "nonpayable",
681
+ type: "function",
682
+ },
683
+ {
684
+ inputs: [
685
+ {
686
+ internalType: "address",
687
+ name: "receiver",
688
+ type: "address",
689
+ },
690
+ {
691
+ internalType: "uint256",
692
+ name: "stableTknAmount",
693
+ type: "uint256",
694
+ },
695
+ ],
696
+ name: "swapStableForVAI",
697
+ outputs: [
698
+ {
699
+ internalType: "uint256",
700
+ name: "",
701
+ type: "uint256",
702
+ },
703
+ ],
704
+ stateMutability: "nonpayable",
705
+ type: "function",
706
+ },
707
+ {
708
+ inputs: [
709
+ {
710
+ internalType: "address",
711
+ name: "receiver",
712
+ type: "address",
713
+ },
714
+ {
715
+ internalType: "uint256",
716
+ name: "stableTknAmount",
717
+ type: "uint256",
718
+ },
719
+ ],
720
+ name: "swapVAIForStable",
721
+ outputs: [
722
+ {
723
+ internalType: "uint256",
724
+ name: "",
725
+ type: "uint256",
726
+ },
727
+ ],
728
+ stateMutability: "nonpayable",
729
+ type: "function",
730
+ },
731
+ {
732
+ inputs: [
733
+ {
734
+ internalType: "address",
735
+ name: "newOwner",
736
+ type: "address",
737
+ },
738
+ ],
739
+ name: "transferOwnership",
740
+ outputs: [],
741
+ stateMutability: "nonpayable",
742
+ type: "function",
743
+ },
744
+ {
745
+ inputs: [],
746
+ name: "vaiMintCap",
747
+ outputs: [
748
+ {
749
+ internalType: "uint256",
750
+ name: "",
751
+ type: "uint256",
752
+ },
753
+ ],
754
+ stateMutability: "view",
755
+ type: "function",
756
+ },
757
+ {
758
+ inputs: [],
759
+ name: "vaiMinted",
760
+ outputs: [
761
+ {
762
+ internalType: "uint256",
763
+ name: "",
764
+ type: "uint256",
765
+ },
766
+ ],
767
+ stateMutability: "view",
768
+ type: "function",
769
+ },
770
+ {
771
+ inputs: [],
772
+ name: "venusTreasury",
773
+ outputs: [
774
+ {
775
+ internalType: "address",
776
+ name: "",
777
+ type: "address",
778
+ },
779
+ ],
780
+ stateMutability: "view",
781
+ type: "function",
782
+ },
783
+ ];
784
+ const _bytecode = "0x60e06040523480156200001157600080fd5b506040516200235638038062002356833981016040819052620000349162000225565b6200003f826200011c565b6200004a816200011c565b6000826001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200008b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000b191906200025d565b60ff1690506012811115620000d9576040516330e571f960e11b815260040160405180910390fd5b620000e68160246200029f565b620000f390600a620003b8565b6080526001600160a01b0380841660c052821660a0526200011362000147565b505050620003c6565b6001600160a01b038116620001445760405163d92e233d60e01b815260040160405180910390fd5b50565b600054610100900460ff1615620001b45760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff9081161462000206576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b03811681146200022057600080fd5b919050565b600080604083850312156200023957600080fd5b620002448362000208565b9150620002546020840162000208565b90509250929050565b6000602082840312156200027057600080fd5b815160ff811681146200028257600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600082821015620002b457620002b462000289565b500390565b600181815b80851115620002fa578160001904821115620002de57620002de62000289565b80851615620002ec57918102915b93841c9390800290620002be565b509250929050565b6000826200031357506001620003b2565b816200032257506000620003b2565b81600181146200033b5760028114620003465762000366565b6001915050620003b2565b60ff8411156200035a576200035a62000289565b50506001821b620003b2565b5060208310610133831016604e8410600b84101617156200038b575081810a620003b2565b620003978383620002b9565b8060001904821115620003ae57620003ae62000289565b0290505b92915050565b600062000282838362000302565b60805160a05160c051611ef0620004666000396000818161033c0152818161051d015281816107d801528181610e9c01528181610f1e01528181610f5e01528181610ff90152611756015260008181610363015281816105bf015281816106bc01528181610767015281816110ec0152611179015260008181610287015281816117eb0152818161181201528181611838015261185f0152611ef06000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c80637adbf9731161010f578063b187bd26116100a2578063e2608fba11610071578063e2608fba146103f6578063e30c397814610409578063f23c0f401461041a578063f2fde38b1461042957600080fd5b8063b187bd26146103ab578063b4a0bdf3146103c9578063d97c057d146103da578063dd081268146103e357600080fd5b80638ec2b239116100de5780638ec2b2391461033757806398f44cd11461035e578063a52f540c14610385578063a589e98a1461039857600080fd5b80637adbf973146102f85780637dc0d1d01461030b5780638456cb591461031e5780638da5cb5b1461032657600080fd5b806342e8a97211610187578063715018a611610156578063715018a6146101f2578063728cdbca146102d4578063769a48d9146102e757806379ba5097146102f057600080fd5b806342e8a9721461025c57806355725d411461026f578063572ca9e714610282578063586f9933146102a957600080fd5b80630e32cb86116101c35780630e32cb8614610223578063126082cf14610236578063187e28bd1461023f57806340a1dd461461025257600080fd5b8063046f7da2146101ea5780630696819f146101f45780630d35d2ed14610210575b600080fd5b6101f261043c565b005b6101fd60fe5481565b6040519081526020015b60405180910390f35b6101fd61021e366004611bfb565b6104c1565b6101f2610231366004611c25565b610855565b6101fd61271081565b6101fd61024d366004611c40565b610869565b6101fd6101005481565b6101f261026a366004611c40565b6108c8565b6101f261027d366004611c40565b610963565b6101fd7f000000000000000000000000000000000000000000000000000000000000000081565b60fc546102bc906001600160a01b031681565b6040516001600160a01b039091168152602001610207565b6101f26102e2366004611c59565b6109f7565b6101fd60fd5481565b6101f2610ba7565b6101f2610306366004611c25565b610c1e565b60fb546102bc906001600160a01b031681565b6101f2610cac565b6033546001600160a01b03166102bc565b6102bc7f000000000000000000000000000000000000000000000000000000000000000081565b6102bc7f000000000000000000000000000000000000000000000000000000000000000081565b6101f2610393366004611c25565b610d34565b6101f26103a6366004611c40565b610dcd565b610101546103b99060ff1681565b6040519015158152602001610207565b6097546001600160a01b03166102bc565b6101fd60ff5481565b6101fd6103f1366004611bfb565b610e42565b6101fd610404366004611c40565b61122a565b6065546001600160a01b03166102bc565b6101fd670de0b6b3a764000081565b6101f2610437366004611c25565b611292565b61046560405180604001604052806008815260200167726573756d65282960c01b815250611303565b6101015460ff1661048957604051636cd6020160e01b815260040160405180910390fd5b610101805460ff1916905560405133907f108589e68122bb4da8e5020c44387cab025243d0894392e275459641a90181a290600090a2565b6101015460009060ff16156104e9576040516313d0ff5960e31b815260040160405180910390fd5b6104f16113a1565b6104fa836113fa565b61050382611421565b60fb5460405163b62cad6960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301529091169063b62cad6990602401600060405180830381600087803b15801561056a57600080fd5b505af115801561057e573d6000803e3d6000fd5b50505050600061058f836001611442565b9050600061059e826001611471565b90506105aa8183611cce565b6040516370a0823160e01b81523360048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a08231906024016020604051808303816000875af1158015610610573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106349190611ce6565b1015610656576040516001629d12e360e01b0319815260040160405180910390fd5b8161010054101561067a5760405163a5047e9560e01b815260040160405180910390fd5b61010080548390039055801561074b5760fc546040516323b872dd60e01b81523360048201526001600160a01b039182166024820152604481018390526000917f000000000000000000000000000000000000000000000000000000000000000016906323b872dd906064016020604051808303816000875af1158015610705573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107299190611cff565b9050806107495760405163aba1276560e01b815260040160405180910390fd5b505b604051632770a7eb60e21b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690639dc29fac90604401600060405180830381600087803b1580156107b357600080fd5b505af11580156107c7573d6000803e3d6000fd5b506108019250506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016905086866114f7565b60408051838152602081018690529081018290527f031e3397b091e3298ff850e89e965fe3543a0c64eb93659927433b06545f3f629060600160405180910390a150905061084f600160c955565b92915050565b61085d611566565b610866816115c0565b50565b600061087482611421565b6000610881836001611442565b90506000610890826001611471565b9050816101005410156108b65760405163a5047e9560e01b815260040160405180910390fd5b6108c08183611cce565b949350505050565b6108fb604051806040016040528060128152602001717365744665654f75742875696e743235362960701b815250611303565b612710811061091d576040516358d620b360e01b815260040160405180910390fd5b60fe80549082905560408051828152602081018490527fdc61767cf6b8f2d5ec16cd975db6d3a79fc69dc428b04c93e8db271de5e43b9f91015b60405180910390a15050565b61099560405180604001604052806011815260200170736574466565496e2875696e743235362960781b815250611303565b61271081106109b7576040516358d620b360e01b815260040160405180910390fd5b60fd80549082905560408051828152602081018490527fb76804f9786a4411a614b09a8211b2fd86f1f5b7a5e4410f35aa1578aac64e049101610957565b565b600054610100900460ff1615808015610a175750600054600160ff909116105b80610a315750303b158015610a31575060005460ff166001145b610a995760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610abc576000805461ff0019166101001790555b610ac5876113fa565b610ace866113fa565b610ad7856113fa565b610ae08761167e565b610ae86116b6565b61271084101580610afb57506127108310155b15610b19576040516358d620b360e01b815260040160405180910390fd5b60fd84905560fe83905560ff82905560fc80546001600160a01b038089166001600160a01b03199283161790925560fb8054928816929091169190911790558015610b9e576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b60655433906001600160a01b03168114610c155760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b6064820152608401610a90565b610866816116e5565b610c51604051806040016040528060128152602001717365744f7261636c6528616464726573732960701b815250611303565b610c5a816113fa565b60fb80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f05cd89403c6bdeac21c2ff33de395121a31fa1bc2bf3adf4825f1f86e79969dd90600090a35050565b610cd4604051806040016040528060078152602001667061757365282960c81b815250611303565b6101015460ff1615610cf957604051631785c68160e01b815260040160405180910390fd5b610101805460ff1916600117905560405133907fb7aabc84a8f1fe9971d4bfffb4bb336af2c63e547360dd116940dc70da8159e190600090a2565b610d726040518060400160405280601981526020017f73657456656e7573547265617375727928616464726573732900000000000000815250611303565b610d7b816113fa565b60fc80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f35655f8f1a1f8b7ff254ff70c675c0a26ddcb3da6cb6decd491ecdee167e220b90600090a35050565b610e04604051806040016040528060168152602001757365745641494d696e744361702875696e743235362960501b815250611303565b60ff80549082905560408051828152602081018490527f0f43249751c1ca8dedff5711840ef91871f6fc2ce9b3891c1f33f4163ba1a9a39101610957565b6101015460009060ff1615610e6a576040516313d0ff5960e31b815260040160405180910390fd5b610e726113a1565b610e7b836113fa565b610e8482611421565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610eeb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f0f9190611ce6565b9050610f466001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163330866116fe565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fd19190611ce6565b90506000610fdf8383611d21565b60fb5460405163b62cad6960e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015292935091169063b62cad6990602401600060405180830381600087803b15801561104857600080fd5b505af115801561105c573d6000803e3d6000fd5b50505050600061106d826000611442565b9050600061107c826000611471565b9050600061108a8284611d21565b905060ff54836101005461109e9190611cce565b11156110bd576040516313d3ad1560e31b815260040160405180910390fd5b6101008054840190556040516340c10f1960e01b81526001600160a01b038a81166004830152602482018390527f000000000000000000000000000000000000000000000000000000000000000016906340c10f1990604401600060405180830381600087803b15801561113057600080fd5b505af1158015611144573d6000803e3d6000fd5b50505050816000146111d85760fc546040516340c10f1960e01b81526001600160a01b039182166004820152602481018490527f0000000000000000000000000000000000000000000000000000000000000000909116906340c10f1990604401600060405180830381600087803b1580156111bf57600080fd5b505af11580156111d3573d6000803e3d6000fd5b505050505b60408051858152602081018390529081018390527f018e5c6d7bd9e0cafe3512ff02488f4c0ce3524a684e1097aab74666bf4fd00f9060600160405180910390a19550505050505061084f600160c955565b600061123582611421565b6000611242836000611442565b90506000611251826000611471565b9050600061125f8284611d21565b905060ff5483610100546112739190611cce565b11156108c0576040516313d3ad1560e31b815260040160405180910390fd5b61129a611566565b606580546001600160a01b0383166001600160a01b031990911681179091556112cb6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6097546040516318c5e8ab60e01b81526000916001600160a01b0316906318c5e8ab906113369033908690600401611d90565b602060405180830381865afa158015611353573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113779190611cff565b90508061139d57333083604051634a3fa29360e01b8152600401610a9093929190611db4565b5050565b600260c954036113f35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610a90565b600260c955565b6001600160a01b0381166108665760405163d92e233d60e01b815260040160405180910390fd5b8060000361086657604051631f2a200560e01b815260040160405180910390fd5b6000670de0b6b3a76400006114568361173c565b6114609085611de9565b61146a9190611e08565b9392505050565b6000808083600181111561148757611487611e2a565b03611495575060fd5461149a565b5060fe545b806000036114ac57600091505061084f565b6127106114b98286611de9565b10156114d85760405163617ab12d60e11b815260040160405180910390fd5b6127106114e58286611de9565b6114ef9190611e08565b91505061084f565b6040516001600160a01b03831660248201526044810182905261155a90849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611883565b505050565b600160c955565b6033546001600160a01b031633146109f55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610a90565b6001600160a01b0381166116245760405162461bcd60e51b815260206004820152602560248201527f696e76616c696420616365737320636f6e74726f6c206d616e61676572206164604482015264647265737360d81b6064820152608401610a90565b609780546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa09101610957565b600054610100900460ff166116a55760405162461bcd60e51b8152600401610a9090611e40565b6116ad611958565b61086681611987565b600054610100900460ff166116dd5760405162461bcd60e51b8152600401610a9090611e40565b6109f56119ae565b606580546001600160a01b0319169055610866816119d5565b6040516001600160a01b03808516602483015283166044820152606481018290526117369085906323b872dd60e01b90608401611523565b50505050565b60fb546040516341976e0960e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260009283929116906341976e0990602401602060405180830381865afa1580156117aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ce9190611ce6565b905060008360018111156117e4576117e4611e2a565b03611836577f0000000000000000000000000000000000000000000000000000000000000000811061084f577f000000000000000000000000000000000000000000000000000000000000000061146a565b7f0000000000000000000000000000000000000000000000000000000000000000811161084f577f000000000000000000000000000000000000000000000000000000000000000061146a565b60006118d8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611a279092919063ffffffff16565b90508051600014806118f95750808060200190518101906118f99190611cff565b61155a5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610a90565b600054610100900460ff1661197f5760405162461bcd60e51b8152600401610a9090611e40565b6109f5611a36565b600054610100900460ff1661085d5760405162461bcd60e51b8152600401610a9090611e40565b600054610100900460ff1661155f5760405162461bcd60e51b8152600401610a9090611e40565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60606108c08484600085611a66565b600054610100900460ff16611a5d5760405162461bcd60e51b8152600401610a9090611e40565b6109f5336116e5565b606082471015611ac75760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610a90565b600080866001600160a01b03168587604051611ae39190611e8b565b60006040518083038185875af1925050503d8060008114611b20576040519150601f19603f3d011682016040523d82523d6000602084013e611b25565b606091505b5091509150611b3687838387611b41565b979650505050505050565b60608315611bb0578251600003611ba9576001600160a01b0385163b611ba95760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610a90565b50816108c0565b6108c08383815115611bc55781518083602001fd5b8060405162461bcd60e51b8152600401610a909190611ea7565b80356001600160a01b0381168114611bf657600080fd5b919050565b60008060408385031215611c0e57600080fd5b611c1783611bdf565b946020939093013593505050565b600060208284031215611c3757600080fd5b61146a82611bdf565b600060208284031215611c5257600080fd5b5035919050565b60008060008060008060c08789031215611c7257600080fd5b611c7b87611bdf565b9550611c8960208801611bdf565b9450611c9760408801611bdf565b9350606087013592506080870135915060a087013590509295509295509295565b634e487b7160e01b600052601160045260246000fd5b60008219821115611ce157611ce1611cb8565b500190565b600060208284031215611cf857600080fd5b5051919050565b600060208284031215611d1157600080fd5b8151801515811461146a57600080fd5b600082821015611d3357611d33611cb8565b500390565b60005b83811015611d53578181015183820152602001611d3b565b838111156117365750506000910152565b60008151808452611d7c816020860160208601611d38565b601f01601f19169290920160200192915050565b6001600160a01b03831681526040602082018190526000906108c090830184611d64565b6001600160a01b03848116825283166020820152606060408201819052600090611de090830184611d64565b95945050505050565b6000816000190483118215151615611e0357611e03611cb8565b500290565b600082611e2557634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052602160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60008251611e9d818460208701611d38565b9190910192915050565b60208152600061146a6020830184611d6456fea2646970667358221220776bae9a01444556f49e135e272e6d666dc0b437dde23f690af77c95ce44ac9b64736f6c634300080d0033";
785
+ const isSuperArgs = (xs) => xs.length > 1;
786
+ class PegStability__factory extends ethers_1.ContractFactory {
787
+ constructor(...args) {
788
+ if (isSuperArgs(args)) {
789
+ super(...args);
790
+ }
791
+ else {
792
+ super(_abi, _bytecode, args[0]);
793
+ }
794
+ }
795
+ deploy(stableTokenAddress_, vaiAddress_, overrides) {
796
+ return super.deploy(stableTokenAddress_, vaiAddress_, overrides || {});
797
+ }
798
+ getDeployTransaction(stableTokenAddress_, vaiAddress_, overrides) {
799
+ return super.getDeployTransaction(stableTokenAddress_, vaiAddress_, overrides || {});
800
+ }
801
+ attach(address) {
802
+ return super.attach(address);
803
+ }
804
+ connect(signer) {
805
+ return super.connect(signer);
806
+ }
807
+ static createInterface() {
808
+ return new ethers_1.utils.Interface(_abi);
809
+ }
810
+ static connect(address, signerOrProvider) {
811
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
812
+ }
813
+ }
814
+ exports.PegStability__factory = PegStability__factory;
815
+ PegStability__factory.bytecode = _bytecode;
816
+ PegStability__factory.abi = _abi;