@venusprotocol/isolated-pools 1.0.0-dev.5 → 1.0.0-dev.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (201) hide show
  1. package/contracts/Comptroller.sol +1 -1
  2. package/contracts/ExponentialNoError.sol +0 -7
  3. package/package.json +1 -1
  4. package/artifacts/@openzeppelin/contracts/access/AccessControl.sol/AccessControl.dbg.json +0 -4
  5. package/artifacts/@openzeppelin/contracts/access/AccessControl.sol/AccessControl.json +0 -215
  6. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +0 -4
  7. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.json +0 -183
  8. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +0 -4
  9. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.json +0 -63
  10. package/artifacts/@openzeppelin/contracts/interfaces/IERC1967.sol/IERC1967.dbg.json +0 -4
  11. package/artifacts/@openzeppelin/contracts/interfaces/IERC1967.sol/IERC1967.json +0 -56
  12. package/artifacts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +0 -4
  13. package/artifacts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.json +0 -24
  14. package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +0 -4
  15. package/artifacts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.json +0 -56
  16. package/artifacts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +0 -4
  17. package/artifacts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.json +0 -19
  18. package/artifacts/@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol/BeaconProxy.dbg.json +0 -4
  19. package/artifacts/@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol/BeaconProxy.json +0 -80
  20. package/artifacts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +0 -4
  21. package/artifacts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.json +0 -24
  22. package/artifacts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +0 -4
  23. package/artifacts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.json +0 -113
  24. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +0 -4
  25. package/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +0 -297
  26. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +0 -4
  27. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.json +0 -194
  28. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +0 -4
  29. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.json +0 -233
  30. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +0 -4
  31. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.json +0 -10
  32. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +0 -4
  33. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.json +0 -10
  34. package/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +0 -4
  35. package/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +0 -10
  36. package/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +0 -4
  37. package/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +0 -10
  38. package/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.dbg.json +0 -4
  39. package/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.json +0 -30
  40. package/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.dbg.json +0 -4
  41. package/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.json +0 -30
  42. package/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.dbg.json +0 -4
  43. package/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.json +0 -10
  44. package/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.dbg.json +0 -4
  45. package/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.json +0 -10
  46. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +0 -4
  47. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.json +0 -115
  48. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +0 -4
  49. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.json +0 -76
  50. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +0 -4
  51. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.json +0 -24
  52. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +0 -4
  53. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.json +0 -24
  54. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +0 -4
  55. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.json +0 -194
  56. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +0 -4
  57. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.json +0 -86
  58. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +0 -4
  59. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.json +0 -10
  60. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +0 -4
  61. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.json +0 -10
  62. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +0 -4
  63. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.json +0 -24
  64. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlManager.sol/AccessControlManager.dbg.json +0 -4
  65. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlManager.sol/AccessControlManager.json +0 -369
  66. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.dbg.json +0 -4
  67. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.json +0 -181
  68. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.dbg.json +0 -4
  69. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.json +0 -282
  70. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.dbg.json +0 -4
  71. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.json +0 -40
  72. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.dbg.json +0 -4
  73. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.json +0 -30
  74. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.dbg.json +0 -4
  75. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.json +0 -43
  76. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.dbg.json +0 -4
  77. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.json +0 -49
  78. package/artifacts/build-info/9b8ff982dc5e6ff902ae9e610da49601.json +0 -1
  79. package/artifacts/build-info/f19d689bc99e63a20dd2a17a14e2b84a.json +0 -1
  80. package/artifacts/contracts/BaseJumpRateModelV2.sol/BaseJumpRateModelV2.dbg.json +0 -4
  81. package/artifacts/contracts/BaseJumpRateModelV2.sol/BaseJumpRateModelV2.json +0 -276
  82. package/artifacts/contracts/Comptroller.sol/Comptroller.dbg.json +0 -4
  83. package/artifacts/contracts/Comptroller.sol/Comptroller.json +0 -1667
  84. package/artifacts/contracts/ComptrollerInterface.sol/ComptrollerInterface.dbg.json +0 -4
  85. package/artifacts/contracts/ComptrollerInterface.sol/ComptrollerInterface.json +0 -285
  86. package/artifacts/contracts/ComptrollerInterface.sol/ComptrollerViewInterface.dbg.json +0 -4
  87. package/artifacts/contracts/ComptrollerInterface.sol/ComptrollerViewInterface.json +0 -170
  88. package/artifacts/contracts/ComptrollerStorage.sol/ComptrollerStorage.dbg.json +0 -4
  89. package/artifacts/contracts/ComptrollerStorage.sol/ComptrollerStorage.json +0 -173
  90. package/artifacts/contracts/ErrorReporter.sol/TokenErrorReporter.dbg.json +0 -4
  91. package/artifacts/contracts/ErrorReporter.sol/TokenErrorReporter.json +0 -156
  92. package/artifacts/contracts/ExponentialNoError.sol/ExponentialNoError.dbg.json +0 -4
  93. package/artifacts/contracts/ExponentialNoError.sol/ExponentialNoError.json +0 -10
  94. package/artifacts/contracts/Factories/JumpRateModelFactory.sol/JumpRateModelFactory.dbg.json +0 -4
  95. package/artifacts/contracts/Factories/JumpRateModelFactory.sol/JumpRateModelFactory.json +0 -50
  96. package/artifacts/contracts/Factories/VTokenProxyFactory.sol/VTokenProxyFactory.dbg.json +0 -4
  97. package/artifacts/contracts/Factories/VTokenProxyFactory.sol/VTokenProxyFactory.json +0 -191
  98. package/artifacts/contracts/Factories/WhitePaperInterestRateModelFactory.sol/WhitePaperInterestRateModelFactory.dbg.json +0 -4
  99. package/artifacts/contracts/Factories/WhitePaperInterestRateModelFactory.sol/WhitePaperInterestRateModelFactory.json +0 -35
  100. package/artifacts/contracts/IPancakeswapV2Router.sol/IPancakeswapV2Router.dbg.json +0 -4
  101. package/artifacts/contracts/IPancakeswapV2Router.sol/IPancakeswapV2Router.json +0 -50
  102. package/artifacts/contracts/InterestRateModel.sol/InterestRateModel.dbg.json +0 -4
  103. package/artifacts/contracts/InterestRateModel.sol/InterestRateModel.json +0 -97
  104. package/artifacts/contracts/JumpRateModelV2.sol/JumpRateModelV2.dbg.json +0 -4
  105. package/artifacts/contracts/JumpRateModelV2.sol/JumpRateModelV2.json +0 -307
  106. package/artifacts/contracts/Lens/PoolLens.sol/PoolLens.dbg.json +0 -4
  107. package/artifacts/contracts/Lens/PoolLens.sol/PoolLens.json +0 -1087
  108. package/artifacts/contracts/MaxLoopsLimitHelper.sol/MaxLoopsLimitHelper.dbg.json +0 -4
  109. package/artifacts/contracts/MaxLoopsLimitHelper.sol/MaxLoopsLimitHelper.json +0 -59
  110. package/artifacts/contracts/Pool/PoolRegistry.sol/PoolRegistry.dbg.json +0 -4
  111. package/artifacts/contracts/Pool/PoolRegistry.sol/PoolRegistry.json +0 -923
  112. package/artifacts/contracts/Pool/PoolRegistryInterface.sol/PoolRegistryInterface.dbg.json +0 -4
  113. package/artifacts/contracts/Pool/PoolRegistryInterface.sol/PoolRegistryInterface.json +0 -176
  114. package/artifacts/contracts/Proxy/UpgradeableBeacon.sol/Beacon.dbg.json +0 -4
  115. package/artifacts/contracts/Proxy/UpgradeableBeacon.sol/Beacon.json +0 -113
  116. package/artifacts/contracts/Rewards/RewardsDistributor.sol/RewardsDistributor.dbg.json +0 -4
  117. package/artifacts/contracts/Rewards/RewardsDistributor.sol/RewardsDistributor.json +0 -928
  118. package/artifacts/contracts/RiskFund/IProtocolShareReserve.sol/IProtocolShareReserve.dbg.json +0 -4
  119. package/artifacts/contracts/RiskFund/IProtocolShareReserve.sol/IProtocolShareReserve.json +0 -29
  120. package/artifacts/contracts/RiskFund/IRiskFund.sol/IRiskFund.dbg.json +0 -4
  121. package/artifacts/contracts/RiskFund/IRiskFund.sol/IRiskFund.json +0 -101
  122. package/artifacts/contracts/RiskFund/ProtocolShareReserve.sol/ProtocolShareReserve.dbg.json +0 -4
  123. package/artifacts/contracts/RiskFund/ProtocolShareReserve.sol/ProtocolShareReserve.json +0 -296
  124. package/artifacts/contracts/RiskFund/ReserveHelpers.sol/ReserveHelpers.dbg.json +0 -4
  125. package/artifacts/contracts/RiskFund/ReserveHelpers.sol/ReserveHelpers.json +0 -83
  126. package/artifacts/contracts/RiskFund/RiskFund.sol/RiskFund.dbg.json +0 -4
  127. package/artifacts/contracts/RiskFund/RiskFund.sol/RiskFund.json +0 -615
  128. package/artifacts/contracts/Shortfall/IShortfall.sol/IShortfall.dbg.json +0 -4
  129. package/artifacts/contracts/Shortfall/IShortfall.sol/IShortfall.json +0 -24
  130. package/artifacts/contracts/Shortfall/Shortfall.sol/Shortfall.dbg.json +0 -4
  131. package/artifacts/contracts/Shortfall/Shortfall.sol/Shortfall.json +0 -756
  132. package/artifacts/contracts/VToken.sol/VToken.dbg.json +0 -4
  133. package/artifacts/contracts/VToken.sol/VToken.json +0 -1850
  134. package/artifacts/contracts/VTokenInterfaces.sol/VTokenInterface.dbg.json +0 -4
  135. package/artifacts/contracts/VTokenInterfaces.sol/VTokenInterface.json +0 -1398
  136. package/artifacts/contracts/VTokenInterfaces.sol/VTokenStorage.dbg.json +0 -4
  137. package/artifacts/contracts/VTokenInterfaces.sol/VTokenStorage.json +0 -219
  138. package/artifacts/contracts/WhitePaperInterestRateModel.sol/WhitePaperInterestRateModel.dbg.json +0 -4
  139. package/artifacts/contracts/WhitePaperInterestRateModel.sol/WhitePaperInterestRateModel.json +0 -192
  140. package/artifacts/contracts/test/ComptrollerHarness.sol/ComptrollerHarness.dbg.json +0 -4
  141. package/artifacts/contracts/test/ComptrollerHarness.sol/ComptrollerHarness.json +0 -1712
  142. package/artifacts/contracts/test/ComptrollerHarness.sol/EchoTypesComptroller.dbg.json +0 -4
  143. package/artifacts/contracts/test/ComptrollerHarness.sol/EchoTypesComptroller.json +0 -94
  144. package/artifacts/contracts/test/ComptrollerScenario.sol/ComptrollerScenario.dbg.json +0 -4
  145. package/artifacts/contracts/test/ComptrollerScenario.sol/ComptrollerScenario.json +0 -1744
  146. package/artifacts/contracts/test/ERC20.sol/ERC20.dbg.json +0 -4
  147. package/artifacts/contracts/test/ERC20.sol/ERC20.json +0 -194
  148. package/artifacts/contracts/test/ERC20.sol/ERC20Base.dbg.json +0 -4
  149. package/artifacts/contracts/test/ERC20.sol/ERC20Base.json +0 -141
  150. package/artifacts/contracts/test/ERC20.sol/ERC20Harness.dbg.json +0 -4
  151. package/artifacts/contracts/test/ERC20.sol/ERC20Harness.json +0 -351
  152. package/artifacts/contracts/test/ERC20.sol/ERC20NS.dbg.json +0 -4
  153. package/artifacts/contracts/test/ERC20.sol/ERC20NS.json +0 -182
  154. package/artifacts/contracts/test/ERC20.sol/NonStandardToken.dbg.json +0 -4
  155. package/artifacts/contracts/test/ERC20.sol/NonStandardToken.json +0 -247
  156. package/artifacts/contracts/test/ERC20.sol/StandardToken.dbg.json +0 -4
  157. package/artifacts/contracts/test/ERC20.sol/StandardToken.json +0 -259
  158. package/artifacts/contracts/test/EvilToken.sol/EvilToken.dbg.json +0 -4
  159. package/artifacts/contracts/test/EvilToken.sol/EvilToken.json +0 -303
  160. package/artifacts/contracts/test/FaucetToken.sol/FaucetNonStandardToken.dbg.json +0 -4
  161. package/artifacts/contracts/test/FaucetToken.sol/FaucetNonStandardToken.json +0 -265
  162. package/artifacts/contracts/test/FaucetToken.sol/FaucetToken.dbg.json +0 -4
  163. package/artifacts/contracts/test/FaucetToken.sol/FaucetToken.json +0 -277
  164. package/artifacts/contracts/test/FaucetToken.sol/FaucetTokenReEntrantHarness.dbg.json +0 -4
  165. package/artifacts/contracts/test/FaucetToken.sol/FaucetTokenReEntrantHarness.json +0 -313
  166. package/artifacts/contracts/test/FeeToken.sol/FeeToken.dbg.json +0 -4
  167. package/artifacts/contracts/test/FeeToken.sol/FeeToken.json +0 -313
  168. package/artifacts/contracts/test/HarnessMaxLoopsLimitHelper.sol/HarnessMaxLoopsLimitHelper.dbg.json +0 -4
  169. package/artifacts/contracts/test/HarnessMaxLoopsLimitHelper.sol/HarnessMaxLoopsLimitHelper.json +0 -85
  170. package/artifacts/contracts/test/MockDeflationaryToken.sol/MockDeflatingToken.dbg.json +0 -4
  171. package/artifacts/contracts/test/MockDeflationaryToken.sol/MockDeflatingToken.json +0 -332
  172. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IERC20.dbg.json +0 -4
  173. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IERC20.json +0 -233
  174. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakeFactory.dbg.json +0 -4
  175. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakeFactory.json +0 -187
  176. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakePair.dbg.json +0 -4
  177. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakePair.json +0 -668
  178. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakeRouter01.dbg.json +0 -4
  179. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakeRouter01.json +0 -760
  180. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakeRouter02.dbg.json +0 -4
  181. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IPancakeRouter02.json +0 -962
  182. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IWETH.dbg.json +0 -4
  183. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/IWETH.json +0 -55
  184. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/PancakeLibrary.dbg.json +0 -4
  185. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/PancakeLibrary.json +0 -10
  186. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/PancakeRouter.dbg.json +0 -4
  187. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/PancakeRouter.json +0 -982
  188. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/SafeMath.dbg.json +0 -4
  189. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/SafeMath.json +0 -10
  190. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/TransferHelper.dbg.json +0 -4
  191. package/artifacts/contracts/test/Mocks/MockPancakeSwap.sol/TransferHelper.json +0 -10
  192. package/artifacts/contracts/test/Mocks/MockPriceOracle.sol/MockPriceOracle.dbg.json +0 -4
  193. package/artifacts/contracts/test/Mocks/MockPriceOracle.sol/MockPriceOracle.json +0 -85
  194. package/artifacts/contracts/test/Mocks/MockToken.sol/MockToken.dbg.json +0 -4
  195. package/artifacts/contracts/test/Mocks/MockToken.sol/MockToken.json +0 -315
  196. package/artifacts/contracts/test/SafeMath.sol/SafeMath.dbg.json +0 -4
  197. package/artifacts/contracts/test/SafeMath.sol/SafeMath.json +0 -10
  198. package/artifacts/contracts/test/UpgradedVToken.sol/UpgradedVToken.dbg.json +0 -4
  199. package/artifacts/contracts/test/UpgradedVToken.sol/UpgradedVToken.json +0 -1946
  200. package/artifacts/contracts/test/VTokenHarness.sol/VTokenHarness.dbg.json +0 -4
  201. package/artifacts/contracts/test/VTokenHarness.sol/VTokenHarness.json +0 -2306
