@gooddollar/goodprotocol 1.0.7-beta.2 → 1.0.9-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
- package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
- package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
- package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
- package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
- package/artifacts/contracts/governance/GReputation.sol/GReputation.json +62 -4
- package/artifacts/contracts/governance/GovarnanceStaking.sol/GovernanceStaking.dbg.json +1 -1
- package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
- package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
- package/artifacts/contracts/governance/Reputation.sol/Reputation.json +17 -17
- package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
- package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
- package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +6 -6
- package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
- package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
- package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
- package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
- package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
- package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
- package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
- package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
- package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
- package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
- package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +4 -0
- package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +256 -0
- package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
- package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
- package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +4 -0
- package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.json +1033 -0
- package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
- package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
- package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +3 -3
- package/artifacts/contracts/staking/aave/AaveStakingFactoryV2.sol/AaveStakingFactoryV2.dbg.json +4 -0
- package/artifacts/contracts/staking/aave/AaveStakingFactoryV2.sol/AaveStakingFactoryV2.json +148 -0
- package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +4 -4
- package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +4 -0
- package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +1224 -0
- package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
- package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
- package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +4 -4
- package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
- package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
- package/artifacts/contracts/unaudited-foundation/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
- package/artifacts/contracts/unaudited-foundation/InvitesV1.sol/InvitesV1.dbg.json +1 -1
- package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
- package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
- package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
- package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
- package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
- package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
- package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
- package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
- package/contracts/governance/GReputation.sol +53 -14
- package/contracts/governance/Reputation.sol +13 -25
- package/contracts/staking/BaseShareFieldV2.sol +319 -0
- package/contracts/staking/SimpleStakingV2.sol +522 -0
- package/contracts/staking/aave/AaveStakingFactoryV2.sol +93 -0
- package/contracts/staking/aave/GoodAaveStaking.sol +4 -3
- package/contracts/staking/aave/GoodAaveStakingV2.sol +263 -0
- package/contracts/staking/compound/GoodCompoundStaking.sol +4 -3
- package/contracts/ubi/UBIScheme.sol +2 -2
- package/package.json +1 -1
- package/releases/deployment.json +108 -97
- package/releases/olddao.json +1 -406
- package/scripts/deployFullDAO.ts +7 -7
- package/scripts/misc/goodgiveback.ts +64 -0
- package/scripts/verify.ts +60 -47
- package/test/governance/ClaimersDistribution.test.ts +5 -5
- package/test/governance/CompoundVotingMachine.castvote.test.ts +1 -1
- package/test/governance/CompoundVotingMachine.daoscheme.ts +1 -1
- package/test/governance/CompoundVotingMachine.guardian.test.ts +1 -1
- package/test/governance/GReputation.test.ts +49 -18
- package/test/governance/GovernanceStaking.test.ts +71 -47
- package/test/governance/Reputation.test.ts +52 -51
- package/test/governance/StakersDistribution.test.ts +12 -8
- package/test/helpers.ts +5 -1
- package/test/staking/GoodAaveStakingFactoryV2.test.ts +122 -0
- package/test/staking/UsdcAaveStaking.test.ts +5 -1
- package/test/staking/UsdcAaveStakingV2.test.ts +291 -0
- package/truffle-config.js +12 -0
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "BaseShareFieldV2",
|
|
4
|
+
"sourceName": "contracts/staking/BaseShareFieldV2.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [],
|
|
8
|
+
"name": "accAmountPerShare",
|
|
9
|
+
"outputs": [
|
|
10
|
+
{
|
|
11
|
+
"internalType": "uint256",
|
|
12
|
+
"name": "",
|
|
13
|
+
"type": "uint256"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"stateMutability": "view",
|
|
17
|
+
"type": "function"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"inputs": [],
|
|
21
|
+
"name": "accumulatedRewards",
|
|
22
|
+
"outputs": [
|
|
23
|
+
{
|
|
24
|
+
"internalType": "uint128",
|
|
25
|
+
"name": "",
|
|
26
|
+
"type": "uint128"
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"stateMutability": "view",
|
|
30
|
+
"type": "function"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"inputs": [
|
|
34
|
+
{
|
|
35
|
+
"internalType": "address",
|
|
36
|
+
"name": "user",
|
|
37
|
+
"type": "address"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"name": "getProductivity",
|
|
41
|
+
"outputs": [
|
|
42
|
+
{
|
|
43
|
+
"internalType": "uint256",
|
|
44
|
+
"name": "",
|
|
45
|
+
"type": "uint256"
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"internalType": "uint256",
|
|
49
|
+
"name": "",
|
|
50
|
+
"type": "uint256"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"stateMutability": "view",
|
|
54
|
+
"type": "function"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"inputs": [
|
|
58
|
+
{
|
|
59
|
+
"internalType": "address",
|
|
60
|
+
"name": "user",
|
|
61
|
+
"type": "address"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"internalType": "uint256",
|
|
65
|
+
"name": "rewardsPerBlock",
|
|
66
|
+
"type": "uint256"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"internalType": "uint256",
|
|
70
|
+
"name": "blockStart",
|
|
71
|
+
"type": "uint256"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"internalType": "uint256",
|
|
75
|
+
"name": "blockEnd",
|
|
76
|
+
"type": "uint256"
|
|
77
|
+
}
|
|
78
|
+
],
|
|
79
|
+
"name": "getUserPendingReward",
|
|
80
|
+
"outputs": [
|
|
81
|
+
{
|
|
82
|
+
"internalType": "uint256",
|
|
83
|
+
"name": "",
|
|
84
|
+
"type": "uint256"
|
|
85
|
+
}
|
|
86
|
+
],
|
|
87
|
+
"stateMutability": "view",
|
|
88
|
+
"type": "function"
|
|
89
|
+
},
|
|
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
|
+
{
|
|
130
|
+
"inputs": [
|
|
131
|
+
{
|
|
132
|
+
"internalType": "address",
|
|
133
|
+
"name": "user",
|
|
134
|
+
"type": "address"
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"internalType": "uint256",
|
|
138
|
+
"name": "rewardsPerBlock",
|
|
139
|
+
"type": "uint256"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"internalType": "uint256",
|
|
143
|
+
"name": "blockStart",
|
|
144
|
+
"type": "uint256"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"internalType": "uint256",
|
|
148
|
+
"name": "blockEnd",
|
|
149
|
+
"type": "uint256"
|
|
150
|
+
}
|
|
151
|
+
],
|
|
152
|
+
"name": "rewardsMinted",
|
|
153
|
+
"outputs": [
|
|
154
|
+
{
|
|
155
|
+
"internalType": "uint256",
|
|
156
|
+
"name": "",
|
|
157
|
+
"type": "uint256"
|
|
158
|
+
}
|
|
159
|
+
],
|
|
160
|
+
"stateMutability": "nonpayable",
|
|
161
|
+
"type": "function"
|
|
162
|
+
},
|
|
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
|
+
{
|
|
203
|
+
"inputs": [
|
|
204
|
+
{
|
|
205
|
+
"internalType": "address",
|
|
206
|
+
"name": "",
|
|
207
|
+
"type": "address"
|
|
208
|
+
}
|
|
209
|
+
],
|
|
210
|
+
"name": "users",
|
|
211
|
+
"outputs": [
|
|
212
|
+
{
|
|
213
|
+
"internalType": "uint128",
|
|
214
|
+
"name": "amount",
|
|
215
|
+
"type": "uint128"
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
"internalType": "uint128",
|
|
219
|
+
"name": "effectiveStakes",
|
|
220
|
+
"type": "uint128"
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"internalType": "uint128",
|
|
224
|
+
"name": "rewardDebt",
|
|
225
|
+
"type": "uint128"
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
"internalType": "uint128",
|
|
229
|
+
"name": "rewardEarn",
|
|
230
|
+
"type": "uint128"
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"internalType": "uint128",
|
|
234
|
+
"name": "rewardMinted",
|
|
235
|
+
"type": "uint128"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"internalType": "uint64",
|
|
239
|
+
"name": "lastRewardTime",
|
|
240
|
+
"type": "uint64"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"internalType": "uint64",
|
|
244
|
+
"name": "multiplierResetTime",
|
|
245
|
+
"type": "uint64"
|
|
246
|
+
}
|
|
247
|
+
],
|
|
248
|
+
"stateMutability": "view",
|
|
249
|
+
"type": "function"
|
|
250
|
+
}
|
|
251
|
+
],
|
|
252
|
+
"bytecode": "0x608060405234801561001057600080fd5b5061103d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c80631ce720f3146100a957806328e964e9146100d45780633a608032146101235780634a291b011461013a578063574c5c931461016c578063899e1b6c1461017f5780639c81ff6b146101b1578063a82415ae146101c4578063a87430ba146101d7578063a9f8d18114610294578063bea28115146102ae578063e319828c146102c1575b600080fd5b6000546100bd90600160c01b900460ff1681565b60405160ff90911681526020015b60405180910390f35b61010e6100e2366004610d99565b6001600160a01b03166000908152600460205260409020546001546001600160801b0391821692911690565b604080519283526020830191909152016100cb565b61012c60035481565b6040519081526020016100cb565b60015461015490600160801b90046001600160801b031681565b6040516001600160801b0390911681526020016100cb565b61012c61017a366004610db4565b6102d4565b60005461019990600160801b90046001600160401b031681565b6040516001600160401b0390911681526020016100cb565b600254610154906001600160801b031681565b61012c6101d2366004610db4565b6103cd565b6102406101e5366004610d99565b6004602052600090815260409020805460018201546002909201546001600160801b0380831693600160801b9384900482169381831693918190048316928216916001600160401b03918104821691600160c01b9091041687565b604080516001600160801b039889168152968816602088015294871694860194909452918516606085015290931660808301526001600160401b0392831660a08301529190911660c082015260e0016100cb565b60025461015490600160801b90046001600160801b031681565b600154610154906001600160801b031681565b600054610154906001600160801b031681565b6001600160a01b03841660009081526004602052604081206102f785858561066a565b805461030f9087906001600160801b03166001610809565b6001810180546001600160801b03808216909255600283018054600160801b909204831692839260009161034591859116610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508060008054906101000a90046001600160801b03166103889190610e03565b600080546001600160801b0319166001600160801b03929092169190911790556103b9662386f26fc1000082610e44565b6001600160801b0316979650505050505050565b6001600160a01b0384166000908152600460209081526040808320815160e08101835281546001600160801b038082168352600160801b9182900481169583019590955260018084015480871695840195909552938190048516606083015260029092015480851660808301526001600160401b03838204811660a0840152600160c01b9091041660c082015260035492549093859290910416158015906104755750854310155b80156104815750438510155b15610645576002546000906104a690600160801b90046001600160801b031643610e6a565b905060006104bb89662386f26fc10000610e81565b6104c59083610e81565b905060008060006104d588610ca6565b60005492955090935091506104f590600160c01b900460ff16600a610f84565b6001546105129190600160801b90046001600160801b0316610e81565b61052785676765c793fa10079d601b1b610e81565b6105319190610f93565b61053b9088610fa7565b965087831561063e5780604001516001600160801b0316676765c793fa10079d601b1b89600060189054906101000a900460ff16600a61057b9190610f84565b84602001516001600160801b03166105939190610e81565b61059d9190610e81565b6105a79190610f93565b6105b19190610e6a565b965060006105c785670de0b6b3a7640000610e81565b6105dc89676765c793fa10079d601b1b610e81565b6105e69190610f93565b905064174876e800816105fa856064610e81565b600a610607886064610e81565b610612906005610e81565b61061c9190610f93565b6106269190610fa7565b6106309190610e81565b61063a9190610f93565b9750505b5050505050505b8083606001516001600160801b031661065e9190610fa7565b98975050505050505050565b600154600160801b90046001600160801b03166106a0575050600280546001600160801b03438116600160801b02911617905550565b8143101580156106c15750600254600160801b90046001600160801b031682115b156106e157600280546001600160801b03808516600160801b0291161790555b600254600090600160801b90046001600160801b0316831180156107055750824310155b61072157600254600160801b90046001600160801b0316610723565b825b905060008243116107345743610736565b825b9050838110806107465750828210155b15610752575050505050565b600061075e8383610e6a565b9050600061077387662386f26fc10000610e81565b61077d9083610e81565b60005490915061079890600160c01b900460ff16600a610f84565b6001546107b59190600160801b90046001600160801b0316610e81565b6107ca82676765c793fa10079d601b1b610e81565b6107d49190610f93565b6003546107e19190610fa7565b6003555050600280546001600160801b03928316600160801b02921691909117905550505050565b6001600160a01b038316600090815260046020526040902080546001600160801b0380821691600160801b9004168015610a1a576040805160e08101825284546001600160801b038082168352600160801b91829004811660208401526001870154808216948401949094529281900483166060830152600286015492831660808301526001600160401b03908304811660a0830152600160c01b90920490911660c0820152600090819081906108bf90610ca6565b92509250925082600014610a125760018601546003546000805490926001600160801b031691676765c793fa10079d601b1b9161090790600160c01b900460ff16600a610f84565b6109119089610e81565b61091b9190610e81565b6109259190610f93565b61092f9190610e6a565b905060008461094283633b9aca00610e81565b61094c9190610f93565b905064174876e80081610960856064610e81565b600a61096d886064610e81565b610978906005610e81565b6109829190610f93565b61098c9190610fa7565b6109969190610e81565b6109a09190610f93565b60018901549092506109c3908390600160801b90046001600160801b0316610fa7565b6001890180546001600160801b03928316600160801b029083161790556002546109ef91849116610fa7565b600280546001600160801b0319166001600160801b039290921691909117905550505b505050610a3d565b6002830180546001600160c01b0316600160c01b436001600160401b0316021790555b818511610b3b576002830180546001600160c01b0316600160c01b436001600160401b0316021790558115610b365782546000908390600160801b90046001600160801b0316610a8d8883610e6a565b610a979190610e81565b610aa19190610f93565b845490915081908590601090610ac8908490600160801b90046001600160801b0316610fbf565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555080600160108282829054906101000a90046001600160801b0316610b109190610fbf565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505b610be3565b83610be357610b4a8286610e6a565b83548490601090610b6c908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508185610b9c9190610e6a565b60018054601090610bbe908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b600283018054600160801b600160c01b031916600160801b436001600160401b03160217905582546001600160801b0319166001600160801b038616178355600354600054676765c793fa10079d601b1b9190610c4b90600160c01b900460ff16600a610f84565b8554610c679190600160801b90046001600160801b0316610e81565b610c719190610e81565b610c7b9190610f93565b60019390930180546001600160801b0319166001600160801b03909416939093179092555050505050565b6000806000808460c001518560a00151610cc09190610fe7565b6000805460c08801516001600160401b0393841694509192610cf792600160801b909204811691610cf2911643610e6a565b610d63565b905060008660a001516001600160401b031643610d149190610e6a565b6000805491925090600160801b90046001600160401b0316841015610d4257610d3d8484610e6a565b610d45565b60005b90506000610d538284610e6a565b9299919850919650945050505050565b6000818310610d725781610d74565b825b90505b92915050565b80356001600160a01b0381168114610d9457600080fd5b919050565b600060208284031215610dab57600080fd5b610d7482610d7d565b60008060008060808587031215610dca57600080fd5b610dd385610d7d565b966020860135965060408601359560600135945092505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160801b03828116848216808303821115610e2557610e25610ded565b01949350505050565b634e487b7160e01b600052601260045260246000fd5b60006001600160801b0383811680610e5e57610e5e610e2e565b92169190910492915050565b600082821015610e7c57610e7c610ded565b500390565b6000816000190483118215151615610e9b57610e9b610ded565b500290565b600181815b80851115610edb578160001904821115610ec157610ec1610ded565b80851615610ece57918102915b93841c9390800290610ea5565b509250929050565b600082610ef257506001610d77565b81610eff57506000610d77565b8160018114610f155760028114610f1f57610f3b565b6001915050610d77565b60ff841115610f3057610f30610ded565b50506001821b610d77565b5060208310610133831016604e8410600b8410161715610f5e575081810a610d77565b610f688383610ea0565b8060001904821115610f7c57610f7c610ded565b029392505050565b6000610d7460ff841683610ee3565b600082610fa257610fa2610e2e565b500490565b60008219821115610fba57610fba610ded565b500190565b60006001600160801b0383811690831681811015610fdf57610fdf610ded565b039392505050565b60006001600160401b0383811690831681811015610fdf57610fdf610ded56fea264697066735822122001d7215ef4661f65a8b605edde02bd995d1f1822ea95c563bd973bdf5bb3929f64736f6c63430008080033",
|
|
253
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c80631ce720f3146100a957806328e964e9146100d45780633a608032146101235780634a291b011461013a578063574c5c931461016c578063899e1b6c1461017f5780639c81ff6b146101b1578063a82415ae146101c4578063a87430ba146101d7578063a9f8d18114610294578063bea28115146102ae578063e319828c146102c1575b600080fd5b6000546100bd90600160c01b900460ff1681565b60405160ff90911681526020015b60405180910390f35b61010e6100e2366004610d99565b6001600160a01b03166000908152600460205260409020546001546001600160801b0391821692911690565b604080519283526020830191909152016100cb565b61012c60035481565b6040519081526020016100cb565b60015461015490600160801b90046001600160801b031681565b6040516001600160801b0390911681526020016100cb565b61012c61017a366004610db4565b6102d4565b60005461019990600160801b90046001600160401b031681565b6040516001600160401b0390911681526020016100cb565b600254610154906001600160801b031681565b61012c6101d2366004610db4565b6103cd565b6102406101e5366004610d99565b6004602052600090815260409020805460018201546002909201546001600160801b0380831693600160801b9384900482169381831693918190048316928216916001600160401b03918104821691600160c01b9091041687565b604080516001600160801b039889168152968816602088015294871694860194909452918516606085015290931660808301526001600160401b0392831660a08301529190911660c082015260e0016100cb565b60025461015490600160801b90046001600160801b031681565b600154610154906001600160801b031681565b600054610154906001600160801b031681565b6001600160a01b03841660009081526004602052604081206102f785858561066a565b805461030f9087906001600160801b03166001610809565b6001810180546001600160801b03808216909255600283018054600160801b909204831692839260009161034591859116610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508060008054906101000a90046001600160801b03166103889190610e03565b600080546001600160801b0319166001600160801b03929092169190911790556103b9662386f26fc1000082610e44565b6001600160801b0316979650505050505050565b6001600160a01b0384166000908152600460209081526040808320815160e08101835281546001600160801b038082168352600160801b9182900481169583019590955260018084015480871695840195909552938190048516606083015260029092015480851660808301526001600160401b03838204811660a0840152600160c01b9091041660c082015260035492549093859290910416158015906104755750854310155b80156104815750438510155b15610645576002546000906104a690600160801b90046001600160801b031643610e6a565b905060006104bb89662386f26fc10000610e81565b6104c59083610e81565b905060008060006104d588610ca6565b60005492955090935091506104f590600160c01b900460ff16600a610f84565b6001546105129190600160801b90046001600160801b0316610e81565b61052785676765c793fa10079d601b1b610e81565b6105319190610f93565b61053b9088610fa7565b965087831561063e5780604001516001600160801b0316676765c793fa10079d601b1b89600060189054906101000a900460ff16600a61057b9190610f84565b84602001516001600160801b03166105939190610e81565b61059d9190610e81565b6105a79190610f93565b6105b19190610e6a565b965060006105c785670de0b6b3a7640000610e81565b6105dc89676765c793fa10079d601b1b610e81565b6105e69190610f93565b905064174876e800816105fa856064610e81565b600a610607886064610e81565b610612906005610e81565b61061c9190610f93565b6106269190610fa7565b6106309190610e81565b61063a9190610f93565b9750505b5050505050505b8083606001516001600160801b031661065e9190610fa7565b98975050505050505050565b600154600160801b90046001600160801b03166106a0575050600280546001600160801b03438116600160801b02911617905550565b8143101580156106c15750600254600160801b90046001600160801b031682115b156106e157600280546001600160801b03808516600160801b0291161790555b600254600090600160801b90046001600160801b0316831180156107055750824310155b61072157600254600160801b90046001600160801b0316610723565b825b905060008243116107345743610736565b825b9050838110806107465750828210155b15610752575050505050565b600061075e8383610e6a565b9050600061077387662386f26fc10000610e81565b61077d9083610e81565b60005490915061079890600160c01b900460ff16600a610f84565b6001546107b59190600160801b90046001600160801b0316610e81565b6107ca82676765c793fa10079d601b1b610e81565b6107d49190610f93565b6003546107e19190610fa7565b6003555050600280546001600160801b03928316600160801b02921691909117905550505050565b6001600160a01b038316600090815260046020526040902080546001600160801b0380821691600160801b9004168015610a1a576040805160e08101825284546001600160801b038082168352600160801b91829004811660208401526001870154808216948401949094529281900483166060830152600286015492831660808301526001600160401b03908304811660a0830152600160c01b90920490911660c0820152600090819081906108bf90610ca6565b92509250925082600014610a125760018601546003546000805490926001600160801b031691676765c793fa10079d601b1b9161090790600160c01b900460ff16600a610f84565b6109119089610e81565b61091b9190610e81565b6109259190610f93565b61092f9190610e6a565b905060008461094283633b9aca00610e81565b61094c9190610f93565b905064174876e80081610960856064610e81565b600a61096d886064610e81565b610978906005610e81565b6109829190610f93565b61098c9190610fa7565b6109969190610e81565b6109a09190610f93565b60018901549092506109c3908390600160801b90046001600160801b0316610fa7565b6001890180546001600160801b03928316600160801b029083161790556002546109ef91849116610fa7565b600280546001600160801b0319166001600160801b039290921691909117905550505b505050610a3d565b6002830180546001600160c01b0316600160c01b436001600160401b0316021790555b818511610b3b576002830180546001600160c01b0316600160c01b436001600160401b0316021790558115610b365782546000908390600160801b90046001600160801b0316610a8d8883610e6a565b610a979190610e81565b610aa19190610f93565b845490915081908590601090610ac8908490600160801b90046001600160801b0316610fbf565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555080600160108282829054906101000a90046001600160801b0316610b109190610fbf565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550505b610be3565b83610be357610b4a8286610e6a565b83548490601090610b6c908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055508185610b9c9190610e6a565b60018054601090610bbe908490600160801b90046001600160801b0316610e03565b92506101000a8154816001600160801b0302191690836001600160801b031602179055505b600283018054600160801b600160c01b031916600160801b436001600160401b03160217905582546001600160801b0319166001600160801b038616178355600354600054676765c793fa10079d601b1b9190610c4b90600160c01b900460ff16600a610f84565b8554610c679190600160801b90046001600160801b0316610e81565b610c719190610e81565b610c7b9190610f93565b60019390930180546001600160801b0319166001600160801b03909416939093179092555050505050565b6000806000808460c001518560a00151610cc09190610fe7565b6000805460c08801516001600160401b0393841694509192610cf792600160801b909204811691610cf2911643610e6a565b610d63565b905060008660a001516001600160401b031643610d149190610e6a565b6000805491925090600160801b90046001600160401b0316841015610d4257610d3d8484610e6a565b610d45565b60005b90506000610d538284610e6a565b9299919850919650945050505050565b6000818310610d725781610d74565b825b90505b92915050565b80356001600160a01b0381168114610d9457600080fd5b919050565b600060208284031215610dab57600080fd5b610d7482610d7d565b60008060008060808587031215610dca57600080fd5b610dd385610d7d565b966020860135965060408601359560600135945092505050565b634e487b7160e01b600052601160045260246000fd5b60006001600160801b03828116848216808303821115610e2557610e25610ded565b01949350505050565b634e487b7160e01b600052601260045260246000fd5b60006001600160801b0383811680610e5e57610e5e610e2e565b92169190910492915050565b600082821015610e7c57610e7c610ded565b500390565b6000816000190483118215151615610e9b57610e9b610ded565b500290565b600181815b80851115610edb578160001904821115610ec157610ec1610ded565b80851615610ece57918102915b93841c9390800290610ea5565b509250929050565b600082610ef257506001610d77565b81610eff57506000610d77565b8160018114610f155760028114610f1f57610f3b565b6001915050610d77565b60ff841115610f3057610f30610ded565b50506001821b610d77565b5060208310610133831016604e8410600b8410161715610f5e575081810a610d77565b610f688383610ea0565b8060001904821115610f7c57610f7c610ded565b029392505050565b6000610d7460ff841683610ee3565b600082610fa257610fa2610e2e565b500490565b60008219821115610fba57610fba610ded565b500190565b60006001600160801b0383811690831681811015610fdf57610fdf610ded565b039392505050565b60006001600160401b0383811690831681811015610fdf57610fdf610ded56fea264697066735822122001d7215ef4661f65a8b605edde02bd995d1f1822ea95c563bd973bdf5bb3929f64736f6c63430008080033",
|
|
254
|
+
"linkReferences": {},
|
|
255
|
+
"deployedLinkReferences": {}
|
|
256
|
+
}
|