@gooddollar/goodprotocol 1.0.29-beta.4 → 1.0.29

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 (297) hide show
  1. package/artifacts/abis/AdminWallet.min.json +1 -1
  2. package/artifacts/abis/GoodDollarMintBurnWrapper.min.json +1 -1
  3. package/artifacts/abis/GoodDollarStaking.min.json +1 -1
  4. package/artifacts/abis/GoodDollarStakingMock.min.json +1 -1
  5. package/artifacts/abis/IGoodDollar.min.json +1 -1
  6. package/artifacts/abis/IIdentity.min.json +1 -1
  7. package/artifacts/abis/UBIScheme.min.json +1 -1
  8. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  9. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  10. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  11. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  12. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  13. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/IGoodDollar.json +0 -39
  23. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/IIdentity.json +0 -51
  27. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  35. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  36. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  37. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  38. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  39. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +2 -2
  40. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  41. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  42. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  43. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
  44. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  45. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
  46. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  47. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.json +2 -15
  48. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  49. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  50. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
  51. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  52. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  53. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  54. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  55. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  56. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  57. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
  58. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  60. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  61. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  62. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.json +2 -2
  63. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  64. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.json +2 -2
  65. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  66. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.json +2 -2
  67. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  68. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  69. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  70. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.json +2 -15
  71. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  72. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
  73. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  74. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  75. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  76. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  77. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.json +2 -2
  78. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  79. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +2 -2
  81. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  83. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  85. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
  87. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  89. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  90. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  91. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  92. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  93. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
  94. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  95. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
  96. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  97. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  98. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  99. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  100. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  101. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  102. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  103. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  104. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  105. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.json +2 -2
  106. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  107. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
  108. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  109. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
  110. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  111. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  112. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +2 -2
  113. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  114. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
  115. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  116. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
  117. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  118. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  119. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  120. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  121. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  122. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  123. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  124. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
  125. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  126. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  127. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  128. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
  129. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  130. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  131. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  132. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  133. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  134. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  135. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  136. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  137. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  138. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  139. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  140. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  141. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  142. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  143. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  144. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +22 -15
  145. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  146. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +56 -76
  147. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  148. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  149. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
  150. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  151. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
  152. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  153. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
  154. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  155. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  156. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  157. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +2 -16
  158. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  159. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  160. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  161. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +2 -2
  162. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  163. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.json +2 -2
  164. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  165. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  166. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  167. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
  168. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  169. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
  170. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  171. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
  172. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  173. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
  174. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  175. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  176. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  177. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  178. package/contracts/Interfaces.sol +0 -26
  179. package/contracts/governance/GReputation.sol +6 -19
  180. package/contracts/governance/GoodDollarStaking.sol +9 -23
  181. package/contracts/ubi/UBIScheme.sol +40 -45
  182. package/contracts/utils/AdminWallet.sol +11 -42
  183. package/contracts/utils/GoodDollarMintBurnWrapper.sol +3 -13
  184. package/hardhat.config.ts +7 -21
  185. package/package.json +2 -3
  186. package/releases/deploy-settings.json +1 -36
  187. package/releases/deployment.json +53 -98
  188. package/scripts/analytics/gdinflow.ts +56 -0
  189. package/scripts/analytics/tokenInOutStats.ts +50 -0
  190. package/scripts/deployFullDAO.ts +19 -39
  191. package/scripts/multichain-deploy/{1_basicdao-deploy.ts → basicdao-deploy.ts} +52 -56
  192. package/scripts/multichain-deploy/{3_gdSavings-deploy.ts → gdSavings-deploy.ts} +76 -90
  193. package/scripts/multichain-deploy/helpers.ts +1 -0
  194. package/scripts/{upgrades → multichain-deploy}/nonubiDistribution-deploy.ts +5 -2
  195. package/scripts/test/localOldDaoDeploy.ts +3 -10
  196. package/test/helpers.ts +8 -12
  197. package/test/ubi/UBIScheme.test.ts +30 -30
  198. package/test/ubi/UBISchemeCycle.test.ts +7 -9
  199. package/test/utils/AdminWallet.test.ts +11 -33
  200. package/types/AdminWallet.ts +113 -124
  201. package/types/GoodDollarMintBurnWrapper.ts +0 -42
  202. package/types/GoodDollarStaking.ts +0 -34
  203. package/types/GoodDollarStakingMock.ts +0 -34
  204. package/types/IGoodDollar.ts +0 -54
  205. package/types/IIdentity.ts +0 -75
  206. package/types/UBIScheme.ts +40 -19
  207. package/types/factories/AaveStakingFactory__factory.ts +1 -1
  208. package/types/factories/AdminWallet__factory.ts +55 -75
  209. package/types/factories/BaseShareFieldV2__factory.ts +1 -1
  210. package/types/factories/BaseShareField__factory.ts +1 -1
  211. package/types/factories/ClaimersDistribution__factory.ts +1 -1
  212. package/types/factories/CompoundStakingFactory__factory.ts +1 -1
  213. package/types/factories/CompoundVotingMachine__factory.ts +1 -1
  214. package/types/factories/DAOContract__factory.ts +1 -1
  215. package/types/factories/DAOUpgradeableContract__factory.ts +1 -1
  216. package/types/factories/DistributionBridgeMock__factory.ts +1 -1
  217. package/types/factories/DistributionHelperTestHelper__factory.ts +1 -1
  218. package/types/factories/DistributionHelperTest__factory.ts +1 -1
  219. package/types/factories/DistributionHelper__factory.ts +1 -1
  220. package/types/factories/DonationsStaking__factory.ts +1 -1
  221. package/types/factories/ExchangeHelper__factory.ts +1 -1
  222. package/types/factories/FuseFaucet__factory.ts +1 -1
  223. package/types/factories/FuseStakingV3__factory.ts +1 -1
  224. package/types/factories/GReputation__factory.ts +1 -1
  225. package/types/factories/GoodAaveStakingV2__factory.ts +1 -1
  226. package/types/factories/GoodAaveStaking__factory.ts +1 -1
  227. package/types/factories/GoodCompoundStakingTest__factory.ts +1 -1
  228. package/types/factories/GoodCompoundStakingV2__factory.ts +1 -1
  229. package/types/factories/GoodCompoundStaking__factory.ts +1 -1
  230. package/types/factories/GoodDollarMintBurnWrapper__factory.ts +1 -15
  231. package/types/factories/GoodDollarStakingMock__factory.ts +1 -14
  232. package/types/factories/GoodDollarStaking__factory.ts +1 -14
  233. package/types/factories/GoodFundManagerTest__factory.ts +1 -1
  234. package/types/factories/GoodFundManager__factory.ts +1 -1
  235. package/types/factories/GoodMarketMaker__factory.ts +1 -1
  236. package/types/factories/GoodReserveCDai__factory.ts +1 -1
  237. package/types/factories/GovernanceStaking__factory.ts +1 -1
  238. package/types/factories/IGoodDollar__factory.ts +0 -39
  239. package/types/factories/IIdentity__factory.ts +0 -51
  240. package/types/factories/InvitesV1__factory.ts +1 -1
  241. package/types/factories/MultichainBridgeHelper__factory.ts +1 -1
  242. package/types/factories/MultichainRouterMock__factory.ts +1 -1
  243. package/types/factories/OverMintTesterRegularStake__factory.ts +1 -1
  244. package/types/factories/OverMintTester__factory.ts +1 -1
  245. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +1 -1
  246. package/types/factories/ProtocolUpgradeFuse__factory.ts +1 -1
  247. package/types/factories/ProtocolUpgradeRecover__factory.ts +1 -1
  248. package/types/factories/ProtocolUpgrade__factory.ts +1 -1
  249. package/types/factories/ReputationTestHelper__factory.ts +1 -1
  250. package/types/factories/Reputation__factory.ts +1 -1
  251. package/types/factories/StakersDistribution__factory.ts +1 -1
  252. package/types/factories/SwapHelperTest__factory.ts +1 -1
  253. package/types/factories/UBIScheme__factory.ts +21 -14
  254. package/types/factories/UniswapV2SwapHelper__factory.ts +1 -1
  255. package/types/factories/UpgradableMock2__factory.ts +1 -1
  256. package/types/factories/UpgradableMock3__factory.ts +1 -1
  257. package/types/factories/UpgradableMock4__factory.ts +1 -1
  258. package/types/factories/UpgradableMock__factory.ts +1 -1
  259. package/types/hardhat.d.ts +0 -54
  260. package/types/index.ts +0 -12
  261. package/yarn.lock +4 -4
  262. package/artifacts/abis/Faucet.min.json +0 -1
  263. package/artifacts/abis/IGovernanceStaking.min.json +0 -1
  264. package/artifacts/abis/IIdentityV2.min.json +0 -1
  265. package/artifacts/abis/IdentityV2.min.json +0 -1
  266. package/artifacts/abis/InvitesV2.min.json +0 -1
  267. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +0 -4
  268. package/artifacts/contracts/Interfaces.sol/IIdentityV2.json +0 -281
  269. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +0 -4
  270. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +0 -684
  271. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +0 -4
  272. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.json +0 -24
  273. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +0 -4
  274. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +0 -1000
  275. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +0 -4
  276. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.json +0 -586
  277. package/contracts/fuseFaucet/Faucet.sol +0 -247
  278. package/contracts/identity/IdentityV2.sol +0 -434
  279. package/contracts/invite/InvitesV2.sol +0 -316
  280. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +0 -45
  281. package/scripts/multichain-deploy/2_helpers-deploy.ts +0 -143
  282. package/scripts/multichain-deploy/4_ubi-deploy.ts +0 -121
  283. package/scripts/multichain-deploy/5_gov-deploy.ts +0 -123
  284. package/scripts/multichain-deploy/verifyEtherscan.ts +0 -112
  285. package/scripts/upgrades/identity-upgrade.ts +0 -153
  286. package/types/Faucet.ts +0 -1014
  287. package/types/IERC1271.ts +0 -109
  288. package/types/IGovernanceStaking.ts +0 -98
  289. package/types/IIdentityV2.ts +0 -526
  290. package/types/IdentityV2.ts +0 -1612
  291. package/types/InvitesV2.ts +0 -933
  292. package/types/factories/Faucet__factory.ts +0 -729
  293. package/types/factories/IERC1271__factory.ts +0 -47
  294. package/types/factories/IGovernanceStaking__factory.ts +0 -39
  295. package/types/factories/IIdentityV2__factory.ts +0 -293
  296. package/types/factories/IdentityV2__factory.ts +0 -1048
  297. package/types/factories/InvitesV2__factory.ts +0 -634
