@venusprotocol/venus-protocol 5.1.0-dev.2 → 5.1.0-dev.3

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 (105) hide show
  1. package/artifacts/@openzeppelin/contracts/access/IAccessControl.sol/IAccessControl.dbg.json +1 -1
  2. package/artifacts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
  3. package/artifacts/@openzeppelin/contracts/access/Ownable2Step.sol/Ownable2Step.dbg.json +1 -1
  4. package/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
  5. package/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.dbg.json +1 -1
  6. package/artifacts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
  7. package/artifacts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
  8. package/artifacts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
  9. package/artifacts/@openzeppelin/contracts-upgradeable/access/Ownable2StepUpgradeable.sol/Ownable2StepUpgradeable.dbg.json +1 -1
  10. package/artifacts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
  11. package/artifacts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
  12. package/artifacts/@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.dbg.json +1 -1
  13. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
  14. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol/IERC20MetadataUpgradeable.dbg.json +1 -1
  15. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.dbg.json +1 -1
  16. package/artifacts/@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol/SafeERC20Upgradeable.dbg.json +1 -1
  17. package/artifacts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
  18. package/artifacts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
  19. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/AccessControlledV8.sol/AccessControlledV8.dbg.json +1 -1
  20. package/artifacts/@venusprotocol/governance-contracts/contracts/Governance/IAccessControlManagerV8.sol/IAccessControlManagerV8.dbg.json +1 -1
  21. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/BoundValidatorInterface.dbg.json +1 -1
  22. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/OracleInterface.dbg.json +1 -1
  23. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/ResilientOracleInterface.dbg.json +1 -1
  24. package/artifacts/@venusprotocol/oracle/contracts/interfaces/OracleInterface.sol/TwapInterface.dbg.json +1 -1
  25. package/artifacts/build-info/bef6b5a62efc5de19d5510cf7f208c2e.json +1 -0
  26. package/artifacts/contracts/Admin/VBNBAdmin.sol/VBNBAdmin.dbg.json +1 -1
  27. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/IProtocolShareReserve.dbg.json +1 -1
  28. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/IWBNB.dbg.json +1 -1
  29. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/VBNBAdminStorage.dbg.json +1 -1
  30. package/artifacts/contracts/Admin/VBNBAdminStorage.sol/VTokenInterface.dbg.json +1 -1
  31. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/IComptroller.dbg.json +1 -1
  32. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/IPriceOracle.dbg.json +1 -1
  33. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/IVToken.dbg.json +1 -1
  34. package/artifacts/contracts/DelegateBorrowers/SwapDebtDelegate.sol/SwapDebtDelegate.dbg.json +1 -1
  35. package/artifacts/contracts/Liquidator/BUSDLiquidator.sol/BUSDLiquidator.dbg.json +4 -0
  36. package/artifacts/contracts/Liquidator/BUSDLiquidator.sol/BUSDLiquidator.json +324 -0
  37. package/artifacts/contracts/Liquidator/Interfaces.sol/IComptroller.dbg.json +1 -1
  38. package/artifacts/contracts/Liquidator/Interfaces.sol/IComptroller.json +36 -0
  39. package/artifacts/contracts/Liquidator/Interfaces.sol/ILiquidator.dbg.json +4 -0
  40. package/artifacts/contracts/Liquidator/Interfaces.sol/ILiquidator.json +127 -0
  41. package/artifacts/contracts/Liquidator/Interfaces.sol/IVAIController.dbg.json +1 -1
  42. package/artifacts/contracts/Liquidator/Interfaces.sol/IVBNB.dbg.json +1 -1
  43. package/artifacts/contracts/Liquidator/Interfaces.sol/IVBNB.json +20 -1
  44. package/artifacts/contracts/Liquidator/Interfaces.sol/IVBep20.dbg.json +1 -1
  45. package/artifacts/contracts/Liquidator/Interfaces.sol/IVBep20.json +20 -1
  46. package/artifacts/contracts/Liquidator/Interfaces.sol/IVToken.dbg.json +1 -1
  47. package/artifacts/contracts/Liquidator/Interfaces.sol/IVToken.json +20 -1
  48. package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.dbg.json +1 -1
  49. package/artifacts/contracts/Liquidator/Liquidator.sol/Liquidator.json +2 -2
  50. package/artifacts/contracts/PegStability/IVAI.sol/IVAI.dbg.json +1 -1
  51. package/artifacts/contracts/PegStability/PegStability.sol/PegStability.dbg.json +1 -1
  52. package/artifacts/contracts/Swap/IRouterHelper.sol/IRouterHelper.dbg.json +1 -1
  53. package/artifacts/contracts/Swap/RouterHelper.sol/RouterHelper.dbg.json +1 -1
  54. package/artifacts/contracts/Swap/SwapRouter.sol/SwapRouter.dbg.json +1 -1
  55. package/artifacts/contracts/Swap/interfaces/IPancakePair.sol/IPancakePair.dbg.json +1 -1
  56. package/artifacts/contracts/Swap/interfaces/IPancakeSwapV2Factory.sol/IPancakeSwapV2Factory.dbg.json +1 -1
  57. package/artifacts/contracts/Swap/interfaces/IPancakeSwapV2Router.sol/IPancakeSwapV2Router.dbg.json +1 -1
  58. package/artifacts/contracts/Swap/interfaces/IVBNB.sol/IVBNB.dbg.json +1 -1
  59. package/artifacts/contracts/Swap/interfaces/IVtoken.sol/IVToken.dbg.json +1 -1
  60. package/artifacts/contracts/Swap/interfaces/IWBNB.sol/IWBNB.dbg.json +1 -1
  61. package/artifacts/contracts/Swap/interfaces/InterfaceComptroller.sol/InterfaceComptroller.dbg.json +1 -1
  62. package/artifacts/contracts/Swap/lib/PancakeLibrary.sol/PancakeLibrary.dbg.json +1 -1
  63. package/artifacts/contracts/Swap/lib/TransferHelper.sol/TransferHelper.dbg.json +1 -1
  64. package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.dbg.json +1 -1
  65. package/artifacts/contracts/test/LiquidatorHarness.sol/LiquidatorHarness.json +2 -2
  66. package/contracts/Liquidator/BUSDLiquidator.sol +184 -0
  67. package/contracts/Liquidator/Interfaces.sol +43 -1
  68. package/contracts/Liquidator/Liquidator.sol +3 -11
  69. package/contracts/Liquidator/approveOrRevert.sol +28 -0
  70. package/contracts/Liquidator/constants.sol +5 -0
  71. package/contracts/Liquidator/zeroAddress.sol +11 -0
  72. package/dist/typechain/contracts/Liquidator/BUSDLiquidator.d.ts +264 -0
  73. package/dist/typechain/contracts/Liquidator/BUSDLiquidator.js +3 -0
  74. package/dist/typechain/contracts/Liquidator/Interfaces.sol/IComptroller.d.ts +31 -3
  75. package/dist/typechain/contracts/Liquidator/Interfaces.sol/ILiquidator.d.ts +143 -0
  76. package/dist/typechain/contracts/Liquidator/Interfaces.sol/ILiquidator.js +3 -0
  77. package/dist/typechain/contracts/Liquidator/Interfaces.sol/IVBNB.d.ts +22 -6
  78. package/dist/typechain/contracts/Liquidator/Interfaces.sol/IVBep20.d.ts +22 -6
  79. package/dist/typechain/contracts/Liquidator/Interfaces.sol/IVToken.d.ts +22 -6
  80. package/dist/typechain/contracts/Liquidator/Interfaces.sol/index.d.ts +1 -0
  81. package/dist/typechain/contracts/Liquidator/index.d.ts +1 -0
  82. package/dist/typechain/factories/contracts/Liquidator/BUSDLiquidator__factory.d.ts +264 -0
  83. package/dist/typechain/factories/contracts/Liquidator/BUSDLiquidator__factory.js +353 -0
  84. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IComptroller__factory.d.ts +28 -0
  85. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IComptroller__factory.js +36 -0
  86. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/ILiquidator__factory.d.ts +98 -0
  87. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/ILiquidator__factory.js +133 -0
  88. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IVBNB__factory.d.ts +15 -1
  89. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IVBNB__factory.js +20 -1
  90. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IVBep20__factory.d.ts +15 -1
  91. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IVBep20__factory.js +20 -1
  92. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IVToken__factory.d.ts +15 -1
  93. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/IVToken__factory.js +20 -1
  94. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/index.d.ts +1 -0
  95. package/dist/typechain/factories/contracts/Liquidator/Interfaces.sol/index.js +3 -1
  96. package/dist/typechain/factories/contracts/Liquidator/Liquidator__factory.d.ts +1 -1
  97. package/dist/typechain/factories/contracts/Liquidator/Liquidator__factory.js +1 -1
  98. package/dist/typechain/factories/contracts/Liquidator/index.d.ts +1 -0
  99. package/dist/typechain/factories/contracts/Liquidator/index.js +3 -1
  100. package/dist/typechain/factories/contracts/test/LiquidatorHarness__factory.d.ts +1 -1
  101. package/dist/typechain/factories/contracts/test/LiquidatorHarness__factory.js +1 -1
  102. package/dist/typechain/index.d.ts +4 -0
  103. package/dist/typechain/index.js +8 -4
  104. package/package.json +1 -1
  105. package/artifacts/build-info/6dd0842f1ff5cc6ec93b0e1b7e8d3053.json +0 -1
