@layerzerolabs/lz-evm-sdk-v1 1.5.7 → 1.5.8
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/interfaces/IContractOne.sol/IContractOne.json +24 -0
- package/artifacts/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.json +447 -0
- package/artifacts/contracts/interfaces/ILayerZeroMessagingLibrary.sol/ILayerZeroMessagingLibrary.json +160 -0
- package/artifacts/contracts/interfaces/ILayerZeroMessagingLibraryV2.sol/ILayerZeroMessagingLibraryV2.json +184 -0
- package/artifacts/contracts/interfaces/ILayerZeroOracle.sol/ILayerZeroOracle.json +77 -0
- package/artifacts/contracts/interfaces/ILayerZeroOracleV2.sol/ILayerZeroOracleV2.json +97 -0
- package/artifacts/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +107 -0
- package/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.json +39 -0
- package/artifacts/contracts/interfaces/ILayerZeroRelayer.sol/ILayerZeroRelayer.json +92 -0
- package/artifacts/contracts/interfaces/ILayerZeroRelayerV2.sol/ILayerZeroRelayerV2.json +107 -0
- package/artifacts/contracts/interfaces/ILayerZeroRelayerV2PriceData.sol/ILayerZeroRelayerV2PriceData.json +83 -0
- package/artifacts/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +40 -0
- package/artifacts/contracts/interfaces/ILayerZeroUltraLightNodeV1.sol/ILayerZeroUltraLightNodeV1.json +156 -0
- package/artifacts/contracts/interfaces/ILayerZeroUltraLightNodeV2.sol/ILayerZeroUltraLightNodeV2.json +582 -0
- package/artifacts/contracts/interfaces/ILayerZeroUserApplicationConfig.sol/ILayerZeroUserApplicationConfig.json +83 -0
- package/artifacts/contracts/interfaces/ILayerZeroValidationLibrary.sol/ILayerZeroValidationLibrary.json +77 -0
- package/artifacts/contracts/interfaces/IValidationLibraryHelper.sol/IValidationLibraryHelper.json +146 -0
- package/artifacts/contracts/interfaces/IValidationLibraryHelperV2.sol/IValidationLibraryHelperV2.json +154 -0
- package/artifacts/contracts/proof/FPValidator.sol/FPValidator.json +326 -0
- package/artifacts/contracts/proof/FPValidator.sol/IStargate.json +10 -0
- package/artifacts/contracts/proof/MPTValidator.sol/MPTValidator.json +146 -0
- package/artifacts/contracts/proof/MPTValidator01.sol/IStargate.json +10 -0
- package/artifacts/contracts/proof/MPTValidator01.sol/MPTValidator01.json +339 -0
- package/artifacts/contracts/proof/MPTValidatorStgV3.sol/MPTValidatorStgV3.json +310 -0
- package/artifacts/contracts/proof/MPTValidatorV2.sol/MPTValidatorV2.json +212 -0
- package/artifacts/contracts/proof/MPTValidatorV4.sol/IStargate.json +10 -0
- package/artifacts/contracts/proof/MPTValidatorV4.sol/IUltraLightNode.json +108 -0
- package/artifacts/contracts/proof/MPTValidatorV4.sol/MPTValidatorV4.json +414 -0
- package/artifacts/contracts/proof/MPTValidatorV5.sol/IStargate.json +10 -0
- package/artifacts/contracts/proof/MPTValidatorV5.sol/IUltraLightNode.json +108 -0
- package/artifacts/contracts/proof/MPTValidatorV5.sol/MPTValidatorV5.json +432 -0
- package/artifacts/contracts/proof/utility/Buffer.sol/Buffer.json +10 -0
- package/artifacts/contracts/proof/utility/LayerZeroPacket.sol/LayerZeroPacket.json +10 -0
- package/artifacts/contracts/proof/utility/RLPDecode.sol/RLPDecode.json +10 -0
- package/artifacts/contracts/proof/utility/UltraLightNodeEVMDecoder.sol/UltraLightNodeEVMDecoder.json +10 -0
- package/package.json +8 -4
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "FPValidator",
|
|
4
|
+
"sourceName": "contracts/proof/FPValidator.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "address",
|
|
10
|
+
"name": "_stargateBridgeAddress",
|
|
11
|
+
"type": "address"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"internalType": "address",
|
|
15
|
+
"name": "_stargateTokenAddress",
|
|
16
|
+
"type": "address"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"stateMutability": "nonpayable",
|
|
20
|
+
"type": "constructor"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"inputs": [
|
|
24
|
+
{
|
|
25
|
+
"internalType": "bytes",
|
|
26
|
+
"name": "data",
|
|
27
|
+
"type": "bytes"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"internalType": "uint256",
|
|
31
|
+
"name": "sizeOfSrcAddress",
|
|
32
|
+
"type": "uint256"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"internalType": "bytes32",
|
|
36
|
+
"name": "ulnAddress",
|
|
37
|
+
"type": "bytes32"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"name": "getPacket",
|
|
41
|
+
"outputs": [
|
|
42
|
+
{
|
|
43
|
+
"components": [
|
|
44
|
+
{
|
|
45
|
+
"internalType": "uint16",
|
|
46
|
+
"name": "srcChainId",
|
|
47
|
+
"type": "uint16"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"internalType": "uint16",
|
|
51
|
+
"name": "dstChainId",
|
|
52
|
+
"type": "uint16"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"internalType": "uint64",
|
|
56
|
+
"name": "nonce",
|
|
57
|
+
"type": "uint64"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"internalType": "address",
|
|
61
|
+
"name": "dstAddress",
|
|
62
|
+
"type": "address"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"internalType": "bytes",
|
|
66
|
+
"name": "srcAddress",
|
|
67
|
+
"type": "bytes"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"internalType": "bytes32",
|
|
71
|
+
"name": "ulnAddress",
|
|
72
|
+
"type": "bytes32"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"internalType": "bytes",
|
|
76
|
+
"name": "payload",
|
|
77
|
+
"type": "bytes"
|
|
78
|
+
}
|
|
79
|
+
],
|
|
80
|
+
"internalType": "struct LayerZeroPacket.Packet",
|
|
81
|
+
"name": "",
|
|
82
|
+
"type": "tuple"
|
|
83
|
+
}
|
|
84
|
+
],
|
|
85
|
+
"stateMutability": "pure",
|
|
86
|
+
"type": "function"
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
"inputs": [],
|
|
90
|
+
"name": "getProofType",
|
|
91
|
+
"outputs": [
|
|
92
|
+
{
|
|
93
|
+
"internalType": "uint8",
|
|
94
|
+
"name": "",
|
|
95
|
+
"type": "uint8"
|
|
96
|
+
}
|
|
97
|
+
],
|
|
98
|
+
"stateMutability": "view",
|
|
99
|
+
"type": "function"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"inputs": [],
|
|
103
|
+
"name": "getUtilsVersion",
|
|
104
|
+
"outputs": [
|
|
105
|
+
{
|
|
106
|
+
"internalType": "uint8",
|
|
107
|
+
"name": "",
|
|
108
|
+
"type": "uint8"
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
"stateMutability": "view",
|
|
112
|
+
"type": "function"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"inputs": [
|
|
116
|
+
{
|
|
117
|
+
"internalType": "bytes32",
|
|
118
|
+
"name": "",
|
|
119
|
+
"type": "bytes32"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"internalType": "uint256[]",
|
|
123
|
+
"name": "",
|
|
124
|
+
"type": "uint256[]"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"internalType": "uint256",
|
|
128
|
+
"name": "",
|
|
129
|
+
"type": "uint256"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"internalType": "bytes[]",
|
|
133
|
+
"name": "proof",
|
|
134
|
+
"type": "bytes[]"
|
|
135
|
+
}
|
|
136
|
+
],
|
|
137
|
+
"name": "getVerifyLog",
|
|
138
|
+
"outputs": [
|
|
139
|
+
{
|
|
140
|
+
"components": [
|
|
141
|
+
{
|
|
142
|
+
"internalType": "bytes32",
|
|
143
|
+
"name": "contractAddress",
|
|
144
|
+
"type": "bytes32"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"internalType": "bytes32",
|
|
148
|
+
"name": "topicZeroSig",
|
|
149
|
+
"type": "bytes32"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"internalType": "bytes",
|
|
153
|
+
"name": "data",
|
|
154
|
+
"type": "bytes"
|
|
155
|
+
}
|
|
156
|
+
],
|
|
157
|
+
"internalType": "struct IValidationLibraryHelperV2.ULNLog",
|
|
158
|
+
"name": "log",
|
|
159
|
+
"type": "tuple"
|
|
160
|
+
}
|
|
161
|
+
],
|
|
162
|
+
"stateMutability": "pure",
|
|
163
|
+
"type": "function"
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"inputs": [],
|
|
167
|
+
"name": "proofType",
|
|
168
|
+
"outputs": [
|
|
169
|
+
{
|
|
170
|
+
"internalType": "uint8",
|
|
171
|
+
"name": "",
|
|
172
|
+
"type": "uint8"
|
|
173
|
+
}
|
|
174
|
+
],
|
|
175
|
+
"stateMutability": "view",
|
|
176
|
+
"type": "function"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"inputs": [
|
|
180
|
+
{
|
|
181
|
+
"internalType": "bytes",
|
|
182
|
+
"name": "_payload",
|
|
183
|
+
"type": "bytes"
|
|
184
|
+
}
|
|
185
|
+
],
|
|
186
|
+
"name": "secureStgPayload",
|
|
187
|
+
"outputs": [
|
|
188
|
+
{
|
|
189
|
+
"internalType": "bytes",
|
|
190
|
+
"name": "",
|
|
191
|
+
"type": "bytes"
|
|
192
|
+
}
|
|
193
|
+
],
|
|
194
|
+
"stateMutability": "view",
|
|
195
|
+
"type": "function"
|
|
196
|
+
},
|
|
197
|
+
{
|
|
198
|
+
"inputs": [
|
|
199
|
+
{
|
|
200
|
+
"internalType": "bytes",
|
|
201
|
+
"name": "_payload",
|
|
202
|
+
"type": "bytes"
|
|
203
|
+
}
|
|
204
|
+
],
|
|
205
|
+
"name": "secureStgTokenPayload",
|
|
206
|
+
"outputs": [
|
|
207
|
+
{
|
|
208
|
+
"internalType": "bytes",
|
|
209
|
+
"name": "",
|
|
210
|
+
"type": "bytes"
|
|
211
|
+
}
|
|
212
|
+
],
|
|
213
|
+
"stateMutability": "pure",
|
|
214
|
+
"type": "function"
|
|
215
|
+
},
|
|
216
|
+
{
|
|
217
|
+
"inputs": [],
|
|
218
|
+
"name": "stargateBridgeAddress",
|
|
219
|
+
"outputs": [
|
|
220
|
+
{
|
|
221
|
+
"internalType": "address",
|
|
222
|
+
"name": "",
|
|
223
|
+
"type": "address"
|
|
224
|
+
}
|
|
225
|
+
],
|
|
226
|
+
"stateMutability": "view",
|
|
227
|
+
"type": "function"
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"inputs": [],
|
|
231
|
+
"name": "stargateTokenAddress",
|
|
232
|
+
"outputs": [
|
|
233
|
+
{
|
|
234
|
+
"internalType": "address",
|
|
235
|
+
"name": "",
|
|
236
|
+
"type": "address"
|
|
237
|
+
}
|
|
238
|
+
],
|
|
239
|
+
"stateMutability": "view",
|
|
240
|
+
"type": "function"
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"inputs": [],
|
|
244
|
+
"name": "utilsVersion",
|
|
245
|
+
"outputs": [
|
|
246
|
+
{
|
|
247
|
+
"internalType": "uint8",
|
|
248
|
+
"name": "",
|
|
249
|
+
"type": "uint8"
|
|
250
|
+
}
|
|
251
|
+
],
|
|
252
|
+
"stateMutability": "view",
|
|
253
|
+
"type": "function"
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"inputs": [
|
|
257
|
+
{
|
|
258
|
+
"internalType": "bytes32",
|
|
259
|
+
"name": "_packetHash",
|
|
260
|
+
"type": "bytes32"
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
"internalType": "bytes",
|
|
264
|
+
"name": "_transactionProof",
|
|
265
|
+
"type": "bytes"
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
"internalType": "uint256",
|
|
269
|
+
"name": "_remoteAddressSize",
|
|
270
|
+
"type": "uint256"
|
|
271
|
+
}
|
|
272
|
+
],
|
|
273
|
+
"name": "validateProof",
|
|
274
|
+
"outputs": [
|
|
275
|
+
{
|
|
276
|
+
"components": [
|
|
277
|
+
{
|
|
278
|
+
"internalType": "uint16",
|
|
279
|
+
"name": "srcChainId",
|
|
280
|
+
"type": "uint16"
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
"internalType": "uint16",
|
|
284
|
+
"name": "dstChainId",
|
|
285
|
+
"type": "uint16"
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"internalType": "uint64",
|
|
289
|
+
"name": "nonce",
|
|
290
|
+
"type": "uint64"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"internalType": "address",
|
|
294
|
+
"name": "dstAddress",
|
|
295
|
+
"type": "address"
|
|
296
|
+
},
|
|
297
|
+
{
|
|
298
|
+
"internalType": "bytes",
|
|
299
|
+
"name": "srcAddress",
|
|
300
|
+
"type": "bytes"
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
"internalType": "bytes32",
|
|
304
|
+
"name": "ulnAddress",
|
|
305
|
+
"type": "bytes32"
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
"internalType": "bytes",
|
|
309
|
+
"name": "payload",
|
|
310
|
+
"type": "bytes"
|
|
311
|
+
}
|
|
312
|
+
],
|
|
313
|
+
"internalType": "struct LayerZeroPacket.Packet",
|
|
314
|
+
"name": "packet",
|
|
315
|
+
"type": "tuple"
|
|
316
|
+
}
|
|
317
|
+
],
|
|
318
|
+
"stateMutability": "view",
|
|
319
|
+
"type": "function"
|
|
320
|
+
}
|
|
321
|
+
],
|
|
322
|
+
"bytecode": "0x60c06040526000805461ff001960ff199091166002171661010017905534801561002857600080fd5b5060405161146738038061146783398101604081905261004791610081565b6001600160601b0319606092831b8116608052911b1660a0526100b3565b80516001600160a01b038116811461007c57600080fd5b919050565b60008060408385031215610093578182fd5b61009c83610065565b91506100aa60208401610065565b90509250929050565b60805160601c60a05160601c6113816100e6600039806103dc528061045f525080610200528061037152506113816000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c80636348d26911610081578063d633ad611161005b578063d633ad6114610184578063e965c1921461018c578063ea455df914610194576100c9565b80636348d269146101545780639bcd850f14610169578063b71e0f7114610171576100c9565b80632ff20449116100b25780632ff204491461010c57806347713b391461012c5780635711c2a814610134576100c9565b806305af5d35146100ce5780630f222e65146100ec575b600080fd5b6100d66101a7565b6040516100e391906111e3565b60405180910390f35b6100ff6100fa366004610cfa565b6101b0565b6040516100e391906111b4565b61011f61011a366004610e6f565b6101c2565b6040516100e39190611106565b6100d66101dd565b610147610142366004610df7565b6101eb565b6040516100e3919061103d565b61015c6101fe565b6040516100e3919061101c565b6100d6610222565b61011f61017f366004610d7a565b61022b565b6100d661044f565b61015c61045d565b6101476101a2366004610df7565b610481565b60005460ff1681565b6101b8610aeb565b9695505050505050565b6101ca610b0a565b6101d584848461048c565b949350505050565b600054610100900460ff1681565b60606101f682610666565b90505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60005460ff1690565b610233610b0a565b60008211610276576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026d906110cf565b60405180910390fd5b60208311801561029c575084848460405161029292919061100c565b6040518091039020145b6102d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026d90611072565b60006102e160208286886112f7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208083015192935061036d915061032f908790818a6112f7565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525088925085915061048c9050565b92507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16836060015173ffffffffffffffffffffffffffffffffffffffff1614156103da576103d48360c00151610666565b60c08401525b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16836060015173ffffffffffffffffffffffffffffffffffffffff1614156104455761043f8360c00151610787565b60c08401525b5050949350505050565b600054610100900460ff1690565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606101f682610787565b610494610b0a565b835160006104a3856020610831565b90508082101561051457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4c617965725a65726f5061636b65743a20696e76616c6964207061636b657400604482015290519081900360640190fd5b6008860151600a870151868801600c8101516020909101518486039392919061ffff83166105a357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4c617965725a65726f5061636b65743a20696e76616c6964207061636b657400604482015290519081900360640190fd5b6105ab610b48565b6105b5818c6108ae565b506105c58160008e602a8f6108e8565b506105ce610b48565b86156105fc576105de81886108ae565b506105fa60008e6105f08b6020610831565b849291908b6108e8565b505b6040805160e08101825261ffff968716815294909516602085015267ffffffffffffffff9095169383019390935273ffffffffffffffffffffffffffffffffffffffff1660608201529051608082015260a08101879052905160c082015293505050509392505050565b6020810151606090600160ff82161415610780576000806000806000806000898060200190518101906106999190610ebb565b975097509750975097509750975050600081511115610778578151600090156106c3575060148201515b803b80610775576000826040516020016106dd9190610fdc565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815260208381018352600080855292519194509192610733928f928f928f928f928f928f928b92016111f1565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529c506101f99b505050505050505050505050565b50505b505050505050505b5090919050565b6060600080838060200190518101906107a09190610e2a565b91509150600080835111156107b6575060148201515b73ffffffffffffffffffffffffffffffffffffffff81166108285760405161dead906000906107e9908390602001610fdc565b6040516020818303038152906040529050808460405160200161080d929190611050565b604051602081830303815290604052955050505050506101f9565b50929392505050565b6000828201838110156108a557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6108b6610b48565b60208206156108cb5760208206602003820191505b506020828101829052604080518085526000815290920101905290565b6108f0610b48565b8560200151828601111561091a5761091a8661091288602001518886016109c2565b6002026109d9565b6000808751805188602083010193508089870111156109395788860182525b5050508484015b6020841061097d57805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610940565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b6000818311156109d35750816108a8565b50919050565b81516109e583836108ae565b506109f083826109f6565b50505050565b6109fe610b48565b6108a583846000015151848551610a13610b48565b8251821115610a2157600080fd5b84602001518285011115610a4357610a438561091287602001518786016109c2565b600080865180518760208301019350808887011115610a625787860182525b505050602084015b60208410610aa757805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610a6a565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160608082018352600080835260208301529181019190915290565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b604051806040016040528060608152602001600081525090565b60008083601f840112610b73578081fd5b50813567ffffffffffffffff811115610b8a578182fd5b6020830191508360208083028501011115610ba457600080fd5b9250929050565b600082601f830112610bbb578081fd5b8135610bce610bc9826112b7565b611293565b818152846020838601011115610be2578283fd5b816020850160208301379081016020019190915292915050565b600082601f830112610c0c578081fd5b8151610c1a610bc9826112b7565b818152846020838601011115610c2e578283fd5b6101d582602083016020870161131f565b600060408284031215610c50578081fd5b6040516040810181811067ffffffffffffffff82111715610c6d57fe5b604052825181526020928301519281019290925250919050565b600060c08284031215610c98578081fd5b60405160c0810181811067ffffffffffffffff82111715610cb557fe5b8060405250809150825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201525092915050565b60008060008060008060808789031215610d12578182fd5b86359550602087013567ffffffffffffffff80821115610d30578384fd5b610d3c8a838b01610b62565b9097509550604089013594506060890135915080821115610d5b578384fd5b50610d6889828a01610b62565b979a9699509497509295939492505050565b60008060008060608587031215610d8f578384fd5b84359350602085013567ffffffffffffffff80821115610dad578485fd5b818701915087601f830112610dc0578485fd5b813581811115610dce578586fd5b886020828501011115610ddf578586fd5b95986020929092019750949560400135945092505050565b600060208284031215610e08578081fd5b813567ffffffffffffffff811115610e1e578182fd5b6101d584828501610bab565b60008060408385031215610e3c578182fd5b825167ffffffffffffffff811115610e52578283fd5b610e5e85828601610bfc565b925050602083015190509250929050565b600080600060608486031215610e83578283fd5b833567ffffffffffffffff811115610e99578384fd5b610ea586828701610bab565b9660208601359650604090950135949350505050565b6000806000806000806000806101c0898b031215610ed7578182fd5b885160ff81168114610ee7578283fd5b80985050602089015196506040890151955060608901519450610f0d8a60808b01610c3f565b9350610f1c8a60c08b01610c87565b925061018089015167ffffffffffffffff80821115610f39578384fd5b610f458c838d01610bfc565b93506101a08b0151915080821115610f5b578283fd5b50610f688b828c01610bfc565b9150509295985092959890939650565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452610faa81602086016020860161131f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b6000828483379101908152919050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b6000602082526108a56020830184610f92565b6000604082526110636040830185610f92565b90508260208301529392505050565b60208082526023908201527f50726f6f664c69623a20696e76616c6964207472616e73616374696f6e20707260408201527f6f6f660000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f50726f6f664c69623a20696e76616c696420616464726573732073697a650000604082015260600190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff6040840151166060830152606083015161114b6080840182610f78565b50608083015160e060a0840152611166610100840182610f92565b905060a084015160c084015260c08401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08483030160e08501526111ab8282610f92565b95945050505050565b600060208252825160208301526020830151604083015260408301516060808401526101d56080840182610f92565b60ff91909116815260200190565b60006101c060ff8b16835289602084015288604084015287606084015286516080840152602087015160a0840152855160c0840152602086015160e084015260408601516101008401526060860151610120840152608086015161014084015260a08601516101608401528061018084015261126f81840186610f92565b90508281036101a08401526112848185610f92565b9b9a5050505050505050505050565b60405181810167ffffffffffffffff811182821017156112af57fe5b604052919050565b600067ffffffffffffffff8211156112cb57fe5b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60008085851115611306578182fd5b83861115611312578182fd5b5050820193919092039150565b60005b8381101561133a578181015183820152602001611322565b838111156109f0575050600091015256fea26469706673582212204e0c5c2a7026a7b0defd5e1cfd062e365840a8aee2246f9233adacfdb03e02ee64736f6c63430007060033",
|
|
323
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100c95760003560e01c80636348d26911610081578063d633ad611161005b578063d633ad6114610184578063e965c1921461018c578063ea455df914610194576100c9565b80636348d269146101545780639bcd850f14610169578063b71e0f7114610171576100c9565b80632ff20449116100b25780632ff204491461010c57806347713b391461012c5780635711c2a814610134576100c9565b806305af5d35146100ce5780630f222e65146100ec575b600080fd5b6100d66101a7565b6040516100e391906111e3565b60405180910390f35b6100ff6100fa366004610cfa565b6101b0565b6040516100e391906111b4565b61011f61011a366004610e6f565b6101c2565b6040516100e39190611106565b6100d66101dd565b610147610142366004610df7565b6101eb565b6040516100e3919061103d565b61015c6101fe565b6040516100e3919061101c565b6100d6610222565b61011f61017f366004610d7a565b61022b565b6100d661044f565b61015c61045d565b6101476101a2366004610df7565b610481565b60005460ff1681565b6101b8610aeb565b9695505050505050565b6101ca610b0a565b6101d584848461048c565b949350505050565b600054610100900460ff1681565b60606101f682610666565b90505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60005460ff1690565b610233610b0a565b60008211610276576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026d906110cf565b60405180910390fd5b60208311801561029c575084848460405161029292919061100c565b6040518091039020145b6102d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161026d90611072565b60006102e160208286886112f7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250505060208083015192935061036d915061032f908790818a6112f7565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525088925085915061048c9050565b92507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16836060015173ffffffffffffffffffffffffffffffffffffffff1614156103da576103d48360c00151610666565b60c08401525b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16836060015173ffffffffffffffffffffffffffffffffffffffff1614156104455761043f8360c00151610787565b60c08401525b5050949350505050565b600054610100900460ff1690565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606101f682610787565b610494610b0a565b835160006104a3856020610831565b90508082101561051457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4c617965725a65726f5061636b65743a20696e76616c6964207061636b657400604482015290519081900360640190fd5b6008860151600a870151868801600c8101516020909101518486039392919061ffff83166105a357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4c617965725a65726f5061636b65743a20696e76616c6964207061636b657400604482015290519081900360640190fd5b6105ab610b48565b6105b5818c6108ae565b506105c58160008e602a8f6108e8565b506105ce610b48565b86156105fc576105de81886108ae565b506105fa60008e6105f08b6020610831565b849291908b6108e8565b505b6040805160e08101825261ffff968716815294909516602085015267ffffffffffffffff9095169383019390935273ffffffffffffffffffffffffffffffffffffffff1660608201529051608082015260a08101879052905160c082015293505050509392505050565b6020810151606090600160ff82161415610780576000806000806000806000898060200190518101906106999190610ebb565b975097509750975097509750975050600081511115610778578151600090156106c3575060148201515b803b80610775576000826040516020016106dd9190610fdc565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815260208381018352600080855292519194509192610733928f928f928f928f928f928f928b92016111f1565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529c506101f99b505050505050505050505050565b50505b505050505050505b5090919050565b6060600080838060200190518101906107a09190610e2a565b91509150600080835111156107b6575060148201515b73ffffffffffffffffffffffffffffffffffffffff81166108285760405161dead906000906107e9908390602001610fdc565b6040516020818303038152906040529050808460405160200161080d929190611050565b604051602081830303815290604052955050505050506101f9565b50929392505050565b6000828201838110156108a557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b6108b6610b48565b60208206156108cb5760208206602003820191505b506020828101829052604080518085526000815290920101905290565b6108f0610b48565b8560200151828601111561091a5761091a8661091288602001518886016109c2565b6002026109d9565b6000808751805188602083010193508089870111156109395788860182525b5050508484015b6020841061097d57805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610940565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b6000818311156109d35750816108a8565b50919050565b81516109e583836108ae565b506109f083826109f6565b50505050565b6109fe610b48565b6108a583846000015151848551610a13610b48565b8251821115610a2157600080fd5b84602001518285011115610a4357610a438561091287602001518786016109c2565b600080865180518760208301019350808887011115610a625787860182525b505050602084015b60208410610aa757805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610a6a565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160608082018352600080835260208301529181019190915290565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b604051806040016040528060608152602001600081525090565b60008083601f840112610b73578081fd5b50813567ffffffffffffffff811115610b8a578182fd5b6020830191508360208083028501011115610ba457600080fd5b9250929050565b600082601f830112610bbb578081fd5b8135610bce610bc9826112b7565b611293565b818152846020838601011115610be2578283fd5b816020850160208301379081016020019190915292915050565b600082601f830112610c0c578081fd5b8151610c1a610bc9826112b7565b818152846020838601011115610c2e578283fd5b6101d582602083016020870161131f565b600060408284031215610c50578081fd5b6040516040810181811067ffffffffffffffff82111715610c6d57fe5b604052825181526020928301519281019290925250919050565b600060c08284031215610c98578081fd5b60405160c0810181811067ffffffffffffffff82111715610cb557fe5b8060405250809150825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201525092915050565b60008060008060008060808789031215610d12578182fd5b86359550602087013567ffffffffffffffff80821115610d30578384fd5b610d3c8a838b01610b62565b9097509550604089013594506060890135915080821115610d5b578384fd5b50610d6889828a01610b62565b979a9699509497509295939492505050565b60008060008060608587031215610d8f578384fd5b84359350602085013567ffffffffffffffff80821115610dad578485fd5b818701915087601f830112610dc0578485fd5b813581811115610dce578586fd5b886020828501011115610ddf578586fd5b95986020929092019750949560400135945092505050565b600060208284031215610e08578081fd5b813567ffffffffffffffff811115610e1e578182fd5b6101d584828501610bab565b60008060408385031215610e3c578182fd5b825167ffffffffffffffff811115610e52578283fd5b610e5e85828601610bfc565b925050602083015190509250929050565b600080600060608486031215610e83578283fd5b833567ffffffffffffffff811115610e99578384fd5b610ea586828701610bab565b9660208601359650604090950135949350505050565b6000806000806000806000806101c0898b031215610ed7578182fd5b885160ff81168114610ee7578283fd5b80985050602089015196506040890151955060608901519450610f0d8a60808b01610c3f565b9350610f1c8a60c08b01610c87565b925061018089015167ffffffffffffffff80821115610f39578384fd5b610f458c838d01610bfc565b93506101a08b0151915080821115610f5b578283fd5b50610f688b828c01610bfc565b9150509295985092959890939650565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452610faa81602086016020860161131f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b6000828483379101908152919050565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b6000602082526108a56020830184610f92565b6000604082526110636040830185610f92565b90508260208301529392505050565b60208082526023908201527f50726f6f664c69623a20696e76616c6964207472616e73616374696f6e20707260408201527f6f6f660000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f50726f6f664c69623a20696e76616c696420616464726573732073697a650000604082015260600190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff6040840151166060830152606083015161114b6080840182610f78565b50608083015160e060a0840152611166610100840182610f92565b905060a084015160c084015260c08401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08483030160e08501526111ab8282610f92565b95945050505050565b600060208252825160208301526020830151604083015260408301516060808401526101d56080840182610f92565b60ff91909116815260200190565b60006101c060ff8b16835289602084015288604084015287606084015286516080840152602087015160a0840152855160c0840152602086015160e084015260408601516101008401526060860151610120840152608086015161014084015260a08601516101608401528061018084015261126f81840186610f92565b90508281036101a08401526112848185610f92565b9b9a5050505050505050505050565b60405181810167ffffffffffffffff811182821017156112af57fe5b604052919050565b600067ffffffffffffffff8211156112cb57fe5b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b60008085851115611306578182fd5b83861115611312578182fd5b5050820193919092039150565b60005b8381101561133a578181015183820152602001611322565b838111156109f0575050600091015256fea26469706673582212204e0c5c2a7026a7b0defd5e1cfd062e365840a8aee2246f9233adacfdb03e02ee64736f6c63430007060033",
|
|
324
|
+
"linkReferences": {},
|
|
325
|
+
"deployedLinkReferences": {}
|
|
326
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "MPTValidator",
|
|
4
|
+
"sourceName": "contracts/proof/MPTValidator.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [],
|
|
8
|
+
"name": "PACKET_SIGNATURE",
|
|
9
|
+
"outputs": [
|
|
10
|
+
{
|
|
11
|
+
"internalType": "bytes32",
|
|
12
|
+
"name": "",
|
|
13
|
+
"type": "bytes32"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"stateMutability": "view",
|
|
17
|
+
"type": "function"
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"inputs": [
|
|
21
|
+
{
|
|
22
|
+
"internalType": "bytes32",
|
|
23
|
+
"name": "hashRoot",
|
|
24
|
+
"type": "bytes32"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"internalType": "uint256",
|
|
28
|
+
"name": "receiptSlotIndex",
|
|
29
|
+
"type": "uint256"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"internalType": "uint256",
|
|
33
|
+
"name": "logIndex",
|
|
34
|
+
"type": "uint256"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"internalType": "bytes[]",
|
|
38
|
+
"name": "proof",
|
|
39
|
+
"type": "bytes[]"
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"internalType": "uint256[]",
|
|
43
|
+
"name": "pointers",
|
|
44
|
+
"type": "uint256[]"
|
|
45
|
+
}
|
|
46
|
+
],
|
|
47
|
+
"name": "getVerifyLog",
|
|
48
|
+
"outputs": [
|
|
49
|
+
{
|
|
50
|
+
"components": [
|
|
51
|
+
{
|
|
52
|
+
"internalType": "bytes32",
|
|
53
|
+
"name": "contractAddress",
|
|
54
|
+
"type": "bytes32"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"internalType": "bytes32",
|
|
58
|
+
"name": "topicZeroSig",
|
|
59
|
+
"type": "bytes32"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"internalType": "bytes",
|
|
63
|
+
"name": "data",
|
|
64
|
+
"type": "bytes"
|
|
65
|
+
}
|
|
66
|
+
],
|
|
67
|
+
"internalType": "struct MPTValidator.ULNLog",
|
|
68
|
+
"name": "",
|
|
69
|
+
"type": "tuple"
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"stateMutability": "pure",
|
|
73
|
+
"type": "function"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"inputs": [
|
|
77
|
+
{
|
|
78
|
+
"internalType": "bytes32",
|
|
79
|
+
"name": "_receiptsRoot",
|
|
80
|
+
"type": "bytes32"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"internalType": "bytes",
|
|
84
|
+
"name": "_transactionProof",
|
|
85
|
+
"type": "bytes"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"internalType": "uint256",
|
|
89
|
+
"name": "_remoteAddressSize",
|
|
90
|
+
"type": "uint256"
|
|
91
|
+
}
|
|
92
|
+
],
|
|
93
|
+
"name": "validateProof",
|
|
94
|
+
"outputs": [
|
|
95
|
+
{
|
|
96
|
+
"components": [
|
|
97
|
+
{
|
|
98
|
+
"internalType": "uint16",
|
|
99
|
+
"name": "srcChainId",
|
|
100
|
+
"type": "uint16"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"internalType": "uint16",
|
|
104
|
+
"name": "dstChainId",
|
|
105
|
+
"type": "uint16"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"internalType": "uint64",
|
|
109
|
+
"name": "nonce",
|
|
110
|
+
"type": "uint64"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"internalType": "address",
|
|
114
|
+
"name": "dstAddress",
|
|
115
|
+
"type": "address"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"internalType": "bytes",
|
|
119
|
+
"name": "srcAddress",
|
|
120
|
+
"type": "bytes"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"internalType": "bytes32",
|
|
124
|
+
"name": "ulnAddress",
|
|
125
|
+
"type": "bytes32"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"internalType": "bytes",
|
|
129
|
+
"name": "payload",
|
|
130
|
+
"type": "bytes"
|
|
131
|
+
}
|
|
132
|
+
],
|
|
133
|
+
"internalType": "struct LayerZeroPacket.Packet",
|
|
134
|
+
"name": "packet",
|
|
135
|
+
"type": "tuple"
|
|
136
|
+
}
|
|
137
|
+
],
|
|
138
|
+
"stateMutability": "pure",
|
|
139
|
+
"type": "function"
|
|
140
|
+
}
|
|
141
|
+
],
|
|
142
|
+
"bytecode": "0x608060405234801561001057600080fd5b5061151d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c8063b71e0f7114610046578063be9d395e1461006f578063fa3ebe1314610084575b600080fd5b6100596100543660046110d8565b6100a4565b6040516100669190611356565b60405180910390f35b610077610163565b60405161006691906112e1565b610097610092366004611155565b610187565b6040516100669190611404565b6100ac610ee8565b6000808080806100be888a018a6111d3565b9450945094509450945060006100d78b848488886101a6565b60208101519091507fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f614610140576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610137906112ea565b60405180910390fd5b6101548160400151878a8460000151610306565b9b9a5050505050505050505050565b7fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f681565b61018f610f26565b61019c86868686866101a6565b9695505050505050565b6101ae610f26565b6000606060005b8551811015610245578581815181106101ca57fe5b6020026020010151915081805190602001208914610214576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101379061131f565b845181101561023d5784818151811061022957fe5b602002602001015192506020838301015198505b6001016101b5565b506000610259610254836103fc565b610474565b805190915060009061026b908a610520565b9050610279610254826105e9565b915061028482610675565b5061028e82610675565b5061029882610675565b506102af610254896102a985610675565b90610520565b91506102b9610f26565b6102ca6102c584610675565b610725565b81526102dd6102c560006102a986610675565b60208201526102f36102ee84610675565b610842565b60408201529a9950505050505050505050565b61030e610ee8565b602085015160608601516068870151858801607c0151919061032e610f45565b610338818961096f565b506103488160008c60888c6109a9565b5060006103608961035a866014610a83565b90610a83565b905061036a610f45565b610374818361096f565b5061039060008d6103868d609c610afa565b84929190866109a9565b506040805160e08101825261ffff808e16825298909816602089015267ffffffffffffffff909416938701939093525073ffffffffffffffffffffffffffffffffffffffff9093166060850152915160808401525060a082018490525160c08201529050949350505050565b610404610f5f565b602082018051835160009190911a908015801590610425575060c060ff8316105b1561045457600192909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b60405180604001604052808281526020018481525093505050505b919050565b61047c610f79565b61048582610b75565b6104f057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f524c504465636f646572206974657261746f72206973206e6f74206c69737400604482015290519081900360640190fd5b60006104ff8360200151610baf565b60208085015160408051808201909152868152920190820152915050919050565b610528610f5f565b61053183610b75565b610586576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806114a66021913960400191505060405180910390fd5b60006105958460200151610baf565b60208501510190506000805b848110156105c0576105b283610c4e565b9283019291506001016105a1565b506105ca82610c4e565b6040805180820190915290815260208101929092525090505b92915050565b6105f1610f5f565b60006106008360200151610baf565b60208401518451908201805192935060009290921a91908015801590610629575060c060ff8416105b1561065857600191909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b604080518082019091529081526020810191909152949350505050565b61067d610f5f565b61068682610d23565b6106f157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f524c504465636f646572206974657261746f7220686173206e6f206e65787400604482015290519081900360640190fd5b6020820151600061070182610c4e565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061073a57508151602110155b6107a557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f524c504465636f64657220746f55696e7420696e76616c6964206c656e677468604482015290519081900360640190fd5b60006107b48360200151610baf565b90508083600001511015610813576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061147e6028913960400191505060405180910390fd5b82516020808501518301805192849003929183101561083957826020036101000a820491505b50949350505050565b805160609061089c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806114c76021913960400191505060405180910390fd5b60006108ab8360200151610baf565b9050808360000151101561090a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061147e6028913960400191505060405180910390fd5b825181900360008167ffffffffffffffff8111801561092857600080fd5b506040519080825280601f01601f191660200182016040528015610953576020820181803683370190505b5090506000816020019050610839848760200151018285610d38565b610977610f45565b602082061561098c5760208206602003820191505b506020828101829052604080518085526000815290920101905290565b6109b1610f45565b856020015182860111156109db576109db866109d38860200151888601610dbf565b600202610dd6565b6000808751805188602083010193508089870111156109fa5788860182525b5050508484015b60208410610a3e57805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610a01565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b600082821115610af457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610b6e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b8051600090610b865750600061046f565b6020820151805160001a9060c0821015610ba55760009250505061046f565b5060019392505050565b8051600090811a6080811015610bc957600091505061046f565b60b8811080610be4575060c08110801590610be4575060f881105b15610bf357600191505061046f565b60c0811015610c25577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a01905061046f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a01905061046f565b80516000908190811a6080811015610c695760019150610d1c565b60b8811015610c9c577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8181019150610d1c565b60c0811015610cc95760b78103600185019450806020036101000a85510460018201810193505050610d1c565b60f8811015610cfc577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4181019150610d1c565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b80518051602091820151919092015191011190565b80610d4257610dba565b5b60208110610d805782518252602092830192909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001610d43565b8251825160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01801990921691161782525b505050565b600081831115610dd05750816105e3565b50919050565b8151610de2838361096f565b50610ded8382610df3565b50505050565b610dfb610f45565b610b6e83846000015151848551610e10610f45565b8251821115610e1e57600080fd5b84602001518285011115610e4057610e40856109d38760200151878601610dbf565b600080865180518760208301019350808887011115610e5f5787860182525b505050602084015b60208410610ea457805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610e67565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b6040805160608082018352600080835260208301529181019190915290565b604051806040016040528060608152602001600081525090565b604051806040016040528060008152602001600081525090565b6040518060400160405280610f8c610f5f565b8152602001600081525090565b6000601f8381840112610faa578182fd5b82356020610fbf610fba8361145f565b61143b565b82815281810190868301865b8581101561106357813589018a603f820112610fe5578889fd5b85810135604067ffffffffffffffff821115610ffd57fe5b61102c887fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08c8501160161143b565b8281528d8284860101111561103f578b8cfd5b828285018a83013791820188018b9052508552509284019290840190600101610fcb565b509098975050505050505050565b600082601f830112611081578081fd5b81356020611091610fba8361145f565b82815281810190858301838502870184018810156110ad578586fd5b855b858110156110cb578135845292840192908401906001016110af565b5090979650505050505050565b600080600080606085870312156110ed578384fd5b84359350602085013567ffffffffffffffff8082111561110b578485fd5b818701915087601f83011261111e578485fd5b81358181111561112c578586fd5b88602082850101111561113d578586fd5b95986020929092019750949560400135945092505050565b600080600080600060a0868803121561116c578081fd5b853594506020860135935060408601359250606086013567ffffffffffffffff80821115611198578283fd5b6111a489838a01610f99565b935060808801359150808211156111b9578283fd5b506111c688828901611071565b9150509295509295909350565b600080600080600060a086880312156111ea578081fd5b853561ffff811681146111fb578182fd5b9450602086013567ffffffffffffffff80821115611217578283fd5b61122389838a01610f99565b95506040880135915080821115611238578283fd5b5061124588828901611071565b9598949750949560608101359550608001359392505050565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452815b8181101561129d57602081850181015186830182015201611281565b818111156112ae5782602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b90815260200190565b6020808252818101527f4c617965725a65726f3a207061636b6574206e6f74207265636f676e697a6564604082015260600190565b6020808252601b908201527f4c617965725a65726f3a20696e76616c696420686173686c696e6b0000000000604082015260600190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff6040840151166060830152606083015161139b608084018261125e565b50608083015160e060a08401526113b6610100840182611278565b905060a084015160c084015260c08401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08483030160e08501526113fb8282611278565b95945050505050565b600060208252825160208301526020830151604083015260408301516060808401526114336080840182611278565b949350505050565b60405181810167ffffffffffffffff8111828210171561145757fe5b604052919050565b600067ffffffffffffffff82111561147357fe5b506020908102019056fe524c504465636f6465723a20696e76616c696420524c50206974656d206f66667365742073697a65524c504465636f646572206974657261746f72206973206e6f742061206c697374524c504465636f64657220746f427974657320696e76616c6964206c656e677468a264697066735822122035de65b39872dca82af724dced6e883bebf5aa4e81e8ace478c975c5960cdcf564736f6c63430007060033",
|
|
143
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c8063b71e0f7114610046578063be9d395e1461006f578063fa3ebe1314610084575b600080fd5b6100596100543660046110d8565b6100a4565b6040516100669190611356565b60405180910390f35b610077610163565b60405161006691906112e1565b610097610092366004611155565b610187565b6040516100669190611404565b6100ac610ee8565b6000808080806100be888a018a6111d3565b9450945094509450945060006100d78b848488886101a6565b60208101519091507fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f614610140576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610137906112ea565b60405180910390fd5b6101548160400151878a8460000151610306565b9b9a5050505050505050505050565b7fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f681565b61018f610f26565b61019c86868686866101a6565b9695505050505050565b6101ae610f26565b6000606060005b8551811015610245578581815181106101ca57fe5b6020026020010151915081805190602001208914610214576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101379061131f565b845181101561023d5784818151811061022957fe5b602002602001015192506020838301015198505b6001016101b5565b506000610259610254836103fc565b610474565b805190915060009061026b908a610520565b9050610279610254826105e9565b915061028482610675565b5061028e82610675565b5061029882610675565b506102af610254896102a985610675565b90610520565b91506102b9610f26565b6102ca6102c584610675565b610725565b81526102dd6102c560006102a986610675565b60208201526102f36102ee84610675565b610842565b60408201529a9950505050505050505050565b61030e610ee8565b602085015160608601516068870151858801607c0151919061032e610f45565b610338818961096f565b506103488160008c60888c6109a9565b5060006103608961035a866014610a83565b90610a83565b905061036a610f45565b610374818361096f565b5061039060008d6103868d609c610afa565b84929190866109a9565b506040805160e08101825261ffff808e16825298909816602089015267ffffffffffffffff909416938701939093525073ffffffffffffffffffffffffffffffffffffffff9093166060850152915160808401525060a082018490525160c08201529050949350505050565b610404610f5f565b602082018051835160009190911a908015801590610425575060c060ff8316105b1561045457600192909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b60405180604001604052808281526020018481525093505050505b919050565b61047c610f79565b61048582610b75565b6104f057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f524c504465636f646572206974657261746f72206973206e6f74206c69737400604482015290519081900360640190fd5b60006104ff8360200151610baf565b60208085015160408051808201909152868152920190820152915050919050565b610528610f5f565b61053183610b75565b610586576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806114a66021913960400191505060405180910390fd5b60006105958460200151610baf565b60208501510190506000805b848110156105c0576105b283610c4e565b9283019291506001016105a1565b506105ca82610c4e565b6040805180820190915290815260208101929092525090505b92915050565b6105f1610f5f565b60006106008360200151610baf565b60208401518451908201805192935060009290921a91908015801590610629575060c060ff8416105b1561065857600191909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b604080518082019091529081526020810191909152949350505050565b61067d610f5f565b61068682610d23565b6106f157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f524c504465636f646572206974657261746f7220686173206e6f206e65787400604482015290519081900360640190fd5b6020820151600061070182610c4e565b80830160209586015260408051808201909152908152938401919091525090919050565b80516000901580159061073a57508151602110155b6107a557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f524c504465636f64657220746f55696e7420696e76616c6964206c656e677468604482015290519081900360640190fd5b60006107b48360200151610baf565b90508083600001511015610813576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061147e6028913960400191505060405180910390fd5b82516020808501518301805192849003929183101561083957826020036101000a820491505b50949350505050565b805160609061089c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806114c76021913960400191505060405180910390fd5b60006108ab8360200151610baf565b9050808360000151101561090a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602881526020018061147e6028913960400191505060405180910390fd5b825181900360008167ffffffffffffffff8111801561092857600080fd5b506040519080825280601f01601f191660200182016040528015610953576020820181803683370190505b5090506000816020019050610839848760200151018285610d38565b610977610f45565b602082061561098c5760208206602003820191505b506020828101829052604080518085526000815290920101905290565b6109b1610f45565b856020015182860111156109db576109db866109d38860200151888601610dbf565b600202610dd6565b6000808751805188602083010193508089870111156109fa5788860182525b5050508484015b60208410610a3e57805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610a01565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b600082821115610af457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610b6e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b8051600090610b865750600061046f565b6020820151805160001a9060c0821015610ba55760009250505061046f565b5060019392505050565b8051600090811a6080811015610bc957600091505061046f565b60b8811080610be4575060c08110801590610be4575060f881105b15610bf357600191505061046f565b60c0811015610c25577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a01905061046f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a01905061046f565b80516000908190811a6080811015610c695760019150610d1c565b60b8811015610c9c577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8181019150610d1c565b60c0811015610cc95760b78103600185019450806020036101000a85510460018201810193505050610d1c565b60f8811015610cfc577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4181019150610d1c565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b80518051602091820151919092015191011190565b80610d4257610dba565b5b60208110610d805782518252602092830192909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001610d43565b8251825160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01801990921691161782525b505050565b600081831115610dd05750816105e3565b50919050565b8151610de2838361096f565b50610ded8382610df3565b50505050565b610dfb610f45565b610b6e83846000015151848551610e10610f45565b8251821115610e1e57600080fd5b84602001518285011115610e4057610e40856109d38760200151878601610dbf565b600080865180518760208301019350808887011115610e5f5787860182525b505050602084015b60208410610ea457805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09093019260209182019101610e67565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b6040805160608082018352600080835260208301529181019190915290565b604051806040016040528060608152602001600081525090565b604051806040016040528060008152602001600081525090565b6040518060400160405280610f8c610f5f565b8152602001600081525090565b6000601f8381840112610faa578182fd5b82356020610fbf610fba8361145f565b61143b565b82815281810190868301865b8581101561106357813589018a603f820112610fe5578889fd5b85810135604067ffffffffffffffff821115610ffd57fe5b61102c887fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08c8501160161143b565b8281528d8284860101111561103f578b8cfd5b828285018a83013791820188018b9052508552509284019290840190600101610fcb565b509098975050505050505050565b600082601f830112611081578081fd5b81356020611091610fba8361145f565b82815281810190858301838502870184018810156110ad578586fd5b855b858110156110cb578135845292840192908401906001016110af565b5090979650505050505050565b600080600080606085870312156110ed578384fd5b84359350602085013567ffffffffffffffff8082111561110b578485fd5b818701915087601f83011261111e578485fd5b81358181111561112c578586fd5b88602082850101111561113d578586fd5b95986020929092019750949560400135945092505050565b600080600080600060a0868803121561116c578081fd5b853594506020860135935060408601359250606086013567ffffffffffffffff80821115611198578283fd5b6111a489838a01610f99565b935060808801359150808211156111b9578283fd5b506111c688828901611071565b9150509295509295909350565b600080600080600060a086880312156111ea578081fd5b853561ffff811681146111fb578182fd5b9450602086013567ffffffffffffffff80821115611217578283fd5b61122389838a01610f99565b95506040880135915080821115611238578283fd5b5061124588828901611071565b9598949750949560608101359550608001359392505050565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452815b8181101561129d57602081850181015186830182015201611281565b818111156112ae5782602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b90815260200190565b6020808252818101527f4c617965725a65726f3a207061636b6574206e6f74207265636f676e697a6564604082015260600190565b6020808252601b908201527f4c617965725a65726f3a20696e76616c696420686173686c696e6b0000000000604082015260600190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff6040840151166060830152606083015161139b608084018261125e565b50608083015160e060a08401526113b6610100840182611278565b905060a084015160c084015260c08401517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08483030160e08501526113fb8282611278565b95945050505050565b600060208252825160208301526020830151604083015260408301516060808401526114336080840182611278565b949350505050565b60405181810167ffffffffffffffff8111828210171561145757fe5b604052919050565b600067ffffffffffffffff82111561147357fe5b506020908102019056fe524c504465636f6465723a20696e76616c696420524c50206974656d206f66667365742073697a65524c504465636f646572206974657261746f72206973206e6f742061206c697374524c504465636f64657220746f427974657320696e76616c6964206c656e677468a264697066735822122035de65b39872dca82af724dced6e883bebf5aa4e81e8ace478c975c5960cdcf564736f6c63430007060033",
|
|
144
|
+
"linkReferences": {},
|
|
145
|
+
"deployedLinkReferences": {}
|
|
146
|
+
}
|