@gooddollar/goodprotocol 1.0.26 → 1.0.29-beta.0

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 (222) hide show
  1. package/artifacts/abis/AdminWallet.min.json +1 -0
  2. package/artifacts/abis/FuseFaucet.min.json +1 -1
  3. package/artifacts/abis/IIdentity.min.json +1 -1
  4. package/artifacts/abis/ProxyAdmin.min.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  7. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  8. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  9. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  10. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/IIdentity.json +45 -0
  23. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.json +23 -0
  28. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  34. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  35. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +4 -4
  36. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  37. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  38. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  39. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
  40. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  41. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
  42. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  43. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
  44. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  45. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  46. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  47. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  48. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  49. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  50. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
  51. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  52. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.dbg.json +1 -1
  53. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.dbg.json +1 -1
  54. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.dbg.json +1 -1
  55. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  56. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.dbg.json +1 -1
  57. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  58. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.dbg.json +1 -1
  60. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  61. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  62. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  63. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
  64. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  65. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  66. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  67. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +2 -2
  68. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  69. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  70. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  71. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  72. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
  73. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  74. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  75. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  76. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  77. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  78. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  79. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
  80. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  81. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
  82. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  83. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  85. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  87. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  89. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  90. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  91. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
  92. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  93. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
  94. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  95. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  96. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +2 -2
  97. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  98. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
  99. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  100. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
  101. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  102. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  103. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  104. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  105. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  106. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  107. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  108. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
  109. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  110. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  111. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  112. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
  113. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  114. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  115. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  116. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  117. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  118. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  119. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  120. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  121. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  122. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  123. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  124. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  125. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  126. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
  127. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +4 -0
  128. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +732 -0
  129. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  130. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  131. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
  132. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  133. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
  134. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  135. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
  136. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  137. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  138. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  139. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  140. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  141. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  142. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
  143. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  144. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
  145. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  146. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
  147. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  148. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
  149. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  150. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  151. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  152. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  153. package/contracts/Interfaces.sol +12 -0
  154. package/contracts/fuseFaucet/FuseFaucet.sol +19 -10
  155. package/contracts/utils/AdminWallet.sol +242 -0
  156. package/hardhat.config.ts +11 -1
  157. package/package.json +8 -8
  158. package/releases/deployment.json +9 -6
  159. package/scripts/bulkProof.ts +0 -5
  160. package/scripts/deployFullDAO.ts +17 -9
  161. package/scripts/multichain-deploy/basicdao-deploy.ts +0 -11
  162. package/scripts/test/localOldDaoDeploy.ts +4 -10
  163. package/scripts/upgradeScheme.ts +7 -12
  164. package/scripts/upgradeToV2/upgradeToV2.ts +0 -8
  165. package/scripts/upgradeToV2/upgradeToV2Recover.ts +0 -8
  166. package/test/FuseFaucet.test.ts +8 -12
  167. package/test/utils/AdminWallet.test.ts +278 -0
  168. package/test/utils/ProtocolUpgrade.test.ts +1 -4
  169. package/types/AdminWallet.ts +1136 -0
  170. package/types/FuseFaucet.ts +3 -3
  171. package/types/IIdentity.ts +87 -0
  172. package/types/ProxyAdmin.ts +44 -0
  173. package/types/factories/AaveStakingFactory__factory.ts +1 -1
  174. package/types/factories/AdminWallet__factory.ts +780 -0
  175. package/types/factories/BaseShareFieldV2__factory.ts +1 -1
  176. package/types/factories/BaseShareField__factory.ts +1 -1
  177. package/types/factories/BulkProof__factory.ts +1 -1
  178. package/types/factories/ClaimersDistribution__factory.ts +1 -1
  179. package/types/factories/CompoundStakingFactory__factory.ts +1 -1
  180. package/types/factories/CompoundVotingMachine__factory.ts +1 -1
  181. package/types/factories/DAOContract__factory.ts +1 -1
  182. package/types/factories/DAOUpgradeableContract__factory.ts +1 -1
  183. package/types/factories/DonationsStaking__factory.ts +1 -1
  184. package/types/factories/ExchangeHelper__factory.ts +1 -1
  185. package/types/factories/FuseFaucet__factory.ts +3 -3
  186. package/types/factories/FuseStakingV3__factory.ts +1 -1
  187. package/types/factories/GReputation__factory.ts +1 -1
  188. package/types/factories/GoodAaveStakingV2__factory.ts +1 -1
  189. package/types/factories/GoodAaveStaking__factory.ts +1 -1
  190. package/types/factories/GoodCompoundStakingTest__factory.ts +1 -1
  191. package/types/factories/GoodCompoundStakingV2__factory.ts +1 -1
  192. package/types/factories/GoodCompoundStaking__factory.ts +1 -1
  193. package/types/factories/GoodFundManagerTest__factory.ts +1 -1
  194. package/types/factories/GoodFundManager__factory.ts +1 -1
  195. package/types/factories/GoodMarketMaker__factory.ts +1 -1
  196. package/types/factories/GoodReserveCDai__factory.ts +1 -1
  197. package/types/factories/GovernanceStaking__factory.ts +1 -1
  198. package/types/factories/IIdentity__factory.ts +45 -0
  199. package/types/factories/InvitesV1__factory.ts +1 -1
  200. package/types/factories/OverMintTesterRegularStake__factory.ts +1 -1
  201. package/types/factories/OverMintTester__factory.ts +1 -1
  202. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +1 -1
  203. package/types/factories/ProtocolUpgradeFuse__factory.ts +1 -1
  204. package/types/factories/ProtocolUpgradeRecover__factory.ts +1 -1
  205. package/types/factories/ProtocolUpgrade__factory.ts +1 -1
  206. package/types/factories/ProxyAdmin__factory.ts +23 -0
  207. package/types/factories/ReputationTestHelper__factory.ts +1 -1
  208. package/types/factories/Reputation__factory.ts +1 -1
  209. package/types/factories/StakersDistribution__factory.ts +1 -1
  210. package/types/factories/SwapHelperTest__factory.ts +1 -1
  211. package/types/factories/UBIScheme__factory.ts +1 -1
  212. package/types/factories/UniswapV2SwapHelper__factory.ts +1 -1
  213. package/types/factories/UpgradableMock2__factory.ts +1 -1
  214. package/types/factories/UpgradableMock3__factory.ts +1 -1
  215. package/types/factories/UpgradableMock4__factory.ts +1 -1
  216. package/types/factories/UpgradableMock__factory.ts +1 -1
  217. package/types/hardhat.d.ts +9 -0
  218. package/types/index.ts +2 -0
  219. package/yarn.lock +320 -217
  220. package/patches/@nomiclabs+hardhat-etherscan+3.0.3.patch +0 -41
  221. package/patches/@openzeppelin+hardhat-upgrades+1.7.0.patch +0 -67
  222. package/patches/@openzeppelin+upgrades-core+1.4.2.patch +0 -21
