@gooddollar/goodprotocol 1.0.19-beta.1 → 1.0.19-beta.4

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 (139) hide show
  1. package/artifacts/abis/GReputation.min.json +1 -1
  2. package/artifacts/abis/UpgradableMock3.min.json +1 -0
  3. package/artifacts/abis/UpgradableMock4.min.json +1 -0
  4. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  7. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  8. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  9. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  10. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  31. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  32. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  33. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  34. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  35. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +15 -2
  36. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  37. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  38. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  39. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  40. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  41. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  42. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  43. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  44. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  45. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  46. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  47. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  48. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  49. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  50. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  51. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  52. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  53. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  54. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  55. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  56. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  57. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  58. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  60. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +4 -0
  61. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +172 -0
  62. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +4 -0
  63. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +172 -0
  64. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  65. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  66. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  67. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  68. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  69. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  70. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  71. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  72. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  73. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  74. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  75. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  76. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  77. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  78. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  79. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  80. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  81. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  82. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  83. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  84. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  85. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  86. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  87. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  88. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  89. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  90. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  91. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  92. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  93. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  94. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  95. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  96. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  97. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
  98. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  99. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  100. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
  101. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  102. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  103. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  104. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  105. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  106. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  107. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  108. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  109. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  110. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  111. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  112. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  113. package/contracts/governance/GReputation.sol +8 -0
  114. package/contracts/governance/Reputation.sol +5 -3
  115. package/contracts/mocks/UpgradableMocks.sol +18 -0
  116. package/hardhat.config.ts +54 -1
  117. package/package.json +6 -4
  118. package/releases/deployment.json +11 -0
  119. package/scripts/multichain-deploy/basicdao-deploy.ts +256 -0
  120. package/scripts/multichain-deploy/helpers.ts +96 -0
  121. package/test/governance/CompoundVotingMachine.daoscheme.ts +14 -1
  122. package/test/governance/CompoundVotingMachine.guardian.test.ts +9 -0
  123. package/test/governance/GReputation.test.ts +32 -0
  124. package/test/governance/StakersDistribution.test.ts +62 -1
  125. package/test/helpers.ts +15 -0
  126. package/test/reserve/GoodMarketMaker.test.ts +11 -0
  127. package/test/reserve/GoodReserveCDai.gdx.test.ts +23 -8
  128. package/test/reserve/GoodReserveCDai.test.ts +37 -2
  129. package/test/staking/CompoundStakingFactory.test.ts +31 -0
  130. package/test/staking/DonationsStaking.test.ts +99 -2
  131. package/test/staking/GoodAaveStakingFactory.test.ts +36 -1
  132. package/test/staking/SimpleDAIStaking.test.ts +52 -2
  133. package/test/staking/StakingRewards.test.ts +38 -0
  134. package/test/staking/UsdcAaveStaking.test.ts +45 -19
  135. package/test/ubi/UBIScheme.test.ts +68 -0
  136. package/test/utils/DAOUpgradeableContract.test.ts +47 -0
  137. package/test/utils/NameService.test.ts +50 -55
  138. package/test/utils/ProxyFactory.test.ts +17 -0
  139. package/yarn.lock +383 -16
