@raac/rpc 1.2.0-beta.4 → 1.2.0-beta.5

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 (495) hide show
  1. package/dist/RPCLibrary.js +212 -0
  2. package/dist/artifacts/core/collectors/FeeCollector.sol/FeeCollector.json +2 -2
  3. package/dist/artifacts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector.json +15 -2
  4. package/dist/artifacts/core/collectors/RAACTokenCollector.sol/RAACTokenCollector.json +2 -2
  5. package/dist/artifacts/core/collectors/RWAIndexTokenCollector.sol/RWAIndexTokenCollector.json +2 -2
  6. package/dist/artifacts/core/collectors/Treasury.sol/Treasury.json +2 -2
  7. package/dist/artifacts/core/governance/gauges/BaseGauge.sol/BaseGauge.json +0 -25
  8. package/dist/artifacts/core/governance/gauges/GaugeController.sol/GaugeController.json +2 -22
  9. package/dist/artifacts/core/governance/gauges/GaugeRewardsDistributor.sol/GaugeRewardsDistributor.json +2 -2
  10. package/dist/artifacts/core/governance/gauges/RAACGauge.sol/RAACGauge.json +2 -27
  11. package/dist/artifacts/core/governance/gauges/RWAGauge.sol/RWAGauge.json +2 -27
  12. package/dist/artifacts/core/governance/proposals/Governance.sol/Governance.json +2 -2
  13. package/dist/artifacts/core/governance/proposals/TimelockController.sol/TimelockController.json +2 -2
  14. package/dist/artifacts/core/lockers/RAACBotLocker.sol/RAACBotLocker.json +915 -0
  15. package/dist/artifacts/core/lockers/RAACLiquidLocker.sol/RAACLiquidLocker.json +2158 -0
  16. package/dist/artifacts/core/lockers/RAACMaturityVault.sol/RAACMaturityVault.json +911 -0
  17. package/dist/artifacts/core/minters/RAACMinter/RAACMinter.sol/RAACMinter.json +59 -741
  18. package/dist/artifacts/core/oracles/BaseVRFv2Consumer.sol/BaseVRFv2Consumer.json +106 -2
  19. package/dist/artifacts/core/oracles/CrvUSDToUSDOracle.sol/CrvUSDToUSDOracle.json +2 -2
  20. package/dist/artifacts/core/oracles/RAACHousePriceOracle.sol/RAACHousePriceOracle.json +2 -2
  21. package/dist/artifacts/core/oracles/RAACPrimeRateOracle.sol/RAACPrimeRateOracle.json +2 -2
  22. package/dist/artifacts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter.json +15 -2
  23. package/dist/artifacts/core/pools/LendingPool/ERC721AssetAdapter.sol/ERC721AssetAdapter.json +15 -2
  24. package/dist/artifacts/core/pools/LendingPool/LendingPool.sol/LendingPool.json +20 -49
  25. package/dist/artifacts/core/pools/StabilityPool/StabilityPool.sol/StabilityPool.json +2 -2
  26. package/dist/artifacts/core/primitives/ComplianceRegistry.sol/ComplianceRegistry.json +2 -2
  27. package/dist/artifacts/core/primitives/RAACHousePrices.sol/RAACHousePrices.json +2 -2
  28. package/dist/artifacts/core/tokens/DEToken.sol/DEToken.json +21 -2
  29. package/dist/artifacts/core/tokens/LeRAAC.sol/LiquidEscrowedRAAC.json +621 -0
  30. package/dist/artifacts/core/tokens/RAACNFT.sol/RAACNFT.json +101 -74
  31. package/dist/artifacts/core/tokens/RAACToken.sol/RAACToken.json +24 -322
  32. package/dist/artifacts/core/tokens/RToken.sol/RToken.json +2 -2
  33. package/dist/artifacts/core/tokens/RWAIndexToken.sol/RWAIndexToken.json +66 -2
  34. package/dist/artifacts/core/tokens/veRAACToken.sol/veRAACToken.json +45 -32
  35. package/dist/artifacts/core/vaults/ERC20VaultAdapter.sol/ERC20VaultAdapter.json +15 -2
  36. package/dist/artifacts/core/vaults/ERC721VaultAdapter.sol/ERC721VaultAdapter.json +15 -2
  37. package/dist/artifacts/core/vaults/RWAVault.sol/RWAVault.json +46 -2
  38. package/dist/artifacts/mocks/core/oracles/MockVRFCoordinatorV2.sol/MockVRFCoordinatorV2.json +2 -2
  39. package/dist/artifacts/mocks/core/tokens/crvUSDToken.sol/crvUSDToken.json +2 -2
  40. package/dist/artifacts/zap/AladdinZap.sol/AladdinZap.json +398 -0
  41. package/dist/artifacts/zeno/Auction.sol/Auction.json +2 -2
  42. package/dist/artifacts/zeno/AuctionFactory.sol/AuctionFactory.json +2 -2
  43. package/dist/artifacts/zeno/Zeno.sol/Zeno.json +2 -2
  44. package/dist/artifacts/zeno/ZenoFactory.sol/ZenoFactory.json +2 -2
  45. package/dist/configs/chains/8453.json +34 -2
  46. package/dist/contracts/getContractAddress.js +2 -0
  47. package/dist/contracts/lockers/botLocker/_helpers.js +19 -0
  48. package/dist/contracts/lockers/botLocker/claim.js +16 -0
  49. package/dist/contracts/lockers/botLocker/getClaimable.js +12 -0
  50. package/dist/contracts/lockers/botLocker/getClaimables.js +16 -0
  51. package/dist/contracts/lockers/botLocker/getClaimedRewards.js +13 -0
  52. package/dist/contracts/lockers/botLocker/getLockedTokenIds.js +10 -0
  53. package/dist/contracts/lockers/botLocker/getLocks.js +27 -0
  54. package/dist/contracts/lockers/botLocker/getRewardTokenCount.js +10 -0
  55. package/dist/contracts/lockers/botLocker/getRewardTokens.js +9 -0
  56. package/dist/contracts/lockers/botLocker/lock.js +17 -0
  57. package/dist/contracts/lockers/botLocker/unlock.js +17 -0
  58. package/dist/contracts/lockers/botLocker/unlockAndClaim.js +16 -0
  59. package/dist/contracts/lockers/liquidLocker/_helpers.js +19 -0
  60. package/dist/contracts/lockers/liquidLocker/borrow.js +17 -0
  61. package/dist/contracts/lockers/liquidLocker/deposit.js +17 -0
  62. package/dist/contracts/lockers/liquidLocker/donate.js +16 -0
  63. package/dist/contracts/lockers/liquidLocker/getConfig.js +52 -0
  64. package/dist/contracts/lockers/liquidLocker/getGlobalInfo.js +39 -0
  65. package/dist/contracts/lockers/liquidLocker/getUserInfo.js +28 -0
  66. package/dist/contracts/lockers/liquidLocker/getUserLocks.js +26 -0
  67. package/dist/contracts/lockers/liquidLocker/harvest.js +17 -0
  68. package/dist/contracts/lockers/liquidLocker/isKeeper.js +9 -0
  69. package/dist/contracts/lockers/liquidLocker/processVaultExpiredLocks.js +17 -0
  70. package/dist/contracts/lockers/liquidLocker/repay.js +17 -0
  71. package/dist/contracts/lockers/liquidLocker/requestUnlock.js +17 -0
  72. package/dist/contracts/lockers/liquidLocker/voteGauge.js +17 -0
  73. package/dist/contracts/lockers/liquidLocker/voteGovernance.js +16 -0
  74. package/dist/contracts/lockers/liquidLocker/withdrawUnlocked.js +16 -0
  75. package/dist/contracts/lockers/maturityVault/_helpers.js +19 -0
  76. package/dist/contracts/lockers/maturityVault/claim.js +16 -0
  77. package/dist/contracts/lockers/maturityVault/deposit.js +17 -0
  78. package/dist/contracts/lockers/maturityVault/depositFor.js +16 -0
  79. package/dist/contracts/lockers/maturityVault/distribute.js +17 -0
  80. package/dist/contracts/lockers/maturityVault/exit.js +16 -0
  81. package/dist/contracts/lockers/maturityVault/getConfig.js +26 -0
  82. package/dist/contracts/lockers/maturityVault/getGlobalInfo.js +45 -0
  83. package/dist/contracts/lockers/maturityVault/getUserInfo.js +18 -0
  84. package/dist/contracts/lockers/maturityVault/harvest.js +16 -0
  85. package/dist/contracts/lockers/maturityVault/isWhitelisted.js +9 -0
  86. package/dist/contracts/lockers/maturityVault/updatePendingDistribution.js +16 -0
  87. package/dist/contracts/lockers/maturityVault/withdraw.js +16 -0
  88. package/dist/contracts/lockers/maturityVault/withdrawAll.js +16 -0
  89. package/dist/contracts/tokens/leRAAC/_helpers.js +19 -0
  90. package/dist/contracts/tokens/leRAAC/approve.js +13 -0
  91. package/dist/contracts/tokens/leRAAC/burn.js +16 -0
  92. package/dist/contracts/tokens/leRAAC/burnFrom.js +16 -0
  93. package/dist/contracts/tokens/leRAAC/getAllowance.js +11 -0
  94. package/dist/contracts/tokens/leRAAC/getBalance.js +11 -0
  95. package/dist/contracts/tokens/leRAAC/getMinterInfo.js +15 -0
  96. package/dist/contracts/tokens/leRAAC/getTotalSupply.js +11 -0
  97. package/dist/contracts/tokens/leRAAC/transfer.js +13 -0
  98. package/dist/contracts/tokens/leRAAC/transferFrom.js +13 -0
  99. package/dist/contracts/zap/aladdin/_helpers.js +19 -0
  100. package/dist/contracts/zap/aladdin/_types.js +38 -0
  101. package/dist/contracts/zap/aladdin/decodeRoute.js +36 -0
  102. package/dist/contracts/zap/aladdin/encodeRoute.js +34 -0
  103. package/dist/contracts/zap/aladdin/getCurvePoolToken.js +13 -0
  104. package/dist/contracts/zap/aladdin/getOwner.js +9 -0
  105. package/dist/contracts/zap/aladdin/getPool2Token.js +12 -0
  106. package/dist/contracts/zap/aladdin/getRoutes.js +16 -0
  107. package/dist/contracts/zap/aladdin/getVersion.js +9 -0
  108. package/dist/contracts/zap/aladdin/rescue.js +16 -0
  109. package/dist/contracts/zap/aladdin/updatePoolTokens.js +19 -0
  110. package/dist/contracts/zap/aladdin/updateRoute.js +31 -0
  111. package/dist/contracts/zap/aladdin/validateRoute.js +80 -0
  112. package/dist/contracts/zap/aladdin/zap.js +18 -0
  113. package/dist/contracts/zap/aladdin/zapFrom.js +18 -0
  114. package/dist/contracts/zap/aladdin/zapWithRoutes.js +28 -0
  115. package/dist/contracts/zap/codec.js +423 -0
  116. package/dist/minter/_helpers.js +19 -0
  117. package/dist/minter/activate.js +18 -0
  118. package/dist/minter/addDistributionPool.js +17 -0
  119. package/dist/minter/calculateScheduledMintableAmount.js +14 -0
  120. package/dist/minter/get.js +44 -112
  121. package/dist/minter/getApy.js +55 -19
  122. package/dist/minter/getDistributionPools.js +39 -0
  123. package/dist/minter/getEmissionPerSecond.js +25 -0
  124. package/dist/minter/getPoolInfo.js +23 -0
  125. package/dist/minter/isPaused.js +9 -0
  126. package/dist/minter/manageDistributionPool.js +18 -0
  127. package/dist/minter/pause.js +24 -0
  128. package/dist/minter/removeDistributionPool.js +20 -0
  129. package/dist/minter/tick.js +12 -24
  130. package/dist/tests/liquidLocker.test.js +262 -0
  131. package/dist/tests/test.js +1 -1
  132. package/dist/types/RPCLibrary.d.ts +171 -0
  133. package/dist/types/contracts/lockers/botLocker/_helpers.d.ts +4 -0
  134. package/dist/types/contracts/lockers/botLocker/claim.d.ts +6 -0
  135. package/dist/types/contracts/lockers/botLocker/getClaimable.d.ts +6 -0
  136. package/dist/types/contracts/lockers/botLocker/getClaimables.d.ts +10 -0
  137. package/dist/types/contracts/lockers/botLocker/getClaimedRewards.d.ts +7 -0
  138. package/dist/types/contracts/lockers/botLocker/getLockedTokenIds.d.ts +3 -0
  139. package/dist/types/contracts/lockers/botLocker/getLocks.d.ts +15 -0
  140. package/dist/types/contracts/lockers/botLocker/getRewardTokenCount.d.ts +3 -0
  141. package/dist/types/contracts/lockers/botLocker/getRewardTokens.d.ts +3 -0
  142. package/dist/types/contracts/lockers/botLocker/lock.d.ts +7 -0
  143. package/dist/types/contracts/lockers/botLocker/unlock.d.ts +7 -0
  144. package/dist/types/contracts/lockers/botLocker/unlockAndClaim.d.ts +6 -0
  145. package/dist/types/contracts/lockers/liquidLocker/_helpers.d.ts +4 -0
  146. package/dist/types/contracts/lockers/liquidLocker/borrow.d.ts +7 -0
  147. package/dist/types/contracts/lockers/liquidLocker/deposit.d.ts +7 -0
  148. package/dist/types/contracts/lockers/liquidLocker/donate.d.ts +6 -0
  149. package/dist/types/contracts/lockers/liquidLocker/getConfig.d.ts +27 -0
  150. package/dist/types/contracts/lockers/liquidLocker/getGlobalInfo.d.ts +24 -0
  151. package/dist/types/contracts/lockers/liquidLocker/getUserInfo.d.ts +21 -0
  152. package/dist/types/contracts/lockers/liquidLocker/getUserLocks.d.ts +17 -0
  153. package/dist/types/contracts/lockers/liquidLocker/harvest.d.ts +7 -0
  154. package/dist/types/contracts/lockers/liquidLocker/isKeeper.d.ts +3 -0
  155. package/dist/types/contracts/lockers/liquidLocker/processVaultExpiredLocks.d.ts +7 -0
  156. package/dist/types/contracts/lockers/liquidLocker/repay.d.ts +7 -0
  157. package/dist/types/contracts/lockers/liquidLocker/requestUnlock.d.ts +7 -0
  158. package/dist/types/contracts/lockers/liquidLocker/voteGauge.d.ts +7 -0
  159. package/dist/types/contracts/lockers/liquidLocker/voteGovernance.d.ts +6 -0
  160. package/dist/types/contracts/lockers/liquidLocker/withdrawUnlocked.d.ts +6 -0
  161. package/dist/types/contracts/lockers/maturityVault/_helpers.d.ts +4 -0
  162. package/dist/types/contracts/lockers/maturityVault/claim.d.ts +6 -0
  163. package/dist/types/contracts/lockers/maturityVault/deposit.d.ts +7 -0
  164. package/dist/types/contracts/lockers/maturityVault/depositFor.d.ts +6 -0
  165. package/dist/types/contracts/lockers/maturityVault/distribute.d.ts +7 -0
  166. package/dist/types/contracts/lockers/maturityVault/exit.d.ts +6 -0
  167. package/dist/types/contracts/lockers/maturityVault/getConfig.d.ts +12 -0
  168. package/dist/types/contracts/lockers/maturityVault/getGlobalInfo.d.ts +32 -0
  169. package/dist/types/contracts/lockers/maturityVault/getUserInfo.d.ts +14 -0
  170. package/dist/types/contracts/lockers/maturityVault/harvest.d.ts +6 -0
  171. package/dist/types/contracts/lockers/maturityVault/isWhitelisted.d.ts +3 -0
  172. package/dist/types/contracts/lockers/maturityVault/updatePendingDistribution.d.ts +6 -0
  173. package/dist/types/contracts/lockers/maturityVault/withdraw.d.ts +6 -0
  174. package/dist/types/contracts/lockers/maturityVault/withdrawAll.d.ts +6 -0
  175. package/dist/types/contracts/tokens/leRAAC/_helpers.d.ts +4 -0
  176. package/dist/types/contracts/tokens/leRAAC/approve.d.ts +3 -0
  177. package/dist/types/contracts/tokens/leRAAC/burn.d.ts +6 -0
  178. package/dist/types/contracts/tokens/leRAAC/burnFrom.d.ts +6 -0
  179. package/dist/types/contracts/tokens/leRAAC/getAllowance.d.ts +3 -0
  180. package/dist/types/contracts/tokens/leRAAC/getBalance.d.ts +3 -0
  181. package/dist/types/contracts/tokens/leRAAC/getMinterInfo.d.ts +8 -0
  182. package/dist/types/contracts/tokens/leRAAC/getTotalSupply.d.ts +3 -0
  183. package/dist/types/contracts/tokens/leRAAC/transfer.d.ts +3 -0
  184. package/dist/types/contracts/tokens/leRAAC/transferFrom.d.ts +3 -0
  185. package/dist/types/contracts/zap/aladdin/_helpers.d.ts +4 -0
  186. package/dist/types/contracts/zap/aladdin/_types.d.ts +44 -0
  187. package/dist/types/contracts/zap/aladdin/decodeRoute.d.ts +14 -0
  188. package/dist/types/contracts/zap/aladdin/encodeRoute.d.ts +18 -0
  189. package/dist/types/contracts/zap/aladdin/getCurvePoolToken.d.ts +8 -0
  190. package/dist/types/contracts/zap/aladdin/getOwner.d.ts +3 -0
  191. package/dist/types/contracts/zap/aladdin/getPool2Token.d.ts +6 -0
  192. package/dist/types/contracts/zap/aladdin/getRoutes.d.ts +13 -0
  193. package/dist/types/contracts/zap/aladdin/getVersion.d.ts +3 -0
  194. package/dist/types/contracts/zap/aladdin/rescue.d.ts +6 -0
  195. package/dist/types/contracts/zap/aladdin/updatePoolTokens.d.ts +6 -0
  196. package/dist/types/contracts/zap/aladdin/updateRoute.d.ts +13 -0
  197. package/dist/types/contracts/zap/aladdin/validateRoute.d.ts +26 -0
  198. package/dist/types/contracts/zap/aladdin/zap.d.ts +8 -0
  199. package/dist/types/contracts/zap/aladdin/zapFrom.d.ts +8 -0
  200. package/dist/types/contracts/zap/aladdin/zapWithRoutes.d.ts +11 -0
  201. package/dist/types/contracts/zap/codec.d.ts +36 -0
  202. package/dist/types/minter/_helpers.d.ts +4 -0
  203. package/dist/types/minter/activate.d.ts +8 -0
  204. package/dist/types/minter/addDistributionPool.d.ts +7 -0
  205. package/dist/types/minter/calculateScheduledMintableAmount.d.ts +8 -0
  206. package/dist/types/minter/get.d.ts +28 -16
  207. package/dist/types/minter/getApy.d.ts +19 -2
  208. package/dist/types/minter/getDistributionPools.d.ts +16 -0
  209. package/dist/types/minter/getEmissionPerSecond.d.ts +8 -0
  210. package/dist/types/minter/getPoolInfo.d.ts +13 -0
  211. package/dist/types/minter/isPaused.d.ts +3 -0
  212. package/dist/types/minter/manageDistributionPool.d.ts +8 -0
  213. package/dist/types/minter/pause.d.ts +6 -0
  214. package/dist/types/minter/removeDistributionPool.d.ts +10 -0
  215. package/dist/types/minter/tick.d.ts +7 -3
  216. package/dist/types/tests/liquidLocker.test.d.ts +18 -0
  217. package/dist/types/typechain-types/@openzeppelin/{contracts-v3/token/ERC20/IERC20.d.ts → contracts/token/ERC20/extensions/ERC20Capped.d.ts} +34 -18
  218. package/dist/types/typechain-types/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -0
  219. package/dist/types/typechain-types/@openzeppelin/contracts-upgradeable/index.d.ts +2 -0
  220. package/dist/types/typechain-types/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.d.ts +155 -0
  221. package/dist/types/typechain-types/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts +1 -0
  222. package/dist/types/typechain-types/@openzeppelin/index.d.ts +0 -2
  223. package/dist/types/typechain-types/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector.d.ts +15 -1
  224. package/dist/types/typechain-types/contracts/core/governance/gauges/BaseGauge.d.ts +1 -25
  225. package/dist/types/typechain-types/contracts/core/governance/gauges/GaugeController.d.ts +1 -13
  226. package/dist/types/typechain-types/contracts/core/governance/gauges/RAACGauge.d.ts +1 -25
  227. package/dist/types/typechain-types/contracts/core/governance/gauges/RWAGauge.d.ts +1 -25
  228. package/dist/types/typechain-types/contracts/core/lockers/RAACLiquidLocker.d.ts +101 -171
  229. package/dist/types/typechain-types/contracts/core/lockers/RAACMaturityVault.d.ts +5 -38
  230. package/dist/types/typechain-types/contracts/core/minters/RAACMinter/RAACMinter.d.ts +58 -418
  231. package/dist/types/typechain-types/contracts/core/oracles/BaseVRFv2Consumer.d.ts +108 -2
  232. package/dist/types/typechain-types/contracts/core/oracles/KYCVerifyModule.sol/IKYCVerifyModule.d.ts +25 -0
  233. package/dist/types/typechain-types/{@openzeppelin/contracts-v3/access/Ownable.d.ts → contracts/core/oracles/KYCVerifyModule.sol/KYCVerifyModule.d.ts} +10 -6
  234. package/dist/types/typechain-types/contracts/core/oracles/KYCVerifyModule.sol/index.d.ts +2 -0
  235. package/dist/types/typechain-types/contracts/core/oracles/PmUSDToUSDOracle.d.ts +338 -0
  236. package/dist/types/typechain-types/contracts/core/oracles/RWAIndexTokenOracle.sol/RWAIndexTokenOracle.d.ts +60 -4
  237. package/dist/types/typechain-types/contracts/core/oracles/ZkMeKYCVerifyModule.sol/ZKMEKYCVerifyModule.d.ts +110 -0
  238. package/dist/types/typechain-types/contracts/core/oracles/ZkMeKYCVerifyModule.sol/index.d.ts +1 -0
  239. package/dist/types/typechain-types/contracts/core/oracles/index.d.ts +5 -0
  240. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter.d.ts +15 -1
  241. package/dist/types/typechain-types/contracts/core/pools/LendingPool/ERC721AssetAdapter.d.ts +15 -1
  242. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPool.d.ts +9 -23
  243. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LendingPoolStorage.d.ts +8 -4
  244. package/dist/types/typechain-types/contracts/core/pools/LendingPool/LiquidationProxy.d.ts +8 -4
  245. package/dist/types/typechain-types/contracts/core/pools/LendingPool/VaultProxy.d.ts +8 -4
  246. package/dist/types/typechain-types/contracts/core/pools/StabilityPool/LiquidationSwap.d.ts +70 -1
  247. package/dist/types/typechain-types/contracts/core/tokens/DEToken.d.ts +16 -1
  248. package/dist/types/typechain-types/contracts/core/tokens/LeRAAC.sol/LiquidEscrowedRAAC.d.ts +3 -3
  249. package/dist/types/typechain-types/contracts/core/tokens/RAACNFT.d.ts +65 -50
  250. package/dist/types/typechain-types/contracts/core/tokens/RAACToken.d.ts +6 -191
  251. package/dist/types/typechain-types/contracts/core/tokens/RWAIndexToken.d.ts +62 -1
  252. package/dist/types/typechain-types/contracts/core/tokens/SToken.d.ts +804 -0
  253. package/dist/types/typechain-types/contracts/core/tokens/index.d.ts +1 -0
  254. package/dist/types/typechain-types/contracts/core/vaults/ERC20VaultAdapter.d.ts +15 -1
  255. package/dist/types/typechain-types/contracts/core/vaults/ERC721VaultAdapter.d.ts +15 -1
  256. package/dist/types/typechain-types/contracts/core/vaults/RAACNFTVaultAdapterV2.d.ts +15 -1
  257. package/dist/types/typechain-types/contracts/core/vaults/RWAVault.d.ts +28 -2
  258. package/dist/types/typechain-types/contracts/index.d.ts +2 -0
  259. package/dist/types/typechain-types/contracts/interfaces/IZap.d.ts +15 -1
  260. package/dist/types/typechain-types/contracts/interfaces/core/governance/gauges/IBaseGauge.d.ts +1 -25
  261. package/dist/types/typechain-types/contracts/interfaces/core/lockers/IRaacLiquidLocker.d.ts +30 -37
  262. package/dist/types/typechain-types/contracts/interfaces/core/minters/RAACMinter/IRAACMinter.d.ts +68 -205
  263. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IBaseVRFv2Consumer.d.ts +100 -2
  264. package/dist/types/typechain-types/contracts/interfaces/core/oracles/IZKMEVerifyUpgradeable.d.ts +15 -1
  265. package/dist/types/typechain-types/contracts/interfaces/core/pools/LendingPool/ILendingPool.d.ts +1 -19
  266. package/dist/types/typechain-types/contracts/interfaces/core/pools/StabilityPool/ILiquidationSwap.d.ts +70 -1
  267. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IDEToken.d.ts +16 -1
  268. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRAACNFT.d.ts +36 -25
  269. package/dist/types/typechain-types/contracts/interfaces/core/tokens/IRAACToken.d.ts +2 -179
  270. package/dist/types/typechain-types/contracts/interfaces/core/tokens/ISToken.d.ts +454 -0
  271. package/dist/types/typechain-types/contracts/interfaces/core/tokens/index.d.ts +1 -0
  272. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IBaseHybridVault.d.ts +15 -1
  273. package/dist/types/typechain-types/contracts/interfaces/core/vaults/IVaultAssetAdapter.d.ts +19 -3
  274. package/dist/types/typechain-types/contracts/interfaces/curve/ICurveCrvUSDVault.d.ts +47 -1
  275. package/dist/types/typechain-types/contracts/mocks/core/curve/CurveCrvUSDVaultMock.d.ts +47 -1
  276. package/dist/types/typechain-types/contracts/mocks/core/index.d.ts +2 -0
  277. package/dist/types/typechain-types/contracts/mocks/core/minters/MockRAACMinterRewardsReceiver.d.ts +181 -0
  278. package/dist/types/typechain-types/contracts/mocks/core/minters/index.d.ts +1 -0
  279. package/dist/types/typechain-types/contracts/mocks/core/oracles/MockZKMEVerifyUpgradeable.d.ts +15 -1
  280. package/dist/types/typechain-types/contracts/mocks/core/pools/MockLendingPoolDebtToken.d.ts +1 -19
  281. package/dist/types/typechain-types/contracts/mocks/core/tokens/MockFeeOnTransferToken.d.ts +163 -0
  282. package/dist/types/typechain-types/contracts/mocks/core/tokens/index.d.ts +1 -0
  283. package/dist/types/typechain-types/contracts/mocks/libraries/index.d.ts +2 -0
  284. package/dist/types/typechain-types/contracts/mocks/libraries/minters/EmissionScheduleMock.d.ts +91 -0
  285. package/dist/types/typechain-types/contracts/mocks/libraries/minters/index.d.ts +1 -0
  286. package/dist/types/typechain-types/contracts/rwaf/ChainlinkOracleAdapter.sol/ChainlinkOracleAdapter.d.ts +212 -0
  287. package/dist/types/typechain-types/contracts/rwaf/ChainlinkOracleAdapter.sol/IRWACoordinator.d.ts +67 -0
  288. package/dist/types/typechain-types/contracts/rwaf/ChainlinkOracleAdapter.sol/index.d.ts +2 -0
  289. package/dist/types/typechain-types/contracts/rwaf/TokenBlender.sol/ITokenBlender.d.ts +331 -0
  290. package/dist/types/typechain-types/contracts/rwaf/TokenBlender.sol/TokenBlender.d.ts +671 -0
  291. package/dist/types/typechain-types/contracts/rwaf/TokenBlender.sol/index.d.ts +2 -0
  292. package/dist/types/typechain-types/contracts/rwaf/index.d.ts +4 -0
  293. package/dist/types/typechain-types/contracts/zap/AladdinZap.d.ts +15 -1
  294. package/dist/types/typechain-types/contracts/zap/index.d.ts +0 -2
  295. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/functions/v1_0_0/libraries/FunctionsRequest__factory.d.ts +1 -1
  296. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwnerWithProposal__factory.d.ts +1 -1
  297. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/shared/access/ConfirmedOwner__factory.d.ts +1 -1
  298. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/dev/libraries/VRFV2PlusClient__factory.d.ts +1 -1
  299. package/dist/types/typechain-types/factories/@chainlink/contracts/src/v0.8/vrf/mocks/VRFCoordinatorV2_5Mock__factory.d.ts +1 -1
  300. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/ERC20Capped__factory.d.ts +271 -0
  301. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.d.ts +1 -0
  302. package/dist/types/typechain-types/factories/@openzeppelin/contracts/token/ERC20/utils/SafeERC20__factory.d.ts +1 -1
  303. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Address__factory.d.ts +1 -1
  304. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Errors__factory.d.ts +1 -1
  305. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/ShortStrings__factory.d.ts +1 -1
  306. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/Strings__factory.d.ts +1 -1
  307. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/ECDSA__factory.d.ts +1 -1
  308. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/cryptography/MerkleProof__factory.d.ts +1 -1
  309. package/dist/types/typechain-types/factories/@openzeppelin/contracts/utils/math/SafeCast__factory.d.ts +1 -1
  310. package/dist/types/typechain-types/factories/@openzeppelin/contracts-upgradeable/index.d.ts +1 -0
  311. package/dist/types/typechain-types/factories/@openzeppelin/{contracts-v3/token/ERC20/IERC20__factory.d.ts → contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.d.ts} +122 -10
  312. package/dist/types/typechain-types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/index.d.ts +1 -0
  313. package/dist/types/typechain-types/factories/@openzeppelin/index.d.ts +0 -1
  314. package/dist/types/typechain-types/factories/contracts/core/collectors/ERC20Collector__factory.d.ts +1 -1
  315. package/dist/types/typechain-types/factories/contracts/core/collectors/FeeCollector__factory.d.ts +1 -1
  316. package/dist/types/typechain-types/factories/contracts/core/collectors/NFTRoyaltyFeeCollector.sol/NFTRoyaltyFeeCollector__factory.d.ts +11 -1
  317. package/dist/types/typechain-types/factories/contracts/core/collectors/RAACTokenCollector__factory.d.ts +1 -1
  318. package/dist/types/typechain-types/factories/contracts/core/collectors/RWAIndexTokenCollector__factory.d.ts +1 -1
  319. package/dist/types/typechain-types/factories/contracts/core/collectors/Treasury__factory.d.ts +1 -1
  320. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/BaseGauge__factory.d.ts +0 -20
  321. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeController__factory.d.ts +1 -17
  322. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/GaugeRewardsDistributor__factory.d.ts +1 -1
  323. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RAACGauge__factory.d.ts +1 -21
  324. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/RWAGauge__factory.d.ts +1 -21
  325. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/VeBoostProxy__factory.d.ts +1 -1
  326. package/dist/types/typechain-types/factories/contracts/core/governance/gauges/VeBoost__factory.d.ts +1 -1
  327. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/Governance__factory.d.ts +1 -1
  328. package/dist/types/typechain-types/factories/contracts/core/governance/proposals/TimelockController__factory.d.ts +1 -1
  329. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACBotLocker__factory.d.ts +1 -1
  330. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACLiquidLocker__factory.d.ts +129 -197
  331. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACMaturityVault__factory.d.ts +11 -51
  332. package/dist/types/typechain-types/factories/contracts/core/lockers/RAACNFTLocker__factory.d.ts +1 -1
  333. package/dist/types/typechain-types/factories/contracts/core/minters/RAACMinter/RAACMinter__factory.d.ts +28 -557
  334. package/dist/types/typechain-types/factories/contracts/core/minters/RAACReleaseOrchestrator/RAACReleaseOrchestrator__factory.d.ts +1 -1
  335. package/dist/types/typechain-types/factories/contracts/core/oracles/BaseVRFv2Consumer__factory.d.ts +81 -1
  336. package/dist/types/typechain-types/factories/contracts/core/oracles/CrvUSDToUSDOracle.sol/CrvUSDToUSDOracle__factory.d.ts +1 -1
  337. package/dist/types/typechain-types/factories/contracts/core/oracles/KYCVerifyModule.sol/IKYCVerifyModule__factory.d.ts +25 -0
  338. package/dist/types/typechain-types/factories/{@openzeppelin/contracts-v3/access/Ownable__factory.d.ts → contracts/core/oracles/KYCVerifyModule.sol/KYCVerifyModule__factory.d.ts} +38 -4
  339. package/dist/types/typechain-types/factories/contracts/core/oracles/KYCVerifyModule.sol/index.d.ts +2 -0
  340. package/dist/types/typechain-types/factories/contracts/core/oracles/PmUSDToUSDOracle__factory.d.ts +443 -0
  341. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACHousePriceOracle__factory.d.ts +1 -1
  342. package/dist/types/typechain-types/factories/contracts/core/oracles/RAACPrimeRateOracle__factory.d.ts +1 -1
  343. package/dist/types/typechain-types/factories/contracts/core/oracles/RWAIndexTokenOracle.sol/RWAIndexTokenOracle__factory.d.ts +97 -3
  344. package/dist/types/typechain-types/factories/contracts/core/oracles/ZkMeKYCVerifyModule.sol/ZKMEKYCVerifyModule__factory.d.ts +181 -0
  345. package/dist/types/typechain-types/factories/contracts/core/oracles/ZkMeKYCVerifyModule.sol/index.d.ts +1 -0
  346. package/dist/types/typechain-types/factories/contracts/core/oracles/crvUSDPriceOracle.sol/CrvUSDPriceOracle__factory.d.ts +1 -1
  347. package/dist/types/typechain-types/factories/contracts/core/oracles/index.d.ts +3 -0
  348. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC20AssetAdapter.sol/ERC20AssetAdapter__factory.d.ts +11 -1
  349. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/ERC721AssetAdapter__factory.d.ts +11 -1
  350. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPoolStorage__factory.d.ts +9 -5
  351. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LendingPool__factory.d.ts +9 -31
  352. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/LiquidationProxy__factory.d.ts +9 -5
  353. package/dist/types/typechain-types/factories/contracts/core/pools/LendingPool/VaultProxy__factory.d.ts +9 -5
  354. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationStrategyProxy__factory.d.ts +1 -1
  355. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/LiquidationSwap__factory.d.ts +62 -3
  356. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPoolStorage__factory.d.ts +1 -1
  357. package/dist/types/typechain-types/factories/contracts/core/pools/StabilityPool/StabilityPool__factory.d.ts +1 -1
  358. package/dist/types/typechain-types/factories/contracts/core/primitives/ComplianceRegistry.sol/ComplianceRegistry__factory.d.ts +1 -1
  359. package/dist/types/typechain-types/factories/contracts/core/primitives/RAACHousePrices__factory.d.ts +1 -1
  360. package/dist/types/typechain-types/factories/contracts/core/tokens/DEToken__factory.d.ts +16 -1
  361. package/dist/types/typechain-types/factories/contracts/core/tokens/DebtToken__factory.d.ts +1 -1
  362. package/dist/types/typechain-types/factories/contracts/core/tokens/LPToken__factory.d.ts +1 -1
  363. package/dist/types/typechain-types/factories/contracts/core/tokens/LeRAAC.sol/LiquidEscrowedRAAC__factory.d.ts +7 -3
  364. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACNFT__factory.d.ts +79 -58
  365. package/dist/types/typechain-types/factories/contracts/core/tokens/RAACToken__factory.d.ts +21 -252
  366. package/dist/types/typechain-types/factories/contracts/core/tokens/RToken__factory.d.ts +1 -1
  367. package/dist/types/typechain-types/factories/contracts/core/tokens/RWAIndexToken__factory.d.ts +51 -1
  368. package/dist/types/typechain-types/factories/contracts/core/tokens/SToken__factory.d.ts +1153 -0
  369. package/dist/types/typechain-types/factories/contracts/core/tokens/VeRAACToken__factory.d.ts +1 -1
  370. package/dist/types/typechain-types/factories/contracts/core/tokens/index.d.ts +1 -0
  371. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC20VaultAdapter__factory.d.ts +11 -1
  372. package/dist/types/typechain-types/factories/contracts/core/vaults/ERC721VaultAdapter__factory.d.ts +11 -1
  373. package/dist/types/typechain-types/factories/contracts/core/vaults/RAACNFTVaultAdapterOracle.sol/RAACNFTVaultAdapterOracle__factory.d.ts +1 -1
  374. package/dist/types/typechain-types/factories/contracts/core/vaults/RAACNFTVaultAdapterV2__factory.d.ts +11 -1
  375. package/dist/types/typechain-types/factories/contracts/core/vaults/RWAVault__factory.d.ts +35 -1
  376. package/dist/types/typechain-types/factories/contracts/index.d.ts +1 -0
  377. package/dist/types/typechain-types/factories/contracts/interfaces/IZap__factory.d.ts +18 -0
  378. package/dist/types/typechain-types/factories/contracts/interfaces/core/governance/gauges/IBaseGauge__factory.d.ts +0 -20
  379. package/dist/types/typechain-types/factories/contracts/interfaces/core/lockers/IRaacLiquidLocker__factory.d.ts +26 -29
  380. package/dist/types/typechain-types/factories/contracts/interfaces/core/minters/RAACMinter/IRAACMinter__factory.d.ts +44 -230
  381. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IBaseVRFv2Consumer__factory.d.ts +70 -0
  382. package/dist/types/typechain-types/factories/contracts/interfaces/core/oracles/IZKMEVerifyUpgradeable__factory.d.ts +18 -0
  383. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/LendingPool/ILendingPool__factory.d.ts +0 -26
  384. package/dist/types/typechain-types/factories/contracts/interfaces/core/pools/StabilityPool/ILiquidationSwap__factory.d.ts +55 -0
  385. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IDEToken__factory.d.ts +15 -0
  386. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRAACNFT__factory.d.ts +28 -15
  387. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/IRAACToken__factory.d.ts +0 -219
  388. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/ISToken__factory.d.ts +564 -0
  389. package/dist/types/typechain-types/factories/contracts/interfaces/core/tokens/index.d.ts +1 -0
  390. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/IBaseHybridVault__factory.d.ts +10 -0
  391. package/dist/types/typechain-types/factories/contracts/interfaces/core/vaults/IVaultAssetAdapter__factory.d.ts +10 -0
  392. package/dist/types/typechain-types/factories/contracts/interfaces/curve/ICurveCrvUSDVault__factory.d.ts +66 -0
  393. package/dist/types/typechain-types/factories/contracts/libraries/governance/BoostCalculator__factory.d.ts +1 -1
  394. package/dist/types/typechain-types/factories/contracts/libraries/governance/LockManager__factory.d.ts +1 -1
  395. package/dist/types/typechain-types/factories/contracts/libraries/governance/PowerCheckpoint__factory.d.ts +1 -1
  396. package/dist/types/typechain-types/factories/contracts/libraries/governance/RagequitLib__factory.d.ts +1 -1
  397. package/dist/types/typechain-types/factories/contracts/libraries/governance/RewardLib__factory.d.ts +1 -1
  398. package/dist/types/typechain-types/factories/contracts/libraries/math/TimeWeightedAverage__factory.d.ts +1 -1
  399. package/dist/types/typechain-types/factories/contracts/libraries/pools/LendingPoolFeeLibrary__factory.d.ts +1 -1
  400. package/dist/types/typechain-types/factories/contracts/libraries/pools/ReserveLibrary__factory.d.ts +1 -1
  401. package/dist/types/typechain-types/factories/contracts/libraries/utils/StringUtils__factory.d.ts +1 -1
  402. package/dist/types/typechain-types/factories/contracts/mocks/ERC20BurnableMock__factory.d.ts +1 -1
  403. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockTreasury__factory.d.ts +1 -1
  404. package/dist/types/typechain-types/factories/contracts/mocks/core/collectors/MockWETH__factory.d.ts +1 -1
  405. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveCrvUSDVaultMock__factory.d.ts +67 -1
  406. package/dist/types/typechain-types/factories/contracts/mocks/core/curve/CurveLiquidityGaugeV5Mock.sol/CurveLiquidityGaugeV5Mock__factory.d.ts +1 -1
  407. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/gauges/MockGaugeController__factory.d.ts +1 -1
  408. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/libraries/LockManagerMock__factory.d.ts +1 -1
  409. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockPayableTestTarget__factory.d.ts +1 -1
  410. package/dist/types/typechain-types/factories/contracts/mocks/core/governance/proposals/TimelockTestTarget__factory.d.ts +1 -1
  411. package/dist/types/typechain-types/factories/contracts/mocks/core/index.d.ts +1 -0
  412. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/LLamaLocker.sol/LlamaLocker__factory.d.ts +1 -1
  413. package/dist/types/typechain-types/factories/contracts/mocks/core/lockers/MockLamaLocker__factory.d.ts +1 -1
  414. package/dist/types/typechain-types/factories/contracts/mocks/core/minters/MockRAACMinterRewardsReceiver__factory.d.ts +184 -0
  415. package/dist/types/typechain-types/factories/contracts/mocks/core/minters/index.d.ts +1 -0
  416. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockChainlinkAggregator__factory.d.ts +1 -1
  417. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockCurveEMA.sol/MockCurveEMA__factory.d.ts +1 -1
  418. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockERC20PriceOracle__factory.d.ts +1 -1
  419. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockFunctionsRouter.sol/MockFunctionsRouter__factory.d.ts +1 -1
  420. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockOracle__factory.d.ts +1 -1
  421. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockRAACNFTVaultAdapterNAVOracle__factory.d.ts +1 -1
  422. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockVRFCoordinatorV2__factory.d.ts +1 -1
  423. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/MockZKMEVerifyUpgradeable__factory.d.ts +19 -1
  424. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACHousePriceOracle__factory.d.ts +1 -1
  425. package/dist/types/typechain-types/factories/contracts/mocks/core/oracles/TestRAACPrimeRateOracle__factory.d.ts +1 -1
  426. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/CurveStyleCrvUSDiRAACPool__factory.d.ts +1 -1
  427. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolCollector__factory.d.ts +1 -1
  428. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPoolDebtToken__factory.d.ts +1 -27
  429. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLendingPool__factory.d.ts +1 -1
  430. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockLiquidityPool__factory.d.ts +1 -1
  431. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockPool__factory.d.ts +1 -1
  432. package/dist/types/typechain-types/factories/contracts/mocks/core/pools/MockStabilityPool__factory.d.ts +1 -1
  433. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockChainAnalysis.sol/MockChainAnalysis__factory.d.ts +1 -1
  434. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContractWithConfig__factory.d.ts +1 -1
  435. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockContract__factory.d.ts +1 -1
  436. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/MockDistributableContract__factory.d.ts +1 -1
  437. package/dist/types/typechain-types/factories/contracts/mocks/core/primitives/RAACHousePricesMock__factory.d.ts +1 -1
  438. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDTokenLimited__factory.d.ts +1 -1
  439. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/CrvUSDToken__factory.d.ts +1 -1
  440. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC20Mock__factory.d.ts +1 -1
  441. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/ERC721Mock__factory.d.ts +1 -1
  442. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockCollectableUnderlying__factory.d.ts +1 -1
  443. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockFeeCollectorToken__factory.d.ts +1 -1
  444. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockFeeOnTransferToken__factory.d.ts +306 -0
  445. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockToken__factory.d.ts +1 -1
  446. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/MockUSDC__factory.d.ts +1 -1
  447. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/RAACMockERC20__factory.d.ts +1 -1
  448. package/dist/types/typechain-types/factories/contracts/mocks/core/tokens/index.d.ts +1 -0
  449. package/dist/types/typechain-types/factories/contracts/mocks/core/vaults/MockVault__factory.d.ts +1 -1
  450. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockStringUtils__factory.d.ts +1 -1
  451. package/dist/types/typechain-types/factories/contracts/mocks/libraries/MockTimeUtils__factory.d.ts +1 -1
  452. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/BoostCalculatorMock__factory.d.ts +1 -1
  453. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/PowerCheckpointMock__factory.d.ts +1 -1
  454. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RagequitHarness__factory.d.ts +1 -1
  455. package/dist/types/typechain-types/factories/contracts/mocks/libraries/governance/RewardIntegralCalculatorMock.sol/MockRewardIntegralCalculator__factory.d.ts +1 -1
  456. package/dist/types/typechain-types/factories/contracts/mocks/libraries/index.d.ts +1 -0
  457. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/TimeWeightedAverageMock__factory.d.ts +1 -1
  458. package/dist/types/typechain-types/factories/contracts/mocks/libraries/math/WadRayMathMock__factory.d.ts +1 -1
  459. package/dist/types/typechain-types/factories/contracts/mocks/libraries/minters/EmissionScheduleMock__factory.d.ts +115 -0
  460. package/dist/types/typechain-types/factories/contracts/mocks/libraries/minters/index.d.ts +1 -0
  461. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMockCalculation__factory.d.ts +1 -1
  462. package/dist/types/typechain-types/factories/contracts/mocks/libraries/pools/ReserveLibraryMock__factory.d.ts +1 -1
  463. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousDeposit__factory.d.ts +1 -1
  464. package/dist/types/typechain-types/factories/contracts/mocks/tests/MaliciousWithdraw__factory.d.ts +1 -1
  465. package/dist/types/typechain-types/factories/contracts/mocks/tests/VeRAACFuzzHelper__factory.d.ts +1 -1
  466. package/dist/types/typechain-types/factories/contracts/rwaf/ChainlinkOracleAdapter.sol/ChainlinkOracleAdapter__factory.d.ts +295 -0
  467. package/dist/types/typechain-types/factories/contracts/rwaf/ChainlinkOracleAdapter.sol/IRWACoordinator__factory.d.ts +43 -0
  468. package/dist/types/typechain-types/factories/contracts/rwaf/ChainlinkOracleAdapter.sol/index.d.ts +2 -0
  469. package/dist/types/typechain-types/factories/contracts/rwaf/TokenBlender.sol/ITokenBlender__factory.d.ts +409 -0
  470. package/dist/types/typechain-types/factories/contracts/rwaf/TokenBlender.sol/TokenBlender__factory.d.ts +990 -0
  471. package/dist/types/typechain-types/factories/contracts/rwaf/TokenBlender.sol/index.d.ts +2 -0
  472. package/dist/types/typechain-types/factories/contracts/rwaf/index.d.ts +2 -0
  473. package/dist/types/typechain-types/factories/contracts/zap/AladdinZap__factory.d.ts +19 -1
  474. package/dist/types/typechain-types/factories/contracts/zap/index.d.ts +0 -2
  475. package/dist/types/typechain-types/factories/contracts/zeno/AuctionFactory__factory.d.ts +1 -1
  476. package/dist/types/typechain-types/factories/contracts/zeno/Auction__factory.d.ts +1 -1
  477. package/dist/types/typechain-types/factories/contracts/zeno/ZENOFactory__factory.d.ts +1 -1
  478. package/dist/types/typechain-types/factories/contracts/zeno/ZENO__factory.d.ts +1 -1
  479. package/dist/types/typechain-types/index.d.ts +34 -8
  480. package/dist/types/utils/artifacts.d.ts +616 -95
  481. package/dist/utils/artifacts.js +16 -0
  482. package/dist/utils/contracts.js +1 -1
  483. package/package.json +1 -1
  484. package/dist/types/typechain-types/@openzeppelin/contracts-v3/access/index.d.ts +0 -1
  485. package/dist/types/typechain-types/@openzeppelin/contracts-v3/index.d.ts +0 -4
  486. package/dist/types/typechain-types/@openzeppelin/contracts-v3/token/ERC20/index.d.ts +0 -1
  487. package/dist/types/typechain-types/contracts/zap/AladdinCRVZap.d.ts +0 -83
  488. package/dist/types/typechain-types/contracts/zap/AladdinConvexVaultZap.d.ts +0 -172
  489. package/dist/types/typechain-types/factories/@openzeppelin/contracts-v3/access/index.d.ts +0 -1
  490. package/dist/types/typechain-types/factories/@openzeppelin/contracts-v3/index.d.ts +0 -2
  491. package/dist/types/typechain-types/factories/@openzeppelin/contracts-v3/token/ERC20/index.d.ts +0 -1
  492. package/dist/types/typechain-types/factories/contracts/zap/AladdinCRVZap__factory.d.ts +0 -107
  493. package/dist/types/typechain-types/factories/contracts/zap/AladdinConvexVaultZap__factory.d.ts +0 -208
  494. /package/dist/types/typechain-types/@openzeppelin/{contracts-v3 → contracts-upgradeable}/token/index.d.ts +0 -0
  495. /package/dist/types/typechain-types/factories/@openzeppelin/{contracts-v3 → contracts-upgradeable}/token/index.d.ts +0 -0