@@ -1,615 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "RiskFund",
4
- "sourceName": "contracts/RiskFund/RiskFund.sol",
5
- "abi": [
6
- {
7
- "inputs": [],
8
- "stateMutability": "nonpayable",
9
- "type": "constructor"
10
- },
11
- {
12
- "inputs": [
13
- {
14
- "internalType": "uint256",
15
- "name": "loopsLimit",
16
- "type": "uint256"
17
- },
18
- {
19
- "internalType": "uint256",
20
- "name": "requiredLoops",
21
- "type": "uint256"
22
- }
23
- ],
24
- "name": "MaxLoopsLimitExceeded",
25
- "type": "error"
26
- },
27
- {
28
- "inputs": [
29
- {
30
- "internalType": "address",
31
- "name": "sender",
32
- "type": "address"
33
- },
34
- {
35
- "internalType": "address",
36
- "name": "calledContract",
37
- "type": "address"
38
- },
39
- {
40
- "internalType": "string",
41
- "name": "methodSignature",
42
- "type": "string"
43
- }
44
- ],
45
- "name": "Unauthorized",
46
- "type": "error"
47
- },
48
- {
49
- "inputs": [],
50
- "name": "ZeroAddressNotAllowed",
51
- "type": "error"
52
- },
53
- {
54
- "anonymous": false,
55
- "inputs": [
56
- {
57
- "indexed": false,
58
- "internalType": "uint256",
59
- "name": "oldAmountOutMin",
60
- "type": "uint256"
61
- },
62
- {
63
- "indexed": false,
64
- "internalType": "uint256",
65
- "name": "newAmountOutMin",
66
- "type": "uint256"
67
- }
68
- ],
69
- "name": "AmountOutMinUpdated",
70
- "type": "event"
71
- },
72
- {
73
- "anonymous": false,
74
- "inputs": [
75
- {
76
- "indexed": true,
77
- "internalType": "address",
78
- "name": "comptroller",
79
- "type": "address"
80
- },
81
- {
82
- "indexed": true,
83
- "internalType": "address",
84
- "name": "asset",
85
- "type": "address"
86
- },
87
- {
88
- "indexed": false,
89
- "internalType": "uint256",
90
- "name": "amount",
91
- "type": "uint256"
92
- }
93
- ],
94
- "name": "AssetsReservesUpdated",
95
- "type": "event"
96
- },
97
- {
98
- "anonymous": false,
99
- "inputs": [
100
- {
101
- "indexed": false,
102
- "internalType": "uint8",
103
- "name": "version",
104
- "type": "uint8"
105
- }
106
- ],
107
- "name": "Initialized",
108
- "type": "event"
109
- },
110
- {
111
- "anonymous": false,
112
- "inputs": [
113
- {
114
- "indexed": false,
115
- "internalType": "uint256",
116
- "name": "oldMaxLoopsLimit",
117
- "type": "uint256"
118
- },
119
- {
120
- "indexed": false,
121
- "internalType": "uint256",
122
- "name": "newmaxLoopsLimit",
123
- "type": "uint256"
124
- }
125
- ],
126
- "name": "MaxLoopsLimitUpdated",
127
- "type": "event"
128
- },
129
- {
130
- "anonymous": false,
131
- "inputs": [
132
- {
133
- "indexed": false,
134
- "internalType": "uint256",
135
- "name": "oldMinAmountToConvert",
136
- "type": "uint256"
137
- },
138
- {
139
- "indexed": false,
140
- "internalType": "uint256",
141
- "name": "newMinAmountToConvert",
142
- "type": "uint256"
143
- }
144
- ],
145
- "name": "MinAmountToConvertUpdated",
146
- "type": "event"
147
- },
148
- {
149
- "anonymous": false,
150
- "inputs": [
151
- {
152
- "indexed": false,
153
- "internalType": "address",
154
- "name": "oldAccessControlManager",
155
- "type": "address"
156
- },
157
- {
158
- "indexed": false,
159
- "internalType": "address",
160
- "name": "newAccessControlManager",
161
- "type": "address"
162
- }
163
- ],
164
- "name": "NewAccessControlManager",
165
- "type": "event"
166
- },
167
- {
168
- "anonymous": false,
169
- "inputs": [
170
- {
171
- "indexed": true,
172
- "internalType": "address",
173
- "name": "previousOwner",
174
- "type": "address"
175
- },
176
- {
177
- "indexed": true,
178
- "internalType": "address",
179
- "name": "newOwner",
180
- "type": "address"
181
- }
182
- ],
183
- "name": "OwnershipTransferStarted",
184
- "type": "event"
185
- },
186
- {
187
- "anonymous": false,
188
- "inputs": [
189
- {
190
- "indexed": true,
191
- "internalType": "address",
192
- "name": "previousOwner",
193
- "type": "address"
194
- },
195
- {
196
- "indexed": true,
197
- "internalType": "address",
198
- "name": "newOwner",
199
- "type": "address"
200
- }
201
- ],
202
- "name": "OwnershipTransferred",
203
- "type": "event"
204
- },
205
- {
206
- "anonymous": false,
207
- "inputs": [
208
- {
209
- "indexed": true,
210
- "internalType": "address",
211
- "name": "oldPancakeSwapRouter",
212
- "type": "address"
213
- },
214
- {
215
- "indexed": true,
216
- "internalType": "address",
217
- "name": "newPancakeSwapRouter",
218
- "type": "address"
219
- }
220
- ],
221
- "name": "PancakeSwapRouterUpdated",
222
- "type": "event"
223
- },
224
- {
225
- "anonymous": false,
226
- "inputs": [
227
- {
228
- "indexed": true,
229
- "internalType": "address",
230
- "name": "oldPoolRegistry",
231
- "type": "address"
232
- },
233
- {
234
- "indexed": true,
235
- "internalType": "address",
236
- "name": "newPoolRegistry",
237
- "type": "address"
238
- }
239
- ],
240
- "name": "PoolRegistryUpdated",
241
- "type": "event"
242
- },
243
- {
244
- "anonymous": false,
245
- "inputs": [
246
- {
247
- "indexed": true,
248
- "internalType": "address",
249
- "name": "oldShortfallContract",
250
- "type": "address"
251
- },
252
- {
253
- "indexed": true,
254
- "internalType": "address",
255
- "name": "newShortfallContract",
256
- "type": "address"
257
- }
258
- ],
259
- "name": "ShortfallContractUpdated",
260
- "type": "event"
261
- },
262
- {
263
- "anonymous": false,
264
- "inputs": [
265
- {
266
- "indexed": false,
267
- "internalType": "address[]",
268
- "name": "markets",
269
- "type": "address[]"
270
- },
271
- {
272
- "indexed": false,
273
- "internalType": "uint256[]",
274
- "name": "amountsOutMin",
275
- "type": "uint256[]"
276
- },
277
- {
278
- "indexed": false,
279
- "internalType": "uint256",
280
- "name": "totalAmount",
281
- "type": "uint256"
282
- }
283
- ],
284
- "name": "SwappedPoolsAssets",
285
- "type": "event"
286
- },
287
- {
288
- "anonymous": false,
289
- "inputs": [
290
- {
291
- "indexed": true,
292
- "internalType": "address",
293
- "name": "comptroller",
294
- "type": "address"
295
- },
296
- {
297
- "indexed": false,
298
- "internalType": "uint256",
299
- "name": "amount",
300
- "type": "uint256"
301
- }
302
- ],
303
- "name": "TransferredReserveForAuction",
304
- "type": "event"
305
- },
306
- {
307
- "inputs": [],
308
- "name": "acceptOwnership",
309
- "outputs": [],
310
- "stateMutability": "nonpayable",
311
- "type": "function"
312
- },
313
- {
314
- "inputs": [],
315
- "name": "accessControlManager",
316
- "outputs": [
317
- {
318
- "internalType": "contract IAccessControlManagerV8",
319
- "name": "",
320
- "type": "address"
321
- }
322
- ],
323
- "stateMutability": "view",
324
- "type": "function"
325
- },
326
- {
327
- "inputs": [
328
- {
329
- "internalType": "address",
330
- "name": "comptroller",
331
- "type": "address"
332
- },
333
- {
334
- "internalType": "address",
335
- "name": "asset",
336
- "type": "address"
337
- }
338
- ],
339
- "name": "getPoolAssetReserve",
340
- "outputs": [
341
- {
342
- "internalType": "uint256",
343
- "name": "",
344
- "type": "uint256"
345
- }
346
- ],
347
- "stateMutability": "view",
348
- "type": "function"
349
- },
350
- {
351
- "inputs": [
352
- {
353
- "internalType": "address",
354
- "name": "pancakeSwapRouter_",
355
- "type": "address"
356
- },
357
- {
358
- "internalType": "uint256",
359
- "name": "minAmountToConvert_",
360
- "type": "uint256"
361
- },
362
- {
363
- "internalType": "address",
364
- "name": "convertibleBaseAsset_",
365
- "type": "address"
366
- },
367
- {
368
- "internalType": "address",
369
- "name": "accessControlManager_",
370
- "type": "address"
371
- },
372
- {
373
- "internalType": "uint256",
374
- "name": "loopsLimit_",
375
- "type": "uint256"
376
- }
377
- ],
378
- "name": "initialize",
379
- "outputs": [],
380
- "stateMutability": "nonpayable",
381
- "type": "function"
382
- },
383
- {
384
- "inputs": [],
385
- "name": "maxLoopsLimit",
386
- "outputs": [
387
- {
388
- "internalType": "uint256",
389
- "name": "",
390
- "type": "uint256"
391
- }
392
- ],
393
- "stateMutability": "view",
394
- "type": "function"
395
- },
396
- {
397
- "inputs": [],
398
- "name": "owner",
399
- "outputs": [
400
- {
401
- "internalType": "address",
402
- "name": "",
403
- "type": "address"
404
- }
405
- ],
406
- "stateMutability": "view",
407
- "type": "function"
408
- },
409
- {
410
- "inputs": [],
411
- "name": "pendingOwner",
412
- "outputs": [
413
- {
414
- "internalType": "address",
415
- "name": "",
416
- "type": "address"
417
- }
418
- ],
419
- "stateMutability": "view",
420
- "type": "function"
421
- },
422
- {
423
- "inputs": [
424
- {
425
- "internalType": "address",
426
- "name": "",
427
- "type": "address"
428
- }
429
- ],
430
- "name": "poolReserves",
431
- "outputs": [
432
- {
433
- "internalType": "uint256",
434
- "name": "",
435
- "type": "uint256"
436
- }
437
- ],
438
- "stateMutability": "view",
439
- "type": "function"
440
- },
441
- {
442
- "inputs": [],
443
- "name": "renounceOwnership",
444
- "outputs": [],
445
- "stateMutability": "nonpayable",
446
- "type": "function"
447
- },
448
- {
449
- "inputs": [
450
- {
451
- "internalType": "address",
452
- "name": "accessControlManager_",
453
- "type": "address"
454
- }
455
- ],
456
- "name": "setAccessControlManager",
457
- "outputs": [],
458
- "stateMutability": "nonpayable",
459
- "type": "function"
460
- },
461
- {
462
- "inputs": [
463
- {
464
- "internalType": "uint256",
465
- "name": "limit",
466
- "type": "uint256"
467
- }
468
- ],
469
- "name": "setMaxLoopsLimit",
470
- "outputs": [],
471
- "stateMutability": "nonpayable",
472
- "type": "function"
473
- },
474
- {
475
- "inputs": [
476
- {
477
- "internalType": "uint256",
478
- "name": "minAmountToConvert_",
479
- "type": "uint256"
480
- }
481
- ],
482
- "name": "setMinAmountToConvert",
483
- "outputs": [],
484
- "stateMutability": "nonpayable",
485
- "type": "function"
486
- },
487
- {
488
- "inputs": [
489
- {
490
- "internalType": "address",
491
- "name": "pancakeSwapRouter_",
492
- "type": "address"
493
- }
494
- ],
495
- "name": "setPancakeSwapRouter",
496
- "outputs": [],
497
- "stateMutability": "nonpayable",
498
- "type": "function"
499
- },
500
- {
501
- "inputs": [
502
- {
503
- "internalType": "address",
504
- "name": "poolRegistry_",
505
- "type": "address"
506
- }
507
- ],
508
- "name": "setPoolRegistry",
509
- "outputs": [],
510
- "stateMutability": "nonpayable",
511
- "type": "function"
512
- },
513
- {
514
- "inputs": [
515
- {
516
- "internalType": "address",
517
- "name": "shortfallContractAddress_",
518
- "type": "address"
519
- }
520
- ],
521
- "name": "setShortfallContractAddress",
522
- "outputs": [],
523
- "stateMutability": "nonpayable",
524
- "type": "function"
525
- },
526
- {
527
- "inputs": [
528
- {
529
- "internalType": "address[]",
530
- "name": "markets",
531
- "type": "address[]"
532
- },
533
- {
534
- "internalType": "uint256[]",
535
- "name": "amountsOutMin",
536
- "type": "uint256[]"
537
- },
538
- {
539
- "internalType": "address[][]",
540
- "name": "paths",
541
- "type": "address[][]"
542
- }
543
- ],
544
- "name": "swapPoolsAssets",
545
- "outputs": [
546
- {
547
- "internalType": "uint256",
548
- "name": "",
549
- "type": "uint256"
550
- }
551
- ],
552
- "stateMutability": "nonpayable",
553
- "type": "function"
554
- },
555
- {
556
- "inputs": [
557
- {
558
- "internalType": "address",
559
- "name": "newOwner",
560
- "type": "address"
561
- }
562
- ],
563
- "name": "transferOwnership",
564
- "outputs": [],
565
- "stateMutability": "nonpayable",
566
- "type": "function"
567
- },
568
- {
569
- "inputs": [
570
- {
571
- "internalType": "address",
572
- "name": "comptroller",
573
- "type": "address"
574
- },
575
- {
576
- "internalType": "uint256",
577
- "name": "amount",
578
- "type": "uint256"
579
- }
580
- ],
581
- "name": "transferReserveForAuction",
582
- "outputs": [
583
- {
584
- "internalType": "uint256",
585
- "name": "",
586
- "type": "uint256"
587
- }
588
- ],
589
- "stateMutability": "nonpayable",
590
- "type": "function"
591
- },
592
- {
593
- "inputs": [
594
- {
595
- "internalType": "address",
596
- "name": "comptroller",
597
- "type": "address"
598
- },
599
- {
600
- "internalType": "address",
601
- "name": "asset",
602
- "type": "address"
603
- }
604
- ],
605
- "name": "updateAssetsState",
606
- "outputs": [],
607
- "stateMutability": "nonpayable",
608
- "type": "function"
609
- }
610
- ],
611
- "bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b62000111565b600054610100900460ff1615620000565760405162461bcd60e51b81526004016200004d90620000af565b60405180910390fd5b60005460ff90811614620000ad576000805460ff191660ff9081179091556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249891620000a49162000101565b60405180910390a15b565b60208082528101620000fb81602781527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469602082015266616c697a696e6760c81b604082015260600190565b92915050565b60ff8216815260208101620000fb565b612cf680620001216000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c80637b77cd6a116100ad578063be26317e11610071578063be26317e1461023f578063d2d8703414610248578063e30c39781461025b578063f2fde38b1461026c578063f481395b1461027f57600080fd5b80637b77cd6a146101d357806380d45a2d146101e65780638da5cb5b146101f9578063aac59a7514610213578063b4a0bdf31461022657600080fd5b80636fb05275116100f45780636fb052751461018a578063715018a61461019d578063746460a9146101a557806377d4937f146101b857806379ba5097146101cb57600080fd5b80630a9837c5146101265780630e32cb861461014f5780632a1d0547146101645780634dd9584a14610177575b600080fd5b610139610134366004611a0e565b6102a0565b6040516101469190611a53565b60405180910390f35b61016261015d366004611a61565b61038e565b005b610162610172366004611a82565b6103a2565b610162610185366004611a61565b610512565b610139610198366004611afa565b610576565b61016261062a565b6101626101b3366004611b2d565b61063e565b6101626101c6366004611a61565b6106e3565b6101626107e0565b6101626101e1366004611a61565b610815565b6101626101f4366004611b2d565b610878565b6033546001600160a01b03165b6040516101469190611b57565b610162610221366004611afa565b610889565b6097546001600160a01b03166040516101469190611ba7565b61013960fc5481565b610139610256366004611c07565b610897565b6065546001600160a01b0316610206565b61016261027a366004611a61565b610be3565b61013961028d366004611a61565b6101326020526000908152604090205481565b610131546000906001600160a01b03163381146102d85760405162461bcd60e51b81526004016102cf90611d02565b60405180910390fd5b6001600160a01b038416600090815261013260205260409020548311156103115760405162461bcd60e51b81526004016102cf90611d54565b6001600160a01b03808516600090815261013260205260409020805485900390556101305461034291168285610c54565b836001600160a01b03167fc8d0a37ed16dfaa43514df00e18f478b60d5cc7b4bfc687103948b9020f737fd8460405161037b9190611a53565b60405180910390a2829150505b92915050565b610396610caf565b61039f81610cd9565b50565b600054610100900460ff16158080156103c25750600054600160ff909116105b806103dc5750303b1580156103dc575060005460ff166001145b6103f85760405162461bcd60e51b81526004016102cf90611daf565b6000805460ff19166001179055801561041b576000805461ff0019166101001790555b61042486610d52565b61042d84610d52565b6000851161044d5760405162461bcd60e51b81526004016102cf90611e04565b6000821161046d5760405162461bcd60e51b81526004016102cf90611e57565b610475610d79565b61047e83610da8565b61012e80546001600160a01b038089166001600160a01b03199283161790925561012f8790556101308054928716929091169190911790556104bf82610dcf565b801561050a576000805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061050190600190611e7b565b60405180910390a15b505050505050565b61051a610caf565b61052381610d52565b61012e80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fd37b9d138f53ea58d7e50292588239a46efa8f523966febf4066da96defc77fd90600090a35050565b600061058182610d52565b826001600160a01b0316627e3dd26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e29190611e9c565b6105fe5760405162461bcd60e51b81526004016102cf90611f05565b506001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205490565b610632610caf565b61063c6000610e2a565b565b61067c6040518060400160405280601e81526020017f7365744d696e416d6f756e74546f436f6e766572742875696e74323536290000815250610e43565b6000811161069c5760405162461bcd60e51b81526004016102cf90611e04565b61012f8054908290556040517fada67d0d38fa20c8ae6a5c17cb9d60b0fe7f2d4e4f27ac9ee55e54ac88de9d8d906106d79083908590611f15565b60405180910390a15050565b6106eb610caf565b6106f481610d52565b610130546040805163c8ecc0d360e01b815290516001600160a01b039283169284169163c8ecc0d391600480830192602092919082900301816000875af1158015610743573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107679190611f3b565b6001600160a01b03161461078d5760405162461bcd60e51b81526004016102cf90611f9c565b61013180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fb6e5fcf02f7fbb8acfbaa3bac4fd5abf9ff51e3f2e8884b5498927179b211b2890600090a35050565b60655433906001600160a01b0316811461080c5760405162461bcd60e51b81526004016102cf90611ff2565b61039f81610e2a565b61081d610caf565b61082681610d52565b60cb80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fa87b964d321035d2165e484ff4b722dd6eae30606c0b98887d2ed1a34e594bfe90600090a35050565b610880610caf565b61039f81610dcf565b6108938282610edd565b5050565b60006108ba604051806060016040528060308152602001612c9160309139610e43565b60cb546001600160a01b03166108cf81610d52565b8685146108ee5760405162461bcd60e51b81526004016102cf9061205c565b86831461090d5760405162461bcd60e51b81526004016102cf906120b9565b6000876109198161117b565b60005b81811015610b945760008b8b83818110610938576109386120c9565b905060200201602081019061094d9190611a61565b90506000816001600160a01b0316635fe3b5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561098f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b391906120fe565b90506000866001600160a01b0316637aee632d836040518263ffffffff1660e01b81526004016109e39190611b57565b600060405180830381865afa158015610a00573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a2891908101906122ea565b9050816001600160a01b031681604001516001600160a01b031614610a5f5760405162461bcd60e51b81526004016102cf90612369565b604051633d98a1e560e01b81526001600160a01b03831690633d98a1e590610a8b908690600401611ba7565b602060405180830381865afa158015610aa8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acc9190611e9c565b610ae85760405162461bcd60e51b81526004016102cf906123a7565b6000610b3184848f8f89818110610b0157610b016120c9565b905060200201358e8e8a818110610b1a57610b1a6120c9565b9050602002810190610b2c91906123b7565b6111a4565b6001600160a01b03841660009081526101326020526040902054909150610b5990829061242a565b6001600160a01b03841660009081526101326020526040902055610b7d818861242a565b96505050505080610b8d90612442565b905061091c565b507fb17530966b045b50d4975e7f05048ca00d7335780c24f1c465165a4b94b2d37d8a8a8a8a86604051610bcc95949392919061250c565b60405180910390a1509150505b9695505050505050565b610beb610caf565b606580546001600160a01b0383166001600160a01b03199091168117909155610c1c6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b610caa8363a9059cbb60e01b8484604051602401610c73929190612542565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611721565b505050565b6033546001600160a01b0316331461063c5760405162461bcd60e51b81526004016102cf90612582565b6001600160a01b038116610cff5760405162461bcd60e51b81526004016102cf906125d4565b609780546001600160a01b038381166001600160a01b03198316179092556040519116907f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa0906106d790839085906125e4565b6001600160a01b03811661039f576040516342bcdf7f60e11b815260040160405180910390fd5b600054610100900460ff16610da05760405162461bcd60e51b81526004016102cf90612647565b61063c6117b3565b600054610100900460ff166103965760405162461bcd60e51b81526004016102cf90612647565b60fc548111610df05760405162461bcd60e51b81526004016102cf90612696565b60fc8054908290556040517fc2d09fef144f7c8a86f71ea459f8fc17f675768eb1ae369cbd77fb31d467aafa906106d79083908590611f15565b606580546001600160a01b031916905561039f816117e3565b6097546040516318c5e8ab60e01b81526000916001600160a01b0316906318c5e8ab90610e7690339086906004016126d8565b602060405180830381865afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611e9c565b90508061089357333083604051634a3fa29360e01b81526004016102cf939291906126f8565b610ee681610d52565b816001600160a01b0316627e3dd26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f479190611e9c565b610f635760405162461bcd60e51b81526004016102cf90611f05565b60cb546001600160a01b031680610f8c5760405162461bcd60e51b81526004016102cf9061277b565b60405163266e0a7f60e01b81526000906001600160a01b0383169063266e0a7f90610fbd90879087906004016125e4565b602060405180830381865afa158015610fda573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ffe9190611f3b565b6001600160a01b0316036110245760405162461bcd60e51b81526004016102cf906127da565b6040516370a0823160e01b81526000906001600160a01b038416906370a0823190611053903090600401611b57565b602060405180830381865afa158015611070573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109491906127ea565b6001600160a01b038416600090815260c9602052604090205490915080821115611174576001600160a01b038416600090815260c9602052604081208054838503928392916110e490849061242a565b90915550506001600160a01b03808716600090815260ca602090815260408083209389168352929052908120805483929061112090849061242a565b92505081905550846001600160a01b0316866001600160a01b03167fc39e3e80c0219fde334a8cb5d8468b628482e23388b6e809c90cb00c63c8ce388360405161116a9190611a53565b60405180910390a3505b5050505050565b60fc5481111561039f5760fc548160405163792bfb1b60e11b81526004016102cf929190611f15565b6000836000036111c65760405162461bcd60e51b81526004016102cf90612865565b61012f548410156111e95760405162461bcd60e51b81526004016102cf906128cf565b600080876001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124e9190611f3b565b610130546001600160a01b03898116600081815260ca6020908152604080832085881684528252918290205482516307dc0d1d60e41b81529251969750939094169492939192637dc0d1d0926004808401939192918290030181865afa1580156112bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e091906120fe565b6001600160a01b03166396e85ced8b6040518263ffffffff1660e01b815260040161130b9190611b57565b600060405180830381600087803b15801561132557600080fd5b505af1158015611339573d6000803e3d6000fd5b505050506000896001600160a01b0316637dc0d1d06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561137d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a191906120fe565b6001600160a01b031663fc57d4df8c6040518263ffffffff1660e01b81526004016113cc9190611b57565b602060405180830381865afa1580156113e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140d91906127ea565b90508115611712576040805160208101909152818152600061142f8285611835565b905061012f54811061170f576001600160a01b038616600090815260c96020526040812080548692906114639084906128df565b90915550506001600160a01b03808d16600090815260ca60209081526040808320938a168352929052908120805486929061149f9084906128df565b90915550506001600160a01b038681169086161461170b57856001600160a01b03168a8a60008181106114d4576114d46120c9565b90506020020160208101906114e99190611a61565b6001600160a01b03161461150f5760405162461bcd60e51b81526004016102cf90612950565b6001600160a01b0385168a8a6115266001826128df565b818110611535576115356120c9565b905060200201602081019061154a9190611a61565b6001600160a01b0316146115705760405162461bcd60e51b81526004016102cf906129b2565b61012e5460405163095ea7b360e01b81526001600160a01b039182169188169063095ea7b3906115a79084906000906004016129d7565b6020604051808303816000875af11580156115c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ea9190611e9c565b5060405163095ea7b360e01b81526001600160a01b0388169063095ea7b3906116199084908990600401612542565b6020604051808303816000875af1158015611638573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165c9190611e9c565b506000816001600160a01b03166338ed1739878f8f8f30426040518763ffffffff1660e01b8152600401611695969594939291906129f2565b6000604051808303816000875af11580156116b4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116dc9190810190612adf565b9050806116ea60018d6128df565b815181106116fa576116fa6120c9565b60200260200101519850505061170f565b8396505b50505b50929998505050505050505050565b6000611776826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166118559092919063ffffffff16565b90508051600014806117975750808060200190518101906117979190611e9c565b610caa5760405162461bcd60e51b81526004016102cf90612b61565b600054610100900460ff166117da5760405162461bcd60e51b81526004016102cf90612647565b61063c33610e2a565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080611842848461186e565b905061184d8161189f565b949350505050565b606061186484846000856118b7565b90505b9392505050565b6040805160208101909152600081526040518060200160405280611896856000015185611953565b90529392505050565b805160009061038890670de0b6b3a764000090612b87565b6060824710156118d95760405162461bcd60e51b81526004016102cf90612bde565b600080866001600160a01b031685876040516118f59190612c10565b60006040518083038185875af1925050503d8060008114611932576040519150601f19603f3d011682016040523d82523d6000602084013e611937565b606091505b50915091506119488783838761195f565b979650505050505050565b60006118678284612c1c565b6060831561199e578251600003611997576001600160a01b0385163b6119975760405162461bcd60e51b81526004016102cf90612c6f565b508161184d565b61184d83838151156119b35781518083602001fd5b8060405162461bcd60e51b81526004016102cf9190612c7f565b60006001600160a01b038216610388565b6119e7816119cd565b811461039f57600080fd5b8035610388816119de565b806119e7565b8035610388816119fd565b60008060408385031215611a2457611a24600080fd5b6000611a3085856119f2565b9250506020611a4185828601611a03565b9150509250929050565b805b82525050565b602081016103888284611a4b565b600060208284031215611a7657611a76600080fd5b600061184d84846119f2565b600080600080600060a08688031215611a9d57611a9d600080fd5b6000611aa988886119f2565b9550506020611aba88828901611a03565b9450506040611acb888289016119f2565b9350506060611adc888289016119f2565b9250506080611aed88828901611a03565b9150509295509295909350565b60008060408385031215611b1057611b10600080fd5b6000611b1c85856119f2565b9250506020611a41858286016119f2565b600060208284031215611b4257611b42600080fd5b600061184d8484611a03565b611a4d816119cd565b602081016103888284611b4e565b60006103886001600160a01b038316611b7c565b90565b6001600160a01b031690565b600061038882611b65565b600061038882611b88565b611a4d81611b93565b602081016103888284611b9e565b60008083601f840112611bca57611bca600080fd5b50813567ffffffffffffffff811115611be557611be5600080fd5b602083019150836020820283011115611c0057611c00600080fd5b9250929050565b60008060008060008060608789031215611c2357611c23600080fd5b863567ffffffffffffffff811115611c3d57611c3d600080fd5b611c4989828a01611bb5565b9650965050602087013567ffffffffffffffff811115611c6b57611c6b600080fd5b611c7789828a01611bb5565b9450945050604087013567ffffffffffffffff811115611c9957611c99600080fd5b611ca589828a01611bb5565b92509250509295509295509295565b602e81526000602082017f5269736b2066756e643a204f6e6c792063616c6c61626c652062792053686f7281526d1d19985b1b0818dbdb9d1c9858dd60921b602082015291505b5060400190565b6020808252810161038881611cb4565b602581526000602082017f5269736b2046756e643a20496e73756666696369656e7420706f6f6c2072657381526432b93b329760d91b60208201529150611cfb565b6020808252810161038881611d12565b602e81526000602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150611cfb565b6020808252810161038881611d64565b602881526000602082017f5269736b2046756e643a20496e76616c6964206d696e20616d6f756e7420746f8152670818dbdb9d995c9d60c21b60208201529150611cfb565b6020808252810161038881611dbf565b602681526000602082017f5269736b2046756e643a204c6f6f7073206c696d69742063616e206e6f74206281526565207a65726f60d01b60208201529150611cfb565b6020808252810161038881611e14565b600060ff8216610388565b611a4d81611e67565b602081016103888284611e72565b8015156119e7565b805161038881611e89565b600060208284031215611eb157611eb1600080fd5b600061184d8484611e91565b602b81526000602082017f5265736572766548656c706572733a20436f6d7074726f6c6c6572206164647281526a195cdcc81a5b9d985b1a5960aa1b60208201529150611cfb565b6020808252810161038881611ebd565b60408101611f238285611a4b565b6118676020830184611a4b565b8051610388816119de565b600060208284031215611f5057611f50600080fd5b600061184d8484611f30565b602381526000602082017f5269736b2046756e643a204261736520617373657420646f65736e2774206d618152620e8c6d60eb1b60208201529150611cfb565b6020808252810161038881611f5c565b602981526000602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b60208201529150611cfb565b6020808252810161038881611fac565b603881526000602082017f5269736b2066756e643a206d61726b65747320616e6420616d6f756e74734f7581527f744d696e2061726520756e657175616c206c656e67746873000000000000000060208201529150611cfb565b6020808252810161038881612002565b603081526000602082017f5269736b2066756e643a206d61726b65747320616e642070617468732061726581526f20756e657175616c206c656e6774687360801b60208201529150611cfb565b602080825281016103888161206c565b634e487b7160e01b600052603260045260246000fd5b6000610388826119cd565b6119e7816120df565b8051610388816120ea565b60006020828403121561211357612113600080fd5b600061184d84846120f3565b634e487b7160e01b600052604160045260246000fd5b601f19601f830116810181811067ffffffffffffffff8211171561215b5761215b61211f565b6040525050565b600061216d60405190565b90506121798282612135565b919050565b600067ffffffffffffffff8211156121985761219861211f565b601f19601f83011660200192915050565b60005b838110156121c45781810151838201526020016121ac565b838111156121d3576000848401525b50505050565b60006121ec6121e78461217e565b612162565b90508281526020810184848401111561220757612207600080fd5b6122128482856121a9565b509392505050565b600082601f83011261222e5761222e600080fd5b815161184d8482602086016121d9565b8051610388816119fd565b600060a0828403121561225e5761225e600080fd5b61226860a0612162565b825190915067ffffffffffffffff81111561228557612285600080fd5b6122918482850161221a565b82525060206122a284848301611f30565b60208301525060406122b684828501611f30565b60408301525060606122ca8482850161223e565b60608301525060806122de8482850161223e565b60808301525092915050565b6000602082840312156122ff576122ff600080fd5b815167ffffffffffffffff81111561231957612319600080fd5b61184d84828501612249565b602781526000602082017f636f6d7074726f6c6c657220646f65736e277420657869737420706f6f6c20728152666567697374727960c81b60208201529150611cfb565b6020808252810161038881612325565b60148152600060208201731b585c9ad95d081a5cc81b9bdd081b1a5cdd195960621b815291505b5060200190565b6020808252810161038881612379565b6000808335601e19368590030181126123d2576123d2600080fd5b80840192508235915067ffffffffffffffff8211156123f3576123f3600080fd5b6020928301928202360383131561240c5761240c600080fd5b509250929050565b634e487b7160e01b600052601160045260246000fd5b6000821982111561243d5761243d612414565b500190565b6000600019820361245557612455612414565b5060010190565b60006124688383611b4e565b505060200190565b600061186760208401846119f2565b8183526000602084019350818060005b858110156124bc576124a18284612470565b6124ab888261245c565b97506020830192505060010161248f565b509495945050505050565b82818337506000910152565b81835260006020840193506001600160fb1b038311156124f5576124f5600080fd5b6020830292506125068385846124c7565b50500190565b6060808252810161251e81878961247f565b905081810360208301526125338185876124d3565b9050610bd96040830184611a4b565b60408101611f238285611b4e565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572910190815260006123a0565b6020808252810161038881612550565b602581526000602082017f696e76616c696420616365737320636f6e74726f6c206d616e61676572206164815264647265737360d81b60208201529150611cfb565b6020808252810161038881612592565b604081016125f28285611b4e565b6118676020830184611b4e565b602b81526000602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150611cfb565b60208082528101610388816125ff565b602281526000602082017f436f6d7074726f6c6c65723a20496e76616c6964206d61784c6f6f70734c696d8152611a5d60f21b60208201529150611cfb565b6020808252810161038881612657565b60006126b0825190565b8084526020840193506126c78185602086016121a9565b601f01601f19169290920192915050565b604081016126e68285611b4e565b818103602083015261186481846126a6565b606081016127068286611b4e565b6127136020830185611b4e565b818103604083015261272581846126a6565b95945050505050565b603081526000602082017f5265736572766548656c706572733a20506f6f6c20526567697374727920616481526f191c995cdcc81a5cc81b9bdd081cd95d60821b60208201529150611cfb565b602080825281016103888161272e565b603281526000602082017f5265736572766548656c706572733a2054686520706f6f6c20646f65736e2774815271081cdd5c1c1bdc9d081d1a1948185cdcd95d60721b60208201529150611cfb565b602080825281016103888161278b565b6000602082840312156127ff576127ff600080fd5b600061184d848461223e565b603c81526000602082017f5269736b46756e643a20616d6f756e744f75744d696e206d757374206265206781527f726561746572207468616e203020746f20737761702076546f6b656e0000000060208201529150611cfb565b602080825281016103888161280b565b604081526000602082017f5269736b46756e643a20616d6f756e744f75744d696e2073686f756c6420626581527f2067726561746572207468616e206d696e416d6f756e74546f436f6e7665727460208201529150611cfb565b6020808252810161038881612875565b6000828210156128f1576128f1612414565b500390565b603881526000602082017f5269736b46756e643a20737761702070617468206d757374207374617274207781527f6974682074686520756e6465726c79696e67206173736574000000000000000060208201529150611cfb565b60208082528101610388816128f6565b603581526000602082017f5269736b46756e643a2066696e616c6c792070617468206d75737420626520638152741bdb9d995c9d1a589b194818985cd948185cdcd95d605a1b60208201529150611cfb565b6020808252810161038881612960565b6000610388611b798381565b611a4d816129c2565b604081016129e58285611b4e565b61186760208301846129ce565b60a08101612a008289611a4b565b612a0d6020830188611a4b565b8181036040830152612a2081868861247f565b9050612a2f6060830185611b4e565b6119486080830184611a4b565b600067ffffffffffffffff821115612a5657612a5661211f565b5060209081020190565b6000612a6e6121e784612a3c565b83815290506020808201908402830185811115612a8d57612a8d600080fd5b835b81811015612ab15780612aa2888261223e565b84525060209283019201612a8f565b5050509392505050565b600082601f830112612acf57612acf600080fd5b815161184d848260208601612a60565b600060208284031215612af457612af4600080fd5b815167ffffffffffffffff811115612b0e57612b0e600080fd5b61184d84828501612abb565b602a81526000602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150611cfb565b6020808252810161038881612b1a565b634e487b7160e01b600052601260045260246000fd5b600082612b9657612b96612b71565b500490565b602681526000602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150611cfb565b6020808252810161038881612b9b565b6000612bf8825190565b612c068185602086016121a9565b9290920192915050565b60006118678284612bee565b6000816000190483118215151615612c3657612c36612414565b500290565b601d81526000602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000815291506123a0565b6020808252810161038881612c3b565b6020808252810161186781846126a656fe73776170506f6f6c7341737365747328616464726573735b5d2c75696e743235365b5d2c616464726573735b5d5b5d29a26469706673582212204ca4b6e776c682f3979aeb15f3d466455874ee9664e240254c814ddd6429df0b64736f6c634300080d0033",
612
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c80637b77cd6a116100ad578063be26317e11610071578063be26317e1461023f578063d2d8703414610248578063e30c39781461025b578063f2fde38b1461026c578063f481395b1461027f57600080fd5b80637b77cd6a146101d357806380d45a2d146101e65780638da5cb5b146101f9578063aac59a7514610213578063b4a0bdf31461022657600080fd5b80636fb05275116100f45780636fb052751461018a578063715018a61461019d578063746460a9146101a557806377d4937f146101b857806379ba5097146101cb57600080fd5b80630a9837c5146101265780630e32cb861461014f5780632a1d0547146101645780634dd9584a14610177575b600080fd5b610139610134366004611a0e565b6102a0565b6040516101469190611a53565b60405180910390f35b61016261015d366004611a61565b61038e565b005b610162610172366004611a82565b6103a2565b610162610185366004611a61565b610512565b610139610198366004611afa565b610576565b61016261062a565b6101626101b3366004611b2d565b61063e565b6101626101c6366004611a61565b6106e3565b6101626107e0565b6101626101e1366004611a61565b610815565b6101626101f4366004611b2d565b610878565b6033546001600160a01b03165b6040516101469190611b57565b610162610221366004611afa565b610889565b6097546001600160a01b03166040516101469190611ba7565b61013960fc5481565b610139610256366004611c07565b610897565b6065546001600160a01b0316610206565b61016261027a366004611a61565b610be3565b61013961028d366004611a61565b6101326020526000908152604090205481565b610131546000906001600160a01b03163381146102d85760405162461bcd60e51b81526004016102cf90611d02565b60405180910390fd5b6001600160a01b038416600090815261013260205260409020548311156103115760405162461bcd60e51b81526004016102cf90611d54565b6001600160a01b03808516600090815261013260205260409020805485900390556101305461034291168285610c54565b836001600160a01b03167fc8d0a37ed16dfaa43514df00e18f478b60d5cc7b4bfc687103948b9020f737fd8460405161037b9190611a53565b60405180910390a2829150505b92915050565b610396610caf565b61039f81610cd9565b50565b600054610100900460ff16158080156103c25750600054600160ff909116105b806103dc5750303b1580156103dc575060005460ff166001145b6103f85760405162461bcd60e51b81526004016102cf90611daf565b6000805460ff19166001179055801561041b576000805461ff0019166101001790555b61042486610d52565b61042d84610d52565b6000851161044d5760405162461bcd60e51b81526004016102cf90611e04565b6000821161046d5760405162461bcd60e51b81526004016102cf90611e57565b610475610d79565b61047e83610da8565b61012e80546001600160a01b038089166001600160a01b03199283161790925561012f8790556101308054928716929091169190911790556104bf82610dcf565b801561050a576000805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061050190600190611e7b565b60405180910390a15b505050505050565b61051a610caf565b61052381610d52565b61012e80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fd37b9d138f53ea58d7e50292588239a46efa8f523966febf4066da96defc77fd90600090a35050565b600061058182610d52565b826001600160a01b0316627e3dd26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e29190611e9c565b6105fe5760405162461bcd60e51b81526004016102cf90611f05565b506001600160a01b03918216600090815260ca6020908152604080832093909416825291909152205490565b610632610caf565b61063c6000610e2a565b565b61067c6040518060400160405280601e81526020017f7365744d696e416d6f756e74546f436f6e766572742875696e74323536290000815250610e43565b6000811161069c5760405162461bcd60e51b81526004016102cf90611e04565b61012f8054908290556040517fada67d0d38fa20c8ae6a5c17cb9d60b0fe7f2d4e4f27ac9ee55e54ac88de9d8d906106d79083908590611f15565b60405180910390a15050565b6106eb610caf565b6106f481610d52565b610130546040805163c8ecc0d360e01b815290516001600160a01b039283169284169163c8ecc0d391600480830192602092919082900301816000875af1158015610743573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107679190611f3b565b6001600160a01b03161461078d5760405162461bcd60e51b81526004016102cf90611f9c565b61013180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fb6e5fcf02f7fbb8acfbaa3bac4fd5abf9ff51e3f2e8884b5498927179b211b2890600090a35050565b60655433906001600160a01b0316811461080c5760405162461bcd60e51b81526004016102cf90611ff2565b61039f81610e2a565b61081d610caf565b61082681610d52565b60cb80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fa87b964d321035d2165e484ff4b722dd6eae30606c0b98887d2ed1a34e594bfe90600090a35050565b610880610caf565b61039f81610dcf565b6108938282610edd565b5050565b60006108ba604051806060016040528060308152602001612c9160309139610e43565b60cb546001600160a01b03166108cf81610d52565b8685146108ee5760405162461bcd60e51b81526004016102cf9061205c565b86831461090d5760405162461bcd60e51b81526004016102cf906120b9565b6000876109198161117b565b60005b81811015610b945760008b8b83818110610938576109386120c9565b905060200201602081019061094d9190611a61565b90506000816001600160a01b0316635fe3b5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561098f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b391906120fe565b90506000866001600160a01b0316637aee632d836040518263ffffffff1660e01b81526004016109e39190611b57565b600060405180830381865afa158015610a00573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a2891908101906122ea565b9050816001600160a01b031681604001516001600160a01b031614610a5f5760405162461bcd60e51b81526004016102cf90612369565b604051633d98a1e560e01b81526001600160a01b03831690633d98a1e590610a8b908690600401611ba7565b602060405180830381865afa158015610aa8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acc9190611e9c565b610ae85760405162461bcd60e51b81526004016102cf906123a7565b6000610b3184848f8f89818110610b0157610b016120c9565b905060200201358e8e8a818110610b1a57610b1a6120c9565b9050602002810190610b2c91906123b7565b6111a4565b6001600160a01b03841660009081526101326020526040902054909150610b5990829061242a565b6001600160a01b03841660009081526101326020526040902055610b7d818861242a565b96505050505080610b8d90612442565b905061091c565b507fb17530966b045b50d4975e7f05048ca00d7335780c24f1c465165a4b94b2d37d8a8a8a8a86604051610bcc95949392919061250c565b60405180910390a1509150505b9695505050505050565b610beb610caf565b606580546001600160a01b0383166001600160a01b03199091168117909155610c1c6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b610caa8363a9059cbb60e01b8484604051602401610c73929190612542565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611721565b505050565b6033546001600160a01b0316331461063c5760405162461bcd60e51b81526004016102cf90612582565b6001600160a01b038116610cff5760405162461bcd60e51b81526004016102cf906125d4565b609780546001600160a01b038381166001600160a01b03198316179092556040519116907f66fd58e82f7b31a2a5c30e0888f3093efe4e111b00cd2b0c31fe014601293aa0906106d790839085906125e4565b6001600160a01b03811661039f576040516342bcdf7f60e11b815260040160405180910390fd5b600054610100900460ff16610da05760405162461bcd60e51b81526004016102cf90612647565b61063c6117b3565b600054610100900460ff166103965760405162461bcd60e51b81526004016102cf90612647565b60fc548111610df05760405162461bcd60e51b81526004016102cf90612696565b60fc8054908290556040517fc2d09fef144f7c8a86f71ea459f8fc17f675768eb1ae369cbd77fb31d467aafa906106d79083908590611f15565b606580546001600160a01b031916905561039f816117e3565b6097546040516318c5e8ab60e01b81526000916001600160a01b0316906318c5e8ab90610e7690339086906004016126d8565b602060405180830381865afa158015610e93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb79190611e9c565b90508061089357333083604051634a3fa29360e01b81526004016102cf939291906126f8565b610ee681610d52565b816001600160a01b0316627e3dd26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f479190611e9c565b610f635760405162461bcd60e51b81526004016102cf90611f05565b60cb546001600160a01b031680610f8c5760405162461bcd60e51b81526004016102cf9061277b565b60405163266e0a7f60e01b81526000906001600160a01b0383169063266e0a7f90610fbd90879087906004016125e4565b602060405180830381865afa158015610fda573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ffe9190611f3b565b6001600160a01b0316036110245760405162461bcd60e51b81526004016102cf906127da565b6040516370a0823160e01b81526000906001600160a01b038416906370a0823190611053903090600401611b57565b602060405180830381865afa158015611070573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109491906127ea565b6001600160a01b038416600090815260c9602052604090205490915080821115611174576001600160a01b038416600090815260c9602052604081208054838503928392916110e490849061242a565b90915550506001600160a01b03808716600090815260ca602090815260408083209389168352929052908120805483929061112090849061242a565b92505081905550846001600160a01b0316866001600160a01b03167fc39e3e80c0219fde334a8cb5d8468b628482e23388b6e809c90cb00c63c8ce388360405161116a9190611a53565b60405180910390a3505b5050505050565b60fc5481111561039f5760fc548160405163792bfb1b60e11b81526004016102cf929190611f15565b6000836000036111c65760405162461bcd60e51b81526004016102cf90612865565b61012f548410156111e95760405162461bcd60e51b81526004016102cf906128cf565b600080876001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061124e9190611f3b565b610130546001600160a01b03898116600081815260ca6020908152604080832085881684528252918290205482516307dc0d1d60e41b81529251969750939094169492939192637dc0d1d0926004808401939192918290030181865afa1580156112bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112e091906120fe565b6001600160a01b03166396e85ced8b6040518263ffffffff1660e01b815260040161130b9190611b57565b600060405180830381600087803b15801561132557600080fd5b505af1158015611339573d6000803e3d6000fd5b505050506000896001600160a01b0316637dc0d1d06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561137d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a191906120fe565b6001600160a01b031663fc57d4df8c6040518263ffffffff1660e01b81526004016113cc9190611b57565b602060405180830381865afa1580156113e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061140d91906127ea565b90508115611712576040805160208101909152818152600061142f8285611835565b905061012f54811061170f576001600160a01b038616600090815260c96020526040812080548692906114639084906128df565b90915550506001600160a01b03808d16600090815260ca60209081526040808320938a168352929052908120805486929061149f9084906128df565b90915550506001600160a01b038681169086161461170b57856001600160a01b03168a8a60008181106114d4576114d46120c9565b90506020020160208101906114e99190611a61565b6001600160a01b03161461150f5760405162461bcd60e51b81526004016102cf90612950565b6001600160a01b0385168a8a6115266001826128df565b818110611535576115356120c9565b905060200201602081019061154a9190611a61565b6001600160a01b0316146115705760405162461bcd60e51b81526004016102cf906129b2565b61012e5460405163095ea7b360e01b81526001600160a01b039182169188169063095ea7b3906115a79084906000906004016129d7565b6020604051808303816000875af11580156115c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ea9190611e9c565b5060405163095ea7b360e01b81526001600160a01b0388169063095ea7b3906116199084908990600401612542565b6020604051808303816000875af1158015611638573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165c9190611e9c565b506000816001600160a01b03166338ed1739878f8f8f30426040518763ffffffff1660e01b8152600401611695969594939291906129f2565b6000604051808303816000875af11580156116b4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116dc9190810190612adf565b9050806116ea60018d6128df565b815181106116fa576116fa6120c9565b60200260200101519850505061170f565b8396505b50505b50929998505050505050505050565b6000611776826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166118559092919063ffffffff16565b90508051600014806117975750808060200190518101906117979190611e9c565b610caa5760405162461bcd60e51b81526004016102cf90612b61565b600054610100900460ff166117da5760405162461bcd60e51b81526004016102cf90612647565b61063c33610e2a565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080611842848461186e565b905061184d8161189f565b949350505050565b606061186484846000856118b7565b90505b9392505050565b6040805160208101909152600081526040518060200160405280611896856000015185611953565b90529392505050565b805160009061038890670de0b6b3a764000090612b87565b6060824710156118d95760405162461bcd60e51b81526004016102cf90612bde565b600080866001600160a01b031685876040516118f59190612c10565b60006040518083038185875af1925050503d8060008114611932576040519150601f19603f3d011682016040523d82523d6000602084013e611937565b606091505b50915091506119488783838761195f565b979650505050505050565b60006118678284612c1c565b6060831561199e578251600003611997576001600160a01b0385163b6119975760405162461bcd60e51b81526004016102cf90612c6f565b508161184d565b61184d83838151156119b35781518083602001fd5b8060405162461bcd60e51b81526004016102cf9190612c7f565b60006001600160a01b038216610388565b6119e7816119cd565b811461039f57600080fd5b8035610388816119de565b806119e7565b8035610388816119fd565b60008060408385031215611a2457611a24600080fd5b6000611a3085856119f2565b9250506020611a4185828601611a03565b9150509250929050565b805b82525050565b602081016103888284611a4b565b600060208284031215611a7657611a76600080fd5b600061184d84846119f2565b600080600080600060a08688031215611a9d57611a9d600080fd5b6000611aa988886119f2565b9550506020611aba88828901611a03565b9450506040611acb888289016119f2565b9350506060611adc888289016119f2565b9250506080611aed88828901611a03565b9150509295509295909350565b60008060408385031215611b1057611b10600080fd5b6000611b1c85856119f2565b9250506020611a41858286016119f2565b600060208284031215611b4257611b42600080fd5b600061184d8484611a03565b611a4d816119cd565b602081016103888284611b4e565b60006103886001600160a01b038316611b7c565b90565b6001600160a01b031690565b600061038882611b65565b600061038882611b88565b611a4d81611b93565b602081016103888284611b9e565b60008083601f840112611bca57611bca600080fd5b50813567ffffffffffffffff811115611be557611be5600080fd5b602083019150836020820283011115611c0057611c00600080fd5b9250929050565b60008060008060008060608789031215611c2357611c23600080fd5b863567ffffffffffffffff811115611c3d57611c3d600080fd5b611c4989828a01611bb5565b9650965050602087013567ffffffffffffffff811115611c6b57611c6b600080fd5b611c7789828a01611bb5565b9450945050604087013567ffffffffffffffff811115611c9957611c99600080fd5b611ca589828a01611bb5565b92509250509295509295509295565b602e81526000602082017f5269736b2066756e643a204f6e6c792063616c6c61626c652062792053686f7281526d1d19985b1b0818dbdb9d1c9858dd60921b602082015291505b5060400190565b6020808252810161038881611cb4565b602581526000602082017f5269736b2046756e643a20496e73756666696369656e7420706f6f6c2072657381526432b93b329760d91b60208201529150611cfb565b6020808252810161038881611d12565b602e81526000602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150611cfb565b6020808252810161038881611d64565b602881526000602082017f5269736b2046756e643a20496e76616c6964206d696e20616d6f756e7420746f8152670818dbdb9d995c9d60c21b60208201529150611cfb565b6020808252810161038881611dbf565b602681526000602082017f5269736b2046756e643a204c6f6f7073206c696d69742063616e206e6f74206281526565207a65726f60d01b60208201529150611cfb565b6020808252810161038881611e14565b600060ff8216610388565b611a4d81611e67565b602081016103888284611e72565b8015156119e7565b805161038881611e89565b600060208284031215611eb157611eb1600080fd5b600061184d8484611e91565b602b81526000602082017f5265736572766548656c706572733a20436f6d7074726f6c6c6572206164647281526a195cdcc81a5b9d985b1a5960aa1b60208201529150611cfb565b6020808252810161038881611ebd565b60408101611f238285611a4b565b6118676020830184611a4b565b8051610388816119de565b600060208284031215611f5057611f50600080fd5b600061184d8484611f30565b602381526000602082017f5269736b2046756e643a204261736520617373657420646f65736e2774206d618152620e8c6d60eb1b60208201529150611cfb565b6020808252810161038881611f5c565b602981526000602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b60208201529150611cfb565b6020808252810161038881611fac565b603881526000602082017f5269736b2066756e643a206d61726b65747320616e6420616d6f756e74734f7581527f744d696e2061726520756e657175616c206c656e67746873000000000000000060208201529150611cfb565b6020808252810161038881612002565b603081526000602082017f5269736b2066756e643a206d61726b65747320616e642070617468732061726581526f20756e657175616c206c656e6774687360801b60208201529150611cfb565b602080825281016103888161206c565b634e487b7160e01b600052603260045260246000fd5b6000610388826119cd565b6119e7816120df565b8051610388816120ea565b60006020828403121561211357612113600080fd5b600061184d84846120f3565b634e487b7160e01b600052604160045260246000fd5b601f19601f830116810181811067ffffffffffffffff8211171561215b5761215b61211f565b6040525050565b600061216d60405190565b90506121798282612135565b919050565b600067ffffffffffffffff8211156121985761219861211f565b601f19601f83011660200192915050565b60005b838110156121c45781810151838201526020016121ac565b838111156121d3576000848401525b50505050565b60006121ec6121e78461217e565b612162565b90508281526020810184848401111561220757612207600080fd5b6122128482856121a9565b509392505050565b600082601f83011261222e5761222e600080fd5b815161184d8482602086016121d9565b8051610388816119fd565b600060a0828403121561225e5761225e600080fd5b61226860a0612162565b825190915067ffffffffffffffff81111561228557612285600080fd5b6122918482850161221a565b82525060206122a284848301611f30565b60208301525060406122b684828501611f30565b60408301525060606122ca8482850161223e565b60608301525060806122de8482850161223e565b60808301525092915050565b6000602082840312156122ff576122ff600080fd5b815167ffffffffffffffff81111561231957612319600080fd5b61184d84828501612249565b602781526000602082017f636f6d7074726f6c6c657220646f65736e277420657869737420706f6f6c20728152666567697374727960c81b60208201529150611cfb565b6020808252810161038881612325565b60148152600060208201731b585c9ad95d081a5cc81b9bdd081b1a5cdd195960621b815291505b5060200190565b6020808252810161038881612379565b6000808335601e19368590030181126123d2576123d2600080fd5b80840192508235915067ffffffffffffffff8211156123f3576123f3600080fd5b6020928301928202360383131561240c5761240c600080fd5b509250929050565b634e487b7160e01b600052601160045260246000fd5b6000821982111561243d5761243d612414565b500190565b6000600019820361245557612455612414565b5060010190565b60006124688383611b4e565b505060200190565b600061186760208401846119f2565b8183526000602084019350818060005b858110156124bc576124a18284612470565b6124ab888261245c565b97506020830192505060010161248f565b509495945050505050565b82818337506000910152565b81835260006020840193506001600160fb1b038311156124f5576124f5600080fd5b6020830292506125068385846124c7565b50500190565b6060808252810161251e81878961247f565b905081810360208301526125338185876124d3565b9050610bd96040830184611a4b565b60408101611f238285611b4e565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572910190815260006123a0565b6020808252810161038881612550565b602581526000602082017f696e76616c696420616365737320636f6e74726f6c206d616e61676572206164815264647265737360d81b60208201529150611cfb565b6020808252810161038881612592565b604081016125f28285611b4e565b6118676020830184611b4e565b602b81526000602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150611cfb565b60208082528101610388816125ff565b602281526000602082017f436f6d7074726f6c6c65723a20496e76616c6964206d61784c6f6f70734c696d8152611a5d60f21b60208201529150611cfb565b6020808252810161038881612657565b60006126b0825190565b8084526020840193506126c78185602086016121a9565b601f01601f19169290920192915050565b604081016126e68285611b4e565b818103602083015261186481846126a6565b606081016127068286611b4e565b6127136020830185611b4e565b818103604083015261272581846126a6565b95945050505050565b603081526000602082017f5265736572766548656c706572733a20506f6f6c20526567697374727920616481526f191c995cdcc81a5cc81b9bdd081cd95d60821b60208201529150611cfb565b602080825281016103888161272e565b603281526000602082017f5265736572766548656c706572733a2054686520706f6f6c20646f65736e2774815271081cdd5c1c1bdc9d081d1a1948185cdcd95d60721b60208201529150611cfb565b602080825281016103888161278b565b6000602082840312156127ff576127ff600080fd5b600061184d848461223e565b603c81526000602082017f5269736b46756e643a20616d6f756e744f75744d696e206d757374206265206781527f726561746572207468616e203020746f20737761702076546f6b656e0000000060208201529150611cfb565b602080825281016103888161280b565b604081526000602082017f5269736b46756e643a20616d6f756e744f75744d696e2073686f756c6420626581527f2067726561746572207468616e206d696e416d6f756e74546f436f6e7665727460208201529150611cfb565b6020808252810161038881612875565b6000828210156128f1576128f1612414565b500390565b603881526000602082017f5269736b46756e643a20737761702070617468206d757374207374617274207781527f6974682074686520756e6465726c79696e67206173736574000000000000000060208201529150611cfb565b60208082528101610388816128f6565b603581526000602082017f5269736b46756e643a2066696e616c6c792070617468206d75737420626520638152741bdb9d995c9d1a589b194818985cd948185cdcd95d605a1b60208201529150611cfb565b6020808252810161038881612960565b6000610388611b798381565b611a4d816129c2565b604081016129e58285611b4e565b61186760208301846129ce565b60a08101612a008289611a4b565b612a0d6020830188611a4b565b8181036040830152612a2081868861247f565b9050612a2f6060830185611b4e565b6119486080830184611a4b565b600067ffffffffffffffff821115612a5657612a5661211f565b5060209081020190565b6000612a6e6121e784612a3c565b83815290506020808201908402830185811115612a8d57612a8d600080fd5b835b81811015612ab15780612aa2888261223e565b84525060209283019201612a8f565b5050509392505050565b600082601f830112612acf57612acf600080fd5b815161184d848260208601612a60565b600060208284031215612af457612af4600080fd5b815167ffffffffffffffff811115612b0e57612b0e600080fd5b61184d84828501612abb565b602a81526000602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150611cfb565b6020808252810161038881612b1a565b634e487b7160e01b600052601260045260246000fd5b600082612b9657612b96612b71565b500490565b602681526000602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150611cfb565b6020808252810161038881612b9b565b6000612bf8825190565b612c068185602086016121a9565b9290920192915050565b60006118678284612bee565b6000816000190483118215151615612c3657612c36612414565b500290565b601d81526000602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000815291506123a0565b6020808252810161038881612c3b565b6020808252810161186781846126a656fe73776170506f6f6c7341737365747328616464726573735b5d2c75696e743235365b5d2c616464726573735b5d5b5d29a26469706673582212204ca4b6e776c682f3979aeb15f3d466455874ee9664e240254c814ddd6429df0b64736f6c634300080d0033",
613
- "linkReferences": {},
614
- "deployedLinkReferences": {}
615
- }