@@ -0,0 +1,264 @@
1
+ import type { PromiseOrValue } from "../../../common";
2
+ import type { BUSDLiquidator, BUSDLiquidatorInterface } from "../../../contracts/Liquidator/BUSDLiquidator";
3
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
4
+ import { Signer, ContractFactory, Overrides } from "ethers";
5
+ type BUSDLiquidatorConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
+ export declare class BUSDLiquidator__factory extends ContractFactory {
7
+ constructor(...args: BUSDLiquidatorConstructorParams);
8
+ deploy(comptroller_: PromiseOrValue<string>, vBUSD_: PromiseOrValue<string>, treasury_: PromiseOrValue<string>, overrides?: Overrides & {
9
+ from?: PromiseOrValue<string>;
10
+ }): Promise<BUSDLiquidator>;
11
+ getDeployTransaction(comptroller_: PromiseOrValue<string>, vBUSD_: PromiseOrValue<string>, treasury_: PromiseOrValue<string>, overrides?: Overrides & {
12
+ from?: PromiseOrValue<string>;
13
+ }): TransactionRequest;
14
+ attach(address: string): BUSDLiquidator;
15
+ connect(signer: Signer): BUSDLiquidator__factory;
16
+ static readonly bytecode = "0x60e06040523480156200001157600080fd5b50604051620019b2380380620019b283398101604081905262000034916200018a565b6200003f8262000081565b6200004a8362000081565b620000558162000081565b6001600160a01b0380831660805283811660a052811660c05262000078620000ac565b505050620001d4565b6001600160a01b038116620000a95760405163f5bf603960e01b815260040160405180910390fd5b50565b600054610100900460ff1615620001195760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146200016b576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b03811681146200018557600080fd5b919050565b600080600060608486031215620001a057600080fd5b620001ab846200016d565b9250620001bb602085016200016d565b9150620001cb604085016200016d565b90509250925092565b60805160a05160c05161176962000249600039600081816101870152610f86015260008181610160015281816108970152818161092501528181610ad701528181610b5d0152610caa01526000818160f4015281816103d9015281816107cd01528181610d300152610e4e01526117696000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063eb4c08e711610066578063eb4c08e7146101ee578063f2fde38b14610205578063f5e3c46214610218578063fe4b84df1461022b57600080fd5b80638da5cb5b146101b9578063e30c3978146101ca578063e811a6b2146101db57600080fd5b80635fe3b567116100c85780635fe3b5671461015b57806361d027b314610182578063715018a6146101a957806379ba5097146101b157600080fd5b8063113c8dca146100ef5780631be195601461013357806351adb2d914610148575b600080fd5b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61014661014136600461141a565b61023e565b005b61014661015636600461143e565b6102c8565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b61014661031f565b610146610333565b6033546001600160a01b0316610116565b6065546001600160a01b0316610116565b6101466101e9366004611457565b6103af565b6101f760c95481565b60405190815260200161012a565b61014661021336600461141a565b610464565b610146610226366004611490565b6104d5565b61014661023936600461143e565b6104f7565b610246610617565b6040516370a0823160e01b81523060048201526102c59033906001600160a01b038416906370a0823190602401602060405180830381865afa158015610290573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b491906114d2565b6001600160a01b0384169190610671565b50565b6102d0610617565b6102d9816106d4565b60c980549082905560408051828152602081018490527f65bd04e1492c77f09aded2ec894213d66dbbfccfd511e0aa18c11c8724c45d2d91015b60405180910390a15050565b610327610617565b6103316000610737565b565b60655433906001600160a01b031681146103a65760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b60648201526084015b60405180910390fd5b6102c581610737565b6103b7610750565b6040516305eff7ef60e21b81526001600160a01b0383811660048301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906317bfdfbc906024016020604051808303816000875af1158015610424573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044891906114d2565b90506104558382846107a9565b506104606001609755565b5050565b61046c610617565b606580546001600160a01b0383166001600160a01b0319909116811790915561049d6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6104dd610750565b6104e88383836107a9565b6104f26001609755565b505050565b600054610100900460ff16158080156105175750600054600160ff909116105b806105315750303b158015610531575060005460ff166001145b6105945760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161039d565b6000805460ff1916600117905580156105b7576000805461ff0019166101001790555b6105bf61099f565b6105c76109ce565b6105d0826106d4565b60c98290558015610460576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610313565b6033546001600160a01b031633146103315760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039d565b6040516001600160a01b0383166024820152604481018290526104f290849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526109fd565b60006106de610ad2565b9050670de0b6b3a764000082101561070c576040516315a437f560e21b81526004810183905260240161039d565b80821115610460576040516321f757e560e11b8152600481018290526024810183905260440161039d565b606580546001600160a01b03191690556102c581610c54565b6002609754036107a25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161039d565b6002609755565b604080516001808252818301909252600091602080830190803683370190505090507f0000000000000000000000000000000000000000000000000000000000000000816000815181106107ff576107ff6114eb565b6001600160a01b039290921660209283029190910190910152604080516001808252818301909252600091816020016020820280368337019050509050600581600081518110610851576108516114eb565b6020026020010190600881111561086a5761086a611501565b9081600881111561087d5761087d611501565b905250604051630ad75e4360e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632b5d790c906108d19085908590600090600401611517565b600060405180830381600087803b1580156108eb57600080fd5b505af11580156108ff573d6000803e3d6000fd5b5050505061090e858585610ca6565b604051630ad75e4360e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632b5d790c9061095f9085908590600190600401611517565b600060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050505050505050565b6001609755565b600054610100900460ff166109c65760405162461bcd60e51b815260040161039d906115c0565b610331610fb7565b600054610100900460ff166109f55760405162461bcd60e51b815260040161039d906115c0565b610331610fe7565b6000610a52826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661100e9092919063ffffffff16565b9050805160001480610a73575080806020019051810190610a73919061160b565b6104f25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161039d565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ada90af6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5791906114d2565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639bb27d626040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bdd919061162d565b6001600160a01b0316638e3525fc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3e91906114d2565b90506000610c4c8284611660565b949350505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639bb27d626040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2a919061162d565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db0919061162d565b90506000610dbf82338761101d565b9050610dcc82848361111e565b6040516370a0823160e01b81523060048201526000906001600160a01b038616906370a0823190602401602060405180830381865afa158015610e13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3791906114d2565b604051630c9fae0f60e31b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301528981166024830152604482018590528781166064830152919250908516906364fd707890608401600060405180830381600087803b158015610eb557600080fd5b505af1158015610ec9573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152600092508391506001600160a01b038816906370a0823190602401602060405180830381865afa158015610f16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f3a91906114d2565b610f449190611660565b9050610f528486600061111e565b600080610f5e83611212565b9092509050610f776001600160a01b0389163384610671565b610fab6001600160a01b0389167f000000000000000000000000000000000000000000000000000000000000000083610671565b50505050505050505050565b600054610100900460ff16610fde5760405162461bcd60e51b815260040161039d906115c0565b61033133610737565b600054610100900460ff166109985760405162461bcd60e51b815260040161039d906115c0565b6060610c4c848460008561124e565b6040516370a0823160e01b815230600482015260009081906001600160a01b038616906370a0823190602401602060405180830381865afa158015611066573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108a91906114d2565b90506110a16001600160a01b038616853086611329565b6040516370a0823160e01b815230600482015281906001600160a01b038716906370a0823190602401602060405180830381865afa1580156110e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110b91906114d2565b6111159190611660565b95945050505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b17905291519091600091829187169061117c9085906116a3565b6000604051808303816000865af19150503d80600081146111b9576040519150601f19603f3d011682016040523d82523d6000602084013e6111be565b606091505b50915091508115806111ec57508051158015906111ec5750808060200190518101906111ea919061160b565b155b1561120a57604051633e3f8f7360e01b815260040160405180910390fd5b505050505050565b600080600061121f610ad2565b90508060c9548561123091906116bf565b61123a91906116de565b92506112468385611660565b915050915091565b6060824710156112af5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161039d565b600080866001600160a01b031685876040516112cb91906116a3565b60006040518083038185875af1925050503d8060008114611308576040519150601f19603f3d011682016040523d82523d6000602084013e61130d565b606091505b509150915061131e87838387611367565b979650505050505050565b6040516001600160a01b03808516602483015283166044820152606481018290526113619085906323b872dd60e01b9060840161069d565b50505050565b606083156113d65782516000036113cf576001600160a01b0385163b6113cf5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161039d565b5081610c4c565b610c4c83838151156113eb5781518083602001fd5b8060405162461bcd60e51b815260040161039d9190611700565b6001600160a01b03811681146102c557600080fd5b60006020828403121561142c57600080fd5b813561143781611405565b9392505050565b60006020828403121561145057600080fd5b5035919050565b6000806040838503121561146a57600080fd5b823561147581611405565b9150602083013561148581611405565b809150509250929050565b6000806000606084860312156114a557600080fd5b83356114b081611405565b92506020840135915060408401356114c781611405565b809150509250925092565b6000602082840312156114e457600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b606080825284519082018190526000906020906080840190828801845b828110156115595781516001600160a01b031684529284019290840190600101611534565b5050508381038285015285518082528683019183019060005b818110156115ac5783516009811061159a57634e487b7160e01b600052602160045260246000fd5b83529284019291840191600101611572565b505085151560408601529250610c4c915050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006020828403121561161d57600080fd5b8151801515811461143757600080fd5b60006020828403121561163f57600080fd5b815161143781611405565b634e487b7160e01b600052601160045260246000fd5b6000828210156116725761167261164a565b500390565b60005b8381101561169257818101518382015260200161167a565b838111156113615750506000910152565b600082516116b5818460208701611677565b9190910192915050565b60008160001904831182151516156116d9576116d961164a565b500290565b6000826116fb57634e487b7160e01b600052601260045260246000fd5b500490565b602081526000825180602084015261171f816040850160208701611677565b601f01601f1916919091016040019291505056fea26469706673582212200fc03428da5c0eb56a36485b2be9df00825c4da6b3c95d70a8bc2ab23ff7190664736f6c634300080d0033";
17
+ static readonly abi: readonly [{
18
+ readonly inputs: readonly [{
19
+ readonly internalType: "address";
20
+ readonly name: "comptroller_";
21
+ readonly type: "address";
22
+ }, {
23
+ readonly internalType: "address";
24
+ readonly name: "vBUSD_";
25
+ readonly type: "address";
26
+ }, {
27
+ readonly internalType: "address";
28
+ readonly name: "treasury_";
29
+ readonly type: "address";
30
+ }];
31
+ readonly stateMutability: "nonpayable";
32
+ readonly type: "constructor";
33
+ }, {
34
+ readonly inputs: readonly [];
35
+ readonly name: "ApproveFailed";
36
+ readonly type: "error";
37
+ }, {
38
+ readonly inputs: readonly [{
39
+ readonly internalType: "uint256";
40
+ readonly name: "maxLiquidatorShareMantissa";
41
+ readonly type: "uint256";
42
+ }, {
43
+ readonly internalType: "uint256";
44
+ readonly name: "liquidatorShareMantissa_";
45
+ readonly type: "uint256";
46
+ }];
47
+ readonly name: "LiquidatorShareTooHigh";
48
+ readonly type: "error";
49
+ }, {
50
+ readonly inputs: readonly [{
51
+ readonly internalType: "uint256";
52
+ readonly name: "liquidatorShareMantissa_";
53
+ readonly type: "uint256";
54
+ }];
55
+ readonly name: "LiquidatorShareTooLow";
56
+ readonly type: "error";
57
+ }, {
58
+ readonly inputs: readonly [];
59
+ readonly name: "UnexpectedZeroAddress";
60
+ readonly type: "error";
61
+ }, {
62
+ readonly anonymous: false;
63
+ readonly inputs: readonly [{
64
+ readonly indexed: false;
65
+ readonly internalType: "uint8";
66
+ readonly name: "version";
67
+ readonly type: "uint8";
68
+ }];
69
+ readonly name: "Initialized";
70
+ readonly type: "event";
71
+ }, {
72
+ readonly anonymous: false;
73
+ readonly inputs: readonly [{
74
+ readonly indexed: false;
75
+ readonly internalType: "uint256";
76
+ readonly name: "oldLiquidatorShareMantissa";
77
+ readonly type: "uint256";
78
+ }, {
79
+ readonly indexed: false;
80
+ readonly internalType: "uint256";
81
+ readonly name: "newLiquidatorShareMantissa";
82
+ readonly type: "uint256";
83
+ }];
84
+ readonly name: "NewLiquidatorShare";
85
+ readonly type: "event";
86
+ }, {
87
+ readonly anonymous: false;
88
+ readonly inputs: readonly [{
89
+ readonly indexed: true;
90
+ readonly internalType: "address";
91
+ readonly name: "previousOwner";
92
+ readonly type: "address";
93
+ }, {
94
+ readonly indexed: true;
95
+ readonly internalType: "address";
96
+ readonly name: "newOwner";
97
+ readonly type: "address";
98
+ }];
99
+ readonly name: "OwnershipTransferStarted";
100
+ readonly type: "event";
101
+ }, {
102
+ readonly anonymous: false;
103
+ readonly inputs: readonly [{
104
+ readonly indexed: true;
105
+ readonly internalType: "address";
106
+ readonly name: "previousOwner";
107
+ readonly type: "address";
108
+ }, {
109
+ readonly indexed: true;
110
+ readonly internalType: "address";
111
+ readonly name: "newOwner";
112
+ readonly type: "address";
113
+ }];
114
+ readonly name: "OwnershipTransferred";
115
+ readonly type: "event";
116
+ }, {
117
+ readonly inputs: readonly [];
118
+ readonly name: "acceptOwnership";
119
+ readonly outputs: readonly [];
120
+ readonly stateMutability: "nonpayable";
121
+ readonly type: "function";
122
+ }, {
123
+ readonly inputs: readonly [];
124
+ readonly name: "comptroller";
125
+ readonly outputs: readonly [{
126
+ readonly internalType: "contract IComptroller";
127
+ readonly name: "";
128
+ readonly type: "address";
129
+ }];
130
+ readonly stateMutability: "view";
131
+ readonly type: "function";
132
+ }, {
133
+ readonly inputs: readonly [{
134
+ readonly internalType: "uint256";
135
+ readonly name: "liquidatorShareMantissa_";
136
+ readonly type: "uint256";
137
+ }];
138
+ readonly name: "initialize";
139
+ readonly outputs: readonly [];
140
+ readonly stateMutability: "nonpayable";
141
+ readonly type: "function";
142
+ }, {
143
+ readonly inputs: readonly [{
144
+ readonly internalType: "address";
145
+ readonly name: "borrower";
146
+ readonly type: "address";
147
+ }, {
148
+ readonly internalType: "uint256";
149
+ readonly name: "repayAmount";
150
+ readonly type: "uint256";
151
+ }, {
152
+ readonly internalType: "contract IVToken";
153
+ readonly name: "vTokenCollateral";
154
+ readonly type: "address";
155
+ }];
156
+ readonly name: "liquidateBorrow";
157
+ readonly outputs: readonly [];
158
+ readonly stateMutability: "nonpayable";
159
+ readonly type: "function";
160
+ }, {
161
+ readonly inputs: readonly [{
162
+ readonly internalType: "address";
163
+ readonly name: "borrower";
164
+ readonly type: "address";
165
+ }, {
166
+ readonly internalType: "contract IVToken";
167
+ readonly name: "vTokenCollateral";
168
+ readonly type: "address";
169
+ }];
170
+ readonly name: "liquidateEntireBorrow";
171
+ readonly outputs: readonly [];
172
+ readonly stateMutability: "nonpayable";
173
+ readonly type: "function";
174
+ }, {
175
+ readonly inputs: readonly [];
176
+ readonly name: "liquidatorShareMantissa";
177
+ readonly outputs: readonly [{
178
+ readonly internalType: "uint256";
179
+ readonly name: "";
180
+ readonly type: "uint256";
181
+ }];
182
+ readonly stateMutability: "view";
183
+ readonly type: "function";
184
+ }, {
185
+ readonly inputs: readonly [];
186
+ readonly name: "owner";
187
+ readonly outputs: readonly [{
188
+ readonly internalType: "address";
189
+ readonly name: "";
190
+ readonly type: "address";
191
+ }];
192
+ readonly stateMutability: "view";
193
+ readonly type: "function";
194
+ }, {
195
+ readonly inputs: readonly [];
196
+ readonly name: "pendingOwner";
197
+ readonly outputs: readonly [{
198
+ readonly internalType: "address";
199
+ readonly name: "";
200
+ readonly type: "address";
201
+ }];
202
+ readonly stateMutability: "view";
203
+ readonly type: "function";
204
+ }, {
205
+ readonly inputs: readonly [];
206
+ readonly name: "renounceOwnership";
207
+ readonly outputs: readonly [];
208
+ readonly stateMutability: "nonpayable";
209
+ readonly type: "function";
210
+ }, {
211
+ readonly inputs: readonly [{
212
+ readonly internalType: "uint256";
213
+ readonly name: "liquidatorShareMantissa_";
214
+ readonly type: "uint256";
215
+ }];
216
+ readonly name: "setLiquidatorShare";
217
+ readonly outputs: readonly [];
218
+ readonly stateMutability: "nonpayable";
219
+ readonly type: "function";
220
+ }, {
221
+ readonly inputs: readonly [{
222
+ readonly internalType: "contract IERC20Upgradeable";
223
+ readonly name: "token";
224
+ readonly type: "address";
225
+ }];
226
+ readonly name: "sweepToken";
227
+ readonly outputs: readonly [];
228
+ readonly stateMutability: "nonpayable";
229
+ readonly type: "function";
230
+ }, {
231
+ readonly inputs: readonly [{
232
+ readonly internalType: "address";
233
+ readonly name: "newOwner";
234
+ readonly type: "address";
235
+ }];
236
+ readonly name: "transferOwnership";
237
+ readonly outputs: readonly [];
238
+ readonly stateMutability: "nonpayable";
239
+ readonly type: "function";
240
+ }, {
241
+ readonly inputs: readonly [];
242
+ readonly name: "treasury";
243
+ readonly outputs: readonly [{
244
+ readonly internalType: "address";
245
+ readonly name: "";
246
+ readonly type: "address";
247
+ }];
248
+ readonly stateMutability: "view";
249
+ readonly type: "function";
250
+ }, {
251
+ readonly inputs: readonly [];
252
+ readonly name: "vBUSD";
253
+ readonly outputs: readonly [{
254
+ readonly internalType: "contract IVBep20";
255
+ readonly name: "";
256
+ readonly type: "address";
257
+ }];
258
+ readonly stateMutability: "view";
259
+ readonly type: "function";
260
+ }];
261
+ static createInterface(): BUSDLiquidatorInterface;
262
+ static connect(address: string, signerOrProvider: Signer | Provider): BUSDLiquidator;
263
+ }
264
+ export {};
@@ -0,0 +1,353 @@
1
+ "use strict";
2
+ /* Autogenerated file. Do not edit manually. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.BUSDLiquidator__factory = void 0;
5
+ const ethers_1 = require("ethers");
6
+ const _abi = [
7
+ {
8
+ inputs: [
9
+ {
10
+ internalType: "address",
11
+ name: "comptroller_",
12
+ type: "address",
13
+ },
14
+ {
15
+ internalType: "address",
16
+ name: "vBUSD_",
17
+ type: "address",
18
+ },
19
+ {
20
+ internalType: "address",
21
+ name: "treasury_",
22
+ type: "address",
23
+ },
24
+ ],
25
+ stateMutability: "nonpayable",
26
+ type: "constructor",
27
+ },
28
+ {
29
+ inputs: [],
30
+ name: "ApproveFailed",
31
+ type: "error",
32
+ },
33
+ {
34
+ inputs: [
35
+ {
36
+ internalType: "uint256",
37
+ name: "maxLiquidatorShareMantissa",
38
+ type: "uint256",
39
+ },
40
+ {
41
+ internalType: "uint256",
42
+ name: "liquidatorShareMantissa_",
43
+ type: "uint256",
44
+ },
45
+ ],
46
+ name: "LiquidatorShareTooHigh",
47
+ type: "error",
48
+ },
49
+ {
50
+ inputs: [
51
+ {
52
+ internalType: "uint256",
53
+ name: "liquidatorShareMantissa_",
54
+ type: "uint256",
55
+ },
56
+ ],
57
+ name: "LiquidatorShareTooLow",
58
+ type: "error",
59
+ },
60
+ {
61
+ inputs: [],
62
+ name: "UnexpectedZeroAddress",
63
+ type: "error",
64
+ },
65
+ {
66
+ anonymous: false,
67
+ inputs: [
68
+ {
69
+ indexed: false,
70
+ internalType: "uint8",
71
+ name: "version",
72
+ type: "uint8",
73
+ },
74
+ ],
75
+ name: "Initialized",
76
+ type: "event",
77
+ },
78
+ {
79
+ anonymous: false,
80
+ inputs: [
81
+ {
82
+ indexed: false,
83
+ internalType: "uint256",
84
+ name: "oldLiquidatorShareMantissa",
85
+ type: "uint256",
86
+ },
87
+ {
88
+ indexed: false,
89
+ internalType: "uint256",
90
+ name: "newLiquidatorShareMantissa",
91
+ type: "uint256",
92
+ },
93
+ ],
94
+ name: "NewLiquidatorShare",
95
+ type: "event",
96
+ },
97
+ {
98
+ anonymous: false,
99
+ inputs: [
100
+ {
101
+ indexed: true,
102
+ internalType: "address",
103
+ name: "previousOwner",
104
+ type: "address",
105
+ },
106
+ {
107
+ indexed: true,
108
+ internalType: "address",
109
+ name: "newOwner",
110
+ type: "address",
111
+ },
112
+ ],
113
+ name: "OwnershipTransferStarted",
114
+ type: "event",
115
+ },
116
+ {
117
+ anonymous: false,
118
+ inputs: [
119
+ {
120
+ indexed: true,
121
+ internalType: "address",
122
+ name: "previousOwner",
123
+ type: "address",
124
+ },
125
+ {
126
+ indexed: true,
127
+ internalType: "address",
128
+ name: "newOwner",
129
+ type: "address",
130
+ },
131
+ ],
132
+ name: "OwnershipTransferred",
133
+ type: "event",
134
+ },
135
+ {
136
+ inputs: [],
137
+ name: "acceptOwnership",
138
+ outputs: [],
139
+ stateMutability: "nonpayable",
140
+ type: "function",
141
+ },
142
+ {
143
+ inputs: [],
144
+ name: "comptroller",
145
+ outputs: [
146
+ {
147
+ internalType: "contract IComptroller",
148
+ name: "",
149
+ type: "address",
150
+ },
151
+ ],
152
+ stateMutability: "view",
153
+ type: "function",
154
+ },
155
+ {
156
+ inputs: [
157
+ {
158
+ internalType: "uint256",
159
+ name: "liquidatorShareMantissa_",
160
+ type: "uint256",
161
+ },
162
+ ],
163
+ name: "initialize",
164
+ outputs: [],
165
+ stateMutability: "nonpayable",
166
+ type: "function",
167
+ },
168
+ {
169
+ inputs: [
170
+ {
171
+ internalType: "address",
172
+ name: "borrower",
173
+ type: "address",
174
+ },
175
+ {
176
+ internalType: "uint256",
177
+ name: "repayAmount",
178
+ type: "uint256",
179
+ },
180
+ {
181
+ internalType: "contract IVToken",
182
+ name: "vTokenCollateral",
183
+ type: "address",
184
+ },
185
+ ],
186
+ name: "liquidateBorrow",
187
+ outputs: [],
188
+ stateMutability: "nonpayable",
189
+ type: "function",
190
+ },
191
+ {
192
+ inputs: [
193
+ {
194
+ internalType: "address",
195
+ name: "borrower",
196
+ type: "address",
197
+ },
198
+ {
199
+ internalType: "contract IVToken",
200
+ name: "vTokenCollateral",
201
+ type: "address",
202
+ },
203
+ ],
204
+ name: "liquidateEntireBorrow",
205
+ outputs: [],
206
+ stateMutability: "nonpayable",
207
+ type: "function",
208
+ },
209
+ {
210
+ inputs: [],
211
+ name: "liquidatorShareMantissa",
212
+ outputs: [
213
+ {
214
+ internalType: "uint256",
215
+ name: "",
216
+ type: "uint256",
217
+ },
218
+ ],
219
+ stateMutability: "view",
220
+ type: "function",
221
+ },
222
+ {
223
+ inputs: [],
224
+ name: "owner",
225
+ outputs: [
226
+ {
227
+ internalType: "address",
228
+ name: "",
229
+ type: "address",
230
+ },
231
+ ],
232
+ stateMutability: "view",
233
+ type: "function",
234
+ },
235
+ {
236
+ inputs: [],
237
+ name: "pendingOwner",
238
+ outputs: [
239
+ {
240
+ internalType: "address",
241
+ name: "",
242
+ type: "address",
243
+ },
244
+ ],
245
+ stateMutability: "view",
246
+ type: "function",
247
+ },
248
+ {
249
+ inputs: [],
250
+ name: "renounceOwnership",
251
+ outputs: [],
252
+ stateMutability: "nonpayable",
253
+ type: "function",
254
+ },
255
+ {
256
+ inputs: [
257
+ {
258
+ internalType: "uint256",
259
+ name: "liquidatorShareMantissa_",
260
+ type: "uint256",
261
+ },
262
+ ],
263
+ name: "setLiquidatorShare",
264
+ outputs: [],
265
+ stateMutability: "nonpayable",
266
+ type: "function",
267
+ },
268
+ {
269
+ inputs: [
270
+ {
271
+ internalType: "contract IERC20Upgradeable",
272
+ name: "token",
273
+ type: "address",
274
+ },
275
+ ],
276
+ name: "sweepToken",
277
+ outputs: [],
278
+ stateMutability: "nonpayable",
279
+ type: "function",
280
+ },
281
+ {
282
+ inputs: [
283
+ {
284
+ internalType: "address",
285
+ name: "newOwner",
286
+ type: "address",
287
+ },
288
+ ],
289
+ name: "transferOwnership",
290
+ outputs: [],
291
+ stateMutability: "nonpayable",
292
+ type: "function",
293
+ },
294
+ {
295
+ inputs: [],
296
+ name: "treasury",
297
+ outputs: [
298
+ {
299
+ internalType: "address",
300
+ name: "",
301
+ type: "address",
302
+ },
303
+ ],
304
+ stateMutability: "view",
305
+ type: "function",
306
+ },
307
+ {
308
+ inputs: [],
309
+ name: "vBUSD",
310
+ outputs: [
311
+ {
312
+ internalType: "contract IVBep20",
313
+ name: "",
314
+ type: "address",
315
+ },
316
+ ],
317
+ stateMutability: "view",
318
+ type: "function",
319
+ },
320
+ ];
321
+ const _bytecode = "0x60e06040523480156200001157600080fd5b50604051620019b2380380620019b283398101604081905262000034916200018a565b6200003f8262000081565b6200004a8362000081565b620000558162000081565b6001600160a01b0380831660805283811660a052811660c05262000078620000ac565b505050620001d4565b6001600160a01b038116620000a95760405163f5bf603960e01b815260040160405180910390fd5b50565b600054610100900460ff1615620001195760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff908116146200016b576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b80516001600160a01b03811681146200018557600080fd5b919050565b600080600060608486031215620001a057600080fd5b620001ab846200016d565b9250620001bb602085016200016d565b9150620001cb604085016200016d565b90509250925092565b60805160a05160c05161176962000249600039600081816101870152610f86015260008181610160015281816108970152818161092501528181610ad701528181610b5d0152610caa01526000818160f4015281816103d9015281816107cd01528181610d300152610e4e01526117696000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638da5cb5b1161008c578063eb4c08e711610066578063eb4c08e7146101ee578063f2fde38b14610205578063f5e3c46214610218578063fe4b84df1461022b57600080fd5b80638da5cb5b146101b9578063e30c3978146101ca578063e811a6b2146101db57600080fd5b80635fe3b567116100c85780635fe3b5671461015b57806361d027b314610182578063715018a6146101a957806379ba5097146101b157600080fd5b8063113c8dca146100ef5780631be195601461013357806351adb2d914610148575b600080fd5b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61014661014136600461141a565b61023e565b005b61014661015636600461143e565b6102c8565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b6101167f000000000000000000000000000000000000000000000000000000000000000081565b61014661031f565b610146610333565b6033546001600160a01b0316610116565b6065546001600160a01b0316610116565b6101466101e9366004611457565b6103af565b6101f760c95481565b60405190815260200161012a565b61014661021336600461141a565b610464565b610146610226366004611490565b6104d5565b61014661023936600461143e565b6104f7565b610246610617565b6040516370a0823160e01b81523060048201526102c59033906001600160a01b038416906370a0823190602401602060405180830381865afa158015610290573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102b491906114d2565b6001600160a01b0384169190610671565b50565b6102d0610617565b6102d9816106d4565b60c980549082905560408051828152602081018490527f65bd04e1492c77f09aded2ec894213d66dbbfccfd511e0aa18c11c8724c45d2d91015b60405180910390a15050565b610327610617565b6103316000610737565b565b60655433906001600160a01b031681146103a65760405162461bcd60e51b815260206004820152602960248201527f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865206044820152683732bb9037bbb732b960b91b60648201526084015b60405180910390fd5b6102c581610737565b6103b7610750565b6040516305eff7ef60e21b81526001600160a01b0383811660048301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906317bfdfbc906024016020604051808303816000875af1158015610424573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061044891906114d2565b90506104558382846107a9565b506104606001609755565b5050565b61046c610617565b606580546001600160a01b0383166001600160a01b0319909116811790915561049d6033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6104dd610750565b6104e88383836107a9565b6104f26001609755565b505050565b600054610100900460ff16158080156105175750600054600160ff909116105b806105315750303b158015610531575060005460ff166001145b6105945760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161039d565b6000805460ff1916600117905580156105b7576000805461ff0019166101001790555b6105bf61099f565b6105c76109ce565b6105d0826106d4565b60c98290558015610460576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610313565b6033546001600160a01b031633146103315760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039d565b6040516001600160a01b0383166024820152604481018290526104f290849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526109fd565b60006106de610ad2565b9050670de0b6b3a764000082101561070c576040516315a437f560e21b81526004810183905260240161039d565b80821115610460576040516321f757e560e11b8152600481018290526024810183905260440161039d565b606580546001600160a01b03191690556102c581610c54565b6002609754036107a25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161039d565b6002609755565b604080516001808252818301909252600091602080830190803683370190505090507f0000000000000000000000000000000000000000000000000000000000000000816000815181106107ff576107ff6114eb565b6001600160a01b039290921660209283029190910190910152604080516001808252818301909252600091816020016020820280368337019050509050600581600081518110610851576108516114eb565b6020026020010190600881111561086a5761086a611501565b9081600881111561087d5761087d611501565b905250604051630ad75e4360e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632b5d790c906108d19085908590600090600401611517565b600060405180830381600087803b1580156108eb57600080fd5b505af11580156108ff573d6000803e3d6000fd5b5050505061090e858585610ca6565b604051630ad75e4360e21b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632b5d790c9061095f9085908590600190600401611517565b600060405180830381600087803b15801561097957600080fd5b505af115801561098d573d6000803e3d6000fd5b505050505050505050565b6001609755565b600054610100900460ff166109c65760405162461bcd60e51b815260040161039d906115c0565b610331610fb7565b600054610100900460ff166109f55760405162461bcd60e51b815260040161039d906115c0565b610331610fe7565b6000610a52826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661100e9092919063ffffffff16565b9050805160001480610a73575080806020019051810190610a73919061160b565b6104f25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161039d565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ada90af6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5791906114d2565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639bb27d626040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bdd919061162d565b6001600160a01b0316638e3525fc6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c3e91906114d2565b90506000610c4c8284611660565b949350505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639bb27d626040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d06573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2a919061162d565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db0919061162d565b90506000610dbf82338761101d565b9050610dcc82848361111e565b6040516370a0823160e01b81523060048201526000906001600160a01b038616906370a0823190602401602060405180830381865afa158015610e13573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e3791906114d2565b604051630c9fae0f60e31b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660048301528981166024830152604482018590528781166064830152919250908516906364fd707890608401600060405180830381600087803b158015610eb557600080fd5b505af1158015610ec9573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152600092508391506001600160a01b038816906370a0823190602401602060405180830381865afa158015610f16573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f3a91906114d2565b610f449190611660565b9050610f528486600061111e565b600080610f5e83611212565b9092509050610f776001600160a01b0389163384610671565b610fab6001600160a01b0389167f000000000000000000000000000000000000000000000000000000000000000083610671565b50505050505050505050565b600054610100900460ff16610fde5760405162461bcd60e51b815260040161039d906115c0565b61033133610737565b600054610100900460ff166109985760405162461bcd60e51b815260040161039d906115c0565b6060610c4c848460008561124e565b6040516370a0823160e01b815230600482015260009081906001600160a01b038616906370a0823190602401602060405180830381865afa158015611066573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061108a91906114d2565b90506110a16001600160a01b038616853086611329565b6040516370a0823160e01b815230600482015281906001600160a01b038716906370a0823190602401602060405180830381865afa1580156110e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110b91906114d2565b6111159190611660565b95945050505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b17905291519091600091829187169061117c9085906116a3565b6000604051808303816000865af19150503d80600081146111b9576040519150601f19603f3d011682016040523d82523d6000602084013e6111be565b606091505b50915091508115806111ec57508051158015906111ec5750808060200190518101906111ea919061160b565b155b1561120a57604051633e3f8f7360e01b815260040160405180910390fd5b505050505050565b600080600061121f610ad2565b90508060c9548561123091906116bf565b61123a91906116de565b92506112468385611660565b915050915091565b6060824710156112af5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161039d565b600080866001600160a01b031685876040516112cb91906116a3565b60006040518083038185875af1925050503d8060008114611308576040519150601f19603f3d011682016040523d82523d6000602084013e61130d565b606091505b509150915061131e87838387611367565b979650505050505050565b6040516001600160a01b03808516602483015283166044820152606481018290526113619085906323b872dd60e01b9060840161069d565b50505050565b606083156113d65782516000036113cf576001600160a01b0385163b6113cf5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161039d565b5081610c4c565b610c4c83838151156113eb5781518083602001fd5b8060405162461bcd60e51b815260040161039d9190611700565b6001600160a01b03811681146102c557600080fd5b60006020828403121561142c57600080fd5b813561143781611405565b9392505050565b60006020828403121561145057600080fd5b5035919050565b6000806040838503121561146a57600080fd5b823561147581611405565b9150602083013561148581611405565b809150509250929050565b6000806000606084860312156114a557600080fd5b83356114b081611405565b92506020840135915060408401356114c781611405565b809150509250925092565b6000602082840312156114e457600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b606080825284519082018190526000906020906080840190828801845b828110156115595781516001600160a01b031684529284019290840190600101611534565b5050508381038285015285518082528683019183019060005b818110156115ac5783516009811061159a57634e487b7160e01b600052602160045260246000fd5b83529284019291840191600101611572565b505085151560408601529250610c4c915050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006020828403121561161d57600080fd5b8151801515811461143757600080fd5b60006020828403121561163f57600080fd5b815161143781611405565b634e487b7160e01b600052601160045260246000fd5b6000828210156116725761167261164a565b500390565b60005b8381101561169257818101518382015260200161167a565b838111156113615750506000910152565b600082516116b5818460208701611677565b9190910192915050565b60008160001904831182151516156116d9576116d961164a565b500290565b6000826116fb57634e487b7160e01b600052601260045260246000fd5b500490565b602081526000825180602084015261171f816040850160208701611677565b601f01601f1916919091016040019291505056fea26469706673582212200fc03428da5c0eb56a36485b2be9df00825c4da6b3c95d70a8bc2ab23ff7190664736f6c634300080d0033";
322
+ const isSuperArgs = (xs) => xs.length > 1;
323
+ class BUSDLiquidator__factory extends ethers_1.ContractFactory {
324
+ constructor(...args) {
325
+ if (isSuperArgs(args)) {
326
+ super(...args);
327
+ }
328
+ else {
329
+ super(_abi, _bytecode, args[0]);
330
+ }
331
+ }
332
+ deploy(comptroller_, vBUSD_, treasury_, overrides) {
333
+ return super.deploy(comptroller_, vBUSD_, treasury_, overrides || {});
334
+ }
335
+ getDeployTransaction(comptroller_, vBUSD_, treasury_, overrides) {
336
+ return super.getDeployTransaction(comptroller_, vBUSD_, treasury_, overrides || {});
337
+ }
338
+ attach(address) {
339
+ return super.attach(address);
340
+ }
341
+ connect(signer) {
342
+ return super.connect(signer);
343
+ }
344
+ static createInterface() {
345
+ return new ethers_1.utils.Interface(_abi);
346
+ }
347
+ static connect(address, signerOrProvider) {
348
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
349
+ }
350
+ }
351
+ exports.BUSDLiquidator__factory = BUSDLiquidator__factory;
352
+ BUSDLiquidator__factory.bytecode = _bytecode;
353
+ BUSDLiquidator__factory.abi = _abi;