@pendle/core-v2 4.5.1-oracle-beta → 4.5.2

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 (46) hide show
  1. package/build/artifacts/contracts/interfaces/IPPtLpOracle.sol/IPPtLpOracle.dbg.json +4 -0
  2. package/build/artifacts/contracts/interfaces/{IPPYLpOracle.sol/IPPYLpOracle.json → IPPtLpOracle.sol/IPPtLpOracle.json} +2 -50
  3. package/build/artifacts/contracts/offchain-helpers/SupplyCapReader.sol/IPossibleSupplyCapInterface.dbg.json +4 -0
  4. package/build/artifacts/contracts/offchain-helpers/SupplyCapReader.sol/IPossibleSupplyCapInterface.json +63 -0
  5. package/build/artifacts/contracts/offchain-helpers/SupplyCapReader.sol/SupplyCapReader.dbg.json +4 -0
  6. package/build/artifacts/contracts/offchain-helpers/SupplyCapReader.sol/SupplyCapReader.json +35 -0
  7. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.dbg.json +1 -1
  8. package/build/artifacts/contracts/oracles/PendleLpOracleLib.sol/PendleLpOracleLib.json +2 -2
  9. package/build/artifacts/contracts/oracles/PendlePtLpOracle.sol/PendlePtLpOracle.dbg.json +4 -0
  10. package/build/artifacts/contracts/oracles/PendlePtLpOracle.sol/PendlePtLpOracle.json +367 -0
  11. package/build/artifacts/contracts/oracles/PendlePtOracleLib.sol/PendlePtOracleLib.dbg.json +4 -0
  12. package/build/artifacts/contracts/oracles/{PendlePYOracleLib.sol/PendlePYOracleLib.json → PendlePtOracleLib.sol/PendlePtOracleLib.json} +4 -4
  13. package/build/artifacts/contracts/oracles/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.dbg.json +1 -1
  14. package/build/artifacts/contracts/oracles/samples/BoringLpGlpOracle.sol/BoringLpGlpOracle.json +2 -2
  15. package/build/artifacts/contracts/oracles/samples/BoringPtUsdChainlinkOracle.sol/BoringPtUsdChainlinkOracle.dbg.json +4 -0
  16. package/build/artifacts/contracts/oracles/samples/BoringPtUsdChainlinkOracle.sol/BoringPtUsdChainlinkOracle.json +157 -0
  17. package/contracts/interfaces/{IPPYLpOracle.sol → IPPtLpOracle.sol} +1 -5
  18. package/contracts/offchain-helpers/SupplyCapReader.sol +25 -0
  19. package/contracts/oracles/PendleLpOracleLib.sol +4 -4
  20. package/contracts/oracles/{PendlePYLpOracle.sol → PendlePtLpOracle.sol} +16 -44
  21. package/contracts/oracles/{PendlePYOracleLib.sol → PendlePtOracleLib.sol} +1 -31
  22. package/contracts/oracles/samples/BoringLpGlpOracle.sol +2 -2
  23. package/contracts/oracles/samples/{BoringPYUsdChainlinkAssetOracle.sol → BoringPtUsdChainlinkOracle.sol} +12 -36
  24. package/deployments/1-markets/UNIETH-MAINNET-SEP2024.json +13 -0
  25. package/deployments/1-offchain-helper.json +2 -1
  26. package/deployments/10-offchain-helper.json +2 -1
  27. package/deployments/42161-offchain-helper.json +2 -1
  28. package/deployments/5000-offchain-helper.json +2 -1
  29. package/deployments/56-offchain-helper.json +2 -1
  30. package/package.json +1 -1
  31. package/typechain-types/IPossibleSupplyCapInterface.ts +142 -0
  32. package/typechain-types/SupplyCapReader.ts +105 -0
  33. package/typechain-types/factories/BoringLpGlpOracle__factory.ts +1 -1
  34. package/typechain-types/factories/IPossibleSupplyCapInterface__factory.ts +82 -0
  35. package/typechain-types/factories/SupplyCapReader__factory.ts +88 -0
  36. package/typechain-types/hardhat.d.ts +18 -0
  37. package/typechain-types/index.ts +4 -0
  38. package/build/artifacts/contracts/interfaces/IPPYLpOracle.sol/IPPYLpOracle.dbg.json +0 -4
  39. package/build/artifacts/contracts/oracles/PendlePYLpOracle.sol/PendlePYLpOracle.dbg.json +0 -4
  40. package/build/artifacts/contracts/oracles/PendlePYLpOracle.sol/PendlePYLpOracle.json +0 -422
  41. package/build/artifacts/contracts/oracles/PendlePYOracleLib.sol/PendlePYOracleLib.dbg.json +0 -4
  42. package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.dbg.json +0 -4
  43. package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkAssetOracle.sol/BoringPYUsdChainlinkAssetOracle.json +0 -183
  44. package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.dbg.json +0 -4
  45. package/build/artifacts/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol/BoringPYUsdChainlinkSYOracle.json +0 -183
  46. package/contracts/oracles/samples/BoringPYUsdChainlinkSYOracle.sol +0 -102
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/432b0458b06757d664d5d5469e35eccb.json"
4
+ }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "_format": "hh-sol-artifact-1",
3
- "contractName": "IPPYLpOracle",
4
- "sourceName": "contracts/interfaces/IPPYLpOracle.sol",
3
+ "contractName": "IPPtLpOracle",
4
+ "sourceName": "contracts/interfaces/IPPtLpOracle.sol",
5
5
  "abi": [
6
6
  {
7
7
  "anonymous": false,
@@ -145,54 +145,6 @@
145
145
  ],
146
146
  "stateMutability": "view",
147
147
  "type": "function"
148
- },
149
- {
150
- "inputs": [
151
- {
152
- "internalType": "address",
153
- "name": "market",
154
- "type": "address"
155
- },
156
- {
157
- "internalType": "uint32",
158
- "name": "duration",
159
- "type": "uint32"
160
- }
161
- ],
162
- "name": "getYtToAssetRate",
163
- "outputs": [
164
- {
165
- "internalType": "uint256",
166
- "name": "",
167
- "type": "uint256"
168
- }
169
- ],
170
- "stateMutability": "view",
171
- "type": "function"
172
- },
173
- {
174
- "inputs": [
175
- {
176
- "internalType": "address",
177
- "name": "market",
178
- "type": "address"
179
- },
180
- {
181
- "internalType": "uint32",
182
- "name": "duration",
183
- "type": "uint32"
184
- }
185
- ],
186
- "name": "getYtToSyRate",
187
- "outputs": [
188
- {
189
- "internalType": "uint256",
190
- "name": "",
191
- "type": "uint256"
192
- }
193
- ],
194
- "stateMutability": "view",
195
- "type": "function"
196
148
  }
197
149
  ],