@@ -161,7 +161,7 @@ const _abi = [
161
161
  ];
162
162
 
163
163
  const _bytecode =
164
- "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610b5661004b600039600081816102ad015281816102f60152818161037f01526103bf0152610b566000f3fe60806040526004361061006b5760003560e01c80631b3c90a814610070578063313ce567146100875780633659cfe6146100a85780633e6326fc146100c85780634162169f146100f55780634f1ef286146101155780635aef7de614610128578063e1758bd814610148575b600080fd5b34801561007c57600080fd5b5061008561015d565b005b34801561009357600080fd5b50604051601281526020015b60405180910390f35b3480156100b457600080fd5b506100856100c336600461089f565b6102a2565b3480156100d457600080fd5b506067546100e8906001600160a01b031681565b60405161009f91906108bc565b34801561010157600080fd5b506065546100e8906001600160a01b031681565b6100856101233660046108e6565b610374565b34801561013457600080fd5b506066546100e8906001600160a01b031681565b34801561015457600080fd5b506100e861042e565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156101bb57600080fd5b505afa1580156101cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f391906109a9565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561024857600080fd5b505afa15801561025c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028091906109a9565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156102f45760405162461bcd60e51b81526004016102eb906109c6565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103266104ca565b6001600160a01b03161461034c5760405162461bcd60e51b81526004016102eb90610a00565b610355816104e6565b6040805160008082526020820190925261037191839190610545565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103bd5760405162461bcd60e51b81526004016102eb906109c6565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103ef6104ca565b6001600160a01b0316146104155760405162461bcd60e51b81526004016102eb90610a00565b61041e826104e6565b61042a82826001610545565b5050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561048d57600080fd5b505afa1580156104a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c591906109a9565b905090565b600080516020610ada833981519152546001600160a01b031690565b3373f39fd6e51aad88f6f4ce6ab8827279cfffb92266146103715760405162461bcd60e51b81526020600482015260196024820152786e6f7420617574686f72697a656420746f207570677261646560381b60448201526064016102eb565b600061054f6104ca565b905061055a8461068c565b6000835111806105675750815b1561057857610576848461071f565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661068557805460ff191660011781556040516105f39086906105c49085906024016108bc565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b17905261071f565b50805460ff191681556106046104ca565b6001600160a01b0316826001600160a01b03161461067c5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b60648201526084016102eb565b6106858561080a565b5050505050565b803b6106f05760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102eb565b600080516020610ada83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b61077e5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016102eb565b600080846001600160a01b0316846040516107999190610a6a565b600060405180830381855af49150503d80600081146107d4576040519150601f19603f3d011682016040523d82523d6000602084013e6107d9565b606091505b50915091506108018282604051806060016040528060278152602001610afa6027913961084a565b95945050505050565b6108138161068c565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60608315610859575081610883565b8251156108695782518084602001fd5b8160405162461bcd60e51b81526004016102eb9190610a86565b9392505050565b6001600160a01b038116811461037157600080fd5b6000602082840312156108b157600080fd5b81356108838161088a565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156108f957600080fd5b82356109048161088a565b915060208301356001600160401b038082111561092057600080fd5b818501915085601f83011261093457600080fd5b813581811115610946576109466108d0565b604051601f8201601f19908116603f0116810190838211818310171561096e5761096e6108d0565b8160405282815288602084870101111561098757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000602082840312156109bb57600080fd5b81516108838161088a565b6020808252602c90820152600080516020610aba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610aba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610a55578181015183820152602001610a3d565b83811115610a64576000848401525b50505050565b60008251610a7c818460208701610a3a565b9190910192915050565b6020815260008251806020840152610aa5816040850160208701610a3a565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122035dde85c9461b1c840b1110ca145a632f660f346cc449e9e1ca70352ac3e4de364736f6c63430008080033";
164
+ "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610b5661004b600039600081816102ad015281816102f60152818161037f01526103bf0152610b566000f3fe60806040526004361061006b5760003560e01c80631b3c90a814610070578063313ce567146100875780633659cfe6146100a85780633e6326fc146100c85780634162169f146100f55780634f1ef286146101155780635aef7de614610128578063e1758bd814610148575b600080fd5b34801561007c57600080fd5b5061008561015d565b005b34801561009357600080fd5b50604051601281526020015b60405180910390f35b3480156100b457600080fd5b506100856100c336600461089f565b6102a2565b3480156100d457600080fd5b506067546100e8906001600160a01b031681565b60405161009f91906108bc565b34801561010157600080fd5b506065546100e8906001600160a01b031681565b6100856101233660046108e6565b610374565b34801561013457600080fd5b506066546100e8906001600160a01b031681565b34801561015457600080fd5b506100e861042e565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156101bb57600080fd5b505afa1580156101cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f391906109a9565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561024857600080fd5b505afa15801561025c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028091906109a9565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156102f45760405162461bcd60e51b81526004016102eb906109c6565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103266104ca565b6001600160a01b03161461034c5760405162461bcd60e51b81526004016102eb90610a00565b610355816104e6565b6040805160008082526020820190925261037191839190610545565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103bd5760405162461bcd60e51b81526004016102eb906109c6565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103ef6104ca565b6001600160a01b0316146104155760405162461bcd60e51b81526004016102eb90610a00565b61041e826104e6565b61042a82826001610545565b5050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561048d57600080fd5b505afa1580156104a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c591906109a9565b905090565b600080516020610ada833981519152546001600160a01b031690565b3373f39fd6e51aad88f6f4ce6ab8827279cfffb92266146103715760405162461bcd60e51b81526020600482015260196024820152786e6f7420617574686f72697a656420746f207570677261646560381b60448201526064016102eb565b600061054f6104ca565b905061055a8461068c565b6000835111806105675750815b1561057857610576848461071f565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661068557805460ff191660011781556040516105f39086906105c49085906024016108bc565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b17905261071f565b50805460ff191681556106046104ca565b6001600160a01b0316826001600160a01b03161461067c5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b60648201526084016102eb565b6106858561080a565b5050505050565b803b6106f05760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016102eb565b600080516020610ada83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b61077e5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016102eb565b600080846001600160a01b0316846040516107999190610a6a565b600060405180830381855af49150503d80600081146107d4576040519150601f19603f3d011682016040523d82523d6000602084013e6107d9565b606091505b50915091506108018282604051806060016040528060278152602001610afa6027913961084a565b95945050505050565b6108138161068c565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60608315610859575081610883565b8251156108695782518084602001fd5b8160405162461bcd60e51b81526004016102eb9190610a86565b9392505050565b6001600160a01b038116811461037157600080fd5b6000602082840312156108b157600080fd5b81356108838161088a565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156108f957600080fd5b82356109048161088a565b915060208301356001600160401b038082111561092057600080fd5b818501915085601f83011261093457600080fd5b813581811115610946576109466108d0565b604051601f8201601f19908116603f0116810190838211818310171561096e5761096e6108d0565b8160405282815288602084870101111561098757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000602082840312156109bb57600080fd5b81516108838161088a565b6020808252602c90820152600080516020610aba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610aba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610a55578181015183820152602001610a3d565b83811115610a64576000848401525b50505050565b60008251610a7c818460208701610a3a565b9190910192915050565b6020815260008251806020840152610aa5816040850160208701610a3a565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122033aca1110dc43fadfdbb40cd69e18fec9cb2de3f69eed409cccd63fbff5eb64b64736f6c63430008080033";
165
165
 
