@meterio/sumer-js 0.1.30 → 0.1.32

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 (115) hide show
  1. package/dist/browser/sumer.min.js +10 -10
  2. package/dist/nodejs/abi.d.ts +110 -12
  3. package/dist/nodejs/abi.js +6227 -4641
  4. package/dist/nodejs/abi.js.map +1 -1
  5. package/dist/nodejs/comptroller.d.ts +1 -1
  6. package/dist/nodejs/comptroller.js +17 -22
  7. package/dist/nodejs/comptroller.js.map +1 -1
  8. package/dist/nodejs/errors.d.ts +100 -0
  9. package/dist/nodejs/errors.js +100 -0
  10. package/dist/nodejs/errors.js.map +1 -1
  11. package/dist/nodejs/index.d.ts +210 -12
  12. package/dist/nodejs/typechain/contracts/Comptroller/Comptroller.d.ts +21 -175
  13. package/dist/nodejs/typechain/contracts/Comptroller/RedemptionManager.d.ts +123 -84
  14. package/dist/nodejs/typechain/contracts/Interfaces/IComptroller.d.ts +13 -84
  15. package/dist/nodejs/typechain/contracts/Interfaces/IRedemptionManager.d.ts +49 -51
  16. package/dist/nodejs/typechain/contracts/Interfaces/ITimelock.d.ts +46 -49
  17. package/dist/nodejs/typechain/contracts/Library/RateLimiter.d.ts +66 -0
  18. package/dist/nodejs/typechain/contracts/Library/RateLimiter.js +3 -0
  19. package/dist/nodejs/typechain/contracts/Library/RateLimiter.js.map +1 -0
  20. package/dist/nodejs/typechain/contracts/Library/index.d.ts +1 -0
  21. package/dist/nodejs/typechain/contracts/Library/index.js +3 -0
  22. package/dist/nodejs/typechain/contracts/Library/index.js.map +1 -0
  23. package/dist/nodejs/typechain/contracts/Oracle/FeedPriceOracle.d.ts +1 -9
  24. package/dist/nodejs/typechain/contracts/Oracle/FeedPriceOracleSafe.d.ts +1 -9
  25. package/dist/nodejs/typechain/contracts/Timelock.d.ts +515 -0
  26. package/dist/nodejs/typechain/contracts/Timelock.js +3 -0
  27. package/dist/nodejs/typechain/contracts/Timelock.js.map +1 -0
  28. package/dist/nodejs/typechain/contracts/index.d.ts +3 -2
  29. package/dist/nodejs/typechain/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.d.ts +1 -1
  30. package/dist/nodejs/typechain/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.js +1 -1
  31. package/dist/nodejs/typechain/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.d.ts +1 -1
  32. package/dist/nodejs/typechain/factories/@openzeppelin/contracts/proxy/transparent/ProxyAdmin__factory.js +1 -1
  33. package/dist/nodejs/typechain/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.d.ts +1 -1
  34. package/dist/nodejs/typechain/factories/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy__factory.js +1 -1
  35. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.d.ts +65 -1
  36. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.js +81 -1
  37. package/dist/nodejs/typechain/factories/contracts/CToken/CErc20__factory.js.map +1 -1
  38. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.d.ts +65 -1
  39. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.js +81 -1
  40. package/dist/nodejs/typechain/factories/contracts/CToken/CEther__factory.js.map +1 -1
  41. package/dist/nodejs/typechain/factories/contracts/CToken/CToken__factory.d.ts +64 -0
  42. package/dist/nodejs/typechain/factories/contracts/CToken/CToken__factory.js +80 -0
  43. package/dist/nodejs/typechain/factories/contracts/CToken/CToken__factory.js.map +1 -1
  44. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.d.ts +65 -1
  45. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.js +81 -1
  46. package/dist/nodejs/typechain/factories/contracts/CToken/SuErc20__factory.js.map +1 -1
  47. package/dist/nodejs/typechain/factories/contracts/Comptroller/AccountLiquidity__factory.d.ts +313 -1
  48. package/dist/nodejs/typechain/factories/contracts/Comptroller/AccountLiquidity__factory.js +392 -1
  49. package/dist/nodejs/typechain/factories/contracts/Comptroller/AccountLiquidity__factory.js.map +1 -1
  50. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompLogic__factory.d.ts +1 -1
  51. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompLogic__factory.js +1 -1
  52. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompoundLens__factory.d.ts +65 -1
  53. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompoundLens__factory.js +81 -1
  54. package/dist/nodejs/typechain/factories/contracts/Comptroller/CompoundLens__factory.js.map +1 -1
  55. package/dist/nodejs/typechain/factories/contracts/Comptroller/ComptrollerStorage__factory.d.ts +1 -1
  56. package/dist/nodejs/typechain/factories/contracts/Comptroller/ComptrollerStorage__factory.js +1 -1
  57. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller__factory.d.ts +93 -272
  58. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller__factory.js +117 -348
  59. package/dist/nodejs/typechain/factories/contracts/Comptroller/Comptroller__factory.js.map +1 -1
  60. package/dist/nodejs/typechain/factories/contracts/Comptroller/RedemptionManager__factory.d.ts +483 -87
  61. package/dist/nodejs/typechain/factories/contracts/Comptroller/RedemptionManager__factory.js +600 -102
  62. package/dist/nodejs/typechain/factories/contracts/Comptroller/RedemptionManager__factory.js.map +1 -1
  63. package/dist/nodejs/typechain/factories/contracts/Comptroller/SortedBorrows__factory.d.ts +1 -1
  64. package/dist/nodejs/typechain/factories/contracts/Comptroller/SortedBorrows__factory.js +1 -1
  65. package/dist/nodejs/typechain/factories/contracts/Interfaces/IComptroller__factory.d.ts +19 -91
  66. package/dist/nodejs/typechain/factories/contracts/Interfaces/IComptroller__factory.js +24 -114
  67. package/dist/nodejs/typechain/factories/contracts/Interfaces/IComptroller__factory.js.map +1 -1
  68. package/dist/nodejs/typechain/factories/contracts/Interfaces/IRedemptionManager__factory.d.ts +62 -56
  69. package/dist/nodejs/typechain/factories/contracts/Interfaces/IRedemptionManager__factory.js +68 -63
  70. package/dist/nodejs/typechain/factories/contracts/Interfaces/IRedemptionManager__factory.js.map +1 -1
  71. package/dist/nodejs/typechain/factories/contracts/Interfaces/ITimelock__factory.d.ts +34 -47
  72. package/dist/nodejs/typechain/factories/contracts/Interfaces/ITimelock__factory.js +37 -54
  73. package/dist/nodejs/typechain/factories/contracts/Interfaces/ITimelock__factory.js.map +1 -1
  74. package/dist/nodejs/typechain/factories/contracts/Library/RateLimiter__factory.d.ts +165 -0
  75. package/dist/nodejs/typechain/factories/contracts/Library/RateLimiter__factory.js +228 -0
  76. package/dist/nodejs/typechain/factories/contracts/Library/RateLimiter__factory.js.map +1 -0
  77. package/dist/nodejs/typechain/factories/contracts/Library/index.d.ts +1 -0
  78. package/dist/nodejs/typechain/factories/contracts/Library/index.js +9 -0
  79. package/dist/nodejs/typechain/factories/contracts/Library/index.js.map +1 -0
  80. package/dist/nodejs/typechain/factories/contracts/Oracle/FeedPriceOracleSafe__factory.d.ts +1 -15
  81. package/dist/nodejs/typechain/factories/contracts/Oracle/FeedPriceOracleSafe__factory.js +1 -20
  82. package/dist/nodejs/typechain/factories/contracts/Oracle/FeedPriceOracleSafe__factory.js.map +1 -1
  83. package/dist/nodejs/typechain/factories/contracts/Oracle/FeedPriceOracle__factory.d.ts +1 -15
  84. package/dist/nodejs/typechain/factories/contracts/Oracle/FeedPriceOracle__factory.js +1 -20
  85. package/dist/nodejs/typechain/factories/contracts/Oracle/FeedPriceOracle__factory.js.map +1 -1
  86. package/dist/nodejs/typechain/factories/contracts/SumerErrors__factory.d.ts +65 -1
  87. package/dist/nodejs/typechain/factories/contracts/SumerErrors__factory.js +81 -1
  88. package/dist/nodejs/typechain/factories/contracts/SumerErrors__factory.js.map +1 -1
  89. package/dist/nodejs/typechain/factories/contracts/Timelock.sol/Timelock__factory.d.ts +1 -1
  90. package/dist/nodejs/typechain/factories/contracts/Timelock.sol/Timelock__factory.js +1 -1
  91. package/dist/nodejs/typechain/factories/contracts/Timelock.sol/Timelock__factory.js.map +1 -1
  92. package/dist/nodejs/typechain/factories/contracts/Timelock__factory.d.ts +989 -0
  93. package/dist/nodejs/typechain/factories/contracts/Timelock__factory.js +1277 -0
  94. package/dist/nodejs/typechain/factories/contracts/Timelock__factory.js.map +1 -0
  95. package/dist/nodejs/typechain/factories/contracts/index.d.ts +2 -1
  96. package/dist/nodejs/typechain/factories/contracts/index.js +4 -2
  97. package/dist/nodejs/typechain/factories/contracts/index.js.map +1 -1
  98. package/dist/nodejs/typechain/factories/contracts/proxy/SumerProxyAdmin__factory.d.ts +1 -1
  99. package/dist/nodejs/typechain/factories/contracts/proxy/SumerProxyAdmin__factory.js +1 -1
  100. package/dist/nodejs/typechain/factories/contracts/proxy/SumerProxy__factory.d.ts +1 -1
  101. package/dist/nodejs/typechain/factories/contracts/proxy/SumerProxy__factory.js +1 -1
  102. package/dist/nodejs/typechain/factories/contracts/stake/CommunalFarm__factory.d.ts +1 -1
  103. package/dist/nodejs/typechain/factories/contracts/stake/CommunalFarm__factory.js +1 -1
  104. package/dist/nodejs/typechain/factories/contracts/stake/FraxGaugeFXSRewardsDistributor__factory.d.ts +1 -1
  105. package/dist/nodejs/typechain/factories/contracts/stake/FraxGaugeFXSRewardsDistributor__factory.js +1 -1
  106. package/dist/nodejs/typechain/factories/contracts/stake/StakingRewardsMultiGauge__factory.d.ts +1 -1
  107. package/dist/nodejs/typechain/factories/contracts/stake/StakingRewardsMultiGauge__factory.js +1 -1
  108. package/dist/nodejs/typechain/factories/contracts/stake/VeSumer.sol/VeSumer__factory.d.ts +1 -1
  109. package/dist/nodejs/typechain/factories/contracts/stake/VeSumer.sol/VeSumer__factory.js +1 -1
  110. package/dist/nodejs/typechain/factories/contracts/stake/VeSumer.sol/VeSumer__factory.js.map +1 -1
  111. package/dist/nodejs/typechain/hardhat.d.ts +18 -18
  112. package/dist/nodejs/typechain/index.d.ts +4 -2
  113. package/dist/nodejs/typechain/index.js +5 -3
  114. package/dist/nodejs/typechain/index.js.map +1 -1
  115. package/package.json +1 -1
