@gooddollar/goodprotocol 1.0.10 → 1.0.11

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 (127) hide show
  1. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  2. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  3. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  4. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  5. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  6. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  7. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  8. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  9. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  10. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  11. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  12. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  13. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  14. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  15. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  16. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  17. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  28. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  29. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  30. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  31. package/artifacts/contracts/governance/GovarnanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  32. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  33. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  34. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  35. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  36. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  37. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  38. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  39. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  40. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +6 -6
  41. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  42. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  43. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  44. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  45. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  46. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  47. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  48. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  49. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  50. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  51. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  52. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  53. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  54. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  55. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  56. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  57. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  58. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  59. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  60. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  61. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  62. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  63. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  64. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  65. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  66. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +48 -104
  67. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  68. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  69. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  70. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  71. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  72. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.json +48 -123
  73. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  74. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  75. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +65 -12
  76. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  77. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +4 -4
  78. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  79. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +52 -127
  80. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  81. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +57 -14
  82. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  83. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +6 -6
  84. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +4 -0
  85. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +1092 -0
  86. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  87. package/artifacts/contracts/unaudited-foundation/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  88. package/artifacts/contracts/unaudited-foundation/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  89. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  90. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  91. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  92. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  93. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  94. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  95. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  96. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  97. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  98. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  99. package/contracts/staking/BaseShareFieldV2.sol +45 -21
  100. package/contracts/staking/SimpleStaking.sol +0 -7
  101. package/contracts/staking/SimpleStakingV2.sol +10 -44
  102. package/contracts/staking/aave/AaveStakingFactory.sol +45 -19
  103. package/contracts/staking/aave/GoodAaveStaking.sol +1 -1
  104. package/contracts/staking/aave/GoodAaveStakingV2.sol +2 -2
  105. package/contracts/staking/compound/CompoundStakingFactory.sol +41 -18
  106. package/contracts/staking/compound/GoodCompoundStaking.sol +1 -1
  107. package/contracts/staking/compound/GoodCompoundStakingV2.sol +315 -0
  108. package/package.json +1 -1
  109. package/releases/deployment.json +55 -47
  110. package/scripts/upgradeToV2/upgradeToV2.ts +7 -3
  111. package/test/governance/StakersDistribution.test.ts +43 -14
  112. package/test/helpers.ts +1 -0
  113. package/test/staking/CompoundStakingFactory.test.ts +24 -21
  114. package/test/staking/DifferentStakingTokens.test.ts +3 -1
  115. package/test/staking/DonationsStaking.test.ts +3 -1
  116. package/test/staking/GoodAaveStakingFactory.test.ts +26 -23
  117. package/test/staking/SimpleDAIStaking.test.ts +3 -11
  118. package/test/staking/StakingRewards.test.ts +20 -14
  119. package/test/staking/SwapHelper.test.ts +4 -1
  120. package/test/staking/UsdcAaveStaking.test.ts +23 -8
  121. package/test/ubi/UBIScheme.e2e.test.ts +1 -1
  122. package/test/utils/ProtocolUpgrade.test.ts +1 -1
  123. package/artifacts/contracts/staking/aave/AaveStakingFactoryV2.sol/AaveStakingFactoryV2.dbg.json +0 -4
  124. package/artifacts/contracts/staking/aave/AaveStakingFactoryV2.sol/AaveStakingFactoryV2.json +0 -148
  125. package/contracts/staking/aave/AaveStakingFactoryV2.sol +0 -93
  126. package/test/staking/GoodAaveStakingFactoryV2.test.ts +0 -122
  127. package/test/staking/UsdcAaveStakingV2.test.ts +0 -291
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }
@@ -4,9 +4,20 @@
4
4
  "sourceName": "contracts/staking/BaseShareFieldV2.sol",