@@ -14,7 +14,7 @@ export declare class BoostCalculator__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): BoostCalculator__factory;
17
- static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220621f1ee36023b1fb34ca4ca94dd34f958e8b30510a2dd09c971b13a792d0d7f064736f6c634300081e0033";
17
+ static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220ff7fdf4e39101f3a4ceee2b0f5d478519311263763b94112677670e9270a17aa64736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "InvalidBoostBounds";
@@ -14,7 +14,7 @@ export declare class LockManager__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): LockManager__factory;
17
- static readonly bytecode = "0x60808060405234601b57612f2b90816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c90816304361f6a1461011257816305c688281461010957816311bab5e7146101045781631a6e6bdf146100fb578163318d02a9146100f25781633f0d4b22146100ed57816341ce9a1a146100e457816344a6ebe5146100df57816352ad4d9b146100da57816377861e7c146100d15781639c8fe60d146100c7575063eedb1fb0146100c2575f80fd5b610bd3565b15610aae575b5f80fd5b15610905575f80fd5b6108bb565b61089f565b156106c8575f80fd5b6106ac565b1561051c575f80fd5b1561043d575f80fd5b6103e5565b156101e2575f80fd5b610175565b64ffffffffff1690565b6064359064ffffffffff821682036100cd57565b6044359064ffffffffff821682036100cd57565b60c435906001600160a01b03821682036100cd57565b602435906001600160a01b03821682036100cd57565b60e03660031901126100cd5760043560243580600f0b81036100cd576044359161019d610121565b60843564ffffffffff811681036100cd5760a4359164ffffffffff831683036100cd576020956101d5956101cf610149565b956113fd565b505060405190600f0b8152f35b60403660031901126100cd576004356101f961015f565b6001600160a01b03165f90815260049190910160205260408120816002820154156103ac5781549164ffffffffff421690600181019161023d835463ffffffff1690565b9063ffffffff8216905b8682106102d65750505b8463ffffffff821610806102a5575b156102735761026e90610c29565b610251565b825463ffffffff191663ffffffff90911617825584836040805191825261ffff909216602082015290819081015b0390f35b506102d06102c46102b68385610bfb565b50546001600160701b031690565b6001600160701b031690565b15610260565b9096946102e68885989498610bfb565b50805491906102fd6001600160701b0384166102c4565b92831561037c5784906103199060701c64ffffffffff16610117565b116103705780546001600160701b031916905561033f9161033991610c4e565b95610c5b565b9663ffffffff8716811461035c575b6001905b0190959195610247565b95610368600191610c29565b96905061034e565b50959760019150610352565b50509597905063ffffffff87168114610398575b600190610352565b956103a4600191610c29565b969050610390565b6343b976c160e01b5f5260045ffd5b60609060031901126100cd57600435906024356001600160a01b03811681036100cd579060443590565b60206103f96103f3366103bb565b91610d05565b604051908152f35b60809060031901126100cd57600435906024356001600160a01b03811681036100cd57906044359060643564ffffffffff811681036100cd5790565b61044636610401565b9291811561050d576001600160a01b0381165f90815260048401602052604090206002906104b861048061047a8884611502565b83610bfb565b5061049e6001600160701b0387166001600160701b03835416610e7a565b6001600160701b03166001600160701b0319825416179055565b01805490838201809211610508575560018301918254818101809111610508576104f193556104e985828487611751565b959094611ae2565b60408051600f92830b81529290910b602083015290f35b610c15565b63162908e360e11b5f5260045ffd5b61052536610401565b90809392931561050d5764ffffffffff8216801590811561068d575b5061067e576106496102a1926105946105ab61011764ffffffffff4216936105a589546105a061059a61058a61057f8464ffffffffff9060281c1690565b9364ffffffffff1690565b8098818095610ce6565b95610ce6565b88610eb5565b611c14565b94610eb5565b64ffffffffff83161115610675576105c291610ed1565b9485925b6001600160a01b0382165f90815260048701602052604090206002906106166105f261047a8884611cbe565b5061049e6001600160701b03861661061183546001600160701b031690565b610e7a565b01610622828254610c4e565b905560018601610633828254610c4e565b905561064184828489611751565b979096611ae2565b6040519384938491604091949364ffffffffff916060850196600f0b8552600f0b602085015216910152565b509485926105c6565b63d5b25b6360e01b5f5260045ffd5b90506106a5610117855464ffffffffff9060281c1690565b105f610541565b5f3660031901126100cd57602060405160016001607f1b038152f35b60803660031901126100cd576004356106df61015f565b906106e8610135565b916106f1610121565b9164ffffffffff841693841561067e576001600160a01b0383165f90815260048301602052604090206107248282611502565b9561075361074261073b6102c46102b68b87610bfb565b9884610bfb565b5080546001600160701b0319169055565b861561050d5761079664ffffffffff4216966107a261079c875461078d6107828264ffffffffff9060281c1690565b9164ffffffffff1690565b94858092610ce6565b93610ce6565b86610eb5565b6107b96101176107b2848c610eb5565b938b610eb5565b64ffffffffff8216111561089657506107d56107db9282610eed565b90610ed1565b955b64ffffffffff871680831492831561088b575b508215610880575b5050610871576102a193868681956108206105f28661081a8561083f99611cbe565b90610bfb565b61083a846108318489878487611dc3565b9990988461230c565b611ae2565b60405194859485926060929594919564ffffffffff60808601971685526020850152600f0b6040840152600f0b910152565b631196666760e11b5f5260045ffd5b111590505f806107f8565b82101592505f6107f0565b915050956107dd565b60403660031901126100cd5760206103f9602435600435610f07565b60403660031901126100cd5760043564ffffffffff811681036100cd576024359064ffffffffff821682036100cd576020916108f691611c14565b64ffffffffff60405191168152f35b60403660031901126100cd5760043561091c61015f565b6001600160a01b0381165f908152600483016020526040812060018101805492948594936109549063ffffffff165b63ffffffff1690565b8354905b818110610a6257505084156103ac576001810180548611610a5a5761097e868254610cb6565b90555b5f6002840155610992858583612597565b9490938054926109a961094b865463ffffffff1690565b8481106109fb57855463ffffffff191663ffffffff861617865589896102a18a8a604051948594859263ffffffff6060939695929660808601978652166020850152600f0b6040840152600f0b910152565b80610a0e6102c46102b660019487610bfb565b85610a2b610a1c8488610bfb565b505460701c64ffffffffff1690565b9180610a48575b505050610a426107428286610bfb565b016109a9565b610a52928661230c565b5f8581610a32565b5f9055610981565b610a726102c46102b68388610bfb565b610a7f575b600101610958565b9596610aa6610a8f600192610c29565b98610aa06102c46102b68b8a610bfb565b90610c4e565b969050610a77565b60603660031901126100cd57600435610ac561015f565b90610ace610135565b6001600160a01b0383165f908152600483016020526040902090610af28183611502565b93610b036102c46102b68786610bfb565b94851561050d57610b2e92610b1c610742889387610bfb565b610b2881838589612881565b8561230c565b610b4261094b600183015463ffffffff1690565b8154811015610bc85780610b5e6102c46102b660019486610bfb565b610b6b610a1c8386610bfb565b81151580610bb1575b610b81575b505001610b42565b610ba0610ba891600a88019064ffffffffff165f5260205260405f2090565b918254610c4e565b90555f80610b79565b5064ffffffffff421664ffffffffff821611610b74565b604051848152602090f35b60206103f9610be1366103bb565b9161101b565b634e487b7160e01b5f52603260045260245ffd5b8054821015610c10575f5260205f2001905f90565b610be7565b634e487b7160e01b5f52601160045260245ffd5b63ffffffff1663ffffffff81146105085760010190565b906001820180921161050857565b9190820180921161050857565b61ffff1661ffff81146105085760010190565b805415610c10575f5260205f20905f90565b8054821015610c10575f5260205f209060021b01905f90565b5f1981019190821161050857565b60011981019190821161050857565b9190820391821161050857565b634e487b7160e01b5f52601260045260245ffd5b8115610ce1570490565b610cc3565b9064ffffffffff8091169116029064ffffffffff821691820361050857565b6001600160a01b0382165f90815260038201602052604090208054908115610e71578464ffffffffff610d496002610d3c85610c6e565b50015464ffffffffff1690565b1611610e715790610d5a5f91610c99565b915b828210610e2257610d6d9250610c80565b5090610d81600283015464ffffffffff1690565b8464ffffffffff821614610e0057610de194610db38354610dad6107828264ffffffffff9060281c1690565b90610ce6565b9364ffffffffff610dd9610dc88354600f0b90565b926003600182015491015490610cb6565b9216936113fd565b50505f81600f0b135f14610dfb576001600160801b031690565b505f90565b505054610e1f9250610e139150600f0b81565b6001600160801b031690565b90565b90610e3e610e38610e338584610c4e565b610c40565b60011c90565b9086610e526101176002610d3c8688610c80565b11610e615750915b9190610d5c565b9250610e6c90610c99565b610e5a565b50505050505f90565b906001600160701b03809116911601906001600160701b03821161050857565b64ffffffffff6107089116019064ffffffffff821161050857565b9064ffffffffff8091169116019064ffffffffff821161050857565b9064ffffffffff8091169116039064ffffffffff821161050857565b9064ffffffffff16908115610ce15764ffffffffff160690565b600281018054908115611000578364ffffffffff610f296002610d3c85610c6e565b16116110005790610f3a5f91610c99565b915b828210610fbc57610f4d9250610c80565b5090610f61600283015464ffffffffff1690565b8364ffffffffff821614610faa57610de193610f8d8354610dad6107828264ffffffffff9060281c1690565b9364ffffffffff610fa2610dc88354600f0b90565b921693611253565b505054610e1f9150610e1390600f0b81565b90610fcd610e38610e338584610c4e565b9085610fe16101176002610d3c8688610c80565b11610ff05750915b9190610f3c565b9250610ffb90610c99565b610fe9565b505050505f90565b8181029291811591840414171561050857565b43831161121e576001600160a01b0382165f9081526003820160205260409020908154918215610e715784611067610117600261105785610c6e565b50015460281c64ffffffffff1690565b11610e71575f61107684610c99565b8082106111dd57506110888183610c80565b509560028701546110a46101178264ffffffffff9060281c1690565b8281146111c4576005860154610de1999392919080156111bb57925b818111156111aa576110d59161078291610cb6565b9464ffffffffff8616948542115f146111a057806110fc6110f68842610cb6565b9a610c99565b1161116c575b50509061110e91611008565b94808611611164575b5061115e6101176111388654610dad6107828264ffffffffff9060281c1690565b966111586111478554600f0b90565b946003600182015491015490610cb6565b94610c4e565b936113fd565b94505f611117565b61110e93929850866111926002610d3c6111979561118c61011796610c40565b90610c80565b610ed1565b9690915f611102565b806110fc5f6110f6565b50506110d55f9164ffffffffff1690565b50600c926110c0565b5050505050505050610e13610e13610e1f9254600f0b90565b906111ee610e38610e338484610c4e565b908761120261011760026110578689610c80565b1161120e575090611076565b915061121990610c99565b611076565b5050505f90565b600f91820b910b03906f7fffffffffffffffffffffffffffffff19821260016001607f1b0383131761050857565b9390919495929564ffffffffff5f91169081156113ee5786156113df5761127d8895979895611bdd565b97935b64ffffffffff891664ffffffffff8516811161131d576112b5846112b06112aa6101178b8f610ed1565b89611008565b610cd7565b9160016001607f1b03831161130e576112e264ffffffffff916001600160801b038d9516600f0b90611225565b9716036112fb575b6112f49098610e9a565b9794611280565b61130791945f88612899565b92876112ea565b63dbdeca0f60e01b5f5260045ffd5b5094939750959450905f84600f0b126113d6575b64ffffffffff811664ffffffffff8416146113bb5761135961011761135f946112b093610ed1565b87611008565b9060016001607f1b03821161130e576001600160801b036113849216600f0b90611225565b5f81600f0b126113b3575b83156113ac575b5f81600f0b125f146113a857505f9290565b9290565b505f611396565b91508161138f565b50505083156113ac575f81600f0b125f146113a857505f9290565b94508294611331565b505f9650869550859450505050565b63339bfa2360e11b5f5260045ffd5b94969390929695919564ffffffffff5f91169081156113ee5787156114f2576114298996989996611bdd565b98945b64ffffffffff8a1664ffffffffff851681116114b65761145d846112b06114576101178f8d90610ed1565b8a611008565b9160016001607f1b03831161130e5761148a64ffffffffff916001600160801b038e9516600f0b90611225565b9816036114a3575b61149c9099610e9a565b989561142c565b6114af91958589612899565b9388611492565b509594985096955091505f84600f0b126113d65764ffffffffff811664ffffffffff8416146113bb5761135961011761135f946112b093610ed1565b505f975087965086955050505050565b63ffffffff600182015416918154925b8381106115285763965307a760e01b5f5260045ffd5b64ffffffffff6115388285610bfb565b505460701c1664ffffffffff83161480611560575b61155957600101611512565b9250505090565b506001600160701b03806115748386610bfb565b50541616151561154d565b634e487b7160e01b5f52604160045260245ffd5b60a0810190811067ffffffffffffffff8211176115af57604052565b61157f565b90601f8019910116810190811067ffffffffffffffff8211176115af57604052565b604051906115e560a0836115b4565b565b604051906115e56040836115b4565b6040519061160382611593565b5f6080838281528260208201528260408201528260608201520152565b9060405161162d81611593565b6080600382948054600f0b84526001810154602085015264ffffffffff6002820154818116604087015260281c1660608501520154910152565b90600f0b90600f0b019060016001607f1b0319821260016001607f1b0383131761050857565b634e487b7160e01b5f525f60045260245ffd5b8054600160401b8110156115af576116bd91600182018155610c80565b91909161174c57608081600392516001600160801b0319855416906001600160801b0316178455602081015160018501556117456002850164ffffffffff60408401511664ffffffffff19825416178155611720606084015164ffffffffff1690565b69ffffffffff000000000082549160281b169069ffffffffff00000000001916179055565b0151910155565b61168d565b9193929061178264ffffffffff42169261177b8554610dad6107828264ffffffffff9060281c1690565b96856129b9565b92839261178d6115f6565b5060038201926117ad81859060018060a01b03165f5260205260405f2090565b548015611a47576001600160a01b0382165f9081526020869052604090206117e3916117dd9161118c9091610c99565b50611620565b915b6080830180516117f6908487612cf4565b906117ff6115f6565b64ffffffffff8416604082015296879164ffffffffff4316606084018190529686908e9087908051600f0b946020820151905161183b91610cb6565b60409091015164ffffffffff1690611853958d6113fd565b6001600160a01b0388165f90815260048b0160205260409020909791959192908c9060020154602087015261188791611667565b600f0b845260808401526001600160a01b03165f90815260209190915260409020906118b2916116a0565b6002850180549093908015611a16576117dd6118d06118d692610c99565b86610c80565b9a5b60808c019081516118e99089612bfc565b946118f26115f6565b64ffffffffff821660408201529d8e9864ffffffffff1660608a01528051600f0b936020820151905161192491610cb6565b60409091015164ffffffffff169061193c948b611253565b91976001915001546020870152145f14976119b4976119ad96610e1f9a611a0457505061197461196d8851600f0b90565b600f0b8652565b5f82600f0b1290816119e8575b506119c4575b505f61199d6119978551600f0b90565b600f0b90565b126119bc575b60808301526116a0565b51600f0b90565b9251600f0b90565b5f83526119a3565b6119db6119e2916119d68651600f0b90565b611225565b600f0b8452565b5f611987565b90506119f58551600f0b90565b90600f0b90600f0b135f611981565b611a119161196d91611667565b611974565b50611a1f6115d6565b5f808252602082015264ffffffffff841660408201525f60608201525f60808201529a6118d8565b50611a506115d6565b5f808252602082015264ffffffffff831660408201525f60608201525f6080820152916117e5565b9190918054831015610c10575f526005600660205f208185040193060290565b9055565b8054600160401b8110156115af57611ac381611a9893600164ffffffffff94018155611a78565b919093169083549064ffffffffff809160031b9316831b921b19161790565b9192831561050d5781611b14611b6c9260068601611b2884611b1484849060018060a01b03165f5260205260405f2090565b9064ffffffffff165f5260205260405f2090565b5415611bb4575b600887019684611b4e818a9064ffffffffff165f5260205260405f2090565b5415611ba1575b50509060018060a01b03165f5260205260405f2090565b91825484810180911161050857611b9293559064ffffffffff165f5260205260405f2090565b80549182018092116105085755565b6009611bad9201611a9c565b5f84611b55565b6001600160a01b0382165f9081526007880160205260409020611bd8908590611a9c565b611b2f565b64ffffffffff610e1f911664ffffffffff610708611bfd81808504610ce6565b920616611c0b575f90610eb5565b61070890610eb5565b64ffffffffff8216918215610ce15764ffffffffff611c4482611c3e81610e1f9785881604610ce6565b94610eed565b16611c5157505f90610eb5565b90610eb5565b8054600160401b8110156115af57611c7491600182018155610bfb565b91909161174c578051825460209092015164ffffffffff60701b60709190911b1672ffffffffffffffffffffffffffffffffffffff199092166001600160701b0390911617179055565b805480151580611d9c575b80611d76575b611d6a57611ce761094b600184015463ffffffff1690565b818110611d21575050611d1b610e1f92611d15611d026115e7565b5f815264ffffffffff9092166020830152565b82611c57565b54610c99565b611d2e610a1c8285610bfb565b64ffffffffff80861691161480611d4c575b61155957600101611ce7565b506001600160701b03611d626102b68386610bfb565b161515611d40565b9050610e1f9150610c99565b506001600160701b03611d946102b6611d8e84610c99565b85610bfb565b161515611ccf565b50611db2610a1c611dac83610c99565b84610bfb565b64ffffffffff808516911614611cc9565b929493919464ffffffffff4216611dea8554610dad6107828264ffffffffff9060281c1690565b965f945f938364ffffffffff8216116120ce575b508264ffffffffff821611612075575b50506003850190611e2f84839060018060a01b03165f5260205260405f2090565b549081156120675786898793611e5588879060018060a01b03165f5260205260405f2090565b90611e5f90610c99565b611e6891610c80565b50611e7290611620565b94876080870188828251611e87908289612cf4565b92611e906115f6565b64ffffffffff8a1660408201529c8d9764ffffffffff431660608a018190529c8b908051600f0b9460208201519051611ec891610cb6565b60409091015164ffffffffff1690611ee0958d6113fd565b6001600160a01b039093165f9081526004909901602052604090982091999091600201546020880152611f1291611225565b90611f1c91611667565b600f0b845260808401526001600160a01b03165f9081526020919091526040902090611f47916116a0565b60028801928354801561206757611f5e8a91610c99565b611f689086610c80565b50611f7290611620565b9b60808d01948551611f849084612bfc565b95611f8d6115f6565b64ffffffffff831660408201529e8f9964ffffffffff1660608b01528051600f0b9160208201519051611fbf91610cb6565b60409091015164ffffffffff1691611fd695611253565b919a6001915001546020870152145f14976119b4976119ad96610e1f9a61204d5750505061200f6120088751600f0b90565b600f0b8552565b5f81600f0b128061202f575b6119c457505f61199d6119978551600f0b90565b508351600f0b6120436119978851600f0b90565b90600f0b1361201b565b61205d6120089261206294611225565b611667565b61200f565b62dc341f60e01b5f5260045ffd5b8293506120886120ae936112b092610ed1565b9164ffffffffff8a16928364ffffffffff8216116120c7575b64ffffffffff1690611008565b60016001607f1b03811161130e57600f0b905f80611e0e565b50896120a1565b612107919650836120de91610ed1565b64ffffffffff8a16908164ffffffffff82161161211f575b64ffffffffff6112b0911684611008565b60016001607f1b03811161130e57600f0b945f611dfe565b50896120f6565b6040518154808252909291839061214460208301915f5260205f2090565b925f905b80600583011061222b576115e5945491818110612213575b8181106121f7575b8181106121db575b8181106121bf575b8181106121a3575b1061218e575b5003836115b4565b60c81c64ffffffffff1681526020015f612186565b60a083901c64ffffffffff168452926001906020019301612180565b607883901c64ffffffffff168452926001906020019301612178565b605083901c64ffffffffff168452926001906020019301612170565b602883901c64ffffffffff168452926001906020019301612168565b64ffffffffff83168452926001906020019301612160565b91600691935060c06001916122a787546122528364ffffffffff831664ffffffffff169052565b602881901c64ffffffffff166020840152605081901c64ffffffffff166040840152607881901c64ffffffffff16606084015260a081901c64ffffffffff16608084015260c81c64ffffffffff1660a0830152565b019401920185929391612148565b8051821015610c105760209160051b010190565b805480156122f8575f1901906122df8282611a78565b815464ffffffffff60039290921b9190911b1916905555565b634e487b7160e01b5f52603160045260245ffd5b92919091811561050d57600884019161233484849064ffffffffff165f5260205260405f2090565b54906006860161235886611b1486849060018060a01b03165f5260205260405f2090565b548683868184111561257557612374611b149261238a95610cb6565b949060018060a01b03165f5260205260405f2090565b558082111561256d5761239c91610cb6565b6123b584849064ffffffffff165f5260205260405f2090565b5560078401926123dd6123d883869060018060a01b03165f5260205260405f2090565b612126565b925f5b84518110156124c757806124046123f9600193886122b5565b5164ffffffffff1690565b64ffffffffff80861691161461241b575b016123e0565b6124a261245f61244e61243e888b9060018060a01b03165f5260205260405f2090565b6124488a51610c99565b90611a78565b905464ffffffffff9160031b1c1690565b6001600160a01b0387165f90815260208a905260409020612481908490611a78565b908054909264ffffffffff60039390931b83811b199092169216901b179055565b6001600160a01b0385165f9081526020889052604090206124c2906122c9565b612415565b50935093905060099150016124db81612126565b915f5b835181101561256657806124f76123f9600193876122b5565b64ffffffffff80881691161480612545575b612514575b016124de565b61253761252d6123f96125278851610c99565b886122b5565b6124818387611a78565b612540846122c9565b61250e565b5061255f86849064ffffffffff165f5260205260405f2090565b5415612509565b5050505050565b50505f61239c565b6001600160a01b03165f908152602094909452506040832061238a9250611b14565b90612642939264ffffffffff4216926125c08154610dad6107828264ffffffffff9060281c1690565b9360038201906126036125e386849060018060a01b03165f5260205260405f2090565b6001600160a01b0387165f90815260208590526040902061118c90611d1b565b509361261460038601548786612cf4565b6126498260016126226115f6565b64ffffffffff87166040820152984364ffffffffff1660608b018190529d565b0154610cb6565b90602087019182525f8752608087015261267c8661267789879060018060a01b03165f5260205260405f2090565b6116a0565b6001600160a01b0387165f90815260048601602052604090206002909151910155600284019081548015612067576117dd6126b96126bf92610c99565b84610c80565b9160808301926126d0845188612bfc565b905f9a5f965f9b5f9960016126f583839060018060a01b03165f5260205260405f2090565b54116127fc575b50506127066115f6565b64ffffffffff821660408201529e8f60600190612729919064ffffffffff169052565b8251600f0b9260208101978851905161274191610cb6565b60409091015164ffffffffff1690612759948c611253565b96919a90508551106127ed57610e1f9a6119b49a6001988f96612780906127bc9951610cb6565b6020880190815298036127db57505061279d6120088a51600f0b90565b5f81600f0b12806127c7576119c457505f61199d6119978551600f0b90565b5191015551600f0b90565b508351600f0b6120436119978b51600f0b90565b6127e89161200891611225565b61279d565b632ca6f13b60e01b5f5260045ffd5b6001600160a01b0382165f908152602091909152604090208054919e50919c509298509096509061282c90610ca7565b61283591610c80565b50809a868b835461284690600f0b90565b93600101549d8e600382015461285b91610cb6565b60029091015464ffffffffff1690612873958d6113fd565b97919690969b9a5f806126fc565b91612895939164ffffffffff421693611dc3565b5050565b919290916001600160a01b0383161580612994575b612913576006016128d382611b1485849060018060a01b03165f5260205260405f2090565b546128de5750505090565b6128fb92611b14919060018060a01b03165f5260205260405f2090565b548181111561290a5750505f90565b610e1f91610cb6565b9150600a61293382600885019064ffffffffff165f5260205260405f2090565b5492019261295a61295383869064ffffffffff165f5260205260405f2090565b5482610c4e565b83111561296957505050505f90565b61298861298f92610e1f959064ffffffffff165f5260205260405f2090565b5490610c4e565b610cb6565b506129b182600883019064ffffffffff165f5260205260405f2090565b5415156128ae565b9064ffffffffff612a099281946129dc8342169254848082169160281c16610ce6565b9180848316115f14612a2c576129f191610ed1565b905b818382169687911611612a24575b501690611008565b8115610ce1570460016001607f1b03811161130e57600f0b90565b90505f612a01565b50505f906129f3565b67ffffffffffffffff81116115af5760051b60200190565b90612a5782612a35565b612a6460405191826115b4565b8281528092612a75601f1991612a35565b0190602036910137565b5f1981146105085760010190565b600160401b82116115af57805490828155818310612aaa57505050565b5f526005600660205f208183818188010483019501040193060280612ae2575b505b818110612ad7575050565b5f8155600101612acc565b5f198201908154905f199060200360031b1c1690555f612aca565b9080519067ffffffffffffffff82116115af576020612b2b91612b208486612a8d565b01925f5260205f2090565b60068204915f5b838110612ba6575060068302900380612b4c575b50505050565b925f935f5b818110612b665750505001555f808080612b46565b9091946020612b9c600192612b80895164ffffffffff1690565b908560050264ffffffffff809160031b9316831b921b19161790565b9601929101612b51565b5f5f5b60068110612bbe575083820155600101612b32565b95906020612bf3600192612bd7855164ffffffffff1690565b908a60050264ffffffffff809160031b9316831b921b19161790565b92019601612ba9565b90915f906009830192612c0e84612126565b90612c198251612a4d565b925f5b8351811015612ce457612c326123f982866122b5565b612c75612c5182600887019064ffffffffff165f5260205260405f2090565b54612c6e83600a88019064ffffffffff165f5260205260405f2090565b5490610cb6565b908115159081612cd1575b50612cbe575080612cb8612c996123f9600194886122b5565b612cac612ca58a612a7f565b99896122b5565b9064ffffffffff169052565b01612c1c565b612ccb9060019299610c4e565b97612cb8565b905064ffffffffff42911611155f612c80565b50949150506115e5928252612afd565b91925f916001600160a01b038116612da857506009830192612d1584612126565b90612d208251612a4d565b925f5b8351811015612ce457612d396123f982866122b5565b612d58612c5182600887019064ffffffffff165f5260205260405f2090565b908115159081612d95575b50612d82575080612d7c612c996123f9600194886122b5565b01612d23565b612d8f9060019299610c4e565b97612d7c565b905064ffffffffff42911611155f612d63565b93916007840193612dcc6123d887879060018060a01b03165f5260205260405f2090565b95612dd78751612a4d565b935f5b8851811015612ecc57612df06123f9828b6122b5565b6001600160a01b0384165f9081526006860160205260409020612e14908290611b14565b5480151580612ebb575b612e5057505080612e4a612e376123f96001948d6122b5565b612cac612e4389612a7f565b988a6122b5565b01612dda565b612e5e81600194939a610c4e565b98600a870182612e7d83839064ffffffffff165f5260205260405f2090565b541015612e8d575b505050612e4a565b612eb191612ea9919064ffffffffff165f5260205260405f2090565b918254610cb6565b90555f8080612e85565b504264ffffffffff83161115612e1e565b509284526001600160a01b03165f9081526020959095525060409093209193506115e591612afd56fea2646970667358221220d7fda7efaabe09858256c4c3f07fe1857fa248315644dead9e2d2f5e3a9ebb4764736f6c634300081e0033";
17
+ static readonly bytecode = "0x60808060405234601b57612bcd90816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c90816304361f6a1461011257816305c688281461010957816311bab5e7146101045781631a6e6bdf146100fb578163318d02a9146100f25781633f0d4b22146100ed57816341ce9a1a146100e457816344a6ebe5146100df57816352ad4d9b146100da57816377861e7c146100d15781639c8fe60d146100c7575063eedb1fb0146100c2575f80fd5b610b18565b15610a0e575b5f80fd5b1561086f575f80fd5b610825565b610809565b15610652575f80fd5b610635565b156104c8575f80fd5b1561040f575f80fd5b6103b7565b156101d8575f80fd5b61016b565b6064359064ffffffffff821682036100cd57565b6044359064ffffffffff821682036100cd57565b60c435906001600160a01b03821682036100cd57565b602435906001600160a01b03821682036100cd57565b60e03660031901126100cd5760043560243580600f0b81036100cd5760443591610193610117565b60843564ffffffffff811681036100cd5760a4359164ffffffffff831683036100cd576020956101cb956101c561013f565b95611376565b505060405190600f0b8152f35b60403660031901126100cd576004356101ef610155565b6101fe5f9160045f9401610b2c565b9060028201541561037e5781549164ffffffffff4216906001810191610228835463ffffffff1690565b9063ffffffff8216905b8682106102a95750505b8463ffffffff82161080610286575b1561025e5761025990610b8f565b61023c565b8361026a879285610c03565b6040805191825261ffff909216602082015290819081015b0390f35b506102a361029e6102978385610b55565b5054610b6f565b610b6f565b1561024b565b9096946102b98885989498610b55565b50908154916102ca61029e84610b6f565b92831561034e576102f06102e6869260701c64ffffffffff1690565b64ffffffffff1690565b11610342579161030b9161030661031194610ba6565b610be3565b95610bf0565b9663ffffffff8716811461032e575b6001905b0190959195610232565b9561033a600191610b8f565b969050610320565b50959760019150610324565b50509597905063ffffffff8716811461036a575b600190610324565b95610376600191610b8f565b969050610362565b6343b976c160e01b5f5260045ffd5b60609060031901126100cd57600435906024356001600160a01b03811681036100cd579060443590565b60206103cb6103c53661038d565b91610cbc565b604051908152f35b60809060031901126100cd57600435906024356001600160a01b03811681036100cd57906044359060643564ffffffffff811681036100cd5790565b610418366103d3565b929181156104b957600261042f8260048601610b2c565b61046461044561043f888461147c565b83610b55565b50805461045e906001600160701b038881169116610e1c565b90610bb6565b018054908382018092116104b45755600183019182548181018091116104b45761049d9355610495858284876116cd565b959094611a39565b60408051600f92830b81529290910b602083015290f35b610b7b565b63162908e360e11b5f5260045ffd5b6104d1366103d3565b9080939293156104b95764ffffffffff8216801590811561061f575b50610610576105db6102829261053761054e6102e664ffffffffff421693610548895461054361053d61052d61052284610c90565b9364ffffffffff1690565b8098818095610c9d565b95610c9d565b88610e51565b611b12565b94610e51565b64ffffffffff831611156106075761056591610e6d565b9485925b60026105788360048901610b2c565b6105a861058861043f8884611bb6565b50805461045e906001600160701b038716906105a390610b6f565b610e1c565b016105b4828254610be3565b9055600186016105c5828254610be3565b90556105d3848284896116cd565b979096611a39565b6040519384938491604091949364ffffffffff916060850196600f0b8552600f0b602085015216910152565b50948592610569565b63d5b25b6360e01b5f5260045ffd5b905061062e6102e68554610c90565b105f6104ed565b5f3660031901126100cd5760405160016001607f1b038152602090f35b60803660031901126100cd57600435610669610155565b9061067261012b565b9161067b610117565b9164ffffffffff8416938415610610576106988360048401610b2c565b6106a2828261147c565b956106c66106c06106b961029e6102978b87610b55565b9884610b55565b50610ba6565b86156104b95761070064ffffffffff42169661070c61070687546106f76106ec82610c90565b9164ffffffffff1690565b94858092610c9d565b93610c9d565b86610e51565b6107236102e661071c848c610e51565b938b610e51565b64ffffffffff82161115610800575061073f6107459282610e89565b90610e6d565b955b64ffffffffff87168083149283156107f5575b5082156107ea575b50506107db57610282938686819561078a61058886610784856107a999611bb6565b90610b55565b6107a48461079b8489878487611cc1565b999098846121cc565b611a39565b60405194859485926060929594919564ffffffffff60808601971685526020850152600f0b6040840152600f0b910152565b631196666760e11b5f5260045ffd5b111590505f80610762565b82101592505f61075a565b91505095610747565b60403660031901126100cd5760206103cb602435600435610ea3565b60403660031901126100cd5760043564ffffffffff811681036100cd576024359064ffffffffff821682036100cd5760209161086091611b12565b64ffffffffff60405191168152f35b60403660031901126100cd57600435610886610155565b5f905f926108978260048301610b2c565b9060018201906108b76108ae835463ffffffff1690565b63ffffffff1690565b8354905b8181106109c2575050841561037e5760018101805486116109ba576108e1868254610c60565b90555b5f60028401556108f58585836123a1565b94909380549261090c6108ae865463ffffffff1690565b84811061095b5789896102828a8a61092a63ffffffff8b168c610c03565b604051948594859263ffffffff6060939695929660808601978652166020850152600f0b6040840152600f0b910152565b8061096e61029e61029760019487610b55565b8561098b61097c8488610b55565b505460701c64ffffffffff1690565b91806109a8575b5050506109a26106c08286610b55565b0161090c565b6109b292866121cc565b5f8581610992565b5f90556108e4565b6109d261029e6102978388610b55565b6109df575b6001016108bb565b9596610a066109ef600192610b8f565b98610a0061029e6102978b8a610b55565b90610be3565b9690506109d7565b60603660031901126100cd57600435610a25610155565b90610a2e61012b565b610a3b8360048401610b2c565b90610a46818361147c565b93610a5761029e6102978786610b55565b9485156104b957610a8292610a706106c0889387610b55565b610a7c81838589612626565b856121cc565b610a966108ae600183015463ffffffff1690565b8154811015610b0d5780610ab261029e61029760019486610b55565b610abf61097c8386610b55565b81151580610af6575b610ad5575b505001610a96565b610ae5610aed91600a8801610f9b565b918254610be3565b90555f80610acd565b5064ffffffffff421664ffffffffff821611610ac8565b604051848152602090f35b60206103cb610b263661038d565b91610fc2565b9060018060a01b03165f5260205260405f2090565b634e487b7160e01b5f52603260045260245ffd5b8054821015610b6a575f5260205f2001905f90565b610b41565b6001600160701b031690565b634e487b7160e01b5f52601160045260245ffd5b63ffffffff1663ffffffff81146104b45760010190565b80546001600160701b0319169055565b80546001600160701b0319166001600160701b03909216919091179055565b90600182018092116104b457565b919082018092116104b457565b61ffff1661ffff81146104b45760010190565b9063ffffffff1663ffffffff19825416179055565b805415610b6a575f5260205f20905f90565b8054821015610b6a575f5260205f209060021b01905f90565b5f198101919082116104b457565b6001198101919082116104b457565b919082039182116104b457565b634e487b7160e01b5f52601260045260245ffd5b8115610c8b570490565b610c6d565b60281c64ffffffffff1690565b9064ffffffffff8091169116029064ffffffffff82169182036104b457565b610cc98260038301610b2c565b8054908115610e13578464ffffffffff610cf46002610ce785610c18565b50015464ffffffffff1690565b1611610e135790610d055f91610c43565b915b828210610dc457610d189250610c2a565b5090610d2c600283015464ffffffffff1690565b8464ffffffffff821614610da257610d8394610d558354610d4f6106ec82610c90565b90610c9d565b9364ffffffffff610d7b610d6a8354600f0b90565b926003600182015491015490610c60565b921693611376565b50505f81600f0b135f14610d9d576001600160801b031690565b505f90565b505054610dc19250610db59150600f0b81565b6001600160801b031690565b90565b90610de0610dda610dd58584610be3565b610bd5565b60011c90565b9086610df46102e66002610ce78688610c2a565b11610e035750915b9190610d07565b9250610e0e90610c43565b610dfc565b50505050505f90565b6001600160701b0391821690821601919082116104b457565b64ffffffffff62093a809116019064ffffffffff82116104b457565b9064ffffffffff8091169116019064ffffffffff82116104b457565b9064ffffffffff8091169116039064ffffffffff82116104b457565b9064ffffffffff16908115610c8b5764ffffffffff160690565b600281018054908115610f93578364ffffffffff610ec56002610ce785610c18565b1611610f935790610ed65f91610c43565b915b828210610f4f57610ee99250610c2a565b5090610efd600283015464ffffffffff1690565b8364ffffffffff821614610f3d57610d8393610f208354610d4f6106ec82610c90565b9364ffffffffff610f35610d6a8354600f0b90565b9216936111cb565b505054610dc19150610db590600f0b81565b90610f60610dda610dd58584610be3565b9085610f746102e66002610ce78688610c2a565b11610f835750915b9190610ed8565b9250610f8e90610c43565b610f7c565b505050505f90565b9064ffffffffff165f5260205260405f2090565b818102929181159184041417156104b457565b43831161119f57610fd68260038301610b2c565b908154918215610e135784610ffa6102e66002610ff285610c18565b500154610c90565b11610e13575f61100984610c43565b80821061115e575061101b8183610c2a565b5095600287015461102e6102e682610c90565b828114611145576005860154610d839993929190801561113c57925b8181111561112b5761105f916106ec91610c60565b9464ffffffffff8616948542115f1461112157806110866110808842610c60565b9a610c43565b116110ed575b50509061109891610faf565b948086116110e5575b506110df6102e66110b98654610d4f6106ec82610c90565b966110d96110c88554600f0b90565b946003600182015491015490610c60565b94610be3565b93611376565b94505f6110a1565b61109893929850866111136002610ce76111189561110d6102e696610bd5565b90610c2a565b610e6d565b9690915f61108c565b806110865f611080565b505061105f5f9164ffffffffff1690565b50600c9261104a565b5050505050505050610db5610db5610dc19254600f0b90565b9061116f610dda610dd58484610be3565b90876111836102e66002610ff28689610c2a565b1161118f575090611009565b915061119a90610c43565b611009565b5050505f90565b600f91820b910b039060016001607f1b0319821260016001607f1b038313176104b457565b9390919495929564ffffffffff5f9116908115611367578615611358576111f58895979895611ad9565b97935b64ffffffffff891664ffffffffff851681116112965761122d846112286112226102e68b8f610e6d565b89610faf565b610c81565b9160016001607f1b038311611287578a9264ffffffffff9161125b916001600160801b0316600f0b906111a6565b971603611274575b61126d9098610e35565b97946111f8565b61128091945f8861263e565b9287611263565b63dbdeca0f60e01b5f5260045ffd5b5094939750959450905f84600f0b1261134f575b64ffffffffff811664ffffffffff841614611334576112d26102e66112d89461122893610e6d565b87610faf565b9060016001607f1b038211611287576112fd916001600160801b0316600f0b906111a6565b5f81600f0b1261132c575b8315611325575b5f81600f0b125f1461132157505f9290565b9290565b505f61130f565b915081611308565b5050508315611325575f81600f0b125f1461132157505f9290565b945082946112aa565b505f9650869550859450505050565b63339bfa2360e11b5f5260045ffd5b94969390929695919564ffffffffff5f911690811561136757871561146c576113a28996989996611ad9565b98945b64ffffffffff8a1664ffffffffff85168111611430576113d6846112286113d06102e68f8d90610e6d565b8a610faf565b9160016001607f1b038311611287578b9264ffffffffff91611404916001600160801b0316600f0b906111a6565b98160361141d575b6114169099610e35565b98956113a5565b6114299195858961263e565b938861140c565b509594985096955091505f84600f0b1261134f5764ffffffffff811664ffffffffff841614611334576112d26102e66112d89461122893610e6d565b505f975087965086955050505050565b63ffffffff600182015416918154925b8381106114a25763965307a760e01b5f5260045ffd5b64ffffffffff6114b28285610b55565b505460701c1664ffffffffff831614806114da575b6114d35760010161148c565b9250505090565b506114e58184610b55565b50546001600160701b031615156114c7565b634e487b7160e01b5f52604160045260245ffd5b60a081019081106001600160401b0382111761152657604052565b6114f7565b601f909101601f19168101906001600160401b0382119082101761152657604052565b6040519061155d60a08361152b565b565b6040519061155d60408361152b565b6040519061157b8261150b565b5f6080838281528260208201528260408201528260608201520152565b9064ffffffffff169052565b906040516115b18161150b565b6080600382948054600f0b84526001810154602085015264ffffffffff6002820154818116604087015260281c1660608501520154910152565b600f91820b910b019060016001607f1b0319821260016001607f1b038313176104b457565b634e487b7160e01b5f525f60045260245ffd5b8054600160401b8110156115265761164091600182018155610c2a565b9190916116c85760808160039251600180841b031985541690600180851b0316178455602081015160018501556116c16002850164ffffffffff60408401511664ffffffffff1982541617815561169f606084015164ffffffffff1690565b815464ffffffffff60281b191660289190911b64ffffffffff60281b16179055565b0151910155565b611610565b919392906116f564ffffffffff4216926116ee8554610d4f6106ec82610c90565b9685612702565b92839261170061156e565b5060038201926117108185610b2c565b548015611984576117316117379161110d61172b8589610b2c565b91610c43565b506115a4565b915b60808301805161174a9084876129f4565b9061175361156e565b9687916117638560408501611598565b858d864364ffffffffff16998a606088019061177e91611598565b8051600f0b946020820151905161179491610c60565b60409091015164ffffffffff16906117ac958d611376565b96909490918b6117bf8460048d01610b2c565b6002015460208701526117d1916115eb565b600f0b845260808401526117e491610b2c565b906117ee91611623565b60028501805490939080156119535761173161180c61181292610c43565b86610c2a565b9a5b60808c019081516118259089612921565b9461182e61156e565b9d8e9861183e8360408c01611598565b61184b9060608b01611598565b8051600f0b936020820151905161186191610c60565b60409091015164ffffffffff1690611879948b6111cb565b91976001915001546020870152145f14976118f1976118ea96610dc19a6119415750506118b16118aa8851600f0b90565b600f0b8652565b5f82600f0b129081611925575b50611901575b505f6118da6118d48551600f0b90565b600f0b90565b126118f9575b6080830152611623565b51600f0b90565b9251600f0b90565b5f83526118e0565b61191861191f916119138651600f0b90565b6111a6565b600f0b8452565b5f6118c4565b90506119328551600f0b90565b90600f0b90600f0b135f6118be565b61194e916118aa916115eb565b6118b1565b5061195c61154e565b5f81525f60208201526119728460408301611598565b5f60608201525f60808201529a611814565b5061198d61154e565b5f81525f60208201526119a38360408301611598565b5f60608201525f608082015291611739565b9190918054831015610b6a575f526005600660205f208185040193060290565b9064ffffffffff809160031b9316831b921b19161790565b919064ffffffffff611a0292169083546119d5565b9055565b8054600160401b81101561152657611a2d81611a0293600164ffffffffff940181556119b5565b919093169083546119d5565b919283156104b95781611a5b611a859260068601611a6084611a5b8484610b2c565b610f9b565b5415611abe575b600887019684611a77818a610f9b565b5415611aab575b5050610b2c565b9182548481018091116104b457611a9c9355610f9b565b80549182018092116104b45755565b6009611ab79201611a06565b5f84611a7e565b611ad484611acf8460078b01610b2c565b611a06565b611a67565b64ffffffffff610dc1911664ffffffffff62093a80611afa81808504610c9d565b920616611b08575f90610e51565b62093a8090610e51565b64ffffffffff8216918215610c8b5764ffffffffff611b4282611b3c81610dc19785881604610c9d565b94610e89565b16611b4f57505f90610e51565b90610e51565b8054600160401b81101561152657611b7291600182018155610b55565b9190916116c857805160209190611b92906001600160701b031684610bb6565b0151815464ffffffffff60701b191660709190911b64ffffffffff60701b16179055565b805480151580611c9a575b80611c71575b611c6557611bdf6108ae600184015463ffffffff1690565b818110611c13575050611c0d610dc192611c07611bfa61155f565b915f835260208301611598565b82611b55565b54610c43565b611c2061097c8285610b55565b64ffffffffff80861691161480611c3e575b6114d357600101611bdf565b50611c498184610b55565b50546001600160701b0390611c5d90610b6f565b161515611c32565b9050610dc19150610c43565b50611c7e61043f82610c43565b50546001600160701b0390611c9290610b6f565b161515611bc7565b50611cb061097c611caa83610c43565b84610b55565b64ffffffffff808516911614611bc1565b929493919464ffffffffff4216611cdf8554610d4f6106ec82610c90565b965f945f938364ffffffffff821611611f8e575b508264ffffffffff821611611f35575b50506003850190611d148483610b2c565b54908115611f275786898793611d2a8887610b2c565b90611d3490610c43565b611d3d91610c2a565b50611d47906115a4565b94876080870188828251611d5c9082896129f4565b92611d6561156e565b9c8d97611d758b60408b01611598565b64ffffffffff43169c8b90611d8d8f60608d01611598565b8051600f0b9460208201519051611da391610c60565b60409091015164ffffffffff1690611dbb958d611376565b9a9192909860040190611dcd91610b2c565b600201546020880152611ddf916111a6565b90611de9916115eb565b600f0b84526080840152611dfc91610b2c565b90611e0691611623565b600288019283548015611f2757611e1d8a91610c43565b611e279086610c2a565b50611e31906115a4565b9b60808d01948551611e439084612921565b95611e4c61156e565b9e8f99611e5c8460408d01611598565b611e699060608c01611598565b8051600f0b9160208201519051611e7f91610c60565b60409091015164ffffffffff1691611e96956111cb565b919a6001915001546020870152145f14976118f1976118ea96610dc19a611f0d57505050611ecf611ec88751600f0b90565b600f0b8552565b5f81600f0b1280611eef575b61190157505f6118da6118d48551600f0b90565b508351600f0b611f036118d48851600f0b90565b90600f0b13611edb565b611f1d611ec892611f22946111a6565b6115eb565b611ecf565b62dc341f60e01b5f5260045ffd5b829350611f48611f6e9361122892610e6d565b9164ffffffffff8a16928364ffffffffff821611611f87575b64ffffffffff1690610faf565b60016001607f1b03811161128757600f0b905f80611d03565b5089611f61565b611fc791965083611f9e91610e6d565b64ffffffffff8a16908164ffffffffff821611611fdf575b64ffffffffff611228911684610faf565b60016001607f1b03811161128757600f0b945f611cf3565b5089611fb6565b6040518154808252909291839061200460208301915f5260205f2090565b925f905b8060058301106120eb5761155d9454918181106120d3575b8181106120b7575b81811061209b575b81811061207f575b818110612063575b1061204e575b50038361152b565b60c81c64ffffffffff1681526020015f612046565b60a083901c64ffffffffff168452926001906020019301612040565b607883901c64ffffffffff168452926001906020019301612038565b605083901c64ffffffffff168452926001906020019301612030565b602883901c64ffffffffff168452926001906020019301612028565b64ffffffffff83168452926001906020019301612020565b91600691935060c060019161216787546121128364ffffffffff831664ffffffffff169052565b602881901c64ffffffffff166020840152605081901c64ffffffffff166040840152607881901c64ffffffffff16606084015260a081901c64ffffffffff16608084015260c81c64ffffffffff1660a0830152565b019401920185929391612008565b8051821015610b6a5760209160051b010190565b805480156121b8575f19019061219f82826119b5565b815464ffffffffff60039290921b9190911b1916905555565b634e487b7160e01b5f52603160045260245ffd5b9291909181156104b95760088401916121e58484610f9b565b5490600686016121f986611a5b8684610b2c565b548683868184111561239057612215611a5b9261221b95610c60565b94610b2c565b55808211156123885761222d91610c60565b6122378484610f9b565b55600784019261224f61224a8386610b2c565b611fe6565b925f5b84518110156122f1578061227661226b60019388612175565b5164ffffffffff1690565b64ffffffffff80861691161461228d575b01612252565b6122da6122c16122b06122a0888b610b2c565b6122aa8a51610c43565b906119b5565b905464ffffffffff9160031b1c1690565b6122d4836122cf898c610b2c565b6119b5565b906119ed565b6122ec6122e78689610b2c565b612189565b612287565b509350939050600991500161230581611fe6565b915f5b8351811015612381578061232161226b60019387612175565b64ffffffffff8088169116148061236f575b61233e575b01612308565b61236161235761226b6123518851610c43565b88612175565b6122d483876119b5565b61236a84612189565b612338565b5061237a8684610f9b565b5415612333565b5050505050565b50505f61222d565b61221b9350611a5b91505f94610b2c565b90612421939264ffffffffff4216926123c18154610d4f6106ec82610c90565b9360038201906123e16123d48684610b2c565b61110d611c0d8886610b2c565b50936123f2600386015487866129f4565b61242882600161240061156e565b9861240e8760408c01611598565b64ffffffffff43169d8e60608c01611598565b0154610c60565b90602087019182525f8752608087015261244b866124468987610b2c565b611623565b600261245a8860048801610b2c565b9151910155600284019081548015611f275761173161247b61248192610c43565b84610c2a565b916080830192612492845188612921565b905f9a5f965f9b5f9960016124a78383610b2c565b54116125a7575b50506124b861156e565b9e8f6124c78360408301611598565b606001906124d491611598565b8251600f0b926020810197885190516124ec91610c60565b60409091015164ffffffffff1690612504948c6111cb565b96919a905085511061259857610dc19a6118f19a6001988f9661252b906125679951610c60565b602088019081529803612586575050612548611ec88a51600f0b90565b5f81600f0b12806125725761190157505f6118da6118d48551600f0b90565b5191015551600f0b90565b508351600f0b611f036118d48b51600f0b90565b61259391611ec8916111a6565b612548565b632ca6f13b60e01b5f5260045ffd5b819e506125bd929d5081949a5080939950610b2c565b916125c791610b2c565b546125d190610c51565b6125da91610c2a565b50809a868b83546125eb90600f0b90565b93600101549d8e600382015461260091610c60565b60029091015464ffffffffff1690612618958d611376565b97919690969b9a5f806124ae565b9161263a939164ffffffffff421693611cc1565b5050565b919290916001600160a01b03831615806126ec575b6126985760060161266882611a5b8584610b2c565b546126735750505090565b61268092611a5b91610b2c565b548181111561268f5750505f90565b610dc191610c60565b9150600a6126a98260088501610f9b565b549201926126c16126ba8386610f9b565b5482610be3565b8311156126d057505050505f90565b6126e06126e792610dc195610f9b565b5490610be3565b610c60565b506126fa8260088301610f9b565b541515612653565b9064ffffffffff6127529281946127258342169254848082169160281c16610c9d565b9180848316115f146127755761273a91610e6d565b905b81838216968791161161276d575b501690610faf565b8115610c8b570460016001607f1b03811161128757600f0b90565b90505f61274a565b50505f9061273c565b6001600160401b0381116115265760051b60200190565b9061279f8261277e565b6127ac604051918261152b565b82815280926127bd601f199161277e565b0190602036910137565b5f1981146104b45760010190565b600160401b8211611526578054908281558183106127f257505050565b5f526005600660205f20818381818801048301950104019306028061282a575b505b81811061281f575050565b5f8155600101612814565b5f198201908154905f199060200360031b1c1690555f612812565b815190916001600160401b0382116115265760206128729161286784866127d5565b01925f5260205f2090565b60068204915f5b8381106128dc575060068302900380612893575b50505050565b925f935f5b8181106128ad5750505001555f80808061288d565b90919460206128d26001926128c7895164ffffffffff1690565b9085600502906119d5565b9601929101612898565b5f5f5b600681106128f4575083820155600101612879565b9590602061291860019261290d855164ffffffffff1690565b908a600502906119d5565b920196016128df565b90915f90600983019261293384611fe6565b9061293e8251612795565b925f5b83518110156129e45761295761226b8286612175565b61297c6129678260088701610f9b565b5461297583600a8801610f9b565b5490610c60565b9081151590816129d1575b506129be5750806129b86129a061226b60019488612175565b6129b36129ac8a6127c7565b9989612175565b611598565b01612941565b6129cb9060019299610be3565b976129b8565b905064ffffffffff42911611155f612987565b509491505061155d928252612845565b91925f916001600160a01b038116612a9957506009830192612a1584611fe6565b90612a208251612795565b925f5b83518110156129e457612a3961226b8286612175565b612a496129678260088701610f9b565b908115159081612a86575b50612a73575080612a6d6129a061226b60019488612175565b01612a23565b612a809060019299610be3565b97612a6d565b905064ffffffffff42911611155f612a54565b93916007840193612aad61224a8787610b2c565b95612ab88751612795565b935f5b8851811015612b7c57612ad161226b828b612175565b612ae281611a5b8660068901610b2c565b5480151580612b6b575b612b1e57505080612b18612b0561226b6001948d612175565b6129b3612b11896127c7565b988a612175565b01612abb565b612b2c81600194939a610be3565b98600a870182612b3c8383610f9b565b541015612b4c575b505050612b18565b612b6191612b5991610f9b565b918254610c60565b90555f8080612b44565b504264ffffffffff83161115612aec565b509590915061155d949650612b92928452610b2c565b61284556fea26469706673582212207936bfc6501199d09daaa778108714e0b9374a1dbe8f8393d2b94d23f01a292b64736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "EpochEndTooFar";
@@ -15,7 +15,7 @@ export declare class PowerCheckpoint__factory extends ContractFactory {
15
15
  deploymentTransaction(): ContractTransactionResponse;
16
16
  }>;