@@ -14,10 +14,327 @@ export declare class RedemptionManager__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): RedemptionManager__factory;
17
- static readonly bytecode = "0x6080806040523461001657611ff1908161001c8239f35b600080fdfe608060408181526004908136101561001657600080fd5b600092833560e01c90816301ffc9a714610d0b57508063071a754114610cef5780631f68f20a14610cd05780632409266914610cae578063248a9ca314610c8357806328d28b5b14610c615780632b11551a14610c415780632f2ff15d14610b8757806336568abe14610af5578063485cc9551461093157806350e85423146108d05780635dba4c4a146108555780635fe3b5671461082c57806361ec893d146108105780638bad38dd146107405780639010d07c146106ff57806391d14854146106b8578063947f5b77146106795780639d3fe0b014610581578063a20baee61461055e578063a217fddf14610543578063bbf56b3a146104c8578063c33520eb146103f1578063c52861f2146103a1578063c7b554811461037e578063ca15c87314610356578063d380a37c14610337578063d547741f146102fa578063d99550c914610242578063ec8b88ee146102155763fb02cd421461017957600080fd5b34610211576020366003190112610211576020610194610ddd565b60c9548351633b725b2360e01b81526001600160a01b039283169581019590955284916024918391165afa91821561020757602093926101d8575b50519015158152f35b6101f9919250833d8111610200575b6101f18183611176565b81019061150b565b90386101cf565b503d6101e7565b81513d85823e3d90fd5b8280fd5b83823461023e578160031936011261023e5760c95490516001600160a01b039091168152602090f35b5080fd5b5090346102115781600319360112610211576102a5916020610262610ddd565b9261026b610dc2565b60c95484516339ed25cd60e01b81526001600160a01b03968716938101938452918616602084015290958692918616918391829160400190565b03915afa9283156102f057602094936102c1575b505191168152f35b6102e2919350843d81116102e9575b6102da8183611176565b81019061167c565b91386102b9565b503d6102d0565b81513d86823e3d90fd5b5034610211578060031936011261021157610334913561032f600161031d610dc2565b93838752606560205286200154611001565b611198565b80f35b83823461023e578160031936011261023e5760209060cc549051908152f35b5090346102115760203660031901126102115760209282913581526097845220549051908152f35b83823461023e578160031936011261023e5760209051670ddd4b8c6c7d70d88152f35b83823461023e578160031936011261023e576020906103ea670de0b6b3a76400006103e46103dc603c6103d660cc544261140e565b0461157f565b60cb54610d99565b04611650565b9051908152f35b50346102115760203660031901126102115761040b610ddd565b610413610df3565b60c95482516344b7213760e11b815290936001600160a01b039390916020818481888a165afa9081156104be5787916104a0575b501561046457505016906001600160601b0360a01b161760c95580f35b906020606492519162461bcd60e51b83528201526016602482015275696e76616c696420736f7274656420626f72726f777360501b6044820152fd5b6104b8915060203d8111610200576101f18183611176565b38610447565b82513d89823e3d90fd5b50823461053c5760a036600319011261053c576104e3610dc2565b6001600160a01b03936044359190858316830361053f5760643593868516850361053c57608435968716870361053c57509161052493916080969335611a0c565b92939091815194855260208501528301526060820152f35b80fd5b8380fd5b83823461023e578160031936011261023e5751908152602090f35b83823461023e578160031936011261023e5760209051670de0b6b3a76400008152f35b50823461053c578160031936011261053c578235906105ab60018060a01b0360ca54163314611523565b670de0b6b3a764000090816105ca6103dc603c6103d660cc544261140e565b049282810290808204841490151715610666576105ea9060243590610d79565b60011c83018093116106535750602093508082101561064b5750905b610611821515611562565b8160cb557fc454ee9b76c52f782a256af821b857ca6e125d1e3333bcede402fec2bed9600c838251848152a1610645611f75565b51908152f35b905090610606565b634e487b7160e01b815260118552602490fd5b634e487b7160e01b825260118652602482fd5b83823461023e5736600319011261053c57610334610695610ddd565b61069d610dc2565b906106b360018060a01b0360ca54163314611523565b61169b565b5090346102115781600319360112610211578160209360ff926106d9610dc2565b90358252606586528282206001600160a01b039091168252855220549151911615158152f35b50903461021157816003193601126102115760209261072a913581526097845282602435912061136c565b905491519160018060a01b039160031b1c168152f35b5090346102115760203660031901126102115780356001600160a01b038116929083900361053f57610770610df3565b8051623f1ee960e11b81526020818481875afa9081156108065785916107e8575b50156107af5750506001600160601b0360a01b60ca54161760ca5580f35b906020606492519162461bcd60e51b8352820152601360248201527234b73b30b634b21031b7b6b83a3937b63632b960691b6044820152fd5b610800915060203d8111610200576101f18183611176565b38610791565b82513d87823e3d90fd5b83823461023e578160031936011261023e5760209051603c8152f35b83823461023e578160031936011261023e5760ca5490516001600160a01b039091168152602090f35b83823461023e578160031936011261023e5760207fc454ee9b76c52f782a256af821b857ca6e125d1e3333bcede402fec2bed9600c91610893610df3565b670de0b6b3a7640000906108bf826108b56103dc603c6103d660cc544261140e565b0492831115611562565b8160cb5551908152a1610334611f75565b50346102115760203660031901126102115760249060206108ef610ddd565b60c9548351631bdb4c8d60e01b81526001600160a01b039283169681019690965290938591829086165afa9283156102f057602094936102c157505191168152f35b50903461021157816003193601126102115761094b610ddd565b90610954610dc2565b9184549260ff8460081c161592838094610ae8575b8015610ad1575b15610a77575060ff1984811660011787559383610a66575b50858052606560209081528587206001600160a01b039384168089529082528688205491956109ca9260ff1615610a1e575b5087805260978652868820611384565b50166001600160601b0360a01b60c954161760c9556109e7578280f35b7f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001984541684555160018152a138808280f35b88805260658752878920828a5287526001888a20918254161790553381897f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4386109ba565b61ffff191661010117865538610988565b608490602087519162461bcd60e51b8352820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152fd5b50303b1580156109705750600160ff861614610970565b50600160ff861610610969565b5091903461023e578260031936011261023e57610b10610dc2565b90336001600160a01b03831603610b2c57906103349135611198565b608490602085519162461bcd60e51b8352820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152fd5b5034610211578060031936011261021157610bf49135906097610ba8610dc2565b9280865260209060658252610bc260018589200154611001565b808752606582528387206001600160a01b039095168088529482528387205460ff1615610bf8575b8652528320611384565b5080f35b808752606582528387208588528252838720805460ff191660011790553385827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8a80a4610bea565b83823461023e578160031936011261023e576020906103ea60cb54611650565b83823461023e578160031936011261023e5760209051662386f26fc100008152f35b5090346102115760203660031901126102115781602093600192358152606585522001549051908152f35b83823461023e578160031936011261023e576020905166b1a2bc2ec500008152f35b83823461023e578160031936011261023e5760209060cb549051908152f35b83823461023e578160031936011261023e576020905160028152f35b84908434610211576020366003190112610211573563ffffffff60e01b81168091036102115760209250635a05180f60e01b8114908115610d4e575b5015158152f35b637965db0b60e01b811491508115610d68575b5083610d47565b6301ffc9a760e01b14905083610d61565b8115610d83570490565b634e487b7160e01b600052601260045260246000fd5b81810292918115918404141715610dac57565b634e487b7160e01b600052601160045260246000fd5b602435906001600160a01b0382168203610dd857565b600080fd5b600435906001600160a01b0382168203610dd857565b3360009081527fffdfc1249c027f9191656349feb0761381bb32c9f557e01f419fd08754bf5a1b60209081526040808320549092919060ff1615610e3657505050565b610e3f3361125d565b835183610e4b8261115a565b60428252838201946060368737825115610fed5760308653825190600191821015610fed5790607860218501536041915b818311610f7f57505050610f3d5784610f0b6048610f2f936044979851988991610efc8984019876020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8a52610ed3815180928d60378901910161110d565b8401917001034b99036b4b9b9b4b733903937b6329607d1b60378401525180938684019061110d565b01036028810189520187611176565b5194859362461bcd60e51b855260048501525180928160248601528585019061110d565b601f01601f19168101030190fd5b60648386519062461bcd60e51b825280600483015260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b909192600f81166010811015610fd9576f181899199a1a9b1b9c1cb0b131b232b360811b901a610faf8587611236565b5360041c928015610fc557600019019190610e7c565b634e487b7160e01b82526011600452602482fd5b634e487b7160e01b83526032600452602483fd5b634e487b7160e01b81526032600452602490fd5b6000818152602060658152604092838320338452825260ff8484205416156110295750505050565b6110323361125d565b9084519061103f8261115a565b60428252838201946060368737825115610fed5760308653825190600191821015610fed5790607860218501536041915b8183116110c757505050610f3d5784610f0b6048610f2f936044979851988991610efc8984019876020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8a52610ed3815180928d60378901910161110d565b909192600f81166010811015610fd9576f181899199a1a9b1b9c1cb0b131b232b360811b901a6110f78587611236565b5360041c928015610fc557600019019190611070565b60005b8381106111205750506000910152565b8181015183820152602001611110565b67ffffffffffffffff811161114457604052565b634e487b7160e01b600052604160045260246000fd5b6080810190811067ffffffffffffffff82111761114457604052565b90601f8019910116810190811067ffffffffffffffff82111761114457604052565b9060406111d69260009080825260656020528282209360018060a01b03169384835260205260ff83832054166111d9575b815260976020522061141b565b50565b808252606560205282822084835260205282822060ff1981541690553384827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a46111c9565b906706f05b59d3b200008201809211610dac57565b908151811015611247570160200190565b634e487b7160e01b600052603260045260246000fd5b604051906060820182811067ffffffffffffffff82111761114457604052602a82526020820160403682378251156112475760309053815160019081101561124757607860218401536029905b8082116112fe5750506112ba5790565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b9091600f81166010811015611357576f181899199a1a9b1b9c1cb0b131b232b360811b901a61132d8486611236565b5360041c9180156113425760001901906112aa565b60246000634e487b7160e01b81526011600452fd5b60246000634e487b7160e01b81526032600452fd5b80548210156112475760005260206000200190600090565b9190600183016000908282528060205260408220541560001461140857845494680100000000000000008610156113f457836113e46113cd886001604098999a0185558461136c565b819391549060031b91821b91600019901b19161790565b9055549382526020522055600190565b634e487b7160e01b83526041600452602483fd5b50925050565b91908203918211610dac57565b9060018201906000928184528260205260408420549081151560001461150457600019918083018181116114f0578254908482019182116114dc578082036114a7575b5050508054801561149357820191611476838361136c565b909182549160031b1b191690555582526020526040812055600190565b634e487b7160e01b86526031600452602486fd5b6114c76114b76113cd938661136c565b90549060031b1c9283928661136c565b9055865284602052604086205538808061145e565b634e487b7160e01b88526011600452602488fd5b634e487b7160e01b87526011600452602487fd5b5050505090565b90816020910312610dd857518015158103610dd85790565b1561152a57565b60405162461bcd60e51b815260206004820152601060248201526f37b7363c9031b7b6b83a3937b63632b960811b6044820152606490fd5b1561156957565b634e487b7160e01b600052600160045260246000fd5b90631f540500808311611648575b50811561163b57670de0b6b3a764000091670ddd4b8c6c7d70d8905b6001918282111561161c578183166115e1576115d66115d182670de0b6b3a764000093610d99565b611221565b04911c925b926115a9565b936116076115d1670de0b6b3a76400006115ff6115d182958a610d99565b049680610d99565b04916000198201918211611342571c926115db565b61163792506115d1915093670de0b6b3a76400009394610d99565b0490565b670de0b6b3a76400009150565b91503861158d565b662386f26fc10000908101809111610dac57670de0b6b3a764000080821015611677575090565b905090565b90816020910312610dd857516001600160a01b0381168103610dd85790565b60408051637f4e225760e11b81526001600160a01b0393919260209285821692909160049185818481885afa9081156119ae57600091611991575b50156116e6575b50505050505050565b8551926395dd919360e01b84528781169788848601528685602481895afa94851561198657600095611957575b50841561194c5760c9548851631da4d95d60e31b81526001600160a01b038086168783019081529085166020820152918316918990829081906040010381855afa9081156118c25760009161192f575b50156118cd575060c95488516239c6e160ea1b81526001600160a01b03808616878301908152908516602082015290949183169391908990869081906040010381875afa9485156118c2579089929160009661189b575b508a516339ed25cd60e01b81526001600160a01b039182168882019081529290911660208301529190829081906040015b0381865afa97881561189057600098611871575b5050813b15610dd85760009681889460a4978b519c8d9a8b9963bc9b5bd560e01b8b528a0152602489015260448801521660648601521660848401525af19081156118675750611858575b505b388080808080806116dd565b61186190611130565b3861184a565b513d6000823e3d90fd5b611888929850803d106102e9576102da8183611176565b9538806117ff565b89513d6000823e3d90fd5b83929196506118b9906117eb943d85116102e9576102da8183611176565b959091926117ba565b8a513d6000823e3d90fd5b949650505050813b15610dd857600060a492819587519889968795633e499e0560e11b8752860152602485015260448401528160648401528160848401525af19081156118675750611920575b5061184c565b61192990611130565b3861191a565b6119469150893d8b11610200576101f18183611176565b38611763565b505050505050505050565b90948782813d831161197f575b61196e8183611176565b8101031261053c5750519338611713565b503d611964565b88513d6000823e3d90fd5b6119a89150863d8811610200576101f18183611176565b386116d6565b87513d6000823e3d90fd5b156119c057565b60405162461bcd60e51b815260206004820152600b60248201526a383934b1b29032b93937b960a91b6044820152606490fd5b90816020910312610dd8575160ff81168103610dd85790565b60405163a6afed9560e01b8082526001600160a01b0397959694959492939160208160048160008d8c165af18015611d4e57611f4a575b5060405190815260208160048160008c8c165af18015611d4e57611f1f575b506040516361bfb47160e11b815290871660048201819052608082602481898c165afa928315611d4e5760008093600095611edc575b50611ea6578215611e5b57604051916305eff7ef60e21b8352600483015260208260248160008d8d165af1918215611d4e57600092611e72575b508115611e5b57604051631d8e90d160e11b81529860208a6004818b85165afa998a15611d4e5760009a611e27575b508915611e0f5760405163fc57d4df60e01b815289821660048201526020816024818686165afa908115611d4e57600091611ddd575b50816020829b611b488415156119b9565b60046040518094819363313ce56760e01b8352165afa8015611d4e5760ff91600091611dbe575b501660128110611d8e575b505060208160248a82604051968794859363fc57d4df60e01b8552166004840152165afa918215611d4e57600092611d5a575b5060208298611bbd8415156119b9565b60046040518094819363313ce56760e01b8352165afa8015611d4e5760ff91600091611d1f575b501660128110611cf2575b5050670de0b6b3a764000091611c1a83611c1286611c0d858c610d99565b610d99565b049289610d99565b80831015611ce857611c2c8984610d79565b808711611cb15750505050611c418387610d99565b81810290808204831490151715610dac5782611c6087611c6593610d79565b610d79565b965b8181029081048203610dac5782611c7d91610d79565b91878310611c8f575b50505093929190565b82975086919350611c6090611c0d611ca8949988610d99565b04388080611c86565b955090918110611cc2575096611c67565b8281029150801590820483141715610dac5782611c6087611ce293610d79565b96611c67565b611c2c8982610d79565b909196506012039060128211610dac57604d8211610dac57611d1791600a0a90610d99565b943880611bef565b611d41915060203d602011611d47575b611d398183611176565b8101906119f3565b38611be4565b503d611d2f565b6040513d6000823e3d90fd5b9091506020813d602011611d86575b81611d7660209383611176565b81010312610dd857519038611bad565b3d9150611d69565b9091995060120360ff8111610dac5760ff1690604d8211610dac57611db691600a0a90610d99565b973880611b7a565b611dd7915060203d602011611d4757611d398183611176565b38611b6f565b90506020813d602011611e07575b81611df860209383611176565b81010312610dd8575138611b37565b3d9150611deb565b50505050505092505050600090600090600090600090565b9099506020813d602011611e53575b81611e4360209383611176565b81010312610dd857519838611b01565b3d9150611e36565b505050505092505050600090600090600090600090565b9091506020813d602011611e9e575b81611e8e60209383611176565b81010312610dd857519038611ad2565b3d9150611e81565b60405162461bcd60e51b815260206004820152600e60248201526d39b730b839b437ba1032b93937b960911b6044820152606490fd5b94505091506080833d8211611f17575b81611ef960809383611176565b81010312610dd8578251602084015160609094015193929038611a98565b3d9150611eec565b602090813d8311611f43575b611f358183611176565b81010312610dd85738611a62565b503d611f2b565b602090813d8311611f6e575b611f608183611176565b81010312610dd85738611a43565b503d611f56565b603c611f8360cc544261140e565b1015611f8b57565b4260cc557f860f8d2f0c74dd487e89e2883e3b25b8159ce1e1b3433a291cba7b82c508f3bc6020604051428152a156fea26469706673582212201880d6d5cc0744f4a845ad5f15382c1630940d634dd58108fc0a0f44b981cbb164736f6c63430008130033";
17
+ static readonly bytecode = "0x608080604052346100165761269b908161001c8239f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c806301ffc9a714610217578063071a7541146102125780630f3436041461020d5780631f68f20a146102085780632409266914610203578063248a9ca3146101fe57806324b735bd146101f957806328d28b5b146101f45780632f2ff15d146101ef57806332ba19c2146101ea57806336568abe146101e55780633c103d7a146101e05780635fe3b567146101db57806361ec893d146101d6578063699f7c95146101d15780636d5d44b8146101cc5780636ec7ba15146101c757806373e54f48146101c25780638bad38dd146101bd5780639010d07c146101b857806391d14854146101b3578063a20baee6146101ae578063a217fddf146101a9578063c4d66de8146101a4578063c7b554811461019f578063ca15c8731461019a578063d201d32814610195578063d380a37c14610190578063d547741f1461018b578063e8a7f3c114610186578063ec8b88ee146101815763f1dcf16e1461017c57600080fd5b610db3565b610d8a565b610d26565b610ce4565b610cc6565b610c89565b610c5d565b610c3a565b610b4d565b610b31565b610b0e565b610ab8565b610a71565b6109b3565b61098a565b610909565b61073e565b6106c9565b6106ad565b610684565b610621565b610589565b61054a565b610458565b610436565b6103db565b6103ac565b61038a565b610301565b6102c4565b610297565b346102875760203660031901126102875760043563ffffffff60e01b811680910361028757602090635a05180f60e01b811490811561025c575b506040519015158152f35b637965db0b60e01b811491508115610276575b5038610251565b6301ffc9a760e01b1490503861026f565b600080fd5b600091031261028757565b3461028757600036600319011261028757602060405160028152f35b6001600160a01b0381160361028757565b34610287576020366003190112610287576004356102e1816102b3565b60018060a01b031660005260cd6020526020604060002054604051908152f35b3461028757600036600319011261028757602060cb54604051908152f35b634e487b7160e01b600052601160045260246000fd5b811561033f570490565b634e487b7160e01b600052601260045260246000fd5b90670de0b6b3a76400009182810292818404149015171561037257565b61031f565b8181029291811591840414171561037257565b3461028757600036600319011261028757602060405166b1a2bc2ec500008152f35b346102875760203660031901126102875760043560005260656020526020600160406000200154604051908152f35b3461028757608036600319011261028757608061041e6024356103fd816102b3565b604435610409816102b3565b60643591610416836102b3565b6004356117c9565b91604051938452602084015260408301526060820152f35b346102875760003660031901126102875760206040516611c37937e080008152f35b34610287576040366003190112610287576004356104d960243561047b816102b3565b6104d460009380855260656020526104996001604087200154611013565b8085526065602090815260408087206001600160a01b0386166000908152925290205460ff16156104dd576000526097602052604060002090565b611339565b5080f35b8085526065602090815260408087206001600160a01b038616600090815292529020805460ff19166001179055336001600160a01b038416827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8880a46000526097602052604060002090565b3461028757606036600319011261028757602061058161057c60043561056f816102b3565b60443590602435906115a7565b611734565b604051908152f35b34610287576040366003190112610287576024356105a6816102b3565b336001600160a01b038216036105c4576105c29060043561112f565b005b60405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608490fd5b346102875760203660031901126102875760043561063e816102b3565b610646610eb7565b6001600160a01b03168015610672576bffffffffffffffffffffffff60a01b60cf54161760cf55600080f35b60405163e6c4247b60e01b8152600490fd5b346102875760003660031901126102875760ca546040516001600160a01b039091168152602090f35b34610287576000366003190112610287576020604051603c8152f35b346102875760a03660031901126102875760c06107196004356106eb816102b3565b6024356106f7816102b3565b604435610703816102b3565b60643591610710836102b3565b60843593611c26565b93604093919351958652602086015260408501526060840152608083015260a0820152f35b34610287576020366003190112610287576105c260043561075e816102b3565b610766610eb7565b7f2f992d01b594c040f05262961e43f8311e780be5fee3deb4c57880dd6374d12d6107d96107938361161c565b6107a7670de0b6b3a764000082111561158a565b6001600160a01b038416600081815260cd60209081526040918290208490558151928352820192909252918291820190565b0390a1611ba6565b634e487b7160e01b600052604160045260246000fd5b67ffffffffffffffff811161080b57604052565b6107e1565b90601f8019910116810190811067ffffffffffffffff82111761080b57604052565b67ffffffffffffffff811161080b5760051b60200190565b81601f820112156102875780359161086183610832565b9261086f6040519485610810565b808452602092838086019260051b820101928311610287578301905b828210610899575050505090565b83809183356108a7816102b3565b81520191019061088b565b81601f820112156102875780359067ffffffffffffffff821161080b57604051926108e7601f8401601f191660200185610810565b8284526020838301011161028757816000926020809301838601378301015290565b346102875760c036600319011261028757600435610926816102b3565b67ffffffffffffffff906044358281116102875761094890369060040161084a565b90606435838111610287576109619036906004016108b2565b60a4359384116102875761097c6105c29436906004016108b2565b926084359260243590611d4e565b346102875760003660031901126102875760cf546040516001600160a01b039091168152602090f35b34610287576020366003190112610287576004356109d0816102b3565b6109d8610eb7565b604051623f1ee960e11b81526001600160a01b039190911690602081600481855afa908115610a6c57600091610a3e575b5015610a2c576bffffffffffffffffffffffff60a01b60ca54161760ca55600080f35b6040516383aebebd60e01b8152600490fd5b610a5f915060203d8111610a65575b610a578183610810565b81019061156a565b38610a09565b503d610a4d565b61157e565b346102875760403660031901126102875760043560005260976020526020610a9f602435604060002061134c565b905460405160039290921b1c6001600160a01b03168152f35b3461028757604036600319011261028757602060ff610b02602435610adc816102b3565b6004356000526065845260406000209060018060a01b0316600052602052604060002090565b54166040519015158152f35b34610287576000366003190112610287576020604051670de0b6b3a76400008152f35b3461028757600036600319011261028757602060405160008152f35b3461028757602036600319011261028757600435610b6a816102b3565b610bae60005491610b9260ff8460081c161580948195610c2c575b8115610c0c575b506114fa565b82610ba5600160ff196000541617600055565b610bf357610df0565b610bb457005b610bc461ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602090a1005b610c0761010061ff00196000541617600055565b610df0565b303b15915081610c1e575b5038610b8c565b6001915060ff161438610c17565b600160ff8216109150610b85565b34610287576000366003190112610287576020604051670ddd4b8c6c7d70d88152f35b346102875760203660031901126102875760043560005260976020526020604060002054604051908152f35b3461028757602036600319011261028757600435610ca6816102b3565b60018060a01b031660005260cd6020526020610581604060002054611734565b3461028757600036600319011261028757602060cc54604051908152f35b34610287576040366003190112610287576105c2602435600435610d07826102b3565b806000526065602052610d21600160406000200154611013565b61112f565b3461028757608036600319011261028757600435610d43816102b3565b67ffffffffffffffff9060443582811161028757610d6590369060040161084a565b60643592831161028757610d806105c29336906004016108b2565b9160243590611f28565b346102875760003660031901126102875760c9546040516001600160a01b039091168152602090f35b3461028757602036600319011261028757600435610dd0816102b3565b60018060a01b031660005260ce6020526020604060002054604051908152f35b6001600160a01b03811660009081527fffdfc1249c027f9191656349feb0761381bb32c9f557e01f419fd08754bf5a1b602052604080822054610e5293929060ff1615610e55575b8080526097602052206001600160a01b0390911690611382565b50565b808052606560209081528282206001600160a01b0385166000908152915260409020805460ff19166001179055336001600160a01b038416827f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4610e38565b3360009081527fffdfc1249c027f9191656349feb0761381bb32c9f557e01f419fd08754bf5a1b602052604090205460ff1615610ef057565b610ef9336112a8565b600090610f046111e0565b916030610f1084611222565b536078610f1c8461122f565b5360415b60018111610fcc57610fc86048610fb085610fa288610f3f881561125d565b6040519485937f416363657373436f6e74726f6c3a206163636f756e74200000000000000000006020860152610f7f8151809260206037890191016110bc565b84017001034b99036b4b9b9b4b733903937b6329607d1b603782015201906110df565b03601f198101835282610810565b60405162461bcd60e51b81529182916004830161111b565b0390fd5b90600f811690601082101561100e57611009916f181899199a1a9b1b9c1cb0b131b232b360811b901a610fff848761123f565b5360041c91611250565b610f20565b61120c565b600081815260656020908152604080832033845290915290205460ff16156110385750565b611041336112a8565b6110496111e0565b91603061105584611222565b5360786110618461122f565b5360415b6001811161108457610fc86048610fb085610fa288610f3f881561125d565b90600f811690601082101561100e576110b7916f181899199a1a9b1b9c1cb0b131b232b360811b901a610fff848761123f565b611065565b60005b8381106110cf5750506000910152565b81810151838201526020016110bf565b906110f2602092828151948592016110bc565b0190565b9060209161110f815180928185528580860191016110bc565b601f01601f1916010190565b90602061112c9281815201906110f6565b90565b906040610e5292600090808252606560205260ff611161858585209060018060a01b0316600052602052604060002090565b5416611181575b81526097602052206001600160a01b0390911690611445565b808252606560209081528383206001600160a01b0386166000908152915260409020805460ff19169055336001600160a01b038516827ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b8580a4611168565b604051906080820182811067ffffffffffffffff82111761080b57604052604282526060366020840137565b634e487b7160e01b600052603260045260246000fd5b80511561100e5760200190565b80516001101561100e5760210190565b90815181101561100e570160200190565b8015610372576000190190565b1561126457565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b604051906060820182811067ffffffffffffffff82111761080b57604052602a8252604036602084013760306112dd83611222565b5360786112e98361122f565b536029905b600182116113015761112c91501561125d565b600f811690601082101561100e57611333916f181899199a1a9b1b9c1cb0b131b232b360811b901a610fff848661123f565b906112ee565b61112c916001600160a01b031690611382565b805482101561100e5760005260206000200190600090565b9161137e9183549060031b91821b91600019901b19161790565b9055565b60018101908260005281602052604060002054156000146113f05780546801000000000000000081101561080b576113db6113c482600187940185558461134c565b819391549060031b91821b91600019901b19161790565b90555491600052602052604060002055600190565b505050600090565b9190820391821161037257565b805490811561142f576000199182019161141f838361134c565b909182549160031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b60018101918060005282602052604060002054928315156000146114f1576000199284840190858211610372578054948501948511610372576000958583611499946114a898036114ae575b505050611405565b90600052602052604060002090565b55600190565b6114d86114d2916114c26114e8948761134c565b90549060031b1c9283918761134c565b90611364565b8590600052602052604060002090565b55388080611491565b50505050600090565b1561150157565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b5190811515820361028757565b908160209103126102875761112c9061155d565b6040513d6000823e3d90fd5b1561159157565b634e487b7160e01b600052600160045260246000fd5b82156115fb576115b69061161c565b91670de0b6b3a76400009182810290808204841490151715610372570460011c820180921161037257808210156115f457505b61112c81151561158a565b90506115e9565b505050670de0b6b3a764000090565b9080821015611617575090565b905090565b6001600160a01b0316600081815260ce60205260409020544290810390811161037257670de0b6b3a764000091611658603c61166c9304611670565b9060005260cd602052604060002054610377565b0490565b90631f540500808311611702575b5081156116f557670de0b6b3a7640000670ddd4b8c6c7d70d8925b600193848211156116e8578185166116bf57806116b59161170a565b931c925b92611699565b916116cd6116d4918461170a565b928061170a565b936000198201918211610372571c926116b9565b905061112c92935061170a565b670de0b6b3a76400009150565b91503861167e565b9061171491610377565b6706f05b59d3b20000810180911161037257670de0b6b3a7640000900490565b6611c37937e0800090810180911161037257670de0b6b3a764000080821015611617575090565b90816020910312610287575190565b9190826080910312610287578151916020810151916060604083015192015190565b1561179357565b60405162461bcd60e51b815260206004820152600e60248201526d39b730b839b437ba1032b93937b960911b6044820152606490fd5b6040805163a6afed9560e01b808252600497929695929460209490939092600091906001600160a01b038083169188818e8188875af18015610a6c57611b89575b508916958a5194855287858d81878b5af1948515610a6c5761185795611b6c575b508a516361bfb47160e11b81526001600160a01b038216818e0190815290956080918791829160200190565b0381855afa968715610a6c578485968699611b30575b50611878901561178c565b8515611b1c578b516305eff7ef60e21b81526001600160a01b03909216828e019081529195949392918991879182908790829060200103925af1948515610a6c578395611afd575b508415611acb57878c918c519d8e8092631d8e90d160e11b82525afa9b8c15610a6c57839c611ade575b508b15611acb5760ca5461190e906001600160a01b03165b6001600160a01b031690565b8b516312bdd04160e31b8082526001600160a01b03909c16818401908152909b919291908a908d9081906020010381865afa9b8c15610a6c57859c611aa0575b509b519b8c526001600160a01b03909216918b0191825298999887918a9190829081906020015b03915afa978815610a6c5789968299611a6b575b505090879392916119be6119b76119a9886119a4868a610377565b610377565b670de0b6b3a7640000900490565b9388610377565b906119d2886119cd848761160a565b610335565b9050808511611a3a57505050506119cd611a01846119cd611a07956119cd6119fc8785989b610377565b610355565b98610355565b90868210611a18575b505093929190565b819650611a3392506119cd86916119a46119a9949988610377565b3880611a10565b9650611a07948694506119cd938592908110611a595750505098610355565b611a019350906119cd6119cd92610355565b611a8e929594939950803d10611a99575b611a868183610810565b81019061175b565b969091923880611989565b503d611a7c565b6119759c5090611ac08b95949392863d8811611a9957611a868183610810565b9c509091929361194e565b5050985050505050509150508180918190565b611af6919c50883d8a11611a9957611a868183610810565b9a386118ea565b611b15919550883d8a11611a9957611a868183610810565b93386118c0565b505050509750505050509150508180918190565b90506118789850611b5991965060803d8111611b65575b611b518183610810565b81019061176a565b9991979291905061186d565b503d611b47565b611b8290893d8b11611a9957611a868183610810565b503861182b565b611b9f90893d8b11611a9957611a868183610810565b503861180a565b6001600160a01b038116600081815260ce60205260409020544290810390811161037257603c1115611bd6575050565b600090815260ce6020908152604091829020429081905582516001600160a01b03949094168452908301527f4b1a24436e474bd20ff461d446818e19b145a1ff52f698dec751807684621acc91a1565b92936001600160a01b039391929091841684841614611ced57611c4a9285926117c9565b92959194909386158015611ce5575b611cd457906020600492604051938480926308f7a6e360e31b825285165afa8015610a6c578761057c92611c9594600093611cb4575b506115a7565b90611cad611ca66119a98488610377565b80966113f8565b9493929190565b611ccd91935060203d8111611a9957611a868183610810565b9138611c8f565b506000955085945084939291849150565b508515611c59565b5050505050600090600090600090600090600090600090565b90816020910312610287575161112c816102b3565b919261112c95949160a094600180871b0380921685521660208401526040830152606082015281608082015201906110f6565b604051636f307dc360e01b815293949293919290916001600160a01b03906020816004818588165afa908115610a6c57600091611dec575b501695863b1561028757611db79660009283604051809a81958294639fd5a6cf60e01b84528a8a3360048701611d1b565b03925af1948515610a6c57611dd195611dd3575b50611f28565b565b80611de0611de6926107f7565b8061028c565b38611dcb565b611e0d915060203d8111611e13575b611e058183610810565b810190611d06565b38611d86565b503d611dfb565b805160208092019160005b828110611e33575050505090565b83516001600160a01b031685529381019392810192600101611e25565b9081606091031261028757611e648161155d565b91602082015160ff8116810361028757604061112c91930161155d565b60001981146103725760010190565b805182101561100e5760209160051b010190565b60209081818403126102875780519067ffffffffffffffff821161028757019180601f84011215610287578251611eda81610832565b93611ee86040519586610810565b818552838086019260051b820101928311610287578301905b828210611f0f575050505090565b8380918351611f1d816102b3565b815201910190611f01565b604051637f4e225760e11b815291949390916020816004816001600160a01b0387165afa908115610a6c576000916124aa575b508015612436575b612424576040516020810190611f7d81610fa28488611e1a565b5190206041825103612412576020828101516040808501516060958601518251958652600090811a868601529185019290925293830152828052919060809060015afa15610a6c5760005160cf54611fdd906001600160a01b0316611902565b6001600160a01b03909116036124005760ca54612002906001600160a01b0316611902565b604051638e8f294b60e01b81526001600160a01b03831660048201529490606090869060249082905afa948515610a6c576000956123dc575b5091906000935b82518510806123d3575b156123b55761206b61205e8685611e90565b516001600160a01b031690565b60ca54909190612083906001600160a01b0316611902565b604051632aff3bff60e21b81526001600160a01b03841660048201529490600090869060249082905afa948515610a6c57600095612392575b50336001600160a01b038416146123845760005b855181108061237b575b1561223a57600460206120f661190261190261205e868c611e90565b604051637f4e225760e11b815292839182905afa908115610a6c5760009161221b575b50156121955760ca546121749060609061213b906001600160a01b0316611902565b61214861205e858b611e90565b604051638e8f294b60e01b81526001600160a01b03909116600482015292839190829081906024820190565b03915afa908115610a6c576000916121e9575b5060ff808b169116146121a3575b61219e90611e81565b6120d0565b956121bd81866121b661205e8b8b611e90565b87336124c9565b90808210156121dc5761219e916121d3916113f8565b965b9050612195565b505061219e6000966121d5565b61220b915060603d606011612214575b6122038183610810565b810190611e50565b50905038612187565b503d6121f9565b612234915060203d602011610a6557610a578183610810565b38612119565b509060005b8551811080612372575b15612359576004602061226561190261190261205e868c611e90565b604051637f4e225760e11b815292839182905afa908115610a6c5760009161233a575b50156122cb5760ca546122aa9060609061213b906001600160a01b0316611902565b03915afa908115610a6c57600091612318575b5060ff808b169116036122d9575b6122d490611e81565b61223f565b956122ec81866121b661205e8b8b611e90565b908082101561230b576122d491612302916113f8565b965b90506122cb565b50506122d4600096612304565b612331915060603d606011612214576122038183610810565b509050386122bd565b612353915060203d602011610a6557610a578183610810565b38612288565b5095909293506123699150611e81565b93919091612042565b50861515612249565b508615156120da565b929350946123699150611e81565b6123ae91953d8091833e6123a68183610810565b810190611ea4565b93386120bc565b9450505090506123c157565b60405163518d5aa560e11b8152600490fd5b5083151561204c565b6123f691955060603d606011612214576122038183610810565b509050933861203b565b604051634702195f60e01b8152600490fd5b604051634be6321b60e01b8152600490fd5b604051630f72f32b60e11b8152600490fd5b5060ca5461244c906001600160a01b0316611902565b604051637bca031760e11b81526001600160a01b038416600482015290602090829060249082905afa908115610a6c5760009161248b575b5015611f63565b6124a4915060203d602011610a6557610a578183610810565b38612484565b6124c3915060203d602011610a6557610a578183610810565b38611f5b565b6040516308f7a6e360e31b81526020949192916001600160a01b03811691908682600481865afa918215610a6c5761253d9261250f916000916125e1575b5089836125fe565b5085846125376125318460018060a01b031660005260cd602052604060002090565b54611734565b996117c9565b5050929096871580156125d9575b6125cc576040516372cd916760e01b81526001600160a01b039586166004820152918516602483015260448201889052949093166064840152608483019190915260a4820192909252908290829060c49082906000905af18015610a6c576125b257505090565b816125c892903d10611a9957611a868183610810565b5090565b5050505050505050600090565b50831561254b565b6125f89150893d8b11611a9957611a868183610810565b38612507565b9161260d9061112c92846115a7565b6001600160a01b038316600081815260cd6020908152604091829020849055815192835282018390529193917f2f992d01b594c040f05262961e43f8311e780be5fee3deb4c57880dd6374d12d9190819081016107d956fea2646970667358221220565b7fb9a5fa1a0e6f4239b274f7cc9b0b30ecce52124207af01c3887f5fd2a964736f6c63430008130033";
18
18
  static readonly abi: readonly [{
19
+ readonly inputs: readonly [];
20
+ readonly name: "AddReservesMarketNotFresh";
21
+ readonly type: "error";
22
+ }, {
23
+ readonly inputs: readonly [];
24
+ readonly name: "AddReservesOverflow";
25
+ readonly type: "error";
26
+ }, {
27
+ readonly inputs: readonly [];
28
+ readonly name: "BorrowAndDepositBackFailed";
29
+ readonly type: "error";
30
+ }, {
31
+ readonly inputs: readonly [];
32
+ readonly name: "BorrowCapReached";
33
+ readonly type: "error";
34
+ }, {
35
+ readonly inputs: readonly [];
36
+ readonly name: "BorrowCashNotAvailable";
37
+ readonly type: "error";
38
+ }, {
39
+ readonly inputs: readonly [];
40
+ readonly name: "BorrowMarketNotFresh";
41
+ readonly type: "error";
42
+ }, {
43
+ readonly inputs: readonly [];
44
+ readonly name: "BorrowPaused";
45
+ readonly type: "error";
46
+ }, {
47
+ readonly inputs: readonly [{
48
+ readonly internalType: "uint256";
49
+ readonly name: "usdThreshold";
50
+ readonly type: "uint256";
51
+ }];
52
+ readonly name: "BorrowValueMustBeLargerThanThreshold";
53
+ readonly type: "error";
54
+ }, {
55
+ readonly inputs: readonly [];
56
+ readonly name: "CantExitMarketWithNonZeroBorrowBalance";
57
+ readonly type: "error";
58
+ }, {
59
+ readonly inputs: readonly [];
60
+ readonly name: "CantSweepUnderlying";
61
+ readonly type: "error";
62
+ }, {
63
+ readonly inputs: readonly [];
64
+ readonly name: "ComptrollerMismatch";
65
+ readonly type: "error";
66
+ }, {
67
+ readonly inputs: readonly [];
68
+ readonly name: "GroupIdMismatch";
69
+ readonly type: "error";
70
+ }, {
71
+ readonly inputs: readonly [];
72
+ readonly name: "InsufficientCollateral";
73
+ readonly type: "error";
74
+ }, {
75
+ readonly inputs: readonly [];
76
+ readonly name: "InsufficientShortfall";
77
+ readonly type: "error";
78
+ }, {
79
+ readonly inputs: readonly [];
80
+ readonly name: "InvalidAddress";
81
+ readonly type: "error";
82
+ }, {
83
+ readonly inputs: readonly [];
84
+ readonly name: "InvalidAmount";
85
+ readonly type: "error";
86
+ }, {
87
+ readonly inputs: readonly [];
88
+ readonly name: "InvalidCloseFactor";
89
+ readonly type: "error";
90
+ }, {
91
+ readonly inputs: readonly [];
92
+ readonly name: "InvalidComptroller";
93
+ readonly type: "error";
94
+ }, {
95
+ readonly inputs: readonly [];
96
+ readonly name: "InvalidDiscountRate";
97
+ readonly type: "error";
98
+ }, {
99
+ readonly inputs: readonly [];
100
+ readonly name: "InvalidExchangeRate";
101
+ readonly type: "error";
102
+ }, {
103
+ readonly inputs: readonly [];
104
+ readonly name: "InvalidGroupId";
105
+ readonly type: "error";
106
+ }, {
107
+ readonly inputs: readonly [];
108
+ readonly name: "InvalidInput";
109
+ readonly type: "error";
110
+ }, {
111
+ readonly inputs: readonly [];
112
+ readonly name: "InvalidInterestRateModel";
113
+ readonly type: "error";
114
+ }, {
115
+ readonly inputs: readonly [];
116
+ readonly name: "InvalidMinSuBorrowValue";
117
+ readonly type: "error";
118
+ }, {
119
+ readonly inputs: readonly [];
120
+ readonly name: "InvalidReduceAmount";
121
+ readonly type: "error";
122
+ }, {
123
+ readonly inputs: readonly [];
124
+ readonly name: "InvalidReserveFactor";
125
+ readonly type: "error";
126
+ }, {
127
+ readonly inputs: readonly [];
128
+ readonly name: "InvalidSignatureForRedeemFaceValue";
129
+ readonly type: "error";
130
+ }, {
131
+ readonly inputs: readonly [];
132
+ readonly name: "InvalidSignatureLength";
133
+ readonly type: "error";
134
+ }, {
135
+ readonly inputs: readonly [];
136
+ readonly name: "InvalidSuToken";
137
+ readonly type: "error";
138
+ }, {
139
+ readonly inputs: readonly [];
140
+ readonly name: "LiquidateBorrow_LiquidatorIsBorrower";
141
+ readonly type: "error";
142
+ }, {
143
+ readonly inputs: readonly [];
144
+ readonly name: "LiquidateBorrow_RepayAmountIsMax";
145
+ readonly type: "error";
146
+ }, {
147
+ readonly inputs: readonly [];
148
+ readonly name: "LiquidateBorrow_RepayAmountIsZero";
149
+ readonly type: "error";
150
+ }, {
151
+ readonly inputs: readonly [];
152
+ readonly name: "LiquidateBorrow_SeizeTooMuch";
153
+ readonly type: "error";
154
+ }, {
155
+ readonly inputs: readonly [];
156
+ readonly name: "LiquidateCollateralMarketNotFresh";
157
+ readonly type: "error";
158
+ }, {
159
+ readonly inputs: readonly [];
160
+ readonly name: "LiquidateMarketNotFresh";
161
+ readonly type: "error";
162
+ }, {
163
+ readonly inputs: readonly [];
164
+ readonly name: "MarketAlreadyListed";
165
+ readonly type: "error";
166
+ }, {
167
+ readonly inputs: readonly [];
168
+ readonly name: "MarketCanOnlyInitializeOnce";
169
+ readonly type: "error";
170
+ }, {
171
+ readonly inputs: readonly [];
172
+ readonly name: "MarketNotListed";
173
+ readonly type: "error";
174
+ }, {
175
+ readonly inputs: readonly [];
176
+ readonly name: "MintMarketNotFresh";
177
+ readonly type: "error";
178
+ }, {
179
+ readonly inputs: readonly [];
180
+ readonly name: "MintPaused";
181
+ readonly type: "error";
182
+ }, {
183
+ readonly inputs: readonly [];
184
+ readonly name: "NoRedemptionProvider";
185
+ readonly type: "error";
186
+ }, {
187
+ readonly inputs: readonly [];
188
+ readonly name: "NotCToken";
189
+ readonly type: "error";
190
+ }, {
191
+ readonly inputs: readonly [];
192
+ readonly name: "NotSuToken";
193
+ readonly type: "error";
194
+ }, {
195
+ readonly inputs: readonly [];
196
+ readonly name: "OneOfNetAssetAndNetDebtMustBeZero";
197
+ readonly type: "error";
198
+ }, {
199
+ readonly inputs: readonly [];
200
+ readonly name: "OneOfRedeemTokensAndRedeemAmountMustBeZero";
201
+ readonly type: "error";
202
+ }, {
203
+ readonly inputs: readonly [];
204
+ readonly name: "OnlyAdmin";
205
+ readonly type: "error";
206
+ }, {
207
+ readonly inputs: readonly [];
208
+ readonly name: "OnlyAdminOrCapper";
209
+ readonly type: "error";
210
+ }, {
211
+ readonly inputs: readonly [];
212
+ readonly name: "OnlyAdminOrPauser";
213
+ readonly type: "error";
214
+ }, {
215
+ readonly inputs: readonly [];
216
+ readonly name: "OnlyCToken";
217
+ readonly type: "error";
218
+ }, {
219
+ readonly inputs: readonly [];
220
+ readonly name: "OnlyComptroller";
221
+ readonly type: "error";
222
+ }, {
223
+ readonly inputs: readonly [];
224
+ readonly name: "OnlyListedCToken";
225
+ readonly type: "error";
226
+ }, {
227
+ readonly inputs: readonly [];
228
+ readonly name: "OnlyPendingAdmin";
229
+ readonly type: "error";
230
+ }, {
231
+ readonly inputs: readonly [];
232
+ readonly name: "PriceError";
233
+ readonly type: "error";
234
+ }, {
235
+ readonly inputs: readonly [];
236
+ readonly name: "ProtectedMint_OnlyAllowAssetsInTheSameGroup";
237
+ readonly type: "error";
238
+ }, {
239
+ readonly inputs: readonly [];
240
+ readonly name: "ProtocolIsPaused";
241
+ readonly type: "error";
242
+ }, {
243
+ readonly inputs: readonly [];
244
+ readonly name: "RedeemAndTransferMarketNotFresh";
245
+ readonly type: "error";
246
+ }, {
247
+ readonly inputs: readonly [];
248
+ readonly name: "RedeemAndTransfer_AmountIsZero";
249
+ readonly type: "error";
250
+ }, {
251
+ readonly inputs: readonly [];
252
+ readonly name: "RedeemMarketNotFresh";
253
+ readonly type: "error";
254
+ }, {
255
+ readonly inputs: readonly [];
256
+ readonly name: "RedeemTransferOutNotPossible";
257
+ readonly type: "error";
258
+ }, {
259
+ readonly inputs: readonly [];
260
+ readonly name: "RedemptionSeizeTooMuch";
261
+ readonly type: "error";
262
+ }, {
263
+ readonly inputs: readonly [];
264
+ readonly name: "ReduceReservesCashNotAvailable";
265
+ readonly type: "error";
266
+ }, {
267
+ readonly inputs: readonly [];
268
+ readonly name: "ReduceReservesMarketNotFresh";
269
+ readonly type: "error";
270
+ }, {
271
+ readonly inputs: readonly [];
272
+ readonly name: "ReduceReservesOverflow";
273
+ readonly type: "error";
274
+ }, {
275
+ readonly inputs: readonly [];
276
+ readonly name: "RepayBorrowMarketNotFresh";
277
+ readonly type: "error";
278
+ }, {
279
+ readonly inputs: readonly [];
280
+ readonly name: "SeizePaused";
281
+ readonly type: "error";
282
+ }, {
283
+ readonly inputs: readonly [];
284
+ readonly name: "Seize_LiquidatorIsBorrower";
285
+ readonly type: "error";
286
+ }, {
287
+ readonly inputs: readonly [];
288
+ readonly name: "SenderMustBeCToken";
289
+ readonly type: "error";
290
+ }, {
291
+ readonly inputs: readonly [];
292
+ readonly name: "SetInterestRateModelMarketNotFresh";
293
+ readonly type: "error";
294
+ }, {
295
+ readonly inputs: readonly [];
296
+ readonly name: "SetReservesFactorMarketNotFresh";
297
+ readonly type: "error";
298
+ }, {
299
+ readonly inputs: readonly [];
300
+ readonly name: "SupplyCapReached";
301
+ readonly type: "error";
302
+ }, {
303
+ readonly inputs: readonly [];
304
+ readonly name: "TokenInOrAmountInMustBeZero";
305
+ readonly type: "error";
306
+ }, {
307
+ readonly inputs: readonly [];
308
+ readonly name: "TokenTransferInFailed";
309
+ readonly type: "error";
310
+ }, {
311
+ readonly inputs: readonly [];
312
+ readonly name: "TokenTransferOutFailed";
313
+ readonly type: "error";
314
+ }, {
315
+ readonly inputs: readonly [];
316
+ readonly name: "TooMuchRepay";
317
+ readonly type: "error";
318
+ }, {
319
+ readonly inputs: readonly [];
320
+ readonly name: "TransferNotAllowed";
321
+ readonly type: "error";
322
+ }, {
323
+ readonly inputs: readonly [];
324
+ readonly name: "TransferPaused";
325
+ readonly type: "error";
326
+ }, {
327
+ readonly inputs: readonly [];
328
+ readonly name: "UnderlyingBalanceError";
329
+ readonly type: "error";
330
+ }, {
19
331
  readonly anonymous: false;
20
332
  readonly inputs: readonly [{
333
+ readonly indexed: false;
334
+ readonly internalType: "address";
335
+ readonly name: "asset";
336
+ readonly type: "address";
337
+ }, {
21
338
  readonly indexed: false;
22
339
  readonly internalType: "uint256";
23
340
  readonly name: "_baseRate";
@@ -38,6 +355,11 @@ export declare class RedemptionManager__factory extends ContractFactory {
38
355
  }, {
39
356
  readonly anonymous: false;
40
357
  readonly inputs: readonly [{
358
+ readonly indexed: false;
359
+ readonly internalType: "address";
360
+ readonly name: "asset";
361
+ readonly type: "address";
362
+ }, {
41
363
  readonly indexed: false;
42
364
  readonly internalType: "uint256";
43
365
  readonly name: "timestamp";
@@ -175,6 +497,16 @@ export declare class RedemptionManager__factory extends ContractFactory {
175
497
  }];
176
498
  readonly stateMutability: "view";
177
499
  readonly type: "function";
500
+ }, {
501
+ readonly inputs: readonly [];
502
+ readonly name: "_redeemFaceValueSigner";
503
+ readonly outputs: readonly [{
504
+ readonly internalType: "address";
505
+ readonly name: "";
506
+ readonly type: "address";
507
+ }];
508
+ readonly stateMutability: "view";
509
+ readonly type: "function";
178
510
  }, {
179
511
  readonly inputs: readonly [];
180
512
  readonly name: "baseRate";
@@ -185,6 +517,20 @@ export declare class RedemptionManager__factory extends ContractFactory {
185
517
  }];
186
518
  readonly stateMutability: "view";
187
519
  readonly type: "function";
520
+ }, {
521
+ readonly inputs: readonly [{
522
+ readonly internalType: "address";
523
+ readonly name: "";
524
+ readonly type: "address";
525
+ }];
526
+ readonly name: "baseRateMap";
527
+ readonly outputs: readonly [{
528
+ readonly internalType: "uint256";
529
+ readonly name: "";
530
+ readonly type: "uint256";
531
+ }];
532
+ readonly stateMutability: "view";
533
+ readonly type: "function";
188
534
  }, {
189
535
  readonly inputs: readonly [{
190
536
  readonly internalType: "uint256";
@@ -202,10 +548,6 @@ export declare class RedemptionManager__factory extends ContractFactory {
202
548
  readonly internalType: "address";
203
549
  readonly name: "suToken";
204
550
  readonly type: "address";
205
- }, {
206
- readonly internalType: "contract IPriceOracle";
207
- readonly name: "oracle";
208
- readonly type: "address";
209
551
  }];
210
552
  readonly name: "calcActualRepayAndSeize";
211
553
  readonly outputs: readonly [{
@@ -238,7 +580,11 @@ export declare class RedemptionManager__factory extends ContractFactory {
238
580
  readonly stateMutability: "view";
239
581
  readonly type: "function";
240
582
  }, {
241
- readonly inputs: readonly [];
583
+ readonly inputs: readonly [{
584
+ readonly internalType: "address";
585
+ readonly name: "asset";
586
+ readonly type: "address";
587
+ }];
242
588
  readonly name: "decayBaseRateFromBorrowing";
243
589
  readonly outputs: readonly [];
244
590
  readonly stateMutability: "nonpayable";
@@ -246,37 +592,31 @@ export declare class RedemptionManager__factory extends ContractFactory {
246
592
  }, {
247
593
  readonly inputs: readonly [{
248
594
  readonly internalType: "address";
249
- readonly name: "_asset";
595
+ readonly name: "asset";
250
596
  readonly type: "address";
597
+ }, {
598
+ readonly internalType: "uint256";
599
+ readonly name: "redeemAmount";
600
+ readonly type: "uint256";
601
+ }, {
602
+ readonly internalType: "uint256";
603
+ readonly name: "_totalSupply";
604
+ readonly type: "uint256";
251
605
  }];
252
- readonly name: "getFirstProvider";
606
+ readonly name: "getCurrentRedemptionRate";
253
607
  readonly outputs: readonly [{
254
- readonly internalType: "address";
608
+ readonly internalType: "uint256";
255
609
  readonly name: "";
256
- readonly type: "address";
610
+ readonly type: "uint256";
257
611
  }];
258
612
  readonly stateMutability: "view";
259
613
  readonly type: "function";
260
614
  }, {
261
615
  readonly inputs: readonly [{
262
616
  readonly internalType: "address";
263
- readonly name: "_asset";
264
- readonly type: "address";
265
- }, {
266
- readonly internalType: "address";
267
- readonly name: "_id";
268
- readonly type: "address";
269
- }];
270
- readonly name: "getNextProvider";
271
- readonly outputs: readonly [{
272
- readonly internalType: "address";
273
- readonly name: "";
617
+ readonly name: "asset";
274
618
  readonly type: "address";
275
619
  }];
276
- readonly stateMutability: "view";
277
- readonly type: "function";
278
- }, {
279
- readonly inputs: readonly [];
280
620
  readonly name: "getRedemptionRate";
281
621
  readonly outputs: readonly [{
282
622
  readonly internalType: "uint256";
@@ -285,16 +625,6 @@ export declare class RedemptionManager__factory extends ContractFactory {
285
625
  }];
286
626
  readonly stateMutability: "view";
287
627
  readonly type: "function";
288
- }, {
289
- readonly inputs: readonly [];
290
- readonly name: "getRedemptionRateWithDecay";
291
- readonly outputs: readonly [{
292
- readonly internalType: "uint256";
293
- readonly name: "";
294
- readonly type: "uint256";
295
- }];
296
- readonly stateMutability: "view";
297
- readonly type: "function";
298
628
  }, {
299
629
  readonly inputs: readonly [{
300
630
  readonly internalType: "bytes32";
@@ -357,11 +687,15 @@ export declare class RedemptionManager__factory extends ContractFactory {
357
687
  readonly type: "function";
358
688
  }, {
359
689
  readonly inputs: readonly [{
690
+ readonly internalType: "bytes32";
691
+ readonly name: "role";
692
+ readonly type: "bytes32";
693
+ }, {
360
694
  readonly internalType: "address";
361
- readonly name: "_asset";
695
+ readonly name: "account";
362
696
  readonly type: "address";
363
697
  }];
364
- readonly name: "hasNoProvider";
698
+ readonly name: "hasRole";
365
699
  readonly outputs: readonly [{
366
700
  readonly internalType: "bool";
367
701
  readonly name: "";
@@ -371,45 +705,139 @@ export declare class RedemptionManager__factory extends ContractFactory {
371
705
  readonly type: "function";
372
706
  }, {
373
707
  readonly inputs: readonly [{
374
- readonly internalType: "bytes32";
375
- readonly name: "role";
376
- readonly type: "bytes32";
377
- }, {
378
708
  readonly internalType: "address";
379
- readonly name: "account";
709
+ readonly name: "_admin";
380
710
  readonly type: "address";
381
711
  }];
382
- readonly name: "hasRole";
712
+ readonly name: "initialize";
713
+ readonly outputs: readonly [];
714
+ readonly stateMutability: "nonpayable";
715
+ readonly type: "function";
716
+ }, {
717
+ readonly inputs: readonly [];
718
+ readonly name: "lastFeeOperationTime";
383
719
  readonly outputs: readonly [{
384
- readonly internalType: "bool";
720
+ readonly internalType: "uint256";
385
721
  readonly name: "";
386
- readonly type: "bool";
722
+ readonly type: "uint256";
387
723
  }];
388
724
  readonly stateMutability: "view";
389
725
  readonly type: "function";
390
726
  }, {
391
727
  readonly inputs: readonly [{
392
728
  readonly internalType: "address";
393
- readonly name: "_admin";
729
+ readonly name: "";
730
+ readonly type: "address";
731
+ }];
732
+ readonly name: "lastFeeOperationTimeMap";
733
+ readonly outputs: readonly [{
734
+ readonly internalType: "uint256";
735
+ readonly name: "";
736
+ readonly type: "uint256";
737
+ }];
738
+ readonly stateMutability: "view";
739
+ readonly type: "function";
740
+ }, {
741
+ readonly inputs: readonly [{
742
+ readonly internalType: "address";
743
+ readonly name: "suToken";
394
744
  readonly type: "address";
395
745
  }, {
396
- readonly internalType: "contract ISortedBorrows";
397
- readonly name: "_sortedBorrows";
746
+ readonly internalType: "uint256";
747
+ readonly name: "amount";
748
+ readonly type: "uint256";
749
+ }, {
750
+ readonly internalType: "address[]";
751
+ readonly name: "providers";
752
+ readonly type: "address[]";
753
+ }, {
754
+ readonly internalType: "bytes";
755
+ readonly name: "signature";
756
+ readonly type: "bytes";
757
+ }];
758
+ readonly name: "redeemFaceValue";
759
+ readonly outputs: readonly [];
760
+ readonly stateMutability: "nonpayable";
761
+ readonly type: "function";
762
+ }, {
763
+ readonly inputs: readonly [{
764
+ readonly internalType: "address";
765
+ readonly name: "csuToken";
398
766
  readonly type: "address";
767
+ }, {
768
+ readonly internalType: "uint256";
769
+ readonly name: "amount";
770
+ readonly type: "uint256";
771
+ }, {
772
+ readonly internalType: "address[]";
773
+ readonly name: "providers";
774
+ readonly type: "address[]";
775
+ }, {
776
+ readonly internalType: "bytes";
777
+ readonly name: "signature";
778
+ readonly type: "bytes";
779
+ }, {
780
+ readonly internalType: "uint256";
781
+ readonly name: "permitDeadline";
782
+ readonly type: "uint256";
783
+ }, {
784
+ readonly internalType: "bytes";
785
+ readonly name: "permitSignature";
786
+ readonly type: "bytes";
399
787
  }];
400
- readonly name: "initialize";
788
+ readonly name: "redeemFaceValueWithPermit";
401
789
  readonly outputs: readonly [];
402
790
  readonly stateMutability: "nonpayable";
403
791
  readonly type: "function";
404
792
  }, {
405
- readonly inputs: readonly [];
406
- readonly name: "lastFeeOperationTime";
793
+ readonly inputs: readonly [{
794
+ readonly internalType: "address";
795
+ readonly name: "redeemer";
796
+ readonly type: "address";
797
+ }, {
798
+ readonly internalType: "address";
799
+ readonly name: "provider";
800
+ readonly type: "address";
801
+ }, {
802
+ readonly internalType: "address";
803
+ readonly name: "cToken";
804
+ readonly type: "address";
805
+ }, {
806
+ readonly internalType: "address";
807
+ readonly name: "suToken";
808
+ readonly type: "address";
809
+ }, {
810
+ readonly internalType: "uint256";
811
+ readonly name: "redeemAmount";
812
+ readonly type: "uint256";
813
+ }];
814
+ readonly name: "redeemFaceValueWithProviderPreview";
407
815
  readonly outputs: readonly [{
408
816
  readonly internalType: "uint256";
409
817
  readonly name: "";
410
818
  readonly type: "uint256";
819
+ }, {
820
+ readonly internalType: "uint256";
821
+ readonly name: "";
822
+ readonly type: "uint256";
823
+ }, {
824
+ readonly internalType: "uint256";
825
+ readonly name: "";
826
+ readonly type: "uint256";
827
+ }, {
828
+ readonly internalType: "uint256";
829
+ readonly name: "";
830
+ readonly type: "uint256";
831
+ }, {
832
+ readonly internalType: "uint256";
833
+ readonly name: "";
834
+ readonly type: "uint256";
835
+ }, {
836
+ readonly internalType: "uint256";
837
+ readonly name: "";
838
+ readonly type: "uint256";
411
839
  }];
412
- readonly stateMutability: "view";
840
+ readonly stateMutability: "nonpayable";
413
841
  readonly type: "function";
414
842
  }, {
415
843
  readonly inputs: readonly [{
@@ -451,11 +879,11 @@ export declare class RedemptionManager__factory extends ContractFactory {
451
879
  readonly type: "function";
452
880
  }, {
453
881
  readonly inputs: readonly [{
454
- readonly internalType: "contract ISortedBorrows";
455
- readonly name: "_sortedBorrows";
882
+ readonly internalType: "address";
883
+ readonly name: "signer";
456
884
  readonly type: "address";
457
885
  }];
458
- readonly name: "setSortedBorrows";
886
+ readonly name: "setRedeemFaceValueSigner";
459
887
  readonly outputs: readonly [];
460
888
  readonly stateMutability: "nonpayable";
461
889
  readonly type: "function";
@@ -483,38 +911,6 @@ export declare class RedemptionManager__factory extends ContractFactory {
483
911
  }];
484
912
  readonly stateMutability: "view";
485
913
  readonly type: "function";
486
- }, {
487
- readonly inputs: readonly [{
488
- readonly internalType: "uint256";
489
- readonly name: "redeemAmount";
490
- readonly type: "uint256";
491
- }, {
492
- readonly internalType: "uint256";
493
- readonly name: "_totalSupply";
494
- readonly type: "uint256";
495
- }];
496
- readonly name: "updateBaseRateFromRedemption";
497
- readonly outputs: readonly [{
498
- readonly internalType: "uint256";
499
- readonly name: "";
500
- readonly type: "uint256";
501
- }];
502
- readonly stateMutability: "nonpayable";
503
- readonly type: "function";
504
- }, {
505
- readonly inputs: readonly [{
506
- readonly internalType: "address";
507
- readonly name: "csuToken";
508
- readonly type: "address";
509
- }, {
510
- readonly internalType: "address";
511
- readonly name: "borrower";
512
- readonly type: "address";
513
- }];
514
- readonly name: "updateSortedBorrows";
515
- readonly outputs: readonly [];
516
- readonly stateMutability: "nonpayable";
517
- readonly type: "function";
518
914
  }];
519
915
  static createInterface(): RedemptionManagerInterface;
520
916
  static connect(address: string, runner?: ContractRunner | null): RedemptionManager;