@venusprotocol/protocol-reserve 1.3.0 → 1.4.0-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/README.md +6 -0
  2. package/artifacts/@openzeppelin/contracts/access/AccessControl.sol/AccessControl.dbg.json +4 -0
  3. package/artifacts/@openzeppelin/contracts/access/AccessControl.sol/AccessControl.json +215 -0
  4. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +1 -1
  5. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +4 -0
  6. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.json +63 -0
  7. package/artifacts/@openzeppelin/contracts/interfaces/IERC1967.sol/IERC1967.dbg.json +4 -0
  8. package/artifacts/@openzeppelin/contracts/interfaces/IERC1967.sol/IERC1967.json +56 -0
  9. package/artifacts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +4 -0
  10. package/artifacts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.json +24 -0
  11. package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +4 -0
  12. package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.json +56 -0
  13. package/artifacts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +4 -0
  14. package/artifacts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.json +19 -0
  15. package/artifacts/@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol/BeaconProxy.dbg.json +4 -0
  16. package/artifacts/@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol/BeaconProxy.json +80 -0
  17. package/artifacts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +4 -0
  18. package/artifacts/{contracts/Interfaces/ComptrollerInterface.sol/ComptrollerInterface.json → @openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.json} +5 -5
  19. package/artifacts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +4 -0
  20. package/artifacts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +113 -0
  21. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
  22. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  23. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
  24. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +4 -0
  25. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.json +10 -0
  26. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  27. package/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +4 -0
  28. package/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +10 -0
  29. package/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +4 -0
  30. package/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +10 -0
  31. package/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.dbg.json +4 -0
  32. package/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.json +30 -0
  33. package/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.dbg.json +4 -0
  34. package/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.json +30 -0
  35. package/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.dbg.json +4 -0
  36. package/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.json +10 -0
  37. package/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.dbg.json +4 -0
  38. package/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.json +10 -0
  39. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +1 -1
  40. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  41. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  42. package/artifacts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +4 -0
  43. package/artifacts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.json +63 -0
  44. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +1 -1
  45. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  46. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +1 -1
  47. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +1 -1
  48. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  49. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  50. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.dbg.json +1 -1
  51. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.dbg.json +1 -1
  52. package/artifacts/@venusprotocol/oracle/contracts/ResilientOracle.sol/ResilientOracle.dbg.json +4 -0
  53. package/artifacts/@venusprotocol/oracle/contracts/ResilientOracle.sol/ResilientOracle.json +649 -0
  54. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.dbg.json +4 -0
  55. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.json +40 -0
  56. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.dbg.json +4 -0
  57. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.json +30 -0
  58. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.dbg.json +4 -0
  59. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.json +75 -0
  60. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.dbg.json +4 -0
  61. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.json +49 -0
  62. package/artifacts/@venusprotocol/oracle/contracts/interfaces/VBep20Interface.sol/VBep20Interface.dbg.json +4 -0
  63. package/artifacts/@venusprotocol/oracle/contracts/interfaces/VBep20Interface.sol/VBep20Interface.json +246 -0
  64. package/artifacts/@venusprotocol/solidity-utilities/contracts/MaxLoopsLimitHelper.sol/MaxLoopsLimitHelper.dbg.json +1 -1
  65. package/artifacts/build-info/e6962244d9988e3e4bb55e591cf3b5d8.json +1 -0
  66. package/artifacts/contracts/Interfaces/IComptroller.sol/IComptroller.dbg.json +4 -0
  67. package/artifacts/contracts/Interfaces/IComptroller.sol/IComptroller.json +56 -0
  68. package/artifacts/contracts/Interfaces/IConverterNetwork.sol/IConverterNetwork.dbg.json +4 -0
  69. package/artifacts/contracts/Interfaces/IConverterNetwork.sol/IConverterNetwork.json +127 -0
  70. package/artifacts/contracts/Interfaces/IIncomeDestination.sol/IIncomeDestination.dbg.json +1 -1
  71. package/artifacts/contracts/Interfaces/IPoolRegistry.sol/IPoolRegistry.dbg.json +4 -0
  72. package/artifacts/contracts/Interfaces/IPoolRegistry.sol/IPoolRegistry.json +54 -0
  73. package/artifacts/contracts/Interfaces/IProtocolShareReserve.sol/IProtocolShareReserve.dbg.json +1 -1
  74. package/artifacts/contracts/Interfaces/IRiskFund.sol/IRiskFund.dbg.json +4 -0
  75. package/artifacts/contracts/Interfaces/IRiskFund.sol/IRiskFund.json +77 -0
  76. package/artifacts/contracts/Interfaces/IRiskFund.sol/IRiskFundGetters.dbg.json +4 -0
  77. package/artifacts/contracts/Interfaces/IRiskFund.sol/IRiskFundGetters.json +24 -0
  78. package/artifacts/contracts/Interfaces/IRiskFundConverter.sol/IRiskFundConverter.dbg.json +4 -0
  79. package/artifacts/contracts/Interfaces/{PoolRegistryInterface.sol/PoolRegistryInterface.json → IRiskFundConverter.sol/IRiskFundConverter.json} +23 -10
  80. package/artifacts/contracts/Interfaces/IShortfall.sol/IShortfall.dbg.json +4 -0
  81. package/artifacts/contracts/Interfaces/IShortfall.sol/IShortfall.json +24 -0
  82. package/artifacts/contracts/Interfaces/IVToken.sol/IVToken.dbg.json +1 -1
  83. package/artifacts/contracts/Interfaces/IXVSVault.sol/IXVSVault.dbg.json +4 -0
  84. package/artifacts/contracts/Interfaces/IXVSVault.sol/IXVSVault.json +24 -0
  85. package/artifacts/contracts/ProtocolReserve/ProtocolShareReserve.sol/ProtocolShareReserve.dbg.json +1 -1
  86. package/artifacts/contracts/ProtocolReserve/ProtocolShareReserve.sol/ProtocolShareReserve.json +7 -2
  87. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/MaxLoopsLimitHelpersStorage.dbg.json +4 -0
  88. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/MaxLoopsLimitHelpersStorage.json +24 -0
  89. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/ReserveHelpersStorage.dbg.json +4 -0
  90. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/ReserveHelpersStorage.json +139 -0
  91. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/RiskFundV1Storage.dbg.json +4 -0
  92. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/RiskFundV1Storage.json +178 -0
  93. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/RiskFundV2Storage.dbg.json +4 -0
  94. package/artifacts/contracts/ProtocolReserve/RiskFundStorage.sol/RiskFundV2Storage.json +191 -0
  95. package/artifacts/contracts/ProtocolReserve/RiskFundV2.sol/RiskFundV2.dbg.json +4 -0
  96. package/artifacts/contracts/ProtocolReserve/RiskFundV2.sol/RiskFundV2.json +630 -0
  97. package/artifacts/contracts/ProtocolReserve/XVSVaultTreasury.sol/XVSVaultTreasury.dbg.json +4 -0
  98. package/artifacts/contracts/ProtocolReserve/XVSVaultTreasury.sol/XVSVaultTreasury.json +315 -0
  99. package/artifacts/contracts/Test/Mocks/MockACM.sol/MockACM.dbg.json +4 -0
  100. package/artifacts/contracts/Test/Mocks/MockACM.sol/MockACM.json +369 -0
  101. package/artifacts/contracts/Test/Mocks/MockArraySorter.sol/MockArraySorter.dbg.json +4 -0
  102. package/artifacts/contracts/Test/Mocks/MockArraySorter.sol/MockArraySorter.json +40 -0
  103. package/artifacts/contracts/Test/Mocks/MockConverter.sol/MockConverter.dbg.json +4 -0
  104. package/artifacts/contracts/Test/Mocks/MockConverter.sol/MockConverter.json +1395 -0
  105. package/artifacts/contracts/Test/Mocks/MockDeflationaryToken.sol/MockDeflatingToken.dbg.json +4 -0
  106. package/artifacts/contracts/Test/Mocks/MockDeflationaryToken.sol/MockDeflatingToken.json +332 -0
  107. package/artifacts/contracts/Test/Mocks/MockRiskFundConverter.sol/MockRiskFundConverter.dbg.json +4 -0
  108. package/artifacts/contracts/Test/Mocks/MockRiskFundConverter.sol/MockRiskFundConverter.json +1761 -0
  109. package/artifacts/contracts/Test/Mocks/MockToken.sol/MockToken.dbg.json +1 -1
  110. package/artifacts/contracts/Test/Mocks/MockToken.sol/MockToken.json +20 -2
  111. package/artifacts/contracts/TokenConverter/AbstractTokenConverter.sol/AbstractTokenConverter.dbg.json +4 -0
  112. package/artifacts/contracts/TokenConverter/AbstractTokenConverter.sol/AbstractTokenConverter.json +1276 -0
  113. package/artifacts/contracts/TokenConverter/ConverterNetwork.sol/ConverterNetwork.dbg.json +4 -0
  114. package/artifacts/contracts/TokenConverter/ConverterNetwork.sol/ConverterNetwork.json +457 -0
  115. package/artifacts/contracts/TokenConverter/IAbstractTokenConverter.sol/IAbstractTokenConverter.dbg.json +4 -0
  116. package/artifacts/contracts/TokenConverter/IAbstractTokenConverter.sol/IAbstractTokenConverter.json +446 -0
  117. package/artifacts/contracts/TokenConverter/RiskFundConverter.sol/RiskFundConverter.dbg.json +4 -0
  118. package/artifacts/contracts/TokenConverter/RiskFundConverter.sol/RiskFundConverter.json +1631 -0
  119. package/artifacts/contracts/TokenConverter/SingleTokenConverter.sol/SingleTokenConverter.dbg.json +4 -0
  120. package/artifacts/contracts/TokenConverter/SingleTokenConverter.sol/SingleTokenConverter.json +1390 -0
  121. package/contracts/Interfaces/IComptroller.sol +10 -0
  122. package/contracts/Interfaces/IConverterNetwork.sol +46 -0
  123. package/contracts/Interfaces/IPoolRegistry.sol +10 -0
  124. package/contracts/Interfaces/IRiskFund.sol +28 -0
  125. package/contracts/Interfaces/IRiskFundConverter.sol +8 -0
  126. package/contracts/Interfaces/IShortfall.sol +11 -0
  127. package/contracts/Interfaces/IXVSVault.sol +9 -0
  128. package/contracts/ProtocolReserve/ProtocolShareReserve.sol +15 -12
  129. package/contracts/ProtocolReserve/RiskFundStorage.sol +67 -0
  130. package/contracts/ProtocolReserve/RiskFundV2.sol +253 -0
  131. package/contracts/ProtocolReserve/XVSVaultTreasury.sol +95 -0
  132. package/contracts/Test/Mocks/MockACM.sol +94 -0
  133. package/contracts/Test/Mocks/MockArraySorter.sol +14 -0
  134. package/contracts/Test/Mocks/MockConverter.sol +70 -0
  135. package/contracts/Test/Mocks/MockDeflationaryToken.sol +113 -0
  136. package/contracts/Test/Mocks/MockRiskFundConverter.sol +45 -0
  137. package/contracts/Test/Mocks/MockToken.sol +4 -0
  138. package/contracts/Test/imports.sol +11 -0
  139. package/contracts/TokenConverter/AbstractTokenConverter.sol +1167 -0
  140. package/contracts/TokenConverter/ConverterNetwork.sol +243 -0
  141. package/contracts/TokenConverter/IAbstractTokenConverter.sol +178 -0
  142. package/contracts/TokenConverter/RiskFundConverter.sol +449 -0
  143. package/contracts/TokenConverter/SingleTokenConverter.sol +103 -0
  144. package/contracts/Utils/ArrayHelpers.sol +41 -0
  145. package/deployments/bscmainnet/BTCBPrimeConverter.json +218 -0
  146. package/deployments/bscmainnet/ConverterNetwork.json +723 -0
  147. package/deployments/bscmainnet/ConverterNetwork_Implementation.json +823 -0
  148. package/deployments/bscmainnet/ConverterNetwork_Proxy.json +277 -0
  149. package/deployments/bscmainnet/ETHPrimeConverter.json +218 -0
  150. package/deployments/bscmainnet/ProtocolShareReserve_Implementation.json +89 -73
  151. package/deployments/bscmainnet/RiskFundConverter.json +2035 -0
  152. package/deployments/bscmainnet/RiskFundConverter_Implementation.json +2563 -0
  153. package/deployments/bscmainnet/RiskFundConverter_Proxy.json +403 -0
  154. package/deployments/bscmainnet/RiskFundV2.json +1049 -0
  155. package/deployments/bscmainnet/SingleTokenConverterBeacon.json +206 -0
  156. package/deployments/bscmainnet/SingleTokenConverterImp.json +2164 -0
  157. package/deployments/bscmainnet/USDCPrimeConverter.json +218 -0
  158. package/deployments/bscmainnet/USDTPrimeConverter.json +218 -0
  159. package/deployments/bscmainnet/XVSVaultConverter.json +218 -0
  160. package/deployments/bscmainnet/XVSVaultTreasury.json +579 -0
  161. package/deployments/bscmainnet/XVSVaultTreasury_Implementation.json +603 -0
  162. package/deployments/bscmainnet/XVSVaultTreasury_Proxy.json +281 -0
  163. package/deployments/bscmainnet/solcInputs/d02e743d886d63634298edb2c3d7a019.json +123 -0
  164. package/deployments/bscmainnet/solcInputs/ee8827a99e03cdf6f6a94fb8782ddf44.json +228 -0
  165. package/deployments/bscmainnet.json +8927 -873
  166. package/deployments/bscmainnet_addresses.json +19 -2
  167. package/deployments/bsctestnet/BTCBPrimeConverter.json +218 -0
  168. package/deployments/bsctestnet/ConverterNetwork.json +723 -0
  169. package/deployments/bsctestnet/ConverterNetwork_Implementation.json +823 -0
  170. package/deployments/bsctestnet/ConverterNetwork_Proxy.json +277 -0
  171. package/deployments/bsctestnet/ETHPrimeConverter.json +218 -0
  172. package/deployments/bsctestnet/ProtocolShareReserve_Implementation.json +89 -73
  173. package/deployments/bsctestnet/RiskFundConverter.json +2035 -0
  174. package/deployments/bsctestnet/RiskFundConverter_Implementation.json +2563 -0
  175. package/deployments/bsctestnet/RiskFundConverter_Proxy.json +403 -0
  176. package/deployments/bsctestnet/RiskFundV2.json +1049 -0
  177. package/deployments/bsctestnet/SingleTokenConverterBeacon.json +206 -0
  178. package/deployments/bsctestnet/SingleTokenConverterImp.json +2164 -0
  179. package/deployments/bsctestnet/USDCPrimeConverter.json +218 -0
  180. package/deployments/bsctestnet/USDTPrimeConverter.json +218 -0
  181. package/deployments/bsctestnet/XVSVaultConverter.json +218 -0
  182. package/deployments/bsctestnet/XVSVaultTreasury.json +579 -0
  183. package/deployments/bsctestnet/XVSVaultTreasury_Implementation.json +603 -0
  184. package/deployments/bsctestnet/XVSVaultTreasury_Proxy.json +281 -0
  185. package/deployments/bsctestnet/solcInputs/d02e743d886d63634298edb2c3d7a019.json +123 -0
  186. package/deployments/bsctestnet/solcInputs/ee8827a99e03cdf6f6a94fb8782ddf44.json +228 -0
  187. package/deployments/bsctestnet.json +8927 -873
  188. package/deployments/bsctestnet_addresses.json +19 -2
  189. package/dist/deploy/{1-deploy.d.ts → 001-psr.d.ts} +1 -1
  190. package/dist/deploy/001-psr.d.ts.map +1 -0
  191. package/dist/deploy/{1-deploy.js → 001-psr.js} +2 -2
  192. package/dist/deploy/001-psr.js.map +1 -0
  193. package/dist/deploy/002-risk-fund-converter.d.ts +4 -0
  194. package/dist/deploy/002-risk-fund-converter.d.ts.map +1 -0
  195. package/dist/deploy/002-risk-fund-converter.js +78 -0
  196. package/dist/deploy/002-risk-fund-converter.js.map +1 -0
  197. package/dist/deploy/003-xvs-vault-teasury.d.ts +7 -0
  198. package/dist/deploy/003-xvs-vault-teasury.d.ts.map +1 -0
  199. package/dist/deploy/003-xvs-vault-teasury.js +45 -0
  200. package/dist/deploy/003-xvs-vault-teasury.js.map +1 -0
  201. package/dist/deploy/004-single-token-converter.d.ts +4 -0
  202. package/dist/deploy/004-single-token-converter.d.ts.map +1 -0
  203. package/dist/deploy/004-single-token-converter.js +65 -0
  204. package/dist/deploy/004-single-token-converter.js.map +1 -0
  205. package/dist/deploy/005-converter-network.d.ts +7 -0
  206. package/dist/deploy/005-converter-network.d.ts.map +1 -0
  207. package/dist/deploy/005-converter-network.js +43 -0
  208. package/dist/deploy/005-converter-network.js.map +1 -0
  209. package/dist/hardhat.config.d.ts.map +1 -1
  210. package/dist/hardhat.config.js +6 -0
  211. package/dist/hardhat.config.js.map +1 -1
  212. package/dist/helpers/utils.d.ts +1 -0
  213. package/dist/helpers/utils.d.ts.map +1 -1
  214. package/dist/helpers/utils.js +2 -1
  215. package/dist/helpers/utils.js.map +1 -1
  216. package/package.json +19 -16
  217. package/typechain/AbstractTokenConverter.d.ts +1775 -0
  218. package/typechain/AccessControl.d.ts +388 -0
  219. package/typechain/BeaconProxy.d.ts +126 -0
  220. package/typechain/BoundValidatorInterface.d.ts +126 -0
  221. package/typechain/ConverterNetwork.d.ts +723 -0
  222. package/typechain/{PoolRegistryInterface.d.ts → ERC165.d.ts} +20 -25
  223. package/typechain/ERC1967Upgrade.d.ts +126 -0
  224. package/typechain/IAbstractTokenConverter.d.ts +773 -0
  225. package/typechain/IBeacon.d.ts +101 -0
  226. package/typechain/IComptroller.d.ts +136 -0
  227. package/typechain/IConverterNetwork.d.ts +292 -0
  228. package/typechain/IERC165.d.ts +116 -0
  229. package/typechain/{ComptrollerInterface.d.ts → IERC1822Proxiable.d.ts} +11 -11
  230. package/typechain/IERC1967.d.ts +126 -0
  231. package/typechain/IPoolRegistry.d.ts +155 -0
  232. package/typechain/IRiskFund.d.ts +200 -0
  233. package/typechain/IRiskFundConverter.d.ts +138 -0
  234. package/typechain/IRiskFundGetters.d.ts +103 -0
  235. package/typechain/IShortfall.d.ts +110 -0
  236. package/typechain/IXVSVault.d.ts +95 -0
  237. package/typechain/MaxLoopsLimitHelpersStorage.d.ts +101 -0
  238. package/typechain/MockACM.d.ts +615 -0
  239. package/typechain/MockArraySorter.d.ts +118 -0
  240. package/typechain/MockConverter.d.ts +1969 -0
  241. package/typechain/MockDeflatingToken.d.ts +486 -0
  242. package/typechain/MockRiskFundConverter.d.ts +2479 -0
  243. package/typechain/MockToken.d.ts +36 -0
  244. package/typechain/OracleInterface.d.ts +98 -0
  245. package/typechain/Ownable.d.ts +181 -0
  246. package/typechain/PausableUpgradeable.d.ts +129 -0
  247. package/typechain/Proxy.d.ts +78 -0
  248. package/typechain/ReserveHelpersStorage.d.ts +300 -0
  249. package/typechain/ResilientOracle.d.ts +1034 -0
  250. package/typechain/ResilientOracleInterface.d.ts +192 -0
  251. package/typechain/RiskFundConverter.d.ts +2235 -0
  252. package/typechain/RiskFundV1Storage.d.ts +353 -0
  253. package/typechain/RiskFundV2.d.ts +965 -0
  254. package/typechain/RiskFundV2Storage.d.ts +372 -0
  255. package/typechain/SingleTokenConverter.d.ts +1944 -0
  256. package/typechain/TwapInterface.d.ts +124 -0
  257. package/typechain/UpgradeableBeacon.d.ts +240 -0
  258. package/typechain/VBep20Interface.d.ts +379 -0
  259. package/typechain/XVSVaultTreasury.d.ts +515 -0
  260. package/typechain/factories/AbstractTokenConverter__factory.ts +1297 -0
  261. package/typechain/factories/AccessControl__factory.ts +227 -0
  262. package/typechain/factories/BeaconProxy__factory.ts +133 -0
  263. package/typechain/factories/BoundValidatorInterface__factory.ts +59 -0
  264. package/typechain/factories/ConverterNetwork__factory.ts +502 -0
  265. package/typechain/factories/ERC165__factory.ts +39 -0
  266. package/typechain/factories/ERC1967Upgrade__factory.ts +71 -0
  267. package/typechain/factories/IAbstractTokenConverter__factory.ts +466 -0
  268. package/typechain/factories/IBeacon__factory.ts +36 -0
  269. package/typechain/factories/IComptroller__factory.ts +68 -0
  270. package/typechain/factories/IConverterNetwork__factory.ts +142 -0
  271. package/typechain/factories/{ComptrollerInterface__factory.ts → IERC165__factory.ts} +14 -15
  272. package/typechain/factories/IERC1822Proxiable__factory.ts +39 -0
  273. package/typechain/factories/IERC1967__factory.ts +68 -0
  274. package/typechain/factories/IPoolRegistry__factory.ts +66 -0
  275. package/typechain/factories/{PoolRegistryInterface__factory.ts → IRiskFundConverter__factory.ts} +28 -19
  276. package/typechain/factories/IRiskFundGetters__factory.ts +39 -0
  277. package/typechain/factories/IRiskFund__factory.ts +89 -0
  278. package/typechain/factories/IShortfall__factory.ts +36 -0
  279. package/typechain/factories/IXVSVault__factory.ts +36 -0
  280. package/typechain/factories/MaxLoopsLimitHelpersStorage__factory.ts +75 -0
  281. package/typechain/factories/MockACM__factory.ts +411 -0
  282. package/typechain/factories/MockArraySorter__factory.ts +85 -0
  283. package/typechain/factories/MockConverter__factory.ts +1439 -0
  284. package/typechain/factories/MockDeflatingToken__factory.ts +389 -0
  285. package/typechain/factories/MockRiskFundConverter__factory.ts +1828 -0
  286. package/typechain/factories/MockToken__factory.ts +19 -1
  287. package/typechain/factories/OracleInterface__factory.ts +45 -0
  288. package/typechain/factories/Ownable__factory.ts +75 -0
  289. package/typechain/factories/PausableUpgradeable__factory.ts +78 -0
  290. package/typechain/factories/ProtocolShareReserve__factory.ts +6 -1
  291. package/typechain/factories/Proxy__factory.ts +28 -0
  292. package/typechain/factories/ReserveHelpersStorage__factory.ts +188 -0
  293. package/typechain/factories/ResilientOracleInterface__factory.ts +94 -0
  294. package/typechain/factories/ResilientOracle__factory.ts +710 -0
  295. package/typechain/factories/RiskFundConverter__factory.ts +1694 -0
  296. package/typechain/factories/RiskFundV1Storage__factory.ts +223 -0
  297. package/typechain/factories/RiskFundV2Storage__factory.ts +236 -0
  298. package/typechain/factories/RiskFundV2__factory.ts +672 -0
  299. package/typechain/factories/SingleTokenConverter__factory.ts +1441 -0
  300. package/typechain/factories/TwapInterface__factory.ts +61 -0
  301. package/typechain/factories/UpgradeableBeacon__factory.ts +163 -0
  302. package/typechain/factories/VBep20Interface__factory.ts +261 -0
  303. package/typechain/factories/XVSVaultTreasury__factory.ts +365 -0
  304. package/typechain/index.ts +84 -4
  305. package/artifacts/build-info/ac790619cb42a0f08af77d9ea733874e.json +0 -1
  306. package/artifacts/contracts/Interfaces/ComptrollerInterface.sol/ComptrollerInterface.dbg.json +0 -4
  307. package/artifacts/contracts/Interfaces/PoolRegistryInterface.sol/PoolRegistryInterface.dbg.json +0 -4
  308. package/contracts/Interfaces/ComptrollerInterface.sol +0 -6
  309. package/contracts/Interfaces/PoolRegistryInterface.sol +0 -7
  310. package/dist/deploy/1-deploy.d.ts.map +0 -1
  311. package/dist/deploy/1-deploy.js.map +0 -1