17
17
  connect(runner: ContractRunner | null): PowerCheckpoint__factory;
18
- static readonly bytecode = "0x60808060405234601b5761079e90816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c8063561656751461018d578063951c0237146101575780639d98d594146100f4578063de051686146100cd5763e34bed7a14610073575f80fd5b6100c95760603660031901126100c95760443560243580156100ba57438210156100ab575f5260016004350160205260405f20555f80f35b631391e11b60e21b5f5260045ffd5b630992f7ad60e01b5f5260045ffd5b5f80fd5b60603660031901126100c95760206100ec604435602435600435610451565b604051908152f35b60203660031901126100c9576004358054908161012357505060205f5b6040516001600160e01b039091168152f35b5f1982019182116101435760209161013a916101b6565b5054811c610111565b634e487b7160e01b5f52601160045260245ffd5b506100c95760603660031901126100c9576024356001600160a01b03811681036100c95761018b906044359060043561032d565b005b60403660031901126100c95760206100ec6024356004356101ec565b9190820391821161014357565b80548210156101cb575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b9190820180921161014357565b8054918215610298575f19830192831192836101435763ffffffff61021182856101b6565b505416821015610291575f936101435791905b8284106102315750505090565b90919261023e84826101df565b600181018091116101435760011c908263ffffffff61025d84876101b6565b5054161161026f5750925b9190610224565b93505f1981019081111561026857634e487b7160e01b5f52601160045260245ffd5b9250505090565b5050505f90565b6040810190811067ffffffffffffffff8211176102bb57604052565b634e487b7160e01b5f52604160045260245ffd5b8054680100000000000000008110156102bb576102f1916001820181556101b6565b61031a57815160209283015190921b63ffffffff191663ffffffff92909216919091179055565b565b634e487b7160e01b5f525f60045260245ffd5b9190916f7fffffffffffffffffffffffffffffff8211610429574363ffffffff16926001600160a01b031680156103fc575f5260205260405f20805492831515806103d7575b156103af57505f1983019283116101435761031892610391916101b6565b50805463ffffffff1660209290921b63ffffffff1916919091179055565b916103189350604051926103c28461029f565b83526001600160e01b031660208301526102cf565b505f1984018481116101435763ffffffff6103f38392856101b6565b50541614610373565b50600201805492831515806103d757156103af57505f1983019283116101435761031892610391916101b6565b632f537ee160e01b5f5260045ffd5b80548210156101cb575f5260205f209060021b01905f90565b9190914382116100ab57600201805415610298578061047383610479936101ec565b906101b6565b50548163ffffffff82161461075f5750600282018054908115610757578054156101cb57805f528264ffffffffff600260205f20015460281c1611610757575f915f19810190811161014357805b8084106106f557506104d98383610438565b509260028401549064ffffffffff8260281c168681146106df57600588015480156106d657965b818111156106c75764ffffffffff91610518916101a9565b925b16938442115f146106c0578161053086426101a9565b941161067e575b505084810294818604149015171561014357808411610676575b50835464ffffffffff8082169160281c16029264ffffffffff84169384036101435764ffffffffff61059c6105958554600f0b9560036001820154910154906101a9565b92846101df565b16926040519563021b0fb560e11b87526004870152602486015260448501526064840152608483015260a48201525f60c482015260208160e48173__$722770e92751af7c18db862b2d8e717318$__5af490811561066b575f91610619575b505f81600f0b135f14610614576001600160801b031690565b505f90565b905060203d602011610664575b601f8101601f1916820167ffffffffffffffff8111838210176102bb576020918391604052810103126100c9575180600f0b81036100c9575f6105fb565b503d610626565b6040513d5f823e3d90fd5b92505f610551565b90919250600182018092116101435760026106a0859364ffffffffff93610438565b500154160364ffffffffff81116101435764ffffffffff16905f80610537565b815f610530565b505064ffffffffff5f9261051a565b50600c96610500565b505050505090506001600160801b039150541690565b9261070084826101df565b600181018091116101435760011c908564ffffffffff60026107228588610438565b50015460281c16116107355750926104c7565b93505f198101908111156104c757634e487b7160e01b5f52601160045260245ffd5b505050505f90565b91505060201c9056fea2646970667358221220a0da327c97237cb33ebddb03919ec8896282fc9087538fd26736c46fca832e7564736f6c634300081e0033";
18
+ static readonly bytecode = "0x60808060405234601b576107a190816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c8063561656751461018d578063951c0237146101575780639d98d594146100f4578063de051686146100cd5763e34bed7a14610073575f80fd5b6100c95760603660031901126100c95760443560243580156100ba57438210156100ab575f5260016004350160205260405f20555f80f35b631391e11b60e21b5f5260045ffd5b630992f7ad60e01b5f5260045ffd5b5f80fd5b60603660031901126100c95760206100ec604435602435600435610455565b604051908152f35b60203660031901126100c9576004358054908161012357505060205f5b6040516001600160e01b039091168152f35b5f1982019182116101435760209161013a916101b6565b5054811c610111565b634e487b7160e01b5f52601160045260245ffd5b506100c95760603660031901126100c9576024356001600160a01b03811681036100c95761018b9060443590600435610346565b005b60403660031901126100c95760206100ec6024356004356101ec565b9190820391821161014357565b80548210156101cb575f5260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b9190820180921161014357565b8054918215610298575f19830192831192836101435763ffffffff61021182856101b6565b505416821015610291575f936101435791905b8284106102315750505090565b90919261023e84826101df565b600181018091116101435760011c908263ffffffff61025d84876101b6565b5054161161026f5750925b9190610224565b93505f1981019081111561026857634e487b7160e01b5f52601160045260245ffd5b9250505090565b5050505f90565b604081019081106001600160401b038211176102ba57604052565b634e487b7160e01b5f52604160045260245ffd5b9063ffffffff82549181199060201b169116179055565b8054600160401b8110156102ba57610302916001820181556101b6565b610333578163ffffffff61033193511663ffffffff19835416178255602060018060e01b0391015116906102ce565b565b634e487b7160e01b5f525f60045260245ffd5b90919060016001607f1b03821161042d574363ffffffff16926001600160a01b03168015610400575f5260205260405f20805492831515806103db575b156103b357505f19830192831161014357610331926103a1916101b6565b506001600160e01b03909116906102ce565b916103319350604051926103c68461029f565b83526001600160e01b031660208301526102e5565b505f1984018481116101435763ffffffff6103f78392856101b6565b50541614610383565b50600201805492831515806103db57156103b357505f19830192831161014357610331926103a1916101b6565b632f537ee160e01b5f5260045ffd5b80548210156101cb575f5260205f209060021b01905f90565b9190914382116100ab5760020180541561029857806104778361047d936101ec565b906101b6565b50548163ffffffff821614610762575060028201805490811561075a578054156101cb57805f528264ffffffffff600260205f20015460281c161161075a575f915f19810190811161014357805b8084106106f857506104dd838361043c565b509260028401549064ffffffffff8260281c168681146106e257600588015480156106d957965b818111156106ca5764ffffffffff9161051c916101a9565b925b16938442115f146106c3578161053486426101a9565b9411610681575b505084810294818604149015171561014357808411610679575b50835464ffffffffff8082169160281c16029264ffffffffff84169384036101435764ffffffffff6105a06105998554600f0b9560036001820154910154906101a9565b92846101df565b16926040519563021b0fb560e11b87526004870152602486015260448501526064840152608483015260a48201525f60c482015260208160e48173__$722770e92751af7c18db862b2d8e717318$__5af490811561066e575f9161061d575b505f81600f0b135f14610618576001600160801b031690565b505f90565b905060203d602011610667575b601f8101601f191682016001600160401b038111838210176102ba576020918391604052810103126100c9575180600f0b81036100c9575f6105ff565b503d61062a565b6040513d5f823e3d90fd5b92505f610555565b90919250600182018092116101435760026106a3859364ffffffffff9361043c565b500154160364ffffffffff81116101435764ffffffffff16905f8061053b565b815f610534565b505064ffffffffff5f9261051e565b50600c96610504565b505092546001600160801b031695945050505050565b9261070384826101df565b600181018091116101435760011c908564ffffffffff6002610725858861043c565b50015460281c16116107385750926104cb565b93505f198101908111156104cb57634e487b7160e01b5f52601160045260245ffd5b505050505f90565b91505060201c9056fea26469706673582212206e292118f9f2b91522276eed635df3e6c18ec4a0fde491799694bc64c4d1036d64736f6c634300081e0033";
19
19
  static readonly abi: readonly [{
20
20
  readonly inputs: readonly [];
21
21
  readonly name: "InvalidBlockNumber";
@@ -15,7 +15,7 @@ export declare class RagequitLib__factory extends ContractFactory {
15
15
  deploymentTransaction(): ContractTransactionResponse;
16
16
  }>;
17
17
  connect(runner: ContractRunner | null): RagequitLib__factory;
18
- static readonly bytecode = "0x60808060405234601b57611bab90816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c80630fd18f79146100915780634860405714610087578063750546d114610082578063a6dc765e1461007d5763c4b1583c14610073575f80fd5b1561032a575b5f80fd5b610300565b6102dd565b501561014f575f80fd5b6060366003190112610079576100e16100b76004356100ae6100e5565b60443591610673565b604080519586526020860194909452928401919091526060830152608082015290819060a0820190565b0390f35b6024359064ffffffffff8216820361007957565b6044359064ffffffffff8216820361007957565b604435906001600160a01b038216820361007957565b602435906001600160a01b038216820361007957565b606435906001600160a01b038216820361007957565b60603660031901126100795760043560243561016961010d565b64ffffffffff61017982846106d0565b1664ffffffffff81149081156102d2575b506102c357608092816101a06101db93856107c5565b604051631de1879f60e21b815260048101999099526001600160a01b0390951660248901529397939695909391929190869081906044820190565b038173__$722770e92751af7c18db862b2d8e717318$__5af49586156102be575f935f955f975f9961027b575b506100e19798998155856001820155836002820155846003820155600461022e426105d8565b9101556040519889988996929363ffffffff959199989460e097936101008a019b600f0b8a52600f0b60208a015260408901526060880152608087015260a086015260c085015216910152565b91965094506102a89197506100e1965060803d6080116102b7575b6102a0818361054c565b81019061057c565b98929691959096959697610208565b503d610296565b6105b9565b63d5b25b6360e01b5f5260045ffd5b90504210155f61018a565b6040366003190112610079576100e16100b76004356102fa610123565b906107c5565b604036600319011261007957602061032260043561031c610123565b9061094e565b604051908152f35b6080366003190112610079576004356024356103446100f9565b61034c610139565b6001600160a01b0381165f90815260048401602052604090209091906002810154156105085764ffffffffff8216428111156102c35761038c83836109cf565b906103a461039a86886106d0565b64ffffffffff1690565b036102c3576103b96103c7916103d39361060d565b50546001600160701b031690565b6001600160701b031690565b80156104f957610439926103e8828487610673565b9891929690939460206103fb828561094e565b604051639c8fe60d60e01b8152600481018690526001600160a01b038416602482015264ffffffffff909416604485015292998a9081906064820190565b038173__$722770e92751af7c18db862b2d8e717318$__5af49283156102be576100e19961046c946104cc575b50610be2565b9890978155846001820155836002820155856003820155600461048e426105d8565b9101556040519788978893909796959260c0959260e0860199600f0b8652600f0b602086015260408501526060840152608083015260a08201520152565b6104ed9060203d6020116104f2575b6104e5818361054c565b810190610627565b610466565b503d6104db565b63162908e360e11b5f5260045ffd5b6343b976c160e01b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b60a0810190811067ffffffffffffffff82111761054757604052565b610517565b90601f8019910116810190811067ffffffffffffffff82111761054757604052565b519081600f0b820361007957565b919082608091031261007957815191602081015163ffffffff8116810361007957916105b660606105af6040850161056e565b930161056e565b90565b6040513d5f823e3d90fd5b634e487b7160e01b5f52601160045260245ffd5b9061070882018092116105e757565b6105c4565b919082018092116105e757565b634e487b7160e01b5f52603260045260245ffd5b8054821015610622575f5260205f2001905f90565b6105f9565b90816020910312610079575190565b818102929181159184041417156105e757565b5f198101919082116105e757565b6001198101919082116105e757565b919082039182116105e757565b906106a56106956106ab939594955464ffffffffff8082169160281c16610636565b809264ffffffffff421690610f71565b84610fd1565b809282946106b883611068565b93909482039182116105e75781039081116105e75790565b6001600160a01b039091165f9081526004909101602052604090209064ffffffffff9163ffffffff600182015416908054915b82811061070f57505050565b64ffffffffff61071f828461060d565b505460701c1664ffffffffff86161180610769575b610741575b600101610703565b93506001610761610752868461060d565b505460701c64ffffffffff1690565b949050610739565b506001600160701b038061077d838561060d565b505416161515610734565b906040516040810181811067ffffffffffffffff8211176105475760405291546001600160701b038116835260701c64ffffffffff166020830152565b6001600160a01b039091165f908152600482016020526040902090919061081b64ffffffffff4216935461081561039a61080a61039a8464ffffffffff9060281c1690565b9264ffffffffff1690565b90610636565b905f915f915f9561083f610836600184015463ffffffff1690565b63ffffffff1690565b928254925b8385106108735750505050508061086e8561086961086182611068565b959096610666565b610666565b909493565b9091929397949561088d6108878a8461060d565b50610788565b906108a26103c783516001600160701b031690565b15610942576103c76109208361091a61092694896108ca6020600199015164ffffffffff1690565b8a8264ffffffffff83161115610932576108eb816109149461090494610f71565b6108ff6103c788516001600160701b031690565b610fd1565b969094516001600160701b031690565b906105ec565b9a6105ec565b976105ec565b985b0193929190610844565b610914925061090491505f6108eb565b96959860019150610928565b6001600160a01b039091165f90815260049091016020526040812090919063ffffffff600182015416908054915b82811061098857505050565b6001600160701b0361099a828461060d565b5054166109aa575b60010161097c565b936001600160701b036109bd868461060d565b50541681018091116105e757936109a2565b63ffffffff600182015416918154925b8381106109f55763965307a760e01b5f5260045ffd5b64ffffffffff610a05828561060d565b505460701c1664ffffffffff83161480610a2d575b610a26576001016109df565b9250505090565b506001600160701b0380610a41838661060d565b505416161515610a1a565b9064ffffffffff8091169116029064ffffffffff82169182036105e757565b8054821015610622575f5260205f209060021b01905f90565b60405190610a918261052b565b5f6080838281528260208201528260408201528260608201520152565b8054600160401b81101561054757610acb91600182018155610a6b565b919091610b5a57608081600392516001600160801b0319855416906001600160801b031617845560208101516001850155610b536002850164ffffffffff60408401511664ffffffffff19825416178155610b2e606084015164ffffffffff1690565b69ffffffffff000000000082549160281b169069ffffffffff00000000001916179055565b0151910155565b634e487b7160e01b5f525f60045260245ffd5b90604051610b7a8161052b565b6080600382948054600f0b84526001810154602085015264ffffffffff6002820154818116604087015260281c1660608501520154910152565b600f91820b910b03906f7fffffffffffffffffffffffffffffff19821260016001607f1b038313176105e757565b90610ca5939264ffffffffff421692610c1c8154610c16610c0b8264ffffffffff9060281c1690565b9164ffffffffff1690565b90610a4c565b936003820190610c66610c3f86849060018060a01b03165f5260205260405f2090565b6001600160a01b0387165f908152602085905260409020610c609054610649565b90610a6b565b5093610c77600386015487866114fc565b610cac826001610c85610a84565b64ffffffffff87166040820152984364ffffffffff1660608b018190529d565b0154610666565b90602087019182525f87526080870152610cdf86610cda89879060018060a01b03165f5260205260405f2090565b610aae565b6001600160a01b0387165f90815260048601602052604090206002909151910155600284019081548015610f4757610d22610d1c610d2892610649565b84610a6b565b50610b6d565b916080830192610d398451886113f9565b905f9a5f965f9b5f996001610d5e83839060018060a01b03165f5260205260405f2090565b5411610ec2575b5050610d6f610a84565b64ffffffffff821660408201529e8f60600190610d92919064ffffffffff169052565b8251600f0b92602081019788519051610daa91610666565b60409091015164ffffffffff1690610dc2948c61172d565b96919a9050855110610eb3576105b69a610e4f9a6001988f96610de990610e449951610666565b602088019081529803610ea1575050610e0d610e068a51600f0b90565b600f0b8552565b5f81600f0b1280610e83575b610e5f575b505f610e34610e2e8551600f0b90565b600f0b90565b12610e57575b6080830152610aae565b5191015551600f0b90565b9251600f0b90565b5f8352610e3a565b610e76610e7d91610e718651600f0b90565b610bb4565b600f0b8452565b5f610e1e565b508351600f0b610e97610e2e8b51600f0b90565b90600f0b13610e19565b610eae91610e0691610bb4565b610e0d565b632ca6f13b60e01b5f5260045ffd5b6001600160a01b0382165f908152602091909152604090208054919e50919c5092985090965090610ef290610657565b610efb91610a6b565b50809a868b8354610f0c90600f0b90565b93600101549d8e6003820154610f2191610666565b60029091015464ffffffffff1690610f39958d6118d7565b97919690969b9a5f80610d65565b62dc341f60e01b5f5260045ffd5b9064ffffffffff8091169116039064ffffffffff82116105e757565b64ffffffffff821664ffffffffff8216115f14610fab5764ffffffffff91610f9891610f55565b165b81811115610fa6575090565b905090565b50505f610f9a565b8115610fbd570490565b634e487b7160e01b5f52601260045260245ffd5b929190926101f481028181046101f414821517156105e7576127108101908181116105e75761270f019081116105e75761271090049382158015611060575b61105957670de0b6b3a7640000810290808204670de0b6b3a764000014901517156105e7576706f05b59d3b2000061104e6105b69461105393610fb3565b6119dc565b906119dc565b5050505f90565b508015611010565b9060218202828104602114831517156105e75760649004918281039081116105e75790565b604051815480825290929183906110ab60208301915f5260205f2090565b925f905b806005830110611194576110f594549181811061117c575b818110611160575b818110611144575b818110611128575b81811061110c575b106110f7575b50038361054c565b565b60c81c64ffffffffff1681526020015f6110ed565b60a083901c64ffffffffff1684529260019060200193016110e7565b607883901c64ffffffffff1684529260019060200193016110df565b605083901c64ffffffffff1684529260019060200193016110d7565b602883901c64ffffffffff1684529260019060200193016110cf565b64ffffffffff831684529260019060200193016110c7565b91600691935060c060019161121087546111bb8364ffffffffff831664ffffffffff169052565b602881901c64ffffffffff166020840152605081901c64ffffffffff166040840152607881901c64ffffffffff16606084015260a081901c64ffffffffff16608084015260c81c64ffffffffff1660a0830152565b0194019201859293916110af565b67ffffffffffffffff81116105475760051b60200190565b906112408261121e565b61124d604051918261054c565b828152809261125e601f199161121e565b0190602036910137565b80518210156106225760209160051b010190565b5f1981146105e75760010190565b600160401b8211610547578054908281558183106112a757505050565b5f526005600660205f2081838181880104830195010401930602806112df575b505b8181106112d4575050565b5f81556001016112c9565b5f198201908154905f199060200360031b1c1690555f6112c7565b9080519067ffffffffffffffff82116105475760206113289161131d848661128a565b01925f5260205f2090565b60068204915f5b8381106113a3575060068302900380611349575b50505050565b925f935f5b8181106113635750505001555f808080611343565b909194602061139960019261137d895164ffffffffff1690565b908560050264ffffffffff809160031b9316831b921b19161790565b960192910161134e565b5f5f5b600681106113bb57508382015560010161132f565b959060206113f06001926113d4855164ffffffffff1690565b908a60050264ffffffffff809160031b9316831b921b19161790565b920196016113a6565b90915f90600983019261140b8461108d565b906114168251611236565b925f5b83518110156114ec5761143a61142f8286611268565b5164ffffffffff1690565b61147d61145982600887019064ffffffffff165f5260205260405f2090565b5461147683600a88019064ffffffffff165f5260205260405f2090565b5490610666565b9081151590816114d9575b506114c65750806114c06114a161142f60019488611268565b6114b46114ad8a61127c565b9989611268565b9064ffffffffff169052565b01611419565b6114d390600192996105ec565b976114c0565b905064ffffffffff42911611155f611488565b50949150506110f59282526112fa565b91925f916001600160a01b0381166115b05750600983019261151d8461108d565b906115288251611236565b925f5b83518110156114ec5761154161142f8286611268565b61156061145982600887019064ffffffffff165f5260205260405f2090565b90811515908161159d575b5061158a5750806115846114a161142f60019488611268565b0161152b565b61159790600192996105ec565b97611584565b905064ffffffffff42911611155f61156b565b939160078401936115d96115d487879060018060a01b03165f5260205260405f2090565b61108d565b956115e48751611236565b935f5b88518110156116e9576115fd61142f828b611268565b6001600160a01b0384165f90815260068601602052604090206116319082905b9064ffffffffff165f5260205260405f2090565b54801515806116d8575b61166d5750508061166761165461142f6001948d611268565b6114b46116608961127c565b988a611268565b016115e7565b61167b81600194939a6105ec565b98600a87018261169a83839064ffffffffff165f5260205260405f2090565b5410156116aa575b505050611667565b6116ce916116c6919064ffffffffff165f5260205260405f2090565b918254610666565b90555f80806116a2565b504264ffffffffff8316111561163b565b509284526001600160a01b03165f9081526020959095525060409093209193506110f5916112fa565b64ffffffffff6107089116019064ffffffffff82116105e757565b9390919495929564ffffffffff5f91169081156118c85786156118b9576117578895979895611a0c565b97935b64ffffffffff891664ffffffffff851681116117f75761178f8461178a61178461039a8b8f610f55565b89610636565b610fb3565b9160016001607f1b0383116117e8576117bc64ffffffffff916001600160801b038d9516600f0b90610bb4565b9716036117d5575b6117ce9098611712565b979461175a565b6117e191945f88611a5a565b92876117c4565b63dbdeca0f60e01b5f5260045ffd5b5094939750959450905f84600f0b126118b0575b64ffffffffff811664ffffffffff8416146118955761183361039a6118399461178a93610f55565b87610636565b9060016001607f1b0382116117e8576001600160801b0361185e9216600f0b90610bb4565b5f81600f0b1261188d575b8315611886575b5f81600f0b125f1461188257505f9290565b9290565b505f611870565b915081611869565b5050508315611886575f81600f0b125f1461188257505f9290565b9450829461180b565b505f9650869550859450505050565b63339bfa2360e11b5f5260045ffd5b94969390929695919564ffffffffff5f91169081156118c85787156119cc576119038996989996611a0c565b98945b64ffffffffff8a1664ffffffffff85168111611990576119378461178a61193161039a8f8d90610f55565b8a610636565b9160016001607f1b0383116117e85761196464ffffffffff916001600160801b038e9516600f0b90610bb4565b98160361197d575b6119769099611712565b9895611906565b61198991958589611a5a565b938861196c565b509594985096955091505f84600f0b126118b05764ffffffffff811664ffffffffff8416146118955761183361039a6118399461178a93610f55565b505f975087965086955050505050565b816706f05b59d3b2000019048111158215171561007957670de0b6b3a764000091026706f05b59d3b20000010490565b64ffffffffff1664ffffffffff610708611a2881808504610a4c565b920616611a4b5764ffffffffff805f5b1691160164ffffffffff81116105e75790565b64ffffffffff80610708611a38565b919290916001600160a01b0383161580611b50575b611ad457600601611a948261161d85849060018060a01b03165f5260205260405f2090565b54611a9f5750505090565b611abc9261161d919060018060a01b03165f5260205260405f2090565b5481811115611acb5750505f90565b6105b691610666565b9150600a611af482600885019064ffffffffff165f5260205260405f2090565b54920192611b1b611b1483869064ffffffffff165f5260205260405f2090565b54826105ec565b831115611b2a57505050505f90565b611b49610869926105b6959064ffffffffff165f5260205260405f2090565b54906105ec565b50611b6d82600883019064ffffffffff165f5260205260405f2090565b541515611a6f56fea264697066735822122002b696d538ae6c196a5a3f4e705560b4ef61e145a014d172a80ec764a7d3570464736f6c634300081e0033";
18
+ static readonly bytecode = "0x60808060405234601b57611a3790816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c80630fd18f79146100915780634860405714610087578063750546d114610082578063a6dc765e1461007d5763c4b1583c14610073575f80fd5b1561032a575b5f80fd5b610300565b6102dd565b501561014f575f80fd5b6060366003190112610079576100e16100b76004356100ae6100e5565b60443591610679565b604080519586526020860194909452928401919091526060830152608082015290819060a0820190565b0390f35b6024359064ffffffffff8216820361007957565b6044359064ffffffffff8216820361007957565b604435906001600160a01b038216820361007957565b602435906001600160a01b038216820361007957565b606435906001600160a01b038216820361007957565b60603660031901126100795760043560243561016961010d565b64ffffffffff61017982846106d6565b1664ffffffffff81149081156102d2575b506102c357608092816101a06101db93856107bc565b604051631de1879f60e21b815260048101999099526001600160a01b0390951660248901529397939695909391929190869081906044820190565b038173__$722770e92751af7c18db862b2d8e717318$__5af49586156102be575f935f955f975f9961027b575b506100e19798998155856001820155836002820155846003820155600461022e426105bc565b9101556040519889988996929363ffffffff959199989460e097936101008a019b600f0b8a52600f0b60208a015260408901526060880152608087015260a086015260c085015216910152565b91965094506102a89197506100e1965060803d6080116102b7575b6102a0818361052f565b810190610560565b98929691959096959697610208565b503d610296565b61059d565b63d5b25b6360e01b5f5260045ffd5b90504210155f61018a565b6040366003190112610079576100e16100b76004356102fa610123565b906107bc565b604036600319011261007957602061032260043561031c610123565b90610922565b604051908152f35b6080366003190112610079576004356024356103446100f9565b61034c610139565b9061035a82600485016105de565b6002810154156104ec5764ffffffffff8216428111156102c35761037e8383610994565b9061039661038c86886106d6565b64ffffffffff1690565b036102c3576103ab6103b2916103b793610607565b5054610621565b610621565b80156104dd5761041d926103cc828487610679565b9891929690939460206103df8285610922565b604051639c8fe60d60e01b8152600481018690526001600160a01b038416602482015264ffffffffff909416604485015292998a9081906064820190565b038173__$722770e92751af7c18db862b2d8e717318$__5af49283156102be576100e199610450946104b0575b50610b95565b98909781558460018201558360028201558560038201556004610472426105bc565b9101556040519788978893909796959260c0959260e0860199600f0b8652600f0b602086015260408501526060840152608083015260a08201520152565b6104d19060203d6020116104d6575b6104c9818361052f565b81019061062d565b61044a565b503d6104bf565b63162908e360e11b5f5260045ffd5b6343b976c160e01b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b60a081019081106001600160401b0382111761052a57604052565b6104fb565b601f909101601f19168101906001600160401b0382119082101761052a57604052565b519081600f0b820361007957565b919082608091031261007957815191602081015163ffffffff81168103610079579161059a606061059360408501610552565b9301610552565b90565b6040513d5f823e3d90fd5b634e487b7160e01b5f52601160045260245ffd5b9062093a8082018092116105cc57565b6105a8565b919082018092116105cc57565b9060018060a01b03165f5260205260405f2090565b634e487b7160e01b5f52603260045260245ffd5b805482101561061c575f5260205f2001905f90565b6105f3565b6001600160701b031690565b90816020910312610079575190565b818102929181159184041417156105cc57565b5f198101919082116105cc57565b6001198101919082116105cc57565b919082039182116105cc57565b906106ab61069b6106b1939594955464ffffffffff8082169160281c1661063c565b809264ffffffffff421690610ed3565b84610f33565b809282946106be83610fca565b93909482039182116105cc5781039081116105cc5790565b9060046106e392016105de565b9064ffffffffff9163ffffffff600182015416908054915b82811061070757505050565b64ffffffffff6107178284610607565b505460701c1664ffffffffff86161180610761575b610739575b6001016106fb565b9350600161075961074a8684610607565b505460701c64ffffffffff1690565b949050610731565b5061076c8183610607565b50546001600160701b0316151561072c565b604080519192919081016001600160401b0381118282101761052a5760405291546001600160701b038116835260701c64ffffffffff166020830152565b91906107cb90600484016105de565b61080464ffffffffff421693546107fe61038c6107f361038c8464ffffffffff9060281c1690565b9264ffffffffff1690565b9061063c565b905f915f915f9561082861081f600184015463ffffffff1690565b63ffffffff1690565b928254925b83851061085c575050505050806108578561085261084a82610fca565b95909661066c565b61066c565b909493565b909192939794956108766108708a84610607565b5061077e565b906108846103b28351610621565b15610916576103b26108f4836108ee6108fa94896108ac6020600199015164ffffffffff1690565b8a8264ffffffffff83161115610906576108cd816108e8946108df94610ed3565b6108da6103b28851610621565b610f33565b96909451610621565b906105d1565b9a6105d1565b976105d1565b985b019392919061082d565b6108e892506108df91505f6108cd565b969598600191506108fc565b5f9291610931916004016105de565b63ffffffff600182015416908054915b82811061094d57505050565b6109578183610607565b50546001600160701b031661096f575b600101610941565b9361097a8583610607565b50546001600160701b031681019081106105cc5793610967565b63ffffffff600182015416918154925b8381106109ba5763965307a760e01b5f5260045ffd5b64ffffffffff6109ca8285610607565b505460701c1664ffffffffff831614806109f2575b6109eb576001016109a4565b9250505090565b506109fd8184610607565b50546001600160701b031615156109df565b9064ffffffffff8091169116029064ffffffffff82169182036105cc57565b805482101561061c575f5260205f209060021b01905f90565b60405190610a548261050f565b5f6080838281528260208201528260408201528260608201520152565b8054600160401b81101561052a57610a8e91600182018155610a2e565b919091610b165760808160039251600180841b031985541690600180851b031617845560208101516001850155610b0f6002850164ffffffffff60408401511664ffffffffff19825416178155610aed606084015164ffffffffff1690565b815464ffffffffff60281b191660289190911b64ffffffffff60281b16179055565b0151910155565b634e487b7160e01b5f525f60045260245ffd5b90604051610b368161050f565b6080600382948054600f0b84526001810154602085015264ffffffffff6002820154818116604087015260281c1660608501520154910152565b600f91820b910b039060016001607f1b0319821260016001607f1b038313176105cc57565b90610c3a939264ffffffffff421692610bcf8154610bc9610bbe8264ffffffffff9060281c1690565b9164ffffffffff1690565b90610a0f565b936003820190610bfb610be286846105de565b610bf5610bef88866105de565b5461064f565b90610a2e565b5093610c0c60038601548786611448565b610c41826001610c1a610a47565b64ffffffffff87166040820152984364ffffffffff1660608b018190529d565b015461066c565b90602087019182525f87526080870152610c6486610c5f89876105de565b610a71565b6002610c7388600488016105de565b9151910155600284019081548015610ea957610c9a610c94610ca09261064f565b84610a2e565b50610b29565b916080830192610cb1845188611363565b905f9a5f965f9b5f996001610cc683836105de565b5411610e2a575b5050610cd7610a47565b64ffffffffff821660408201529e8f60600190610cfa919064ffffffffff169052565b8251600f0b92602081019788519051610d129161066c565b60409091015164ffffffffff1690610d2a948c611611565b96919a9050855110610e1b5761059a9a610db79a6001988f96610d5190610dac995161066c565b602088019081529803610e09575050610d75610d6e8a51600f0b90565b600f0b8552565b5f81600f0b1280610deb575b610dc7575b505f610d9c610d968551600f0b90565b600f0b90565b12610dbf575b6080830152610a71565b5191015551600f0b90565b9251600f0b90565b5f8352610da2565b610dde610de591610dd98651600f0b90565b610b70565b600f0b8452565b5f610d86565b508351600f0b610dff610d968b51600f0b90565b90600f0b13610d81565b610e1691610d6e91610b70565b610d75565b632ca6f13b60e01b5f5260045ffd5b819e50610e40929d5081949a50809399506105de565b91610e4a916105de565b54610e549061065d565b610e5d91610a2e565b50809a868b8354610e6e90600f0b90565b93600101549d8e6003820154610e839161066c565b60029091015464ffffffffff1690610e9b958d6117bc565b97919690969b9a5f80610ccd565b62dc341f60e01b5f5260045ffd5b9064ffffffffff8091169116039064ffffffffff82116105cc57565b64ffffffffff821664ffffffffff8216115f14610f0d5764ffffffffff91610efa91610eb7565b165b81811115610f08575090565b905090565b50505f610efc565b8115610f1f570490565b634e487b7160e01b5f52601260045260245ffd5b929190926101f481028181046101f414821517156105cc576127108101908181116105cc5761270f019081116105cc5761271090049382158015610fc2575b610fbb57670de0b6b3a7640000810290808204670de0b6b3a764000014901517156105cc576706f05b59d3b20000610fb061059a94610fb593610f15565b6118c2565b906118c2565b5050505f90565b508015610f72565b9060218202828104602114831517156105cc5760649004918281039081116105cc5790565b6040518154808252909291839061100d60208301915f5260205f2090565b925f905b8060058301106110f6576110579454918181106110de575b8181106110c2575b8181106110a6575b81811061108a575b81811061106e575b10611059575b50038361052f565b565b60c81c64ffffffffff1681526020015f61104f565b60a083901c64ffffffffff168452926001906020019301611049565b607883901c64ffffffffff168452926001906020019301611041565b605083901c64ffffffffff168452926001906020019301611039565b602883901c64ffffffffff168452926001906020019301611031565b64ffffffffff83168452926001906020019301611029565b91600691935060c0600191611172875461111d8364ffffffffff831664ffffffffff169052565b602881901c64ffffffffff166020840152605081901c64ffffffffff166040840152607881901c64ffffffffff16606084015260a081901c64ffffffffff16608084015260c81c64ffffffffff1660a0830152565b019401920185929391611011565b6001600160401b03811161052a5760051b60200190565b906111a182611180565b6111ae604051918261052f565b82815280926111bf601f1991611180565b0190602036910137565b805182101561061c5760209160051b010190565b9064ffffffffff165f5260205260405f2090565b5f1981146105cc5760010190565b600160401b821161052a5780549082815581831061121c57505050565b5f526005600660205f208183818188010483019501040193060280611254575b505b818110611249575050565b5f815560010161123e565b5f198201908154905f199060200360031b1c1690555f61123c565b9064ffffffffff809160031b9316831b921b19161790565b815190916001600160401b03821161052a5760206112b4916112a984866111ff565b01925f5260205f2090565b60068204915f5b83811061131e5750600683029003806112d5575b50505050565b925f935f5b8181106112ef5750505001555f8080806112cf565b9091946020611314600192611309895164ffffffffff1690565b90856005029061126f565b96019291016112da565b5f5f5b600681106113365750838201556001016112bb565b9590602061135a60019261134f855164ffffffffff1690565b908a6005029061126f565b92019601611321565b90915f90600983019261137584610fef565b906113808251611197565b925f5b8351811015611438576113a461139982866111c9565b5164ffffffffff1690565b6113c96113b482600887016111dd565b546113c283600a88016111dd565b549061066c565b908115159081611425575b5061141257508061140c6113ed611399600194886111c9565b6114006113f98a6111f1565b99896111c9565b9064ffffffffff169052565b01611383565b61141f90600192996105d1565b9761140c565b905064ffffffffff42911611155f6113d4565b5094915050611057928252611287565b91925f916001600160a01b0381166114ed5750600983019261146984610fef565b906114748251611197565b925f5b83518110156114385761148d61139982866111c9565b61149d6113b482600887016111dd565b9081151590816114da575b506114c75750806114c16113ed611399600194886111c9565b01611477565b6114d490600192996105d1565b976114c1565b905064ffffffffff42911611155f6114a8565b9391600784019361150661150187876105de565b610fef565b956115118751611197565b935f5b88518110156115da5761152a611399828b6111c9565b6115408161153b86600689016105de565b6111dd565b54801515806115c9575b61157c575050806115766115636113996001948d6111c9565b61140061156f896111f1565b988a6111c9565b01611514565b61158a81600194939a6105d1565b98600a87018261159a83836111dd565b5410156115aa575b505050611576565b6115bf916115b7916111dd565b91825461066c565b90555f80806115a2565b504264ffffffffff8316111561154a565b50959091506110579496506115f09284526105de565b611287565b64ffffffffff62093a809116019064ffffffffff82116105cc57565b9390919495929564ffffffffff5f91169081156117ad57861561179e5761163b88959798956118f2565b97935b64ffffffffff891664ffffffffff851681116116dc576116738461166e61166861038c8b8f610eb7565b8961063c565b610f15565b9160016001607f1b0383116116cd578a9264ffffffffff916116a1916001600160801b0316600f0b90610b70565b9716036116ba575b6116b390986115f5565b979461163e565b6116c691945f88611942565b92876116a9565b63dbdeca0f60e01b5f5260045ffd5b5094939750959450905f84600f0b12611795575b64ffffffffff811664ffffffffff84161461177a5761171861038c61171e9461166e93610eb7565b8761063c565b9060016001607f1b0382116116cd57611743916001600160801b0316600f0b90610b70565b5f81600f0b12611772575b831561176b575b5f81600f0b125f1461176757505f9290565b9290565b505f611755565b91508161174e565b505050831561176b575f81600f0b125f1461176757505f9290565b945082946116f0565b505f9650869550859450505050565b63339bfa2360e11b5f5260045ffd5b94969390929695919564ffffffffff5f91169081156117ad5787156118b2576117e889969899966118f2565b98945b64ffffffffff8a1664ffffffffff851681116118765761181c8461166e61181661038c8f8d90610eb7565b8a61063c565b9160016001607f1b0383116116cd578b9264ffffffffff9161184a916001600160801b0316600f0b90610b70565b981603611863575b61185c90996115f5565b98956117eb565b61186f91958589611942565b9388611852565b509594985096955091505f84600f0b126117955764ffffffffff811664ffffffffff84161461177a5761171861038c61171e9461166e93610eb7565b505f975087965086955050505050565b816706f05b59d3b2000019048111158215171561007957670de0b6b3a764000091026706f05b59d3b20000010490565b64ffffffffff1664ffffffffff62093a8061190f81808504610a0f565b9206166119325764ffffffffff805f5b1691160164ffffffffff81116105cc5790565b64ffffffffff8062093a8061191f565b919290916001600160a01b03831615806119eb575b61199c5760060161196c8261153b85846105de565b546119775750505090565b6119849261153b916105de565b54818111156119935750505f90565b61059a9161066c565b9150600a6119ad82600885016111dd565b549201926119c56119be83866111dd565b54826105d1565b8311156119d457505050505f90565b6119e46108529261059a956111dd565b54906105d1565b506119f982600883016111dd565b54151561195756fea2646970667358221220ffe9b7c168b911d276416321a339a31042e5a87a62d0477e2cdb8326213eb0a464736f6c634300081e0033";
19
19
  static readonly abi: readonly [{
20
20
  readonly inputs: readonly [];
21
21
  readonly name: "GlobalLessThanUser";
@@ -15,7 +15,7 @@ export declare class RewardLib__factory extends ContractFactory {
15
15
  deploymentTransaction(): ContractTransactionResponse;
16
16
  }>;
17
17
  connect(runner: ContractRunner | null): RewardLib__factory;
18
- static readonly bytecode = "0x60808060405234601b57610ba290816100208239308160320152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80630ec61d1414610464576313e4771e1461002f575f80fd5b307f0000000000000000000000000000000000000000000000000000000000000000146104365761005f36610486565b6001600160a01b038083165f8181526020978852604080822093871682529688528681209181529652939094209493909290919061009c84610855565b9481549463ffffffff8854169486861461017d576100ba90866104cc565b9580871161045c575b505f9687946001600160a01b0381169473__$722770e92751af7c18db862b2d8e717318$__94885b8a811061018c578c8c8c8c8c1561017d5790600284015b818310610130575b50505063ffffffff6101208354928284166104cc565b63ffffffff199092169116179055005b909192835f528160205260ff600260405f20015460301c1615610177576001810180911161016357926001019190610102565b634e487b7160e01b5f52601160045260245ffd5b9261010a565b63162908e360e11b5f5260045ffd5b61019f61019982856104d9565b5061053c565b4363ffffffff8251161161044d578051604051630eedb1fb60e41b8152600481018590526001600160a01b038716602482015263ffffffff9091166044820152906020826064818c5af48015610442578f925f9161040a575b5060608201516001600160a01b03168b148015610402575b6103d057801515806103c3575b61022f575b5050506001905b016100eb565b83600284959d93940193815f528460205264ffffffffff600361025f82600260405f20015460081c16948b6104d9565b50015460a01c169081831015610390576102978f91604061028e6102878f6020850151610904565b80986105a6565b910151906105b9565b90805f528660205260ff600260405f200154161561035c575b501561034d578d8861033896946102f260019997958d95855f528860205260405f20549063ffffffff60036102e589896104d9565b50015460c81c169161093f565b9096845f52602052600260405f20019065ffffffffff0082549160081b169065ffffffffff001916179055808611610343575b5084958d6103339596610a24565b6104cc565b9890508c5f80610222565b9450610333610325565b50505099905060019150610229565b848211610388575b5f908152602087905260409020818155600201805460ff191660011790558e6102b0565b849150610364565b50505050999060019250815f52602052600260405f2001660100000000000066ff00000000000019825416179055610229565b506040820151151561021d565b5050906002600192825f5201602052600260405f2001660100000000000066ff00000000000019825416179055610229565b508015610210565b9250506020823d821161043a575b8161042560209383610506565b81010312610436578e91515f6101f8565b5f80fd5b3d9150610418565b6040513d5f823e3d90fd5b631391e11b60e21b5f5260045ffd5b95505f6100c3565b602061047e61047236610486565b949390939291926105d7565b604051908152f35b60c0906003190112610436576004359060243590604435906064356001600160a01b038116810361043657906084356001600160a01b0381168103610436579060a43590565b9190820180921161016357565b80548210156104f2575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b90601f8019910116810190811067ffffffffffffffff82111761052857604052565b634e487b7160e01b5f52604160045260245ffd5b9060405160c0810181811067ffffffffffffffff8211176105285760405260a063ffffffff6003839582815416855260018101546020860152600281015460408601520154600180841b038116606085015264ffffffffff81841c16608085015260c81c16910152565b8181029291811591840414171561016357565b81156105c3570490565b634e487b7160e01b5f52601260045260245ffd5b6001600160a01b038086165f81815260209485526040808220938816825295855285812091815293529282209196959094909392919061061690610855565b9082549463ffffffff825416908682146108485761063490826104cc565b95808711610840575b5073__$722770e92751af7c18db862b2d8e717318$__905b868110610666575050505050505050565b61067361019982876104d9565b60608101516001600160a01b03888116911614610837578051604051630eedb1fb60e41b8152600481018b90526001600160a01b038916602482015263ffffffff909116604482015290602082606481875af4918215610442575f92610804575b50811515806107f7575b6106ef575b50506001905b01610655565b91809b9260028601825f528060205264ffffffffff600361071d82600260405f20015460081c16958c6104d9565b50015460a01c1691828410156107e9579061074e8f9392604061028e6107478d6020850151610904565b80996105a6565b90835f528060205260405f2054935f5260205260ff600260405f20015416156107d0575b5081156107c3576107b39361079d8f946107ad948b9463ffffffff60038f60019c9a6102e5916104d9565b50908082116107bb575b50610a02565b906104cc565b99905f6106e3565b90505f6107a7565b50505050986001906106e9565b9091508381116107e2575b905f610772565b50826107db565b5050505050986001906106e9565b50604081015115156106de565b9091506020813d821161082f575b8161081f60209383610506565b810103126104365751905f6106d4565b3d9150610812565b506001906106e9565b95505f61063d565b505f985050505050505050565b60405163313ce56760e01b81529190602090839060049082906001600160a01b03165afa918215610442575f926108a4575b50601260ff83161161089557565b63180d062b60e31b5f5260045ffd5b9091506020813d6020116108da575b816108c060209383610506565b81010312610436575160ff8116810361043657905f610887565b3d91506108b3565b60ff166012039060ff821161016357565b60ff16604d811161016357600a0a90565b90601260ff82161461092e579061092561092061092b936108e2565b6108f3565b906105a6565b90565b5090565b9190820391821161016357565b909392919361070861095863ffffffff5f971642610932565b04600181018091116101635764ffffffffff169064ffffffffff811690818310156109f8575b5061098991926105b9565b5f9183915b64ffffffffff821664ffffffffff8416106109c15750505064ffffffffff80911691160164ffffffffff81116101635790565b909192956109d58264ffffffffff926104cc565b961664ffffffffff8114610163576001908101930164ffffffffff16919061098e565b915061098961097e565b90601260ff82161461092e5790610a1e61092061092b936108e2565b906105b9565b929091928015610b6457610a4190610a3b84610855565b90610a02565b9260018201918254906002610a5687846104cc565b910154809111610b4d575b505080600160029201610a758682546104cc565b9055855f5201602052600160405f2001610a908482546104cc565b9055610a9d8382546104cc565b905560405163a9059cbb60e01b60208281019182526001600160a01b03968716602484018190526044808501879052845296939093169492915f9190610ae4606482610506565b519082875af115610442575f513d610b445750823b155b610b31577ff3d804b61a64faf0efebbb149ce09c7269a116f5d28dd046d4a848bcf36049c39160409182519182526020820152a3565b82635274afe760e01b5f5260045260245ffd5b60011415610afb565b600292955090610b5c91610932565b93905f610a61565b50505050505056fea2646970667358221220bb4ffacfeac3d0a89431543beaaf87cb2ca4d5c2faaf52642623b4b18e0f4fca64736f6c634300081e0033";
18
+ static readonly bytecode = "0x60808060405234601b57610baa90816100208239308160320152f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80630ec61d141461044f576313e4771e1461002f575f80fd5b307f0000000000000000000000000000000000000000000000000000000000000000146104215761005f36610471565b6001600160a01b038083165f8181526020978852604080822093871682529688528681209181529652939094209493909290919061009c8461085c565b9481549463ffffffff8854169486861461017d576100ba90866104b7565b95808711610447575b505f9687946001600160a01b0381169473__$722770e92751af7c18db862b2d8e717318$__94885b8a811061018c578c8c8c8c8c1561017d5790600284015b818310610130575b50505063ffffffff6101208354928284166104b7565b63ffffffff199092169116179055005b909192835f528160205260ff600260405f20015460301c1615610177576001810180911161016357926001019190610102565b634e487b7160e01b5f52601160045260245ffd5b9261010a565b63162908e360e11b5f5260045ffd5b61019f61019982856104c4565b50610528565b4363ffffffff825116116104385780602063ffffffff6101d793511660405180948192630eedb1fb60e41b83528a8960048501610593565b03818c5af4801561042d578f925f916103f5575b5060608201516001600160a01b03168b1480156103ed575b6103c157801515806103b4575b610222575b5050506001905b016100eb565b83600284959d93940193815f528460205264ffffffffff600361025282600260405f20015460081c16948b6104c4565b50015460a01c1690818310156103835761028a8f91604061028161027a8f602085015161090b565b80986105b9565b910151906105cc565b90805f528660205260ff600260405f200154161561034f575b5015610340578d8861032b96946102e560019997958d95855f528860205260405f20549063ffffffff60036102d889896104c4565b50015460c81c1691610946565b9096845f52602052600260405f20019065ffffffffff0082549160081b169065ffffffffff001916179055808611610336575b5084958d6103269596610a2c565b6104b7565b9890508c5f80610215565b9450610326610318565b5050509990506001915061021c565b84821161037b575b5f908152602087905260409020818155600201805460ff191660011790558e6102a3565b849150610357565b5050505f8c8152602093909352506040909120600201805460ff60301b1916600160301b179055986001915061021c565b5060408201511515610210565b50505f82815260029182016020526040902001805460ff60301b1916600160301b17905560019061021c565b508015610203565b9250506020823d8211610425575b81610410602093836104f1565b81010312610421578e91515f6101eb565b5f80fd5b3d9150610403565b6040513d5f823e3d90fd5b631391e11b60e21b5f5260045ffd5b95505f6100c3565b602061046961045d36610471565b949390939291926105ea565b604051908152f35b60c0906003190112610421576004359060243590604435906064356001600160a01b038116810361042157906084356001600160a01b0381168103610421579060a43590565b9190820180921161016357565b80548210156104dd575f5260205f209060021b01905f90565b634e487b7160e01b5f52603260045260245ffd5b601f909101601f19168101906001600160401b0382119082101761051457604052565b634e487b7160e01b5f52604160045260245ffd5b60405190919060c081016001600160401b038111828210176105145760405260a063ffffffff6003839582815416855260018101546020860152600281015460408601520154600180841b038116606085015264ffffffffff81841c16608085015260c81c16910152565b9081526001600160a01b03909116602082015263ffffffff909116604082015260600190565b8181029291811591840414171561016357565b81156105d6570490565b634e487b7160e01b5f52601260045260245ffd5b6001600160a01b038086165f8181526020948552604080822093881682529585528581209181529352928220919695909490939291906106299061085c565b9082549463ffffffff8254169086821461084f5761064790826104b7565b95808711610847575b5073__$722770e92751af7c18db862b2d8e717318$__905b868110610679575050505050505050565b61068661019982876104c4565b60608101516001600160a01b0388811691161461083e5763ffffffff815116906020888b6106c86040519586938493630eedb1fb60e41b855260048501610593565b0381875af491821561042d575f9261080b575b50811515806107fe575b6106f6575b50506001905b01610668565b91809b9260028601825f528060205264ffffffffff600361072482600260405f20015460081c16958c6104c4565b50015460a01c1691828410156107f057906107558f9392604061028161074e8d602085015161090b565b80996105b9565b90835f528060205260405f2054935f5260205260ff600260405f20015416156107d7575b5081156107ca576107ba936107a48f946107b4948b9463ffffffff60038f60019c9a6102d8916104c4565b50908082116107c2575b50610a0a565b906104b7565b99905f6106ea565b90505f6107ae565b50505050986001906106f0565b9091508381116107e9575b905f610779565b50826107e2565b5050505050986001906106f0565b50604081015115156106e5565b9091506020813d8211610836575b81610826602093836104f1565b810103126104215751905f6106db565b3d9150610819565b506001906106f0565b95505f610650565b505f985050505050505050565b60405163313ce56760e01b81529190602090839060049082906001600160a01b03165afa91821561042d575f926108ab575b50601260ff83161161089c57565b63180d062b60e31b5f5260045ffd5b9091506020813d6020116108e1575b816108c7602093836104f1565b81010312610421575160ff8116810361042157905f61088e565b3d91506108ba565b60ff166012039060ff821161016357565b60ff16604d811161016357600a0a90565b90601260ff821614610935579061092c610927610932936108e9565b6108fa565b906105b9565b90565b5090565b9190820391821161016357565b909392919362093a8061096063ffffffff5f971642610939565b04600181018091116101635764ffffffffff169064ffffffffff81169081831015610a00575b5061099191926105cc565b5f9183915b64ffffffffff821664ffffffffff8416106109c95750505064ffffffffff80911691160164ffffffffff81116101635790565b909192956109dd8264ffffffffff926104b7565b961664ffffffffff8114610163576001908101930164ffffffffff169190610996565b9150610991610986565b90601260ff8216146109355790610a26610927610932936108e9565b906105cc565b929091928015610b6c57610a4990610a438461085c565b90610a0a565b9260018201918254906002610a5e87846104b7565b910154809111610b55575b505080600160029201610a7d8682546104b7565b9055855f5201602052600160405f2001610a988482546104b7565b9055610aa58382546104b7565b905560405163a9059cbb60e01b60208281019182526001600160a01b03968716602484018190526044808501879052845296939093169492915f9190610aec6064826104f1565b519082875af11561042d575f513d610b4c5750823b155b610b39577ff3d804b61a64faf0efebbb149ce09c7269a116f5d28dd046d4a848bcf36049c39160409182519182526020820152a3565b82635274afe760e01b5f5260045260245ffd5b60011415610b03565b600292955090610b6491610939565b93905f610a69565b50505050505056fea26469706673582212202003306f90804731faa6391c64da4af34aade2ac938e44961b06373b5e2dba4464736f6c634300081e0033";
19
19
  static readonly abi: readonly [{
20
20
  readonly inputs: readonly [];
21
21
  readonly name: "InvalidAmount";
@@ -14,7 +14,7 @@ export declare class TimeWeightedAverage__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): TimeWeightedAverage__factory;
17
- static readonly bytecode = "0x608080604052346019576102be908161001e823930815050f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c6351604b5314610024575f80fd5b604036600319011261023e5760043567ffffffffffffffff811161023e573660238201121561023e57806004013567ffffffffffffffff811161022a5760405191601f19603f8360051b0116830183811067ffffffffffffffff82111761022a576040528183526024602084019260071b8201019036821161023e57602401915b8183106101d057836024355f80805b845182101561018e576100c78286610242565b51518411156101845760206100dc8387610242565b51015184111561017e5760206100f28387610242565b5101515b6101008387610242565b5151810390811161016a578060406101188589610242565b5101510291610127828461026a565b6040610133868a610242565b5101510361015b57600192606061014a868a610242565b51015102019301915b0190916100b4565b63f20577e560e01b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b836100f6565b9190600190610153565b9050816101a357505060205f5b604051908152f35b670de0b6b3a76400008202918204670de0b6b3a76400000361016a576020916101cb9161026a565b61019b565b60808336031261023e5760405190608082019082821067ffffffffffffffff83111761022a5760809260209260405285358152828601358382015260408601356040820152606086013560608201528152019201916100a5565b634e487b7160e01b5f52604160045260245ffd5b5f80fd5b80518210156102565760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b8115610274570490565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220a626525a31a6ba16fa23de2371cee2e41ff6b3dbe908c075e4484874fae8effe64736f6c634300081e0033";
17
+ static readonly bytecode = "0x608080604052346019576102bb908161001e823930815050f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c6351604b5314610024575f80fd5b604036600319011261023b576004356001600160401b03811161023b573660238201121561023b5760048101356001600160401b0381116102275760405191600582901b603f01601f191683016001600160401b03811184821017610227576040528183526024602084019260071b8201019036821161023b57602401915b8183106101ce57836024355f80805b845182101561018c576100c5828661023f565b51518411156101825760206100da838761023f565b51015184111561017c5760206100f0838761023f565b5101515b6100fe838761023f565b5151810390811161016857806040610116858961023f565b51015102916101258284610267565b6040610131868a61023f565b51015103610159576001926060610148868a61023f565b51015102019301915b0190916100b2565b63f20577e560e01b5f5260045ffd5b634e487b7160e01b5f52601160045260245ffd5b836100f4565b9190600190610151565b9050816101a157505060205f5b604051908152f35b670de0b6b3a76400008202918204670de0b6b3a764000003610168576020916101c991610267565b610199565b60808336031261023b576040519060808201906001600160401b038211838310176102275760809260209260405285358152828601358382015260408601356040820152606086013560608201528152019201916100a3565b634e487b7160e01b5f52604160045260245ffd5b5f80fd5b80518210156102535760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b8115610271570490565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212206116320f7c875db4edfd760c42faee26ed57786acc53b34f5063cedfd222fad264736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "InvalidTime";
@@ -14,7 +14,7 @@ export declare class LendingPoolFeeLibrary__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): LendingPoolFeeLibrary__factory;
17
- static readonly bytecode = "0x60808060405234601b5761057890816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c80630b8a98961461023a578063a10f4564146100a45763c0b6476b1461005d575f80fd5b6100a05760603660031901126100a05761007561027b565b604435906001600160a01b03821682036100a0576020916100989160043561047d565b604051908152f35b5f80fd5b506100a05760803660031901126100a0576004356001600160a01b038116908190036100a0576064356001600160a01b0381169190602435908381036100a057831561022b57811561021c57602082610161926101306040516323b872dd60e01b858201523360248201523060448201528360648201526064815261012a608482610291565b876104ea565b60405163095ea7b360e01b81526001600160a01b039091166004820152602481019190915291829081906044820190565b03815f875af19081156101e3575f916101fd575b50156101ee5760846020925f6040519586948593636033e31560e01b85526004850152306024850152604484015260443560648401525af180156101e3576101b957005b6101da9060203d6020116101dc575b6101d28183610291565b8101906102c7565b005b503d6101c8565b6040513d5f823e3d90fd5b6340b27c2160e11b5f5260045ffd5b610216915060203d6020116101dc576101d28183610291565b5f610175565b63162908e360e11b5f5260045ffd5b6303988b8160e61b5f5260045ffd5b506100a05760403660031901126100a05761025e61025661027b565b6004356102df565b604080516001600160a01b03939093168352602083019190915290f35b602435906001600160a01b03821682036100a057565b90601f8019910116810190811067ffffffffffffffff8211176102b357604052565b634e487b7160e01b5f52604160045260245ffd5b908160209103126100a0575180151581036100a05790565b90916001600160a01b0383165f811561022b57600784018054600186015495546001600160a01b03908116979296919291169082156104725781975f849855803b156100a057604051635c921eb960e01b815230600482015260248101859052905f908290604490829084905af180156101e35761045c575b5060405163095ea7b360e01b81526001600160a01b039190911660048201526024810183905260208160448187865af1908115610451578491610432575b501561042357906084602092846040519687948593636033e31560e01b8552600485015230602485015260448401527faa072a75f148988e1647e65b0d00c2928a6ed1bc51c4671e0ac15252c77dc49560648401525af190811561041757506103fc5750565b6104149060203d6020116101dc576101d28183610291565b50565b604051903d90823e3d90fd5b6340b27c2160e11b8352600483fd5b61044b915060203d6020116101dc576101d28183610291565b5f610396565b6040513d86823e3d90fd5b6104699194505f90610291565b5f926020610358565b5095505f9450505050565b92916001840180549485156104e15742600291909101555f905560405163a9059cbb60e01b60208201526001600160a01b03919091166024820152604480820185905281526104df916104d1606483610291565b6001600160a01b03166104ea565b565b505f9450505050565b905f602091828151910182855af1156101e3575f513d61053957506001600160a01b0381163b155b6105195750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b6001141561051256fea26469706673582212201a94bf617704b6870c5c94dd9ac61d1c8612acdf840ddfc7ab9f613fd424841064736f6c634300081e0033";
17
+ static readonly bytecode = "0x60808060405234601b5761056690816100208239308160070152f35b5f80fdfe6080604052307f0000000000000000000000000000000000000000000000000000000000000000146004361015610034575f80fd5b5f3560e01c80630b8a989614610224578063a10f4564146100a45763c0b6476b1461005d575f80fd5b6100a05760603660031901126100a05761007561025c565b604435906001600160a01b03821682036100a05760209161009891600435610470565b604051908152f35b5f80fd5b506100a05760803660031901126100a0576004356001600160a01b038116908190036100a0576064356001600160a01b0381169190602435908381036100a05783156102155781156102065760208261014b926101306040516323b872dd60e01b858201523360248201523060448201528360648201526064815261012a60848261028d565b876104d8565b60405163095ea7b360e01b8152938492839260048401610272565b03815f875af19081156101cd575f916101e7575b50156101d85760846020925f6040519586948593636033e31560e01b85526004850152306024850152604484015260443560648401525af180156101cd576101a357005b6101c49060203d6020116101c6575b6101bc818361028d565b8101906102c4565b005b503d6101b2565b6040513d5f823e3d90fd5b6340b27c2160e11b5f5260045ffd5b610200915060203d6020116101c6576101bc818361028d565b5f61015f565b63162908e360e11b5f5260045ffd5b6303988b8160e61b5f5260045ffd5b506100a05760403660031901126100a05761024861024061025c565b6004356102dc565b9061025860405192839283610272565b0390f35b602435906001600160a01b03821682036100a057565b6001600160a01b039091168152602081019190915260400190565b601f909101601f19168101906001600160401b038211908210176102b057604052565b634e487b7160e01b5f52604160045260245ffd5b908160209103126100a0575180151581036100a05790565b90916001600160a01b0383165f811561021557600784018054600186015495546001600160a01b03908116979296919291169082156104655781975f849855803b156100a0575f6040518092635c921eb960e01b82528183816103438a3060048401610272565b03925af180156101cd5761044f575b5060208361037592604051938492839263095ea7b360e01b845260048401610272565b038187865af1908115610444578491610425575b501561041657906084602092846040519687948593636033e31560e01b8552600485015230602485015260448401527faa072a75f148988e1647e65b0d00c2928a6ed1bc51c4671e0ac15252c77dc49560648401525af190811561040a57506103ef5750565b6104079060203d6020116101c6576101bc818361028d565b50565b604051903d90823e3d90fd5b6340b27c2160e11b8352600483fd5b61043e915060203d6020116101c6576101bc818361028d565b5f610389565b6040513d86823e3d90fd5b61045c9194505f9061028d565b5f926020610352565b5095505f9450505050565b92916001840180549485156104cf5785925f6104cd95936104bf93600242910155556104b160405194859263a9059cbb60e01b602085015260248401610272565b03601f19810184528361028d565b6001600160a01b03166104d8565b565b505f9450505050565b905f602091828151910182855af1156101cd575f513d61052757506001600160a01b0381163b155b6105075750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b6001141561050056fea2646970667358221220cb7c47ec8153b1d0c7c5ee0a346716d70fe3dc329559e3158e91474d534cdec264736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "AddressCannotBeZero";
@@ -14,7 +14,7 @@ export declare class ReserveLibrary__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): ReserveLibrary__factory;
17
- static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220cc9321c61207666a238c3116d156055f9e05ae6a3e193e6f8dd2725123a3ff0564736f6c634300081e0033";
17
+ static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220ed1ba08edfccf04051538385e1d6fe46d7483f8a19cfb229e339a53b1c382c5f64736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "InsufficientLiquidity";
@@ -14,7 +14,7 @@ export declare class StringUtils__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): StringUtils__factory;
17
- static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220bb377557d606d53cfd481579e0ca109531f9e160de35139698d66b63d52ac5d064736f6c634300081e0033";
17
+ static readonly bytecode = "0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122028921ca1ee46c5c706f72e2a7a02f259ba377a7d8eedc5a3f5d8508b651d2d9764736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "NonNumericCharacter";
@@ -14,7 +14,7 @@ export declare class ERC20BurnableMock__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): ERC20BurnableMock__factory;
17
- static readonly bytecode = "0x60a06040523461033057610bae8038038061001981610334565b9283398101906060818303126103305780516001600160401b0381116103305782610045918301610359565b60208201519092906001600160401b03811161033057604091610069918401610359565b91015160ff811681036103305782516001600160401b03811161024157600354600181811c91168015610326575b602082101461022357601f81116102c3575b506020601f821160011461026057819293945f92610255575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161024157600454600181811c91168015610237575b602082101461022357601f81116101c0575b50602092601f821160011461015f57928192935f92610154575b50508160011b915f199060031b1c1916176004555b6080526040516107eb90816103c38239608051816103810152f35b015190505f80610124565b601f1982169360045f52805f20915f5b8681106101a85750836001959610610190575b505050811b01600455610139565b01515f1960f88460031b161c191690555f8080610182565b9192602060018192868501518155019401920161016f565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c81019160208410610219575b601f0160051c01905b81811061020e575061010a565b5f8155600101610201565b90915081906101f8565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060035f52805f20915f5b8181106102ab57509583600195969710610293575b505050811b016003556100d7565b01515f1960f88460031b161c191690555f8080610285565b9192602060018192868b015181550194019201610270565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061031c575b601f0160051c01905b81811061031157506100a9565b5f8155600101610304565b90915081906102fb565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761024157604052565b81601f82011215610330578051906001600160401b03821161024157610388601f8301601f1916602001610334565b9282845260208383010111610330575f5b8281106103ad57505060205f918301015290565b8060208092840101518282870101520161039956fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde03146104a257508063095ea7b3146103fa57806318160ddd146103dd57806323b872dd146103a5578063313ce5671461036857806340c10f19146102c657806342966c68146102a957806370a082311461027257806379cc67901461024057806395d89b4114610125578063a9059cbb146100f45763dd62ed3e146100a0575f80fd5b346100f05760403660031901126100f0576100b96105b8565b6100c16105ce565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100f05760403660031901126100f05761011a6101106105b8565b6024359033610687565b602060405160018152f35b346100f0575f3660031901126100f0576040515f6004548060011c90600181168015610236575b6020831081146102225782855290811561020657506001146101b1575b50819003601f01601f191681019067ffffffffffffffff82118183101761019d5761019982918260405282610571565b0390f35b634e487b7160e01b5f52604160045260245ffd5b905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5f905b8282106101f057506020915082010182610169565b60018160209254838588010152019101906101db565b90506020925060ff191682840152151560051b82010182610169565b634e487b7160e01b5f52602260045260245ffd5b91607f169161014c565b346100f05760403660031901126100f05761027061025c6105b8565b6024359061026b8233836105e4565b610731565b005b346100f05760203660031901126100f0576001600160a01b036102936105b8565b165f525f602052602060405f2054604051908152f35b346100f05760203660031901126100f05761027060043533610731565b346100f05760403660031901126100f0576102df6105b8565b6001600160a01b0316602435811561035557600254908082018092116103415760207fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef915f9360025584845283825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b346100f0575f3660031901126100f057602060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f05760603660031901126100f05761011a6103c16105b8565b6103c96105ce565b604435916103d88333836105e4565b610687565b346100f0575f3660031901126100f0576020600254604051908152f35b346100f05760403660031901126100f0576104136105b8565b60243590331561048f576001600160a01b031690811561047c57335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346100f0575f3660031901126100f0575f6003548060011c90600181168015610567575b6020831081146102225782855290811561020657506001146105125750819003601f01601f191681019067ffffffffffffffff82118183101761019d5761019982918260405282610571565b905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5f905b82821061055157506020915082010182610169565b600181602092548385880101520191019061053c565b91607f16916104c6565b9190916020815282518060208301525f5b8181106105a2575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610582565b600435906001600160a01b03821682036100f057565b602435906001600160a01b03821682036100f057565b6001600160a01b039081165f818152600160209081526040808320948616835293905291909120549291905f19841061061e575b50505050565b82841061066457801561048f576001600160a01b0382161561047c575f52600160205260405f209060018060a01b03165f5260205260405f20910390555f808080610618565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b031690811561071e576001600160a01b031691821561035557815f525f60205260405f205481811061070557817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b9091906001600160a01b0316801561071e57805f525f60205260405f205483811061079b576020845f94957fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef938587528684520360408620558060025403600255604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffdfea2646970667358221220cea1c52359143eb3a54fb9b6e72e568a7df0b75ba6cb0cd7382b48b8a9ac40ce64736f6c634300081e0033";
17
+ static readonly bytecode = "0x60a06040523461033057610b958038038061001981610334565b9283398101906060818303126103305780516001600160401b0381116103305782610045918301610359565b60208201519092906001600160401b03811161033057604091610069918401610359565b91015160ff811681036103305782516001600160401b03811161024157600354600181811c91168015610326575b602082101461022357601f81116102c3575b506020601f821160011461026057819293945f92610255575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161024157600454600181811c91168015610237575b602082101461022357601f81116101c0575b50602092601f821160011461015f57928192935f92610154575b50508160011b915f199060031b1c1916176004555b6080526040516107d290816103c382396080518161036e0152f35b015190505f80610124565b601f1982169360045f52805f20915f5b8681106101a85750836001959610610190575b505050811b01600455610139565b01515f1960f88460031b161c191690555f8080610182565b9192602060018192868501518155019401920161016f565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c81019160208410610219575b601f0160051c01905b81811061020e575061010a565b5f8155600101610201565b90915081906101f8565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100f8565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100c2565b601f1982169060035f52805f20915f5b8181106102ab57509583600195969710610293575b505050811b016003556100d7565b01515f1960f88460031b161c191690555f8080610285565b9192602060018192868b015181550194019201610270565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061031c575b601f0160051c01905b81811061031157506100a9565b5f8155600101610304565b90915081906102fb565b90607f1690610097565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761024157604052565b81601f82011215610330578051906001600160401b03821161024157610388601f8301601f1916602001610334565b9282845260208383010111610330575f5b8281106103ad57505060205f918301015290565b8060208092840101518282870101520161039956fe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde031461048f57508063095ea7b3146103e757806318160ddd146103ca57806323b872dd14610392578063313ce5671461035557806340c10f19146102c657806342966c68146102a957806370a082311461027257806379cc67901461024057806395d89b4114610125578063a9059cbb146100f45763dd62ed3e146100a0575f80fd5b346100f05760403660031901126100f0576100b96105a5565b6100c16105bb565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100f05760403660031901126100f05761011a6101106105a5565b6024359033610674565b602060405160018152f35b346100f0575f3660031901126100f0576040515f6004548060011c90600181168015610236575b6020831081146102225782855290811561020657506001146101b0575b50819003601f01601f19168101906001600160401b0382118183101761019c576101988291826040528261055e565b0390f35b634e487b7160e01b5f52604160045260245ffd5b60045f9081529091507f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b5b8282106101f057506020915082010182610169565b60018160209254838588010152019101906101db565b90506020925060ff191682840152151560051b82010182610169565b634e487b7160e01b5f52602260045260245ffd5b91607f169161014c565b346100f05760403660031901126100f05761027061025c6105a5565b6024359061026b8233836105d1565b61070b565b005b346100f05760203660031901126100f0576001600160a01b036102936105a5565b165f525f602052602060405f2054604051908152f35b346100f05760203660031901126100f0576102706004353361070b565b346100f05760403660031901126100f0576102df6105a5565b6001600160a01b03166024358115610342576002549080820180921161032e5760205f51602061077d5f395f51905f52915f9360025584845283825260408420818154019055604051908152a3005b634e487b7160e01b5f52601160045260245ffd5b63ec442f0560e01b5f525f60045260245ffd5b346100f0575f3660031901126100f057602060405160ff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b346100f05760603660031901126100f05761011a6103ae6105a5565b6103b66105bb565b604435916103c58333836105d1565b610674565b346100f0575f3660031901126100f0576020600254604051908152f35b346100f05760403660031901126100f0576104006105a5565b60243590331561047c576001600160a01b031690811561046957335f52600160205260405f20825f526020528060405f20556040519081527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203392a3602060405160018152f35b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b346100f0575f3660031901126100f0575f6003548060011c90600181168015610554575b6020831081146102225782855290811561020657506001146104fe5750819003601f01601f19168101906001600160401b0382118183101761019c576101988291826040528261055e565b60035f9081529091507fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b5b82821061053e57506020915082010182610169565b6001816020925483858801015201910190610529565b91607f16916104b3565b9190916020815282518060208301525f5b81811061058f575060409293505f838284010152601f8019910116010190565b806020809287010151604082860101520161056f565b600435906001600160a01b03821682036100f057565b602435906001600160a01b03821682036100f057565b6001600160a01b039081165f818152600160209081526040808320948616835293905291909120549291905f19841061060b575b50505050565b82841061065157801561047c576001600160a01b03821615610469575f52600160205260405f209060018060a01b03165f5260205260405f20910390555f808080610605565b508290637dc7a0d960e11b5f5260018060a01b031660045260245260445260645ffd5b6001600160a01b03169081156106f8576001600160a01b031691821561034257815f525f60205260405f20548181106106df57815f51602061077d5f395f51905f5292602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b9091906001600160a01b031680156106f857805f525f60205260405f2054838110610762576020845f94955f51602061077d5f395f51905f52938587528684520360408620558060025403600255604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122092e00d0544c44aa080e1fec281cbbd7e6cc38e1a8b9e0aae4522505d8daee16b64736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [{
20
20
  readonly internalType: "string";
@@ -14,7 +14,7 @@ export declare class MockTreasury__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): MockTreasury__factory;
17
- static readonly bytecode = "0x608080604052346015576103ad908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063450ceca7146102aa57806347e7ef24146101c357806369328dec146100805763f8b2cb4f14610045575f80fd5b3461007c57602036600319011261007c576001600160a01b036100666102e5565b165f525f602052602060405f2054604051908152f35b5f80fd5b3461007c57606036600319011261007c576100996102e5565b6044356001600160a01b038116916024359183900361007c576001600160a01b03169081156101b45782156101a557815f525f6020528060405f20541061019657815f525f60205260405f206100f082825461036a565b90556100fe8160015461036a565b6001556040519063a9059cbb60e01b82528360048301528060248301526020826044815f875af190811561018b577fcbcdbdf10631a43cc99c80acace8232649421c3f4f73919f16013d47c83a687a92602092610160575b50604051908152a3005b61017f90833d8511610184575b61017781836102fb565b810190610331565b610156565b503d61016d565b6040513d5f823e3d90fd5b631e9acf1760e31b5f5260045ffd5b634e46966960e11b5f5260045ffd5b63e6c4247b60e01b5f5260045ffd5b3461007c57604036600319011261007c576101dc6102e5565b6001600160a01b031660243581156101b457801561029b576040516323b872dd60e01b815233600482015230602482015260448101829052906020826064815f875af190811561018b577f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c492602092610280575b50835f525f825260405f20610266828254610349565b905561027481600154610349565b600155604051908152a2005b61029690833d85116101845761017781836102fb565b610250565b63162908e360e11b5f5260045ffd5b3461007c57604036600319011261007c576102c36102e5565b6001600160a01b03165f90815260208190526040902060243590819055600155005b600435906001600160a01b038216820361007c57565b90601f8019910116810190811067ffffffffffffffff82111761031d57604052565b634e487b7160e01b5f52604160045260245ffd5b9081602091031261007c5751801515810361007c5790565b9190820180921161035657565b634e487b7160e01b5f52601160045260245ffd5b919082039182116103565756fea2646970667358221220d051f158856bab750e6f8901c1e8199384b42d26b42f5ae0745aed3a103fb86564736f6c634300081e0033";
17
+ static readonly bytecode = "0x608080604052346015576103ae908161001a8239f35b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063450ceca7146102aa57806347e7ef24146101c357806369328dec146100805763f8b2cb4f14610045575f80fd5b3461007c57602036600319011261007c576001600160a01b036100666102e5565b165f525f602052602060405f2054604051908152f35b5f80fd5b3461007c57606036600319011261007c576100996102e5565b6044356001600160a01b038116916024359183900361007c576001600160a01b03169081156101b45782156101a557815f525f6020528060405f20541061019657815f525f60205260405f206100f082825461036b565b90556100fe8160015461036b565b6001556040519063a9059cbb60e01b82528360048301528060248301526020826044815f875af190811561018b577fcbcdbdf10631a43cc99c80acace8232649421c3f4f73919f16013d47c83a687a92602092610160575b50604051908152a3005b61017f90833d8511610184575b61017781836102fb565b810190610332565b610156565b503d61016d565b6040513d5f823e3d90fd5b631e9acf1760e31b5f5260045ffd5b634e46966960e11b5f5260045ffd5b63e6c4247b60e01b5f5260045ffd5b3461007c57604036600319011261007c576101dc6102e5565b6001600160a01b031660243581156101b457801561029b576040516323b872dd60e01b815233600482015230602482015260448101829052906020826064815f875af190811561018b577f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c492602092610280575b50835f525f825260405f2061026682825461034a565b90556102748160015461034a565b600155604051908152a2005b61029690833d85116101845761017781836102fb565b610250565b63162908e360e11b5f5260045ffd5b3461007c57604036600319011261007c576102c36102e5565b6001600160a01b03165f90815260208190526040902060243590819055600155005b600435906001600160a01b038216820361007c57565b601f909101601f19168101906001600160401b0382119082101761031e57604052565b634e487b7160e01b5f52604160045260245ffd5b9081602091031261007c5751801515810361007c5790565b9190820180921161035757565b634e487b7160e01b5f52601160045260245ffd5b919082039182116103575756fea2646970667358221220df02699c423a15165d6d838794ea74759f21ccf88cdff88eefefbf89937308ad64736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly name: "InsufficientBalance";
@@ -14,7 +14,7 @@ export declare class MockWETH__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): MockWETH__factory;
17
- static readonly bytecode = "0x61010060405234610157577f439148f0bbc682ca079e46d6e2c2f0c1e3b820f1a291b069d8882abf8cf18dd96080527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960a0524660c05260405161006460408261015b565b60118152700577261707065642045746865722076313607c1b602090910152604080517f5afefa023603a382ac22bd36644e004cefabbfaf61d4180000d8dc2b10c168b8916100b3908261015b565b600181526020810190603160f81b82525190206040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261011760c08261015b565b51902060e052604051610db2908161019382396080518161056a015260a0518161077f015260c05181818161020f0152610679015260e051816106a10152f35b5f80fd5b601f909101601f19168101906001600160401b0382119082101761017e57604052565b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610022575b3615610018575f80fd5b610020610d28565b005b5f3560e01c806306fdde0314610a88578063095ea7b314610a0f57806318160ddd146109f0578063205c28781461097757806323b872dd146107d95780632e1a7d4d146107a257806330adf81f14610768578063313ce5671461074d5780633644e51514610666578063613255ab146105fc57806370a08231146105c55780637ecebe001461058d5780638237e538146105535780638b28d32f146105365780639555a942146103ce57806395d89b411461038a578063a9059cbb14610281578063b760faf914610232578063cd0d0096146101f8578063d0e30db0146101e5578063d9d98ce41461016c5763dd62ed3e0361000e573461016857604036600319011261016857610131610b5b565b610139610b71565b6001600160a01b039182165f908152600260209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461016857604036600319011261016857610185610b5b565b306001600160a01b03909116036101a05760206040515f8152f35b60405162461bcd60e51b815260206004820152601c60248201527f574554483a20666c617368206d696e74206f6e6c7920574554483130000000006044820152606490fd5b5f36600319011261016857610020610d28565b34610168575f3660031901126101685760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b6020366003190112610168576001600160a01b0361024e610b5b565b16805f525f60205260405f20610265348254610b87565b90555f5f516020610d5d5f395f51905f526020604051348152a3005b346101685760403660031901126101685761029a610b5b565b6001600160a01b031660243581151580610380575b1561031e57335f525f6020526102d58160405f20546102d082821015610cce565b610bea565b335f525f60205260405f2055815f525f60205260405f206102f7828254610b87565b90556040519081525f516020610d5d5f395f51905f5260203392a35b602060405160018152f35b61037b91505f80808093338252816020526103448160408420546102d082821015610b94565b338352826020526040832055816040518281525f516020610d5d5f395f51905f5260203392a3335af1610375610bf7565b50610c36565b610313565b50308214156102af565b34610168575f366003190112610168576103ca6040516103ab604082610aaf565b600681526505745544831360d41b602082015260405191829182610b14565b0390f35b34610168576060366003190112610168575f8080806103eb610b5b565b6103f3610b71565b6044359183906001600160a01b03163381036104a9575b808252816020526104268460408420546102d082821015610b94565b8183528260205260408320555f516020610d5d5f395f51905f526020604051868152a36001600160a01b03165af161045c610bf7565b501561046457005b60405162461bcd60e51b815260206004820152601b60248201527f574554483a204574686572207472616e73666572206661696c656400000000006044820152606490fd5b80825260026020908152604080842033855290915282205484831982036104d2575b505061040a565b816102d0826104e2941015610c82565b81835260026020526040832060018060a01b0333168452602052806040842055604051908152817f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203393a388846104cb565b34610168575f366003190112610168576020600354604051908152f35b34610168575f3660031901126101685760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b34610168576020366003190112610168576001600160a01b036105ae610b5b565b165f526001602052602060405f2054604051908152f35b34610168576020366003190112610168576001600160a01b036105e6610b5b565b165f525f602052602060405f2054604051908152f35b3461016857602036600319011261016857610615610b5b565b6001600160a01b0316300361065e576003546001600160701b03036001600160701b03811161064a576020905b604051908152f35b634e487b7160e01b5f52601160045260245ffd5b60205f610642565b34610168575f36600319011261016857467f0000000000000000000000000000000000000000000000000000000000000000036106c85760207f0000000000000000000000000000000000000000000000000000000000000000604051908152f35b60206106d2610ae5565b8181519101206001826040516106e9604082610aaf565b82815201603160f81b81522060405190838201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261074560c082610aaf565b519020610642565b34610168575f36600319011261016857602060405160128152f35b34610168575f3660031901126101685760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b34610168576020366003190112610168576100205f808080600435338252816020526103448160408420546102d082821015610b94565b34610168576060366003190112610168576107f2610b5b565b6107fa610b71565b604435916001600160a01b0316903382036108e9575b6001600160a01b031691821515806108df575b156108885760205f516020610d5d5f395f51905f5291835f525f82526108548160405f20546102d082821015610cce565b845f525f835260405f2055845f525f825260405f20610874828254610b87565b9055604051908152a3602060405160018152f35b61037b92505f80809392818481958252816020526108b18360408420546102d082821015610b94565b8183528260205260408320555f516020610d5d5f395f51905f526020604051858152a3335af1610375610bf7565b5030831415610823565b5f8281526002602090815260408083203384529091529020548360018201610913575b5050610810565b816102d082610923941015610c82565b825f52600260205260405f2060018060a01b0333165f526020528060405f2055604051908152827f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560203393a3838361090c565b34610168576040366003190112610168576100205f808080610997610b5b565b60243590338352826020526109b78260408520546102d082821015610b94565b338452836020526040842055826040518381525f516020610d5d5f395f51905f5260203392a36001600160a01b03165af1610375610bf7565b34610168575f3660031901126101685760206106424760035490610b87565b3461016857604036600319011261016857610a28610b5b565b335f8181526002602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b34610168575f366003190112610168576103ca610aa3610ae5565b60405191829182610b14565b90601f8019910116810190811067ffffffffffffffff821117610ad157604052565b634e487b7160e01b5f52604160045260245ffd5b60405190610af4604083610aaf565b60118252700577261707065642045746865722076313607c1b6020830152565b9190916020815282518060208301525f5b818110610b45575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610b25565b600435906001600160a01b038216820361016857565b602435906001600160a01b038216820361016857565b9190820180921161064a57565b15610b9b57565b60405162461bcd60e51b815260206004820152602160248201527f574554483a206275726e20616d6f756e7420657863656564732062616c616e636044820152606560f81b6064820152608490fd5b9190820391821161064a57565b3d15610c31573d9067ffffffffffffffff8211610ad15760405191610c26601f8201601f191660200184610aaf565b82523d5f602084013e565b606090565b15610c3d57565b60405162461bcd60e51b815260206004820152601960248201527f574554483a20455448207472616e73666572206661696c6564000000000000006044820152606490fd5b15610c8957565b60405162461bcd60e51b815260206004820152601f60248201527f574554483a2072657175657374206578636565647320616c6c6f77616e6365006044820152606490fd5b15610cd557565b60405162461bcd60e51b815260206004820152602560248201527f574554483a207472616e7366657220616d6f756e7420657863656564732062616044820152646c616e636560d81b6064820152608490fd5b335f525f60205260405f20610d3e348254610b87565b90556040513481525f5f516020610d5d5f395f51905f5260203393a356feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212206ee9e28bc340d33b9aaf9b76aa87589fa2c6d3098c8c1f4cad634d9791e51a7d64736f6c634300081e0033";
17
+ static readonly bytecode = "0x61010060405234610157577f439148f0bbc682ca079e46d6e2c2f0c1e3b820f1a291b069d8882abf8cf18dd96080527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960a0524660c05260405161006460408261015b565b60118152700577261707065642045746865722076313607c1b602090910152604080517f5afefa023603a382ac22bd36644e004cefabbfaf61d4180000d8dc2b10c168b8916100b3908261015b565b600181526020810190603160f81b82525190206040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261011760c08261015b565b51902060e052604051610d8d9081610193823960805181610554015260a05181610764015260c05181818161020e015261065e015260e051816106860152f35b5f80fd5b601f909101601f19168101906001600160401b0382119082101761017e57604052565b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610022575b3615610018575f80fd5b610020610ce3565b005b5f3560e01c806306fdde0314610a47578063095ea7b3146109e157806318160ddd146109c2578063205c28781461094957806323b872dd146107be5780632e1a7d4d1461078757806330adf81f1461074d578063313ce567146107325780633644e5151461064b578063613255ab146105e657806370a08231146105af5780637ecebe00146105775780638237e5381461053d5780638b28d32f146105205780639555a942146103cd57806395d89b4114610389578063a9059cbb14610280578063b760faf914610231578063cd0d0096146101f7578063d0e30db0146101e4578063d9d98ce41461016c5763dd62ed3e0361000e573461016857604036600319011261016857610131610b1b565b610139610b31565b6001600160a01b039182165f908152600260209081526040808320949093168252928352819020549051908152f35b5f80fd5b3461016857604036600319011261016857610185610b1b565b306001600160a01b03909116036101a05760206040515f8152f35b60405162461bcd60e51b815260206004820152601c60248201527b0574554483a20666c617368206d696e74206f6e6c79205745544831360241b6044820152606490fd5b5f36600319011261016857610020610ce3565b34610168575f3660031901126101685760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b6020366003190112610168576001600160a01b0361024d610b1b565b16805f525f60205260405f20610264348254610b47565b90555f5f516020610d185f395f51905f526020604051348152a3005b3461016857604036600319011261016857610299610b1b565b6001600160a01b03166024358115158061037f575b1561031d57335f525f6020526102d48160405f20546102cf82821015610c89565b610baa565b335f525f60205260405f2055815f525f60205260405f206102f6828254610b47565b90556040519081525f516020610d185f395f51905f5260203392a35b602060405160018152f35b61037a91505f80808093338252816020526103438160408420546102cf82821015610b54565b338352826020526040832055816040518281525f516020610d185f395f51905f5260203392a3335af1610374610bb7565b50610bf5565b610312565b50308214156102ae565b34610168575f366003190112610168576103c96040516103aa604082610a6e565b600681526505745544831360d41b602082015260405191829182610ad4565b0390f35b34610168576060366003190112610168575f8080806103ea610b1b565b6103f2610b31565b6044359183906001600160a01b03163381036104a6575b808252816020526104258460408420546102cf82821015610b54565b8183528260205260408320555f516020610d185f395f51905f526020604051868152a36001600160a01b03165af161045b610bb7565b501561046357005b60405162461bcd60e51b815260206004820152601b60248201527a15d155120e88115d1a195c881d1c985b9cd9995c8819985a5b1959602a1b6044820152606490fd5b80825260026020908152604080842033855290915282205484831982036104cf575b5050610409565b816102cf826104df941015610c3d565b81835260026020526040832060018060a01b0333168452602052806040842055604051908152815f516020610d385f395f51905f5260203393a388846104c8565b34610168575f366003190112610168576020600354604051908152f35b34610168575f3660031901126101685760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b34610168576020366003190112610168576001600160a01b03610598610b1b565b165f526001602052602060405f2054604051908152f35b34610168576020366003190112610168576001600160a01b036105d0610b1b565b165f525f602052602060405f2054604051908152f35b34610168576020366003190112610168576105ff610b1b565b6001600160a01b03163003610643576003546001600160701b0390810390811161062f576020905b604051908152f35b634e487b7160e01b5f52601160045260245ffd5b60205f610627565b34610168575f36600319011261016857467f0000000000000000000000000000000000000000000000000000000000000000036106ad5760207f0000000000000000000000000000000000000000000000000000000000000000604051908152f35b60206106b7610aa5565b8181519101206001826040516106ce604082610a6e565b82815201603160f81b81522060405190838201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a0815261072a60c082610a6e565b519020610627565b34610168575f36600319011261016857602060405160128152f35b34610168575f3660031901126101685760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b34610168576020366003190112610168576100205f808080600435338252816020526103438160408420546102cf82821015610b54565b34610168576060366003190112610168576107d7610b1b565b6107df610b31565b604435916001600160a01b0316903382036108ce575b6001600160a01b031691821515806108c4575b1561086d5760205f516020610d185f395f51905f5291835f525f82526108398160405f20546102cf82821015610c89565b845f525f835260405f2055845f525f825260405f20610859828254610b47565b9055604051908152a3602060405160018152f35b61037a92505f80809392818481958252816020526108968360408420546102cf82821015610b54565b8183528260205260408320555f516020610d185f395f51905f526020604051858152a3335af1610374610bb7565b5030831415610808565b5f82815260026020908152604080832033845290915290205483600182016108f8575b50506107f5565b816102cf82610908941015610c3d565b825f52600260205260405f2060018060a01b0333165f526020528060405f2055604051908152825f516020610d385f395f51905f5260203393a383836108f1565b34610168576040366003190112610168576100205f808080610969610b1b565b60243590338352826020526109898260408520546102cf82821015610b54565b338452836020526040842055826040518381525f516020610d185f395f51905f5260203392a36001600160a01b03165af1610374610bb7565b34610168575f3660031901126101685760206106274760035490610b47565b34610168576040366003190112610168576109fa610b1b565b335f8181526002602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182525f516020610d385f395f51905f5291a3602060405160018152f35b34610168575f366003190112610168576103c9610a62610aa5565b60405191829182610ad4565b601f909101601f19168101906001600160401b03821190821017610a9157604052565b634e487b7160e01b5f52604160045260245ffd5b60405190610ab4604083610a6e565b60118252700577261707065642045746865722076313607c1b6020830152565b9190916020815282518060208301525f5b818110610b05575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610ae5565b600435906001600160a01b038216820361016857565b602435906001600160a01b038216820361016857565b9190820180921161062f57565b15610b5b57565b60405162461bcd60e51b815260206004820152602160248201527f574554483a206275726e20616d6f756e7420657863656564732062616c616e636044820152606560f81b6064820152608490fd5b9190820391821161062f57565b3d15610bf0573d906001600160401b038211610a915760405191610be5601f8201601f191660200184610a6e565b82523d5f602084013e565b606090565b15610bfc57565b60405162461bcd60e51b815260206004820152601960248201527815d155120e88115512081d1c985b9cd9995c8819985a5b1959603a1b6044820152606490fd5b15610c4457565b60405162461bcd60e51b815260206004820152601f60248201527f574554483a2072657175657374206578636565647320616c6c6f77616e6365006044820152606490fd5b15610c9057565b60405162461bcd60e51b815260206004820152602560248201527f574554483a207472616e7366657220616d6f756e7420657863656564732062616044820152646c616e636560d81b6064820152608490fd5b335f525f60205260405f20610cf9348254610b47565b90556040513481525f5f516020610d185f395f51905f5260203393a356feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a2646970667358221220b690c4a820d6b73da56604cc7cb0add98817b1fee78b1913c8cc97a5632f7dde64736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [];
20
20
  readonly stateMutability: "nonpayable";