@@ -1,684 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "Faucet",
4
- "sourceName": "contracts/fuseFaucet/Faucet.sol",
5
- "abi": [
6
- {
7
- "anonymous": false,
8
- "inputs": [
9
- {
10
- "indexed": false,
11
- "internalType": "address",
12
- "name": "previousAdmin",
13
- "type": "address"
14
- },
15
- {
16
- "indexed": false,
17
- "internalType": "address",
18
- "name": "newAdmin",
19
- "type": "address"
20
- }
21
- ],
22
- "name": "AdminChanged",
23
- "type": "event"
24
- },
25
- {
26
- "anonymous": false,
27
- "inputs": [
28
- {
29
- "indexed": true,
30
- "internalType": "address",
31
- "name": "beacon",
32
- "type": "address"
33
- }
34
- ],
35
- "name": "BeaconUpgraded",
36
- "type": "event"
37
- },
38
- {
39
- "anonymous": false,
40
- "inputs": [
41
- {
42
- "indexed": true,
43
- "internalType": "bytes32",
44
- "name": "role",
45
- "type": "bytes32"
46
- },
47
- {
48
- "indexed": true,
49
- "internalType": "bytes32",
50
- "name": "previousAdminRole",
51
- "type": "bytes32"
52
- },
53
- {
54
- "indexed": true,
55
- "internalType": "bytes32",
56
- "name": "newAdminRole",
57
- "type": "bytes32"
58
- }
59
- ],
60
- "name": "RoleAdminChanged",
61
- "type": "event"
62
- },
63
- {
64
- "anonymous": false,
65
- "inputs": [
66
- {
67
- "indexed": true,
68
- "internalType": "bytes32",
69
- "name": "role",
70
- "type": "bytes32"
71
- },
72
- {
73
- "indexed": true,
74
- "internalType": "address",
75
- "name": "account",
76
- "type": "address"
77
- },
78
- {
79
- "indexed": true,
80
- "internalType": "address",
81
- "name": "sender",
82
- "type": "address"
83
- }
84
- ],
85
- "name": "RoleGranted",
86
- "type": "event"
87
- },
88
- {
89
- "anonymous": false,
90
- "inputs": [
91
- {
92
- "indexed": true,
93
- "internalType": "bytes32",
94
- "name": "role",
95
- "type": "bytes32"
96
- },
97
- {
98
- "indexed": true,
99
- "internalType": "address",
100
- "name": "account",
101
- "type": "address"
102
- },
103
- {
104
- "indexed": true,
105
- "internalType": "address",
106
- "name": "sender",
107
- "type": "address"
108
- }
109
- ],
110
- "name": "RoleRevoked",
111
- "type": "event"
112
- },
113
- {
114
- "anonymous": false,
115
- "inputs": [
116
- {
117
- "indexed": true,
118
- "internalType": "address",
119
- "name": "implementation",
120
- "type": "address"
121
- }
122
- ],
123
- "name": "Upgraded",
124
- "type": "event"
125
- },
126
- {
127
- "anonymous": false,
128
- "inputs": [
129
- {
130
- "indexed": true,
131
- "internalType": "address",
132
- "name": "account",
133
- "type": "address"
134
- },
135
- {
136
- "indexed": false,
137
- "internalType": "uint256",
138
- "name": "amount",
139
- "type": "uint256"
140
- },
141
- {
142
- "indexed": false,
143
- "internalType": "address",
144
- "name": "whitelistedRoot",
145
- "type": "address"
146
- },
147
- {
148
- "indexed": true,
149
- "internalType": "address",
150
- "name": "relayerOrWhitelisted",
151
- "type": "address"
152
- }
153
- ],
154
- "name": "WalletTopped",
155
- "type": "event"
156
- },
157
- {
158
- "inputs": [],
159
- "name": "DEFAULT_ADMIN_ROLE",
160
- "outputs": [
161
- {
162
- "internalType": "bytes32",
163
- "name": "",
164
- "type": "bytes32"
165
- }
166
- ],
167
- "stateMutability": "view",
168
- "type": "function"
169
- },
170
- {
171
- "inputs": [],
172
- "name": "RELAYER_ROLE",
173
- "outputs": [
174
- {
175
- "internalType": "bytes32",
176
- "name": "",
177
- "type": "bytes32"
178
- }
179
- ],
180
- "stateMutability": "view",
181
- "type": "function"
182
- },
183
- {
184
- "inputs": [
185
- {
186
- "internalType": "address",
187
- "name": "_user",
188
- "type": "address"
189
- }
190
- ],
191
- "name": "canTop",
192
- "outputs": [
193
- {
194
- "internalType": "bool",
195
- "name": "",
196
- "type": "bool"
197
- }
198
- ],
199
- "stateMutability": "view",
200
- "type": "function"
201
- },
202
- {
203
- "inputs": [],
204
- "name": "currentDay",
205
- "outputs": [
206
- {
207
- "internalType": "uint256",
208
- "name": "",
209
- "type": "uint256"
210
- }
211
- ],
212
- "stateMutability": "view",
213
- "type": "function"
214
- },
215
- {
216
- "inputs": [],
217
- "name": "dailyNewWalletsCount",
218
- "outputs": [
219
- {
220
- "internalType": "uint64",
221
- "name": "",
222
- "type": "uint64"
223
- }
224
- ],
225
- "stateMutability": "view",
226
- "type": "function"
227
- },
228
- {
229
- "inputs": [],
230
- "name": "gasPrice",
231
- "outputs": [
232
- {
233
- "internalType": "uint64",
234
- "name": "",
235
- "type": "uint64"
236
- }
237
- ],
238
- "stateMutability": "view",
239
- "type": "function"
240
- },
241
- {
242
- "inputs": [],
243
- "name": "gasRefund",
244
- "outputs": [
245
- {
246
- "internalType": "uint256",
247
- "name": "",
248
- "type": "uint256"
249
- }
250
- ],
251
- "stateMutability": "view",
252
- "type": "function"
253
- },
254
- {
255
- "inputs": [],
256
- "name": "getIdentity",
257
- "outputs": [
258
- {
259
- "internalType": "contract IIdentityV2",
260
- "name": "",
261
- "type": "address"
262
- }
263
- ],
264
- "stateMutability": "view",
265
- "type": "function"
266
- },
267
- {
268
- "inputs": [
269
- {
270
- "internalType": "bytes32",
271
- "name": "role",
272
- "type": "bytes32"
273
- }
274
- ],
275
- "name": "getRoleAdmin",
276
- "outputs": [
277
- {
278
- "internalType": "bytes32",
279
- "name": "",
280
- "type": "bytes32"
281
- }
282
- ],
283
- "stateMutability": "view",
284
- "type": "function"
285
- },
286
- {
287
- "inputs": [],
288
- "name": "goodDollar_unused",
289
- "outputs": [
290
- {
291
- "internalType": "address",
292
- "name": "",
293
- "type": "address"
294
- }
295
- ],
296
- "stateMutability": "view",
297
- "type": "function"
298
- },
299
- {
300
- "inputs": [
301
- {
302
- "internalType": "bytes32",
303
- "name": "role",
304
- "type": "bytes32"
305
- },
306
- {
307
- "internalType": "address",
308
- "name": "account",
309
- "type": "address"
310
- }
311
- ],
312
- "name": "grantRole",
313
- "outputs": [],
314
- "stateMutability": "nonpayable",
315
- "type": "function"
316
- },
317
- {
318
- "inputs": [
319
- {
320
- "internalType": "bytes32",
321
- "name": "role",
322
- "type": "bytes32"
323
- },
324
- {
325
- "internalType": "address",
326
- "name": "account",
327
- "type": "address"
328
- }
329
- ],
330
- "name": "hasRole",
331
- "outputs": [
332
- {
333
- "internalType": "bool",
334
- "name": "",
335
- "type": "bool"
336
- }
337
- ],
338
- "stateMutability": "view",
339
- "type": "function"
340
- },
341
- {
342
- "inputs": [
343
- {
344
- "internalType": "contract NameService",
345
- "name": "_ns",
346
- "type": "address"
347
- },
348
- {
349
- "internalType": "uint64",
350
- "name": "_gasPrice",
351
- "type": "uint64"
352
- },
353
- {
354
- "internalType": "address",
355
- "name": "relayer",
356
- "type": "address"
357
- },
358
- {
359
- "internalType": "address",
360
- "name": "owner",
361
- "type": "address"
362
- }
363
- ],
364
- "name": "initialize",
365
- "outputs": [],
366
- "stateMutability": "nonpayable",
367
- "type": "function"
368
- },
369
- {
370
- "inputs": [],
371
- "name": "maxDailyNewWallets",
372
- "outputs": [
373
- {
374
- "internalType": "uint64",
375
- "name": "",
376
- "type": "uint64"
377
- }
378
- ],
379
- "stateMutability": "view",
380
- "type": "function"
381
- },
382
- {
383
- "inputs": [],
384
- "name": "maxDailyToppings",
385
- "outputs": [
386
- {
387
- "internalType": "uint32",
388
- "name": "",
389
- "type": "uint32"
390
- }
391
- ],
392
- "stateMutability": "view",
393
- "type": "function"
394
- },
395
- {
396
- "inputs": [],
397
- "name": "maxPerWeekMultiplier",
398
- "outputs": [
399
- {
400
- "internalType": "uint32",
401
- "name": "",
402
- "type": "uint32"
403
- }
404
- ],
405
- "stateMutability": "view",
406
- "type": "function"
407
- },
408
- {
409
- "inputs": [],
410
- "name": "maxSwapAmount",
411
- "outputs": [
412
- {
413
- "internalType": "uint32",
414
- "name": "",
415
- "type": "uint32"
416
- }
417
- ],
418
- "stateMutability": "view",
419
- "type": "function"
420
- },
421
- {
422
- "inputs": [],
423
- "name": "nameService",
424
- "outputs": [
425
- {
426
- "internalType": "contract NameService",
427
- "name": "",
428
- "type": "address"
429
- }
430
- ],
431
- "stateMutability": "view",
432
- "type": "function"
433
- },
434
- {
435
- "inputs": [
436
- {
437
- "internalType": "address",
438
- "name": "",
439
- "type": "address"
440
- }
441
- ],
442
- "name": "notFirstTime",
443
- "outputs": [
444
- {
445
- "internalType": "bool",
446
- "name": "",
447
- "type": "bool"
448
- }
449
- ],
450
- "stateMutability": "view",
451
- "type": "function"
452
- },
453
- {
454
- "inputs": [
455
- {
456
- "internalType": "address payable",
457
- "name": "_from",
458
- "type": "address"
459
- },
460
- {
461
- "internalType": "uint256",
462
- "name": "amount",
463
- "type": "uint256"
464
- },
465
- {
466
- "internalType": "bytes",
467
- "name": "data",
468
- "type": "bytes"
469
- }
470
- ],
471
- "name": "onTokenTransfer",
472
- "outputs": [
473
- {
474
- "internalType": "bool",
475
- "name": "",
476
- "type": "bool"
477
- }
478
- ],
479
- "stateMutability": "nonpayable",
480
- "type": "function"
481
- },
482
- {
483
- "inputs": [],
484
- "name": "perDayRoughLimit",
485
- "outputs": [
486
- {
487
- "internalType": "uint256",
488
- "name": "",
489
- "type": "uint256"
490
- }
491
- ],
492
- "stateMutability": "view",
493
- "type": "function"
494
- },
495
- {
496
- "inputs": [
497
- {
498
- "internalType": "bytes32",
499
- "name": "role",
500
- "type": "bytes32"
501
- },
502
- {
503
- "internalType": "address",
504
- "name": "account",
505
- "type": "address"
506
- }
507
- ],
508
- "name": "renounceRole",
509
- "outputs": [],
510
- "stateMutability": "nonpayable",
511
- "type": "function"
512
- },
513
- {
514
- "inputs": [
515
- {
516
- "internalType": "bytes32",
517
- "name": "role",
518
- "type": "bytes32"
519
- },
520
- {
521
- "internalType": "address",
522
- "name": "account",
523
- "type": "address"
524
- }
525
- ],
526
- "name": "revokeRole",
527
- "outputs": [],
528
- "stateMutability": "nonpayable",
529
- "type": "function"
530
- },
531
- {
532
- "inputs": [],
533
- "name": "startTime",
534
- "outputs": [
535
- {
536
- "internalType": "uint256",
537
- "name": "",
538
- "type": "uint256"
539
- }
540
- ],
541
- "stateMutability": "view",
542
- "type": "function"
543
- },
544
- {
545
- "inputs": [
546
- {
547
- "internalType": "bytes4",
548
- "name": "interfaceId",
549
- "type": "bytes4"
550
- }
551
- ],
552
- "name": "supportsInterface",
553
- "outputs": [
554
- {
555
- "internalType": "bool",
556
- "name": "",
557
- "type": "bool"
558
- }
559
- ],
560
- "stateMutability": "view",
561
- "type": "function"
562
- },
563
- {
564
- "inputs": [
565
- {
566
- "internalType": "address payable",
567
- "name": "_user",
568
- "type": "address"
569
- }
570
- ],
571
- "name": "topWallet",
572
- "outputs": [],
573
- "stateMutability": "nonpayable",
574
- "type": "function"
575
- },
576
- {
577
- "inputs": [],
578
- "name": "toppingAmount",
579
- "outputs": [
580
- {
581
- "internalType": "uint256",
582
- "name": "",
583
- "type": "uint256"
584
- }
585
- ],
586
- "stateMutability": "view",
587
- "type": "function"
588
- },
589
- {
590
- "inputs": [
591
- {
592
- "internalType": "uint256",
593
- "name": "",
594
- "type": "uint256"
595
- },
596
- {
597
- "internalType": "address",
598
- "name": "",
599
- "type": "address"
600
- }
601
- ],
602
- "name": "toppings",
603
- "outputs": [
604
- {
605
- "internalType": "uint256",
606
- "name": "",
607
- "type": "uint256"
608
- }
609
- ],
610
- "stateMutability": "view",
611
- "type": "function"
612
- },
613
- {
614
- "inputs": [],
615
- "name": "upgrade",
616
- "outputs": [],
617
- "stateMutability": "nonpayable",
618
- "type": "function"
619
- },
620
- {
621
- "inputs": [
622
- {
623
- "internalType": "address",
624
- "name": "newImplementation",
625
- "type": "address"
626
- }
627
- ],
628
- "name": "upgradeTo",
629
- "outputs": [],
630
- "stateMutability": "nonpayable",
631
- "type": "function"
632
- },
633
- {
634
- "inputs": [
635
- {
636
- "internalType": "address",
637
- "name": "newImplementation",
638
- "type": "address"
639
- },
640
- {
641
- "internalType": "bytes",
642
- "name": "data",
643
- "type": "bytes"
644
- }
645
- ],
646
- "name": "upgradeToAndCall",
647
- "outputs": [],
648
- "stateMutability": "payable",
649
- "type": "function"
650
- },
651
- {
652
- "inputs": [
653
- {
654
- "internalType": "address",
655
- "name": "",
656
- "type": "address"
657
- }
658
- ],
659
- "name": "wallets",
660
- "outputs": [
661
- {
662
- "internalType": "uint128",
663
- "name": "lastDayTopped",
664
- "type": "uint128"
665
- },
666
- {
667
- "internalType": "uint32",
668
- "name": "dailyToppingCount",
669
- "type": "uint32"
670
- }
671
- ],
672
- "stateMutability": "view",
673
- "type": "function"
674
- },
675
- {
676
- "stateMutability": "payable",
677
- "type": "receive"
678
- }
679
- ],
680
- "bytecode": "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c6128e361004b6000396000818161070f0152818161074f01528181610e6c0152610eac01526128e36000f3fe6080604052600436106101775760003560e01c806301ffc9a7146101835780631ece9b12146101b8578063248a9ca3146101e65780632f2ff15d1461021457806336568abe146102365780633659cfe61461025657806336afc6fa146102765780633771dcf81461028b5780633e6326fc146102ab5780634f1ef286146102cc5780635b61e2c1146102df5780635bc758e21461031f5780635c9302c9146103355780636294c3111461034b57806378e979251461036b5780637befab101461038157806389b08f11146103bb57806391d1485414610425578063926d7d7f1461044557806393a08de414610467578063a217fddf14610485578063a4c0ed361461049a578063aa31e459146104ba578063c573cb40146104eb578063c5da10331461050c578063cce987d414610545578063d547741f1461056a578063d55ec6971461058a578063e6ea39391461059f578063e97eefd2146105b5578063f84b40f5146105d5578063fe173b97146105eb57600080fd5b3661017e57005b600080fd5b34801561018f57600080fd5b506101a361019e366004612101565b610613565b60405190151581526020015b60405180910390f35b3480156101c457600080fd5b50610105546101d9906001600160a01b031681565b6040516101af919061212b565b3480156101f257600080fd5b5061020661020136600461213f565b61064a565b6040519081526020016101af565b34801561022057600080fd5b5061023461022f36600461216d565b61065f565b005b34801561024257600080fd5b5061023461025136600461216d565b610681565b34801561026257600080fd5b5061023461027136600461219d565b610704565b34801561028257600080fd5b506101d96107cd565b34801561029757600080fd5b506102346102a636600461219d565b610868565b3480156102b757600080fd5b50610100546101d9906001600160a01b031681565b6102346102da366004612200565b610e61565b3480156102eb57600080fd5b506101055461030790600160a01b90046001600160401b031681565b6040516001600160401b0390911681526020016101af565b34801561032b57600080fd5b5061020660fd5481565b34801561034157600080fd5b5061020660ff5481565b34801561035757600080fd5b506102346103663660046122a7565b610f17565b34801561037757600080fd5b5061020660fe5481565b34801561038d57600080fd5b50610104546103a690600160601b900463ffffffff1681565b60405163ffffffff90911681526020016101af565b3480156103c757600080fd5b506104016103d636600461219d565b610103602052600090815260409020546001600160801b03811690600160801b900463ffffffff1682565b604080516001600160801b03909316835263ffffffff9091166020830152016101af565b34801561043157600080fd5b506101a361044036600461216d565b61107b565b34801561045157600080fd5b5061020660008051602061286783398151915281565b34801561047357600080fd5b50610104546103a69063ffffffff1681565b34801561049157600080fd5b50610206600081565b3480156104a657600080fd5b506101a36104b536600461230f565b6110a6565b3480156104c657600080fd5b506101a36104d536600461219d565b6101026020526000908152604090205460ff1681565b3480156104f757600080fd5b5061010654610307906001600160401b031681565b34801561051857600080fd5b5061020661052736600461216d565b61010160209081526000928352604080842090915290825290205481565b34801561055157600080fd5b50610104546103a690600160801b900463ffffffff1681565b34801561057657600080fd5b5061023461058536600461216d565b61130b565b34801561059657600080fd5b50610234611328565b3480156105ab57600080fd5b5061020660fc5481565b3480156105c157600080fd5b506101a36105d036600461219d565b61135e565b3480156105e157600080fd5b5061020660fb5481565b3480156105f757600080fd5b506101045461030790600160201b90046001600160401b031681565b60006001600160e01b03198216637965db0b60e01b148061064457506301ffc9a760e01b6001600160e01b03198316145b92915050565b600090815260c9602052604090206001015490565b6106688261064a565b61067281336116bf565b61067c8383611723565b505050565b6001600160a01b03811633146106f65760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61070082826117a9565b5050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561074d5760405162461bcd60e51b81526004016106ed90612397565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661077f611810565b6001600160a01b0316146107a55760405162461bcd60e51b81526004016106ed906123d1565b6107ae8161182c565b604080516000808252602082019092526107ca91839190611838565b50565b6101005460405163bf40fac160e01b81526020600482015260086024820152674944454e5449545960c01b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561082b57600080fd5b505afa15801561083f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610863919061240b565b905090565b60005a90508160006108786107cd565b6001600160a01b0316632d0e9b46836040518263ffffffff1660e01b81526004016108a3919061212b565b60206040518083038186803b1580156108bb57600080fd5b505afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f3919061240b565b90506001600160a01b0381161561090a578061090c565b815b60ff5490925061091a611978565b8060ff54146109355761010680546001600160401b03191690555b60ff546001600160a01b038416600090815261010360205260409020546001600160801b03908116911614158061099a5750610104546001600160a01b0384166000908152610103602052604090205463ffffffff918216600160801b909104909116105b6109db5760405162461bcd60e51b81526020600482015260126024820152716d6178206461696c7920746f7070696e677360701b60448201526064016106ed565b6001600160a01b0383166000908152610102602052604090205460ff16158015610a1e575061010554610106546001600160401b03600160a01b90920482169116105b80610a3157506001600160a01b03821615155b610a8c5760405162461bcd60e51b815260206004820152602660248201527f55736572206e6f742077686974656c6973746564206f72206e6f742066697273604482015265742074696d6560d01b60648201526084016106ed565b6000600760ff54610a9d919061243e565b6001600160a01b0385166000908152610103602052604081205460ff549293509091610ad2916001600160801b031690612468565b905060078111610ae25780610ae5565b60075b9050818111610af45780610aff565b610aff82600161247f565b9050600081610b0f84600161247f565b610b199190612468565b90505b828111610b92576001600160a01b0386166000908152610103602052604081206001018260078110610b5057610b50612497565b600291828204019190066010026101000a8154816001600160801b0302191690836001600160801b031602179055508080610b8a906124ad565b915050610b1c565b506000805b838111610c09576001600160a01b0387166000908152610103602052604090206001018160078110610bcb57610bcb612497565b600291828204019190066010029054906101000a90046001600160801b031682610bf591906124c8565b915080610c01816124ad565b915050610b97565b506101045460fb54610c2891600160601b900463ffffffff16906124f3565b816001600160801b031610610c9c5760405162461bcd60e51b815260206004820152603460248201527f557365722077616c6c657420686173206265656e20746f7070656420746f6f206044820152736d616e792074696d65732074686973207765656b60601b60648201526084016106ed565b876000610ca76107cd565b6001600160a01b0316632d0e9b46836040518263ffffffff1660e01b8152600401610cd2919061212b565b60206040518083038186803b158015610cea57600080fd5b505afa158015610cfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d22919061240b565b6001600160a01b0316141580610dc457506000610d3d6107cd565b6001600160a01b0316632d0e9b46336040518263ffffffff1660e01b8152600401610d68919061212b565b60206040518083038186803b158015610d8057600080fd5b505afa158015610d94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db8919061240b565b6001600160a01b031614155b80610de25750610de26000805160206128678339815191523361107b565b610deb57600080fd5b610df489611999565b505050505050505a610e069082612468565b610e129061a41061247f565b6101045490915033906108fc90610e3990600160201b90046001600160401b0316846124f3565b6040518115909202916000818181858888f1935050505015801561067c573d6000803e3d6000fd5b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610eaa5760405162461bcd60e51b81526004016106ed90612397565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610edc611810565b6001600160a01b031614610f025760405162461bcd60e51b81526004016106ed906123d1565b610f0b8261182c565b61070082826001611838565b600054610100900460ff1680610f30575060005460ff16155b610f4c5760405162461bcd60e51b81526004016106ed90612512565b600054610100900460ff16158015610f6e576000805461ffff19166101011790555b610f76611cf3565b610f81600083611d5e565b6001600160a01b03831615610fa857610fa860008051602061286783398151915284611d5e565b6101048054600160201b600160601b031916600160201b6001600160401b0387811682029290921792839055610fe3920416620927c0612560565b6001600160401b031660fc819055610ffc9060026124f3565b60fb5561010480544260fe5561010080546001600160a01b0319166001600160a01b03891617905563ffffffff600160601b03600160a01b03191660036501f40000000160611b011790556101058054600160a01b600160e01b03191661027160a31b1790558015611074576000805461ff00191690555b5050505050565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61010454600090600160801b900463ffffffff168411156110f45760405162461bcd60e51b8152602060048201526008602482015267736c69707061676560c01b60448201526064016106ed565b60006111028385018561219d565b6040805160028082526060820183529293508392600092602083019080368337019050509050338160008151811061113c5761113c612497565b60200260200101906001600160a01b031690816001600160a01b031681525050816001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561119557600080fd5b505afa1580156111a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cd919061240b565b816001815181106111e0576111e0612497565b6001600160a01b03928316602091820292909201015260405163095ea7b360e01b815290841660048201526000196024820152339063095ea7b390604401602060405180830381600087803b15801561123857600080fd5b505af115801561124c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611270919061258f565b506040516318cbafe560e01b81526001600160a01b038316906318cbafe5906112a6908a9060009086908e9042906004016125b1565b600060405180830381600087803b1580156112c057600080fd5b505af11580156112d4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112fc9190810190612622565b50600198975050505050505050565b6113148261064a565b61131e81336116bf565b61067c83836117a9565b61010554600160a01b90046001600160401b031661135c576101058054600160a01b600160e01b03191661027160a31b1790555b565b6000816001600160a01b03163160fc54101561137c57506000919050565b60006113866107cd565b6001600160a01b0316632d0e9b46846040518263ffffffff1660e01b81526004016113b1919061212b565b60206040518083038186803b1580156113c957600080fd5b505afa1580156113dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611401919061240b565b90506001600160a01b03811615611418578061141a565b825b925060006201518060fe54426114309190612468565b61143a91906126c7565b6001600160a01b03851660009081526101036020526040812054919250906001600160801b03808416911614158061149957506001600160a01b038516600090815261010360205260409020546003600160801b90910463ffffffff16105b80156114f657506001600160a01b0385166000908152610102602052604090205460ff161580156114e3575061010554610106546001600160401b03600160a01b90920482169116105b806114f657506001600160a01b03831615155b6001600160a01b03861660009081526101036020526040808220815160e0810192839052939450919291600101906007908285855b82829054906101000a90046001600160801b03166001600160801b031681526020019060100190602082600f0104928301926001038202915080841161152b579050505050505090506000600784611583919061243e565b6001600160a01b03881660009081526101036020526040812054919250906115b4906001600160801b031686612468565b9050600781116115c457806115c7565b60075b90508181116115d657806115e1565b6115e182600161247f565b90506000816115f184600161247f565b6115fb9190612468565b90505b82811161163e57600084826007811061161957611619612497565b6001600160801b03909216602092909202015280611636816124ad565b9150506115fe565b506000805b83811161167f5784816007811061165c5761165c612497565b602002015161166b90836124c8565b915080611677816124ad565b915050611643565b508480156116b257506101045460fb546116a691600160601b900463ffffffff16906124f3565b816001600160801b0316105b9998505050505050505050565b6116c9828261107b565b610700576116e1816001600160a01b03166014611d68565b6116ec836020611d68565b6040516020016116fd92919061270b565b60408051601f198184030181529082905262461bcd60e51b82526106ed9160040161277a565b61172d828261107b565b61070057600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117653390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6117b3828261107b565b1561070057600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020612847833981519152546001600160a01b031690565b600061070081336116bf565b6000611842611810565b905061184d84611f0a565b60008351118061185a5750815b1561186b576118698484611f9d565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661107457805460ff191660011781556040516118e69086906118b790859060240161212b565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052611f9d565b50805460ff191681556118f7611810565b6001600160a01b0316826001600160a01b03161461196f5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b60648201526084016106ed565b61107485612088565b6201518060fe544261198a9190612468565b61199491906126c7565b60ff55565b8060006119a46107cd565b6001600160a01b0316632d0e9b46846040518263ffffffff1660e01b81526004016119cf919061212b565b60206040518083038186803b1580156119e757600080fd5b505afa1580156119fb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a1f919061240b565b90506001600160a01b03811615611a365780611a38565b825b9250826001600160a01b03163160fc5411611a5257600080fd5b6000836001600160a01b03163160fc54611a6c9190612468565b90506000600760ff54611a7f919061243e565b60ff546001600160a01b038716600090815261010360205260409020549192506001600160801b0391821691161415611b0f576001600160a01b038516600090815261010360205260409020805460019190601090611aec908490600160801b900463ffffffff166127ad565b92506101000a81548163ffffffff021916908363ffffffff160217905550611b3d565b6001600160a01b038516600090815261010360205260409020805463ffffffff60801b1916600160801b1790555b60ff546001600160a01b03861660009081526101036020526040902080546001600160801b0319166001600160801b0390921691909117815582906001018260078110611b8c57611b8c612497565b600291828204019190066010028282829054906101000a90046001600160801b0316611bb891906124c8565b82546001600160801b039182166101009390930a9283029190920219909116179055506001600160a01b0385166000908152610102602052604090205460ff16158015611c0c57506001600160a01b038316155b15611c515761010680546001600160401b0316906000611c2b836127cc565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550505b6001600160a01b0380861660009081526101026020526040808220805460ff19166001179055519186169184156108fc0291859190818181858888f19350505050158015611ca3573d6000803e3d6000fd5b50604080518381526001600160a01b0385811660208301523392908716917f7872034fbcc87890e73d66eac55389e0ffdba157b89a73bd2011157ebac1d66e910160405180910390a35050505050565b600054610100900460ff1680611d0c575060005460ff16155b611d285760405162461bcd60e51b81526004016106ed90612512565b600054610100900460ff16158015611d4a576000805461ffff19166101011790555b80156107ca576000805461ff001916905550565b6107008282611723565b60606000611d778360026124f3565b611d8290600261247f565b6001600160401b03811115611d9957611d996121ba565b6040519080825280601f01601f191660200182016040528015611dc3576020820181803683370190505b509050600360fc1b81600081518110611dde57611dde612497565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611e0d57611e0d612497565b60200101906001600160f81b031916908160001a9053506000611e318460026124f3565b611e3c90600161247f565b90505b6001811115611eb4576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611e7057611e70612497565b1a60f81b828281518110611e8657611e86612497565b60200101906001600160f81b031916908160001a90535060049490941c93611ead816127f3565b9050611e3f565b508315611f035760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016106ed565b9392505050565b803b611f6e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016106ed565b60008051602061284783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b611ffc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016106ed565b600080846001600160a01b031684604051612017919061280a565b600060405180830381855af49150503d8060008114612052576040519150601f19603f3d011682016040523d82523d6000602084013e612057565b606091505b509150915061207f8282604051806060016040528060278152602001612887602791396120c8565b95945050505050565b61209181611f0a565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156120d7575081611f03565b8251156120e75782518084602001fd5b8160405162461bcd60e51b81526004016106ed919061277a565b60006020828403121561211357600080fd5b81356001600160e01b031981168114611f0357600080fd5b6001600160a01b0391909116815260200190565b60006020828403121561215157600080fd5b5035919050565b6001600160a01b03811681146107ca57600080fd5b6000806040838503121561218057600080fd5b82359150602083013561219281612158565b809150509250929050565b6000602082840312156121af57600080fd5b8135611f0381612158565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156121f8576121f86121ba565b604052919050565b6000806040838503121561221357600080fd5b823561221e81612158565b91506020838101356001600160401b038082111561223b57600080fd5b818601915086601f83011261224f57600080fd5b813581811115612261576122616121ba565b612273601f8201601f191685016121d0565b9150808252878482850101111561228957600080fd5b80848401858401376000848284010152508093505050509250929050565b600080600080608085870312156122bd57600080fd5b84356122c881612158565b935060208501356001600160401b03811681146122e457600080fd5b925060408501356122f481612158565b9150606085013561230481612158565b939692955090935050565b6000806000806060858703121561232557600080fd5b843561233081612158565b93506020850135925060408501356001600160401b038082111561235357600080fd5b818701915087601f83011261236757600080fd5b81358181111561237657600080fd5b88602082850101111561238857600080fd5b95989497505060200194505050565b6020808252602c9082015260008051602061282783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061282783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60006020828403121561241d57600080fd5b8151611f0381612158565b634e487b7160e01b600052601260045260246000fd5b60008261244d5761244d612428565b500690565b634e487b7160e01b600052601160045260246000fd5b60008282101561247a5761247a612452565b500390565b6000821982111561249257612492612452565b500190565b634e487b7160e01b600052603260045260246000fd5b60006000198214156124c1576124c1612452565b5060010190565b60006001600160801b038281168482168083038211156124ea576124ea612452565b01949350505050565b600081600019048311821515161561250d5761250d612452565b500290565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b60006001600160401b038281168482168115158284048211161561258657612586612452565b02949350505050565b6000602082840312156125a157600080fd5b81518015158114611f0357600080fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156126015784516001600160a01b0316835293830193918301916001016125dc565b50506001600160a01b03969096166060850152505050608001529392505050565b6000602080838503121561263557600080fd5b82516001600160401b038082111561264c57600080fd5b818501915085601f83011261266057600080fd5b815181811115612672576126726121ba565b8060051b91506126838483016121d0565b818152918301840191848101908884111561269d57600080fd5b938501935b838510156126bb578451825293850193908501906126a2565b98975050505050505050565b6000826126d6576126d6612428565b500490565b60005b838110156126f65781810151838201526020016126de565b83811115612705576000848401525b50505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835161273d8160178501602088016126db565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161276e8160288401602088016126db565b01602801949350505050565b60208152600082518060208401526127998160408501602087016126db565b601f01601f19169190910160400192915050565b600063ffffffff8083168185168083038211156124ea576124ea612452565b60006001600160401b03828116808214156127e9576127e9612452565b6001019392505050565b60008161280257612802612452565b506000190190565b6000825161281c8184602087016126db565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc802cf867c2da464d4ff0ebc4dfcccdfbd65d75a8bc1c273fb02e80bf3446b516416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212201ffdd7873ada9f1c281cbb73b9268f48828be87faad453179ca82e4a48e71aa164736f6c63430008080033",
681
- "deployedBytecode": "0x6080604052600436106101775760003560e01c806301ffc9a7146101835780631ece9b12146101b8578063248a9ca3146101e65780632f2ff15d1461021457806336568abe146102365780633659cfe61461025657806336afc6fa146102765780633771dcf81461028b5780633e6326fc146102ab5780634f1ef286146102cc5780635b61e2c1146102df5780635bc758e21461031f5780635c9302c9146103355780636294c3111461034b57806378e979251461036b5780637befab101461038157806389b08f11146103bb57806391d1485414610425578063926d7d7f1461044557806393a08de414610467578063a217fddf14610485578063a4c0ed361461049a578063aa31e459146104ba578063c573cb40146104eb578063c5da10331461050c578063cce987d414610545578063d547741f1461056a578063d55ec6971461058a578063e6ea39391461059f578063e97eefd2146105b5578063f84b40f5146105d5578063fe173b97146105eb57600080fd5b3661017e57005b600080fd5b34801561018f57600080fd5b506101a361019e366004612101565b610613565b60405190151581526020015b60405180910390f35b3480156101c457600080fd5b50610105546101d9906001600160a01b031681565b6040516101af919061212b565b3480156101f257600080fd5b5061020661020136600461213f565b61064a565b6040519081526020016101af565b34801561022057600080fd5b5061023461022f36600461216d565b61065f565b005b34801561024257600080fd5b5061023461025136600461216d565b610681565b34801561026257600080fd5b5061023461027136600461219d565b610704565b34801561028257600080fd5b506101d96107cd565b34801561029757600080fd5b506102346102a636600461219d565b610868565b3480156102b757600080fd5b50610100546101d9906001600160a01b031681565b6102346102da366004612200565b610e61565b3480156102eb57600080fd5b506101055461030790600160a01b90046001600160401b031681565b6040516001600160401b0390911681526020016101af565b34801561032b57600080fd5b5061020660fd5481565b34801561034157600080fd5b5061020660ff5481565b34801561035757600080fd5b506102346103663660046122a7565b610f17565b34801561037757600080fd5b5061020660fe5481565b34801561038d57600080fd5b50610104546103a690600160601b900463ffffffff1681565b60405163ffffffff90911681526020016101af565b3480156103c757600080fd5b506104016103d636600461219d565b610103602052600090815260409020546001600160801b03811690600160801b900463ffffffff1682565b604080516001600160801b03909316835263ffffffff9091166020830152016101af565b34801561043157600080fd5b506101a361044036600461216d565b61107b565b34801561045157600080fd5b5061020660008051602061286783398151915281565b34801561047357600080fd5b50610104546103a69063ffffffff1681565b34801561049157600080fd5b50610206600081565b3480156104a657600080fd5b506101a36104b536600461230f565b6110a6565b3480156104c657600080fd5b506101a36104d536600461219d565b6101026020526000908152604090205460ff1681565b3480156104f757600080fd5b5061010654610307906001600160401b031681565b34801561051857600080fd5b5061020661052736600461216d565b61010160209081526000928352604080842090915290825290205481565b34801561055157600080fd5b50610104546103a690600160801b900463ffffffff1681565b34801561057657600080fd5b5061023461058536600461216d565b61130b565b34801561059657600080fd5b50610234611328565b3480156105ab57600080fd5b5061020660fc5481565b3480156105c157600080fd5b506101a36105d036600461219d565b61135e565b3480156105e157600080fd5b5061020660fb5481565b3480156105f757600080fd5b506101045461030790600160201b90046001600160401b031681565b60006001600160e01b03198216637965db0b60e01b148061064457506301ffc9a760e01b6001600160e01b03198316145b92915050565b600090815260c9602052604090206001015490565b6106688261064a565b61067281336116bf565b61067c8383611723565b505050565b6001600160a01b03811633146106f65760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b61070082826117a9565b5050565b306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016141561074d5760405162461bcd60e51b81526004016106ed90612397565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661077f611810565b6001600160a01b0316146107a55760405162461bcd60e51b81526004016106ed906123d1565b6107ae8161182c565b604080516000808252602082019092526107ca91839190611838565b50565b6101005460405163bf40fac160e01b81526020600482015260086024820152674944454e5449545960c01b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561082b57600080fd5b505afa15801561083f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610863919061240b565b905090565b60005a90508160006108786107cd565b6001600160a01b0316632d0e9b46836040518263ffffffff1660e01b81526004016108a3919061212b565b60206040518083038186803b1580156108bb57600080fd5b505afa1580156108cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f3919061240b565b90506001600160a01b0381161561090a578061090c565b815b60ff5490925061091a611978565b8060ff54146109355761010680546001600160401b03191690555b60ff546001600160a01b038416600090815261010360205260409020546001600160801b03908116911614158061099a5750610104546001600160a01b0384166000908152610103602052604090205463ffffffff918216600160801b909104909116105b6109db5760405162461bcd60e51b81526020600482015260126024820152716d6178206461696c7920746f7070696e677360701b60448201526064016106ed565b6001600160a01b0383166000908152610102602052604090205460ff16158015610a1e575061010554610106546001600160401b03600160a01b90920482169116105b80610a3157506001600160a01b03821615155b610a8c5760405162461bcd60e51b815260206004820152602660248201527f55736572206e6f742077686974656c6973746564206f72206e6f742066697273604482015265742074696d6560d01b60648201526084016106ed565b6000600760ff54610a9d919061243e565b6001600160a01b0385166000908152610103602052604081205460ff549293509091610ad2916001600160801b031690612468565b905060078111610ae25780610ae5565b60075b9050818111610af45780610aff565b610aff82600161247f565b9050600081610b0f84600161247f565b610b199190612468565b90505b828111610b92576001600160a01b0386166000908152610103602052604081206001018260078110610b5057610b50612497565b600291828204019190066010026101000a8154816001600160801b0302191690836001600160801b031602179055508080610b8a906124ad565b915050610b1c565b506000805b838111610c09576001600160a01b0387166000908152610103602052604090206001018160078110610bcb57610bcb612497565b600291828204019190066010029054906101000a90046001600160801b031682610bf591906124c8565b915080610c01816124ad565b915050610b97565b506101045460fb54610c2891600160601b900463ffffffff16906124f3565b816001600160801b031610610c9c5760405162461bcd60e51b815260206004820152603460248201527f557365722077616c6c657420686173206265656e20746f7070656420746f6f206044820152736d616e792074696d65732074686973207765656b60601b60648201526084016106ed565b876000610ca76107cd565b6001600160a01b0316632d0e9b46836040518263ffffffff1660e01b8152600401610cd2919061212b565b60206040518083038186803b158015610cea57600080fd5b505afa158015610cfe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d22919061240b565b6001600160a01b0316141580610dc457506000610d3d6107cd565b6001600160a01b0316632d0e9b46336040518263ffffffff1660e01b8152600401610d68919061212b565b60206040518083038186803b158015610d8057600080fd5b505afa158015610d94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db8919061240b565b6001600160a01b031614155b80610de25750610de26000805160206128678339815191523361107b565b610deb57600080fd5b610df489611999565b505050505050505a610e069082612468565b610e129061a41061247f565b6101045490915033906108fc90610e3990600160201b90046001600160401b0316846124f3565b6040518115909202916000818181858888f1935050505015801561067c573d6000803e3d6000fd5b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610eaa5760405162461bcd60e51b81526004016106ed90612397565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610edc611810565b6001600160a01b031614610f025760405162461bcd60e51b81526004016106ed906123d1565b610f0b8261182c565b61070082826001611838565b600054610100900460ff1680610f30575060005460ff16155b610f4c5760405162461bcd60e51b81526004016106ed90612512565b600054610100900460ff16158015610f6e576000805461ffff19166101011790555b610f76611cf3565b610f81600083611d5e565b6001600160a01b03831615610fa857610fa860008051602061286783398151915284611d5e565b6101048054600160201b600160601b031916600160201b6001600160401b0387811682029290921792839055610fe3920416620927c0612560565b6001600160401b031660fc819055610ffc9060026124f3565b60fb5561010480544260fe5561010080546001600160a01b0319166001600160a01b03891617905563ffffffff600160601b03600160a01b03191660036501f40000000160611b011790556101058054600160a01b600160e01b03191661027160a31b1790558015611074576000805461ff00191690555b5050505050565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b61010454600090600160801b900463ffffffff168411156110f45760405162461bcd60e51b8152602060048201526008602482015267736c69707061676560c01b60448201526064016106ed565b60006111028385018561219d565b6040805160028082526060820183529293508392600092602083019080368337019050509050338160008151811061113c5761113c612497565b60200260200101906001600160a01b031690816001600160a01b031681525050816001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561119557600080fd5b505afa1580156111a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cd919061240b565b816001815181106111e0576111e0612497565b6001600160a01b03928316602091820292909201015260405163095ea7b360e01b815290841660048201526000196024820152339063095ea7b390604401602060405180830381600087803b15801561123857600080fd5b505af115801561124c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611270919061258f565b506040516318cbafe560e01b81526001600160a01b038316906318cbafe5906112a6908a9060009086908e9042906004016125b1565b600060405180830381600087803b1580156112c057600080fd5b505af11580156112d4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526112fc9190810190612622565b50600198975050505050505050565b6113148261064a565b61131e81336116bf565b61067c83836117a9565b61010554600160a01b90046001600160401b031661135c576101058054600160a01b600160e01b03191661027160a31b1790555b565b6000816001600160a01b03163160fc54101561137c57506000919050565b60006113866107cd565b6001600160a01b0316632d0e9b46846040518263ffffffff1660e01b81526004016113b1919061212b565b60206040518083038186803b1580156113c957600080fd5b505afa1580156113dd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611401919061240b565b90506001600160a01b03811615611418578061141a565b825b925060006201518060fe54426114309190612468565b61143a91906126c7565b6001600160a01b03851660009081526101036020526040812054919250906001600160801b03808416911614158061149957506001600160a01b038516600090815261010360205260409020546003600160801b90910463ffffffff16105b80156114f657506001600160a01b0385166000908152610102602052604090205460ff161580156114e3575061010554610106546001600160401b03600160a01b90920482169116105b806114f657506001600160a01b03831615155b6001600160a01b03861660009081526101036020526040808220815160e0810192839052939450919291600101906007908285855b82829054906101000a90046001600160801b03166001600160801b031681526020019060100190602082600f0104928301926001038202915080841161152b579050505050505090506000600784611583919061243e565b6001600160a01b03881660009081526101036020526040812054919250906115b4906001600160801b031686612468565b9050600781116115c457806115c7565b60075b90508181116115d657806115e1565b6115e182600161247f565b90506000816115f184600161247f565b6115fb9190612468565b90505b82811161163e57600084826007811061161957611619612497565b6001600160801b03909216602092909202015280611636816124ad565b9150506115fe565b506000805b83811161167f5784816007811061165c5761165c612497565b602002015161166b90836124c8565b915080611677816124ad565b915050611643565b508480156116b257506101045460fb546116a691600160601b900463ffffffff16906124f3565b816001600160801b0316105b9998505050505050505050565b6116c9828261107b565b610700576116e1816001600160a01b03166014611d68565b6116ec836020611d68565b6040516020016116fd92919061270b565b60408051601f198184030181529082905262461bcd60e51b82526106ed9160040161277a565b61172d828261107b565b61070057600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117653390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6117b3828261107b565b1561070057600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020612847833981519152546001600160a01b031690565b600061070081336116bf565b6000611842611810565b905061184d84611f0a565b60008351118061185a5750815b1561186b576118698484611f9d565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661107457805460ff191660011781556040516118e69086906118b790859060240161212b565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052611f9d565b50805460ff191681556118f7611810565b6001600160a01b0316826001600160a01b03161461196f5760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b60648201526084016106ed565b61107485612088565b6201518060fe544261198a9190612468565b61199491906126c7565b60ff55565b8060006119a46107cd565b6001600160a01b0316632d0e9b46846040518263ffffffff1660e01b81526004016119cf919061212b565b60206040518083038186803b1580156119e757600080fd5b505afa1580156119fb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a1f919061240b565b90506001600160a01b03811615611a365780611a38565b825b9250826001600160a01b03163160fc5411611a5257600080fd5b6000836001600160a01b03163160fc54611a6c9190612468565b90506000600760ff54611a7f919061243e565b60ff546001600160a01b038716600090815261010360205260409020549192506001600160801b0391821691161415611b0f576001600160a01b038516600090815261010360205260409020805460019190601090611aec908490600160801b900463ffffffff166127ad565b92506101000a81548163ffffffff021916908363ffffffff160217905550611b3d565b6001600160a01b038516600090815261010360205260409020805463ffffffff60801b1916600160801b1790555b60ff546001600160a01b03861660009081526101036020526040902080546001600160801b0319166001600160801b0390921691909117815582906001018260078110611b8c57611b8c612497565b600291828204019190066010028282829054906101000a90046001600160801b0316611bb891906124c8565b82546001600160801b039182166101009390930a9283029190920219909116179055506001600160a01b0385166000908152610102602052604090205460ff16158015611c0c57506001600160a01b038316155b15611c515761010680546001600160401b0316906000611c2b836127cc565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550505b6001600160a01b0380861660009081526101026020526040808220805460ff19166001179055519186169184156108fc0291859190818181858888f19350505050158015611ca3573d6000803e3d6000fd5b50604080518381526001600160a01b0385811660208301523392908716917f7872034fbcc87890e73d66eac55389e0ffdba157b89a73bd2011157ebac1d66e910160405180910390a35050505050565b600054610100900460ff1680611d0c575060005460ff16155b611d285760405162461bcd60e51b81526004016106ed90612512565b600054610100900460ff16158015611d4a576000805461ffff19166101011790555b80156107ca576000805461ff001916905550565b6107008282611723565b60606000611d778360026124f3565b611d8290600261247f565b6001600160401b03811115611d9957611d996121ba565b6040519080825280601f01601f191660200182016040528015611dc3576020820181803683370190505b509050600360fc1b81600081518110611dde57611dde612497565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110611e0d57611e0d612497565b60200101906001600160f81b031916908160001a9053506000611e318460026124f3565b611e3c90600161247f565b90505b6001811115611eb4576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611e7057611e70612497565b1a60f81b828281518110611e8657611e86612497565b60200101906001600160f81b031916908160001a90535060049490941c93611ead816127f3565b9050611e3f565b508315611f035760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016106ed565b9392505050565b803b611f6e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016106ed565b60008051602061284783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b611ffc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084016106ed565b600080846001600160a01b031684604051612017919061280a565b600060405180830381855af49150503d8060008114612052576040519150601f19603f3d011682016040523d82523d6000602084013e612057565b606091505b509150915061207f8282604051806060016040528060278152602001612887602791396120c8565b95945050505050565b61209181611f0a565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606083156120d7575081611f03565b8251156120e75782518084602001fd5b8160405162461bcd60e51b81526004016106ed919061277a565b60006020828403121561211357600080fd5b81356001600160e01b031981168114611f0357600080fd5b6001600160a01b0391909116815260200190565b60006020828403121561215157600080fd5b5035919050565b6001600160a01b03811681146107ca57600080fd5b6000806040838503121561218057600080fd5b82359150602083013561219281612158565b809150509250929050565b6000602082840312156121af57600080fd5b8135611f0381612158565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b03811182821017156121f8576121f86121ba565b604052919050565b6000806040838503121561221357600080fd5b823561221e81612158565b91506020838101356001600160401b038082111561223b57600080fd5b818601915086601f83011261224f57600080fd5b813581811115612261576122616121ba565b612273601f8201601f191685016121d0565b9150808252878482850101111561228957600080fd5b80848401858401376000848284010152508093505050509250929050565b600080600080608085870312156122bd57600080fd5b84356122c881612158565b935060208501356001600160401b03811681146122e457600080fd5b925060408501356122f481612158565b9150606085013561230481612158565b939692955090935050565b6000806000806060858703121561232557600080fd5b843561233081612158565b93506020850135925060408501356001600160401b038082111561235357600080fd5b818701915087601f83011261236757600080fd5b81358181111561237657600080fd5b88602082850101111561238857600080fd5b95989497505060200194505050565b6020808252602c9082015260008051602061282783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061282783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60006020828403121561241d57600080fd5b8151611f0381612158565b634e487b7160e01b600052601260045260246000fd5b60008261244d5761244d612428565b500690565b634e487b7160e01b600052601160045260246000fd5b60008282101561247a5761247a612452565b500390565b6000821982111561249257612492612452565b500190565b634e487b7160e01b600052603260045260246000fd5b60006000198214156124c1576124c1612452565b5060010190565b60006001600160801b038281168482168083038211156124ea576124ea612452565b01949350505050565b600081600019048311821515161561250d5761250d612452565b500290565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b60006001600160401b038281168482168115158284048211161561258657612586612452565b02949350505050565b6000602082840312156125a157600080fd5b81518015158114611f0357600080fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156126015784516001600160a01b0316835293830193918301916001016125dc565b50506001600160a01b03969096166060850152505050608001529392505050565b6000602080838503121561263557600080fd5b82516001600160401b038082111561264c57600080fd5b818501915085601f83011261266057600080fd5b815181811115612672576126726121ba565b8060051b91506126838483016121d0565b818152918301840191848101908884111561269d57600080fd5b938501935b838510156126bb578451825293850193908501906126a2565b98975050505050505050565b6000826126d6576126d6612428565b500490565b60005b838110156126f65781810151838201526020016126de565b83811115612705576000848401525b50505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835161273d8160178501602088016126db565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161276e8160288401602088016126db565b01602801949350505050565b60208152600082518060208401526127998160408501602087016126db565b601f01601f19169190910160400192915050565b600063ffffffff8083168185168083038211156124ea576124ea612452565b60006001600160401b03828116808214156127e9576127e9612452565b6001019392505050565b60008161280257612802612452565b506000190190565b6000825161281c8184602087016126db565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc802cf867c2da464d4ff0ebc4dfcccdfbd65d75a8bc1c273fb02e80bf3446b516416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212201ffdd7873ada9f1c281cbb73b9268f48828be87faad453179ca82e4a48e71aa164736f6c63430008080033",
682
- "linkReferences": {},
683
- "deployedLinkReferences": {}
684
- }