166
166
  type UpgradableMock2ConstructorParams =
167
167
  | [signer?: Signer]
@@ -174,7 +174,7 @@ const _abi = [
174
174
  ];
175
175
 
176
176
  const _bytecode =
177
- "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610cdd61004b600039600081816102d801528181610321015281816103aa01526103ea0152610cdd6000f3fe6080604052600436106100765760003560e01c80631b3c90a81461007b578063313ce567146100925780633659cfe6146100b35780633e6326fc146100d35780634162169f146101005780634f1ef286146101205780635aef7de614610133578063c4d66de814610153578063e1758bd814610173575b600080fd5b34801561008757600080fd5b50610090610188565b005b34801561009e57600080fd5b50604051600381526020015b60405180910390f35b3480156100bf57600080fd5b506100906100ce366004610a26565b6102cd565b3480156100df57600080fd5b506067546100f3906001600160a01b031681565b6040516100aa9190610a43565b34801561010c57600080fd5b506065546100f3906001600160a01b031681565b61009061012e366004610a6d565b61039f565b34801561013f57600080fd5b506066546100f3906001600160a01b031681565b34801561015f57600080fd5b5061009061016e366004610a26565b610459565b34801561017f57600080fd5b506100f3610515565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156101e657600080fd5b505afa1580156101fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021e9190610b30565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561027357600080fd5b505afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610b30565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561031f5760405162461bcd60e51b815260040161031690610b4d565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103516105b1565b6001600160a01b0316146103775760405162461bcd60e51b815260040161031690610b87565b610380816105cd565b6040805160008082526020820190925261039c918391906105d5565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103e85760405162461bcd60e51b815260040161031690610b4d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661041a6105b1565b6001600160a01b0316146104405760405162461bcd60e51b815260040161031690610b87565b610449826105cd565b610455828260016105d5565b5050565b600054610100900460ff1680610472575060005460ff16155b6104d55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610316565b600054610100900460ff161580156104f7576000805461ffff19166101011790555b6105008261071c565b8015610455576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561057457600080fd5b505afa158015610588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ac9190610b30565b905090565b600080516020610c61833981519152546001600160a01b031690565b61039c61073f565b60006105df6105b1565b90506105ea84610813565b6000835111806105f75750815b156106085761060684846108a6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661071557805460ff19166001178155604051610683908690610654908590602401610a43565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526108a6565b50805460ff191681556106946105b1565b6001600160a01b0316826001600160a01b03161461070c5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610316565b61071585610991565b5050505050565b606780546001600160a01b0319166001600160a01b03831617905561039c610188565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b15801561078357600080fd5b505afa158015610797573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bb9190610b30565b6001600160a01b0316146108115760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610316565b565b803b6108775760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610316565b600080516020610c6183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6109055760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610316565b600080846001600160a01b0316846040516109209190610bf1565b600060405180830381855af49150503d806000811461095b576040519150601f19603f3d011682016040523d82523d6000602084013e610960565b606091505b50915091506109888282604051806060016040528060278152602001610c81602791396109d1565b95945050505050565b61099a81610813565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156109e0575081610a0a565b8251156109f05782518084602001fd5b8160405162461bcd60e51b81526004016103169190610c0d565b9392505050565b6001600160a01b038116811461039c57600080fd5b600060208284031215610a3857600080fd5b8135610a0a81610a11565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610a8057600080fd5b8235610a8b81610a11565b915060208301356001600160401b0380821115610aa757600080fd5b818501915085601f830112610abb57600080fd5b813581811115610acd57610acd610a57565b604051601f8201601f19908116603f01168101908382118183101715610af557610af5610a57565b81604052828152886020848701011115610b0e57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215610b4257600080fd5b8151610a0a81610a11565b6020808252602c90820152600080516020610c4183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610c4183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610bdc578181015183820152602001610bc4565b83811115610beb576000848401525b50505050565b60008251610c03818460208701610bc1565b9190910192915050565b6020815260008251806020840152610c2c816040850160208701610bc1565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122002de3f6b3f7dde38f94479d48853058abdf013fbdbbf518b2e04c33c07aa5e0a64736f6c63430008080033";
177
+ "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610cdd61004b600039600081816102d801528181610321015281816103aa01526103ea0152610cdd6000f3fe6080604052600436106100765760003560e01c80631b3c90a81461007b578063313ce567146100925780633659cfe6146100b35780633e6326fc146100d35780634162169f146101005780634f1ef286146101205780635aef7de614610133578063c4d66de814610153578063e1758bd814610173575b600080fd5b34801561008757600080fd5b50610090610188565b005b34801561009e57600080fd5b50604051600381526020015b60405180910390f35b3480156100bf57600080fd5b506100906100ce366004610a26565b6102cd565b3480156100df57600080fd5b506067546100f3906001600160a01b031681565b6040516100aa9190610a43565b34801561010c57600080fd5b506065546100f3906001600160a01b031681565b61009061012e366004610a6d565b61039f565b34801561013f57600080fd5b506066546100f3906001600160a01b031681565b34801561015f57600080fd5b5061009061016e366004610a26565b610459565b34801561017f57600080fd5b506100f3610515565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156101e657600080fd5b505afa1580156101fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021e9190610b30565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561027357600080fd5b505afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610b30565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561031f5760405162461bcd60e51b815260040161031690610b4d565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103516105b1565b6001600160a01b0316146103775760405162461bcd60e51b815260040161031690610b87565b610380816105cd565b6040805160008082526020820190925261039c918391906105d5565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103e85760405162461bcd60e51b815260040161031690610b4d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661041a6105b1565b6001600160a01b0316146104405760405162461bcd60e51b815260040161031690610b87565b610449826105cd565b610455828260016105d5565b5050565b600054610100900460ff1680610472575060005460ff16155b6104d55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610316565b600054610100900460ff161580156104f7576000805461ffff19166101011790555b6105008261071c565b8015610455576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561057457600080fd5b505afa158015610588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ac9190610b30565b905090565b600080516020610c61833981519152546001600160a01b031690565b61039c61073f565b60006105df6105b1565b90506105ea84610813565b6000835111806105f75750815b156106085761060684846108a6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661071557805460ff19166001178155604051610683908690610654908590602401610a43565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526108a6565b50805460ff191681556106946105b1565b6001600160a01b0316826001600160a01b03161461070c5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610316565b61071585610991565b5050505050565b606780546001600160a01b0319166001600160a01b03831617905561039c610188565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b15801561078357600080fd5b505afa158015610797573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bb9190610b30565b6001600160a01b0316146108115760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610316565b565b803b6108775760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610316565b600080516020610c6183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6109055760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610316565b600080846001600160a01b0316846040516109209190610bf1565b600060405180830381855af49150503d806000811461095b576040519150601f19603f3d011682016040523d82523d6000602084013e610960565b606091505b50915091506109888282604051806060016040528060278152602001610c81602791396109d1565b95945050505050565b61099a81610813565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156109e0575081610a0a565b8251156109f05782518084602001fd5b8160405162461bcd60e51b81526004016103169190610c0d565b9392505050565b6001600160a01b038116811461039c57600080fd5b600060208284031215610a3857600080fd5b8135610a0a81610a11565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610a8057600080fd5b8235610a8b81610a11565b915060208301356001600160401b0380821115610aa757600080fd5b818501915085601f830112610abb57600080fd5b813581811115610acd57610acd610a57565b604051601f8201601f19908116603f01168101908382118183101715610af557610af5610a57565b81604052828152886020848701011115610b0e57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215610b4257600080fd5b8151610a0a81610a11565b6020808252602c90820152600080516020610c4183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610c4183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610bdc578181015183820152602001610bc4565b83811115610beb576000848401525b50505050565b60008251610c03818460208701610bc1565b9190910192915050565b6020815260008251806020840152610c2c816040850160208701610bc1565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212206a0a0ece664bc062c398bc4d1a7bc834c7d2315e5202922502bf5a048b93999c64736f6c63430008080033";
178
178
 