@@ -14,7 +14,7 @@ export declare class CurveCrvUSDVaultMock__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): CurveCrvUSDVaultMock__factory;
17
- static readonly bytecode = "0x60a06040523461038c576114c38038038061001981610390565b92833981019060608183031261038c5780516001600160a01b038116919082900361038c5760208101516001600160401b03811161038c578361005d9183016103b5565b60408201519093906001600160401b03811161038c5761007d92016103b5565b82519091906001600160401b03811161029d57600354600181811c91168015610382575b602082101461027f57601f811161031f575b506020601f82116001146102bc57819293945f926102b1575b50508160011b915f199060031b1c1916176003555b81516001600160401b03811161029d57600454600181811c91168015610293575b602082101461027f57601f811161021c575b50602092601f82116001146101bb57928192935f926101b0575b50508160011b915f199060031b1c1916176004555b801561016b576080526040516110a4908161041f82396080518181816103bf01526109790152f35b60405162461bcd60e51b815260206004820152601c60248201527f41737365742063616e6e6f74206265207a65726f2061646472657373000000006044820152606490fd5b015190505f8061012e565b601f1982169360045f52805f20915f5b86811061020457508360019596106101ec575b505050811b01600455610143565b01515f1960f88460031b161c191690555f80806101de565b919260206001819286850151815501940192016101cb565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c81019160208410610275575b601f0160051c01905b81811061026a5750610114565b5f815560010161025d565b9091508190610254565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610102565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100cc565b601f1982169060035f52805f20915f5b818110610307575095836001959697106102ef575b505050811b016003556100e1565b01515f1960f88460031b161c191690555f80806102e1565b9192602060018192868b0151815501940192016102cc565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c81019160208410610378575b601f0160051c01905b81811061036d57506100b3565b5f8155600101610360565b9091508190610357565b90607f16906100a1565b5f80fd5b6040519190601f01601f191682016001600160401b0381118382101761029d57604052565b81601f8201121561038c578051906001600160401b03821161029d576103e4601f8301601f1916602001610390565b928284526020838301011161038c575f5b82811061040957505060205f918301015290565b806020809284010151828287010152016103f556fe60806040526004361015610011575f80fd5b5f3560e01c806301e1d11414610bf45780630698386c14610bdb57806306fdde0314610b2057806307e064fd14610b03578063095ea7b314610add5780630a28a47714610abf5780631083f7611461096457806318160ddd14610aa257806323b872dd146109c3578063313ce567146109a857806335a22a7d146105c557806338d52e0f14610964578063402d267d146109405780634abdf2e01461092757806365cb6765146108e15780636e553f651461073757806370a08231146107005780639209f1d61461018457806395d89b41146105fc57806399530b06146105e25780639aa7df94146105c5578063a9059cbb14610594578063aaf5eb6814610572578063bf86d690146101a5578063c1819eb614610542578063cf5a426014610529578063d81a09f6146102b2578063dd5967c314610297578063dd62ed3e14610247578063def7ae78146101ed578063ef8b30f7146101c7578063fc0e74d1146101a55763fc7b9c1814610184575f80fd5b346101a1575f3660031901126101a1576020600654604051908152f35b5f80fd5b346101a1575f3660031901126101a157602060ff600754166040519015158152f35b346101a15760203660031901126101a15760206101e5600435610f7d565b604051908152f35b346101a15760203660031901126101a15760043580600955600254908161021057005b670de0b6b3a76400009161022391610dce565b0460065481115f146102405760065461023b91610e5b565b600555005b505f600555005b346101a15760403660031901126101a157610260610c5c565b610268610c72565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101a1575f3660031901126101a15760206040515f198152f35b346101a15760a03660031901126101a1576004356102ce610c72565b604435906001600160a01b038216908183036101a15760843567ffffffffffffffff81116101a157610304903690600401610c88565b505083156104e4576001600160a01b0316610320811515610d8f565b61032984610e68565b9282330361046a575b50811561045757815f525f60205260405f205483811061043c579383602095845f525f87520360405f205583600254036002555f837fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051888152a36103e360405163a9059cbb60e01b87820152836024820152826044820152604481526103bd606482610cda565b7f000000000000000000000000000000000000000000000000000000000000000061100b565b6005548180821115610434576103f891610e5b565b60055560405190815283858201527ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db60403392a4604051908152f35b50505f6103f8565b91905063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b5f838152600160209081526040808320338452909152902054908482106104a657610498856104a093610e5b565b903390610fa8565b84610332565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b60405162461bcd60e51b815260206004820152601b60248201527f43616e6e6f74207769746864726177207a65726f2061737365747300000000006044820152606490fd5b346101a15760203660031901126101a157600435600655005b346101a15760203660031901126101a1576004358015158091036101a15760ff8019600754169116176007555f80f35b346101a1575f3660031901126101a1576020604051670de0b6b3a76400008152f35b346101a15760403660031901126101a1576105ba6105b0610c5c565b6024359033610ebc565b602060405160018152f35b346101a1575f3660031901126101a1576020600554604051908152f35b346101a1575f3660031901126101a15760206101e5610dff565b346101a1575f3660031901126101a1576040515f6004548060011c906001811680156106f6575b6020831081146106e2578285529081156106be5750600114610660575b61065c8361065081850382610cda565b60405191829182610c15565b0390f35b91905060045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b915f905b8082106106a457509091508101602001610650610640565b91926001816020925483858801015201910190929161068c565b60ff191660208086019190915291151560051b840190910191506106509050610640565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610623565b346101a15760203660031901126101a1576001600160a01b03610721610c5c565b165f525f602052602060405f2054604051908152f35b346101a15760403660031901126101a157600435610753610c72565b60ff600754166108a8578115610863576001600160a01b03168015906107798215610d8f565b61078283610f7d565b916107b76040516323b872dd60e01b6020820152336024820152306044820152856064820152606481526103bd608482610cda565b610850576020926107ca83600254610cb9565b600255815f525f845260405f20838154019055815f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef86604051878152a361081481600554610cb9565b60055560405190815282848201527fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d760403392a3604051908152f35b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601a60248201527f43616e6e6f74206465706f736974207a65726f206173736574730000000000006044820152606490fd5b60405162461bcd60e51b81526020600482015260116024820152702b30bab63a1034b99039b43aba3237bbb760791b6044820152606490fd5b346101a15760603660031901126101a1576108fa610c5c565b60443567ffffffffffffffff81116101a1576020916109206101e5923690600401610c88565b5050610d23565b346101a15760203660031901126101a157600435600855005b346101a15760203660031901126101a157610959610c5c565b5060206101e5610d10565b346101a1575f3660031901126101a1576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346101a1575f3660031901126101a157602060405160128152f35b346101a15760603660031901126101a1576109dc610c5c565b6109e4610c72565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610a22575b506105ba9350610ebc565b838110610a87578415610a74573315610a61576105ba945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610a17565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b346101a1575f3660031901126101a1576020600254604051908152f35b346101a15760203660031901126101a15760206101e5600435610e68565b346101a15760403660031901126101a1576105ba610af9610c5c565b6024359033610fa8565b346101a1575f3660031901126101a1576020600954604051908152f35b346101a1575f3660031901126101a1576040515f6003548060011c90600181168015610bd1575b6020831081146106e2578285529081156106be5750600114610b735761065c8361065081850382610cda565b91905060035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b915f905b808210610bb757509091508101602001610650610640565b919260018160209254838588010152019101909291610b9f565b91607f1691610b47565b346101a15760203660031901126101a157600435600555005b346101a1575f3660031901126101a15760206101e560055460065490610cb9565b9190916020815282518060208301525f5b818110610c46575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610c26565b600435906001600160a01b03821682036101a157565b602435906001600160a01b03821682036101a157565b9181601f840112156101a15782359167ffffffffffffffff83116101a1576020808501948460051b0101116101a157565b91908201809211610cc657565b634e487b7160e01b5f52601160045260245ffd5b90601f8019910116810190811067ffffffffffffffff821117610cfc57604052565b634e487b7160e01b5f52604160045260245ffd5b60ff60075416610d1f575f1990565b5f90565b60ff60075416610d8a576001600160a01b03165f908152602081905260409020548015610d8a57610d5390610f53565b6005549081811115610d8357505b60085480151580610d7a575b610d75575090565b905090565b50818110610d6d565b9050610d61565b505f90565b15610d9657565b60405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b2103932b1b2b4bb32b960811b6044820152606490fd5b81810292918115918404141715610cc657565b8115610deb570490565b634e487b7160e01b5f52601260045260245ffd5b60095480610e4b57506002548015610e4e57610e2060055460065490610cb9565b90670de0b6b3a7640000820291808304670de0b6b3a76400001490151715610cc657610e4b91610de1565b90565b50670de0b6b3a764000090565b91908203918211610cc657565b6002548015610eb857610e8a90610e8460055460065490610cb9565b92610dce565b9081610e965750505f90565b5f198201918211610cc657610eaa91610de1565b60018101809111610cc65790565b5090565b6001600160a01b0316908115610457576001600160a01b031691821561085057815f525f60205260405f2054818110610f3a57817fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b6002548015610eb857610f78610e4b92610f7260055460065490610cb9565b90610dce565b610de1565b6002548015610eb857610f9390610e4b92610dce565b610fa260055460065490610cb9565b90610de1565b6001600160a01b0316908115610a74576001600160a01b0316918215610a615760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b905f602091828151910182855af115611063575f513d61105a57506001600160a01b0381163b155b61103a5750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b60011415611033565b6040513d5f823e3d90fdfea2646970667358221220eec682901d7178f5bd5a8e01066764823d190fc8b8060675ccda64388df7d3c864736f6c634300081e0033";
17
+ static readonly bytecode = "0x60a060405234610393576117018038038061001981610397565b9283398101906060818303126103935780516001600160a01b03811691908290036103935760208101516001600160401b038111610393578361005d9183016103bc565b60408201519093906001600160401b0381116103935761007d92016103bc565b82519091906001600160401b0381116102a457600354600181811c91168015610389575b602082101461028657601f8111610326575b506020601f82116001146102c357819293945f926102b8575b50508160011b915f199060031b1c1916176003555b81516001600160401b0381116102a457600454600181811c9116801561029a575b602082101461028657601f8111610223575b50602092601f82116001146101c257928192935f926101b7575b50508160011b915f199060031b1c1916176004555b8015610172576080526040516112db90816104268239608051818181610331015281816106aa015261086d0152f35b60405162461bcd60e51b815260206004820152601c60248201527f41737365742063616e6e6f74206265207a65726f2061646472657373000000006044820152606490fd5b015190505f8061012e565b601f1982169360045f52805f20915f5b86811061020b57508360019596106101f3575b505050811b01600455610143565b01515f1960f88460031b161c191690555f80806101e5565b919260206001819286850151815501940192016101d2565b60045f527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b601f830160051c8101916020841061027c575b601f0160051c01905b8181106102715750610114565b5f8155600101610264565b909150819061025b565b634e487b7160e01b5f52602260045260245ffd5b90607f1690610102565b634e487b7160e01b5f52604160045260245ffd5b015190505f806100cc565b601f1982169060035f52805f20915f5b81811061030e575095836001959697106102f6575b505050811b016003556100e1565b01515f1960f88460031b161c191690555f80806102e8565b9192602060018192868b0151815501940192016102d3565b60035f527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b601f830160051c8101916020841061037f575b601f0160051c01905b81811061037457506100b3565b5f8155600101610367565b909150819061035e565b90607f16906100a1565b5f80fd5b6040519190601f01601f191682016001600160401b038111838210176102a457604052565b81601f82011215610393578051906001600160401b0382116102a4576103eb601f8301601f1916602001610397565b9282845260208383010111610393575f5b82811061041057505060205f918301015290565b806020809284010151828287010152016103fc56fe60806040526004361015610011575f80fd5b5f3560e01c806301e1d11414610be257806306580f2d14610b035780630698386c14610aea57806306fdde0314610a2f57806307e064fd14610a12578063095ea7b3146109ec5780630a28a477146109ce5780631083f7611461085857806318160ddd146109b157806323b872dd146108d2578063313ce567146108b757806334b5fab61461089c57806335a22a7d146104b657806338d52e0f14610858578063402d267d146108345780634abdf2e01461081b5780634cdad506146107fd57806365cb6765146107e25780636e553f651461062857806370a08231146105f15780639209f1d6146101a557806395d89b41146104ed57806399530b06146104d35780639aa7df94146104b6578063a9059cbb14610485578063aaf5eb6814610463578063bf86d690146101c6578063c1819eb614610433578063cf5a42601461041a578063d81a09f6146102d3578063dd5967c3146102b8578063dd62ed3e14610268578063def7ae781461020e578063ef8b30f7146101e8578063fc0e74d1146101c65763fc7b9c18146101a5575f80fd5b346101c2575f3660031901126101c2576020600654604051908152f35b5f80fd5b346101c2575f3660031901126101c257602060ff600754166040519015158152f35b346101c25760203660031901126101c2576020610206600435611174565b604051908152f35b346101c25760203660031901126101c25760043580600955600254908161023157005b670de0b6b3a76400009161024491610f1f565b0460065481115f146102615760065461025c91610deb565b600555005b505f600555005b346101c25760403660031901126101c257610281610c03565b610289610c19565b6001600160a01b039182165f908152600160209081526040808320949093168252928352819020549051908152f35b346101c2575f3660031901126101c25760206040515f198152f35b346101c2576102e136610c5f565b50505082156103d7576020926001600160a01b03831690610303821515610d67565b61035581610310816110a0565b956001600160a01b0386169561032f9088903389900361039b57610fda565b7f000000000000000000000000000000000000000000000000000000000000000061105e565b60055481808211156103935761036a91610deb565b60055560405190815283858201525f5160206112665f395f51905f5260403392a4604051908152f35b50505f61036a565b5f89815260018c5260408082203383528d529020546103d2906103cb9084906103c682821015610da6565b610deb565b338361119f565b610fda565b60405162461bcd60e51b815260206004820152601b60248201527a43616e6e6f74207769746864726177207a65726f2061737365747360281b6044820152606490fd5b346101c25760203660031901126101c257600435600655005b346101c25760203660031901126101c2576004358015158091036101c25760ff8019600754169116176007555f80f35b346101c2575f3660031901126101c2576020604051670de0b6b3a76400008152f35b346101c25760403660031901126101c2576104ab6104a1610c03565b60243590336110f0565b602060405160018152f35b346101c2575f3660031901126101c2576020600554604051908152f35b346101c2575f3660031901126101c2576020610206610f50565b346101c2575f3660031901126101c2576040515f6004548060011c906001811680156105e7575b6020831081146105d3578285529081156105af5750600114610551575b61054d8361054181850382610df8565b60405191829182610cbd565b0390f35b60045f9081527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b939250905b80821061059557509091508101602001610541610531565b91926001816020925483858801015201910190929161057d565b60ff191660208086019190915291151560051b840190910191506105419050610531565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610514565b346101c25760203660031901126101c2576001600160a01b03610612610c03565b165f525f602052602060405f2054604051908152f35b346101c25760403660031901126101c257600435610644610c19565b60ff600754166107a9578115610767576001600160a01b031680159061066a8215610d67565b61067383611174565b916106ce6040516323b872dd60e01b6020820152336024820152306044820152856064820152606481526106a8608482610df8565b7f0000000000000000000000000000000000000000000000000000000000000000611202565b610754576020926106e183600254610d46565b600255815f525f845260405f20838154019055815f5f5160206112865f395f51905f5286604051878152a361071881600554610d46565b60055560405190815282848201527fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d760403392a3604051908152f35b63ec442f0560e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152601a60248201527943616e6e6f74206465706f736974207a65726f2061737365747360301b6044820152606490fd5b60405162461bcd60e51b81526020600482015260116024820152702b30bab63a1034b99039b43aba3237bbb760791b6044820152606490fd5b346101c25760206102066107f536610d04565b505050610ebd565b346101c25760203660031901126101c2576020610206600435610fac565b346101c25760203660031901126101c257600435600855005b346101c25760203660031901126101c25761084d610c03565b506020610206610eaa565b346101c2575f3660031901126101c2576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346101c25760206102066108af36610d04565b505050610e2f565b346101c2575f3660031901126101c257602060405160128152f35b346101c25760603660031901126101c2576108eb610c03565b6108f3610c19565b6001600160a01b0382165f818152600160209081526040808320338452909152902054909260443592915f198110610931575b506104ab93506110f0565b838110610996578415610983573315610970576104ab945f52600160205260405f2060018060a01b0333165f526020528360405f209103905584610926565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b8390637dc7a0d960e11b5f523360045260245260445260645ffd5b346101c2575f3660031901126101c2576020600254604051908152f35b346101c25760203660031901126101c25760206102066004356110a0565b346101c25760403660031901126101c2576104ab610a08610c03565b602435903361119f565b346101c2575f3660031901126101c2576020600954604051908152f35b346101c2575f3660031901126101c2576040515f6003548060011c90600181168015610ae0575b6020831081146105d3578285529081156105af5750600114610a825761054d8361054181850382610df8565b60035f9081527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b939250905b808210610ac657509091508101602001610541610531565b919260018160209254838588010152019101909291610aae565b91607f1691610a56565b346101c25760203660031901126101c257600435600555005b346101c257610b1136610c5f565b5050508215610ba1576020926001600160a01b03831690610b33821515610d67565b610b5b610b3f82610fac565b809561032f8460018060a01b0388169788330361039b57610fda565b6005548480821115610b9957610b7091610deb565b60055560405190848252858201525f5160206112665f395f51905f5260403392a4604051908152f35b50505f610b70565b60405162461bcd60e51b815260206004820152601960248201527843616e6e6f742072656465656d207a65726f2073686172657360381b6044820152606490fd5b346101c2575f3660031901126101c257602061020660055460065490610d46565b600435906001600160a01b03821682036101c257565b602435906001600160a01b03821682036101c257565b9181601f840112156101c2578235916001600160401b0383116101c2576020808501948460051b0101116101c257565b60a06003198201126101c257600435916024356001600160a01b03811681036101c257916044356001600160a01b03811681036101c2579160643591608435906001600160401b0382116101c257610cb991600401610c2f565b9091565b9190916020815282518060208301525f5b818110610cee575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610cce565b60606003198201126101c2576004356001600160a01b03811681036101c2579160243591604435906001600160401b0382116101c257610cb991600401610c2f565b91908201809211610d5357565b634e487b7160e01b5f52601160045260245ffd5b15610d6e57565b60405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b2103932b1b2b4bb32b960811b6044820152606490fd5b15610dad57565b60405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606490fd5b91908203918211610d5357565b601f909101601f19168101906001600160401b03821190821017610e1b57604052565b634e487b7160e01b5f52604160045260245ffd5b60ff60075416610ea5576001600160a01b03165f908152602081905260409020548015610ea5576005548015610e9f57610e6890611174565b9081811115610e9857505b60085480610e7f575090565b610e8890611174565b818110610e93575090565b905090565b9050610e73565b50505f90565b505f90565b60ff60075416610eb9575f1990565b5f90565b60ff60075416610ea5576001600160a01b03165f908152602081905260409020548015610ea557610eed90610fac565b6005549081811115610f1857505b60085480151580610f0f575b610e93575090565b50818110610f07565b9050610efb565b81810292918115918404141715610d5357565b8115610f3c570490565b634e487b7160e01b5f52601260045260245ffd5b60095480610f9c57506002548015610f9f57610f7160055460065490610d46565b90670de0b6b3a7640000820291808304670de0b6b3a76400001490151715610d5357610f9c91610f32565b90565b50670de0b6b3a764000090565b6002548015610fd657610fd1610f9c92610fcb60055460065490610d46565b90610f1f565b610f32565b5090565b9091906001600160a01b0316801561104b57805f525f60205260405f2054838110611031576020845f94955f5160206112865f395f51905f52938587528684520360408620558060025403600255604051908152a3565b915063391434e360e21b5f5260045260245260445260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b60405163a9059cbb60e01b60208201526001600160a01b03909216602483015260448083019390935291815261109e91611099606483610df8565b611202565b565b6002548015610fd6576110c2906110bc60055460065490610d46565b92610f1f565b90816110ce5750505f90565b5f198201918211610d53576110e291610f32565b60018101809111610d535790565b6001600160a01b031690811561104b576001600160a01b031691821561075457815f525f60205260405f205481811061115b57815f5160206112865f395f51905f5292602092855f525f84520360405f2055845f525f825260405f20818154019055604051908152a3565b8263391434e360e21b5f5260045260245260445260645ffd5b6002548015610fd65761118a90610f9c92610f1f565b61119960055460065490610d46565b90610f32565b6001600160a01b0316908115610983576001600160a01b03169182156109705760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591835f526001825260405f20855f5282528060405f2055604051908152a3565b905f602091828151910182855af11561125a575f513d61125157506001600160a01b0381163b155b6112315750565b635274afe760e01b5f9081526001600160a01b0391909116600452602490fd5b6001141561122a565b6040513d5f823e3d90fdfefbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8dbddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212204b17383eacb444c1dc2d00383d7d11368bc264ac1424e3b6c5d61c95fdc4b97364736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [{
20
20
  readonly internalType: "address";
