@gooddollar/goodprotocol 1.0.29-beta.0 → 1.0.29-beta.2

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 (406) hide show
  1. package/artifacts/abis/AdminWallet.min.json +1 -1
  2. package/artifacts/abis/BulkProof.min.json +1 -1
  3. package/artifacts/abis/DistributionBridgeMock.min.json +1 -0
  4. package/artifacts/abis/DistributionHelper.min.json +1 -0
  5. package/artifacts/abis/DistributionHelperTest.min.json +1 -0
  6. package/artifacts/abis/DistributionHelperTestHelper.min.json +1 -0
  7. package/artifacts/abis/ERC20.min.json +1 -1
  8. package/artifacts/abis/Faucet.min.json +1 -0
  9. package/artifacts/abis/GoodDollarMintBurnWrapper.min.json +1 -0
  10. package/artifacts/abis/GoodDollarStaking.min.json +1 -0
  11. package/artifacts/abis/GoodDollarStakingMock.min.json +1 -0
  12. package/artifacts/abis/GoodReserveCDai.min.json +1 -1
  13. package/artifacts/abis/IERC2917.min.json +1 -1
  14. package/artifacts/abis/IGoodDollar.min.json +1 -1
  15. package/artifacts/abis/IGoodDollarStakingTest.min.json +1 -0
  16. package/artifacts/abis/IGovernanceStaking.min.json +1 -0
  17. package/artifacts/abis/IIdentity.min.json +1 -1
  18. package/artifacts/abis/IIdentityV2.min.json +1 -0
  19. package/artifacts/abis/IMultichainRouter.min.json +1 -0
  20. package/artifacts/abis/IRouter.min.json +1 -0
  21. package/artifacts/abis/IWrapper.min.json +1 -0
  22. package/artifacts/abis/IdentityV2.min.json +1 -0
  23. package/artifacts/abis/InvitesV2.min.json +1 -0
  24. package/artifacts/abis/Math64x64.min.json +1 -0
  25. package/artifacts/abis/MultichainBridgeHelper.min.json +1 -0
  26. package/artifacts/abis/MultichainRouterMock.min.json +1 -0
  27. package/artifacts/abis/OverMintTester.min.json +1 -1
  28. package/artifacts/abis/PausableControl.min.json +1 -0
  29. package/artifacts/abis/RewardsMinter.min.json +1 -0
  30. package/artifacts/abis/StakingMockFixedAPY.min.json +1 -0
  31. package/artifacts/abis/StakingRewardsFixedAPY.min.json +1 -0
  32. package/artifacts/abis/TokenOperation.min.json +1 -0
  33. package/artifacts/abis/UBIScheme.min.json +1 -1
  34. package/artifacts/abis/cERC20.min.json +1 -1
  35. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  36. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  37. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  38. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  39. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  40. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  41. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  42. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  43. package/artifacts/contracts/Interfaces.sol/ERC20.json +13 -0
  44. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  45. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  46. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  47. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  48. package/artifacts/contracts/Interfaces.sol/IERC2917.json +13 -0
  49. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  50. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  51. package/artifacts/contracts/Interfaces.sol/IGoodDollar.json +39 -0
  52. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  53. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  54. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  55. package/artifacts/contracts/Interfaces.sol/IIdentity.json +51 -0
  56. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +4 -0
  57. package/artifacts/contracts/Interfaces.sol/IIdentityV2.json +281 -0
  58. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  59. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +4 -0
  60. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.json +67 -0
  61. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  62. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  63. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  64. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  65. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  66. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  67. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  68. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  69. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  70. package/artifacts/contracts/Interfaces.sol/cERC20.json +13 -0
  71. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +4 -0
  72. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +684 -0
  73. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  74. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +2 -2
  75. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  76. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  77. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  78. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
  79. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  80. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
  81. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +4 -0
  82. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.json +1335 -0
  83. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +4 -0
  84. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.json +24 -0
  85. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +4 -0
  86. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.json +35 -0
  87. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  88. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
  89. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  90. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  91. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  92. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  93. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  94. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +4 -0
  95. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +1000 -0
  96. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  97. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
  98. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +4 -0
  99. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.json +586 -0
  100. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  101. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  102. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  103. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +4 -0
  104. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.json +152 -0
  105. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +4 -0
  106. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.json +662 -0
  107. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +4 -0
  108. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.json +680 -0
  109. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  110. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  111. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +4 -0
  112. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.json +1335 -0
  113. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  114. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
  115. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  116. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  117. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +4 -0
  118. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.json +59 -0
  119. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +4 -0
  120. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.json +81 -0
  121. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +4 -0
  122. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.json +49 -0
  123. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  124. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +4 -4
  125. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  126. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  127. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  128. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +4 -0
  129. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.json +682 -0
  130. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  131. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
  132. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  133. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  134. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  135. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  136. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  137. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  138. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
  139. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  140. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
  141. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  142. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  143. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  144. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  145. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  146. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  147. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  148. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  149. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +4 -0
  150. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.json +662 -0
  151. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  152. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
  153. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  154. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
  155. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  156. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  157. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +75 -35
  158. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  159. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
  160. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  161. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
  162. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  163. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  164. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  165. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  166. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  167. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  168. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  169. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
  170. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  171. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  172. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  173. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
  174. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  175. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  176. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  177. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  178. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  179. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  180. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  181. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  182. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  183. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  184. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  185. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  186. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +4 -0
  187. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.json +10 -0
  188. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +4 -0
  189. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.json +268 -0
  190. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  191. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +15 -22
  192. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  193. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +76 -56
  194. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  195. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  196. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +3 -34
  197. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  198. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
  199. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  200. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
  201. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  202. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  203. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +4 -0
  204. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +1263 -0
  205. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +4 -0
  206. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.json +59 -0
  207. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +4 -0
  208. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.json +69 -0
  209. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +4 -0
  210. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +10 -0
  211. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +4 -0
  212. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.json +79 -0
  213. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  214. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  215. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  216. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
  217. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  218. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
  219. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  220. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
  221. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  222. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
  223. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  224. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  225. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  226. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  227. package/contracts/Interfaces.sol +46 -0
  228. package/contracts/fuseFaucet/Faucet.sol +245 -0
  229. package/contracts/governance/GoodDollarStaking.sol +524 -0
  230. package/contracts/governance/MultiBaseGovernanceShareField.sol +1 -0
  231. package/contracts/identity/IdentityV2.sol +434 -0
  232. package/contracts/invite/InvitesV2.sol +316 -0
  233. package/contracts/mocks/DistributionBridgeMock.sol +50 -0
  234. package/contracts/mocks/DistributionHelperTest.sol +22 -0
  235. package/contracts/mocks/GoodDollarStakingMock.sol +24 -0
  236. package/contracts/mocks/MultichainRouterMock.sol +38 -0
  237. package/contracts/mocks/OverMintTester.sol +39 -25
  238. package/contracts/mocks/StakingMockFixedAPY.sol +78 -0
  239. package/contracts/reserve/DistributionHelper.sol +142 -0
  240. package/contracts/reserve/GoodReserveCDai.sol +95 -41
  241. package/contracts/staking/utils/Math64X64.sol +268 -0
  242. package/contracts/staking/utils/StakingRewardsFixedAPY.sol +336 -0
  243. package/contracts/ubi/UBIScheme.sol +45 -40
  244. package/contracts/utils/AdminWallet.sol +42 -11
  245. package/contracts/utils/BulkProof.sol +10 -10
  246. package/contracts/utils/GoodDollarMintBurnWrapper.sol +638 -0
  247. package/contracts/utils/MultichainBridgeHelper.sol +39 -0
  248. package/hardhat.config.ts +21 -5
  249. package/package.json +9 -5
  250. package/patches/@openzeppelin+hardhat-upgrades+1.7.0.patch.depracate +67 -0
  251. package/releases/deploy-settings.json +36 -1
  252. package/releases/deployment.json +103 -55
  253. package/releases/olddao.json +1 -1
  254. package/scripts/analytics/activeUsersCount.ts +65 -0
  255. package/scripts/analytics/activeWalletsStats.ts +150 -0
  256. package/scripts/analytics/claimIncidentStats.ts +117 -0
  257. package/scripts/analytics/faucetStats.ts +103 -0
  258. package/scripts/analytics/goodHolders.ts +50 -0
  259. package/scripts/{misc → analytics}/goodgiveback.ts +0 -0
  260. package/scripts/governance/airdropCalculation.ts +1 -0
  261. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +45 -0
  262. package/scripts/multichain-deploy/{basicdao-deploy.ts → 1_basicdao-deploy.ts} +75 -56
  263. package/scripts/multichain-deploy/2_helpers-deploy.ts +143 -0
  264. package/scripts/multichain-deploy/3_gdSavings-deploy.ts +246 -0
  265. package/scripts/multichain-deploy/4_ubi-deploy.ts +121 -0
  266. package/scripts/multichain-deploy/5_gov-deploy.ts +123 -0
  267. package/scripts/multichain-deploy/helpers.ts +72 -8
  268. package/scripts/multichain-deploy/multichainWrapper-deploy.ts +56 -0
  269. package/scripts/multichain-deploy/verifyEtherscan.ts +84 -0
  270. package/scripts/test/localOldDaoDeploy.ts +10 -3
  271. package/scripts/upgrades/identity-upgrade.ts +153 -0
  272. package/scripts/upgrades/nonubiDistribution-deploy.ts +167 -0
  273. package/scripts/voltageswaps.ts +47 -0
  274. package/test/governance/ClaimersDistribution.test.ts +1 -1
  275. package/test/governance/GoodDollarStaking.gd.test.ts +559 -0
  276. package/test/governance/GoodDollarStaking.good.test.ts +998 -0
  277. package/test/governance/GovernanceStaking.test.ts +43 -0
  278. package/test/helpers.ts +21 -20
  279. package/test/reserve/DistributionHelper.test.ts +394 -0
  280. package/test/reserve/GoodReserveCDai.distribution.test.ts +296 -0
  281. package/test/reserve/GoodReserveCDai.gdx.test.ts +21 -16
  282. package/test/reserve/GoodReserveCDai.pause.test.ts +116 -0
  283. package/test/staking/StakingRewardsFixedAPY.test.ts +900 -0
  284. package/test/ubi/UBIScheme.test.ts +30 -30
  285. package/test/ubi/UBISchemeCycle.test.ts +9 -7
  286. package/test/utils/AdminWallet.test.ts +40 -13
  287. package/test/utils/GoodDollarMintBurnWrapper.test.ts +796 -0
  288. package/tsconfig.json +4 -9
  289. package/types/AccessControl.ts +361 -0
  290. package/types/AdminWallet.ts +124 -113
  291. package/types/CERC20.ts +25 -0
  292. package/types/DistributionBridgeMock.ts +251 -0
  293. package/types/DistributionHelper.ts +908 -0
  294. package/types/DistributionHelperTest.ts +909 -0
  295. package/types/DistributionHelperTestHelper.ts +945 -0
  296. package/types/ERC165.ts +104 -0
  297. package/types/ERC20.ts +101 -49
  298. package/types/Faucet.ts +1014 -0
  299. package/types/GoodDollarMintBurnWrapper.ts +1806 -0
  300. package/types/GoodDollarStaking.ts +1889 -0
  301. package/types/GoodDollarStakingMock.ts +1889 -0
  302. package/types/GoodReserveCDai.ts +90 -55
  303. package/types/IAccessControl.ts +306 -0
  304. package/types/IERC1271.ts +109 -0
  305. package/types/IERC165.ts +104 -0
  306. package/types/IERC20.ts +300 -0
  307. package/types/IERC20Metadata.ts +339 -0
  308. package/types/IERC2917.ts +25 -0
  309. package/types/IGoodDollar.ts +54 -0
  310. package/types/IGoodDollarStakingTest.ts +160 -0
  311. package/types/{BulkProof.ts → IGovernanceStaking.ts} +15 -28
  312. package/types/IIdentity.ts +75 -0
  313. package/types/IIdentityV2.ts +526 -0
  314. package/types/IMultichainRouter.ts +166 -0
  315. package/types/IRouter.ts +143 -0
  316. package/types/IWrapper.ts +143 -0
  317. package/types/IdentityV2.ts +1612 -0
  318. package/types/InvitesV2.ts +933 -0
  319. package/types/MultichainBridgeHelper.ts +170 -0
  320. package/types/MultichainRouterMock.ts +141 -0
  321. package/types/Pausable.ts +103 -0
  322. package/types/PausableControl.ts +125 -0
  323. package/types/RewardsMinter.ts +107 -0
  324. package/types/StakingMockFixedAPY.ts +995 -0
  325. package/types/StakingRewardsFixedAPY.ts +428 -0
  326. package/types/UBIScheme.ts +19 -40
  327. package/types/factories/AaveStakingFactory__factory.ts +1 -1
  328. package/types/factories/AccessControl__factory.ts +227 -0
  329. package/types/factories/AdminWallet__factory.ts +75 -55
  330. package/types/factories/BaseShareFieldV2__factory.ts +1 -1
  331. package/types/factories/BaseShareField__factory.ts +1 -1
  332. package/types/factories/CERC20__factory.ts +13 -0
  333. package/types/factories/ClaimersDistribution__factory.ts +1 -1
  334. package/types/factories/CompoundStakingFactory__factory.ts +1 -1
  335. package/types/factories/CompoundVotingMachine__factory.ts +1 -1
  336. package/types/factories/DAOContract__factory.ts +1 -1
  337. package/types/factories/DAOUpgradeableContract__factory.ts +1 -1
  338. package/types/factories/DistributionBridgeMock__factory.ts +207 -0
  339. package/types/factories/DistributionHelperTestHelper__factory.ts +737 -0
  340. package/types/factories/DistributionHelperTest__factory.ts +717 -0
  341. package/types/factories/DistributionHelper__factory.ts +713 -0
  342. package/types/factories/DonationsStaking__factory.ts +1 -1
  343. package/types/factories/ERC165__factory.ts +39 -0
  344. package/types/factories/ERC20__factory.ts +13 -0
  345. package/types/factories/ExchangeHelper__factory.ts +1 -1
  346. package/types/factories/Faucet__factory.ts +729 -0
  347. package/types/factories/FuseFaucet__factory.ts +1 -1
  348. package/types/factories/FuseStakingV3__factory.ts +1 -1
  349. package/types/factories/GReputation__factory.ts +1 -1
  350. package/types/factories/GoodAaveStakingV2__factory.ts +1 -1
  351. package/types/factories/GoodAaveStaking__factory.ts +1 -1
  352. package/types/factories/GoodCompoundStakingTest__factory.ts +1 -1
  353. package/types/factories/GoodCompoundStakingV2__factory.ts +1 -1
  354. package/types/factories/GoodCompoundStaking__factory.ts +1 -1
  355. package/types/factories/GoodDollarMintBurnWrapper__factory.ts +1318 -0
  356. package/types/factories/GoodDollarStakingMock__factory.ts +1417 -0
  357. package/types/factories/GoodDollarStaking__factory.ts +1413 -0
  358. package/types/factories/GoodFundManagerTest__factory.ts +1 -1
  359. package/types/factories/GoodFundManager__factory.ts +1 -1
  360. package/types/factories/GoodMarketMaker__factory.ts +1 -1
  361. package/types/factories/GoodReserveCDai__factory.ts +74 -34
  362. package/types/factories/GovernanceStaking__factory.ts +1 -1
  363. package/types/factories/IAccessControl__factory.ts +198 -0
  364. package/types/factories/IERC1271__factory.ts +47 -0
  365. package/types/factories/IERC165__factory.ts +42 -0
  366. package/types/factories/IERC20Metadata__factory.ts +248 -0
  367. package/types/factories/IERC20__factory.ts +203 -0
  368. package/types/factories/IERC2917__factory.ts +13 -0
  369. package/types/factories/IGoodDollarStakingTest__factory.ts +68 -0
  370. package/types/factories/IGoodDollar__factory.ts +39 -0
  371. package/types/factories/IGovernanceStaking__factory.ts +39 -0
  372. package/types/factories/IIdentityV2__factory.ts +293 -0
  373. package/types/factories/IIdentity__factory.ts +51 -0
  374. package/types/factories/IMultichainRouter__factory.ts +82 -0
  375. package/types/factories/IRouter__factory.ts +71 -0
  376. package/types/factories/IWrapper__factory.ts +71 -0
  377. package/types/factories/IdentityV2__factory.ts +1048 -0
  378. package/types/factories/InvitesV1__factory.ts +1 -1
  379. package/types/factories/InvitesV2__factory.ts +634 -0
  380. package/types/factories/MultichainBridgeHelper__factory.ts +134 -0
  381. package/types/factories/MultichainRouterMock__factory.ts +141 -0
  382. package/types/factories/OverMintTesterRegularStake__factory.ts +1 -1
  383. package/types/factories/OverMintTester__factory.ts +3 -3
  384. package/types/factories/PausableControl__factory.ts +84 -0
  385. package/types/factories/Pausable__factory.ts +62 -0
  386. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +1 -1
  387. package/types/factories/ProtocolUpgradeFuse__factory.ts +1 -1
  388. package/types/factories/ProtocolUpgradeRecover__factory.ts +1 -1
  389. package/types/factories/ProtocolUpgrade__factory.ts +1 -1
  390. package/types/factories/ReputationTestHelper__factory.ts +1 -1
  391. package/types/factories/Reputation__factory.ts +1 -1
  392. package/types/factories/RewardsMinter__factory.ts +47 -0
  393. package/types/factories/StakersDistribution__factory.ts +1 -1
  394. package/types/factories/StakingMockFixedAPY__factory.ts +745 -0
  395. package/types/factories/StakingRewardsFixedAPY__factory.ts +287 -0
  396. package/types/factories/SwapHelperTest__factory.ts +1 -1
  397. package/types/factories/UBIScheme__factory.ts +14 -21
  398. package/types/factories/UniswapV2SwapHelper__factory.ts +1 -1
  399. package/types/factories/UpgradableMock2__factory.ts +1 -1
  400. package/types/factories/UpgradableMock3__factory.ts +1 -1
  401. package/types/factories/UpgradableMock4__factory.ts +1 -1
  402. package/types/factories/UpgradableMock__factory.ts +1 -1
  403. package/types/hardhat.d.ts +279 -9
  404. package/types/index.ts +62 -4
  405. package/yarn.lock +184 -108
  406. package/types/factories/BulkProof__factory.ts +0 -89