@@ -1 +1 @@
1
- {"_format":"hh-sol-artifact-1","contractName":"GReputation","sourceName":"contracts/governance/GReputation.sol","abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBalance","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"blockchain","type":"string"},{"indexed":false,"internalType":"bytes32","name":"merkleRoot","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"totalSupply","type":"uint256"}],"name":"StateHash","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"blockchain","type":"string"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"repBalance","type":"uint256"}],"name":"StateHashProof","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DELEGATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ROOT_STATE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"activeBlockchains","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"activeVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"avatar","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOfLocal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"balanceOfLocalAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"blockchainStates","outputs":[{"internalType":"bytes32","name":"stateHash","type":"bytes32"},{"internalType":"uint256","name":"hashType","type":"uint256"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_proof","type":"bytes32[]"},{"internalType":"bytes32","name":"_root","type":"bytes32"},{"internalType":"bytes32","name":"_hash","type":"bytes32"},{"internalType":"uint256","name":"_index","type":"uint256"}],"name":"checkProofOrdered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"dao","outputs":[{"internalType":"contract Controller","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_delegate","type":"address"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"uint256","name":"_expiry","type":"uint256"},{"internalType":"uint8","name":"_v","type":"uint8"},{"internalType":"bytes32","name":"_r","type":"bytes32"},{"internalType":"bytes32","name":"_s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"delegateOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_delegate","type":"address"}],"name":"delegateTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getCurrentVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getPriorVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"getVotesAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"bool","name":"_global","type":"bool"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"getVotesAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"getVotesAtBlockchain","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"},{"internalType":"string","name":"_stateId","type":"string"},{"internalType":"bytes32","name":"_stateHash","type":"bytes32"},{"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nameService","outputs":[{"internalType":"contract INameService","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nativeToken","outputs":[{"internalType":"contract IGoodDollar","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_id","type":"string"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_balance","type":"uint256"},{"internalType":"bytes32[]","name":"_proof","type":"bytes32[]"},{"internalType":"uint256","name":"_nodeIndex","type":"uint256"}],"name":"proveBalanceOfAtBlockchain","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"reputationRecipients","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_id","type":"string"},{"internalType":"bytes32","name":"_hash","type":"bytes32"},{"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"name":"setBlockchainStateHash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_target","type":"address"}],"name":"setReputationRecipient","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"stateHashBalances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyAtBlockchain","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"totalSupplyHistory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupplyLocal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyLocal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyLocalAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"undelegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"updateAvatar","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}],"linkReferences":{},"deployedLinkReferences":{}}
1
+ {"_format":"hh-sol-artifact-1","contractName":"GReputation","sourceName":"contracts/governance/GReputation.sol","abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBalance","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"blockchain","type":"string"},{"indexed":false,"internalType":"bytes32","name":"merkleRoot","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"totalSupply","type":"uint256"}],"name":"StateHash","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"blockchain","type":"string"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"repBalance","type":"uint256"}],"name":"StateHashProof","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DELEGATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ROOT_STATE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"activeBlockchains","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"activeVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"avatar","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOfLocal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"balanceOfLocalAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"balances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"blockchainStates","outputs":[{"internalType":"bytes32","name":"stateHash","type":"bytes32"},{"internalType":"uint256","name":"hashType","type":"uint256"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_proof","type":"bytes32[]"},{"internalType":"bytes32","name":"_root","type":"bytes32"},{"internalType":"bytes32","name":"_hash","type":"bytes32"},{"internalType":"uint256","name":"_index","type":"uint256"}],"name":"checkProofOrdered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"dao","outputs":[{"internalType":"contract Controller","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_delegate","type":"address"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"uint256","name":"_expiry","type":"uint256"},{"internalType":"uint8","name":"_v","type":"uint8"},{"internalType":"bytes32","name":"_r","type":"bytes32"},{"internalType":"bytes32","name":"_s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"delegateOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_delegate","type":"address"}],"name":"delegateTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getCurrentVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getPriorVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"getVotesAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"bool","name":"_global","type":"bool"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"getVotesAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"getVotesAtBlockchain","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"},{"internalType":"string","name":"_stateId","type":"string"},{"internalType":"bytes32","name":"_stateHash","type":"bytes32"},{"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nameService","outputs":[{"internalType":"contract INameService","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nativeToken","outputs":[{"internalType":"contract IGoodDollar","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"_id","type":"string"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_balance","type":"uint256"},{"internalType":"bytes32[]","name":"_proof","type":"bytes32[]"},{"internalType":"uint256","name":"_nodeIndex","type":"uint256"}],"name":"proveBalanceOfAtBlockchain","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"reputationRecipients","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_id","type":"string"},{"internalType":"bytes32","name":"_hash","type":"bytes32"},{"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"name":"setBlockchainStateHash","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_target","type":"address"}],"name":"setReputationRecipient","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"},{"internalType":"address","name":"","type":"address"}],"name":"stateHashBalances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"},{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyAtBlockchain","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"totalSupplyHistory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupplyLocal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyLocal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_blockNumber","type":"uint256"}],"name":"totalSupplyLocalAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"undelegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"updateAvatar","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"}],"name":"updateDAO","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}],"linkReferences":{},"deployedLinkReferences":{}}
@@ -0,0 +1 @@
1
+ {"_format":"hh-sol-artifact-1","contractName":"UpgradableMock3","sourceName":"contracts/mocks/UpgradableMocks.sol","abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"inputs":[],"name":"avatar","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dao","outputs":[{"internalType":"contract Controller","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"nameService","outputs":[{"internalType":"contract INameService","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nativeToken","outputs":[{"internalType":"contract IGoodDollar","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"updateAvatar","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}],"linkReferences":{},"deployedLinkReferences":{}}
@@ -0,0 +1 @@
1
+ {"_format":"hh-sol-artifact-1","contractName":"UpgradableMock4","sourceName":"contracts/mocks/UpgradableMocks.sol","abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"beacon","type":"address"}],"name":"BeaconUpgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"inputs":[],"name":"avatar","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dao","outputs":[{"internalType":"contract Controller","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"contract INameService","name":"_ns","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"nameService","outputs":[{"internalType":"contract INameService","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nativeToken","outputs":[{"internalType":"contract IGoodDollar","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"updateAvatar","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"}],"linkReferences":{},"deployedLinkReferences":{}}
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -342,8 +342,8 @@
342
342
  "type": "function"
343
343
  }
344
344
  ],
345
- "bytecode": "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c6115d361004b600039600081816104db01528181610524015281816105ad01526105ed01526115d36000f3fe6080604052600436106100ce5760003560e01c806305a6aafa146100d35780630a6f93e6146100f55780631b3c90a8146101355780631d0205b81461014a5780633659cfe6146101965780633c8c043a146101b65780633e6326fc146101cc5780634162169f146101f95780634f1ef286146102195780635aef7de61461022c578063862a4d471461024c578063b5f3067f14610262578063c047f1c31461028f578063c382c475146102d3578063c4d66de8146102f3578063e1758bd814610313578063e9157dd214610328575b600080fd5b3480156100df57600080fd5b506100f36100ee366004611231565b610348565b005b34801561010157600080fd5b5061012261011036600461125f565b609e6020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561014157600080fd5b506100f361038b565b34801561015657600080fd5b50610181610165366004611231565b609c602052600090815260409020600181015460029091015482565b6040805192835260208301919091520161012c565b3480156101a257600080fd5b506100f36101b136600461125f565b6104d0565b3480156101c257600080fd5b50610122609a5481565b3480156101d857600080fd5b506067546101ec906001600160a01b031681565b60405161012c919061127c565b34801561020557600080fd5b506065546101ec906001600160a01b031681565b6100f36102273660046112a6565b6105a2565b34801561023857600080fd5b506066546101ec906001600160a01b031681565b34801561025857600080fd5b50610122609b5481565b34801561026e57600080fd5b5061012261027d36600461125f565b609d6020526000908152604090205481565b34801561029b57600080fd5b506101226102aa36600461125f565b609b546000908152609c602090815260408083206001600160a01b039094168352929052205490565b3480156102df57600080fd5b506100f36102ee36600461125f565b61065c565b3480156102ff57600080fd5b506100f361030e36600461125f565b610883565b34801561031f57600080fd5b506101ec610955565b34801561033457600080fd5b506100f361034336600461125f565b6109f1565b610350610da1565b609a8190556040518181527f237ab53d478ae984b5181944dc85b134c034a24236aac1632aa10236cedd8a999060200160405180910390a150565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156103e957600080fd5b505afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611369565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561047657600080fd5b505afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190611369565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105225760405162461bcd60e51b815260040161051990611386565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610554610e75565b6001600160a01b03161461057a5760405162461bcd60e51b8152600401610519906113c0565b61058381610e91565b6040805160008082526020820190925261059f91839190610e99565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105eb5760405162461bcd60e51b815260040161051990611386565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661061d610e75565b6001600160a01b0316146106435760405162461bcd60e51b8152600401610519906113c0565b61064c82610e91565b61065882826001610e99565b5050565b60006001609b5461066d9190611410565b6000818152609c6020908152604080832060028101546001600160a01b038816855290835281842054609d9093529220549293509091831180156106b15750600081115b80156106bd5750600082115b1561087d576001600160a01b0384166000908152609d60209081526040808320869055858352609c9091528120600101546106f88385611427565b6107029190611446565b9050801561087b5760675460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a19190611369565b6040516340c10f1960e01b81526001600160a01b03888116600483015260248201859052919250908216906340c10f1990604401602060405180830381600087803b1580156107ef57600080fd5b505af1158015610803573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108279190611468565b50604080516001600160a01b038816815260208101879052908101849052606081018390527f6d539aca58a0ce9de5ef660cea9845c2b109a1665b74200cceda7e8f097d0ace9060800160405180910390a1505b505b50505050565b600054610100900460ff168061089c575060005460ff16155b6108ff5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610519565b600054610100900460ff16158015610921576000805461ffff19166101011790555b66d3c21bcecceda1601a1b609a55610937610fd9565b61094082611010565b8015610658576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b1580156109b457600080fd5b505afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec9190611369565b905090565b60675460405163bf40fac160e01b8152602060048201526009602482015268554249534348454d4560b81b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015610a4f57600080fd5b505afa158015610a63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a879190611369565b6040516339d9740760e11b81529091506001600160a01b038216906373b2e80e90610ab690859060040161127c565b60206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b069190611468565b610b635760405162461bcd60e51b815260206004820152602860248201527f436c61696d657273446973747269627574696f6e3a206469646e277420636c61604482015267696d20746f64617960c01b6064820152608401610519565b609e6000836001600160a01b03166001600160a01b0316815260200190815260200160002054816001600160a01b031663eda4e6d66040518163ffffffff1660e01b815260040160206040518083038186803b158015610bc257600080fd5b505afa158015610bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bfa919061148a565b826001600160a01b0316635c9302c96040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3357600080fd5b505afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b919061148a565b610c789062015180611427565b610c8291906114a3565b11610cdd5760405162461bcd60e51b815260206004820152602560248201527f436c61696d657273446973747269627574696f6e3a20616c726561647920757060448201526419185d195960da1b6064820152608401610519565b610ce5610fd9565b6001600160a01b0382166000818152609e60209081526040808320429055609b548352609c8252808320938352929052908120805460019290610d299084906114a3565b9091555050609b546000908152609c602052604081206001908101805491929091610d559084906114a3565b9091555050609b54600090610d6c90600190611410565b6001600160a01b0384166000908152609d60205260409020549091508111610d9357505050565b610d9c8361065c565b505050565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015610de557600080fd5b505afa158015610df9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1d9190611369565b6001600160a01b031614610e735760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610519565b565b600080516020611557833981519152546001600160a01b031690565b61059f610da1565b6000610ea3610e75565b9050610eae84611033565b600083511180610ebb5750815b15610ecc57610eca84846110c6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661087b57805460ff19166001178155604051610f47908690610f1890859060240161127c565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526110c6565b50805460ff19168155610f58610e75565b6001600160a01b0316826001600160a01b031614610fd05760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610519565b61087b856111b1565b6000610fe862278d0042611446565b9050609b54811461059f57609b819055609a546000828152609c602052604090206002015550565b606780546001600160a01b0319166001600160a01b03831617905561059f61038b565b803b6110975760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610519565b60008051602061155783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6111255760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610519565b600080846001600160a01b03168460405161114091906114e7565b600060405180830381855af49150503d806000811461117b576040519150601f19603f3d011682016040523d82523d6000602084013e611180565b606091505b50915091506111a88282604051806060016040528060278152602001611577602791396111f1565b95945050505050565b6111ba81611033565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060831561120057508161122a565b8251156112105782518084602001fd5b8160405162461bcd60e51b81526004016105199190611503565b9392505050565b60006020828403121561124357600080fd5b5035919050565b6001600160a01b038116811461059f57600080fd5b60006020828403121561127157600080fd5b813561122a8161124a565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156112b957600080fd5b82356112c48161124a565b915060208301356001600160401b03808211156112e057600080fd5b818501915085601f8301126112f457600080fd5b81358181111561130657611306611290565b604051601f8201601f19908116603f0116810190838211818310171561132e5761132e611290565b8160405282815288602084870101111561134757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561137b57600080fd5b815161122a8161124a565b6020808252602c9082015260008051602061153783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061153783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082821015611422576114226113fa565b500390565b6000816000190483118215151615611441576114416113fa565b500290565b60008261146357634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561147a57600080fd5b8151801515811461122a57600080fd5b60006020828403121561149c57600080fd5b5051919050565b600082198211156114b6576114b66113fa565b500190565b60005b838110156114d65781810151838201526020016114be565b8381111561087d5750506000910152565b600082516114f98184602087016114bb565b9190910192915050565b60208152600082518060208401526115228160408501602087016114bb565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122018572f251dee0c7a766f93032bbdd78467e756bd860371b62a13ba09e0888c2964736f6c63430008080033",
346
- "deployedBytecode": "0x6080604052600436106100ce5760003560e01c806305a6aafa146100d35780630a6f93e6146100f55780631b3c90a8146101355780631d0205b81461014a5780633659cfe6146101965780633c8c043a146101b65780633e6326fc146101cc5780634162169f146101f95780634f1ef286146102195780635aef7de61461022c578063862a4d471461024c578063b5f3067f14610262578063c047f1c31461028f578063c382c475146102d3578063c4d66de8146102f3578063e1758bd814610313578063e9157dd214610328575b600080fd5b3480156100df57600080fd5b506100f36100ee366004611231565b610348565b005b34801561010157600080fd5b5061012261011036600461125f565b609e6020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561014157600080fd5b506100f361038b565b34801561015657600080fd5b50610181610165366004611231565b609c602052600090815260409020600181015460029091015482565b6040805192835260208301919091520161012c565b3480156101a257600080fd5b506100f36101b136600461125f565b6104d0565b3480156101c257600080fd5b50610122609a5481565b3480156101d857600080fd5b506067546101ec906001600160a01b031681565b60405161012c919061127c565b34801561020557600080fd5b506065546101ec906001600160a01b031681565b6100f36102273660046112a6565b6105a2565b34801561023857600080fd5b506066546101ec906001600160a01b031681565b34801561025857600080fd5b50610122609b5481565b34801561026e57600080fd5b5061012261027d36600461125f565b609d6020526000908152604090205481565b34801561029b57600080fd5b506101226102aa36600461125f565b609b546000908152609c602090815260408083206001600160a01b039094168352929052205490565b3480156102df57600080fd5b506100f36102ee36600461125f565b61065c565b3480156102ff57600080fd5b506100f361030e36600461125f565b610883565b34801561031f57600080fd5b506101ec610955565b34801561033457600080fd5b506100f361034336600461125f565b6109f1565b610350610da1565b609a8190556040518181527f237ab53d478ae984b5181944dc85b134c034a24236aac1632aa10236cedd8a999060200160405180910390a150565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156103e957600080fd5b505afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611369565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561047657600080fd5b505afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190611369565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105225760405162461bcd60e51b815260040161051990611386565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610554610e75565b6001600160a01b03161461057a5760405162461bcd60e51b8152600401610519906113c0565b61058381610e91565b6040805160008082526020820190925261059f91839190610e99565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105eb5760405162461bcd60e51b815260040161051990611386565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661061d610e75565b6001600160a01b0316146106435760405162461bcd60e51b8152600401610519906113c0565b61064c82610e91565b61065882826001610e99565b5050565b60006001609b5461066d9190611410565b6000818152609c6020908152604080832060028101546001600160a01b038816855290835281842054609d9093529220549293509091831180156106b15750600081115b80156106bd5750600082115b1561087d576001600160a01b0384166000908152609d60209081526040808320869055858352609c9091528120600101546106f88385611427565b6107029190611446565b9050801561087b5760675460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a19190611369565b6040516340c10f1960e01b81526001600160a01b03888116600483015260248201859052919250908216906340c10f1990604401602060405180830381600087803b1580156107ef57600080fd5b505af1158015610803573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108279190611468565b50604080516001600160a01b038816815260208101879052908101849052606081018390527f6d539aca58a0ce9de5ef660cea9845c2b109a1665b74200cceda7e8f097d0ace9060800160405180910390a1505b505b50505050565b600054610100900460ff168061089c575060005460ff16155b6108ff5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610519565b600054610100900460ff16158015610921576000805461ffff19166101011790555b66d3c21bcecceda1601a1b609a55610937610fd9565b61094082611010565b8015610658576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b1580156109b457600080fd5b505afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec9190611369565b905090565b60675460405163bf40fac160e01b8152602060048201526009602482015268554249534348454d4560b81b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015610a4f57600080fd5b505afa158015610a63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a879190611369565b6040516339d9740760e11b81529091506001600160a01b038216906373b2e80e90610ab690859060040161127c565b60206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b069190611468565b610b635760405162461bcd60e51b815260206004820152602860248201527f436c61696d657273446973747269627574696f6e3a206469646e277420636c61604482015267696d20746f64617960c01b6064820152608401610519565b609e6000836001600160a01b03166001600160a01b0316815260200190815260200160002054816001600160a01b031663eda4e6d66040518163ffffffff1660e01b815260040160206040518083038186803b158015610bc257600080fd5b505afa158015610bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bfa919061148a565b826001600160a01b0316635c9302c96040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3357600080fd5b505afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b919061148a565b610c789062015180611427565b610c8291906114a3565b11610cdd5760405162461bcd60e51b815260206004820152602560248201527f436c61696d657273446973747269627574696f6e3a20616c726561647920757060448201526419185d195960da1b6064820152608401610519565b610ce5610fd9565b6001600160a01b0382166000818152609e60209081526040808320429055609b548352609c8252808320938352929052908120805460019290610d299084906114a3565b9091555050609b546000908152609c602052604081206001908101805491929091610d559084906114a3565b9091555050609b54600090610d6c90600190611410565b6001600160a01b0384166000908152609d60205260409020549091508111610d9357505050565b610d9c8361065c565b505050565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015610de557600080fd5b505afa158015610df9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1d9190611369565b6001600160a01b031614610e735760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610519565b565b600080516020611557833981519152546001600160a01b031690565b61059f610da1565b6000610ea3610e75565b9050610eae84611033565b600083511180610ebb5750815b15610ecc57610eca84846110c6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661087b57805460ff19166001178155604051610f47908690610f1890859060240161127c565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526110c6565b50805460ff19168155610f58610e75565b6001600160a01b0316826001600160a01b031614610fd05760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610519565b61087b856111b1565b6000610fe862278d0042611446565b9050609b54811461059f57609b819055609a546000828152609c602052604090206002015550565b606780546001600160a01b0319166001600160a01b03831617905561059f61038b565b803b6110975760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610519565b60008051602061155783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6111255760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610519565b600080846001600160a01b03168460405161114091906114e7565b600060405180830381855af49150503d806000811461117b576040519150601f19603f3d011682016040523d82523d6000602084013e611180565b606091505b50915091506111a88282604051806060016040528060278152602001611577602791396111f1565b95945050505050565b6111ba81611033565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060831561120057508161122a565b8251156112105782518084602001fd5b8160405162461bcd60e51b81526004016105199190611503565b9392505050565b60006020828403121561124357600080fd5b5035919050565b6001600160a01b038116811461059f57600080fd5b60006020828403121561127157600080fd5b813561122a8161124a565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156112b957600080fd5b82356112c48161124a565b915060208301356001600160401b03808211156112e057600080fd5b818501915085601f8301126112f457600080fd5b81358181111561130657611306611290565b604051601f8201601f19908116603f0116810190838211818310171561132e5761132e611290565b8160405282815288602084870101111561134757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561137b57600080fd5b815161122a8161124a565b6020808252602c9082015260008051602061153783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061153783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082821015611422576114226113fa565b500390565b6000816000190483118215151615611441576114416113fa565b500290565b60008261146357634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561147a57600080fd5b8151801515811461122a57600080fd5b60006020828403121561149c57600080fd5b5051919050565b600082198211156114b6576114b66113fa565b500190565b60005b838110156114d65781810151838201526020016114be565b8381111561087d5750506000910152565b600082516114f98184602087016114bb565b9190910192915050565b60208152600082518060208401526115228160408501602087016114bb565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122018572f251dee0c7a766f93032bbdd78467e756bd860371b62a13ba09e0888c2964736f6c63430008080033",
345
+ "bytecode": "0x60a06040523060601b60805234801561001757600080fd5b5060805160601c6115d361004b600039600081816104db01528181610524015281816105ad01526105ed01526115d36000f3fe6080604052600436106100ce5760003560e01c806305a6aafa146100d35780630a6f93e6146100f55780631b3c90a8146101355780631d0205b81461014a5780633659cfe6146101965780633c8c043a146101b65780633e6326fc146101cc5780634162169f146101f95780634f1ef286146102195780635aef7de61461022c578063862a4d471461024c578063b5f3067f14610262578063c047f1c31461028f578063c382c475146102d3578063c4d66de8146102f3578063e1758bd814610313578063e9157dd214610328575b600080fd5b3480156100df57600080fd5b506100f36100ee366004611231565b610348565b005b34801561010157600080fd5b5061012261011036600461125f565b609e6020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561014157600080fd5b506100f361038b565b34801561015657600080fd5b50610181610165366004611231565b609c602052600090815260409020600181015460029091015482565b6040805192835260208301919091520161012c565b3480156101a257600080fd5b506100f36101b136600461125f565b6104d0565b3480156101c257600080fd5b50610122609a5481565b3480156101d857600080fd5b506067546101ec906001600160a01b031681565b60405161012c919061127c565b34801561020557600080fd5b506065546101ec906001600160a01b031681565b6100f36102273660046112a6565b6105a2565b34801561023857600080fd5b506066546101ec906001600160a01b031681565b34801561025857600080fd5b50610122609b5481565b34801561026e57600080fd5b5061012261027d36600461125f565b609d6020526000908152604090205481565b34801561029b57600080fd5b506101226102aa36600461125f565b609b546000908152609c602090815260408083206001600160a01b039094168352929052205490565b3480156102df57600080fd5b506100f36102ee36600461125f565b61065c565b3480156102ff57600080fd5b506100f361030e36600461125f565b610883565b34801561031f57600080fd5b506101ec610955565b34801561033457600080fd5b506100f361034336600461125f565b6109f1565b610350610da1565b609a8190556040518181527f237ab53d478ae984b5181944dc85b134c034a24236aac1632aa10236cedd8a999060200160405180910390a150565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156103e957600080fd5b505afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611369565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561047657600080fd5b505afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190611369565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105225760405162461bcd60e51b815260040161051990611386565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610554610e75565b6001600160a01b03161461057a5760405162461bcd60e51b8152600401610519906113c0565b61058381610e91565b6040805160008082526020820190925261059f91839190610e99565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105eb5760405162461bcd60e51b815260040161051990611386565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661061d610e75565b6001600160a01b0316146106435760405162461bcd60e51b8152600401610519906113c0565b61064c82610e91565b61065882826001610e99565b5050565b60006001609b5461066d9190611410565b6000818152609c6020908152604080832060028101546001600160a01b038816855290835281842054609d9093529220549293509091831180156106b15750600081115b80156106bd5750600082115b1561087d576001600160a01b0384166000908152609d60209081526040808320869055858352609c9091528120600101546106f88385611427565b6107029190611446565b9050801561087b5760675460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a19190611369565b6040516340c10f1960e01b81526001600160a01b03888116600483015260248201859052919250908216906340c10f1990604401602060405180830381600087803b1580156107ef57600080fd5b505af1158015610803573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108279190611468565b50604080516001600160a01b038816815260208101879052908101849052606081018390527f6d539aca58a0ce9de5ef660cea9845c2b109a1665b74200cceda7e8f097d0ace9060800160405180910390a1505b505b50505050565b600054610100900460ff168061089c575060005460ff16155b6108ff5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610519565b600054610100900460ff16158015610921576000805461ffff19166101011790555b66d3c21bcecceda1601a1b609a55610937610fd9565b61094082611010565b8015610658576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b1580156109b457600080fd5b505afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec9190611369565b905090565b60675460405163bf40fac160e01b8152602060048201526009602482015268554249534348454d4560b81b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015610a4f57600080fd5b505afa158015610a63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a879190611369565b6040516339d9740760e11b81529091506001600160a01b038216906373b2e80e90610ab690859060040161127c565b60206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b069190611468565b610b635760405162461bcd60e51b815260206004820152602860248201527f436c61696d657273446973747269627574696f6e3a206469646e277420636c61604482015267696d20746f64617960c01b6064820152608401610519565b609e6000836001600160a01b03166001600160a01b0316815260200190815260200160002054816001600160a01b031663eda4e6d66040518163ffffffff1660e01b815260040160206040518083038186803b158015610bc257600080fd5b505afa158015610bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bfa919061148a565b826001600160a01b0316635c9302c96040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3357600080fd5b505afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b919061148a565b610c789062015180611427565b610c8291906114a3565b11610cdd5760405162461bcd60e51b815260206004820152602560248201527f436c61696d657273446973747269627574696f6e3a20616c726561647920757060448201526419185d195960da1b6064820152608401610519565b610ce5610fd9565b6001600160a01b0382166000818152609e60209081526040808320429055609b548352609c8252808320938352929052908120805460019290610d299084906114a3565b9091555050609b546000908152609c602052604081206001908101805491929091610d559084906114a3565b9091555050609b54600090610d6c90600190611410565b6001600160a01b0384166000908152609d60205260409020549091508111610d9357505050565b610d9c8361065c565b505050565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015610de557600080fd5b505afa158015610df9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1d9190611369565b6001600160a01b031614610e735760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610519565b565b600080516020611557833981519152546001600160a01b031690565b61059f610da1565b6000610ea3610e75565b9050610eae84611033565b600083511180610ebb5750815b15610ecc57610eca84846110c6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661087b57805460ff19166001178155604051610f47908690610f1890859060240161127c565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526110c6565b50805460ff19168155610f58610e75565b6001600160a01b0316826001600160a01b031614610fd05760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610519565b61087b856111b1565b6000610fe862278d0042611446565b9050609b54811461059f57609b819055609a546000828152609c602052604090206002015550565b606780546001600160a01b0319166001600160a01b03831617905561059f61038b565b803b6110975760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610519565b60008051602061155783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6111255760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610519565b600080846001600160a01b03168460405161114091906114e7565b600060405180830381855af49150503d806000811461117b576040519150601f19603f3d011682016040523d82523d6000602084013e611180565b606091505b50915091506111a88282604051806060016040528060278152602001611577602791396111f1565b95945050505050565b6111ba81611033565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060831561120057508161122a565b8251156112105782518084602001fd5b8160405162461bcd60e51b81526004016105199190611503565b9392505050565b60006020828403121561124357600080fd5b5035919050565b6001600160a01b038116811461059f57600080fd5b60006020828403121561127157600080fd5b813561122a8161124a565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156112b957600080fd5b82356112c48161124a565b915060208301356001600160401b03808211156112e057600080fd5b818501915085601f8301126112f457600080fd5b81358181111561130657611306611290565b604051601f8201601f19908116603f0116810190838211818310171561132e5761132e611290565b8160405282815288602084870101111561134757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561137b57600080fd5b815161122a8161124a565b6020808252602c9082015260008051602061153783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061153783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082821015611422576114226113fa565b500390565b6000816000190483118215151615611441576114416113fa565b500290565b60008261146357634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561147a57600080fd5b8151801515811461122a57600080fd5b60006020828403121561149c57600080fd5b5051919050565b600082198211156114b6576114b66113fa565b500190565b60005b838110156114d65781810151838201526020016114be565b8381111561087d5750506000910152565b600082516114f98184602087016114bb565b9190910192915050565b60208152600082518060208401526115228160408501602087016114bb565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220f3d592ed32df92c6ab88a06c5961303693b40ca446c62c391756e689fde9654764736f6c63430008080033",
346
+ "deployedBytecode": "0x6080604052600436106100ce5760003560e01c806305a6aafa146100d35780630a6f93e6146100f55780631b3c90a8146101355780631d0205b81461014a5780633659cfe6146101965780633c8c043a146101b65780633e6326fc146101cc5780634162169f146101f95780634f1ef286146102195780635aef7de61461022c578063862a4d471461024c578063b5f3067f14610262578063c047f1c31461028f578063c382c475146102d3578063c4d66de8146102f3578063e1758bd814610313578063e9157dd214610328575b600080fd5b3480156100df57600080fd5b506100f36100ee366004611231565b610348565b005b34801561010157600080fd5b5061012261011036600461125f565b609e6020526000908152604090205481565b6040519081526020015b60405180910390f35b34801561014157600080fd5b506100f361038b565b34801561015657600080fd5b50610181610165366004611231565b609c602052600090815260409020600181015460029091015482565b6040805192835260208301919091520161012c565b3480156101a257600080fd5b506100f36101b136600461125f565b6104d0565b3480156101c257600080fd5b50610122609a5481565b3480156101d857600080fd5b506067546101ec906001600160a01b031681565b60405161012c919061127c565b34801561020557600080fd5b506065546101ec906001600160a01b031681565b6100f36102273660046112a6565b6105a2565b34801561023857600080fd5b506066546101ec906001600160a01b031681565b34801561025857600080fd5b50610122609b5481565b34801561026e57600080fd5b5061012261027d36600461125f565b609d6020526000908152604090205481565b34801561029b57600080fd5b506101226102aa36600461125f565b609b546000908152609c602090815260408083206001600160a01b039094168352929052205490565b3480156102df57600080fd5b506100f36102ee36600461125f565b61065c565b3480156102ff57600080fd5b506100f361030e36600461125f565b610883565b34801561031f57600080fd5b506101ec610955565b34801561033457600080fd5b506100f361034336600461125f565b6109f1565b610350610da1565b609a8190556040518181527f237ab53d478ae984b5181944dc85b134c034a24236aac1632aa10236cedd8a999060200160405180910390a150565b60675460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156103e957600080fd5b505afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611369565b606580546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561047657600080fd5b505afa15801561048a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ae9190611369565b606680546001600160a01b0319166001600160a01b0392909216919091179055565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105225760405162461bcd60e51b815260040161051990611386565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610554610e75565b6001600160a01b03161461057a5760405162461bcd60e51b8152600401610519906113c0565b61058381610e91565b6040805160008082526020820190925261059f91839190610e99565b50565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614156105eb5760405162461bcd60e51b815260040161051990611386565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661061d610e75565b6001600160a01b0316146106435760405162461bcd60e51b8152600401610519906113c0565b61064c82610e91565b61065882826001610e99565b5050565b60006001609b5461066d9190611410565b6000818152609c6020908152604080832060028101546001600160a01b038816855290835281842054609d9093529220549293509091831180156106b15750600081115b80156106bd5750600082115b1561087d576001600160a01b0384166000908152609d60209081526040808320869055858352609c9091528120600101546106f88385611427565b6107029190611446565b9050801561087b5760675460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561076957600080fd5b505afa15801561077d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a19190611369565b6040516340c10f1960e01b81526001600160a01b03888116600483015260248201859052919250908216906340c10f1990604401602060405180830381600087803b1580156107ef57600080fd5b505af1158015610803573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108279190611468565b50604080516001600160a01b038816815260208101879052908101849052606081018390527f6d539aca58a0ce9de5ef660cea9845c2b109a1665b74200cceda7e8f097d0ace9060800160405180910390a1505b505b50505050565b600054610100900460ff168061089c575060005460ff16155b6108ff5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610519565b600054610100900460ff16158015610921576000805461ffff19166101011790555b66d3c21bcecceda1601a1b609a55610937610fd9565b61094082611010565b8015610658576000805461ff00191690555050565b60675460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b1580156109b457600080fd5b505afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec9190611369565b905090565b60675460405163bf40fac160e01b8152602060048201526009602482015268554249534348454d4560b81b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015610a4f57600080fd5b505afa158015610a63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a879190611369565b6040516339d9740760e11b81529091506001600160a01b038216906373b2e80e90610ab690859060040161127c565b60206040518083038186803b158015610ace57600080fd5b505afa158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b069190611468565b610b635760405162461bcd60e51b815260206004820152602860248201527f436c61696d657273446973747269627574696f6e3a206469646e277420636c61604482015267696d20746f64617960c01b6064820152608401610519565b609e6000836001600160a01b03166001600160a01b0316815260200190815260200160002054816001600160a01b031663eda4e6d66040518163ffffffff1660e01b815260040160206040518083038186803b158015610bc257600080fd5b505afa158015610bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bfa919061148a565b826001600160a01b0316635c9302c96040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3357600080fd5b505afa158015610c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c6b919061148a565b610c789062015180611427565b610c8291906114a3565b11610cdd5760405162461bcd60e51b815260206004820152602560248201527f436c61696d657273446973747269627574696f6e3a20616c726561647920757060448201526419185d195960da1b6064820152608401610519565b610ce5610fd9565b6001600160a01b0382166000818152609e60209081526040808320429055609b548352609c8252808320938352929052908120805460019290610d299084906114a3565b9091555050609b546000908152609c602052604081206001908101805491929091610d559084906114a3565b9091555050609b54600090610d6c90600190611410565b6001600160a01b0384166000908152609d60205260409020549091508111610d9357505050565b610d9c8361065c565b505050565b60655460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015610de557600080fd5b505afa158015610df9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1d9190611369565b6001600160a01b031614610e735760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610519565b565b600080516020611557833981519152546001600160a01b031690565b61059f610da1565b6000610ea3610e75565b9050610eae84611033565b600083511180610ebb5750815b15610ecc57610eca84846110c6565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661087b57805460ff19166001178155604051610f47908690610f1890859060240161127c565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b1790526110c6565b50805460ff19168155610f58610e75565b6001600160a01b0316826001600160a01b031614610fd05760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610519565b61087b856111b1565b6000610fe862278d0042611446565b9050609b54811461059f57609b819055609a546000828152609c602052604090206002015550565b606780546001600160a01b0319166001600160a01b03831617905561059f61038b565b803b6110975760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610519565b60008051602061155783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6111255760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610519565b600080846001600160a01b03168460405161114091906114e7565b600060405180830381855af49150503d806000811461117b576040519150601f19603f3d011682016040523d82523d6000602084013e611180565b606091505b50915091506111a88282604051806060016040528060278152602001611577602791396111f1565b95945050505050565b6111ba81611033565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060831561120057508161122a565b8251156112105782518084602001fd5b8160405162461bcd60e51b81526004016105199190611503565b9392505050565b60006020828403121561124357600080fd5b5035919050565b6001600160a01b038116811461059f57600080fd5b60006020828403121561127157600080fd5b813561122a8161124a565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156112b957600080fd5b82356112c48161124a565b915060208301356001600160401b03808211156112e057600080fd5b818501915085601f8301126112f457600080fd5b81358181111561130657611306611290565b604051601f8201601f19908116603f0116810190838211818310171561132e5761132e611290565b8160405282815288602084870101111561134757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561137b57600080fd5b815161122a8161124a565b6020808252602c9082015260008051602061153783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061153783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b600082821015611422576114226113fa565b500390565b6000816000190483118215151615611441576114416113fa565b500290565b60008261146357634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561147a57600080fd5b8151801515811461122a57600080fd5b60006020828403121561149c57600080fd5b5051919050565b600082198211156114b6576114b66113fa565b500190565b60005b838110156114d65781810151838201526020016114be565b8381111561087d5750506000910152565b600082516114f98184602087016114bb565b9190910192915050565b60208152600082518060208401526115228160408501602087016114bb565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220f3d592ed32df92c6ab88a06c5961303693b40ca446c62c391756e689fde9654764736f6c63430008080033",
347
347
  "linkReferences": {},
348
348
  "deployedLinkReferences": {}
349
349
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/06edf668a7129b46ca8ef7fb6ce4d314.json"
3
+ "buildInfo": "../../../build-info/4e461a2f16a31f5f1913266e3929a03c.json"
4
4
  }