198
150
  "bytecode": "0x",
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/432b0458b06757d664d5d5469e35eccb.json"
4
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IPossibleSupplyCapInterface",
4
+ "sourceName": "contracts/offchain-helpers/SupplyCapReader.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "getAbsoluteSupplyCap",
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": "getAbsoluteTotalSupply",
22
+ "outputs": [
23
+ {
24
+ "internalType": "uint256",
25
+ "name": "",
26
+ "type": "uint256"
27
+ }
28
+ ],
29
+ "stateMutability": "view",
30
+ "type": "function"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "supplyCap",
35
+ "outputs": [
36
+ {
37
+ "internalType": "uint256",
38
+ "name": "",
39
+ "type": "uint256"
40
+ }
41
+ ],
42
+ "stateMutability": "view",
43
+ "type": "function"
44
+ },
45
+ {
46
+ "inputs": [],
47
+ "name": "totalSupply",
48
+ "outputs": [
49
+ {
50
+ "internalType": "uint256",
51
+ "name": "",
52
+ "type": "uint256"
53
+ }
54
+ ],
55
+ "stateMutability": "view",
56
+ "type": "function"
57
+ }
58
+ ],
59
+ "bytecode": "0x",
60
+ "deployedBytecode": "0x",
61
+ "linkReferences": {},
62
+ "deployedLinkReferences": {}
63
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/432b0458b06757d664d5d5469e35eccb.json"
4
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "SupplyCapReader",
4
+ "sourceName": "contracts/offchain-helpers/SupplyCapReader.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "syAddr",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "name": "read",
15
+ "outputs": [
16
+ {
17
+ "internalType": "uint256",
18
+ "name": "currentSupply",
19
+ "type": "uint256"
20
+ },
21
+ {
22
+ "internalType": "uint256",
23
+ "name": "supplyCap",
24
+ "type": "uint256"
25
+ }
26
+ ],
27
+ "stateMutability": "view",
28
+ "type": "function"
29
+ }
30
+ ],
31
+ "bytecode": "0x608060405234801561001057600080fd5b5061027d806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063a087a87e14610030575b600080fd5b61004361003e3660046101fe565b61005c565b6040805192835260208301919091520160405180910390f35b6000806000839050806001600160a01b0316630186533d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156100be575060408051601f3d908101601f191682019092526100bb9181019061022e565b60015b61018f57806001600160a01b0316638f770ad06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610100573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610124919061022e565b9150806001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610164573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610188919061022e565b92506101f8565b809250816001600160a01b03166380975cc46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f4919061022e565b9350505b50915091565b60006020828403121561021057600080fd5b81356001600160a01b038116811461022757600080fd5b9392505050565b60006020828403121561024057600080fd5b505191905056fea264697066735822122086be295fb62371de6ec86acab7ca4bbd9f43202da5f9337fb67a85ca99aeb7cc64736f6c63430008170033",
32
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063a087a87e14610030575b600080fd5b61004361003e3660046101fe565b61005c565b6040805192835260208301919091520160405180910390f35b6000806000839050806001600160a01b0316630186533d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156100be575060408051601f3d908101601f191682019092526100bb9181019061022e565b60015b61018f57806001600160a01b0316638f770ad06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610100573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610124919061022e565b9150806001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610164573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610188919061022e565b92506101f8565b809250816001600160a01b03166380975cc46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f4919061022e565b9350505b50915091565b60006020828403121561021057600080fd5b81356001600160a01b038116811461022757600080fd5b9392505050565b60006020828403121561024057600080fd5b505191905056fea264697066735822122086be295fb62371de6ec86acab7ca4bbd9f43202da5f9337fb67a85ca99aeb7cc64736f6c63430008170033",
33
+ "linkReferences": {},
34
+ "deployedLinkReferences": {}
35
+ }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/bfd4f782b72a070787feb0e0595c089f.json"
3
+ "buildInfo": "../../../build-info/432b0458b06757d664d5d5469e35eccb.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "PendleLpOracleLib",
4
4
  "sourceName": "contracts/oracles/PendleLpOracleLib.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212200738d7228ff96a3a764e28ffdd65ee3f5e6c5388e4d5bc49d5a37aa1d69d389a64736f6c63430008170033",