@@ -0,0 +1,1048 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+
5
+ import { Signer, utils, Contract, ContractFactory, Overrides } from "ethers";
6
+ import { Provider, TransactionRequest } from "@ethersproject/providers";
7
+ import type { IdentityV2, IdentityV2Interface } from "../IdentityV2";
8
+
9
+ const _abi = [
10
+ {
11
+ anonymous: false,
12
+ inputs: [
13
+ {
14
+ indexed: false,
15
+ internalType: "address",
16
+ name: "previousAdmin",
17
+ type: "address",
18
+ },
19
+ {
20
+ indexed: false,
21
+ internalType: "address",
22
+ name: "newAdmin",
23
+ type: "address",
24
+ },
25
+ ],
26
+ name: "AdminChanged",
27
+ type: "event",
28
+ },
29
+ {
30
+ anonymous: false,
31
+ inputs: [
32
+ {
33
+ indexed: true,
34
+ internalType: "address",
35
+ name: "beacon",
36
+ type: "address",
37
+ },
38
+ ],
39
+ name: "BeaconUpgraded",
40
+ type: "event",
41
+ },
42
+ {
43
+ anonymous: false,
44
+ inputs: [
45
+ {
46
+ indexed: true,
47
+ internalType: "address",
48
+ name: "account",
49
+ type: "address",
50
+ },
51
+ ],
52
+ name: "BlacklistAdded",
53
+ type: "event",
54
+ },
55
+ {
56
+ anonymous: false,
57
+ inputs: [
58
+ {
59
+ indexed: true,
60
+ internalType: "address",
61
+ name: "account",
62
+ type: "address",
63
+ },
64
+ ],
65
+ name: "BlacklistRemoved",
66
+ type: "event",
67
+ },
68
+ {
69
+ anonymous: false,
70
+ inputs: [
71
+ {
72
+ indexed: true,
73
+ internalType: "address",
74
+ name: "account",
75
+ type: "address",
76
+ },
77
+ ],
78
+ name: "ContractAdded",
79
+ type: "event",
80
+ },
81
+ {
82
+ anonymous: false,
83
+ inputs: [
84
+ {
85
+ indexed: true,
86
+ internalType: "address",
87
+ name: "account",
88
+ type: "address",
89
+ },
90
+ ],
91
+ name: "ContractRemoved",
92
+ type: "event",
93
+ },
94
+ {
95
+ anonymous: false,
96
+ inputs: [
97
+ {
98
+ indexed: false,
99
+ internalType: "address",
100
+ name: "account",
101
+ type: "address",
102
+ },
103
+ ],
104
+ name: "Paused",
105
+ type: "event",
106
+ },
107
+ {
108
+ anonymous: false,
109
+ inputs: [
110
+ {
111
+ indexed: true,
112
+ internalType: "bytes32",
113
+ name: "role",
114
+ type: "bytes32",
115
+ },
116
+ {
117
+ indexed: true,
118
+ internalType: "bytes32",
119
+ name: "previousAdminRole",
120
+ type: "bytes32",
121
+ },
122
+ {
123
+ indexed: true,
124
+ internalType: "bytes32",
125
+ name: "newAdminRole",
126
+ type: "bytes32",
127
+ },
128
+ ],
129
+ name: "RoleAdminChanged",
130
+ type: "event",
131
+ },
132
+ {
133
+ anonymous: false,
134
+ inputs: [
135
+ {
136
+ indexed: true,
137
+ internalType: "bytes32",
138
+ name: "role",
139
+ type: "bytes32",
140
+ },
141
+ {
142
+ indexed: true,
143
+ internalType: "address",
144
+ name: "account",
145
+ type: "address",
146
+ },
147
+ {
148
+ indexed: true,
149
+ internalType: "address",
150
+ name: "sender",
151
+ type: "address",
152
+ },
153
+ ],
154
+ name: "RoleGranted",
155
+ type: "event",
156
+ },
157
+ {
158
+ anonymous: false,
159
+ inputs: [
160
+ {
161
+ indexed: true,
162
+ internalType: "bytes32",
163
+ name: "role",
164
+ type: "bytes32",
165
+ },
166
+ {
167
+ indexed: true,
168
+ internalType: "address",
169
+ name: "account",
170
+ type: "address",
171
+ },
172
+ {
173
+ indexed: true,
174
+ internalType: "address",
175
+ name: "sender",
176
+ type: "address",
177
+ },
178
+ ],
179
+ name: "RoleRevoked",
180
+ type: "event",
181
+ },
182
+ {
183
+ anonymous: false,
184
+ inputs: [
185
+ {
186
+ indexed: false,
187
+ internalType: "address",
188
+ name: "account",
189
+ type: "address",
190
+ },
191
+ ],
192
+ name: "Unpaused",
193
+ type: "event",
194
+ },
195
+ {
196
+ anonymous: false,
197
+ inputs: [
198
+ {
199
+ indexed: true,
200
+ internalType: "address",
201
+ name: "implementation",
202
+ type: "address",
203
+ },
204
+ ],
205
+ name: "Upgraded",
206
+ type: "event",
207
+ },
208
+ {
209
+ anonymous: false,
210
+ inputs: [
211
+ {
212
+ indexed: true,
213
+ internalType: "address",
214
+ name: "account",
215
+ type: "address",
216
+ },
217
+ ],
218
+ name: "WhitelistedAdded",
219
+ type: "event",
220
+ },
221
+ {
222
+ anonymous: false,
223
+ inputs: [
224
+ {
225
+ indexed: true,
226
+ internalType: "address",
227
+ name: "account",
228
+ type: "address",
229
+ },
230
+ {
231
+ indexed: false,
232
+ internalType: "uint256",
233
+ name: "timestamp",
234
+ type: "uint256",
235
+ },
236
+ ],
237
+ name: "WhitelistedAuthenticated",
238
+ type: "event",
239
+ },
240
+ {
241
+ anonymous: false,
242
+ inputs: [
243
+ {
244
+ indexed: true,
245
+ internalType: "address",
246
+ name: "account",
247
+ type: "address",
248
+ },
249
+ ],
250
+ name: "WhitelistedRemoved",
251
+ type: "event",
252
+ },
253
+ {
254
+ inputs: [],
255
+ name: "DEFAULT_ADMIN_ROLE",
256
+ outputs: [
257
+ {
258
+ internalType: "bytes32",
259
+ name: "",
260
+ type: "bytes32",
261
+ },
262
+ ],
263
+ stateMutability: "view",
264
+ type: "function",
265
+ },
266
+ {
267
+ inputs: [],
268
+ name: "IDENTITY_ADMIN_ROLE",
269
+ outputs: [
270
+ {
271
+ internalType: "bytes32",
272
+ name: "",
273
+ type: "bytes32",
274
+ },
275
+ ],
276
+ stateMutability: "view",
277
+ type: "function",
278
+ },
279
+ {
280
+ inputs: [],
281
+ name: "PAUSER_ROLE",
282
+ outputs: [
283
+ {
284
+ internalType: "bytes32",
285
+ name: "",
286
+ type: "bytes32",
287
+ },
288
+ ],
289
+ stateMutability: "view",
290
+ type: "function",
291
+ },
292
+ {
293
+ inputs: [
294
+ {
295
+ internalType: "address",
296
+ name: "account",
297
+ type: "address",
298
+ },
299
+ ],
300
+ name: "addBlacklisted",
301
+ outputs: [],
302
+ stateMutability: "nonpayable",
303
+ type: "function",
304
+ },
305
+ {
306
+ inputs: [
307
+ {
308
+ internalType: "address",
309
+ name: "account",
310
+ type: "address",
311
+ },
312
+ ],
313
+ name: "addContract",
314
+ outputs: [],
315
+ stateMutability: "nonpayable",
316
+ type: "function",
317
+ },
318
+ {
319
+ inputs: [
320
+ {
321
+ internalType: "address",
322
+ name: "account",
323
+ type: "address",
324
+ },
325
+ ],
326
+ name: "addWhitelisted",
327
+ outputs: [],
328
+ stateMutability: "nonpayable",
329
+ type: "function",
330
+ },
331
+ {
332
+ inputs: [
333
+ {
334
+ internalType: "address",
335
+ name: "account",
336
+ type: "address",
337
+ },
338
+ {
339
+ internalType: "string",
340
+ name: "did",
341
+ type: "string",
342
+ },
343
+ ],
344
+ name: "addWhitelistedWithDID",
345
+ outputs: [],
346
+ stateMutability: "nonpayable",
347
+ type: "function",
348
+ },
349
+ {
350
+ inputs: [
351
+ {
352
+ internalType: "address",
353
+ name: "account",
354
+ type: "address",
355
+ },
356
+ {
357
+ internalType: "string",
358
+ name: "did",
359
+ type: "string",
360
+ },
361
+ {
362
+ internalType: "uint256",
363
+ name: "orgChain",
364
+ type: "uint256",
365
+ },
366
+ {
367
+ internalType: "uint256",
368
+ name: "dateAuthenticated",
369
+ type: "uint256",
370
+ },
371
+ ],
372
+ name: "addWhitelistedWithDIDAndChain",
373
+ outputs: [],
374
+ stateMutability: "nonpayable",
375
+ type: "function",
376
+ },
377
+ {
378
+ inputs: [
379
+ {
380
+ internalType: "address",
381
+ name: "account",
382
+ type: "address",
383
+ },
384
+ ],
385
+ name: "addrToDID",
386
+ outputs: [
387
+ {
388
+ internalType: "string",
389
+ name: "did",
390
+ type: "string",
391
+ },
392
+ ],
393
+ stateMutability: "view",
394
+ type: "function",
395
+ },
396
+ {
397
+ inputs: [
398
+ {
399
+ internalType: "address",
400
+ name: "account",
401
+ type: "address",
402
+ },
403
+ ],
404
+ name: "authenticate",
405
+ outputs: [],
406
+ stateMutability: "nonpayable",
407
+ type: "function",
408
+ },
409
+ {
410
+ inputs: [],
411
+ name: "authenticationPeriod",
412
+ outputs: [
413
+ {
414
+ internalType: "uint256",
415
+ name: "",
416
+ type: "uint256",
417
+ },
418
+ ],
419
+ stateMutability: "view",
420
+ type: "function",
421
+ },
422
+ {
423
+ inputs: [],
424
+ name: "avatar",
425
+ outputs: [
426
+ {
427
+ internalType: "address",
428
+ name: "",
429
+ type: "address",
430
+ },
431
+ ],
432
+ stateMutability: "view",
433
+ type: "function",
434
+ },
435
+ {
436
+ inputs: [
437
+ {
438
+ internalType: "address",
439
+ name: "_account",
440
+ type: "address",
441
+ },
442
+ {
443
+ internalType: "bytes",
444
+ name: "signature",
445
+ type: "bytes",
446
+ },
447
+ ],
448
+ name: "connectAccount",
449
+ outputs: [],
450
+ stateMutability: "nonpayable",
451
+ type: "function",
452
+ },
453
+ {
454
+ inputs: [
455
+ {
456
+ internalType: "address",
457
+ name: "",
458
+ type: "address",
459
+ },
460
+ ],
461
+ name: "connectedAccounts",
462
+ outputs: [
463
+ {
464
+ internalType: "address",
465
+ name: "",
466
+ type: "address",
467
+ },
468
+ ],
469
+ stateMutability: "view",
470
+ type: "function",
471
+ },
472
+ {
473
+ inputs: [],
474
+ name: "dao",
475
+ outputs: [
476
+ {
477
+ internalType: "contract Controller",
478
+ name: "",
479
+ type: "address",
480
+ },
481
+ ],
482
+ stateMutability: "view",
483
+ type: "function",
484
+ },
485
+ {
486
+ inputs: [
487
+ {
488
+ internalType: "bytes32",
489
+ name: "",
490
+ type: "bytes32",
491
+ },
492
+ ],
493
+ name: "didHashToAddress",
494
+ outputs: [
495
+ {
496
+ internalType: "address",
497
+ name: "",
498
+ type: "address",
499
+ },
500
+ ],
501
+ stateMutability: "view",
502
+ type: "function",
503
+ },
504
+ {
505
+ inputs: [
506
+ {
507
+ internalType: "bytes32",
508
+ name: "role",
509
+ type: "bytes32",
510
+ },
511
+ ],
512
+ name: "getRoleAdmin",
513
+ outputs: [
514
+ {
515
+ internalType: "bytes32",
516
+ name: "",
517
+ type: "bytes32",
518
+ },
519
+ ],
520
+ stateMutability: "view",
521
+ type: "function",
522
+ },
523
+ {
524
+ inputs: [
525
+ {
526
+ internalType: "address",
527
+ name: "_account",
528
+ type: "address",
529
+ },
530
+ ],
531
+ name: "getWhitelistedRoot",
532
+ outputs: [
533
+ {
534
+ internalType: "address",
535
+ name: "whitelisted",
536
+ type: "address",
537
+ },
538
+ ],
539
+ stateMutability: "view",
540
+ type: "function",
541
+ },
542
+ {
543
+ inputs: [
544
+ {
545
+ internalType: "bytes32",
546
+ name: "role",
547
+ type: "bytes32",
548
+ },
549
+ {
550
+ internalType: "address",
551
+ name: "account",
552
+ type: "address",
553
+ },
554
+ ],
555
+ name: "grantRole",
556
+ outputs: [],
557
+ stateMutability: "nonpayable",
558
+ type: "function",
559
+ },
560
+ {
561
+ inputs: [
562
+ {
563
+ internalType: "bytes32",
564
+ name: "role",
565
+ type: "bytes32",
566
+ },
567
+ {
568
+ internalType: "address",
569
+ name: "account",
570
+ type: "address",
571
+ },
572
+ ],
573
+ name: "hasRole",
574
+ outputs: [
575
+ {
576
+ internalType: "bool",
577
+ name: "",
578
+ type: "bool",
579
+ },
580
+ ],
581
+ stateMutability: "view",
582
+ type: "function",
583
+ },
584
+ {
585
+ inputs: [
586
+ {
587
+ internalType: "address",
588
+ name: "",
589
+ type: "address",
590
+ },
591
+ ],
592
+ name: "identities",
593
+ outputs: [
594
+ {
595
+ internalType: "uint256",
596
+ name: "dateAuthenticated",
597
+ type: "uint256",
598
+ },
599
+ {
600
+ internalType: "uint256",
601
+ name: "dateAdded",
602
+ type: "uint256",
603
+ },
604
+ {
605
+ internalType: "string",
606
+ name: "did",
607
+ type: "string",
608
+ },
609
+ {
610
+ internalType: "uint256",
611
+ name: "whitelistedOnChainId",
612
+ type: "uint256",
613
+ },
614
+ {
615
+ internalType: "uint8",
616
+ name: "status",
617
+ type: "uint8",
618
+ },
619
+ ],
620
+ stateMutability: "view",
621
+ type: "function",
622
+ },
623
+ {
624
+ inputs: [
625
+ {
626
+ internalType: "address",
627
+ name: "_ns",
628
+ type: "address",
629
+ },
630
+ ],
631
+ name: "initDAO",
632
+ outputs: [],
633
+ stateMutability: "nonpayable",
634
+ type: "function",
635
+ },
636
+ {
637
+ inputs: [
638
+ {
639
+ internalType: "address",
640
+ name: "_owner",
641
+ type: "address",
642
+ },
643
+ {
644
+ internalType: "contract IIdentity",
645
+ name: "_oldIdentity",
646
+ type: "address",
647
+ },
648
+ ],
649
+ name: "initialize",
650
+ outputs: [],
651
+ stateMutability: "nonpayable",
652
+ type: "function",
653
+ },
654
+ {
655
+ inputs: [
656
+ {
657
+ internalType: "address",
658
+ name: "account",
659
+ type: "address",
660
+ },
661
+ ],
662
+ name: "isBlacklisted",
663
+ outputs: [
664
+ {
665
+ internalType: "bool",
666
+ name: "",
667
+ type: "bool",
668
+ },
669
+ ],
670
+ stateMutability: "view",
671
+ type: "function",
672
+ },
673
+ {
674
+ inputs: [
675
+ {
676
+ internalType: "address",
677
+ name: "account",
678
+ type: "address",
679
+ },
680
+ ],
681
+ name: "isDAOContract",
682
+ outputs: [
683
+ {
684
+ internalType: "bool",
685
+ name: "",
686
+ type: "bool",
687
+ },
688
+ ],
689
+ stateMutability: "view",
690
+ type: "function",
691
+ },
692
+ {
693
+ inputs: [],
694
+ name: "isRegistered",
695
+ outputs: [
696
+ {
697
+ internalType: "bool",
698
+ name: "",
699
+ type: "bool",
700
+ },
701
+ ],
702
+ stateMutability: "pure",
703
+ type: "function",
704
+ },
705
+ {
706
+ inputs: [
707
+ {
708
+ internalType: "address",
709
+ name: "account",
710
+ type: "address",
711
+ },
712
+ ],
713
+ name: "isWhitelisted",
714
+ outputs: [
715
+ {
716
+ internalType: "bool",
717
+ name: "",
718
+ type: "bool",
719
+ },
720
+ ],
721
+ stateMutability: "view",
722
+ type: "function",
723
+ },
724
+ {
725
+ inputs: [
726
+ {
727
+ internalType: "address",
728
+ name: "account",
729
+ type: "address",
730
+ },
731
+ ],
732
+ name: "lastAuthenticated",
733
+ outputs: [
734
+ {
735
+ internalType: "uint256",
736
+ name: "",
737
+ type: "uint256",
738
+ },
739
+ ],
740
+ stateMutability: "view",
741
+ type: "function",
742
+ },
743
+ {
744
+ inputs: [],
745
+ name: "nameService",
746
+ outputs: [
747
+ {
748
+ internalType: "contract INameService",
749
+ name: "",
750
+ type: "address",
751
+ },
752
+ ],
753
+ stateMutability: "view",
754
+ type: "function",
755
+ },
756
+ {
757
+ inputs: [],
758
+ name: "nativeToken",
759
+ outputs: [
760
+ {
761
+ internalType: "contract IGoodDollar",
762
+ name: "",
763
+ type: "address",
764
+ },
765
+ ],
766
+ stateMutability: "view",
767
+ type: "function",
768
+ },
769
+ {
770
+ inputs: [],
771
+ name: "oldIdentity",
772
+ outputs: [
773
+ {
774
+ internalType: "contract IIdentity",
775
+ name: "",
776
+ type: "address",
777
+ },
778
+ ],
779
+ stateMutability: "view",
780
+ type: "function",
781
+ },
782
+ {
783
+ inputs: [
784
+ {
785
+ internalType: "bool",
786
+ name: "_toPause",
787
+ type: "bool",
788
+ },
789
+ ],
790
+ name: "pause",
791
+ outputs: [],
792
+ stateMutability: "nonpayable",
793
+ type: "function",
794
+ },
795
+ {
796
+ inputs: [],
797
+ name: "paused",
798
+ outputs: [
799
+ {
800
+ internalType: "bool",
801
+ name: "",
802
+ type: "bool",
803
+ },
804
+ ],
805
+ stateMutability: "view",
806
+ type: "function",
807
+ },
808
+ {
809
+ inputs: [
810
+ {
811
+ internalType: "address",
812
+ name: "account",
813
+ type: "address",
814
+ },
815
+ ],
816
+ name: "removeBlacklisted",
817
+ outputs: [],
818
+ stateMutability: "nonpayable",
819
+ type: "function",
820
+ },
821
+ {
822
+ inputs: [
823
+ {
824
+ internalType: "address",
825
+ name: "account",
826
+ type: "address",
827
+ },
828
+ ],
829
+ name: "removeContract",
830
+ outputs: [],
831
+ stateMutability: "nonpayable",
832
+ type: "function",
833
+ },
834
+ {
835
+ inputs: [
836
+ {
837
+ internalType: "address",
838
+ name: "account",
839
+ type: "address",
840
+ },
841
+ ],
842
+ name: "removeWhitelisted",
843
+ outputs: [],
844
+ stateMutability: "nonpayable",
845
+ type: "function",
846
+ },
847
+ {
848
+ inputs: [
849
+ {
850
+ internalType: "bytes32",
851
+ name: "role",
852
+ type: "bytes32",
853
+ },
854
+ {
855
+ internalType: "address",
856
+ name: "account",
857
+ type: "address",
858
+ },
859
+ ],
860
+ name: "renounceRole",
861
+ outputs: [],
862
+ stateMutability: "nonpayable",
863
+ type: "function",
864
+ },
865
+ {
866
+ inputs: [],
867
+ name: "renounceWhitelisted",
868
+ outputs: [],
869
+ stateMutability: "nonpayable",
870
+ type: "function",
871
+ },
872
+ {
873
+ inputs: [
874
+ {
875
+ internalType: "bytes32",
876
+ name: "role",
877
+ type: "bytes32",
878
+ },
879
+ {
880
+ internalType: "address",
881
+ name: "account",
882
+ type: "address",
883
+ },
884
+ ],
885
+ name: "revokeRole",
886
+ outputs: [],
887
+ stateMutability: "nonpayable",
888
+ type: "function",
889
+ },
890
+ {
891
+ inputs: [
892
+ {
893
+ internalType: "uint256",
894
+ name: "period",
895
+ type: "uint256",
896
+ },
897
+ ],
898
+ name: "setAuthenticationPeriod",
899
+ outputs: [],
900
+ stateMutability: "nonpayable",
901
+ type: "function",
902
+ },
903
+ {
904
+ inputs: [
905
+ {
906
+ internalType: "string",
907
+ name: "did",
908
+ type: "string",
909
+ },
910
+ ],
911
+ name: "setDID",
912
+ outputs: [],
913
+ stateMutability: "nonpayable",
914
+ type: "function",
915
+ },
916
+ {
917
+ inputs: [
918
+ {
919
+ internalType: "bytes4",
920
+ name: "interfaceId",
921
+ type: "bytes4",
922
+ },
923
+ ],
924
+ name: "supportsInterface",
925
+ outputs: [
926
+ {
927
+ internalType: "bool",
928
+ name: "",
929
+ type: "bool",
930
+ },
931
+ ],
932
+ stateMutability: "view",
933
+ type: "function",
934
+ },
935
+ {
936
+ inputs: [],
937
+ name: "updateAvatar",
938
+ outputs: [],
939
+ stateMutability: "nonpayable",
940
+ type: "function",
941
+ },
942
+ {
943
+ inputs: [
944
+ {
945
+ internalType: "address",
946
+ name: "newImplementation",
947
+ type: "address",
948
+ },
949
+ ],
950
+ name: "upgradeTo",
951
+ outputs: [],
952
+ stateMutability: "nonpayable",
953
+ type: "function",
954
+ },
955
+ {
956
+ inputs: [
957
+ {
958
+ internalType: "address",
959
+ name: "newImplementation",
960
+ type: "address",
961
+ },
962
+ {
963
+ internalType: "bytes",
964
+ name: "data",
965
+ type: "bytes",
966
+ },
967
+ ],
968
+ name: "upgradeToAndCall",
969
+ outputs: [],
970
+ stateMutability: "payable",
971
+ type: "function",
972
+ },
973
+ {
974
+ inputs: [],
975
+ name: "whitelistedContracts",
976
+ outputs: [
977
+ {
978
+ internalType: "uint256",
979
+ name: "",
980
+ type: "uint256",
981
+ },
982
+ ],
983
+ stateMutability: "view",
984
+ type: "function",
985
+ },
986
+ {
987
+ inputs: [],
988
+ name: "whitelistedCount",
989
+ outputs: [
990
+ {
991
+ internalType: "uint256",
992
+ name: "",
993
+ type: "uint256",
994
+ },
995
+ ],
996
+ stateMutability: "view",
997
+ type: "function",
998
+ },
999
+ ];
1000
+
1001
+ const _bytecode =
1002
+ "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c61360961004b60003960008181610f0b01528181610f4b01528181611230015261127001526136096000f3fe6080604052600436106102185760003560e01c806301ffc9a71461021d57806302329a291461025257806308e0d29d1461027457806310154bad14610294578063188efc16146102b45780631aaff63c146102d45780631b027099146103045780631b3c90a8146103245780632236684414610339578063248a9ca31461034d578063274a827b1461036d578063291d95491461038d5780632b14dda8146103ad5780632d0e9b46146103cd5780632f2ff15d146103fa57806331b376e21461041a57806336568abe146104315780633659cfe6146104515780633af32abf146104715780633e6326fc146104915780634125f0f2146104b15780634162169f146104d2578063485cc955146104f25780634f1ef2861461051257806354f9f7a3146105255780635aef7de6146105525780635c975abb146105725780635f539d691461058b57806361320040146105ab57806367c75937146105e257806391d1485414610619578063a217fddf14610639578063b2a1de221461064e578063b30f7e7f14610665578063c375c2ef1461067c578063c6a276c21461069c578063c73cc4ae146106bc578063d547741f146106dc578063d6cd9473146106fc578063e1758bd814610711578063e1e360ba14610726578063e63ab1e91461075d578063e737031a1461077f578063f653b81e1461079f578063f85ebeb1146107d0578063fe575a87146107f0578063fff930d414610810575b600080fd5b34801561022957600080fd5b5061023d610238366004612cda565b610830565b60405190151581526020015b60405180910390f35b34801561025e57600080fd5b5061027261026d366004612d05565b610867565b005b34801561028057600080fd5b5061027261028f366004612d37565b61089a565b3480156102a057600080fd5b506102726102af366004612d37565b610975565b3480156102c057600080fd5b506102726102cf366004612d37565b6109bc565b3480156102e057600080fd5b506102f660008051602061352d83398151915281565b604051908152602001610249565b34801561031057600080fd5b5061027261031f366004612e1f565b610a4a565b34801561033057600080fd5b50610272610a97565b34801561034557600080fd5b50600161023d565b34801561035957600080fd5b506102f6610368366004612e6e565b610bdc565b34801561037957600080fd5b50610272610388366004612e87565b610bf1565b34801561039957600080fd5b506102726103a8366004612d37565b610cf7565b3480156103b957600080fd5b506102726103c8366004612d37565b610d3d565b3480156103d957600080fd5b506103ed6103e8366004612d37565b610e03565b6040516102499190612ef8565b34801561040657600080fd5b50610272610415366004612f0c565b610e69565b34801561042657600080fd5b506102f66101645481565b34801561043d57600080fd5b5061027261044c366004612f0c565b610e86565b34801561045d57600080fd5b5061027261046c366004612d37565b610f00565b34801561047d57600080fd5b5061023d61048c366004612d37565b610fc9565b34801561049d57600080fd5b506067546103ed906001600160a01b031681565b3480156104bd57600080fd5b50610168546103ed906001600160a01b031681565b3480156104de57600080fd5b506065546103ed906001600160a01b031681565b3480156104fe57600080fd5b5061027261050d366004612f3c565b6110e8565b610272610520366004612f6a565b611225565b34801561053157600080fd5b50610545610540366004612d37565b6112db565b604051610249919061301b565b34801561055e57600080fd5b506066546103ed906001600160a01b031681565b34801561057e57600080fd5b506101305460ff1661023d565b34801561059757600080fd5b506102726105a6366004612d37565b611427565b3480156105b757600080fd5b506103ed6105c6366004612d37565b610167602052600090815260409020546001600160a01b031681565b3480156105ee57600080fd5b506103ed6105fd366004612e6e565b610166602052600090815260409020546001600160a01b031681565b34801561062557600080fd5b5061023d610634366004612f0c565b61150d565b34801561064557600080fd5b506102f6600081565b34801561065a57600080fd5b506102f66101625481565b34801561067157600080fd5b506102f66101635481565b34801561068857600080fd5b50610272610697366004612d37565b611538565b3480156106a857600080fd5b506102726106b7366004612d37565b6115b6565b3480156106c857600080fd5b5061023d6106d7366004612d37565b6116b1565b3480156106e857600080fd5b506102726106f7366004612f0c565b611778565b34801561070857600080fd5b50610272611795565b34801561071d57600080fd5b506103ed6117c4565b34801561073257600080fd5b506102f6610741366004612d37565b6001600160a01b03166000908152610165602052604090205490565b34801561076957600080fd5b506102f660008051602061356d83398151915281565b34801561078b57600080fd5b5061027261079a36600461302e565b611860565b3480156107ab57600080fd5b506107bf6107ba366004612d37565b6118d2565b60405161024995949392919061308d565b3480156107dc57600080fd5b506102726107eb366004612f6a565b61198e565b3480156107fc57600080fd5b5061023d61080b366004612d37565b611b15565b34801561081c57600080fd5b5061027261082b366004612e6e565b611b88565b60006001600160e01b03198216637965db0b60e01b148061086157506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008051602061356d8339815191526108808133611bba565b81156108925761088e611c1e565b5050565b61088e611c8f565b60008051602061352d8339815191526108b38133611bba565b6101305460ff16156108e05760405162461bcd60e51b81526004016108d7906130c7565b60405180910390fd5b6001600160a01b0382166000908152610165602052604090206004015460ff1660011461091f5760405162461bcd60e51b81526004016108d7906130f1565b6001600160a01b03821660008181526101656020908152604091829020429081905591519182527fb2a82fce6d8c7a633efe9579f77b4edb96bfdf171a49bfc2ce666dc543a1f500910160405180910390a25050565b60008051602061352d83398151915261098e8133611bba565b6101305460ff16156109b25760405162461bcd60e51b81526004016108d7906130c7565b61088e8246611d0b565b60008051602061352d8339815191526109d58133611bba565b6101305460ff16156109f95760405162461bcd60e51b81526004016108d7906130c7565b6001600160a01b03821660008181526101656020526040808220600401805460ff191660ff179055517f44d5fe68b00f68950fb9c1ff0a61ef7f747b1a36359a7e3a7f3324db4b8789679190a25050565b60008051602061352d833981519152610a638133611bba565b6101305460ff1615610a875760405162461bcd60e51b81526004016108d7906130c7565b610a92838346611dd8565b505050565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015610af557600080fd5b505afa158015610b09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2d919061311a565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b158015610b8257600080fd5b505afa158015610b96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bba919061311a565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b600090815260fe602052604090206001015490565b610bfa33610fc9565b610c165760405162461bcd60e51b81526004016108d7906130f1565b60008282604051610c28929190613137565b6040805191829003909120600081815261016660205291909120549091506001600160a01b031615610c6c5760405162461bcd60e51b81526004016108d790613147565b33600090815261016560205260408082209051610c8c91600201906131b2565b60408051918290039091206000818152610166602090815283822080546001600160a01b0319169055338252610165905291909120909150610cd2906002018585612b81565b505060009081526101666020526040902080546001600160a01b031916331790555050565b60008051602061352d833981519152610d108133611bba565b6101305460ff1615610d345760405162461bcd60e51b81526004016108d7906130c7565b61088e82611e83565b6000610d498133611bba565b6067546001600160a01b031615610d985760405162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b60448201526064016108d7565b610da1826120ea565b606654610db9906000906001600160a01b031661210d565b606654610dde9060008051602061356d833981519152906001600160a01b031661210d565b60665461088e9060008051602061352d833981519152906001600160a01b031661210d565b6000610e0e82610fc9565b15610e17575090565b6001600160a01b0380831660009081526101676020526040902054610e3c9116610fc9565b15610e6157506001600160a01b03908116600090815261016760205260409020541690565b506000919050565b610e7282610bdc565b610e7c8133611bba565b610a928383612113565b6001600160a01b0381163314610ef65760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016108d7565b61088e8282612199565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610f495760405162461bcd60e51b81526004016108d79061324e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f7b612200565b6001600160a01b031614610fa15760405162461bcd60e51b81526004016108d790613288565b610faa8161221c565b60408051600080825260208201909252610fc691839190612224565b50565b6001600160a01b0381166000908152610165602052604081205481906201518090610ff490426132d8565b610ffe91906132ef565b905061016454811115801561103257506001600160a01b0383166000908152610165602052604090206004015460ff166001145b156110405750600192915050565b610168546001600160a01b0316156110df5761016854604051633af32abf60e01b81526001600160a01b0390911690633af32abf90611083908690600401612ef8565b60206040518083038186803b15801561109b57600080fd5b505afa9250505080156110cb575060408051601f3d908101601f191682019092526110c891810190613311565b60015b6110d85750600092915050565b9392505050565b50600092915050565b600054610100900460ff1680611101575060005460ff16155b61111d5760405162461bcd60e51b81526004016108d79061332e565b600054610100900460ff1615801561113f576000805461ffff19166101011790555b611147612364565b61114f6123cf565b6104476101645560665461116e906000906001600160a01b031661210d565b61117960008461210d565b60665461119e9060008051602061356d833981519152906001600160a01b031661210d565b6111b660008051602061356d8339815191528461210d565b6111ce60008051602061352d8339815191528461210d565b6066546111f39060008051602061352d833981519152906001600160a01b031661210d565b61016880546001600160a01b0319166001600160a01b0384161790558015610a92576000805461ff0019169055505050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561126e5760405162461bcd60e51b81526004016108d79061324e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166112a0612200565b6001600160a01b0316146112c65760405162461bcd60e51b81526004016108d790613288565b6112cf8261221c565b61088e82826001612224565b336000908152610165602052604090206002018054606091906112fd90613177565b80601f016020809104026020016040519081016040528092919081815260200182805461132990613177565b80156113765780601f1061134b57610100808354040283529160200191611376565b820191906000526020600020905b81548152906001019060200180831161135957829003601f168201915b5050505050905060008151111561138c57919050565b610168546040516354f9f7a360e01b81526001600160a01b03909116906354f9f7a3906113bd908590600401612ef8565b60006040518083038186803b1580156113d557600080fd5b505afa92505050801561140a57506040513d6000823e601f3d908101601f19168201604052611407919081019061337c565b60015b61086157505060408051602081019091526000815290565b919050565b60008051602061352d8339815191526114408133611bba565b6101305460ff16156114645760405162461bcd60e51b81526004016108d7906130c7565b813b6114b25760405162461bcd60e51b815260206004820152601f60248201527f476976656e2061646472657373206973206e6f74206120636f6e74726163740060448201526064016108d7565b6114bc8246611d0b565b6001600160a01b03821660008181526101656020526040808220600401805460ff19166002179055517f89c66952b48f3e96bf1d8ba1b63189520fd988a6979b8b740bd5c5d8dc53e2059190a25050565b600091825260fe602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60008051602061352d8339815191526115518133611bba565b6101305460ff16156115755760405162461bcd60e51b81526004016108d7906130c7565b61157e82611e83565b6040516001600160a01b038316907f8d30d41865a0b811b9545d879520d2dde9f4cc49e4241f486ad9752bc904b56590600090a25050565b60008051602061352d8339815191526115cf8133611bba565b6101305460ff16156115f35760405162461bcd60e51b81526004016108d7906130c7565b610168546001600160a01b03161561166357610168546040516363513b6160e11b81526001600160a01b039091169063c6a276c290611636908590600401612ef8565b600060405180830381600087803b15801561165057600080fd5b505af1925050508015611661575060015b505b6001600160a01b03821660008181526101656020526040808220600401805460ff19169055517f1747ca720b1a174a464b6513ace29b1d3190b5f632b9f34147017c81425bfde89190a25050565b6001600160a01b0381166000908152610165602052604081206004015460ff16600214156116e157506001919050565b610168546001600160a01b031615610e61576101685460405163639e625760e11b81526001600160a01b039091169063c73cc4ae90611724908590600401612ef8565b60206040518083038186803b15801561173c57600080fd5b505afa92505050801561176c575060408051601f3d908101601f1916820190925261176991810190613311565b60015b61086157506000919050565b61178182610bdc565b61178b8133611bba565b610a928383612199565b6101305460ff16156117b95760405162461bcd60e51b81526004016108d7906130c7565b6117c233611e83565b565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561182357600080fd5b505afa158015611837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185b919061311a565b905090565b60008051602061352d8339815191526118798133611bba565b6101305460ff161561189d5760405162461bcd60e51b81526004016108d7906130c7565b6118a8858585611dd8565b81156118cb576001600160a01b0385166000908152610165602052604090208290555b5050505050565b61016560205260009081526040902080546001820154600283018054929391926118fb90613177565b80601f016020809104026020016040519081016040528092919081815260200182805461192790613177565b80156119745780601f1061194957610100808354040283529160200191611974565b820191906000526020600020905b81548152906001019060200180831161195757829003601f168201915b50505050600383015460049093015491929160ff16905085565b61199733610fc9565b6119b35760405162461bcd60e51b81526004016108d7906130f1565b6119bc82610fc9565b1580156119cf57506119cd82611b15565b155b611a0d5760405162461bcd60e51b815260206004820152600f60248201526e1a5b9d985b1a59081858d8dbdd5b9d608a1b60448201526064016108d7565b6001600160a01b03828116600090815261016760205260409020541615611a6a5760405162461bcd60e51b8152602060048201526011602482015270185b1c9958591e4818dbdb9b9958dd1959607a1b60448201526064016108d7565b604080513360208201526001600160a01b03841691810191909152611aaa9083906060016040516020818303038152906040528051906020012083612445565b611aea5760405162461bcd60e51b8152602060048201526011602482015270696e76616c6964207369676e617475726560781b60448201526064016108d7565b506001600160a01b031660009081526101676020526040902080546001600160a01b03191633179055565b6001600160a01b0381166000908152610165602052604081206004015460ff9081161415611b4557506001919050565b610168546001600160a01b031615611422576101685460405163fe575a8760e01b81526001600160a01b039091169063fe575a8790611724908590600401612ef8565b6101305460ff1615611bac5760405162461bcd60e51b81526004016108d7906130c7565b611bb4612591565b61016455565b611bc4828261150d565b61088e57611bdc816001600160a01b03166014612663565b611be7836020612663565b604051602001611bf89291906133e9565b60408051601f198184030181529082905262461bcd60e51b82526108d79160040161301b565b6101305460ff1615611c425760405162461bcd60e51b81526004016108d7906130c7565b610130805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611c783390565b604051611c859190612ef8565b60405180910390a1565b6101305460ff16611cd95760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b60448201526064016108d7565b610130805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33611c78565b60016101626000828254611d1f9190613458565b90915550506001600160a01b03821660009081526101656020908152604080832060048101805460ff19166001908117909155429082018190558155600301849055610167909152902080546001600160a01b0319169055611d81823b151590565b15611da05760016101636000828254611d9a9190613458565b90915550505b6040516001600160a01b038316907fee1504a83b6d4a361f4c1dc78ab59bfa30d6a3b6612c403e86bb01ef2984295f90600090a25050565b815160208084019190912060008181526101669092526040909120546001600160a01b031615611e1a5760405162461bcd60e51b81526004016108d790613147565b6001600160a01b0384166000908152610165602090815260409091208451611e4a92600290920191860190612c05565b5060008181526101666020526040902080546001600160a01b0319166001600160a01b038616179055611e7d8483611d0b565b50505050565b60016101626000828254611e9791906132d8565b9091555050803b15611f2c5760016101636000828254611eb791906132d8565b9091555050610168546001600160a01b031615611f2c576101685460405163c375c2ef60e01b81526001600160a01b039091169063c375c2ef90611eff908490600401612ef8565b600060405180830381600087803b158015611f1957600080fd5b505af1925050508015611f2a575060015b505b610168546001600160a01b031615611f9c576101685460405163291d954960e01b81526001600160a01b039091169063291d954990611f6f908490600401612ef8565b600060405180830381600087803b158015611f8957600080fd5b505af1925050508015611f9a575060015b505b6001600160a01b0381166000908152610165602052604081206002018054611fc390613177565b80601f0160208091040260200160405190810160405280929190818152602001828054611fef90613177565b801561203c5780601f106120115761010080835404028352916020019161203c565b820191906000526020600020905b81548152906001019060200180831161201f57829003601f168201915b505083516020808601919091206001600160a01b03881660009081526101659092526040822082815560018101839055959650949350915061208390506002830182612c79565b506000600382018190556004909101805460ff19169055818152610166602052604080822080546001600160a01b0319169055516001600160a01b038516917f270d9b30cf5b0793bbfd54c9d5b94aeb49462b8148399000265144a8722da6b691a2505050565b606780546001600160a01b0319166001600160a01b038316179055610fc6610a97565b61088e82825b61211d828261150d565b61088e57600082815260fe602090815260408083206001600160a01b03851684529091529020805460ff191660011790556121553390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6121a3828261150d565b1561088e57600082815260fe602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602061358d833981519152546001600160a01b031690565b610fc6612591565b600061222e612200565b9050612239846127fe565b6000835111806122465750815b15612257576122558484612891565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff166118cb57805460ff191660011781556040516122d29086906122a3908590602401612ef8565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052612891565b50805460ff191681556122e3612200565b6001600160a01b0316826001600160a01b03161461235b5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b60648201526084016108d7565b6118cb8561297c565b600054610100900460ff168061237d575060005460ff16155b6123995760405162461bcd60e51b81526004016108d79061332e565b600054610100900460ff161580156123bb576000805461ffff19166101011790555b8015610fc6576000805461ff001916905550565b600054610100900460ff16806123e8575060005460ff16155b6124045760405162461bcd60e51b81526004016108d79061332e565b600054610100900460ff16158015612426576000805461ffff19166101011790555b610130805460ff191690558015610fc6576000805461ff001916905550565b600080600061245485856129bc565b9092509050600081600481111561246d5761246d613470565b14801561248b5750856001600160a01b0316826001600160a01b0316145b1561249b576001925050506110d8565b600080876001600160a01b0316631626ba7e60e01b88886040516024016124c3929190613486565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161250191906134a7565b600060405180830381855afa9150503d806000811461253c576040519150601f19603f3d011682016040523d82523d6000602084013e612541565b606091505b5091509150818015612554575080516020145b801561258557508051630b135d3f60e11b9061257990830160209081019084016134c3565b6001600160e01b031916145b98975050505050505050565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b1580156125d557600080fd5b505afa1580156125e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061260d919061311a565b6001600160a01b0316146117c25760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f6460448201526064016108d7565b606060006126728360026134e0565b61267d906002613458565b6001600160401b0381111561269457612694612d54565b6040519080825280601f01601f1916602001820160405280156126be576020820181803683370190505b509050600360fc1b816000815181106126d9576126d96134ff565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612708576127086134ff565b60200101906001600160f81b031916908160001a905350600061272c8460026134e0565b612737906001613458565b90505b60018111156127af576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061276b5761276b6134ff565b1a60f81b828281518110612781576127816134ff565b60200101906001600160f81b031916908160001a90535060049490941c936127a881613515565b905061273a565b5083156110d85760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016108d7565b803b6128625760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016108d7565b60008051602061358d83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6128f05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016108d7565b600080846001600160a01b03168460405161290b91906134a7565b600060405180830381855af49150503d8060008114612946576040519150601f19603f3d011682016040523d82523d6000602084013e61294b565b606091505b509150915061297382826040518060600160405280602781526020016135ad60279139612a2c565b95945050505050565b612985816127fe565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6000808251604114156129f35760208301516040840151606085015160001a6129e787828585612a65565b94509450505050612a25565b825160401415612a1d5760208301516040840151612a12868383612b48565b935093505050612a25565b506000905060025b9250929050565b60608315612a3b5750816110d8565b825115612a4b5782518084602001fd5b8160405162461bcd60e51b81526004016108d7919061301b565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115612a925750600090506003612b3f565b8460ff16601b14158015612aaa57508460ff16601c14155b15612abb5750600090506004612b3f565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612b0f573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612b3857600060019250925050612b3f565b9150600090505b94509492505050565b6000806001600160ff1b03831681612b6560ff86901c601b613458565b9050612b7387828885612a65565b935093505050935093915050565b828054612b8d90613177565b90600052602060002090601f016020900481019282612baf5760008555612bf5565b82601f10612bc85782800160ff19823516178555612bf5565b82800160010185558215612bf5579182015b82811115612bf5578235825591602001919060010190612bda565b50612c01929150612caf565b5090565b828054612c1190613177565b90600052602060002090601f016020900481019282612c335760008555612bf5565b82601f10612c4c57805160ff1916838001178555612bf5565b82800160010185558215612bf5579182015b82811115612bf5578251825591602001919060010190612c5e565b508054612c8590613177565b6000825580601f10612c95575050565b601f016020900490600052602060002090810190610fc691905b5b80821115612c015760008155600101612cb0565b6001600160e01b031981168114610fc657600080fd5b600060208284031215612cec57600080fd5b81356110d881612cc4565b8015158114610fc657600080fd5b600060208284031215612d1757600080fd5b81356110d881612cf7565b6001600160a01b0381168114610fc657600080fd5b600060208284031215612d4957600080fd5b81356110d881612d22565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612d9257612d92612d54565b604052919050565b60006001600160401b03821115612db357612db3612d54565b50601f01601f191660200190565b6000612dd4612dcf84612d9a565b612d6a565b9050828152838383011115612de857600080fd5b828260208301376000602084830101529392505050565b600082601f830112612e1057600080fd5b6110d883833560208501612dc1565b60008060408385031215612e3257600080fd5b8235612e3d81612d22565b915060208301356001600160401b03811115612e5857600080fd5b612e6485828601612dff565b9150509250929050565b600060208284031215612e8057600080fd5b5035919050565b60008060208385031215612e9a57600080fd5b82356001600160401b0380821115612eb157600080fd5b818501915085601f830112612ec557600080fd5b813581811115612ed457600080fd5b866020828501011115612ee657600080fd5b60209290920196919550909350505050565b6001600160a01b0391909116815260200190565b60008060408385031215612f1f57600080fd5b823591506020830135612f3181612d22565b809150509250929050565b60008060408385031215612f4f57600080fd5b8235612f5a81612d22565b91506020830135612f3181612d22565b60008060408385031215612f7d57600080fd5b8235612f8881612d22565b915060208301356001600160401b03811115612fa357600080fd5b8301601f81018513612fb457600080fd5b612e6485823560208401612dc1565b60005b83811015612fde578181015183820152602001612fc6565b83811115611e7d5750506000910152565b60008151808452613007816020860160208601612fc3565b601f01601f19169290920160200192915050565b6020815260006110d86020830184612fef565b6000806000806080858703121561304457600080fd5b843561304f81612d22565b935060208501356001600160401b0381111561306a57600080fd5b61307687828801612dff565b949794965050505060408301359260600135919050565b85815284602082015260a0604082015260006130ac60a0830186612fef565b905083606083015260ff831660808301529695505050505050565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b6020808252600f908201526e1b9bdd081dda1a5d195b1a5cdd1959608a1b604082015260600190565b60006020828403121561312c57600080fd5b81516110d881612d22565b8183823760009101908152919050565b60208082526016908201527511125108185b1c9958591e481c9959da5cdd195c995960521b604082015260600190565b600181811c9082168061318b57607f821691505b602082108114156131ac57634e487b7160e01b600052602260045260246000fd5b50919050565b600080835481600182811c9150808316806131ce57607f831692505b60208084108214156131ee57634e487b7160e01b86526022600452602486fd5b818015613202576001811461321357613240565b60ff19861689528489019650613240565b60008a81526020902060005b868110156132385781548b82015290850190830161321f565b505084890196505b509498975050505050505050565b6020808252602c9082015260008051602061354d83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061354d83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6000828210156132ea576132ea6132c2565b500390565b60008261330c57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561332357600080fd5b81516110d881612cf7565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b60006020828403121561338e57600080fd5b81516001600160401b038111156133a457600080fd5b8201601f810184136133b557600080fd5b80516133c3612dcf82612d9a565b8181528560208385010111156133d857600080fd5b612973826020830160208601612fc3565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835161341b816017850160208801612fc3565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161344c816028840160208801612fc3565b01602801949350505050565b6000821982111561346b5761346b6132c2565b500190565b634e487b7160e01b600052602160045260246000fd5b82815260406020820152600061349f6040830184612fef565b949350505050565b600082516134b9818460208701612fc3565b9190910192915050565b6000602082840312156134d557600080fd5b81516110d881612cc4565b60008160001904831182151516156134fa576134fa6132c2565b500290565b634e487b7160e01b600052603260045260246000fd5b600081613524576135246132c2565b50600019019056fe091941537c453917ef5b0c67f46f29060aca926ebd752fe441d5625e85c3a57646756e6374696f6e206d7573742062652063616c6c6564207468726f756768200b0f1f48172a2124d5545a38711e7e9d2e7a6c0b46b85cf1c1788e7a11ba5bf2360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f787e88dd0f982ce5e85d939bde07610321eaa06dd503dde7713dc0bce909d464736f6c63430008080033";
1003
+
1004
+ type IdentityV2ConstructorParams =
1005
+ | [signer?: Signer]
1006
+ | ConstructorParameters<typeof ContractFactory>;
1007
+
1008
+ const isSuperArgs = (
1009
+ xs: IdentityV2ConstructorParams
1010
+ ): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
1011
+
1012
+ export class IdentityV2__factory extends ContractFactory {
1013
+ constructor(...args: IdentityV2ConstructorParams) {
1014
+ if (isSuperArgs(args)) {
1015
+ super(...args);
1016
+ } else {
1017
+ super(_abi, _bytecode, args[0]);
1018
+ }
1019
+ }
1020
+
1021
+ deploy(
1022
+ overrides?: Overrides & { from?: string | Promise<string> }
1023
+ ): Promise<IdentityV2> {
1024
+ return super.deploy(overrides || {}) as Promise<IdentityV2>;
1025
+ }
1026
+ getDeployTransaction(
1027
+ overrides?: Overrides & { from?: string | Promise<string> }
1028
+ ): TransactionRequest {
1029
+ return super.getDeployTransaction(overrides || {});
1030
+ }
1031
+ attach(address: string): IdentityV2 {
1032
+ return super.attach(address) as IdentityV2;
1033
+ }
1034
+ connect(signer: Signer): IdentityV2__factory {
1035
+ return super.connect(signer) as IdentityV2__factory;
1036
+ }
1037
+ static readonly bytecode = _bytecode;
1038
+ static readonly abi = _abi;
1039
+ static createInterface(): IdentityV2Interface {
1040
+ return new utils.Interface(_abi) as IdentityV2Interface;
1041
+ }
1042
+ static connect(
1043
+ address: string,
1044
+ signerOrProvider: Signer | Provider
1045
+ ): IdentityV2 {
1046
+ return new Contract(address, _abi, signerOrProvider) as IdentityV2;
1047
+ }
1048
+ }