@ensuro/core 2.0.0-beta1 → 2.0.0-beta10
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/README.md +23 -14
- package/build/contracts/AccessManager.sol/AccessManager.json +559 -0
- package/build/contracts/ERC4626AssetManager.sol/ERC4626AssetManager.json +219 -0
- package/build/contracts/EToken.sol/EToken.json +134 -52
- package/build/contracts/LPManualWhitelist.sol/LPManualWhitelist.json +4 -4
- package/build/contracts/LiquidityThresholdAssetManager.sol/LiquidityThresholdAssetManager.json +203 -0
- package/build/contracts/Policy.sol/Policy.json +2 -2
- package/build/contracts/PolicyPool.sol/PolicyPool.json +437 -61
- package/build/contracts/PolicyPoolComponent.sol/PolicyPoolComponent.json +2 -2
- package/build/contracts/PremiumsAccount.sol/PremiumsAccount.json +123 -16
- package/build/contracts/Reserve.sol/Reserve.json +66 -8
- package/build/contracts/RiskModule.sol/RiskModule.json +2 -2
- package/build/contracts/SignedQuoteRiskModule.sol/SignedQuoteRiskModule.json +960 -0
- package/build/contracts/TimeScaled.sol/TimeScaled.json +3 -17
- package/build/contracts/TrustfulRiskModule.sol/TrustfulRiskModule.json +5 -5
- package/build/contracts/{WadRayMath.sol → dependencies/WadRayMath.sol}/WadRayMath.json +3 -3
- package/build/contracts/interfaces/{IPolicyPoolConfig.sol/IPolicyPoolConfig.json → IAccessManager.sol/IAccessManager.json} +77 -59
- package/build/contracts/interfaces/IAssetManager.sol/IAssetManager.json +109 -0
- package/build/contracts/interfaces/IEToken.sol/IEToken.json +13 -0
- package/build/contracts/interfaces/IPolicyPool.sol/IPolicyPool.json +40 -16
- package/build/contracts/interfaces/IPremiumsAccount.sol/IPremiumsAccount.json +13 -0
- package/build/contracts/mocks/FixedRateVault.sol/FixedRateVault.json +736 -0
- package/build/contracts/mocks/ForwardProxy.sol/ForwardProxy.json +2 -2
- package/build/contracts/mocks/PolicyHolderMock.sol/PolicyHolderMock.json +28 -2
- package/build/contracts/mocks/PolicyPoolComponentMock.sol/PolicyPoolComponentMock.json +2 -2
- package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMock.json +118 -19
- package/build/contracts/mocks/PolicyPoolMock.sol/PolicyPoolMockForward.json +6 -6
- package/build/contracts/mocks/RiskModuleMock.sol/RiskModuleMock.json +764 -0
- package/build/contracts/mocks/TestCurrency.sol/TestCurrency.json +2 -2
- package/build/contracts/mocks/TestNFT.sol/TestNFT.json +2 -2
- package/contracts/AccessManager.sol +103 -0
- package/contracts/ERC4626AssetManager.sol +52 -0
- package/contracts/EToken.sol +123 -87
- package/contracts/LPManualWhitelist.sol +1 -1
- package/contracts/LiquidityThresholdAssetManager.sol +160 -0
- package/contracts/Policy.sol +1 -1
- package/contracts/PolicyPool.sol +333 -115
- package/contracts/PolicyPoolComponent.sol +36 -41
- package/contracts/PremiumsAccount.sol +285 -79
- package/contracts/Reserve.sol +183 -4
- package/contracts/RiskModule.sol +26 -19
- package/contracts/SignedQuoteRiskModule.sol +241 -0
- package/contracts/TimeScaled.sol +19 -15
- package/contracts/TrustfulRiskModule.sol +62 -2
- package/contracts/dependencies/WadRayMath.sol +126 -0
- package/contracts/interfaces/IAccessManager.sol +148 -0
- package/contracts/interfaces/IAssetManager.sol +84 -0
- package/contracts/interfaces/IEToken.sol +25 -2
- package/contracts/interfaces/ILPWhitelist.sol +17 -0
- package/contracts/interfaces/IPolicyPool.sol +20 -13
- package/contracts/interfaces/IPolicyPoolComponent.sol +3 -0
- package/contracts/interfaces/IPremiumsAccount.sol +5 -0
- package/contracts/interfaces/IRiskModule.sol +67 -4
- package/contracts/mocks/FixedRateVault.sol +85 -0
- package/contracts/mocks/PolicyHolderMock.sol +21 -0
- package/contracts/mocks/PolicyPoolMock.sol +41 -15
- package/contracts/mocks/RiskModuleMock.sol +75 -0
- package/js/test-utils.js +227 -149
- package/package.json +1 -1
- package/build/contracts/FlightDelayRiskModule.sol/FlightDelayRiskModule.json +0 -890
- package/build/contracts/PolicyNFT.sol/PolicyNFT.json +0 -583
- package/build/contracts/PolicyPoolConfig.sol/PolicyPoolConfig.json +0 -691
- package/build/contracts/dependencies/ChainlinkClientUpgradeable.sol/ChainlinkClientUpgradeable.json +0 -63
- package/build/contracts/interfaces/IPolicyNFT.sol/IPolicyNFT.json +0 -321
- package/build/contracts/mocks/LinkTokenMock.sol/LinkTokenMock.json +0 -370
- package/build/contracts/mocks/TestCurrencyUUPS.sol/TestCurrencyUUPS.json +0 -353
- package/build/contracts/upgraded/IPolicyNFTv1.sol/IPolicyNFTv1.json +0 -322
- package/build/contracts/upgraded/PolicyNFTv1.sol/PolicyNFTv1.json +0 -584
- package/build/contracts/upgraded/PolicyNFTv1.sol/PolicyNFTv1_Upgrade.json +0 -615
- package/contracts/FlightDelayRiskModule.sol +0 -217
- package/contracts/PolicyNFT.sol +0 -96
- package/contracts/PolicyPoolConfig.sol +0 -204
- package/contracts/WadRayMath.sol +0 -135
- package/contracts/dependencies/ChainlinkClientUpgradeable.sol +0 -371
- package/contracts/interfaces/IPolicyNFT.sol +0 -15
- package/contracts/interfaces/IPolicyPoolConfig.sol +0 -96
- package/contracts/mocks/LinkTokenMock.sol +0 -30
- package/contracts/upgraded/IPolicyNFTv1.sol +0 -15
- package/contracts/upgraded/PolicyNFTv1.sol +0 -126
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "ERC4626AssetManager",
|
|
4
|
+
"sourceName": "contracts/ERC4626AssetManager.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "contract IERC20Metadata",
|
|
10
|
+
"name": "asset_",
|
|
11
|
+
"type": "address"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"internalType": "contract IERC4626",
|
|
15
|
+
"name": "vault_",
|
|
16
|
+
"type": "address"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"stateMutability": "nonpayable",
|
|
20
|
+
"type": "constructor"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"anonymous": false,
|
|
24
|
+
"inputs": [
|
|
25
|
+
{
|
|
26
|
+
"indexed": false,
|
|
27
|
+
"internalType": "int256",
|
|
28
|
+
"name": "earnings",
|
|
29
|
+
"type": "int256"
|
|
30
|
+
}
|
|
31
|
+
],
|
|
32
|
+
"name": "EarningsRecorded",
|
|
33
|
+
"type": "event"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"anonymous": false,
|
|
37
|
+
"inputs": [
|
|
38
|
+
{
|
|
39
|
+
"indexed": true,
|
|
40
|
+
"internalType": "enum IAccessManager.GovernanceActions",
|
|
41
|
+
"name": "action",
|
|
42
|
+
"type": "uint8"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"indexed": false,
|
|
46
|
+
"internalType": "uint256",
|
|
47
|
+
"name": "value",
|
|
48
|
+
"type": "uint256"
|
|
49
|
+
}
|
|
50
|
+
],
|
|
51
|
+
"name": "GovernanceAction",
|
|
52
|
+
"type": "event"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"anonymous": false,
|
|
56
|
+
"inputs": [
|
|
57
|
+
{
|
|
58
|
+
"indexed": false,
|
|
59
|
+
"internalType": "uint256",
|
|
60
|
+
"name": "amount",
|
|
61
|
+
"type": "uint256"
|
|
62
|
+
}
|
|
63
|
+
],
|
|
64
|
+
"name": "MoneyDeinvested",
|
|
65
|
+
"type": "event"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"anonymous": false,
|
|
69
|
+
"inputs": [
|
|
70
|
+
{
|
|
71
|
+
"indexed": false,
|
|
72
|
+
"internalType": "uint256",
|
|
73
|
+
"name": "amount",
|
|
74
|
+
"type": "uint256"
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
"name": "MoneyInvested",
|
|
78
|
+
"type": "event"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"inputs": [],
|
|
82
|
+
"name": "connect",
|
|
83
|
+
"outputs": [],
|
|
84
|
+
"stateMutability": "nonpayable",
|
|
85
|
+
"type": "function"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"inputs": [],
|
|
89
|
+
"name": "deinvestAll",
|
|
90
|
+
"outputs": [
|
|
91
|
+
{
|
|
92
|
+
"internalType": "int256",
|
|
93
|
+
"name": "earnings",
|
|
94
|
+
"type": "int256"
|
|
95
|
+
}
|
|
96
|
+
],
|
|
97
|
+
"stateMutability": "nonpayable",
|
|
98
|
+
"type": "function"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"inputs": [],
|
|
102
|
+
"name": "getInvestmentValue",
|
|
103
|
+
"outputs": [
|
|
104
|
+
{
|
|
105
|
+
"internalType": "uint256",
|
|
106
|
+
"name": "",
|
|
107
|
+
"type": "uint256"
|
|
108
|
+
}
|
|
109
|
+
],
|
|
110
|
+
"stateMutability": "view",
|
|
111
|
+
"type": "function"
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
"inputs": [],
|
|
115
|
+
"name": "liquidityMax",
|
|
116
|
+
"outputs": [
|
|
117
|
+
{
|
|
118
|
+
"internalType": "uint256",
|
|
119
|
+
"name": "",
|
|
120
|
+
"type": "uint256"
|
|
121
|
+
}
|
|
122
|
+
],
|
|
123
|
+
"stateMutability": "view",
|
|
124
|
+
"type": "function"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"inputs": [],
|
|
128
|
+
"name": "liquidityMiddle",
|
|
129
|
+
"outputs": [
|
|
130
|
+
{
|
|
131
|
+
"internalType": "uint256",
|
|
132
|
+
"name": "",
|
|
133
|
+
"type": "uint256"
|
|
134
|
+
}
|
|
135
|
+
],
|
|
136
|
+
"stateMutability": "view",
|
|
137
|
+
"type": "function"
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"inputs": [],
|
|
141
|
+
"name": "liquidityMin",
|
|
142
|
+
"outputs": [
|
|
143
|
+
{
|
|
144
|
+
"internalType": "uint256",
|
|
145
|
+
"name": "",
|
|
146
|
+
"type": "uint256"
|
|
147
|
+
}
|
|
148
|
+
],
|
|
149
|
+
"stateMutability": "view",
|
|
150
|
+
"type": "function"
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
"inputs": [],
|
|
154
|
+
"name": "rebalance",
|
|
155
|
+
"outputs": [],
|
|
156
|
+
"stateMutability": "nonpayable",
|
|
157
|
+
"type": "function"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"inputs": [],
|
|
161
|
+
"name": "recordEarnings",
|
|
162
|
+
"outputs": [
|
|
163
|
+
{
|
|
164
|
+
"internalType": "int256",
|
|
165
|
+
"name": "",
|
|
166
|
+
"type": "int256"
|
|
167
|
+
}
|
|
168
|
+
],
|
|
169
|
+
"stateMutability": "nonpayable",
|
|
170
|
+
"type": "function"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"inputs": [
|
|
174
|
+
{
|
|
175
|
+
"internalType": "uint256",
|
|
176
|
+
"name": "paymentAmount",
|
|
177
|
+
"type": "uint256"
|
|
178
|
+
}
|
|
179
|
+
],
|
|
180
|
+
"name": "refillWallet",
|
|
181
|
+
"outputs": [
|
|
182
|
+
{
|
|
183
|
+
"internalType": "uint256",
|
|
184
|
+
"name": "deinvest",
|
|
185
|
+
"type": "uint256"
|
|
186
|
+
}
|
|
187
|
+
],
|
|
188
|
+
"stateMutability": "nonpayable",
|
|
189
|
+
"type": "function"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"inputs": [
|
|
193
|
+
{
|
|
194
|
+
"internalType": "uint256",
|
|
195
|
+
"name": "min",
|
|
196
|
+
"type": "uint256"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"internalType": "uint256",
|
|
200
|
+
"name": "middle",
|
|
201
|
+
"type": "uint256"
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
"internalType": "uint256",
|
|
205
|
+
"name": "max",
|
|
206
|
+
"type": "uint256"
|
|
207
|
+
}
|
|
208
|
+
],
|
|
209
|
+
"name": "setLiquidityThresholds",
|
|
210
|
+
"outputs": [],
|
|
211
|
+
"stateMutability": "nonpayable",
|
|
212
|
+
"type": "function"
|
|
213
|
+
}
|
|
214
|
+
],
|
|
215
|
+
"bytecode": "0x60c060405234801561001057600080fd5b506040516115dc3803806115dc83398101604081905261002f9161005e565b6001600160a01b039182166080521660a052610098565b6001600160a01b038116811461005b57600080fd5b50565b6000806040838503121561007157600080fd5b825161007c81610046565b602084015190925061008d81610046565b809150509250929050565b60805160a0516114c4610118600039600081816106380152818161098a01528181610a5c01528181610dea0152610eee0152600081816101390152818161022c015281816103270152818161044701528181610569015281816107d2015281816108c0015281816109ba01528181610bfd0152610f4101526114c46000f3fe608060405234801561001057600080fd5b506004361061009d5760003560e01c80637d7c2a1c116100665780637d7c2a1c146100f45780638d7ddd90146100fc578063948cb71914610104578063cec16f3f1461010c578063f9c4fd1b1461011457600080fd5b8062a9bb8d146100a25780631014a0c2146100b75780633b6612c8146100dc5780634dd93bd3146100e45780634eb978a4146100ec575b600080fd5b6100b56100b03660046111bb565b61011c565b005b6100ca6100c53660046111e7565b610425565b60405190815260200160405180910390f35b6100ca610565565b6100ca610620565b6100ca610712565b6100b56107ba565b6100ca6108bc565b6100b561096b565b6100ca610a27565b6100ca610bf9565b60008051602061146f833981519152600019841461021e576101d37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610195573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101b99190611200565b6101c490600a611324565b6101ce9086611333565b610cb0565b815463ffffffff191663ffffffff9190911617815560266040518581527f7bc647fe5043209e2019aa3503b79c1b0dd83eb61c56013d373a7584ff6bfb139060200160405180910390a25b6000198314610319576102c17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610288573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ac9190611200565b6102b790600a611324565b6101ce9085611333565b815463ffffffff919091166401000000000267ffffffff000000001990911617815560276040518481527f7bc647fe5043209e2019aa3503b79c1b0dd83eb61c56013d373a7584ff6bfb139060200160405180910390a25b6000198214610417576103bc7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190611200565b6103b290600a611324565b6101ce9084611333565b815463ffffffff91909116600160401b026bffffffff00000000000000001990911617815560286040518381527f7bc647fe5043209e2019aa3503b79c1b0dd83eb61c56013d373a7584ff6bfb139060200160405180910390a25b50610420610d19565b505050565b6040516370a0823160e01b815230600482015260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa15801561048e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b29190611355565b905082811061051e5760405162461bcd60e51b815260206004820152602d60248201527f4e6f206e65656420746f20726566696c6c207468652077616c6c657420666f7260448201526c081d1a1a5cc81c185e5b595b9d609a1b60648201526084015b60405180910390fd5b6000610528610620565b905081610533610bf9565b61053d908661136e565b6105479190611381565b925080831115610555578092505b61055e83610dbe565b5050919050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e99190611200565b6105f490600a611324565b60008051602061146f8339815191525461061b9190600160401b900463ffffffff16611394565b905090565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906307a2d13a9082906370a0823190602401602060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b39190611355565b6040518263ffffffff1660e01b81526004016106d191815260200190565b602060405180830381865afa1580156106ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061b9190611355565b60008061071d610620565b60008051602061146f83398151915280549192509060009061074f90600160601b90046001600160801b0316846113b3565b905061075a83610e60565b82546001600160801b0391909116600160601b02600160601b600160e01b03199091161782556040518181527f731c439c5bae15be1344eec709967e046b4f7d3f7e37abeffc5247f448fa18bf9060200160405180910390a19392505050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610821573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108459190611355565b905061084f610565565b81111561087357610870610861610bf9565b61086b9083611381565b610ec9565b50565b61087b6108bc565b8110156108705760006108a761088f610620565b83610898610bf9565b6108a29190611381565b610f25565b905080156108b8576108b881610dbe565b5050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561091c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109409190611200565b61094b90600a611324565b60008051602061146f8339815191525461061b919063ffffffff16611394565b610973610f3f565b60405163095ea7b360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260001960248301527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303816000875af1158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087091906113da565b60008060008051602061146f8339815191526040516370a0823160e01b81523060048201529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063ba0876529082906370a0823190602401602060405180830381865afa158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf9190611355565b6040516001600160e01b031960e084901b1681526004810191909152306024820181905260448201526064016020604051808303816000875af1158015610b1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3e9190611355565b8254909150610b5d90600160601b90046001600160801b0316826113b3565b9250610b6881610e60565b82546001600160801b0391909116600160601b02600160601b600160e01b03199091161782556040518181527fb82d4e0870bf4ae7236ad1de74d6612d04d1b805b47d98c2f40088a193d87c659060200160405180910390a16040518381527f731c439c5bae15be1344eec709967e046b4f7d3f7e37abeffc5247f448fa18bf9060200160405180910390a1505090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7d9190611200565b610c8890600a611324565b60008051602061146f8339815191525461061b9190640100000000900463ffffffff16611394565b600063ffffffff821115610d155760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201526532206269747360d01b6064820152608401610515565b5090565b60008051602061146f833981519152805463ffffffff64010000000082048116911611801590610d615750805463ffffffff600160401b820481166401000000009092041611155b6108705760405162461bcd60e51b815260206004820152602860248201527f56616c69646174696f6e3a204c6971756964697479206c696d69747320617265604482015267081a5b9d985b1a5960c21b6064820152608401610515565b610dc781611075565b604051632d182be560e21b815260048101829052306024820181905260448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063b460af94906064015b6020604051808303816000875af1158015610e3c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b89190611355565b60006001600160801b03821115610d155760405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e20316044820152663238206269747360c81b6064820152608401610515565b610ed28161112c565b604051636e553f6560e01b8152600481018290523060248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636e553f6590604401610e1d565b6000818310610f345781610f36565b825b90505b92915050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316306001600160a01b0316634d15eb036040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fa7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fcb9190611411565b6001600160a01b031663e5a6b10f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611008573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102c9190611411565b6001600160a01b0316146110735760405162461bcd60e51b815260206004820152600e60248201526d082e6e6cae840dad2e6dac2e8c6d60931b6044820152606401610515565b565b60008051602061146f83398151915280546110a9906110a490600160601b90046001600160801b031684610f25565b610e60565b81548290600c906110cb908490600160601b90046001600160801b031661142e565b92506101000a8154816001600160801b0302191690836001600160801b031602179055507fb82d4e0870bf4ae7236ad1de74d6612d04d1b805b47d98c2f40088a193d87c658260405161112091815260200190565b60405180910390a15050565b60008051602061146f83398151915261114482610e60565b81548290600c90611166908490600160601b90046001600160801b031661144e565b92506101000a8154816001600160801b0302191690836001600160801b031602179055507f0f0cdeac88e111e1dd9b9f043e8c671053dedfbaeccabfb144fd51a4f870fcf48260405161112091815260200190565b6000806000606084860312156111d057600080fd5b505081359360208301359350604090920135919050565b6000602082840312156111f957600080fd5b5035919050565b60006020828403121561121257600080fd5b815160ff8116811461122357600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561127b5781600019048211156112615761126161122a565b8085161561126e57918102915b93841c9390800290611245565b509250929050565b60008261129257506001610f39565b8161129f57506000610f39565b81600181146112b557600281146112bf576112db565b6001915050610f39565b60ff8411156112d0576112d061122a565b50506001821b610f39565b5060208310610133831016604e8410600b84101617156112fe575081810a610f39565b6113088383611240565b806000190482111561131c5761131c61122a565b029392505050565b6000610f3660ff841683611283565b60008261135057634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561136757600080fd5b5051919050565b80820180821115610f3957610f3961122a565b81810381811115610f3957610f3961122a565b60008160001904831182151516156113ae576113ae61122a565b500290565b81810360008312801583831316838312821617156113d3576113d361122a565b5092915050565b6000602082840312156113ec57600080fd5b8151801515811461122357600080fd5b6001600160a01b038116811461087057600080fd5b60006020828403121561142357600080fd5b8151611223816113fc565b6001600160801b038281168282160390808211156113d3576113d361122a565b6001600160801b038181168382160190808211156113d3576113d361122a56fe2285f21cf946f4f139f84d60d1bd42e41b7cecbb3685384f294f426ac09f5f46a2646970667358221220eff919475ac10489afd4e7c0380833d6f65cb65c9df984aa7cfe1bef88dc514664736f6c63430008100033",
|
|
216
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061009d5760003560e01c80637d7c2a1c116100665780637d7c2a1c146100f45780638d7ddd90146100fc578063948cb71914610104578063cec16f3f1461010c578063f9c4fd1b1461011457600080fd5b8062a9bb8d146100a25780631014a0c2146100b75780633b6612c8146100dc5780634dd93bd3146100e45780634eb978a4146100ec575b600080fd5b6100b56100b03660046111bb565b61011c565b005b6100ca6100c53660046111e7565b610425565b60405190815260200160405180910390f35b6100ca610565565b6100ca610620565b6100ca610712565b6100b56107ba565b6100ca6108bc565b6100b561096b565b6100ca610a27565b6100ca610bf9565b60008051602061146f833981519152600019841461021e576101d37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610195573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101b99190611200565b6101c490600a611324565b6101ce9086611333565b610cb0565b815463ffffffff191663ffffffff9190911617815560266040518581527f7bc647fe5043209e2019aa3503b79c1b0dd83eb61c56013d373a7584ff6bfb139060200160405180910390a25b6000198314610319576102c17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610288573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ac9190611200565b6102b790600a611324565b6101ce9085611333565b815463ffffffff919091166401000000000267ffffffff000000001990911617815560276040518481527f7bc647fe5043209e2019aa3503b79c1b0dd83eb61c56013d373a7584ff6bfb139060200160405180910390a25b6000198214610417576103bc7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103a79190611200565b6103b290600a611324565b6101ce9084611333565b815463ffffffff91909116600160401b026bffffffff00000000000000001990911617815560286040518381527f7bc647fe5043209e2019aa3503b79c1b0dd83eb61c56013d373a7584ff6bfb139060200160405180910390a25b50610420610d19565b505050565b6040516370a0823160e01b815230600482015260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa15801561048e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b29190611355565b905082811061051e5760405162461bcd60e51b815260206004820152602d60248201527f4e6f206e65656420746f20726566696c6c207468652077616c6c657420666f7260448201526c081d1a1a5cc81c185e5b595b9d609a1b60648201526084015b60405180910390fd5b6000610528610620565b905081610533610bf9565b61053d908661136e565b6105479190611381565b925080831115610555578092505b61055e83610dbe565b5050919050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105e99190611200565b6105f490600a611324565b60008051602061146f8339815191525461061b9190600160401b900463ffffffff16611394565b905090565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906307a2d13a9082906370a0823190602401602060405180830381865afa15801561068f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b39190611355565b6040518263ffffffff1660e01b81526004016106d191815260200190565b602060405180830381865afa1580156106ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061b9190611355565b60008061071d610620565b60008051602061146f83398151915280549192509060009061074f90600160601b90046001600160801b0316846113b3565b905061075a83610e60565b82546001600160801b0391909116600160601b02600160601b600160e01b03199091161782556040518181527f731c439c5bae15be1344eec709967e046b4f7d3f7e37abeffc5247f448fa18bf9060200160405180910390a19392505050565b6040516370a0823160e01b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610821573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108459190611355565b905061084f610565565b81111561087357610870610861610bf9565b61086b9083611381565b610ec9565b50565b61087b6108bc565b8110156108705760006108a761088f610620565b83610898610bf9565b6108a29190611381565b610f25565b905080156108b8576108b881610dbe565b5050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561091c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109409190611200565b61094b90600a611324565b60008051602061146f8339815191525461061b919063ffffffff16611394565b610973610f3f565b60405163095ea7b360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116600483015260001960248301527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303816000875af1158015610a03573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087091906113da565b60008060008051602061146f8339815191526040516370a0823160e01b81523060048201529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063ba0876529082906370a0823190602401602060405180830381865afa158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf9190611355565b6040516001600160e01b031960e084901b1681526004810191909152306024820181905260448201526064016020604051808303816000875af1158015610b1a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b3e9190611355565b8254909150610b5d90600160601b90046001600160801b0316826113b3565b9250610b6881610e60565b82546001600160801b0391909116600160601b02600160601b600160e01b03199091161782556040518181527fb82d4e0870bf4ae7236ad1de74d6612d04d1b805b47d98c2f40088a193d87c659060200160405180910390a16040518381527f731c439c5bae15be1344eec709967e046b4f7d3f7e37abeffc5247f448fa18bf9060200160405180910390a1505090565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c59573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7d9190611200565b610c8890600a611324565b60008051602061146f8339815191525461061b9190640100000000900463ffffffff16611394565b600063ffffffff821115610d155760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201526532206269747360d01b6064820152608401610515565b5090565b60008051602061146f833981519152805463ffffffff64010000000082048116911611801590610d615750805463ffffffff600160401b820481166401000000009092041611155b6108705760405162461bcd60e51b815260206004820152602860248201527f56616c69646174696f6e3a204c6971756964697479206c696d69747320617265604482015267081a5b9d985b1a5960c21b6064820152608401610515565b610dc781611075565b604051632d182be560e21b815260048101829052306024820181905260448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063b460af94906064015b6020604051808303816000875af1158015610e3c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b89190611355565b60006001600160801b03821115610d155760405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e20316044820152663238206269747360c81b6064820152608401610515565b610ed28161112c565b604051636e553f6560e01b8152600481018290523060248201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690636e553f6590604401610e1d565b6000818310610f345781610f36565b825b90505b92915050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316306001600160a01b0316634d15eb036040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fa7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fcb9190611411565b6001600160a01b031663e5a6b10f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611008573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061102c9190611411565b6001600160a01b0316146110735760405162461bcd60e51b815260206004820152600e60248201526d082e6e6cae840dad2e6dac2e8c6d60931b6044820152606401610515565b565b60008051602061146f83398151915280546110a9906110a490600160601b90046001600160801b031684610f25565b610e60565b81548290600c906110cb908490600160601b90046001600160801b031661142e565b92506101000a8154816001600160801b0302191690836001600160801b031602179055507fb82d4e0870bf4ae7236ad1de74d6612d04d1b805b47d98c2f40088a193d87c658260405161112091815260200190565b60405180910390a15050565b60008051602061146f83398151915261114482610e60565b81548290600c90611166908490600160601b90046001600160801b031661144e565b92506101000a8154816001600160801b0302191690836001600160801b031602179055507f0f0cdeac88e111e1dd9b9f043e8c671053dedfbaeccabfb144fd51a4f870fcf48260405161112091815260200190565b6000806000606084860312156111d057600080fd5b505081359360208301359350604090920135919050565b6000602082840312156111f957600080fd5b5035919050565b60006020828403121561121257600080fd5b815160ff8116811461122357600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561127b5781600019048211156112615761126161122a565b8085161561126e57918102915b93841c9390800290611245565b509250929050565b60008261129257506001610f39565b8161129f57506000610f39565b81600181146112b557600281146112bf576112db565b6001915050610f39565b60ff8411156112d0576112d061122a565b50506001821b610f39565b5060208310610133831016604e8410600b84101617156112fe575081810a610f39565b6113088383611240565b806000190482111561131c5761131c61122a565b029392505050565b6000610f3660ff841683611283565b60008261135057634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561136757600080fd5b5051919050565b80820180821115610f3957610f3961122a565b81810381811115610f3957610f3961122a565b60008160001904831182151516156113ae576113ae61122a565b500290565b81810360008312801583831316838312821617156113d3576113d361122a565b5092915050565b6000602082840312156113ec57600080fd5b8151801515811461122357600080fd5b6001600160a01b038116811461087057600080fd5b60006020828403121561142357600080fd5b8151611223816113fc565b6001600160801b038281168282160390808211156113d3576113d361122a565b6001600160801b038181168382160190808211156113d3576113d361122a56fe2285f21cf946f4f139f84d60d1bd42e41b7cecbb3685384f294f426ac09f5f46a2646970667358221220eff919475ac10489afd4e7c0380833d6f65cb65c9df984aa7cfe1bef88dc514664736f6c63430008100033",
|
|
217
|
+
"linkReferences": {},
|
|
218
|
+
"deployedLinkReferences": {}
|
|
219
|
+
}
|