@@ -384,6 +384,28 @@ export declare class CurveCrvUSDVaultMock__factory extends ContractFactory {
384
384
  }];
385
385
  readonly stateMutability: "view";
386
386
  readonly type: "function";
387
+ }, {
388
+ readonly inputs: readonly [{
389
+ readonly internalType: "address";
390
+ readonly name: "owner";
391
+ readonly type: "address";
392
+ }, {
393
+ readonly internalType: "uint256";
394
+ readonly name: "maxLoss";
395
+ readonly type: "uint256";
396
+ }, {
397
+ readonly internalType: "address[]";
398
+ readonly name: "strategies";
399
+ readonly type: "address[]";
400
+ }];
401
+ readonly name: "maxRedeem";
402
+ readonly outputs: readonly [{
403
+ readonly internalType: "uint256";
404
+ readonly name: "";
405
+ readonly type: "uint256";
406
+ }];
407
+ readonly stateMutability: "view";
408
+ readonly type: "function";
387
409
  }, {
388
410
  readonly inputs: readonly [{
389
411
  readonly internalType: "address";
@@ -430,6 +452,20 @@ export declare class CurveCrvUSDVaultMock__factory extends ContractFactory {
430
452
  }];
431
453
  readonly stateMutability: "view";
432
454
  readonly type: "function";
455
+ }, {
456
+ readonly inputs: readonly [{
457
+ readonly internalType: "uint256";
458
+ readonly name: "shares";
459
+ readonly type: "uint256";
460
+ }];
461
+ readonly name: "previewRedeem";
462
+ readonly outputs: readonly [{
463
+ readonly internalType: "uint256";
464
+ readonly name: "assets";
465
+ readonly type: "uint256";
466
+ }];
467
+ readonly stateMutability: "view";
468
+ readonly type: "function";
433
469
  }, {
434
470
  readonly inputs: readonly [{
435
471
  readonly internalType: "uint256";
@@ -454,6 +490,36 @@ export declare class CurveCrvUSDVaultMock__factory extends ContractFactory {
454
490
  }];
455
491
  readonly stateMutability: "view";
456
492
  readonly type: "function";
493
+ }, {
494
+ readonly inputs: readonly [{
495
+ readonly internalType: "uint256";
496
+ readonly name: "shares";
497
+ readonly type: "uint256";
498
+ }, {
499
+ readonly internalType: "address";
500
+ readonly name: "receiver";
501
+ readonly type: "address";
502
+ }, {
503
+ readonly internalType: "address";
504
+ readonly name: "owner";
505
+ readonly type: "address";
506
+ }, {
507
+ readonly internalType: "uint256";
508
+ readonly name: "maxLoss";
509
+ readonly type: "uint256";
510
+ }, {
511
+ readonly internalType: "address[]";
512
+ readonly name: "strategies";
513
+ readonly type: "address[]";
514
+ }];
515
+ readonly name: "redeem";
516
+ readonly outputs: readonly [{
517
+ readonly internalType: "uint256";
518
+ readonly name: "assets";
519
+ readonly type: "uint256";
520
+ }];
521
+ readonly stateMutability: "nonpayable";
522
+ readonly type: "function";
457
523
  }, {
458
524
  readonly inputs: readonly [{
459
525
  readonly internalType: "bool";
@@ -14,7 +14,7 @@ export declare class CurveLiquidityGaugeV5Mock__factory extends ContractFactory
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): CurveLiquidityGaugeV5Mock__factory;
17
- static readonly bytecode = "0x6080806040523460155761012a908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c908163254cb2f11460b057506393f7aa6714602f575f80fd5b3460ac57604036600319011260ac57604460df565b6001600160a01b03165f8181526020819052604090208054602435818101929183106098577f7dbc080e4530c8bcf265eb5c9a35ae096ca1eb607b7e802b96581ef4c5e1a7039260209255604051908152a2005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b3460ac57602036600319011260ac576020906001600160a01b0360d060df565b165f525f825260405f20548152f35b600435906001600160a01b038216820360ac5756fea26469706673582212208991b558abf60dca14607feab0b2671ee28c919c1f80b6cd5761f44351dbb58d64736f6c634300081e0033";
17
+ static readonly bytecode = "0x6080806040523460155761012a908161001a8239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c908163254cb2f11460b057506393f7aa6714602f575f80fd5b3460ac57604036600319011260ac57604460df565b6001600160a01b03165f8181526020819052604090208054602435818101929183106098577f7dbc080e4530c8bcf265eb5c9a35ae096ca1eb607b7e802b96581ef4c5e1a7039260209255604051908152a2005b634e487b7160e01b5f52601160045260245ffd5b5f80fd5b3460ac57602036600319011260ac576020906001600160a01b0360d060df565b165f525f825260405f20548152f35b600435906001600160a01b038216820360ac5756fea264697066735822122079849704818f01a2657a4dd615eb3965ea75da3e7a67a7d4749fc69102c2b85764736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly anonymous: false;
20
20
  readonly inputs: readonly [{
@@ -14,7 +14,7 @@ export declare class MockGaugeController__factory extends ContractFactory {
14
14
  deploymentTransaction(): ContractTransactionResponse;
15
15
  }>;
16
16
  connect(runner: ContractRunner | null): MockGaugeController__factory;
17
- static readonly bytecode = "0x608080604052346013576087908160188239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c6372be5276146023575f80fd5b34604d576020366003190112604d576004356001600160a01b03811603604d57806103e860209252f35b5f80fdfea264697066735822122061cde63ce287ef41c1c69594c7bbbd5c4e08c13f44dc18388d65ce963de61e3664736f6c634300081e0033";
17
+ static readonly bytecode = "0x608080604052346013576087908160188239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c6372be5276146023575f80fd5b34604d576020366003190112604d576004356001600160a01b03811603604d57806103e860209252f35b5f80fdfea2646970667358221220ce214f3c6996a223f094fea2ea892cbc47968bf641e22015061ec0f0097b195564736f6c634300081e0033";
18
18
  static readonly abi: readonly [{
19
19
  readonly inputs: readonly [{
20
20
  readonly internalType: "address";