5
5
  "abi": [
6
6
  {
7
- "inputs": [],
8
- "name": "accAmountPerShare",
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "user",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "name": "getProductivity",
9
15
  "outputs": [
16
+ {
17
+ "internalType": "uint256",
18
+ "name": "",
19
+ "type": "uint256"
20
+ },
10
21
  {
11
22
  "internalType": "uint256",
12
23
  "name": "",
@@ -18,36 +29,47 @@
18
29
  },
19
30
  {
20
31
  "inputs": [],
21
- "name": "accumulatedRewards",
32
+ "name": "getStats",
22
33
  "outputs": [
34
+ {
35
+ "internalType": "uint256",
36
+ "name": "_accAmountPerShare",
37
+ "type": "uint256"
38
+ },
23
39
  {
24
40
  "internalType": "uint128",
25
- "name": "",
41
+ "name": "_mintedRewards",
26
42
  "type": "uint128"
27
- }
28
- ],
29
- "stateMutability": "view",
30
- "type": "function"
31
- },
32
- {
33
- "inputs": [
43
+ },
34
44
  {
35
- "internalType": "address",
36
- "name": "user",
37
- "type": "address"
38
- }
39
- ],
40
- "name": "getProductivity",
41
- "outputs": [
45
+ "internalType": "uint128",
46
+ "name": "_totalProductivity",
47
+ "type": "uint128"
48
+ },
42
49
  {
43
- "internalType": "uint256",
44
- "name": "",
45
- "type": "uint256"
50
+ "internalType": "uint128",
51
+ "name": "_totalEffectiveStakes",
52
+ "type": "uint128"
46
53
  },
47
54
  {
48
- "internalType": "uint256",
49
- "name": "",
50
- "type": "uint256"
55
+ "internalType": "uint128",
56
+ "name": "_accumulatedRewards",
57
+ "type": "uint128"
58
+ },
59
+ {
60
+ "internalType": "uint128",
61
+ "name": "_lastRewardBlock",
62
+ "type": "uint128"
63
+ },
64
+ {
65
+ "internalType": "uint64",
66
+ "name": "_maxMultiplierThreshold",
67
+ "type": "uint64"
68
+ },
69
+ {
70
+ "internalType": "uint8",
71
+ "name": "_tokenDecimalDifference",
72
+ "type": "uint8"
51
73
  }
52
74
  ],
53
75
  "stateMutability": "view",
@@ -87,45 +109,6 @@
87
109
  "stateMutability": "view",
88
110
  "type": "function"
89
111
  },
90
- {
91
- "inputs": [],
92
- "name": "lastRewardBlock",
93
- "outputs": [
94
- {
95
- "internalType": "uint128",
96
- "name": "",
97
- "type": "uint128"
98
- }
99
- ],
100
- "stateMutability": "view",
101
- "type": "function"
102
- },
103
- {
104
- "inputs": [],
105
- "name": "maxMultiplierThreshold",
106
- "outputs": [
107
- {
108
- "internalType": "uint64",
109
- "name": "",
110
- "type": "uint64"
111
- }
112
- ],
113
- "stateMutability": "view",
114
- "type": "function"
115
- },
116
- {
117
- "inputs": [],
118
- "name": "mintedRewards",
119
- "outputs": [
120
- {
121
- "internalType": "uint128",
122
- "name": "",
123
- "type": "uint128"
124
- }
125
- ],
126
- "stateMutability": "view",
127
- "type": "function"
128
- },
129
112
  {
130
113
  "inputs": [
131
114
  {
@@ -160,45 +143,6 @@
160
143
  "stateMutability": "nonpayable",
161
144
  "type": "function"
162
145
  },
163
- {
164
- "inputs": [],
165
- "name": "tokenDecimalDifference",
166
- "outputs": [
167
- {
168
- "internalType": "uint8",
169
- "name": "",
170
- "type": "uint8"
171
- }
172
- ],
173
- "stateMutability": "view",
174
- "type": "function"
175
- },
176
- {
177
- "inputs": [],
178
- "name": "totalEffectiveStakes",
179
- "outputs": [
180
- {
181
- "internalType": "uint128",
182
- "name": "",
183
- "type": "uint128"
184
- }
185
- ],
186
- "stateMutability": "view",
187
- "type": "function"
188
- },
189
- {
190
- "inputs": [],
191
- "name": "totalProductivity",
192
- "outputs": [
193
- {
194
- "internalType": "uint128",
195
- "name": "",
196
- "type": "uint128"
197
- }
198
- ],
199
- "stateMutability": "view",
200
- "type": "function"
201
- },
202
146
  {
203
147
  "inputs": [
204
148
  {
@@ -249,8 +193,8 @@
249
193
  "type": "function"
250
194
  }
251
195
  ],
252
- "bytecode": "0x608060405234801561001057600080fd5b5061103d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c80631ce720f3146100a957806328e964e9146100d45780633a608032146101235780634a291b011461013a578063574c5c931461016c578063899e1b6c1461017f5780639c81ff6b146101b1578063a82415ae146101c4578063a87430ba146101d7578063a9f8d18114610294578063bea28115146102ae578063e319828c146102c1575b600080fd5b6000546100bd90600160c01b900460ff1681565b60405160ff90911681526020015b60405180910390f35b61010e6100e2366004610d99565b6001600160a01b03166000908152600460205260409020546001546001600160801b0391821692911690565b604080519283526020830191909152016100cb565b61012c60035481565b6040519081526020016100cb565b60015461015490600160801b90046001600160801b031681565b6040516001600160801b0390911681526020016100cb565b61012c61017a366004610db4565b6102d4565b60005461019990600160801b90046001600160401b031681565b6040516001600160401b0390911681526020016100cb565b600254610154906001600160801b031681565b61012c6101d2366004610db4565b6103cd565b6102406101e5366004610d99565b6004602052600090815260409020805460018201546002909201546001600160801b0380831693600160801b9384900482169381831693918190048316928216916001600160401b03918104821691600160c01b9091041687565b604080516001600160801b039889168152968816602088015294871694860194909452918516606085015290931660808301526001600160401b0392831660a08301529190911660c082015260e0016100cb565b60025461015490600160801b90046001600160801b031681565b600154610154906001600160801b031681565b600054610154906001600160801b031681565b6001600160a01b03841660009081526004602052604081206102f785858561066a565b805461030f9087906001600160801b03166001610809565b6001810180546001600160801b03808216909255600283018054600160801b909204831692839260009161034591859116610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508060008054906101000a90046001600160801b03166103889190610e03565b600080546001600160801b0319166001600160801b03929092169190911790556103b9662386f26fc1000082610e44565b6001600160801b0316979650505050505050565b6001600160a01b0384166000908152600460209081526040808320815160e08101835281546001600160801b038082168352600160801b9182900481169583019590955260018084015480871695840195909552938190048516606083015260029092015480851660808301526001600160401b03838204811660a0840152600160c01b9091041660c082015260035492549093859290910416158015906104755750854310155b80156104815750438510155b15610645576002546000906104a690600160801b90046001600160801b031643610e6a565b905060006104bb89662386f26fc10000610e81565b6104c59083610e81565b905060008060006104d588610ca6565b60005492955090935091506104f590600160c01b900460ff16600a610f84565b6001546105129190600160801b90046001600160801b0316610e81565b61052785676765c793fa10079d601b1b610e81565b6105319190610f93565b61053b9088610fa7565b965087831561063e5780604001516001600160801b0316676765c793fa10079d601b1b89600060189054906101000a900460ff16600a61057b9190610f84565b84602001516001600160801b03166105939190610e81565b61059d9190610e81565b6105a79190610f93565b6105b19190610e6a565b965060006105c785670de0b6b3a7640000610e81565b6105dc89676765c793fa10079d601b1b610e81565b6105e69190610f93565b905064174876e800816105fa856064610e81565b600a610607886064610e81565b610612906005610e81565b61061c9190610f93565b6106269190610fa7565b6106309190610e81565b61063a9190610f93565b9750505b5050505050505b8083606001516001600160801b031661065e9190610fa7565b98975050505050505050565b600154600160801b90046001600160801b03166106a0575050600280546001600160801b03438116600160801b02911617905550565b8143101580156106c15750600254600160801b90046001600160801b031682115b156106e157600280546001600160801b03808516600160801b0291161790555b600254600090600160801b90046001600160801b0316831180156107055750824310155b61072157600254600160801b90046001600160801b0316610723565b825b905060008243116107345743610736565b825b9050838110806107465750828210155b15610752575050505050565b600061075e8383610e6a565b9050600061077387662386f26fc10000610e81565b61077d9083610e81565b60005490915061079890600160c01b900460ff16600a610f84565b6001546107b59190600160801b90046001600160801b0316610e81565b6107ca82676765c793fa10079d601b1b610e81565b6107d49190610f93565b6003546107e19190610fa7565b6003555050600280546001600160801b03928316600160801b02921691909117905550505050565b6001600160a01b038316600090815260046020526040902080546001600160801b0380821691600160801b9004168015610a1a576040805160e08101825284546001600160801b038082168352600160801b91829004811660208401526001870154808216948401949094529281900483166060830152600286015492831660808301526001600160401b03908304811660a0830152600160c01b90920490911660c0820152600090819081906108bf90610ca6565b92509250925082600014610a125760018601546003546000805490926001600160801b031691676765c793fa10079d601b1b9161090790600160c01b900460ff16600a610f84565b6109119089610e81565b61091b9190610e81565b6109259190610f93565b61092f9190610e6a565b905060008461094283633b9aca00610e81565b61094c9190610f93565b905064174876e80081610960856064610e81565b600a61096d886064610e81565b610978906005610e81565b6109829190610f93565b61098c9190610fa7565b6109969190610e81565b6109a09190610f93565b60018901549092506109c3908390600160801b90046001600160801b0316610fa7565b6001890180546001600160801b03928316600160801b029083161790556002546109ef91849116610fa7565b600280546001600160801b0319166001600160801b039290921691909117905550505b505050610a3d565b6002830180546001600160c01b0316600160c01b436001600160401b0316021790555b818511610b3b576002830180546001600160c01b0316600160c01b436001600160401b0316021790558115610b365782546000908390600160801b90046001600160801b0316610a8d8883610e6a565b610a979190610e81565b610aa19190610f93565b845490915081908590601090610ac8908490600160801b90046001600160801b0316610fbf565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555080600160108282829054906101000a90046001600160801b0316610b109190610fbf565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505b610be3565b83610be357610b4a8286610e6a565b83548490601090610b6c908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508185610b9c9190610e6a565b60018054601090610bbe908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b600283018054600160801b600160c01b031916600160801b436001600160401b03160217905582546001600160801b0319166001600160801b038616178355600354600054676765c793fa10079d601b1b9190610c4b90600160c01b900460ff16600a610f84565b8554610c679190600160801b90046001600160801b0316610e81565b610c719190610e81565b610c7b9190610f93565b60019390930180546001600160801b0319166001600160801b03909416939093179092555050505050565b6000806000808460c001518560a00151610cc09190610fe7565b6000805460c08801516001600160401b0393841694509192610cf792600160801b909204811691610cf2911643610e6a565b610d63565b905060008660a001516001600160401b031643610d149190610e6a565b6000805491925090600160801b90046001600160401b0316841015610d4257610d3d8484610e6a565b610d45565b60005b90506000610d538284610e6a565b9299919850919650945050505050565b6000818310610d725781610d74565b825b90505b92915050565b80356001600160a01b0381168114610d9457600080fd5b919050565b600060208284031215610dab57600080fd5b610d7482610d7d565b60008060008060808587031215610dca57600080fd5b610dd385610d7d565b966020860135965060408601359560600135945092505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160801b03828116848216808303821115610e2557610e25610ded565b01949350505050565b634e487b7160e01b600052601260045260246000fd5b60006001600160801b0383811680610e5e57610e5e610e2e565b92169190910492915050565b600082821015610e7c57610e7c610ded565b500390565b6000816000190483118215151615610e9b57610e9b610ded565b500290565b600181815b80851115610edb578160001904821115610ec157610ec1610ded565b80851615610ece57918102915b93841c9390800290610ea5565b509250929050565b600082610ef257506001610d77565b81610eff57506000610d77565b8160018114610f155760028114610f1f57610f3b565b6001915050610d77565b60ff841115610f3057610f30610ded565b50506001821b610d77565b5060208310610133831016604e8410600b8410161715610f5e575081810a610d77565b610f688383610ea0565b8060001904821115610f7c57610f7c610ded565b029392505050565b6000610d7460ff841683610ee3565b600082610fa257610fa2610e2e565b500490565b60008219821115610fba57610fba610ded565b500190565b60006001600160801b0383811690831681811015610fdf57610fdf610ded565b039392505050565b60006001600160401b0383811690831681811015610fdf57610fdf610ded56fea264697066735822122001d7215ef4661f65a8b605edde02bd995d1f1822ea95c563bd973bdf5bb3929f64736f6c63430008080033",
253
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c80631ce720f3146100a957806328e964e9146100d45780633a608032146101235780634a291b011461013a578063574c5c931461016c578063899e1b6c1461017f5780639c81ff6b146101b1578063a82415ae146101c4578063a87430ba146101d7578063a9f8d18114610294578063bea28115146102ae578063e319828c146102c1575b600080fd5b6000546100bd90600160c01b900460ff1681565b60405160ff90911681526020015b60405180910390f35b61010e6100e2366004610d99565b6001600160a01b03166000908152600460205260409020546001546001600160801b0391821692911690565b604080519283526020830191909152016100cb565b61012c60035481565b6040519081526020016100cb565b60015461015490600160801b90046001600160801b031681565b6040516001600160801b0390911681526020016100cb565b61012c61017a366004610db4565b6102d4565b60005461019990600160801b90046001600160401b031681565b6040516001600160401b0390911681526020016100cb565b600254610154906001600160801b031681565b61012c6101d2366004610db4565b6103cd565b6102406101e5366004610d99565b6004602052600090815260409020805460018201546002909201546001600160801b0380831693600160801b9384900482169381831693918190048316928216916001600160401b03918104821691600160c01b9091041687565b604080516001600160801b039889168152968816602088015294871694860194909452918516606085015290931660808301526001600160401b0392831660a08301529190911660c082015260e0016100cb565b60025461015490600160801b90046001600160801b031681565b600154610154906001600160801b031681565b600054610154906001600160801b031681565b6001600160a01b03841660009081526004602052604081206102f785858561066a565b805461030f9087906001600160801b03166001610809565b6001810180546001600160801b03808216909255600283018054600160801b909204831692839260009161034591859116610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508060008054906101000a90046001600160801b03166103889190610e03565b600080546001600160801b0319166001600160801b03929092169190911790556103b9662386f26fc1000082610e44565b6001600160801b0316979650505050505050565b6001600160a01b0384166000908152600460209081526040808320815160e08101835281546001600160801b038082168352600160801b9182900481169583019590955260018084015480871695840195909552938190048516606083015260029092015480851660808301526001600160401b03838204811660a0840152600160c01b9091041660c082015260035492549093859290910416158015906104755750854310155b80156104815750438510155b15610645576002546000906104a690600160801b90046001600160801b031643610e6a565b905060006104bb89662386f26fc10000610e81565b6104c59083610e81565b905060008060006104d588610ca6565b60005492955090935091506104f590600160c01b900460ff16600a610f84565b6001546105129190600160801b90046001600160801b0316610e81565b61052785676765c793fa10079d601b1b610e81565b6105319190610f93565b61053b9088610fa7565b965087831561063e5780604001516001600160801b0316676765c793fa10079d601b1b89600060189054906101000a900460ff16600a61057b9190610f84565b84602001516001600160801b03166105939190610e81565b61059d9190610e81565b6105a79190610f93565b6105b19190610e6a565b965060006105c785670de0b6b3a7640000610e81565b6105dc89676765c793fa10079d601b1b610e81565b6105e69190610f93565b905064174876e800816105fa856064610e81565b600a610607886064610e81565b610612906005610e81565b61061c9190610f93565b6106269190610fa7565b6106309190610e81565b61063a9190610f93565b9750505b5050505050505b8083606001516001600160801b031661065e9190610fa7565b98975050505050505050565b600154600160801b90046001600160801b03166106a0575050600280546001600160801b03438116600160801b02911617905550565b8143101580156106c15750600254600160801b90046001600160801b031682115b156106e157600280546001600160801b03808516600160801b0291161790555b600254600090600160801b90046001600160801b0316831180156107055750824310155b61072157600254600160801b90046001600160801b0316610723565b825b905060008243116107345743610736565b825b9050838110806107465750828210155b15610752575050505050565b600061075e8383610e6a565b9050600061077387662386f26fc10000610e81565b61077d9083610e81565b60005490915061079890600160c01b900460ff16600a610f84565b6001546107b59190600160801b90046001600160801b0316610e81565b6107ca82676765c793fa10079d601b1b610e81565b6107d49190610f93565b6003546107e19190610fa7565b6003555050600280546001600160801b03928316600160801b02921691909117905550505050565b6001600160a01b038316600090815260046020526040902080546001600160801b0380821691600160801b9004168015610a1a576040805160e08101825284546001600160801b038082168352600160801b91829004811660208401526001870154808216948401949094529281900483166060830152600286015492831660808301526001600160401b03908304811660a0830152600160c01b90920490911660c0820152600090819081906108bf90610ca6565b92509250925082600014610a125760018601546003546000805490926001600160801b031691676765c793fa10079d601b1b9161090790600160c01b900460ff16600a610f84565b6109119089610e81565b61091b9190610e81565b6109259190610f93565b61092f9190610e6a565b905060008461094283633b9aca00610e81565b61094c9190610f93565b905064174876e80081610960856064610e81565b600a61096d886064610e81565b610978906005610e81565b6109829190610f93565b61098c9190610fa7565b6109969190610e81565b6109a09190610f93565b60018901549092506109c3908390600160801b90046001600160801b0316610fa7565b6001890180546001600160801b03928316600160801b029083161790556002546109ef91849116610fa7565b600280546001600160801b0319166001600160801b039290921691909117905550505b505050610a3d565b6002830180546001600160c01b0316600160c01b436001600160401b0316021790555b818511610b3b576002830180546001600160c01b0316600160c01b436001600160401b0316021790558115610b365782546000908390600160801b90046001600160801b0316610a8d8883610e6a565b610a979190610e81565b610aa19190610f93565b845490915081908590601090610ac8908490600160801b90046001600160801b0316610fbf565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555080600160108282829054906101000a90046001600160801b0316610b109190610fbf565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505b610be3565b83610be357610b4a8286610e6a565b83548490601090610b6c908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508185610b9c9190610e6a565b60018054601090610bbe908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b600283018054600160801b600160c01b031916600160801b436001600160401b03160217905582546001600160801b0319166001600160801b038616178355600354600054676765c793fa10079d601b1b9190610c4b90600160c01b900460ff16600a610f84565b8554610c679190600160801b90046001600160801b0316610e81565b610c719190610e81565b610c7b9190610f93565b60019390930180546001600160801b0319166001600160801b03909416939093179092555050505050565b6000806000808460c001518560a00151610cc09190610fe7565b6000805460c08801516001600160401b0393841694509192610cf792600160801b909204811691610cf2911643610e6a565b610d63565b905060008660a001516001600160401b031643610d149190610e6a565b6000805491925090600160801b90046001600160401b0316841015610d4257610d3d8484610e6a565b610d45565b60005b90506000610d538284610e6a565b9299919850919650945050505050565b6000818310610d725781610d74565b825b90505b92915050565b80356001600160a01b0381168114610d9457600080fd5b919050565b600060208284031215610dab57600080fd5b610d7482610d7d565b60008060008060808587031215610dca57600080fd5b610dd385610d7d565b966020860135965060408601359560600135945092505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160801b03828116848216808303821115610e2557610e25610ded565b01949350505050565b634e487b7160e01b600052601260045260246000fd5b60006001600160801b0383811680610e5e57610e5e610e2e565b92169190910492915050565b600082821015610e7c57610e7c610ded565b500390565b6000816000190483118215151615610e9b57610e9b610ded565b500290565b600181815b80851115610edb578160001904821115610ec157610ec1610ded565b80851615610ece57918102915b93841c9390800290610ea5565b509250929050565b600082610ef257506001610d77565b81610eff57506000610d77565b8160018114610f155760028114610f1f57610f3b565b6001915050610d77565b60ff841115610f3057610f30610ded565b50506001821b610d77565b5060208310610133831016604e8410600b8410161715610f5e575081810a610d77565b610f688383610ea0565b8060001904821115610f7c57610f7c610ded565b029392505050565b6000610d7460ff841683610ee3565b600082610fa257610fa2610e2e565b500490565b60008219821115610fba57610fba610ded565b500190565b60006001600160801b0383811690831681811015610fdf57610fdf610ded565b039392505050565b60006001600160401b0383811690831681811015610fdf57610fdf610ded56fea264697066735822122001d7215ef4661f65a8b605edde02bd995d1f1822ea95c563bd973bdf5bb3929f64736f6c63430008080033",
196
+ "bytecode": "0x608060405234801561001057600080fd5b50610f99806100206000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806328e964e91461005c578063574c5c93146100b8578063a82415ae146100d9578063a87430ba146100ec578063c59d4847146101a9575b600080fd5b61009e61006a366004610cec565b6001600160a01b031660009081526004602052604081205490546001600160801b0391821692600160801b90910490911690565b604080519283526020830191909152015b60405180910390f35b6100cb6100c6366004610d0e565b610222565b6040519081526020016100af565b6100cb6100e7366004610d0e565b610335565b6101556100fa366004610cec565b6004602052600090815260409020805460018201546002909201546001600160801b0380831693600160801b9384900482169381831693918190048316928216916001600160401b03918104821691600160c01b9091041687565b604080516001600160801b039889168152968816602088015294871694860194909452918516606085015290931660808301526001600160401b0392831660a08301529190911660c082015260e0016100af565b600354600054600154600254604080519485526001600160801b038085166020870152600160801b948590048116918601919091528083166060860152918390048216608085015290811660a08401529081046001600160401b031660c0830152600160c01b900460ff1660e0820152610100016100af565b600061022f8484846105c2565b6001600160a01b03851660009081526004602052604090205461025e9086906001600160801b03166001610743565b6001600160a01b03851660009081526004602052604081206001810180546001600160801b0380821690925560029092018054600160801b9093048216938493919290916102ae91859116610d5d565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508060008054906101000a90046001600160801b03166102f19190610d5d565b600080546001600160801b0319166001600160801b0392909216919091179055610322662386f26fc1000082610d9e565b6001600160801b03169695505050505050565b6001600160a01b0384166000908152600460209081526040808320815160e08101835281546001600160801b038082168352600160801b9182900481169583019590955260018084015480871695840195909552938190048516606083015260029092015480851660808301526001600160401b03928104831660a0830152600160c01b900490911660c082015260035491549092849116158015906103db5750854310155b80156103e75750438510155b1561059d57600254600090610405906001600160801b031643610dc4565b9050600061041a89662386f26fc10000610ddb565b6104249083610ddb565b9050600080600061043488610bda565b600254929550909350915061045490600160c01b900460ff16600a610ee0565b60015461046a91906001600160801b0316610ddb565b61047f85676765c793fa10079d601b1b610ddb565b6104899190610eef565b6104939088610f03565b96508783156105965780604001516001600160801b0316676765c793fa10079d601b1b89600260189054906101000a900460ff16600a6104d39190610ee0565b84602001516001600160801b03166104eb9190610ddb565b6104f59190610ddb565b6104ff9190610eef565b6105099190610dc4565b9650600061051f85670de0b6b3a7640000610ddb565b61053489676765c793fa10079d601b1b610ddb565b61053e9190610eef565b905064174876e80081610552856064610ddb565b600a61055f886064610ddb565b61056a906005610ddb565b6105749190610eef565b61057e9190610f03565b6105889190610ddb565b6105929190610eef565b9750505b5050505050505b8083606001516001600160801b03166105b69190610f03565b98975050505050505050565b6001546001600160801b03166105f2575050600280546001600160801b031916436001600160801b031617905550565b81431015801561060c57506002546001600160801b031682115b1561062d57600280546001600160801b0319166001600160801b0384161790555b6002546000906001600160801b03168311801561064a5750824310155b61065f576002546001600160801b0316610661565b825b905060008243116106725743610674565b825b9050838110806106845750828210155b15610690575050505050565b600061069c8383610dc4565b905060006106b187662386f26fc10000610ddb565b6106bb9083610ddb565b6002549091506106d690600160c01b900460ff16600a610ee0565b6001546106ec91906001600160801b0316610ddb565b61070182676765c793fa10079d601b1b610ddb565b61070b9190610eef565b6003546107189190610f03565b6003555050600280546001600160801b0319166001600160801b039290921691909117905550505050565b6001600160a01b038316600090815260046020526040902080546001600160801b0380821691600160801b9004168015610955576040805160e08101825284546001600160801b038082168352600160801b91829004811660208401526001870154808216948401949094529281900483166060830152600286015492831660808301526001600160401b03908304811660a0830152600160c01b90920490911660c0820152600090819081906107f990610bda565b9250925092508260001461094d5760018601546003546002546000926001600160801b031691676765c793fa10079d601b1b9161084190600160c01b900460ff16600a610ee0565b61084b9089610ddb565b6108559190610ddb565b61085f9190610eef565b6108699190610dc4565b905060008461087c83633b9aca00610ddb565b6108869190610eef565b905064174876e8008161089a856064610ddb565b600a6108a7886064610ddb565b6108b2906005610ddb565b6108bc9190610eef565b6108c69190610f03565b6108d09190610ddb565b6108da9190610eef565b60018901549092506108fd908390600160801b90046001600160801b0316610f03565b600189810180546001600160801b03908116600160801b948216850217909155905461092d928592910416610f03565b600180546001600160801b03928316600160801b02921691909117905550505b505050610978565b6002830180546001600160c01b0316600160c01b436001600160401b0316021790555b818511610a76576002830180546001600160c01b0316600160c01b436001600160401b0316021790558115610a715782546000908390600160801b90046001600160801b03166109c88883610dc4565b6109d29190610ddb565b6109dc9190610eef565b845490915081908590601090610a03908490600160801b90046001600160801b0316610f1b565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555080600160008282829054906101000a90046001600160801b0316610a4b9190610f1b565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505b610b17565b83610b1757610a858286610dc4565b83548490601090610aa7908490600160801b90046001600160801b0316610d5d565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508185610ad79190610dc4565b60018054600090610af29084906001600160801b0316610d5d565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b60028381018054600160801b600160c01b031916600160801b436001600160401b03160217905583546001600160801b0319166001600160801b0387161784556003549054676765c793fa10079d601b1b9190610b7f90600160c01b900460ff16600a610ee0565b8554610b9b9190600160801b90046001600160801b0316610ddb565b610ba59190610ddb565b610baf9190610eef565b60019390930180546001600160801b0319166001600160801b03909416939093179092555050505050565b6000806000808460c001518560a00151610bf49190610f43565b6001600160401b0316905060008560c001516001600160401b031643610c1a9190610dc4565b600254600160801b90046001600160401b031610610c4f5760c0860151610c4a906001600160401b031643610dc4565b610c63565b600254600160801b90046001600160401b03165b905060008660a001516001600160401b031643610c809190610dc4565b600254909150600090600160801b90046001600160401b0316841015610caf57610caa8484610dc4565b610cb2565b60005b90506000610cc08284610dc4565b9299919850919650945050505050565b80356001600160a01b0381168114610ce757600080fd5b919050565b600060208284031215610cfe57600080fd5b610d0782610cd0565b9392505050565b60008060008060808587031215610d2457600080fd5b610d2d85610cd0565b966020860135965060408601359560600135945092505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160801b03828116848216808303821115610d7f57610d7f610d47565b01949350505050565b634e487b7160e01b600052601260045260246000fd5b60006001600160801b0383811680610db857610db8610d88565b92169190910492915050565b600082821015610dd657610dd6610d47565b500390565b6000816000190483118215151615610df557610df5610d47565b500290565b600181815b80851115610e35578160001904821115610e1b57610e1b610d47565b80851615610e2857918102915b93841c9390800290610dff565b509250929050565b600082610e4c57506001610eda565b81610e5957506000610eda565b8160018114610e6f5760028114610e7957610e95565b6001915050610eda565b60ff841115610e8a57610e8a610d47565b50506001821b610eda565b5060208310610133831016604e8410600b8410161715610eb8575081810a610eda565b610ec28383610dfa565b8060001904821115610ed657610ed6610d47565b0290505b92915050565b6000610d0760ff841683610e3d565b600082610efe57610efe610d88565b500490565b60008219821115610f1657610f16610d47565b500190565b60006001600160801b0383811690831681811015610f3b57610f3b610d47565b039392505050565b60006001600160401b0383811690831681811015610f3b57610f3b610d4756fea264697066735822122098b486ed3e3b029e8a1740c0a7b568d694cebb44c5dced275b89b8a50f0f071564736f6c63430008080033",
197
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c806328e964e91461005c578063574c5c93146100b8578063a82415ae146100d9578063a87430ba146100ec578063c59d4847146101a9575b600080fd5b61009e61006a366004610cec565b6001600160a01b031660009081526004602052604081205490546001600160801b0391821692600160801b90910490911690565b604080519283526020830191909152015b60405180910390f35b6100cb6100c6366004610d0e565b610222565b6040519081526020016100af565b6100cb6100e7366004610d0e565b610335565b6101556100fa366004610cec565b6004602052600090815260409020805460018201546002909201546001600160801b0380831693600160801b9384900482169381831693918190048316928216916001600160401b03918104821691600160c01b9091041687565b604080516001600160801b039889168152968816602088015294871694860194909452918516606085015290931660808301526001600160401b0392831660a08301529190911660c082015260e0016100af565b600354600054600154600254604080519485526001600160801b038085166020870152600160801b948590048116918601919091528083166060860152918390048216608085015290811660a08401529081046001600160401b031660c0830152600160c01b900460ff1660e0820152610100016100af565b600061022f8484846105c2565b6001600160a01b03851660009081526004602052604090205461025e9086906001600160801b03166001610743565b6001600160a01b03851660009081526004602052604081206001810180546001600160801b0380821690925560029092018054600160801b9093048216938493919290916102ae91859116610d5d565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508060008054906101000a90046001600160801b03166102f19190610d5d565b600080546001600160801b0319166001600160801b0392909216919091179055610322662386f26fc1000082610d9e565b6001600160801b03169695505050505050565b6001600160a01b0384166000908152600460209081526040808320815160e08101835281546001600160801b038082168352600160801b9182900481169583019590955260018084015480871695840195909552938190048516606083015260029092015480851660808301526001600160401b03928104831660a0830152600160c01b900490911660c082015260035491549092849116158015906103db5750854310155b80156103e75750438510155b1561059d57600254600090610405906001600160801b031643610dc4565b9050600061041a89662386f26fc10000610ddb565b6104249083610ddb565b9050600080600061043488610bda565b600254929550909350915061045490600160c01b900460ff16600a610ee0565b60015461046a91906001600160801b0316610ddb565b61047f85676765c793fa10079d601b1b610ddb565b6104899190610eef565b6104939088610f03565b96508783156105965780604001516001600160801b0316676765c793fa10079d601b1b89600260189054906101000a900460ff16600a6104d39190610ee0565b84602001516001600160801b03166104eb9190610ddb565b6104f59190610ddb565b6104ff9190610eef565b6105099190610dc4565b9650600061051f85670de0b6b3a7640000610ddb565b61053489676765c793fa10079d601b1b610ddb565b61053e9190610eef565b905064174876e80081610552856064610ddb565b600a61055f886064610ddb565b61056a906005610ddb565b6105749190610eef565b61057e9190610f03565b6105889190610ddb565b6105929190610eef565b9750505b5050505050505b8083606001516001600160801b03166105b69190610f03565b98975050505050505050565b6001546001600160801b03166105f2575050600280546001600160801b031916436001600160801b031617905550565b81431015801561060c57506002546001600160801b031682115b1561062d57600280546001600160801b0319166001600160801b0384161790555b6002546000906001600160801b03168311801561064a5750824310155b61065f576002546001600160801b0316610661565b825b905060008243116106725743610674565b825b9050838110806106845750828210155b15610690575050505050565b600061069c8383610dc4565b905060006106b187662386f26fc10000610ddb565b6106bb9083610ddb565b6002549091506106d690600160c01b900460ff16600a610ee0565b6001546106ec91906001600160801b0316610ddb565b61070182676765c793fa10079d601b1b610ddb565b61070b9190610eef565b6003546107189190610f03565b6003555050600280546001600160801b0319166001600160801b039290921691909117905550505050565b6001600160a01b038316600090815260046020526040902080546001600160801b0380821691600160801b9004168015610955576040805160e08101825284546001600160801b038082168352600160801b91829004811660208401526001870154808216948401949094529281900483166060830152600286015492831660808301526001600160401b03908304811660a0830152600160c01b90920490911660c0820152600090819081906107f990610bda565b9250925092508260001461094d5760018601546003546002546000926001600160801b031691676765c793fa10079d601b1b9161084190600160c01b900460ff16600a610ee0565b61084b9089610ddb565b6108559190610ddb565b61085f9190610eef565b6108699190610dc4565b905060008461087c83633b9aca00610ddb565b6108869190610eef565b905064174876e8008161089a856064610ddb565b600a6108a7886064610ddb565b6108b2906005610ddb565b6108bc9190610eef565b6108c69190610f03565b6108d09190610ddb565b6108da9190610eef565b60018901549092506108fd908390600160801b90046001600160801b0316610f03565b600189810180546001600160801b03908116600160801b948216850217909155905461092d928592910416610f03565b600180546001600160801b03928316600160801b02921691909117905550505b505050610978565b6002830180546001600160c01b0316600160c01b436001600160401b0316021790555b818511610a76576002830180546001600160c01b0316600160c01b436001600160401b0316021790558115610a715782546000908390600160801b90046001600160801b03166109c88883610dc4565b6109d29190610ddb565b6109dc9190610eef565b845490915081908590601090610a03908490600160801b90046001600160801b0316610f1b565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555080600160008282829054906101000a90046001600160801b0316610a4b9190610f1b565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505b610b17565b83610b1757610a858286610dc4565b83548490601090610aa7908490600160801b90046001600160801b0316610d5d565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508185610ad79190610dc4565b60018054600090610af29084906001600160801b0316610d5d565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b60028381018054600160801b600160c01b031916600160801b436001600160401b03160217905583546001600160801b0319166001600160801b0387161784556003549054676765c793fa10079d601b1b9190610b7f90600160c01b900460ff16600a610ee0565b8554610b9b9190600160801b90046001600160801b0316610ddb565b610ba59190610ddb565b610baf9190610eef565b60019390930180546001600160801b0319166001600160801b03909416939093179092555050505050565b6000806000808460c001518560a00151610bf49190610f43565b6001600160401b0316905060008560c001516001600160401b031643610c1a9190610dc4565b600254600160801b90046001600160401b031610610c4f5760c0860151610c4a906001600160401b031643610dc4565b610c63565b600254600160801b90046001600160401b03165b905060008660a001516001600160401b031643610c809190610dc4565b600254909150600090600160801b90046001600160401b0316841015610caf57610caa8484610dc4565b610cb2565b60005b90506000610cc08284610dc4565b9299919850919650945050505050565b80356001600160a01b0381168114610ce757600080fd5b919050565b600060208284031215610cfe57600080fd5b610d0782610cd0565b9392505050565b60008060008060808587031215610d2457600080fd5b610d2d85610cd0565b966020860135965060408601359560600135945092505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160801b03828116848216808303821115610d7f57610d7f610d47565b01949350505050565b634e487b7160e01b600052601260045260246000fd5b60006001600160801b0383811680610db857610db8610d88565b92169190910492915050565b600082821015610dd657610dd6610d47565b500390565b6000816000190483118215151615610df557610df5610d47565b500290565b600181815b80851115610e35578160001904821115610e1b57610e1b610d47565b80851615610e2857918102915b93841c9390800290610dff565b509250929050565b600082610e4c57506001610eda565b81610e5957506000610eda565b8160018114610e6f5760028114610e7957610e95565b6001915050610eda565b60ff841115610e8a57610e8a610d47565b50506001821b610eda565b5060208310610133831016604e8410600b8410161715610eb8575081810a610eda565b610ec28383610dfa565b8060001904821115610ed657610ed6610d47565b0290505b92915050565b6000610d0760ff841683610e3d565b600082610efe57610efe610d88565b500490565b60008219821115610f1657610f16610d47565b500190565b60006001600160801b0383811690831681811015610f3b57610f3b610d47565b039392505050565b60006001600160401b0383811690831681811015610f3b57610f3b610d4756fea264697066735822122098b486ed3e3b029e8a1740c0a7b568d694cebb44c5dced275b89b8a50f0f071564736f6c63430008080033",
254
198
  "linkReferences": {},
255
199
  "deployedLinkReferences": {}
256
200
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/432071a069fa44ffd3a7f92eee83d72e.json"
3
+ "buildInfo": "../../../build-info/78fe23216a2e71b0745d62e12899dde9.json"
4
4
  }