@@ -0,0 +1,369 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MockACM",
4
+ "sourceName": "contracts/Test/Mocks/MockACM.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "stateMutability": "nonpayable",
9
+ "type": "constructor"
10
+ },
11
+ {
12
+ "anonymous": false,
13
+ "inputs": [
14
+ {
15
+ "indexed": false,
16
+ "internalType": "address",
17
+ "name": "account",
18
+ "type": "address"
19
+ },
20
+ {
21
+ "indexed": false,
22
+ "internalType": "address",
23
+ "name": "contractAddress",
24
+ "type": "address"
25
+ },
26
+ {
27
+ "indexed": false,
28
+ "internalType": "string",
29
+ "name": "functionSig",
30
+ "type": "string"
31
+ }
32
+ ],
33
+ "name": "PermissionGranted",
34
+ "type": "event"
35
+ },
36
+ {
37
+ "anonymous": false,
38
+ "inputs": [
39
+ {
40
+ "indexed": false,
41
+ "internalType": "address",
42
+ "name": "account",
43
+ "type": "address"
44
+ },
45
+ {
46
+ "indexed": false,
47
+ "internalType": "address",
48
+ "name": "contractAddress",
49
+ "type": "address"
50
+ },
51
+ {
52
+ "indexed": false,
53
+ "internalType": "string",
54
+ "name": "functionSig",
55
+ "type": "string"
56
+ }
57
+ ],
58
+ "name": "PermissionRevoked",
59
+ "type": "event"
60
+ },
61
+ {
62
+ "anonymous": false,
63
+ "inputs": [
64
+ {
65
+ "indexed": true,
66
+ "internalType": "bytes32",
67
+ "name": "role",
68
+ "type": "bytes32"
69
+ },
70
+ {
71
+ "indexed": true,
72
+ "internalType": "bytes32",
73
+ "name": "previousAdminRole",
74
+ "type": "bytes32"
75
+ },
76
+ {
77
+ "indexed": true,
78
+ "internalType": "bytes32",
79
+ "name": "newAdminRole",
80
+ "type": "bytes32"
81
+ }
82
+ ],
83
+ "name": "RoleAdminChanged",
84
+ "type": "event"
85
+ },
86
+ {
87
+ "anonymous": false,
88
+ "inputs": [
89
+ {
90
+ "indexed": true,
91
+ "internalType": "bytes32",
92
+ "name": "role",
93
+ "type": "bytes32"
94
+ },
95
+ {
96
+ "indexed": true,
97
+ "internalType": "address",
98
+ "name": "account",
99
+ "type": "address"
100
+ },
101
+ {
102
+ "indexed": true,
103
+ "internalType": "address",
104
+ "name": "sender",
105
+ "type": "address"
106
+ }
107
+ ],
108
+ "name": "RoleGranted",
109
+ "type": "event"
110
+ },
111
+ {
112
+ "anonymous": false,
113
+ "inputs": [
114
+ {
115
+ "indexed": true,
116
+ "internalType": "bytes32",
117
+ "name": "role",
118
+ "type": "bytes32"
119
+ },
120
+ {
121
+ "indexed": true,
122
+ "internalType": "address",
123
+ "name": "account",
124
+ "type": "address"
125
+ },
126
+ {
127
+ "indexed": true,
128
+ "internalType": "address",
129
+ "name": "sender",
130
+ "type": "address"
131
+ }
132
+ ],
133
+ "name": "RoleRevoked",
134
+ "type": "event"
135
+ },
136
+ {
137
+ "inputs": [],
138
+ "name": "DEFAULT_ADMIN_ROLE",
139
+ "outputs": [
140
+ {
141
+ "internalType": "bytes32",
142
+ "name": "",
143
+ "type": "bytes32"
144
+ }
145
+ ],
146
+ "stateMutability": "view",
147
+ "type": "function"
148
+ },
149
+ {
150
+ "inputs": [
151
+ {
152
+ "internalType": "bytes32",
153
+ "name": "role",
154
+ "type": "bytes32"
155
+ }
156
+ ],
157
+ "name": "getRoleAdmin",
158
+ "outputs": [
159
+ {
160
+ "internalType": "bytes32",
161
+ "name": "",
162
+ "type": "bytes32"
163
+ }
164
+ ],
165
+ "stateMutability": "view",
166
+ "type": "function"
167
+ },
168
+ {
169
+ "inputs": [
170
+ {
171
+ "internalType": "address",
172
+ "name": "contractAddress",
173
+ "type": "address"
174
+ },
175
+ {
176
+ "internalType": "string",
177
+ "name": "functionSig",
178
+ "type": "string"
179
+ },
180
+ {
181
+ "internalType": "address",
182
+ "name": "accountToPermit",
183
+ "type": "address"
184
+ }
185
+ ],
186
+ "name": "giveCallPermission",
187
+ "outputs": [],
188
+ "stateMutability": "nonpayable",
189
+ "type": "function"
190
+ },
191
+ {
192
+ "inputs": [
193
+ {
194
+ "internalType": "bytes32",
195
+ "name": "role",
196
+ "type": "bytes32"
197
+ },
198
+ {
199
+ "internalType": "address",
200
+ "name": "account",
201
+ "type": "address"
202
+ }
203
+ ],
204
+ "name": "grantRole",
205
+ "outputs": [],
206
+ "stateMutability": "nonpayable",
207
+ "type": "function"
208
+ },
209
+ {
210
+ "inputs": [
211
+ {
212
+ "internalType": "address",
213
+ "name": "account",
214
+ "type": "address"
215
+ },
216
+ {
217
+ "internalType": "address",
218
+ "name": "contractAddress",
219
+ "type": "address"
220
+ },
221
+ {
222
+ "internalType": "string",
223
+ "name": "functionSig",
224
+ "type": "string"
225
+ }
226
+ ],
227
+ "name": "hasPermission",
228
+ "outputs": [
229
+ {
230
+ "internalType": "bool",
231
+ "name": "",
232
+ "type": "bool"
233
+ }
234
+ ],
235
+ "stateMutability": "view",
236
+ "type": "function"
237
+ },
238
+ {
239
+ "inputs": [
240
+ {
241
+ "internalType": "bytes32",
242
+ "name": "role",
243
+ "type": "bytes32"
244
+ },
245
+ {
246
+ "internalType": "address",
247
+ "name": "account",
248
+ "type": "address"
249
+ }
250
+ ],
251
+ "name": "hasRole",
252
+ "outputs": [
253
+ {
254
+ "internalType": "bool",
255
+ "name": "",
256
+ "type": "bool"
257
+ }
258
+ ],
259
+ "stateMutability": "view",
260
+ "type": "function"
261
+ },
262
+ {
263
+ "inputs": [
264
+ {
265
+ "internalType": "address",
266
+ "name": "account",
267
+ "type": "address"
268
+ },
269
+ {
270
+ "internalType": "string",
271
+ "name": "functionSig",
272
+ "type": "string"
273
+ }
274
+ ],
275
+ "name": "isAllowedToCall",
276
+ "outputs": [
277
+ {
278
+ "internalType": "bool",
279
+ "name": "",
280
+ "type": "bool"
281
+ }
282
+ ],
283
+ "stateMutability": "view",
284
+ "type": "function"
285
+ },
286
+ {
287
+ "inputs": [
288
+ {
289
+ "internalType": "bytes32",
290
+ "name": "role",
291
+ "type": "bytes32"
292
+ },
293
+ {
294
+ "internalType": "address",
295
+ "name": "account",
296
+ "type": "address"
297
+ }
298
+ ],
299
+ "name": "renounceRole",
300
+ "outputs": [],
301
+ "stateMutability": "nonpayable",
302
+ "type": "function"
303
+ },
304
+ {
305
+ "inputs": [
306
+ {
307
+ "internalType": "address",
308
+ "name": "contractAddress",
309
+ "type": "address"
310
+ },
311
+ {
312
+ "internalType": "string",
313
+ "name": "functionSig",
314
+ "type": "string"
315
+ },
316
+ {
317
+ "internalType": "address",
318
+ "name": "accountToRevoke",
319
+ "type": "address"
320
+ }
321
+ ],
322
+ "name": "revokeCallPermission",
323
+ "outputs": [],
324
+ "stateMutability": "nonpayable",
325
+ "type": "function"
326
+ },
327
+ {
328
+ "inputs": [
329
+ {
330
+ "internalType": "bytes32",
331
+ "name": "role",
332
+ "type": "bytes32"
333
+ },
334
+ {
335
+ "internalType": "address",
336
+ "name": "account",
337
+ "type": "address"
338
+ }
339
+ ],
340
+ "name": "revokeRole",
341
+ "outputs": [],
342
+ "stateMutability": "nonpayable",
343
+ "type": "function"
344
+ },
345
+ {
346
+ "inputs": [
347
+ {
348
+ "internalType": "bytes4",
349
+ "name": "interfaceId",
350
+ "type": "bytes4"
351
+ }
352
+ ],
353
+ "name": "supportsInterface",
354
+ "outputs": [
355
+ {
356
+ "internalType": "bool",
357
+ "name": "",
358
+ "type": "bool"
359
+ }
360
+ ],
361
+ "stateMutability": "view",
362
+ "type": "function"
363
+ }
364
+ ],
365
+ "bytecode": "0x608060405234801561001057600080fd5b5061001c600033610021565b6100cd565b61002b828261002f565b5050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff1661002b576000828152602081815260408083206001600160a01b03851684529091529020805460ff191660011790556100893390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b610f74806100dc6000396000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c8063545f7a321161008157806391d148541161005b57806391d148541461019b578063a217fddf146101df578063d547741f146101e757600080fd5b8063545f7a3214610162578063584f6b601461017557806382bfd0f01461018857600080fd5b8063248a9ca3116100b2578063248a9ca3146101095780632f2ff15d1461013a57806336568abe1461014f57600080fd5b806301ffc9a7146100ce57806318c5e8ab146100f6575b600080fd5b6100e16100dc366004610a6c565b6101fa565b60405190151581526020015b60405180910390f35b6100e1610104366004610b93565b610293565b61012c610117366004610be1565b60009081526020819052604090206001015490565b6040519081526020016100ed565b61014d610148366004610bfa565b610364565b005b61014d61015d366004610bfa565b61038e565b61014d610170366004610c26565b610446565b61014d610183366004610c26565b6104be565b6100e1610196366004610c84565b610528565b6100e16101a9366004610bfa565b60009182526020828152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b61012c600081565b61014d6101f5366004610bfa565b610590565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061028d57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b60008033836040516020016102a9929190610d12565b60408051601f198184030181529181528151602092830120600081815280845282812073ffffffffffffffffffffffffffffffffffffffff8916825290935291205490915060ff161561030057600191505061028d565b600083604051602001610314929190610d12565b60408051601f198184030181529181528151602092830120600081815280845282812073ffffffffffffffffffffffffffffffffffffffff8916825290935291205490915060ff16949350505050565b60008281526020819052604090206001015461037f816105b5565b61038983836105c2565b505050565b73ffffffffffffffffffffffffffffffffffffffff81163314610438576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c66000000000000000000000000000000000060648201526084015b60405180910390fd5b61044282826106b2565b5050565b6000838360405160200161045b929190610d12565b60405160208183030381529060405280519060200120905061047d8183610590565b7f55426a61e90ac7d7d1fc886b67b420ade8c8b535e68d655394bc271e3a12b8e28285856040516104b093929190610d89565b60405180910390a150505050565b600083836040516020016104d3929190610d12565b6040516020818303038152906040528051906020012090506104f58183610364565b7f69c5ce2d658fea352a2464f87ffbe1f09746c918a91da0994044c3767d641b3f8285856040516104b093929190610d89565b600080838360405160200161053e929190610d12565b60408051601f198184030181529181528151602092830120600081815280845282812073ffffffffffffffffffffffffffffffffffffffff8a16825290935291205490915060ff165b95945050505050565b6000828152602081905260409020600101546105ab816105b5565b61038983836106b2565b6105bf8133610769565b50565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff166104425760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556106543390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16156104425760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16610442576107a781610803565b6107b2836020610822565b6040516020016107c3929190610dc2565b60408051601f19818403018152908290527f08c379a000000000000000000000000000000000000000000000000000000000825261042f91600401610e43565b606061028d73ffffffffffffffffffffffffffffffffffffffff831660145b60606000610831836002610e85565b61083c906002610ec2565b67ffffffffffffffff81111561085457610854610ad7565b6040519080825280601f01601f19166020018201604052801561087e576020820181803683370190505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106108b5576108b5610eda565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061091857610918610eda565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000610954846002610e85565b61095f906001610ec2565b90505b60018111156109fc577f303132333435363738396162636465660000000000000000000000000000000085600f16601081106109a0576109a0610eda565b1a60f81b8282815181106109b6576109b6610eda565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c936109f581610f09565b9050610962565b508315610a65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161042f565b9392505050565b600060208284031215610a7e57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a6557600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ad257600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610b1757600080fd5b813567ffffffffffffffff80821115610b3257610b32610ad7565b604051601f8301601f19908116603f01168101908282118183101715610b5a57610b5a610ad7565b81604052838152866020858801011115610b7357600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610ba657600080fd5b610baf83610aae565b9150602083013567ffffffffffffffff811115610bcb57600080fd5b610bd785828601610b06565b9150509250929050565b600060208284031215610bf357600080fd5b5035919050565b60008060408385031215610c0d57600080fd5b82359150610c1d60208401610aae565b90509250929050565b600080600060608486031215610c3b57600080fd5b610c4484610aae565b9250602084013567ffffffffffffffff811115610c6057600080fd5b610c6c86828701610b06565b925050610c7b60408501610aae565b90509250925092565b600080600060608486031215610c9957600080fd5b610ca284610aae565b9250610cb060208501610aae565b9150604084013567ffffffffffffffff811115610ccc57600080fd5b610cd886828701610b06565b9150509250925092565b60005b83811015610cfd578181015183820152602001610ce5565b83811115610d0c576000848401525b50505050565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b16815260008251610d4f816014850160208701610ce2565b919091016014019392505050565b60008151808452610d75816020860160208601610ce2565b601f01601f19169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff8086168352808516602084015250606060408301526105876060830184610d5d565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610dfa816017850160208801610ce2565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351610e37816028840160208801610ce2565b01602801949350505050565b602081526000610a656020830184610d5d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610ebd57610ebd610e56565b500290565b60008219821115610ed557610ed5610e56565b500190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081610f1857610f18610e56565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea2646970667358221220d7a892a0434bcae056d02a612c403e9cefdcff174682bb0a5c05db15e26ea69764736f6c634300080d0033",
366
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100c95760003560e01c8063545f7a321161008157806391d148541161005b57806391d148541461019b578063a217fddf146101df578063d547741f146101e757600080fd5b8063545f7a3214610162578063584f6b601461017557806382bfd0f01461018857600080fd5b8063248a9ca3116100b2578063248a9ca3146101095780632f2ff15d1461013a57806336568abe1461014f57600080fd5b806301ffc9a7146100ce57806318c5e8ab146100f6575b600080fd5b6100e16100dc366004610a6c565b6101fa565b60405190151581526020015b60405180910390f35b6100e1610104366004610b93565b610293565b61012c610117366004610be1565b60009081526020819052604090206001015490565b6040519081526020016100ed565b61014d610148366004610bfa565b610364565b005b61014d61015d366004610bfa565b61038e565b61014d610170366004610c26565b610446565b61014d610183366004610c26565b6104be565b6100e1610196366004610c84565b610528565b6100e16101a9366004610bfa565b60009182526020828152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b61012c600081565b61014d6101f5366004610bfa565b610590565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061028d57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b60008033836040516020016102a9929190610d12565b60408051601f198184030181529181528151602092830120600081815280845282812073ffffffffffffffffffffffffffffffffffffffff8916825290935291205490915060ff161561030057600191505061028d565b600083604051602001610314929190610d12565b60408051601f198184030181529181528151602092830120600081815280845282812073ffffffffffffffffffffffffffffffffffffffff8916825290935291205490915060ff16949350505050565b60008281526020819052604090206001015461037f816105b5565b61038983836105c2565b505050565b73ffffffffffffffffffffffffffffffffffffffff81163314610438576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c66000000000000000000000000000000000060648201526084015b60405180910390fd5b61044282826106b2565b5050565b6000838360405160200161045b929190610d12565b60405160208183030381529060405280519060200120905061047d8183610590565b7f55426a61e90ac7d7d1fc886b67b420ade8c8b535e68d655394bc271e3a12b8e28285856040516104b093929190610d89565b60405180910390a150505050565b600083836040516020016104d3929190610d12565b6040516020818303038152906040528051906020012090506104f58183610364565b7f69c5ce2d658fea352a2464f87ffbe1f09746c918a91da0994044c3767d641b3f8285856040516104b093929190610d89565b600080838360405160200161053e929190610d12565b60408051601f198184030181529181528151602092830120600081815280845282812073ffffffffffffffffffffffffffffffffffffffff8a16825290935291205490915060ff165b95945050505050565b6000828152602081905260409020600101546105ab816105b5565b61038983836106b2565b6105bf8133610769565b50565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff166104425760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556106543390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16156104425760008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16610442576107a781610803565b6107b2836020610822565b6040516020016107c3929190610dc2565b60408051601f19818403018152908290527f08c379a000000000000000000000000000000000000000000000000000000000825261042f91600401610e43565b606061028d73ffffffffffffffffffffffffffffffffffffffff831660145b60606000610831836002610e85565b61083c906002610ec2565b67ffffffffffffffff81111561085457610854610ad7565b6040519080825280601f01601f19166020018201604052801561087e576020820181803683370190505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106108b5576108b5610eda565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061091857610918610eda565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000610954846002610e85565b61095f906001610ec2565b90505b60018111156109fc577f303132333435363738396162636465660000000000000000000000000000000085600f16601081106109a0576109a0610eda565b1a60f81b8282815181106109b6576109b6610eda565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c936109f581610f09565b9050610962565b508315610a65576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161042f565b9392505050565b600060208284031215610a7e57600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a6557600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ad257600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610b1757600080fd5b813567ffffffffffffffff80821115610b3257610b32610ad7565b604051601f8301601f19908116603f01168101908282118183101715610b5a57610b5a610ad7565b81604052838152866020858801011115610b7357600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060408385031215610ba657600080fd5b610baf83610aae565b9150602083013567ffffffffffffffff811115610bcb57600080fd5b610bd785828601610b06565b9150509250929050565b600060208284031215610bf357600080fd5b5035919050565b60008060408385031215610c0d57600080fd5b82359150610c1d60208401610aae565b90509250929050565b600080600060608486031215610c3b57600080fd5b610c4484610aae565b9250602084013567ffffffffffffffff811115610c6057600080fd5b610c6c86828701610b06565b925050610c7b60408501610aae565b90509250925092565b600080600060608486031215610c9957600080fd5b610ca284610aae565b9250610cb060208501610aae565b9150604084013567ffffffffffffffff811115610ccc57600080fd5b610cd886828701610b06565b9150509250925092565b60005b83811015610cfd578181015183820152602001610ce5565b83811115610d0c576000848401525b50505050565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008360601b16815260008251610d4f816014850160208701610ce2565b919091016014019392505050565b60008151808452610d75816020860160208601610ce2565b601f01601f19169290920160200192915050565b600073ffffffffffffffffffffffffffffffffffffffff8086168352808516602084015250606060408301526105876060830184610d5d565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351610dfa816017850160208801610ce2565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351610e37816028840160208801610ce2565b01602801949350505050565b602081526000610a656020830184610d5d565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615610ebd57610ebd610e56565b500290565b60008219821115610ed557610ed5610e56565b500190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081610f1857610f18610e56565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea2646970667358221220d7a892a0434bcae056d02a612c403e9cefdcff174682bb0a5c05db15e26ea69764736f6c634300080d0033",
367
+ "linkReferences": {},
368
+ "deployedLinkReferences": {}
369
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../../build-info/e6962244d9988e3e4bb55e591cf3b5d8.json"
4
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MockArraySorter",
4
+ "sourceName": "contracts/Test/Mocks/MockArraySorter.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint256[]",
10
+ "name": "balances",
11
+ "type": "uint256[]"
12
+ },
13
+ {
14
+ "internalType": "address[]",
15
+ "name": "addrs",
16
+ "type": "address[]"
17
+ }
18
+ ],
19
+ "name": "sortArray",
20
+ "outputs": [
21
+ {
22
+ "internalType": "address[]",
23
+ "name": "",
24
+ "type": "address[]"
25
+ },
26
+ {
27
+ "internalType": "uint256[]",
28
+ "name": "",
29
+ "type": "uint256[]"
30
+ }
31
+ ],
32
+ "stateMutability": "view",
33
+ "type": "function"
34
+ }
35
+ ],
36
+ "bytecode": "0x608060405234801561001057600080fd5b506106a5806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80637d00d18314610030575b600080fd5b61004361003e3660046103f0565b61005a565b6040516100519291906104a9565b60405180910390f35b606080610067848461006e565b5090929050565b60018251111561009257610092828260006001865161008d9190610569565b610096565b5050565b808210156102ba5760008460026100ad8486610580565b6100b79190610598565b815181106100c7576100c76105d3565b6020908102919091010151905082825b80821015610287575b828783815181106100f3576100f36105d3565b602002602001015111156101115761010a82610602565b91506100e0565b82878281518110610124576101246105d3565b602002602001015110156101425761013b8161063a565b9050610111565b868181518110610154576101546105d3565b602002602001015187838151811061016e5761016e6105d3565b602002602001015110156102775786818151811061018e5761018e6105d3565b60200260200101518783815181106101a8576101a86105d3565b60200260200101518884815181106101c2576101c26105d3565b602002602001018984815181106101db576101db6105d3565b60200260200101828152508281525050508581815181106101fe576101fe6105d3565b6020026020010151868381518110610218576102186105d3565b6020026020010151878481518110610232576102326105d3565b6020026020010188848151811061024b5761024b6105d3565b73ffffffffffffffffffffffffffffffffffffffff9384166020918202929092010152911690526100d7565b61028082610602565b91506100d7565b848111156102a0576102a087878761008d600186610569565b6102b687876102b0846001610580565b87610096565b5050505b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610336576103366102c0565b604052919050565b600067ffffffffffffffff821115610358576103586102c0565b5060051b60200190565b600082601f83011261037357600080fd5b813560206103886103838361033e565b6102ef565b82815260059290921b840181019181810190868411156103a757600080fd5b8286015b848110156103e557803573ffffffffffffffffffffffffffffffffffffffff811681146103d85760008081fd5b83529183019183016103ab565b509695505050505050565b6000806040838503121561040357600080fd5b823567ffffffffffffffff8082111561041b57600080fd5b818501915085601f83011261042f57600080fd5b8135602061043f6103838361033e565b82815260059290921b8401810191818101908984111561045e57600080fd5b948201945b8386101561047c57853582529482019490820190610463565b9650508601359250508082111561049257600080fd5b5061049f85828601610362565b9150509250929050565b604080825283519082018190526000906020906060840190828701845b828110156104f857815173ffffffffffffffffffffffffffffffffffffffff16845292840192908401906001016104c6565b5050508381038285015284518082528583019183019060005b8181101561052d57835183529284019291840191600101610511565b5090979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008282101561057b5761057b61053a565b500390565b600082198211156105935761059361053a565b500190565b6000826105ce577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106335761063361053a565b5060010190565b6000816106495761064961053a565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea26469706673582212209384e1e26218a3a80360991e47497943e528496d7e266f99354b358d4a043b1e64736f6c634300080d0033",
37
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c80637d00d18314610030575b600080fd5b61004361003e3660046103f0565b61005a565b6040516100519291906104a9565b60405180910390f35b606080610067848461006e565b5090929050565b60018251111561009257610092828260006001865161008d9190610569565b610096565b5050565b808210156102ba5760008460026100ad8486610580565b6100b79190610598565b815181106100c7576100c76105d3565b6020908102919091010151905082825b80821015610287575b828783815181106100f3576100f36105d3565b602002602001015111156101115761010a82610602565b91506100e0565b82878281518110610124576101246105d3565b602002602001015110156101425761013b8161063a565b9050610111565b868181518110610154576101546105d3565b602002602001015187838151811061016e5761016e6105d3565b602002602001015110156102775786818151811061018e5761018e6105d3565b60200260200101518783815181106101a8576101a86105d3565b60200260200101518884815181106101c2576101c26105d3565b602002602001018984815181106101db576101db6105d3565b60200260200101828152508281525050508581815181106101fe576101fe6105d3565b6020026020010151868381518110610218576102186105d3565b6020026020010151878481518110610232576102326105d3565b6020026020010188848151811061024b5761024b6105d3565b73ffffffffffffffffffffffffffffffffffffffff9384166020918202929092010152911690526100d7565b61028082610602565b91506100d7565b848111156102a0576102a087878761008d600186610569565b6102b687876102b0846001610580565b87610096565b5050505b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610336576103366102c0565b604052919050565b600067ffffffffffffffff821115610358576103586102c0565b5060051b60200190565b600082601f83011261037357600080fd5b813560206103886103838361033e565b6102ef565b82815260059290921b840181019181810190868411156103a757600080fd5b8286015b848110156103e557803573ffffffffffffffffffffffffffffffffffffffff811681146103d85760008081fd5b83529183019183016103ab565b509695505050505050565b6000806040838503121561040357600080fd5b823567ffffffffffffffff8082111561041b57600080fd5b818501915085601f83011261042f57600080fd5b8135602061043f6103838361033e565b82815260059290921b8401810191818101908984111561045e57600080fd5b948201945b8386101561047c57853582529482019490820190610463565b9650508601359250508082111561049257600080fd5b5061049f85828601610362565b9150509250929050565b604080825283519082018190526000906020906060840190828701845b828110156104f857815173ffffffffffffffffffffffffffffffffffffffff16845292840192908401906001016104c6565b5050508381038285015284518082528583019183019060005b8181101561052d57835183529284019291840191600101610511565b5090979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008282101561057b5761057b61053a565b500390565b600082198211156105935761059361053a565b500190565b6000826105ce577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036106335761063361053a565b5060010190565b6000816106495761064961053a565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea26469706673582212209384e1e26218a3a80360991e47497943e528496d7e266f99354b358d4a043b1e64736f6c634300080d0033",
38
+ "linkReferences": {},
39
+ "deployedLinkReferences": {}
40
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../../build-info/e6962244d9988e3e4bb55e591cf3b5d8.json"
4
+ }