7
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212200738d7228ff96a3a764e28ffdd65ee3f5e6c5388e4d5bc49d5a37aa1d69d389a64736f6c63430008170033",
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220821fc7a4403d26f8c1de25b3efafe93abc18c4685c2f4440af1676898b573f3864736f6c63430008170033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220821fc7a4403d26f8c1de25b3efafe93abc18c4685c2f4440af1676898b573f3864736f6c63430008170033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/432b0458b06757d664d5d5469e35eccb.json"
4
+ }
@@ -0,0 +1,367 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "PendlePtLpOracle",
4
+ "sourceName": "contracts/oracles/PendlePtLpOracle.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint16",
10
+ "name": "_blockCycleNumerator",
11
+ "type": "uint16"
12
+ }
13
+ ],
14
+ "stateMutability": "nonpayable",
15
+ "type": "constructor"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "uint256",
21
+ "name": "blockCycleNumerator",
22
+ "type": "uint256"
23
+ }
24
+ ],
25
+ "name": "InvalidBlockRate",
26
+ "type": "error"
27
+ },
28
+ {
29
+ "inputs": [
30
+ {
31
+ "internalType": "int256",
32
+ "name": "exchangeRate",
33
+ "type": "int256"
34
+ }
35
+ ],
36
+ "name": "MarketExchangeRateBelowOne",
37
+ "type": "error"
38
+ },
39
+ {
40
+ "inputs": [],
41
+ "name": "MarketExpired",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [],
46
+ "name": "MarketProportionMustNotEqualOne",
47
+ "type": "error"
48
+ },
49
+ {
50
+ "inputs": [
51
+ {
52
+ "internalType": "int256",
53
+ "name": "rateScalar",
54
+ "type": "int256"
55
+ }
56
+ ],
57
+ "name": "MarketRateScalarBelowZero",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [
62
+ {
63
+ "internalType": "int256",
64
+ "name": "totalPt",
65
+ "type": "int256"
66
+ },
67
+ {
68
+ "internalType": "int256",
69
+ "name": "totalAsset",
70
+ "type": "int256"
71
+ }
72
+ ],
73
+ "name": "MarketZeroTotalPtOrTotalAsset",
74
+ "type": "error"
75
+ },
76
+ {
77
+ "inputs": [
78
+ {
79
+ "internalType": "uint32",
80
+ "name": "duration",
81
+ "type": "uint32"
82
+ },
83
+ {
84
+ "internalType": "uint32",
85
+ "name": "cardinalityRequired",
86
+ "type": "uint32"
87
+ }
88
+ ],
89
+ "name": "TwapDurationTooLarge",
90
+ "type": "error"
91
+ },
92
+ {
93
+ "anonymous": false,
94
+ "inputs": [
95
+ {
96
+ "indexed": false,
97
+ "internalType": "uint8",
98
+ "name": "version",
99
+ "type": "uint8"
100
+ }
101
+ ],
102
+ "name": "Initialized",
103
+ "type": "event"
104
+ },
105
+ {
106
+ "anonymous": false,
107
+ "inputs": [
108
+ {
109
+ "indexed": true,
110
+ "internalType": "address",
111
+ "name": "previousOwner",
112
+ "type": "address"
113
+ },
114
+ {
115
+ "indexed": true,
116
+ "internalType": "address",
117
+ "name": "newOwner",
118
+ "type": "address"
119
+ }
120
+ ],
121
+ "name": "OwnershipTransferred",
122
+ "type": "event"
123
+ },
124
+ {
125
+ "anonymous": false,
126
+ "inputs": [
127
+ {
128
+ "indexed": false,
129
+ "internalType": "uint16",
130
+ "name": "newBlockCycleNumerator",
131
+ "type": "uint16"
132
+ }
133
+ ],
134
+ "name": "SetBlockCycleNumerator",
135
+ "type": "event"
136
+ },
137
+ {
138
+ "inputs": [],
139
+ "name": "BLOCK_CYCLE_DENOMINATOR",
140
+ "outputs": [
141
+ {
142
+ "internalType": "uint16",
143
+ "name": "",
144
+ "type": "uint16"
145
+ }
146
+ ],
147
+ "stateMutability": "view",
148
+ "type": "function"
149
+ },
150
+ {
151
+ "inputs": [],
152
+ "name": "blockCycleNumerator",
153
+ "outputs": [
154
+ {
155
+ "internalType": "uint16",
156
+ "name": "",
157
+ "type": "uint16"
158
+ }
159
+ ],
160
+ "stateMutability": "view",
161
+ "type": "function"
162
+ },
163
+ {
164
+ "inputs": [],
165
+ "name": "claimOwnership",
166
+ "outputs": [],
167
+ "stateMutability": "nonpayable",
168
+ "type": "function"
169
+ },
170
+ {
171
+ "inputs": [
172
+ {
173
+ "internalType": "address",
174
+ "name": "market",
175
+ "type": "address"
176
+ },
177
+ {
178
+ "internalType": "uint32",
179
+ "name": "duration",
180
+ "type": "uint32"
181
+ }
182
+ ],
183
+ "name": "getLpToAssetRate",
184
+ "outputs": [
185
+ {
186
+ "internalType": "uint256",
187
+ "name": "",
188
+ "type": "uint256"
189
+ }
190
+ ],
191
+ "stateMutability": "view",
192
+ "type": "function"
193
+ },
194
+ {
195
+ "inputs": [
196
+ {
197
+ "internalType": "address",
198
+ "name": "market",
199
+ "type": "address"
200
+ },
201
+ {
202
+ "internalType": "uint32",
203
+ "name": "duration",
204
+ "type": "uint32"
205
+ }
206
+ ],
207
+ "name": "getLpToSyRate",
208
+ "outputs": [
209
+ {
210
+ "internalType": "uint256",
211
+ "name": "",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "stateMutability": "view",
216
+ "type": "function"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "address",
222
+ "name": "market",
223
+ "type": "address"
224
+ },
225
+ {
226
+ "internalType": "uint32",
227
+ "name": "duration",
228
+ "type": "uint32"
229
+ }
230
+ ],
231
+ "name": "getOracleState",
232
+ "outputs": [
233
+ {
234
+ "internalType": "bool",
235
+ "name": "increaseCardinalityRequired",
236
+ "type": "bool"
237
+ },
238
+ {
239
+ "internalType": "uint16",
240
+ "name": "cardinalityRequired",
241
+ "type": "uint16"
242
+ },
243
+ {
244
+ "internalType": "bool",
245
+ "name": "oldestObservationSatisfied",
246
+ "type": "bool"
247
+ }
248
+ ],
249
+ "stateMutability": "view",
250
+ "type": "function"
251
+ },
252
+ {
253
+ "inputs": [
254
+ {
255
+ "internalType": "address",
256
+ "name": "market",
257
+ "type": "address"
258
+ },
259
+ {
260
+ "internalType": "uint32",
261
+ "name": "duration",
262
+ "type": "uint32"
263
+ }
264
+ ],
265
+ "name": "getPtToAssetRate",
266
+ "outputs": [
267
+ {
268
+ "internalType": "uint256",
269
+ "name": "",
270
+ "type": "uint256"
271
+ }
272
+ ],
273
+ "stateMutability": "view",
274
+ "type": "function"
275
+ },
276
+ {
277
+ "inputs": [
278
+ {
279
+ "internalType": "address",
280
+ "name": "market",
281
+ "type": "address"
282
+ },
283
+ {
284
+ "internalType": "uint32",
285
+ "name": "duration",
286
+ "type": "uint32"
287
+ }
288
+ ],
289
+ "name": "getPtToSyRate",
290
+ "outputs": [
291
+ {
292
+ "internalType": "uint256",
293
+ "name": "",
294
+ "type": "uint256"
295
+ }
296
+ ],
297
+ "stateMutability": "view",
298
+ "type": "function"
299
+ },
300
+ {
301
+ "inputs": [],
302
+ "name": "owner",
303
+ "outputs": [
304
+ {
305
+ "internalType": "address",
306
+ "name": "",
307
+ "type": "address"
308
+ }
309
+ ],
310
+ "stateMutability": "view",
311
+ "type": "function"
312
+ },
313
+ {
314
+ "inputs": [],
315
+ "name": "pendingOwner",
316
+ "outputs": [
317
+ {
318
+ "internalType": "address",
319
+ "name": "",
320
+ "type": "address"
321
+ }
322
+ ],
323
+ "stateMutability": "view",
324
+ "type": "function"
325
+ },
326
+ {
327
+ "inputs": [
328
+ {
329
+ "internalType": "uint16",
330
+ "name": "newBlockCycleNumerator",
331
+ "type": "uint16"
332
+ }
333
+ ],
334
+ "name": "setBlockCycleNumerator",
335
+ "outputs": [],
336
+ "stateMutability": "nonpayable",
337
+ "type": "function"
338
+ },
339
+ {
340
+ "inputs": [
341
+ {
342
+ "internalType": "address",
343
+ "name": "newOwner",
344
+ "type": "address"
345
+ },
346
+ {
347
+ "internalType": "bool",
348
+ "name": "direct",
349
+ "type": "bool"
350
+ },
351
+ {
352
+ "internalType": "bool",
353
+ "name": "renounce",
354
+ "type": "bool"
355
+ }
356
+ ],
357
+ "name": "transferOwnership",
358
+ "outputs": [],
359
+ "stateMutability": "nonpayable",
360
+ "type": "function"
361
+ }
362
+ ],
363
+ "bytecode": "0x60806040523480156200001157600080fd5b5060405162002543380380620025438339810160408190526200003491620002d1565b600154600160a81b900460ff16158080156200005b575060018054600160a01b900460ff16105b806200007d5750303b1580156200007d575060018054600160a01b900460ff16145b620000e65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6001805460ff60a01b1916600160a01b179055801562000114576001805460ff60a81b1916600160a81b1790555b6200011e62000179565b6200012982620001fc565b801562000171576001805460ff60a81b191681556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050620002fe565b600154600160a81b900460ff16620001e85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401620000dd565b600080546001600160a01b03191633179055565b6000546001600160a01b03163314620002585760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620000dd565b6103e861ffff821610156200028757604051632204277360e21b815261ffff82166004820152602401620000dd565b6032805461ffff191661ffff83169081179091556040519081527f30b0568b152eb73b8d1104ca045f37e64f7eae07b09ea9607ab1bdf475012c539060200160405180910390a150565b600060208284031215620002e457600080fd5b815161ffff81168114620002f757600080fd5b9392505050565b612235806200030e6000396000f3fe608060405234801561001057600080fd5b50600436106100a45760003560e01c8063078dfbe7146100a957806340f25951146100be5780634d44ca89146100d15780634e71e0c8146100f757806358f6e5a1146100ff5780636cda98331461011a578063873e96001461012d5780638da5cb5b14610162578063a31426d114610182578063abca0eab14610195578063e30c3978146101a8578063fa040f64146101bb575b600080fd5b6100bc6100b7366004611b0f565b6101c4565b005b6100bc6100cc366004611b6a565b6102ca565b6100e46100df366004611b99565b610369565b6040519081526020015b60405180910390f35b6100bc610387565b60325461010d9061ffff1681565b6040516100ee9190611bd2565b6100e4610128366004611b99565b610432565b61014061013b366004611b99565b610447565b60408051931515845261ffff90921660208401521515908201526060016100ee565b600054610175906001600160a01b031681565b6040516100ee9190611be1565b6100e4610190366004611b99565b6105f6565b6100e46101a3366004611b99565b61060b565b600154610175906001600160a01b031681565b61010d6103e881565b6000546001600160a01b031633146101f75760405162461bcd60e51b81526004016101ee90611bf5565b60405180910390fd5b81156102a8576001600160a01b0383161515806102115750805b6102555760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b60448201526064016101ee565b600080546040516001600160a01b03808716939216916000805160206121e083398151915291a3600080546001600160a01b0385166001600160a01b031991821617909155600180549091169055505050565b600180546001600160a01b0385166001600160a01b0319909116179055505050565b6000546001600160a01b031633146102f45760405162461bcd60e51b81526004016101ee90611bf5565b6103e861ffff8216101561031d5780604051632204277360e21b81526004016101ee9190611bd2565b6032805461ffff191661ffff83161790556040517f30b0568b152eb73b8d1104ca045f37e64f7eae07b09ea9607ab1bdf475012c539061035e908390611bd2565b60405180910390a150565b600061037e6001600160a01b03841683610620565b90505b92915050565b6001546001600160a01b03163381146103e25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e657260448201526064016101ee565b600080546040516001600160a01b03808516939216916000805160206121e083398151915291a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b600061037e6001600160a01b03841683610666565b600080600080600080876001600160a01b031663c3fb90d66040518163ffffffff1660e01b815260040160c060405180830381865afa15801561048e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b29190611c3c565b9550955095505050506104c4876106ad565b61ffff80821690831610965094506000806001600160a01b038a1663252c09d7856104f0886001611ce0565b6104fa9190611d11565b6040518263ffffffff1660e01b81526004016105169190611bd2565b606060405180830381865afa158015610533573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105579190611d49565b9250509150806105d05760405163252c09d760e01b8152600060048201526001600160a01b038b169063252c09d790602401606060405180830381865afa1580156105a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ca9190611d49565b50909250505b6105e063ffffffff8a1642611d87565b8263ffffffff1610955050505050509250925092565b600061037e6001600160a01b0384168361072c565b600061037e6001600160a01b03841683610778565b600080600061062e856107bb565b91509150600061063f8686846109eb565b905081831061065c576106528184610b82565b9350505050610381565b6106528183610b82565b6000806000610674856107bb565b9150915060006106858686846109eb565b9050818310610698579250610381915050565b816106a38483611d9a565b6106529190611db1565b603254600090819061ffff166001816106c86103e887611dc5565b6106d29190611de5565b6106dc9190611e02565b6106e69190611e1f565b6106f1906001611de5565b905061ffff63ffffffff8216111561038157604051632212b64b60e21b815263ffffffff8085166004830152821660248201526044016101ee565b600080600061073a856107bb565b9150915080821061076257610759826107538787610bb1565b90610b82565b92505050610381565b610759816107538787610bb1565b505092915050565b6000806000610786856107bb565b9150915080821061079b576107598585610bb1565b80826107a78787610bb1565b6107b19190611d9a565b6107599190611db1565b600080600080846001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156107ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108239190611e42565b9250509150816001600160a01b0316633ba0b9a96040518163ffffffff1660e01b8152600401602060405180830381865afa158015610866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088a9190611e84565b93506000816001600160a01b031663d2a3584e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f09190611e84565b9050816001600160a01b031663516399df6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610930573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109549190611e9d565b80156109c9575043826001600160a01b03166360e0a9e16040518163ffffffff1660e01b8152600401602060405180830381865afa15801561099a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109be9190611eba565b6001600160801b0316145b156109d6578093506109e3565b6109e08582610c81565b93505b505050915091565b600080846001600160a01b031663794052f360006040518263ffffffff1660e01b8152600401610a1b9190611be1565b61012060405180830381865afa158015610a39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5d9190611f5d565b90506000428260a0015111610a8d57610a7a848360200151610c97565b8251610a869190611fdf565b9050610b59565b6000610a9a838642610cdb565b9050600080610aaa89868a610ddc565b915091506000610ad3610ace856040015185610ac69190611fff565b865190610e4c565b610e6f565b90506000610b18610ae48385611284565b610af690670de0b6b3a7640000611fdf565b88516020880151610b08908690610e4c565b610b129190611fff565b90611284565b9050610b2e84828960000151610b129190611fdf565b610b388285611284565b8660200151610b479190611fff565b610b519190611fdf565b955050505050505b610b78610b7383604001518361128490919063ffffffff16565b6112aa565b9695505050505050565b600080610b97670de0b6b3a764000085611d9a565b9050828181610ba857610ba8611cfb565b04949350505050565b600080836001600160a01b031663e184c9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c169190611e84565b9050428111610c3057670de0b6b3a7640000915050610381565b6000610c3c85856112bd565b90506000610c4a4284611d87565b90506000610c5b610b7384846113e4565b9050610c6f670de0b6b3a764000082610b82565b945050505050610381565b5092915050565b6000818311610c90578161037e565b5090919050565b60008060008312610ca9576001610cad565b6000195b9050610cc9610cc485610cbf86611418565b61142a565b611449565b610cd3908261201f565b949350505050565b610d066040518060800160405280600081526020016000815260200160008152602001600081525090565b60a08401518210610d2a5760405163b2094b5960e01b815260040160405180910390fd5b6000828560a00151610d3c9190611d87565b9050610d48858261145f565b82526020850151610d5a908590610c97565b602083015284511580610d6f57506020820151155b15610d9d578451602083015160405163b1c4aefb60e01b8152600481019290925260248201526044016101ee565b610dbb856000015186610100015184602001518560000151856114bb565b604083015260c0850151610dcf90826113e4565b6060830152509392505050565b600080610e07610df8610cc46001600160a01b03881686610bb1565b670de0b6b3a764000090611284565b91506000610e29856101000151428760a00151610e249190611d87565b6113e4565b90506002610e378483611fdf565b610e41919061204f565b915050935093915050565b600080610e59838561201f565b9050670de0b6b3a7640000815b05949350505050565b6000680238fd42c5cf03ffff198212158015610e94575068070c1cc73b00c800008213155b610ed35760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a5908195e1c1bdb995b9d60821b60448201526064016101ee565b6000821215610f0b57610ee882600003610e6f565b6a0c097ce7bc90715b34b9f160241b81610f0457610f04611cfb565b0592915050565b60006806f05b59d3b20000008312610f4957506806f05b59d3b1ffffff199091019072195e54c5dd42177f53a27172fa9ec63026282760241b610f7f565b6803782dace9d90000008312610f7b57506803782dace9d8ffffff19909101906b1425982cf597cd205cef7380610f7f565b5060015b6064929092029168056bc75e2d6310000068ad78ebc5ac620000008412610fcf5768ad78ebc5ac61ffffff199093019268056bc75e2d631000006e01855144814a7ff805980ff008400082020590505b6856bc75e2d631000000841261100b576856bc75e2d630ffffff199093019268056bc75e2d631000006b02df0ab5a80a22c61ab5a70082020590505b682b5e3af16b18800000841261104557682b5e3af16b187fffff199093019268056bc75e2d63100000693f1fce3da636ea5cf85082020590505b6815af1d78b58c400000841261107f576815af1d78b58c3fffff199093019268056bc75e2d63100000690127fa27722cc06cc5e282020590505b680ad78ebc5ac620000084126110b857680ad78ebc5ac61fffff199093019268056bc75e2d6310000068280e60114edb805d0382020590505b68056bc75e2d6310000084126110f15768056bc75e2d630fffff199093019268056bc75e2d63100000680ebc5fb4174612111082020590505b6802b5e3af16b1880000841261112a576802b5e3af16b187ffff199093019268056bc75e2d631000006808f00f760a4b2db55d82020590505b68015af1d78b58c4000084126111635768015af1d78b58c3ffff199093019268056bc75e2d631000006806f5f177578893793782020590505b68056bc75e2d631000008481019085906002908280020505918201919050600368056bc75e2d631000008783020505918201919050600468056bc75e2d631000008783020505918201919050600568056bc75e2d631000008783020505918201919050600668056bc75e2d631000008783020505918201919050600768056bc75e2d631000008783020505918201919050600868056bc75e2d631000008783020505918201919050600968056bc75e2d631000008783020505918201919050600a68056bc75e2d631000008783020505918201919050600b68056bc75e2d631000008783020505918201919050600c68056bc75e2d631000008783020505918201919050606468056bc75e2d63100000848402058502059695505050505050565b600080611299670de0b6b3a76400008561201f565b9050828181610e6657610e66611cfb565b6000808212156112b957600080fd5b5090565b6040805160028082526060820183526000928392919060208301908036833701905050905082816000815181106112f6576112f661207d565b63ffffffff9092166020928302919091019091015260405163883bdbfd60e01b81526000906001600160a01b0386169063883bdbfd9061133a908590600401612093565b600060405180830381865afa158015611357573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261137f91908101906120dd565b90508363ffffffff168160008151811061139b5761139b61207d565b6020026020010151826001815181106113b6576113b661207d565b60200260200101516113c89190612189565b6113d291906121a9565b6001600160d81b031695945050505050565b6000806113f66201518061016d611d9a565b6114008486611d9a565b61140a9190611db1565b9050610cd3610ace82611449565b60008082136112b957610381826121c3565b6000670de0b6b3a764000061143f8484611d9a565b61037e9190611db1565b60006001600160ff1b038211156112b957600080fd5b600061146a82611449565b61147c610cc46201518061016d611d9a565b846080015161148b919061201f565b611495919061204f565b90506000811361038157604051630e520c3b60e11b8152600481018290526024016101ee565b6000806114c886846113e4565b9050670de0b6b3a76400008112156114f65760405163329e322960e21b8152600481018290526024016101ee565b600061150c611505878a611fdf565b8990611284565b905060006115198261153c565b90506115258187611284565b61152f9084611fff565b9998505050505050505050565b6000670de0b6b3a764000082036115665760405163a9c8b14d60e01b815260040160405180910390fd5b600061158461157d84670de0b6b3a7640000611fff565b8490611284565b905061158f81611596565b9392505050565b60008082136115d75760405162461bcd60e51b815260206004820152600d60248201526c6f7574206f6620626f756e647360981b60448201526064016101ee565b670c7d713b49da0000821380156115f55750670f43fc2c04ee000082125b1561161957670de0b6b3a764000061160c83611627565b81610f0457610f04611cfb565b61038182611746565b919050565b670de0b6b3a7640000026000806a0c097ce7bc90715b34b9f160241b808401906ec097ce7bc90715b34b9f0fffffffff198501028161166857611668611cfb565b05905060006a0c097ce7bc90715b34b9f160241b82800205905081806a0c097ce7bc90715b34b9f160241b81840205915060038205016a0c097ce7bc90715b34b9f160241b82840205915060058205016a0c097ce7bc90715b34b9f160241b82840205915060078205016a0c097ce7bc90715b34b9f160241b82840205915060098205016a0c097ce7bc90715b34b9f160241b828402059150600b8205016a0c097ce7bc90715b34b9f160241b828402059150600d8205016a0c097ce7bc90715b34b9f160241b828402059150600f82050160020295945050505050565b6000670de0b6b3a76400008212156117875761177e826a0c097ce7bc90715b34b9f160241b8161177857611778611cfb565b05611746565b60000392915050565b6000775803bcc5cb9634ba4cfb2213f784019318ed4dcb6017880f60361b83126117d25772195e54c5dd42177f53a27172fa9ec63026282760241b830592506806f05b59d3b2000000015b6f8bcc0026baae9e45e470190267a230cf60191b8312611809576b1425982cf597cd205cef7380830592506803782dace9d9000000015b606492830292026e01855144814a7ff805980ff00840008312611851576e01855144814a7ff805980ff008400068056bc75e2d63100000840205925068ad78ebc5ac62000000015b6b02df0ab5a80a22c61ab5a700831261188c576b02df0ab5a80a22c61ab5a70068056bc75e2d6310000084020592506856bc75e2d631000000015b693f1fce3da636ea5cf85083126118c357693f1fce3da636ea5cf85068056bc75e2d631000008402059250682b5e3af16b18800000015b690127fa27722cc06cc5e283126118fa57690127fa27722cc06cc5e268056bc75e2d6310000084020592506815af1d78b58c400000015b68280e60114edb805d03831261192f5768280e60114edb805d0368056bc75e2d631000008402059250680ad78ebc5ac6200000015b680ebc5fb41746121110831261195a57680ebc5fb4174612111068056bc75e2d631000009384020592015b6808f00f760a4b2db55d831261198f576808f00f760a4b2db55d68056bc75e2d6310000084020592506802b5e3af16b1880000015b6806f5f177578893793783126119c4576806f5f177578893793768056bc75e2d63100000840205925068015af1d78b58c40000015b6806248f33704b28660383126119f8576806248f33704b28660368056bc75e2d63100000840205925067ad78ebc5ac620000015b6805c548670b9510e7ac8312611a2c576805c548670b9510e7ac68056bc75e2d6310000084020592506756bc75e2d6310000015b600068056bc75e2d63100000840168056bc75e2d631000008086030281611a5557611a55611cfb565b059050600068056bc75e2d63100000828002059050818068056bc75e2d63100000818402059150600382050168056bc75e2d63100000828402059150600582050168056bc75e2d63100000828402059150600782050168056bc75e2d63100000828402059150600982050168056bc75e2d63100000828402059150600b820501600202606485820105979650505050505050565b6001600160a01b0381168114611afe57600080fd5b50565b8015158114611afe57600080fd5b600080600060608486031215611b2457600080fd5b8335611b2f81611ae9565b92506020840135611b3f81611b01565b91506040840135611b4f81611b01565b809150509250925092565b61ffff81168114611afe57600080fd5b600060208284031215611b7c57600080fd5b813561158f81611b5a565b63ffffffff81168114611afe57600080fd5b60008060408385031215611bac57600080fd5b8235611bb781611ae9565b91506020830135611bc781611b87565b809150509250929050565b61ffff91909116815260200190565b6001600160a01b0391909116815260200190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8051600f81900b811461162257600080fd5b60008060008060008060c08789031215611c5557600080fd5b611c5e87611c2a565b9550611c6c60208801611c2a565b60408801519095506001600160601b0381168114611c8957600080fd5b6060880151909450611c9a81611b5a565b6080880151909350611cab81611b5a565b60a0880151909250611cbc81611b5a565b809150509295509295509295565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610c7a57610c7a611cca565b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680611d2657611d26611cfb565b92169190910692915050565b80516001600160d81b038116811461162257600080fd5b600080600060608486031215611d5e57600080fd5b8351611d6981611b87565b9250611d7760208501611d32565b91506040840151611b4f81611b01565b8181038181111561038157610381611cca565b808202811582820484141761038157610381611cca565b600082611dc057611dc0611cfb565b500490565b63ffffffff81811683821602808216919082811461077057610770611cca565b63ffffffff818116838216019080821115610c7a57610c7a611cca565b63ffffffff828116828216039080821115610c7a57610c7a611cca565b600063ffffffff80841680611e3657611e36611cfb565b92169190910492915050565b600080600060608486031215611e5757600080fd5b8351611e6281611ae9565b6020850151909350611e7381611ae9565b6040850151909250611b4f81611ae9565b600060208284031215611e9657600080fd5b5051919050565b600060208284031215611eaf57600080fd5b815161158f81611b01565b600060208284031215611ecc57600080fd5b81516001600160801b038116811461158f57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405161012081016001600160401b0381118282101715611f1c57611f1c611ee3565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611f4a57611f4a611ee3565b604052919050565b805161162281611ae9565b60006101208284031215611f7057600080fd5b611f78611ef9565b825181526020830151602082015260408301516040820152611f9c60608401611f52565b60608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152508091505092915050565b808201828112600083128015821682158216171561077057610770611cca565b8181036000831280158383131683831282161715610c7a57610c7a611cca565b80820260008212600160ff1b8414161561203b5761203b611cca565b818105831482151761038157610381611cca565b60008261205e5761205e611cfb565b600160ff1b82146000198414161561207857612078611cca565b500590565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b818110156120d157835163ffffffff16835292840192918401916001016120af565b50909695505050505050565b600060208083850312156120f057600080fd5b82516001600160401b038082111561210757600080fd5b818501915085601f83011261211b57600080fd5b81518181111561212d5761212d611ee3565b8060051b915061213e848301611f22565b818152918301840191848101908884111561215857600080fd5b938501935b8385101561217d5761216e85611d32565b8252938501939085019061215d565b98975050505050505050565b6001600160d81b03828116828216039080821115610c7a57610c7a611cca565b60006001600160d81b0383811680611e3657611e36611cfb565b6000600160ff1b82016121d8576121d8611cca565b506000039056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a26469706673582212204052703970fb93fb52470fd11020fd868bf33e26537cbd9bbe9b3feaebd402b064736f6c63430008170033",
364
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a45760003560e01c8063078dfbe7146100a957806340f25951146100be5780634d44ca89146100d15780634e71e0c8146100f757806358f6e5a1146100ff5780636cda98331461011a578063873e96001461012d5780638da5cb5b14610162578063a31426d114610182578063abca0eab14610195578063e30c3978146101a8578063fa040f64146101bb575b600080fd5b6100bc6100b7366004611b0f565b6101c4565b005b6100bc6100cc366004611b6a565b6102ca565b6100e46100df366004611b99565b610369565b6040519081526020015b60405180910390f35b6100bc610387565b60325461010d9061ffff1681565b6040516100ee9190611bd2565b6100e4610128366004611b99565b610432565b61014061013b366004611b99565b610447565b60408051931515845261ffff90921660208401521515908201526060016100ee565b600054610175906001600160a01b031681565b6040516100ee9190611be1565b6100e4610190366004611b99565b6105f6565b6100e46101a3366004611b99565b61060b565b600154610175906001600160a01b031681565b61010d6103e881565b6000546001600160a01b031633146101f75760405162461bcd60e51b81526004016101ee90611bf5565b60405180910390fd5b81156102a8576001600160a01b0383161515806102115750805b6102555760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b60448201526064016101ee565b600080546040516001600160a01b03808716939216916000805160206121e083398151915291a3600080546001600160a01b0385166001600160a01b031991821617909155600180549091169055505050565b600180546001600160a01b0385166001600160a01b0319909116179055505050565b6000546001600160a01b031633146102f45760405162461bcd60e51b81526004016101ee90611bf5565b6103e861ffff8216101561031d5780604051632204277360e21b81526004016101ee9190611bd2565b6032805461ffff191661ffff83161790556040517f30b0568b152eb73b8d1104ca045f37e64f7eae07b09ea9607ab1bdf475012c539061035e908390611bd2565b60405180910390a150565b600061037e6001600160a01b03841683610620565b90505b92915050565b6001546001600160a01b03163381146103e25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e657260448201526064016101ee565b600080546040516001600160a01b03808516939216916000805160206121e083398151915291a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b600061037e6001600160a01b03841683610666565b600080600080600080876001600160a01b031663c3fb90d66040518163ffffffff1660e01b815260040160c060405180830381865afa15801561048e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104b29190611c3c565b9550955095505050506104c4876106ad565b61ffff80821690831610965094506000806001600160a01b038a1663252c09d7856104f0886001611ce0565b6104fa9190611d11565b6040518263ffffffff1660e01b81526004016105169190611bd2565b606060405180830381865afa158015610533573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105579190611d49565b9250509150806105d05760405163252c09d760e01b8152600060048201526001600160a01b038b169063252c09d790602401606060405180830381865afa1580156105a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ca9190611d49565b50909250505b6105e063ffffffff8a1642611d87565b8263ffffffff1610955050505050509250925092565b600061037e6001600160a01b0384168361072c565b600061037e6001600160a01b03841683610778565b600080600061062e856107bb565b91509150600061063f8686846109eb565b905081831061065c576106528184610b82565b9350505050610381565b6106528183610b82565b6000806000610674856107bb565b9150915060006106858686846109eb565b9050818310610698579250610381915050565b816106a38483611d9a565b6106529190611db1565b603254600090819061ffff166001816106c86103e887611dc5565b6106d29190611de5565b6106dc9190611e02565b6106e69190611e1f565b6106f1906001611de5565b905061ffff63ffffffff8216111561038157604051632212b64b60e21b815263ffffffff8085166004830152821660248201526044016101ee565b600080600061073a856107bb565b9150915080821061076257610759826107538787610bb1565b90610b82565b92505050610381565b610759816107538787610bb1565b505092915050565b6000806000610786856107bb565b9150915080821061079b576107598585610bb1565b80826107a78787610bb1565b6107b19190611d9a565b6107599190611db1565b600080600080846001600160a01b0316632c8ce6bc6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156107ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108239190611e42565b9250509150816001600160a01b0316633ba0b9a96040518163ffffffff1660e01b8152600401602060405180830381865afa158015610866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088a9190611e84565b93506000816001600160a01b031663d2a3584e6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f09190611e84565b9050816001600160a01b031663516399df6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610930573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109549190611e9d565b80156109c9575043826001600160a01b03166360e0a9e16040518163ffffffff1660e01b8152600401602060405180830381865afa15801561099a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109be9190611eba565b6001600160801b0316145b156109d6578093506109e3565b6109e08582610c81565b93505b505050915091565b600080846001600160a01b031663794052f360006040518263ffffffff1660e01b8152600401610a1b9190611be1565b61012060405180830381865afa158015610a39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5d9190611f5d565b90506000428260a0015111610a8d57610a7a848360200151610c97565b8251610a869190611fdf565b9050610b59565b6000610a9a838642610cdb565b9050600080610aaa89868a610ddc565b915091506000610ad3610ace856040015185610ac69190611fff565b865190610e4c565b610e6f565b90506000610b18610ae48385611284565b610af690670de0b6b3a7640000611fdf565b88516020880151610b08908690610e4c565b610b129190611fff565b90611284565b9050610b2e84828960000151610b129190611fdf565b610b388285611284565b8660200151610b479190611fff565b610b519190611fdf565b955050505050505b610b78610b7383604001518361128490919063ffffffff16565b6112aa565b9695505050505050565b600080610b97670de0b6b3a764000085611d9a565b9050828181610ba857610ba8611cfb565b04949350505050565b600080836001600160a01b031663e184c9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c169190611e84565b9050428111610c3057670de0b6b3a7640000915050610381565b6000610c3c85856112bd565b90506000610c4a4284611d87565b90506000610c5b610b7384846113e4565b9050610c6f670de0b6b3a764000082610b82565b945050505050610381565b5092915050565b6000818311610c90578161037e565b5090919050565b60008060008312610ca9576001610cad565b6000195b9050610cc9610cc485610cbf86611418565b61142a565b611449565b610cd3908261201f565b949350505050565b610d066040518060800160405280600081526020016000815260200160008152602001600081525090565b60a08401518210610d2a5760405163b2094b5960e01b815260040160405180910390fd5b6000828560a00151610d3c9190611d87565b9050610d48858261145f565b82526020850151610d5a908590610c97565b602083015284511580610d6f57506020820151155b15610d9d578451602083015160405163b1c4aefb60e01b8152600481019290925260248201526044016101ee565b610dbb856000015186610100015184602001518560000151856114bb565b604083015260c0850151610dcf90826113e4565b6060830152509392505050565b600080610e07610df8610cc46001600160a01b03881686610bb1565b670de0b6b3a764000090611284565b91506000610e29856101000151428760a00151610e249190611d87565b6113e4565b90506002610e378483611fdf565b610e41919061204f565b915050935093915050565b600080610e59838561201f565b9050670de0b6b3a7640000815b05949350505050565b6000680238fd42c5cf03ffff198212158015610e94575068070c1cc73b00c800008213155b610ed35760405162461bcd60e51b815260206004820152601060248201526f125b9d985b1a5908195e1c1bdb995b9d60821b60448201526064016101ee565b6000821215610f0b57610ee882600003610e6f565b6a0c097ce7bc90715b34b9f160241b81610f0457610f04611cfb565b0592915050565b60006806f05b59d3b20000008312610f4957506806f05b59d3b1ffffff199091019072195e54c5dd42177f53a27172fa9ec63026282760241b610f7f565b6803782dace9d90000008312610f7b57506803782dace9d8ffffff19909101906b1425982cf597cd205cef7380610f7f565b5060015b6064929092029168056bc75e2d6310000068ad78ebc5ac620000008412610fcf5768ad78ebc5ac61ffffff199093019268056bc75e2d631000006e01855144814a7ff805980ff008400082020590505b6856bc75e2d631000000841261100b576856bc75e2d630ffffff199093019268056bc75e2d631000006b02df0ab5a80a22c61ab5a70082020590505b682b5e3af16b18800000841261104557682b5e3af16b187fffff199093019268056bc75e2d63100000693f1fce3da636ea5cf85082020590505b6815af1d78b58c400000841261107f576815af1d78b58c3fffff199093019268056bc75e2d63100000690127fa27722cc06cc5e282020590505b680ad78ebc5ac620000084126110b857680ad78ebc5ac61fffff199093019268056bc75e2d6310000068280e60114edb805d0382020590505b68056bc75e2d6310000084126110f15768056bc75e2d630fffff199093019268056bc75e2d63100000680ebc5fb4174612111082020590505b6802b5e3af16b1880000841261112a576802b5e3af16b187ffff199093019268056bc75e2d631000006808f00f760a4b2db55d82020590505b68015af1d78b58c4000084126111635768015af1d78b58c3ffff199093019268056bc75e2d631000006806f5f177578893793782020590505b68056bc75e2d631000008481019085906002908280020505918201919050600368056bc75e2d631000008783020505918201919050600468056bc75e2d631000008783020505918201919050600568056bc75e2d631000008783020505918201919050600668056bc75e2d631000008783020505918201919050600768056bc75e2d631000008783020505918201919050600868056bc75e2d631000008783020505918201919050600968056bc75e2d631000008783020505918201919050600a68056bc75e2d631000008783020505918201919050600b68056bc75e2d631000008783020505918201919050600c68056bc75e2d631000008783020505918201919050606468056bc75e2d63100000848402058502059695505050505050565b600080611299670de0b6b3a76400008561201f565b9050828181610e6657610e66611cfb565b6000808212156112b957600080fd5b5090565b6040805160028082526060820183526000928392919060208301908036833701905050905082816000815181106112f6576112f661207d565b63ffffffff9092166020928302919091019091015260405163883bdbfd60e01b81526000906001600160a01b0386169063883bdbfd9061133a908590600401612093565b600060405180830381865afa158015611357573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261137f91908101906120dd565b90508363ffffffff168160008151811061139b5761139b61207d565b6020026020010151826001815181106113b6576113b661207d565b60200260200101516113c89190612189565b6113d291906121a9565b6001600160d81b031695945050505050565b6000806113f66201518061016d611d9a565b6114008486611d9a565b61140a9190611db1565b9050610cd3610ace82611449565b60008082136112b957610381826121c3565b6000670de0b6b3a764000061143f8484611d9a565b61037e9190611db1565b60006001600160ff1b038211156112b957600080fd5b600061146a82611449565b61147c610cc46201518061016d611d9a565b846080015161148b919061201f565b611495919061204f565b90506000811361038157604051630e520c3b60e11b8152600481018290526024016101ee565b6000806114c886846113e4565b9050670de0b6b3a76400008112156114f65760405163329e322960e21b8152600481018290526024016101ee565b600061150c611505878a611fdf565b8990611284565b905060006115198261153c565b90506115258187611284565b61152f9084611fff565b9998505050505050505050565b6000670de0b6b3a764000082036115665760405163a9c8b14d60e01b815260040160405180910390fd5b600061158461157d84670de0b6b3a7640000611fff565b8490611284565b905061158f81611596565b9392505050565b60008082136115d75760405162461bcd60e51b815260206004820152600d60248201526c6f7574206f6620626f756e647360981b60448201526064016101ee565b670c7d713b49da0000821380156115f55750670f43fc2c04ee000082125b1561161957670de0b6b3a764000061160c83611627565b81610f0457610f04611cfb565b61038182611746565b919050565b670de0b6b3a7640000026000806a0c097ce7bc90715b34b9f160241b808401906ec097ce7bc90715b34b9f0fffffffff198501028161166857611668611cfb565b05905060006a0c097ce7bc90715b34b9f160241b82800205905081806a0c097ce7bc90715b34b9f160241b81840205915060038205016a0c097ce7bc90715b34b9f160241b82840205915060058205016a0c097ce7bc90715b34b9f160241b82840205915060078205016a0c097ce7bc90715b34b9f160241b82840205915060098205016a0c097ce7bc90715b34b9f160241b828402059150600b8205016a0c097ce7bc90715b34b9f160241b828402059150600d8205016a0c097ce7bc90715b34b9f160241b828402059150600f82050160020295945050505050565b6000670de0b6b3a76400008212156117875761177e826a0c097ce7bc90715b34b9f160241b8161177857611778611cfb565b05611746565b60000392915050565b6000775803bcc5cb9634ba4cfb2213f784019318ed4dcb6017880f60361b83126117d25772195e54c5dd42177f53a27172fa9ec63026282760241b830592506806f05b59d3b2000000015b6f8bcc0026baae9e45e470190267a230cf60191b8312611809576b1425982cf597cd205cef7380830592506803782dace9d9000000015b606492830292026e01855144814a7ff805980ff00840008312611851576e01855144814a7ff805980ff008400068056bc75e2d63100000840205925068ad78ebc5ac62000000015b6b02df0ab5a80a22c61ab5a700831261188c576b02df0ab5a80a22c61ab5a70068056bc75e2d6310000084020592506856bc75e2d631000000015b693f1fce3da636ea5cf85083126118c357693f1fce3da636ea5cf85068056bc75e2d631000008402059250682b5e3af16b18800000015b690127fa27722cc06cc5e283126118fa57690127fa27722cc06cc5e268056bc75e2d6310000084020592506815af1d78b58c400000015b68280e60114edb805d03831261192f5768280e60114edb805d0368056bc75e2d631000008402059250680ad78ebc5ac6200000015b680ebc5fb41746121110831261195a57680ebc5fb4174612111068056bc75e2d631000009384020592015b6808f00f760a4b2db55d831261198f576808f00f760a4b2db55d68056bc75e2d6310000084020592506802b5e3af16b1880000015b6806f5f177578893793783126119c4576806f5f177578893793768056bc75e2d63100000840205925068015af1d78b58c40000015b6806248f33704b28660383126119f8576806248f33704b28660368056bc75e2d63100000840205925067ad78ebc5ac620000015b6805c548670b9510e7ac8312611a2c576805c548670b9510e7ac68056bc75e2d6310000084020592506756bc75e2d6310000015b600068056bc75e2d63100000840168056bc75e2d631000008086030281611a5557611a55611cfb565b059050600068056bc75e2d63100000828002059050818068056bc75e2d63100000818402059150600382050168056bc75e2d63100000828402059150600582050168056bc75e2d63100000828402059150600782050168056bc75e2d63100000828402059150600982050168056bc75e2d63100000828402059150600b820501600202606485820105979650505050505050565b6001600160a01b0381168114611afe57600080fd5b50565b8015158114611afe57600080fd5b600080600060608486031215611b2457600080fd5b8335611b2f81611ae9565b92506020840135611b3f81611b01565b91506040840135611b4f81611b01565b809150509250925092565b61ffff81168114611afe57600080fd5b600060208284031215611b7c57600080fd5b813561158f81611b5a565b63ffffffff81168114611afe57600080fd5b60008060408385031215611bac57600080fd5b8235611bb781611ae9565b91506020830135611bc781611b87565b809150509250929050565b61ffff91909116815260200190565b6001600160a01b0391909116815260200190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8051600f81900b811461162257600080fd5b60008060008060008060c08789031215611c5557600080fd5b611c5e87611c2a565b9550611c6c60208801611c2a565b60408801519095506001600160601b0381168114611c8957600080fd5b6060880151909450611c9a81611b5a565b6080880151909350611cab81611b5a565b60a0880151909250611cbc81611b5a565b809150509295509295509295565b634e487b7160e01b600052601160045260246000fd5b61ffff818116838216019080821115610c7a57610c7a611cca565b634e487b7160e01b600052601260045260246000fd5b600061ffff80841680611d2657611d26611cfb565b92169190910692915050565b80516001600160d81b038116811461162257600080fd5b600080600060608486031215611d5e57600080fd5b8351611d6981611b87565b9250611d7760208501611d32565b91506040840151611b4f81611b01565b8181038181111561038157610381611cca565b808202811582820484141761038157610381611cca565b600082611dc057611dc0611cfb565b500490565b63ffffffff81811683821602808216919082811461077057610770611cca565b63ffffffff818116838216019080821115610c7a57610c7a611cca565b63ffffffff828116828216039080821115610c7a57610c7a611cca565b600063ffffffff80841680611e3657611e36611cfb565b92169190910492915050565b600080600060608486031215611e5757600080fd5b8351611e6281611ae9565b6020850151909350611e7381611ae9565b6040850151909250611b4f81611ae9565b600060208284031215611e9657600080fd5b5051919050565b600060208284031215611eaf57600080fd5b815161158f81611b01565b600060208284031215611ecc57600080fd5b81516001600160801b038116811461158f57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405161012081016001600160401b0381118282101715611f1c57611f1c611ee3565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611f4a57611f4a611ee3565b604052919050565b805161162281611ae9565b60006101208284031215611f7057600080fd5b611f78611ef9565b825181526020830151602082015260408301516040820152611f9c60608401611f52565b60608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152508091505092915050565b808201828112600083128015821682158216171561077057610770611cca565b8181036000831280158383131683831282161715610c7a57610c7a611cca565b80820260008212600160ff1b8414161561203b5761203b611cca565b818105831482151761038157610381611cca565b60008261205e5761205e611cfb565b600160ff1b82146000198414161561207857612078611cca565b500590565b634e487b7160e01b600052603260045260246000fd5b6020808252825182820181905260009190848201906040850190845b818110156120d157835163ffffffff16835292840192918401916001016120af565b50909695505050505050565b600060208083850312156120f057600080fd5b82516001600160401b038082111561210757600080fd5b818501915085601f83011261211b57600080fd5b81518181111561212d5761212d611ee3565b8060051b915061213e848301611f22565b818152918301840191848101908884111561215857600080fd5b938501935b8385101561217d5761216e85611d32565b8252938501939085019061215d565b98975050505050505050565b6001600160d81b03828116828216039080821115610c7a57610c7a611cca565b60006001600160d81b0383811680611e3657611e36611cfb565b6000600160ff1b82016121d8576121d8611cca565b506000039056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a26469706673582212204052703970fb93fb52470fd11020fd868bf33e26537cbd9bbe9b3feaebd402b064736f6c63430008170033",
365
+ "linkReferences": {},
366
+ "deployedLinkReferences": {}
367
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/432b0458b06757d664d5d5469e35eccb.json"
4
+ }