@venusprotocol/protocol-reserve 1.1.0 → 1.2.0-converters.1

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 (295) hide show
  1. package/README.md +17 -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/d38b6776f8d2919af17221fcc74eb552.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 +16 -16
  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 +582 -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 +14 -13
  129. package/contracts/ProtocolReserve/RiskFundStorage.sol +67 -0
  130. package/contracts/ProtocolReserve/RiskFundV2.sol +220 -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 +1168 -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 +102 -0
  144. package/contracts/Utils/ArrayHelpers.sol +41 -0
  145. package/contracts/Utils/Constants.sol +8 -0
  146. package/contracts/Utils/Validators.sol +26 -0
  147. package/deployments/bscmainnet.json +2039 -0
  148. package/deployments/bscmainnet_addresses.json +10 -0
  149. package/deployments/bsctestnet/BTCBPrimeConverter.json +218 -0
  150. package/deployments/bsctestnet/ConverterNetwork.json +723 -0
  151. package/deployments/bsctestnet/ConverterNetwork_Implementation.json +823 -0
  152. package/deployments/bsctestnet/ConverterNetwork_Proxy.json +277 -0
  153. package/deployments/bsctestnet/ETHPrimeConverter.json +218 -0
  154. package/deployments/bsctestnet/ProtocolShareReserve_Implementation.json +79 -73
  155. package/deployments/bsctestnet/RiskFundConverter.json +2035 -0
  156. package/deployments/bsctestnet/RiskFundConverter_Implementation.json +2563 -0
  157. package/deployments/bsctestnet/RiskFundConverter_Proxy.json +403 -0
  158. package/deployments/bsctestnet/RiskFundV2_Implementation.json +1049 -0
  159. package/deployments/bsctestnet/SingleTokenConverterBeacon.json +206 -0
  160. package/deployments/bsctestnet/SingleTokenConverterImp.json +2164 -0
  161. package/deployments/bsctestnet/USDCPrimeConverter.json +218 -0
  162. package/deployments/bsctestnet/USDTPrimeConverter.json +218 -0
  163. package/deployments/bsctestnet/XVSVaultConverter.json +218 -0
  164. package/deployments/bsctestnet/XVSVaultTreasury.json +579 -0
  165. package/deployments/bsctestnet/XVSVaultTreasury_Implementation.json +603 -0
  166. package/deployments/bsctestnet/XVSVaultTreasury_Proxy.json +281 -0
  167. package/deployments/bsctestnet/solcInputs/5d85b28b6a601f301b9d986a9cab69e1.json +168 -0
  168. package/deployments/bsctestnet/solcInputs/ddce8674a6dbb661f5732619dd799a66.json +228 -0
  169. package/deployments/bsctestnet/solcInputs/f4de763d185e08f2949b0be700500ede.json +144 -0
  170. package/deployments/bsctestnet.json +10088 -0
  171. package/deployments/bsctestnet_addresses.json +27 -0
  172. package/deployments/ethereum.json +5 -0
  173. package/deployments/ethereum_addresses.json +5 -0
  174. package/deployments/sepolia.json +5 -0
  175. package/deployments/sepolia_addresses.json +5 -0
  176. package/dist/deploy/001-psr.d.ts +2 -0
  177. package/dist/deploy/001-psr.d.ts.map +1 -0
  178. package/dist/deploy/001-psr.js +68 -0
  179. package/dist/deploy/001-psr.js.map +1 -0
  180. package/dist/deploy/002-risk-fund-converter.d.ts +4 -0
  181. package/dist/deploy/002-risk-fund-converter.d.ts.map +1 -0
  182. package/dist/deploy/002-risk-fund-converter.js +80 -0
  183. package/dist/deploy/002-risk-fund-converter.js.map +1 -0
  184. package/dist/deploy/003-xvs-vault-teasury.d.ts +2 -0
  185. package/dist/deploy/003-xvs-vault-teasury.d.ts.map +1 -0
  186. package/dist/deploy/003-xvs-vault-teasury.js +43 -0
  187. package/dist/deploy/003-xvs-vault-teasury.js.map +1 -0
  188. package/dist/deploy/004-single-token-converter.d.ts +4 -0
  189. package/dist/deploy/004-single-token-converter.d.ts.map +1 -0
  190. package/dist/deploy/004-single-token-converter.js +62 -0
  191. package/dist/deploy/004-single-token-converter.js.map +1 -0
  192. package/dist/deploy/005-converter-network.d.ts +2 -0
  193. package/dist/deploy/005-converter-network.d.ts.map +1 -0
  194. package/dist/deploy/005-converter-network.js +41 -0
  195. package/dist/deploy/005-converter-network.js.map +1 -0
  196. package/dist/hardhat.config.d.ts +15 -0
  197. package/dist/hardhat.config.d.ts.map +1 -0
  198. package/dist/hardhat.config.js +216 -0
  199. package/dist/hardhat.config.js.map +1 -0
  200. package/package.json +23 -21
  201. package/typechain/AbstractTokenConverter.d.ts +1775 -0
  202. package/typechain/AccessControl.d.ts +388 -0
  203. package/typechain/BeaconProxy.d.ts +126 -0
  204. package/typechain/BoundValidatorInterface.d.ts +126 -0
  205. package/typechain/ConverterNetwork.d.ts +723 -0
  206. package/typechain/{PoolRegistryInterface.d.ts → ERC165.d.ts} +20 -25
  207. package/typechain/ERC1967Upgrade.d.ts +126 -0
  208. package/typechain/IAbstractTokenConverter.d.ts +773 -0
  209. package/typechain/IBeacon.d.ts +101 -0
  210. package/typechain/IComptroller.d.ts +136 -0
  211. package/typechain/IConverterNetwork.d.ts +292 -0
  212. package/typechain/IERC165.d.ts +116 -0
  213. package/typechain/{ComptrollerInterface.d.ts → IERC1822Proxiable.d.ts} +11 -11
  214. package/typechain/IERC1967.d.ts +126 -0
  215. package/typechain/IPoolRegistry.d.ts +155 -0
  216. package/typechain/IRiskFund.d.ts +200 -0
  217. package/typechain/IRiskFundConverter.d.ts +138 -0
  218. package/typechain/IRiskFundGetters.d.ts +103 -0
  219. package/typechain/IShortfall.d.ts +110 -0
  220. package/typechain/IXVSVault.d.ts +95 -0
  221. package/typechain/MaxLoopsLimitHelpersStorage.d.ts +101 -0
  222. package/typechain/MockACM.d.ts +615 -0
  223. package/typechain/MockArraySorter.d.ts +118 -0
  224. package/typechain/MockConverter.d.ts +1969 -0
  225. package/typechain/MockDeflatingToken.d.ts +486 -0
  226. package/typechain/MockRiskFundConverter.d.ts +2479 -0
  227. package/typechain/MockToken.d.ts +36 -0
  228. package/typechain/OracleInterface.d.ts +98 -0
  229. package/typechain/Ownable.d.ts +181 -0
  230. package/typechain/PausableUpgradeable.d.ts +129 -0
  231. package/typechain/ProtocolShareReserve.d.ts +6 -6
  232. package/typechain/Proxy.d.ts +78 -0
  233. package/typechain/ReserveHelpersStorage.d.ts +300 -0
  234. package/typechain/ResilientOracle.d.ts +1034 -0
  235. package/typechain/ResilientOracleInterface.d.ts +192 -0
  236. package/typechain/RiskFundConverter.d.ts +2235 -0
  237. package/typechain/RiskFundV1Storage.d.ts +353 -0
  238. package/typechain/RiskFundV2.d.ts +893 -0
  239. package/typechain/RiskFundV2Storage.d.ts +372 -0
  240. package/typechain/SingleTokenConverter.d.ts +1944 -0
  241. package/typechain/TwapInterface.d.ts +124 -0
  242. package/typechain/UpgradeableBeacon.d.ts +240 -0
  243. package/typechain/VBep20Interface.d.ts +379 -0
  244. package/typechain/XVSVaultTreasury.d.ts +515 -0
  245. package/typechain/factories/AbstractTokenConverter__factory.ts +1297 -0
  246. package/typechain/factories/AccessControl__factory.ts +227 -0
  247. package/typechain/factories/BeaconProxy__factory.ts +133 -0
  248. package/typechain/factories/BoundValidatorInterface__factory.ts +59 -0
  249. package/typechain/factories/ConverterNetwork__factory.ts +502 -0
  250. package/typechain/factories/ERC165__factory.ts +39 -0
  251. package/typechain/factories/ERC1967Upgrade__factory.ts +71 -0
  252. package/typechain/factories/IAbstractTokenConverter__factory.ts +466 -0
  253. package/typechain/factories/IBeacon__factory.ts +36 -0
  254. package/typechain/factories/IComptroller__factory.ts +68 -0
  255. package/typechain/factories/IConverterNetwork__factory.ts +142 -0
  256. package/typechain/factories/{ComptrollerInterface__factory.ts → IERC165__factory.ts} +14 -15
  257. package/typechain/factories/IERC1822Proxiable__factory.ts +39 -0
  258. package/typechain/factories/IERC1967__factory.ts +68 -0
  259. package/typechain/factories/IPoolRegistry__factory.ts +66 -0
  260. package/typechain/factories/{PoolRegistryInterface__factory.ts → IRiskFundConverter__factory.ts} +28 -19
  261. package/typechain/factories/IRiskFundGetters__factory.ts +39 -0
  262. package/typechain/factories/IRiskFund__factory.ts +89 -0
  263. package/typechain/factories/IShortfall__factory.ts +36 -0
  264. package/typechain/factories/IXVSVault__factory.ts +36 -0
  265. package/typechain/factories/MaxLoopsLimitHelpersStorage__factory.ts +75 -0
  266. package/typechain/factories/MockACM__factory.ts +411 -0
  267. package/typechain/factories/MockArraySorter__factory.ts +85 -0
  268. package/typechain/factories/MockConverter__factory.ts +1439 -0
  269. package/typechain/factories/MockDeflatingToken__factory.ts +389 -0
  270. package/typechain/factories/MockRiskFundConverter__factory.ts +1828 -0
  271. package/typechain/factories/MockToken__factory.ts +19 -1
  272. package/typechain/factories/OracleInterface__factory.ts +45 -0
  273. package/typechain/factories/Ownable__factory.ts +75 -0
  274. package/typechain/factories/PausableUpgradeable__factory.ts +78 -0
  275. package/typechain/factories/ProtocolShareReserve__factory.ts +15 -15
  276. package/typechain/factories/Proxy__factory.ts +28 -0
  277. package/typechain/factories/ReserveHelpersStorage__factory.ts +188 -0
  278. package/typechain/factories/ResilientOracleInterface__factory.ts +94 -0
  279. package/typechain/factories/ResilientOracle__factory.ts +710 -0
  280. package/typechain/factories/RiskFundConverter__factory.ts +1694 -0
  281. package/typechain/factories/RiskFundV1Storage__factory.ts +223 -0
  282. package/typechain/factories/RiskFundV2Storage__factory.ts +236 -0
  283. package/typechain/factories/RiskFundV2__factory.ts +624 -0
  284. package/typechain/factories/SingleTokenConverter__factory.ts +1441 -0
  285. package/typechain/factories/TwapInterface__factory.ts +61 -0
  286. package/typechain/factories/UpgradeableBeacon__factory.ts +163 -0
  287. package/typechain/factories/VBep20Interface__factory.ts +261 -0
  288. package/typechain/factories/XVSVaultTreasury__factory.ts +365 -0
  289. package/typechain/index.ts +84 -4
  290. package/artifacts/build-info/0bf08ffb3b10e68a2b3f4538fccc61c5.json +0 -1
  291. package/artifacts/contracts/Interfaces/ComptrollerInterface.sol/ComptrollerInterface.dbg.json +0 -4
  292. package/artifacts/contracts/Interfaces/PoolRegistryInterface.sol/PoolRegistryInterface.dbg.json +0 -4
  293. package/contracts/Interfaces/ComptrollerInterface.sol +0 -6
  294. package/contracts/Interfaces/PoolRegistryInterface.sol +0 -7
  295. package/deploy/1-deploy.ts +0 -64