179
179
  type UpgradableMock3ConstructorParams =
180
180
  | [signer?: Signer]
@@ -174,7 +174,7 @@ const _abi = [
174
174
  ];
175
175
 
176
176
  const _bytecode =
177
- "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610cdd61004b600039600081816102d801528181610321015281816103aa01526103ea0152610cdd6000f3fe6080604052600436106100765760003560e01c80631b3c90a81461007b578063313ce567146100925780633659cfe6146100b35780633e6326fc146100d35780634162169f146101005780634f1ef286146101205780635aef7de614610133578063c4d66de814610153578063e1758bd814610173575b600080fd5b34801561008757600080fd5b50610090610188565b005b34801561009e57600080fd5b50604051600481526020015b60405180910390f35b3480156100bf57600080fd5b506100906100ce366004610a26565b6102cd565b3480156100df57600080fd5b506067546100f3906001600160a01b031681565b6040516100aa9190610a43565b34801561010c57600080fd5b506065546100f3906001600160a01b031681565b61009061012e366004610a6d565b61039f565b34801561013f57600080fd5b506066546100f3906001600160a01b031681565b34801561015f57600080fd5b5061009061016e366004610a26565b610459565b34801561017f57600080fd5b506100f3610515565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156101e657600080fd5b505afa1580156101fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021e9190610b30565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561027357600080fd5b505afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610b30565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561031f5760405162461bcd60e51b815260040161031690610b4d565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103516105b1565b6001600160a01b0316146103775760405162461bcd60e51b815260040161031690610b87565b610380816105cd565b6040805160008082526020820190925261039c918391906105d5565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103e85760405162461bcd60e51b815260040161031690610b4d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661041a6105b1565b6001600160a01b0316146104405760405162461bcd60e51b815260040161031690610b87565b610449826105cd565b610455828260016105d5565b5050565b600054610100900460ff1680610472575060005460ff16155b6104d55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610316565b600054610100900460ff161580156104f7576000805461ffff19166101011790555b6105008261071c565b8015610455576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561057457600080fd5b505afa158015610588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ac9190610b30565b905090565b600080516020610c61833981519152546001600160a01b031690565b61039c61073f565b60006105df6105b1565b90506105ea84610813565b6000835111806105f75750815b156106085761060684846108a6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661071557805460ff19166001178155604051610683908690610654908590602401610a43565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526108a6565b50805460ff191681556106946105b1565b6001600160a01b0316826001600160a01b03161461070c5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610316565b61071585610991565b5050505050565b606780546001600160a01b0319166001600160a01b03831617905561039c610188565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b15801561078357600080fd5b505afa158015610797573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bb9190610b30565b6001600160a01b0316146108115760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610316565b565b803b6108775760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610316565b600080516020610c6183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6109055760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610316565b600080846001600160a01b0316846040516109209190610bf1565b600060405180830381855af49150503d806000811461095b576040519150601f19603f3d011682016040523d82523d6000602084013e610960565b606091505b50915091506109888282604051806060016040528060278152602001610c81602791396109d1565b95945050505050565b61099a81610813565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156109e0575081610a0a565b8251156109f05782518084602001fd5b8160405162461bcd60e51b81526004016103169190610c0d565b9392505050565b6001600160a01b038116811461039c57600080fd5b600060208284031215610a3857600080fd5b8135610a0a81610a11565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610a8057600080fd5b8235610a8b81610a11565b915060208301356001600160401b0380821115610aa757600080fd5b818501915085601f830112610abb57600080fd5b813581811115610acd57610acd610a57565b604051601f8201601f19908116603f01168101908382118183101715610af557610af5610a57565b81604052828152886020848701011115610b0e57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215610b4257600080fd5b8151610a0a81610a11565b6020808252602c90820152600080516020610c4183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610c4183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610bdc578181015183820152602001610bc4565b83811115610beb576000848401525b50505050565b60008251610c03818460208701610bc1565b9190910192915050565b6020815260008251806020840152610c2c816040850160208701610bc1565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212206e2e11efe963ec09dd6776da0580447ed0959896a09427db1c3f6e84a87407ee64736f6c63430008080033";
177
+ "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610cdd61004b600039600081816102d801528181610321015281816103aa01526103ea0152610cdd6000f3fe6080604052600436106100765760003560e01c80631b3c90a81461007b578063313ce567146100925780633659cfe6146100b35780633e6326fc146100d35780634162169f146101005780634f1ef286146101205780635aef7de614610133578063c4d66de814610153578063e1758bd814610173575b600080fd5b34801561008757600080fd5b50610090610188565b005b34801561009e57600080fd5b50604051600481526020015b60405180910390f35b3480156100bf57600080fd5b506100906100ce366004610a26565b6102cd565b3480156100df57600080fd5b506067546100f3906001600160a01b031681565b6040516100aa9190610a43565b34801561010c57600080fd5b506065546100f3906001600160a01b031681565b61009061012e366004610a6d565b61039f565b34801561013f57600080fd5b506066546100f3906001600160a01b031681565b34801561015f57600080fd5b5061009061016e366004610a26565b610459565b34801561017f57600080fd5b506100f3610515565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156101e657600080fd5b505afa1580156101fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061021e9190610b30565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561027357600080fd5b505afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610b30565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561031f5760405162461bcd60e51b815260040161031690610b4d565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166103516105b1565b6001600160a01b0316146103775760405162461bcd60e51b815260040161031690610b87565b610380816105cd565b6040805160008082526020820190925261039c918391906105d5565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156103e85760405162461bcd60e51b815260040161031690610b4d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661041a6105b1565b6001600160a01b0316146104405760405162461bcd60e51b815260040161031690610b87565b610449826105cd565b610455828260016105d5565b5050565b600054610100900460ff1680610472575060005460ff16155b6104d55760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610316565b600054610100900460ff161580156104f7576000805461ffff19166101011790555b6105008261071c565b8015610455576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561057457600080fd5b505afa158015610588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ac9190610b30565b905090565b600080516020610c61833981519152546001600160a01b031690565b61039c61073f565b60006105df6105b1565b90506105ea84610813565b6000835111806105f75750815b156106085761060684846108a6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661071557805460ff19166001178155604051610683908690610654908590602401610a43565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526108a6565b50805460ff191681556106946105b1565b6001600160a01b0316826001600160a01b03161461070c5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610316565b61071585610991565b5050505050565b606780546001600160a01b0319166001600160a01b03831617905561039c610188565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b15801561078357600080fd5b505afa158015610797573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bb9190610b30565b6001600160a01b0316146108115760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610316565b565b803b6108775760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610316565b600080516020610c6183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6109055760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610316565b600080846001600160a01b0316846040516109209190610bf1565b600060405180830381855af49150503d806000811461095b576040519150601f19603f3d011682016040523d82523d6000602084013e610960565b606091505b50915091506109888282604051806060016040528060278152602001610c81602791396109d1565b95945050505050565b61099a81610813565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156109e0575081610a0a565b8251156109f05782518084602001fd5b8160405162461bcd60e51b81526004016103169190610c0d565b9392505050565b6001600160a01b038116811461039c57600080fd5b600060208284031215610a3857600080fd5b8135610a0a81610a11565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b60008060408385031215610a8057600080fd5b8235610a8b81610a11565b915060208301356001600160401b0380821115610aa757600080fd5b818501915085601f830112610abb57600080fd5b813581811115610acd57610acd610a57565b604051601f8201601f19908116603f01168101908382118183101715610af557610af5610a57565b81604052828152886020848701011115610b0e57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215610b4257600080fd5b8151610a0a81610a11565b6020808252602c90820152600080516020610c4183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610c4183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610bdc578181015183820152602001610bc4565b83811115610beb576000848401525b50505050565b60008251610c03818460208701610bc1565b9190910192915050565b6020815260008251806020840152610c2c816040850160208701610bc1565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220026a86a66c031ec808b7033edd41f2884e3424301e9bbca39bb80077e753f5dd64736f6c63430008080033";
178
178
 
179
179
  type UpgradableMock4ConstructorParams =
180
180
  | [signer?: Signer]
@@ -187,7 +187,7 @@ const _abi = [
187
187
  ];
188
188
 
189
189
  const _bytecode =
190
- "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610c0961004b600039600081816103030152818161034c015281816103cc015261040c0152610c096000f3fe6080604052600436106100815760003560e01c80631b3c90a814610086578063313ce5671461009d5780633659cfe6146100be5780633e6326fc146100de5780634162169f1461010b5780634f1ef2861461012b5780635aef7de61461013e5780638da5cb5b1461015e578063c4d66de81461017e578063e1758bd81461019e575b600080fd5b34801561009257600080fd5b5061009b6101b3565b005b3480156100a957600080fd5b50604051600881526020015b60405180910390f35b3480156100ca57600080fd5b5061009b6100d9366004610952565b6102f8565b3480156100ea57600080fd5b506067546100fe906001600160a01b031681565b6040516100b5919061096f565b34801561011757600080fd5b506065546100fe906001600160a01b031681565b61009b610139366004610999565b6103c1565b34801561014a57600080fd5b506066546100fe906001600160a01b031681565b34801561016a57600080fd5b50609a546100fe906001600160a01b031681565b34801561018a57600080fd5b5061009b610199366004610952565b610472565b3480156101aa57600080fd5b506100fe610540565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b15801561021157600080fd5b505afa158015610225573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102499190610a5c565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561029e57600080fd5b505afa1580156102b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d69190610a5c565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561034a5760405162461bcd60e51b815260040161034190610a79565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661037c6105dc565b6001600160a01b0316146103a25760405162461bcd60e51b815260040161034190610ab3565b604080516000808252602082019092526103be918391906105f8565b50565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561040a5760405162461bcd60e51b815260040161034190610a79565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661043c6105dc565b6001600160a01b0316146104625760405162461bcd60e51b815260040161034190610ab3565b61046e828260016105f8565b5050565b600054610100900460ff168061048b575060005460ff16155b6104ee5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610341565b600054610100900460ff16158015610510576000805461ffff19166101011790555b609a80546001600160a01b0319166001600160a01b038416179055801561046e576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561059f57600080fd5b505afa1580156105b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d79190610a5c565b905090565b600080516020610b8d833981519152546001600160a01b031690565b60006106026105dc565b905061060d8461073f565b60008351118061061a5750815b1561062b5761062984846107d2565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661073857805460ff191660011781556040516106a690869061067790859060240161096f565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526107d2565b50805460ff191681556106b76105dc565b6001600160a01b0316826001600160a01b03161461072f5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610341565b610738856108bd565b5050505050565b803b6107a35760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610341565b600080516020610b8d83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6108315760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610341565b600080846001600160a01b03168460405161084c9190610b1d565b600060405180830381855af49150503d8060008114610887576040519150601f19603f3d011682016040523d82523d6000602084013e61088c565b606091505b50915091506108b48282604051806060016040528060278152602001610bad602791396108fd565b95945050505050565b6108c68161073f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060831561090c575081610936565b82511561091c5782518084602001fd5b8160405162461bcd60e51b81526004016103419190610b39565b9392505050565b6001600160a01b03811681146103be57600080fd5b60006020828403121561096457600080fd5b81356109368161093d565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156109ac57600080fd5b82356109b78161093d565b915060208301356001600160401b03808211156109d357600080fd5b818501915085601f8301126109e757600080fd5b8135818111156109f9576109f9610983565b604051601f8201601f19908116603f01168101908382118183101715610a2157610a21610983565b81604052828152886020848701011115610a3a57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215610a6e57600080fd5b81516109368161093d565b6020808252602c90820152600080516020610b6d83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610b6d83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610b08578181015183820152602001610af0565b83811115610b17576000848401525b50505050565b60008251610b2f818460208701610aed565b9190910192915050565b6020815260008251806020840152610b58816040850160208701610aed565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220d330d9a5a31a60758f9e60c8e6e3dd8e17f7846bfe81cd3360c08839c3ea7ae264736f6c63430008080033";
190
+ "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c610c0961004b600039600081816103030152818161034c015281816103cc015261040c0152610c096000f3fe6080604052600436106100815760003560e01c80631b3c90a814610086578063313ce5671461009d5780633659cfe6146100be5780633e6326fc146100de5780634162169f1461010b5780634f1ef2861461012b5780635aef7de61461013e5780638da5cb5b1461015e578063c4d66de81461017e578063e1758bd81461019e575b600080fd5b34801561009257600080fd5b5061009b6101b3565b005b3480156100a957600080fd5b50604051600881526020015b60405180910390f35b3480156100ca57600080fd5b5061009b6100d9366004610952565b6102f8565b3480156100ea57600080fd5b506067546100fe906001600160a01b031681565b6040516100b5919061096f565b34801561011757600080fd5b506065546100fe906001600160a01b031681565b61009b610139366004610999565b6103c1565b34801561014a57600080fd5b506066546100fe906001600160a01b031681565b34801561016a57600080fd5b50609a546100fe906001600160a01b031681565b34801561018a57600080fd5b5061009b610199366004610952565b610472565b3480156101aa57600080fd5b506100fe610540565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b15801561021157600080fd5b505afa158015610225573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102499190610a5c565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561029e57600080fd5b505afa1580156102b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d69190610a5c565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561034a5760405162461bcd60e51b815260040161034190610a79565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661037c6105dc565b6001600160a01b0316146103a25760405162461bcd60e51b815260040161034190610ab3565b604080516000808252602082019092526103be918391906105f8565b50565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561040a5760405162461bcd60e51b815260040161034190610a79565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661043c6105dc565b6001600160a01b0316146104625760405162461bcd60e51b815260040161034190610ab3565b61046e828260016105f8565b5050565b600054610100900460ff168061048b575060005460ff16155b6104ee5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610341565b600054610100900460ff16158015610510576000805461ffff19166101011790555b609a80546001600160a01b0319166001600160a01b038416179055801561046e576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561059f57600080fd5b505afa1580156105b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d79190610a5c565b905090565b600080516020610b8d833981519152546001600160a01b031690565b60006106026105dc565b905061060d8461073f565b60008351118061061a5750815b1561062b5761062984846107d2565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661073857805460ff191660011781556040516106a690869061067790859060240161096f565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526107d2565b50805460ff191681556106b76105dc565b6001600160a01b0316826001600160a01b03161461072f5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610341565b610738856108bd565b5050505050565b803b6107a35760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610341565b600080516020610b8d83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6108315760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610341565b600080846001600160a01b03168460405161084c9190610b1d565b600060405180830381855af49150503d8060008114610887576040519150601f19603f3d011682016040523d82523d6000602084013e61088c565b606091505b50915091506108b48282604051806060016040528060278152602001610bad602791396108fd565b95945050505050565b6108c68161073f565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060831561090c575081610936565b82511561091c5782518084602001fd5b8160405162461bcd60e51b81526004016103419190610b39565b9392505050565b6001600160a01b03811681146103be57600080fd5b60006020828403121561096457600080fd5b81356109368161093d565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156109ac57600080fd5b82356109b78161093d565b915060208301356001600160401b03808211156109d357600080fd5b818501915085601f8301126109e757600080fd5b8135818111156109f9576109f9610983565b604051601f8201601f19908116603f01168101908382118183101715610a2157610a21610983565b81604052828152886020848701011115610a3a57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600060208284031215610a6e57600080fd5b81516109368161093d565b6020808252602c90820152600080516020610b6d83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020610b6d83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60005b83811015610b08578181015183820152602001610af0565b83811115610b17576000848401525b50505050565b60008251610b2f818460208701610aed565b9190910192915050565b6020815260008251806020840152610b58816040850160208701610aed565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212203a1c03e829621e51ec2ce8aafeff4524eea90afd9eb5dc47013fa03648d8d3fa64736f6c63430008080033";
191
191
 