@@ -0,0 +1,582 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "RiskFundV2",
4
+ "sourceName": "contracts/ProtocolReserve/RiskFundV2.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "InsufficientBalance",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [
13
+ {
14
+ "internalType": "address",
15
+ "name": "comptroller",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint256",
20
+ "name": "amount",
21
+ "type": "uint256"
22
+ },
23
+ {
24
+ "internalType": "uint256",
25
+ "name": "poolReserve",
26
+ "type": "uint256"
27
+ }
28
+ ],
29
+ "name": "InsufficientPoolReserve",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "InvalidRiskFundConverter",
35
+ "type": "error"
36
+ },
37
+ {
38
+ "inputs": [],
39
+ "name": "InvalidShortfallAddress",
40
+ "type": "error"
41
+ },
42
+ {
43
+ "inputs": [
44
+ {
45
+ "internalType": "address",
46
+ "name": "sender",
47
+ "type": "address"
48
+ },
49
+ {
50
+ "internalType": "address",
51
+ "name": "calledContract",
52
+ "type": "address"
53
+ },
54
+ {
55
+ "internalType": "string",
56
+ "name": "methodSignature",
57
+ "type": "string"
58
+ }
59
+ ],
60
+ "name": "Unauthorized",
61
+ "type": "error"
62
+ },
63
+ {
64
+ "inputs": [],
65
+ "name": "ZeroAddressNotAllowed",
66
+ "type": "error"
67
+ },
68
+ {
69
+ "inputs": [],
70
+ "name": "ZeroValueNotAllowed",
71
+ "type": "error"
72
+ },
73
+ {
74
+ "anonymous": false,
75
+ "inputs": [
76
+ {
77
+ "indexed": true,
78
+ "internalType": "address",
79
+ "name": "oldConvertibleBaseAsset",
80
+ "type": "address"
81
+ },
82
+ {
83
+ "indexed": true,
84
+ "internalType": "address",
85
+ "name": "newConvertibleBaseAsset",
86
+ "type": "address"
87
+ }
88
+ ],
89
+ "name": "ConvertibleBaseAssetUpdated",
90
+ "type": "event"
91
+ },
92
+ {
93
+ "anonymous": false,
94
+ "inputs": [
95
+ {
96
+ "indexed": false,
97
+ "internalType": "uint8",
98
+ "name": "version",
99
+ "type": "uint8"
100
+ }
101
+ ],
102
+ "name": "Initialized",
103
+ "type": "event"
104
+ },
105
+ {
106
+ "anonymous": false,
107
+ "inputs": [
108
+ {
109
+ "indexed": false,
110
+ "internalType": "address",
111
+ "name": "oldAccessControlManager",
112
+ "type": "address"
113
+ },
114
+ {
115
+ "indexed": false,
116
+ "internalType": "address",
117
+ "name": "newAccessControlManager",
118
+ "type": "address"
119
+ }
120
+ ],
121
+ "name": "NewAccessControlManager",
122
+ "type": "event"
123
+ },
124
+ {
125
+ "anonymous": false,
126
+ "inputs": [
127
+ {
128
+ "indexed": true,
129
+ "internalType": "address",
130
+ "name": "previousOwner",
131
+ "type": "address"
132
+ },
133
+ {
134
+ "indexed": true,
135
+ "internalType": "address",
136
+ "name": "newOwner",
137
+ "type": "address"
138
+ }
139
+ ],
140
+ "name": "OwnershipTransferStarted",
141
+ "type": "event"
142
+ },
143
+ {
144
+ "anonymous": false,
145
+ "inputs": [
146
+ {
147
+ "indexed": true,
148
+ "internalType": "address",
149
+ "name": "previousOwner",
150
+ "type": "address"
151
+ },
152
+ {
153
+ "indexed": true,
154
+ "internalType": "address",
155
+ "name": "newOwner",
156
+ "type": "address"
157
+ }
158
+ ],
159
+ "name": "OwnershipTransferred",
160
+ "type": "event"
161
+ },
162
+ {
163
+ "anonymous": false,
164
+ "inputs": [
165
+ {
166
+ "indexed": true,
167
+ "internalType": "address",
168
+ "name": "comptroller",
169
+ "type": "address"
170
+ },
171
+ {
172
+ "indexed": true,
173
+ "internalType": "address",
174
+ "name": "asset",
175
+ "type": "address"
176
+ },
177
+ {
178
+ "indexed": false,
179
+ "internalType": "uint256",
180
+ "name": "amount",
181
+ "type": "uint256"
182
+ }
183
+ ],
184
+ "name": "PoolAssetsDecreased",
185
+ "type": "event"
186
+ },
187
+ {
188
+ "anonymous": false,
189
+ "inputs": [
190
+ {
191
+ "indexed": true,
192
+ "internalType": "address",
193
+ "name": "comptroller",
194
+ "type": "address"
195
+ },
196
+ {
197
+ "indexed": true,
198
+ "internalType": "address",
199
+ "name": "asset",
200
+ "type": "address"
201
+ },
202
+ {
203
+ "indexed": false,
204
+ "internalType": "uint256",
205
+ "name": "amount",
206
+ "type": "uint256"
207
+ }
208
+ ],
209
+ "name": "PoolAssetsIncreased",
210
+ "type": "event"
211
+ },
212
+ {
213
+ "anonymous": false,
214
+ "inputs": [
215
+ {
216
+ "indexed": true,
217
+ "internalType": "address",
218
+ "name": "oldRiskFundConverter",
219
+ "type": "address"
220
+ },
221
+ {
222
+ "indexed": true,
223
+ "internalType": "address",
224
+ "name": "newRiskFundConverter",
225
+ "type": "address"
226
+ }
227
+ ],
228
+ "name": "RiskFundConverterUpdated",
229
+ "type": "event"
230
+ },
231
+ {
232
+ "anonymous": false,
233
+ "inputs": [
234
+ {
235
+ "indexed": true,
236
+ "internalType": "address",
237
+ "name": "oldShortfallContract",
238
+ "type": "address"
239
+ },
240
+ {
241
+ "indexed": true,
242
+ "internalType": "address",
243
+ "name": "newShortfallContract",
244
+ "type": "address"
245
+ }
246
+ ],
247
+ "name": "ShortfallContractUpdated",
248
+ "type": "event"
249
+ },
250
+ {
251
+ "anonymous": false,
252
+ "inputs": [
253
+ {
254
+ "indexed": true,
255
+ "internalType": "address",
256
+ "name": "token",
257
+ "type": "address"
258
+ },
259
+ {
260
+ "indexed": true,
261
+ "internalType": "address",
262
+ "name": "to",
263
+ "type": "address"
264
+ },
265
+ {
266
+ "indexed": false,
267
+ "internalType": "uint256",
268
+ "name": "amount",
269
+ "type": "uint256"
270
+ }
271
+ ],
272
+ "name": "SweepToken",
273
+ "type": "event"
274
+ },
275
+ {
276
+ "anonymous": false,
277
+ "inputs": [
278
+ {
279
+ "indexed": true,
280
+ "internalType": "address",
281
+ "name": "comptroller",
282
+ "type": "address"
283
+ },
284
+ {
285
+ "indexed": false,
286
+ "internalType": "uint256",
287
+ "name": "amount",
288
+ "type": "uint256"
289
+ }
290
+ ],
291
+ "name": "TransferredReserveForAuction",
292
+ "type": "event"
293
+ },
294
+ {
295
+ "inputs": [],
296
+ "name": "acceptOwnership",
297
+ "outputs": [],
298
+ "stateMutability": "nonpayable",
299
+ "type": "function"
300
+ },
301
+ {
302
+ "inputs": [],
303
+ "name": "accessControlManager",
304
+ "outputs": [
305
+ {
306
+ "internalType": "contract IAccessControlManagerV8",
307
+ "name": "",
308
+ "type": "address"
309
+ }
310
+ ],
311
+ "stateMutability": "view",
312
+ "type": "function"
313
+ },
314
+ {
315
+ "inputs": [],
316
+ "name": "convertibleBaseAsset",
317
+ "outputs": [
318
+ {
319
+ "internalType": "address",
320
+ "name": "",
321
+ "type": "address"
322
+ }
323
+ ],
324
+ "stateMutability": "view",
325
+ "type": "function"
326
+ },
327
+ {
328
+ "inputs": [
329
+ {
330
+ "internalType": "address",
331
+ "name": "comptroller",
332
+ "type": "address"
333
+ }
334
+ ],
335
+ "name": "getPoolsBaseAssetReserves",
336
+ "outputs": [
337
+ {
338
+ "internalType": "uint256",
339
+ "name": "",
340
+ "type": "uint256"
341
+ }
342
+ ],
343
+ "stateMutability": "view",
344
+ "type": "function"
345
+ },
346
+ {
347
+ "inputs": [],
348
+ "name": "maxLoopsLimit",
349
+ "outputs": [
350
+ {
351
+ "internalType": "uint256",
352
+ "name": "",
353
+ "type": "uint256"
354
+ }
355
+ ],
356
+ "stateMutability": "view",
357
+ "type": "function"
358
+ },
359
+ {
360
+ "inputs": [],
361
+ "name": "owner",
362
+ "outputs": [
363
+ {
364
+ "internalType": "address",
365
+ "name": "",
366
+ "type": "address"
367
+ }
368
+ ],
369
+ "stateMutability": "view",
370
+ "type": "function"
371
+ },
372
+ {
373
+ "inputs": [],
374
+ "name": "pendingOwner",
375
+ "outputs": [
376
+ {
377
+ "internalType": "address",
378
+ "name": "",
379
+ "type": "address"
380
+ }
381
+ ],
382
+ "stateMutability": "view",
383
+ "type": "function"
384
+ },
385
+ {
386
+ "inputs": [
387
+ {
388
+ "internalType": "address",
389
+ "name": "",
390
+ "type": "address"
391
+ },
392
+ {
393
+ "internalType": "address",
394
+ "name": "",
395
+ "type": "address"
396
+ }
397
+ ],
398
+ "name": "poolAssetsFunds",
399
+ "outputs": [
400
+ {
401
+ "internalType": "uint256",
402
+ "name": "",
403
+ "type": "uint256"
404
+ }
405
+ ],
406
+ "stateMutability": "view",
407
+ "type": "function"
408
+ },
409
+ {
410
+ "inputs": [],
411
+ "name": "renounceOwnership",
412
+ "outputs": [],
413
+ "stateMutability": "nonpayable",
414
+ "type": "function"
415
+ },
416
+ {
417
+ "inputs": [],
418
+ "name": "riskFundConverter",
419
+ "outputs": [
420
+ {
421
+ "internalType": "address",
422
+ "name": "",
423
+ "type": "address"
424
+ }
425
+ ],
426
+ "stateMutability": "view",
427
+ "type": "function"
428
+ },
429
+ {
430
+ "inputs": [
431
+ {
432
+ "internalType": "address",
433
+ "name": "accessControlManager_",
434
+ "type": "address"
435
+ }
436
+ ],
437
+ "name": "setAccessControlManager",
438
+ "outputs": [],
439
+ "stateMutability": "nonpayable",
440
+ "type": "function"
441
+ },
442
+ {
443
+ "inputs": [
444
+ {
445
+ "internalType": "address",
446
+ "name": "convertibleBaseAsset_",
447
+ "type": "address"
448
+ }
449
+ ],
450
+ "name": "setConvertibleBaseAsset",
451
+ "outputs": [],
452
+ "stateMutability": "nonpayable",
453
+ "type": "function"
454
+ },
455
+ {
456
+ "inputs": [
457
+ {
458
+ "internalType": "address",
459
+ "name": "riskFundConverter_",
460
+ "type": "address"
461
+ }
462
+ ],
463
+ "name": "setRiskFundConverter",
464
+ "outputs": [],
465
+ "stateMutability": "nonpayable",
466
+ "type": "function"
467
+ },
468
+ {
469
+ "inputs": [
470
+ {
471
+ "internalType": "address",
472
+ "name": "shortfallContractAddress_",
473
+ "type": "address"
474
+ }
475
+ ],
476
+ "name": "setShortfallContractAddress",
477
+ "outputs": [],
478
+ "stateMutability": "nonpayable",
479
+ "type": "function"
480
+ },
481
+ {
482
+ "inputs": [],
483
+ "name": "shortfall",
484
+ "outputs": [
485
+ {
486
+ "internalType": "address",
487
+ "name": "",
488
+ "type": "address"
489
+ }
490
+ ],
491
+ "stateMutability": "view",
492
+ "type": "function"
493
+ },
494
+ {
495
+ "inputs": [
496
+ {
497
+ "internalType": "address",
498
+ "name": "tokenAddress",
499
+ "type": "address"
500
+ },
501
+ {
502
+ "internalType": "address",
503
+ "name": "to",
504
+ "type": "address"
505
+ },
506
+ {
507
+ "internalType": "uint256",
508
+ "name": "amount",
509
+ "type": "uint256"
510
+ }
511
+ ],
512
+ "name": "sweepToken",
513
+ "outputs": [],
514
+ "stateMutability": "nonpayable",
515
+ "type": "function"
516
+ },
517
+ {
518
+ "inputs": [
519
+ {
520
+ "internalType": "address",
521
+ "name": "newOwner",
522
+ "type": "address"
523
+ }
524
+ ],
525
+ "name": "transferOwnership",
526
+ "outputs": [],
527
+ "stateMutability": "nonpayable",
528
+ "type": "function"
529
+ },
530
+ {
531
+ "inputs": [
532
+ {
533
+ "internalType": "address",
534
+ "name": "comptroller",
535
+ "type": "address"
536
+ },
537
+ {
538
+ "internalType": "uint256",
539
+ "name": "amount",
540
+ "type": "uint256"
541
+ }
542
+ ],
543
+ "name": "transferReserveForAuction",
544
+ "outputs": [
545
+ {
546
+ "internalType": "uint256",
547
+ "name": "",
548
+ "type": "uint256"
549
+ }
550
+ ],
551
+ "stateMutability": "nonpayable",
552
+ "type": "function"
553
+ },
554
+ {
555
+ "inputs": [
556
+ {
557
+ "internalType": "address",
558
+ "name": "comptroller",
559
+ "type": "address"
560
+ },
561
+ {
562
+ "internalType": "address",
563
+ "name": "asset",
564
+ "type": "address"
565
+ },
566
+ {
567
+ "internalType": "uint256",
568
+ "name": "amount",
569
+ "type": "uint256"
570
+ }
571
+ ],
572
+ "name": "updatePoolState",
573
+ "outputs": [],
574
+ "stateMutability": "nonpayable",
575
+ "type": "function"
576
+ }
577
+ ],
578
+ "bytecode": "0x608060405234801561001057600080fd5b5061178c806100206000396000f3fe608060405234801561001057600080fd5b50600436106101515760003560e01c8063715018a6116100cd578063b4a0bdf311610081578063c8ecc0d311610066578063c8ecc0d3146102d1578063e30c3978146102e5578063f2fde38b146102f657600080fd5b8063b4a0bdf3146102b7578063be26317e146102c857600080fd5b806379ba5097116100b257806379ba5097146102635780638da5cb5b1461026b578063a69bd19e1461027c57600080fd5b8063715018a61461024857806377d4937f1461025057600080fd5b80632eef9172116101245780635dbe3533116101095780635dbe3533146101f7578063601bb5a91461022257806364aff9ec1461023557600080fd5b80632eef9172146101d057806353ac3537146101e457600080fd5b80630a9837c5146101565780630e32cb861461017c57806319b1faef146101915780632e688141146101bd575b600080fd5b61016961016436600461138d565b610309565b6040519081526020015b60405180910390f35b61018f61018a3660046113b9565b610468565b005b61012e546101a5906001600160a01b031681565b6040516001600160a01b039091168152602001610173565b61018f6101cb3660046113b9565b61047c565b610163546101a5906001600160a01b031681565b61018f6101f23660046113dd565b610503565b61016961020536600461141e565b60ca60209081526000928352604080842090915290825290205481565b61018f6102303660046113b9565b6105d8565b61018f6102433660046113dd565b61065f565b61018f610707565b61018f61025e3660046113b9565b61071b565b61018f6107a2565b6033546001600160a01b03166101a5565b61016961028a3660046113b9565b6001600160a01b03908116600090815260ca6020908152604080832061012d549094168352929052205490565b6097546001600160a01b03166101a5565b61016960fb5481565b61012d546101a5906001600160a01b031681565b6065546001600160a01b03166101a5565b61018f6103043660046113b9565b610847565b60006103136108d0565b6001600160a01b03838116600090815260ca6020908152604080832061012d548516845290915290205461012e54909116331461037c576040517fe7792c3b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808311156103d4576040517f5f1b50b80000000000000000000000000000000000000000000000000000000081526001600160a01b038516600482015260248101849052604481018290526064015b60405180910390fd5b6001600160a01b03808516600090815260ca6020908152604080832061012d8054861685529252909120858403905561012e54905461041892908116911685610945565b836001600160a01b03167fc8d0a37ed16dfaa43514df00e18f478b60d5cc7b4bfc687103948b9020f737fd8460405161045391815260200190565b60405180910390a25050600161013155919050565b6104706109c5565b61047981610a39565b50565b6104846109c5565b61048d81610b48565b61012d546040516001600160a01b038084169216907f5fa61583da12070720613fefdd68cc6c0e464a71e009742526bd2b2e0ac62cd290600090a361012d80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b610163546001600160a01b03163314610548576040517fece95bc800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03808416600090815260ca602090815260408083209386168352929052908120805483929061057f908490611486565b92505081905550816001600160a01b0316836001600160a01b03167f17452316fd883c456b01c6722a103031ccd3cf17a1dabdbf96cd1109652d6110836040516105cb91815260200190565b60405180910390a3505050565b6105e06109c5565b6105e981610b48565b610163546040516001600160a01b038084169216907f49ca267ed5631dd7b16589efad418137b8fb106674777fc37d2cb82e853dbd2790600090a361016380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6106676109c5565b61066f6108d0565b61067883610b48565b61068182610b48565b61068a81610b88565b826106958183610bc2565b6106a96001600160a01b0382168484610945565b826001600160a01b0316846001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5846040516106ee91815260200190565b60405180910390a350610702600161013155565b505050565b61070f6109c5565b6107196000610fe6565b565b6107236109c5565b61072c81610b48565b61012e546040516001600160a01b038084169216907fb6e5fcf02f7fbb8acfbaa3bac4fd5abf9ff51e3f2e8884b5498927179b211b2890600090a361012e80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60655433906001600160a01b0316811461083e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084016103cb565b61047981610fe6565b61084f6109c5565b606580546001600160a01b0383167fffffffffffffffffffffffff000000000000000000000000000000000000000090911681179091556108986033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6002610131540361093d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103cb565b600261013155565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610702908490611017565b6033546001600160a01b03163314610719576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103cb565b6001600160a01b038116610acf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f696e76616c696420616365737320636f6e74726f6c206d616e6167657220616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016103cb565b609780546001600160a01b038381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa0910160405180910390a15050565b6001600160a01b038116610479576040517f8579befe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600003610479576040517f9cf8540c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c46919061149e565b905080821115610c82576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610163546040517f5c39f4670000000000000000000000000000000000000000000000000000000081526001600160a01b0385811660048301526000921690635c39f46790602401600060405180830381865afa158015610ce7573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d2d91908101906114f6565b8051909150600090815b81811015610db65760ca6000858381518110610d5557610d556115d9565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000205483610dac9190611486565b9250600101610d37565b506000610dc38386611608565b905085811015610fdd578086036000805b84811015610fd95760ca6000888381518110610df257610df26115d9565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008b6001600160a01b03166001600160a01b0316815260200190815260200160002054600014610fd1576000610e52600187611608565b821015610ee457868a60ca60008b8681518110610e7157610e716115d9565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008e6001600160a01b03166001600160a01b0316815260200190815260200160002054610ec7919061161f565b610ed1919061165c565b9050610edd8184611486565b9250610ef1565b610eee8385611608565b90505b8060ca60008a8581518110610f0857610f086115d9565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008d6001600160a01b03166001600160a01b031681526020019081526020016000206000828254610f629190611608565b925050819055508a6001600160a01b0316888381518110610f8557610f856115d9565b60200260200101516001600160a01b03167fdfbd88fdb255ea04a0084e45259969bdf724b3fbd610a114da4a0dd51bd8432083604051610fc791815260200190565b60405180910390a3505b600101610dd4565b5050505b50505050505050565b606580547fffffffffffffffffffffffff000000000000000000000000000000000000000016905561047981611119565b600061106c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166111839092919063ffffffff16565b905080516000148061108d57508080602001905181019061108d9190611697565b610702576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016103cb565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6060611192848460008561119a565b949350505050565b60608247101561122c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016103cb565b600080866001600160a01b0316858760405161124891906116e9565b60006040518083038185875af1925050503d8060008114611285576040519150601f19603f3d011682016040523d82523d6000602084013e61128a565b606091505b509150915061129b878383876112a6565b979650505050505050565b6060831561132f578251600003611328576001600160a01b0385163b611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016103cb565b5081611192565b61119283838151156113445781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103cb9190611705565b6001600160a01b038116811461047957600080fd5b600080604083850312156113a057600080fd5b82356113ab81611378565b946020939093013593505050565b6000602082840312156113cb57600080fd5b81356113d681611378565b9392505050565b6000806000606084860312156113f257600080fd5b83356113fd81611378565b9250602084013561140d81611378565b929592945050506040919091013590565b6000806040838503121561143157600080fd5b823561143c81611378565b9150602083013561144c81611378565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000821982111561149957611499611457565b500190565b6000602082840312156114b057600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b80516114f181611378565b919050565b6000602080838503121561150957600080fd5b825167ffffffffffffffff8082111561152157600080fd5b818501915085601f83011261153557600080fd5b815181811115611547576115476114b7565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110858211171561158a5761158a6114b7565b6040529182528482019250838101850191888311156115a857600080fd5b938501935b828510156115cd576115be856114e6565b845293850193928501926115ad565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008282101561161a5761161a611457565b500390565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561165757611657611457565b500290565b600082611692577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b6000602082840312156116a957600080fd5b815180151581146113d657600080fd5b60005b838110156116d45781810151838201526020016116bc565b838111156116e3576000848401525b50505050565b600082516116fb8184602087016116b9565b9190910192915050565b60208152600082518060208401526117248160408501602087016116b9565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fea26469706673582212204e8c16e16a4e758094765b6f7e03373e6d3bebe00f6e73bdbf142e66b5b0583a64736f6c634300080d0033",
579
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101515760003560e01c8063715018a6116100cd578063b4a0bdf311610081578063c8ecc0d311610066578063c8ecc0d3146102d1578063e30c3978146102e5578063f2fde38b146102f657600080fd5b8063b4a0bdf3146102b7578063be26317e146102c857600080fd5b806379ba5097116100b257806379ba5097146102635780638da5cb5b1461026b578063a69bd19e1461027c57600080fd5b8063715018a61461024857806377d4937f1461025057600080fd5b80632eef9172116101245780635dbe3533116101095780635dbe3533146101f7578063601bb5a91461022257806364aff9ec1461023557600080fd5b80632eef9172146101d057806353ac3537146101e457600080fd5b80630a9837c5146101565780630e32cb861461017c57806319b1faef146101915780632e688141146101bd575b600080fd5b61016961016436600461138d565b610309565b6040519081526020015b60405180910390f35b61018f61018a3660046113b9565b610468565b005b61012e546101a5906001600160a01b031681565b6040516001600160a01b039091168152602001610173565b61018f6101cb3660046113b9565b61047c565b610163546101a5906001600160a01b031681565b61018f6101f23660046113dd565b610503565b61016961020536600461141e565b60ca60209081526000928352604080842090915290825290205481565b61018f6102303660046113b9565b6105d8565b61018f6102433660046113dd565b61065f565b61018f610707565b61018f61025e3660046113b9565b61071b565b61018f6107a2565b6033546001600160a01b03166101a5565b61016961028a3660046113b9565b6001600160a01b03908116600090815260ca6020908152604080832061012d549094168352929052205490565b6097546001600160a01b03166101a5565b61016960fb5481565b61012d546101a5906001600160a01b031681565b6065546001600160a01b03166101a5565b61018f6103043660046113b9565b610847565b60006103136108d0565b6001600160a01b03838116600090815260ca6020908152604080832061012d548516845290915290205461012e54909116331461037c576040517fe7792c3b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808311156103d4576040517f5f1b50b80000000000000000000000000000000000000000000000000000000081526001600160a01b038516600482015260248101849052604481018290526064015b60405180910390fd5b6001600160a01b03808516600090815260ca6020908152604080832061012d8054861685529252909120858403905561012e54905461041892908116911685610945565b836001600160a01b03167fc8d0a37ed16dfaa43514df00e18f478b60d5cc7b4bfc687103948b9020f737fd8460405161045391815260200190565b60405180910390a25050600161013155919050565b6104706109c5565b61047981610a39565b50565b6104846109c5565b61048d81610b48565b61012d546040516001600160a01b038084169216907f5fa61583da12070720613fefdd68cc6c0e464a71e009742526bd2b2e0ac62cd290600090a361012d80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b610163546001600160a01b03163314610548576040517fece95bc800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b03808416600090815260ca602090815260408083209386168352929052908120805483929061057f908490611486565b92505081905550816001600160a01b0316836001600160a01b03167f17452316fd883c456b01c6722a103031ccd3cf17a1dabdbf96cd1109652d6110836040516105cb91815260200190565b60405180910390a3505050565b6105e06109c5565b6105e981610b48565b610163546040516001600160a01b038084169216907f49ca267ed5631dd7b16589efad418137b8fb106674777fc37d2cb82e853dbd2790600090a361016380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6106676109c5565b61066f6108d0565b61067883610b48565b61068182610b48565b61068a81610b88565b826106958183610bc2565b6106a96001600160a01b0382168484610945565b826001600160a01b0316846001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5846040516106ee91815260200190565b60405180910390a350610702600161013155565b505050565b61070f6109c5565b6107196000610fe6565b565b6107236109c5565b61072c81610b48565b61012e546040516001600160a01b038084169216907fb6e5fcf02f7fbb8acfbaa3bac4fd5abf9ff51e3f2e8884b5498927179b211b2890600090a361012e80547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60655433906001600160a01b0316811461083e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f74207468652060448201527f6e6577206f776e6572000000000000000000000000000000000000000000000060648201526084016103cb565b61047981610fe6565b61084f6109c5565b606580546001600160a01b0383167fffffffffffffffffffffffff000000000000000000000000000000000000000090911681179091556108986033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6002610131540361093d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016103cb565b600261013155565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052610702908490611017565b6033546001600160a01b03163314610719576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016103cb565b6001600160a01b038116610acf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602560248201527f696e76616c696420616365737320636f6e74726f6c206d616e6167657220616460448201527f647265737300000000000000000000000000000000000000000000000000000060648201526084016103cb565b609780546001600160a01b038381167fffffffffffffffffffffffff000000000000000000000000000000000000000083168117909355604080519190921680825260208201939093527f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa0910160405180910390a15050565b6001600160a01b038116610479576040517f8579befe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600003610479576040517f9cf8540c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f70a082310000000000000000000000000000000000000000000000000000000081523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015610c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c46919061149e565b905080821115610c82576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610163546040517f5c39f4670000000000000000000000000000000000000000000000000000000081526001600160a01b0385811660048301526000921690635c39f46790602401600060405180830381865afa158015610ce7573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052610d2d91908101906114f6565b8051909150600090815b81811015610db65760ca6000858381518110610d5557610d556115d9565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000886001600160a01b03166001600160a01b031681526020019081526020016000205483610dac9190611486565b9250600101610d37565b506000610dc38386611608565b905085811015610fdd578086036000805b84811015610fd95760ca6000888381518110610df257610df26115d9565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008b6001600160a01b03166001600160a01b0316815260200190815260200160002054600014610fd1576000610e52600187611608565b821015610ee457868a60ca60008b8681518110610e7157610e716115d9565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008e6001600160a01b03166001600160a01b0316815260200190815260200160002054610ec7919061161f565b610ed1919061165c565b9050610edd8184611486565b9250610ef1565b610eee8385611608565b90505b8060ca60008a8581518110610f0857610f086115d9565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008d6001600160a01b03166001600160a01b031681526020019081526020016000206000828254610f629190611608565b925050819055508a6001600160a01b0316888381518110610f8557610f856115d9565b60200260200101516001600160a01b03167fdfbd88fdb255ea04a0084e45259969bdf724b3fbd610a114da4a0dd51bd8432083604051610fc791815260200190565b60405180910390a3505b600101610dd4565b5050505b50505050505050565b606580547fffffffffffffffffffffffff000000000000000000000000000000000000000016905561047981611119565b600061106c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166111839092919063ffffffff16565b905080516000148061108d57508080602001905181019061108d9190611697565b610702576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016103cb565b603380546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6060611192848460008561119a565b949350505050565b60608247101561122c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016103cb565b600080866001600160a01b0316858760405161124891906116e9565b60006040518083038185875af1925050503d8060008114611285576040519150601f19603f3d011682016040523d82523d6000602084013e61128a565b606091505b509150915061129b878383876112a6565b979650505050505050565b6060831561132f578251600003611328576001600160a01b0385163b611328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016103cb565b5081611192565b61119283838151156113445781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103cb9190611705565b6001600160a01b038116811461047957600080fd5b600080604083850312156113a057600080fd5b82356113ab81611378565b946020939093013593505050565b6000602082840312156113cb57600080fd5b81356113d681611378565b9392505050565b6000806000606084860312156113f257600080fd5b83356113fd81611378565b9250602084013561140d81611378565b929592945050506040919091013590565b6000806040838503121561143157600080fd5b823561143c81611378565b9150602083013561144c81611378565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000821982111561149957611499611457565b500190565b6000602082840312156114b057600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b80516114f181611378565b919050565b6000602080838503121561150957600080fd5b825167ffffffffffffffff8082111561152157600080fd5b818501915085601f83011261153557600080fd5b815181811115611547576115476114b7565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f8301168101818110858211171561158a5761158a6114b7565b6040529182528482019250838101850191888311156115a857600080fd5b938501935b828510156115cd576115be856114e6565b845293850193928501926115ad565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008282101561161a5761161a611457565b500390565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561165757611657611457565b500290565b600082611692577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b6000602082840312156116a957600080fd5b815180151581146113d657600080fd5b60005b838110156116d45781810151838201526020016116bc565b838111156116e3576000848401525b50505050565b600082516116fb8184602087016116b9565b9190910192915050565b60208152600082518060208401526117248160408501602087016116b9565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fea26469706673582212204e8c16e16a4e758094765b6f7e03373e6d3bebe00f6e73bdbf142e66b5b0583a64736f6c634300080d0033",
580
+ "linkReferences": {},
581
+ "deployedLinkReferences": {}
582
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/d38b6776f8d2919af17221fcc74eb552.json"
4
+ }