192
192
  type UpgradableMockConstructorParams =
193
193
  | [signer?: Signer]
@@ -444,6 +444,10 @@ declare module "hardhat/types/runtime" {
444
444
  name: "UBIScheme",
445
445
  signerOrOptions?: ethers.Signer | FactoryOptions
446
446
  ): Promise<Contracts.UBIScheme__factory>;
447
+ getContractFactory(
448
+ name: "AdminWallet",
449
+ signerOrOptions?: ethers.Signer | FactoryOptions
450
+ ): Promise<Contracts.AdminWallet__factory>;
447
451
  getContractFactory(
448
452
  name: "BancorFormula",
449
453
  signerOrOptions?: ethers.Signer | FactoryOptions
@@ -1041,6 +1045,11 @@ declare module "hardhat/types/runtime" {
1041
1045
  address: string,
1042
1046
  signer?: ethers.Signer
1043
1047
  ): Promise<Contracts.UBIScheme>;
1048
+ getContractAt(
1049
+ name: "AdminWallet",
1050
+ address: string,
1051
+ signer?: ethers.Signer
1052
+ ): Promise<Contracts.AdminWallet>;
1044
1053
  getContractAt(
1045
1054
  name: "BancorFormula",
1046
1055
  address: string,
package/types/index.ts CHANGED
@@ -109,6 +109,7 @@ export type { SimpleStaking } from "./SimpleStaking";
109
109
  export type { SimpleStakingV2 } from "./SimpleStakingV2";
110
110
  export type { UniswapV2SwapHelper } from "./UniswapV2SwapHelper";
111
111
  export type { UBIScheme } from "./UBIScheme";
112
+ export type { AdminWallet } from "./AdminWallet";
112
113
  export type { BancorFormula } from "./BancorFormula";
113
114
  export type { BulkProof } from "./BulkProof";
114
115
  export type { DAOContract } from "./DAOContract";
@@ -232,6 +233,7 @@ export { SimpleStaking__factory } from "./factories/SimpleStaking__factory";
232
233
  export { SimpleStakingV2__factory } from "./factories/SimpleStakingV2__factory";
233
234
  export { UniswapV2SwapHelper__factory } from "./factories/UniswapV2SwapHelper__factory";
234
235
  export { UBIScheme__factory } from "./factories/UBIScheme__factory";
236
+ export { AdminWallet__factory } from "./factories/AdminWallet__factory";
235
237
  export { BancorFormula__factory } from "./factories/BancorFormula__factory";
236
238
  export { BulkProof__factory } from "./factories/BulkProof__factory";
237
239
  export { DAOContract__factory } from "./factories/DAOContract__factory";