@layerzerolabs/lz-evm-protocol-v2 2.0.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 (51) hide show
  1. package/artifacts/contracts/EndpointV2.sol/EndpointV2.json +2364 -0
  2. package/artifacts/contracts/EndpointV2Alt.sol/EndpointV2Alt.json +2379 -0
  3. package/artifacts/contracts/MessageLibManager.sol/MessageLibManager.json +783 -0
  4. package/artifacts/contracts/MessagingChannel.sol/MessagingChannel.json +426 -0
  5. package/artifacts/contracts/MessagingComposer.sol/MessagingComposer.json +320 -0
  6. package/artifacts/contracts/MessagingContext.sol/MessagingContext.json +42 -0
  7. package/artifacts/contracts/interfaces/ILayerZeroComposer.sol/ILayerZeroComposer.json +44 -0
  8. package/artifacts/contracts/interfaces/ILayerZeroEndpointV2.sol/ILayerZeroEndpointV2.json +1844 -0
  9. package/artifacts/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.json +121 -0
  10. package/artifacts/contracts/interfaces/IMessageLib.sol/IMessageLib.json +149 -0
  11. package/artifacts/contracts/interfaces/IMessageLibManager.sol/IMessageLibManager.json +629 -0
  12. package/artifacts/contracts/interfaces/IMessagingChannel.sol/IMessagingChannel.json +344 -0
  13. package/artifacts/contracts/interfaces/IMessagingComposer.sol/IMessagingComposer.json +246 -0
  14. package/artifacts/contracts/interfaces/IMessagingContext.sol/IMessagingContext.json +42 -0
  15. package/artifacts/contracts/interfaces/ISendLib.sol/ISendLib.json +364 -0
  16. package/artifacts/contracts/libs/AddressCast.sol/AddressCast.json +10 -0
  17. package/artifacts/contracts/libs/CalldataBytesLib.sol/CalldataBytesLib.json +10 -0
  18. package/artifacts/contracts/libs/Errors.sol/Errors.json +226 -0
  19. package/artifacts/contracts/libs/GUID.sol/GUID.json +10 -0
  20. package/artifacts/contracts/libs/Transfer.sol/Transfer.json +32 -0
  21. package/artifacts/contracts/messagelib/BlockedMessageLib.sol/BlockedMessageLib.json +94 -0
  22. package/artifacts/contracts/messagelib/SimpleMessageLib.sol/SimpleMessageLib.json +591 -0
  23. package/artifacts/contracts/messagelib/libs/BitMaps.sol/BitMaps.json +10 -0
  24. package/artifacts/contracts/messagelib/libs/ExecutorOptions.sol/ExecutorOptions.json +26 -0
  25. package/artifacts/contracts/messagelib/libs/PacketV1Codec.sol/PacketV1Codec.json +10 -0
  26. package/contracts/EndpointV2.sol +403 -0
  27. package/contracts/EndpointV2Alt.sol +50 -0
  28. package/contracts/MessageLibManager.sol +326 -0
  29. package/contracts/MessagingChannel.sol +161 -0
  30. package/contracts/MessagingComposer.sol +80 -0
  31. package/contracts/MessagingContext.sol +36 -0
  32. package/contracts/interfaces/ILayerZeroComposer.sol +24 -0
  33. package/contracts/interfaces/ILayerZeroEndpointV2.sol +98 -0
  34. package/contracts/interfaces/ILayerZeroReceiver.sol +20 -0
  35. package/contracts/interfaces/IMessageLib.sol +26 -0
  36. package/contracts/interfaces/IMessageLibManager.sol +68 -0
  37. package/contracts/interfaces/IMessagingChannel.sol +32 -0
  38. package/contracts/interfaces/IMessagingComposer.sol +38 -0
  39. package/contracts/interfaces/IMessagingContext.sol +9 -0
  40. package/contracts/interfaces/ISendLib.sol +36 -0
  41. package/contracts/libs/AddressCast.sol +40 -0
  42. package/contracts/libs/CalldataBytesLib.sol +58 -0
  43. package/contracts/libs/Errors.sol +42 -0
  44. package/contracts/libs/GUID.sol +19 -0
  45. package/contracts/libs/Transfer.sol +34 -0
  46. package/contracts/messagelib/BlockedMessageLib.sol +30 -0
  47. package/contracts/messagelib/SimpleMessageLib.sol +149 -0
  48. package/contracts/messagelib/libs/BitMaps.sol +26 -0
  49. package/contracts/messagelib/libs/ExecutorOptions.sol +85 -0
  50. package/contracts/messagelib/libs/PacketV1Codec.sol +108 -0
  51. package/package.json +27 -0
@@ -0,0 +1,364 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "ISendLib",
4
+ "sourceName": "contracts/interfaces/ISendLib.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint32",
10
+ "name": "_eid",
11
+ "type": "uint32"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "_oapp",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint32",
20
+ "name": "_configType",
21
+ "type": "uint32"
22
+ }
23
+ ],
24
+ "name": "getConfig",
25
+ "outputs": [
26
+ {
27
+ "internalType": "bytes",
28
+ "name": "config",
29
+ "type": "bytes"
30
+ }
31
+ ],
32
+ "stateMutability": "view",
33
+ "type": "function"
34
+ },
35
+ {
36
+ "inputs": [
37
+ {
38
+ "internalType": "uint32",
39
+ "name": "_eid",
40
+ "type": "uint32"
41
+ }
42
+ ],
43
+ "name": "isSupportedEid",
44
+ "outputs": [
45
+ {
46
+ "internalType": "bool",
47
+ "name": "",
48
+ "type": "bool"
49
+ }
50
+ ],
51
+ "stateMutability": "view",
52
+ "type": "function"
53
+ },
54
+ {
55
+ "inputs": [],
56
+ "name": "messageLibType",
57
+ "outputs": [
58
+ {
59
+ "internalType": "enum MessageLibType",
60
+ "name": "",
61
+ "type": "uint8"
62
+ }
63
+ ],
64
+ "stateMutability": "view",
65
+ "type": "function"
66
+ },
67
+ {
68
+ "inputs": [
69
+ {
70
+ "components": [
71
+ {
72
+ "internalType": "uint64",
73
+ "name": "nonce",
74
+ "type": "uint64"
75
+ },
76
+ {
77
+ "internalType": "uint32",
78
+ "name": "srcEid",
79
+ "type": "uint32"
80
+ },
81
+ {
82
+ "internalType": "address",
83
+ "name": "sender",
84
+ "type": "address"
85
+ },
86
+ {
87
+ "internalType": "uint32",
88
+ "name": "dstEid",
89
+ "type": "uint32"
90
+ },
91
+ {
92
+ "internalType": "bytes32",
93
+ "name": "receiver",
94
+ "type": "bytes32"
95
+ },
96
+ {
97
+ "internalType": "bytes32",
98
+ "name": "guid",
99
+ "type": "bytes32"
100
+ },
101
+ {
102
+ "internalType": "bytes",
103
+ "name": "message",
104
+ "type": "bytes"
105
+ }
106
+ ],
107
+ "internalType": "struct Packet",
108
+ "name": "_packet",
109
+ "type": "tuple"
110
+ },
111
+ {
112
+ "internalType": "bytes",
113
+ "name": "_options",
114
+ "type": "bytes"
115
+ },
116
+ {
117
+ "internalType": "bool",
118
+ "name": "_payInLzToken",
119
+ "type": "bool"
120
+ }
121
+ ],
122
+ "name": "quote",
123
+ "outputs": [
124
+ {
125
+ "components": [
126
+ {
127
+ "internalType": "uint256",
128
+ "name": "nativeFee",
129
+ "type": "uint256"
130
+ },
131
+ {
132
+ "internalType": "uint256",
133
+ "name": "lzTokenFee",
134
+ "type": "uint256"
135
+ }
136
+ ],
137
+ "internalType": "struct MessagingFee",
138
+ "name": "",
139
+ "type": "tuple"
140
+ }
141
+ ],
142
+ "stateMutability": "view",
143
+ "type": "function"
144
+ },
145
+ {
146
+ "inputs": [
147
+ {
148
+ "components": [
149
+ {
150
+ "internalType": "uint64",
151
+ "name": "nonce",
152
+ "type": "uint64"
153
+ },
154
+ {
155
+ "internalType": "uint32",
156
+ "name": "srcEid",
157
+ "type": "uint32"
158
+ },
159
+ {
160
+ "internalType": "address",
161
+ "name": "sender",
162
+ "type": "address"
163
+ },
164
+ {
165
+ "internalType": "uint32",
166
+ "name": "dstEid",
167
+ "type": "uint32"
168
+ },
169
+ {
170
+ "internalType": "bytes32",
171
+ "name": "receiver",
172
+ "type": "bytes32"
173
+ },
174
+ {
175
+ "internalType": "bytes32",
176
+ "name": "guid",
177
+ "type": "bytes32"
178
+ },
179
+ {
180
+ "internalType": "bytes",
181
+ "name": "message",
182
+ "type": "bytes"
183
+ }
184
+ ],
185
+ "internalType": "struct Packet",
186
+ "name": "_packet",
187
+ "type": "tuple"
188
+ },
189
+ {
190
+ "internalType": "bytes",
191
+ "name": "_options",
192
+ "type": "bytes"
193
+ },
194
+ {
195
+ "internalType": "bool",
196
+ "name": "_payInLzToken",
197
+ "type": "bool"
198
+ }
199
+ ],
200
+ "name": "send",
201
+ "outputs": [
202
+ {
203
+ "components": [
204
+ {
205
+ "internalType": "uint256",
206
+ "name": "nativeFee",
207
+ "type": "uint256"
208
+ },
209
+ {
210
+ "internalType": "uint256",
211
+ "name": "lzTokenFee",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "internalType": "struct MessagingFee",
216
+ "name": "",
217
+ "type": "tuple"
218
+ },
219
+ {
220
+ "internalType": "bytes",
221
+ "name": "encodedPacket",
222
+ "type": "bytes"
223
+ }
224
+ ],
225
+ "stateMutability": "nonpayable",
226
+ "type": "function"
227
+ },
228
+ {
229
+ "inputs": [
230
+ {
231
+ "internalType": "address",
232
+ "name": "_oapp",
233
+ "type": "address"
234
+ },
235
+ {
236
+ "components": [
237
+ {
238
+ "internalType": "uint32",
239
+ "name": "eid",
240
+ "type": "uint32"
241
+ },
242
+ {
243
+ "internalType": "uint32",
244
+ "name": "configType",
245
+ "type": "uint32"
246
+ },
247
+ {
248
+ "internalType": "bytes",
249
+ "name": "config",
250
+ "type": "bytes"
251
+ }
252
+ ],
253
+ "internalType": "struct SetConfigParam[]",
254
+ "name": "_config",
255
+ "type": "tuple[]"
256
+ }
257
+ ],
258
+ "name": "setConfig",
259
+ "outputs": [],
260
+ "stateMutability": "nonpayable",
261
+ "type": "function"
262
+ },
263
+ {
264
+ "inputs": [
265
+ {
266
+ "internalType": "address",
267
+ "name": "_treasury",
268
+ "type": "address"
269
+ }
270
+ ],
271
+ "name": "setTreasury",
272
+ "outputs": [],
273
+ "stateMutability": "nonpayable",
274
+ "type": "function"
275
+ },
276
+ {
277
+ "inputs": [
278
+ {
279
+ "internalType": "bytes4",
280
+ "name": "interfaceId",
281
+ "type": "bytes4"
282
+ }
283
+ ],
284
+ "name": "supportsInterface",
285
+ "outputs": [
286
+ {
287
+ "internalType": "bool",
288
+ "name": "",
289
+ "type": "bool"
290
+ }
291
+ ],
292
+ "stateMutability": "view",
293
+ "type": "function"
294
+ },
295
+ {
296
+ "inputs": [],
297
+ "name": "version",
298
+ "outputs": [
299
+ {
300
+ "internalType": "uint64",
301
+ "name": "major",
302
+ "type": "uint64"
303
+ },
304
+ {
305
+ "internalType": "uint8",
306
+ "name": "minor",
307
+ "type": "uint8"
308
+ },
309
+ {
310
+ "internalType": "uint8",
311
+ "name": "endpointVersion",
312
+ "type": "uint8"
313
+ }
314
+ ],
315
+ "stateMutability": "view",
316
+ "type": "function"
317
+ },
318
+ {
319
+ "inputs": [
320
+ {
321
+ "internalType": "address",
322
+ "name": "_to",
323
+ "type": "address"
324
+ },
325
+ {
326
+ "internalType": "uint256",
327
+ "name": "_amount",
328
+ "type": "uint256"
329
+ }
330
+ ],
331
+ "name": "withdrawFee",
332
+ "outputs": [],
333
+ "stateMutability": "nonpayable",
334
+ "type": "function"
335
+ },
336
+ {
337
+ "inputs": [
338
+ {
339
+ "internalType": "address",
340
+ "name": "_lzToken",
341
+ "type": "address"
342
+ },
343
+ {
344
+ "internalType": "address",
345
+ "name": "_to",
346
+ "type": "address"
347
+ },
348
+ {
349
+ "internalType": "uint256",
350
+ "name": "_amount",
351
+ "type": "uint256"
352
+ }
353
+ ],
354
+ "name": "withdrawLzTokenFee",
355
+ "outputs": [],
356
+ "stateMutability": "nonpayable",
357
+ "type": "function"
358
+ }
359
+ ],
360
+ "bytecode": "0x",
361
+ "deployedBytecode": "0x",
362
+ "linkReferences": {},
363
+ "deployedLinkReferences": {}
364
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "AddressCast",
4
+ "sourceName": "contracts/libs/AddressCast.sol",
5
+ "abi": [],
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220859abe00aa36bbaaa00fd2128ad58dba00f66234cffc9f94cafb31424c1ed31d64736f6c63430008160033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220859abe00aa36bbaaa00fd2128ad58dba00f66234cffc9f94cafb31424c1ed31d64736f6c63430008160033",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {}
10
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "CalldataBytesLib",
4
+ "sourceName": "contracts/libs/CalldataBytesLib.sol",
5
+ "abi": [],
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220cb9420bfb74d41660fb2d1062a66d78ad3ce33590008a22d995ddb7db11903d464736f6c63430008160033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220cb9420bfb74d41660fb2d1062a66d78ad3ce33590008a22d995ddb7db11903d464736f6c63430008160033",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {}
10
+ }
@@ -0,0 +1,226 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "Errors",
4
+ "sourceName": "contracts/libs/Errors.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "AlreadyRegistered",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "ComposeExists",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "inputs": [
18
+ {
19
+ "internalType": "bytes32",
20
+ "name": "expected",
21
+ "type": "bytes32"
22
+ },
23
+ {
24
+ "internalType": "bytes32",
25
+ "name": "actual",
26
+ "type": "bytes32"
27
+ }
28
+ ],
29
+ "name": "ComposeNotFound",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "DefaultReceiveLibUnavailable",
35
+ "type": "error"
36
+ },
37
+ {
38
+ "inputs": [],
39
+ "name": "DefaultSendLibUnavailable",
40
+ "type": "error"
41
+ },
42
+ {
43
+ "inputs": [
44
+ {
45
+ "internalType": "uint256",
46
+ "name": "requiredNative",
47
+ "type": "uint256"
48
+ },
49
+ {
50
+ "internalType": "uint256",
51
+ "name": "suppliedNative",
52
+ "type": "uint256"
53
+ },
54
+ {
55
+ "internalType": "uint256",
56
+ "name": "requiredLzToken",
57
+ "type": "uint256"
58
+ },
59
+ {
60
+ "internalType": "uint256",
61
+ "name": "suppliedLzToken",
62
+ "type": "uint256"
63
+ }
64
+ ],
65
+ "name": "InsufficientFee",
66
+ "type": "error"
67
+ },
68
+ {
69
+ "inputs": [],
70
+ "name": "InvalidAddress",
71
+ "type": "error"
72
+ },
73
+ {
74
+ "inputs": [
75
+ {
76
+ "internalType": "uint256",
77
+ "name": "required",
78
+ "type": "uint256"
79
+ },
80
+ {
81
+ "internalType": "uint256",
82
+ "name": "supplied",
83
+ "type": "uint256"
84
+ }
85
+ ],
86
+ "name": "InvalidAmount",
87
+ "type": "error"
88
+ },
89
+ {
90
+ "inputs": [],
91
+ "name": "InvalidArgument",
92
+ "type": "error"
93
+ },
94
+ {
95
+ "inputs": [],
96
+ "name": "InvalidExpiry",
97
+ "type": "error"
98
+ },
99
+ {
100
+ "inputs": [
101
+ {
102
+ "internalType": "uint64",
103
+ "name": "nonce",
104
+ "type": "uint64"
105
+ }
106
+ ],
107
+ "name": "InvalidNonce",
108
+ "type": "error"
109
+ },
110
+ {
111
+ "inputs": [],
112
+ "name": "InvalidPayloadHash",
113
+ "type": "error"
114
+ },
115
+ {
116
+ "inputs": [],
117
+ "name": "InvalidReceiveLibrary",
118
+ "type": "error"
119
+ },
120
+ {
121
+ "inputs": [],
122
+ "name": "InvalidSizeForAddress",
123
+ "type": "error"
124
+ },
125
+ {
126
+ "inputs": [],
127
+ "name": "LzTokenUnavailable",
128
+ "type": "error"
129
+ },
130
+ {
131
+ "inputs": [],
132
+ "name": "NotImplemented",
133
+ "type": "error"
134
+ },
135
+ {
136
+ "inputs": [],
137
+ "name": "OnlyAltToken",
138
+ "type": "error"
139
+ },
140
+ {
141
+ "inputs": [],
142
+ "name": "OnlyNonDefaultLib",
143
+ "type": "error"
144
+ },
145
+ {
146
+ "inputs": [],
147
+ "name": "OnlyReceiveLib",
148
+ "type": "error"
149
+ },
150
+ {
151
+ "inputs": [],
152
+ "name": "OnlyRegisteredLib",
153
+ "type": "error"
154
+ },
155
+ {
156
+ "inputs": [],
157
+ "name": "OnlyRegisteredOrDefaultLib",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "inputs": [],
162
+ "name": "OnlySendLib",
163
+ "type": "error"
164
+ },
165
+ {
166
+ "inputs": [],
167
+ "name": "PathNotInitializable",
168
+ "type": "error"
169
+ },
170
+ {
171
+ "inputs": [],
172
+ "name": "PathNotVerifiable",
173
+ "type": "error"
174
+ },
175
+ {
176
+ "inputs": [
177
+ {
178
+ "internalType": "bytes32",
179
+ "name": "expected",
180
+ "type": "bytes32"
181
+ },
182
+ {
183
+ "internalType": "bytes32",
184
+ "name": "actual",
185
+ "type": "bytes32"
186
+ }
187
+ ],
188
+ "name": "PayloadHashNotFound",
189
+ "type": "error"
190
+ },
191
+ {
192
+ "inputs": [],
193
+ "name": "SameValue",
194
+ "type": "error"
195
+ },
196
+ {
197
+ "inputs": [],
198
+ "name": "SendReentrancy",
199
+ "type": "error"
200
+ },
201
+ {
202
+ "inputs": [],
203
+ "name": "Unauthorized",
204
+ "type": "error"
205
+ },
206
+ {
207
+ "inputs": [],
208
+ "name": "UnsupportedEid",
209
+ "type": "error"
210
+ },
211
+ {
212
+ "inputs": [],
213
+ "name": "UnsupportedInterface",
214
+ "type": "error"
215
+ },
216
+ {
217
+ "inputs": [],
218
+ "name": "ZeroLzTokenFee",
219
+ "type": "error"
220
+ }
221
+ ],
222
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f746fb48d8fab6500d7d3edf7cd85b08dca0492d3ad90ec5431eb598d802d3bc64736f6c63430008160033",
223
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f746fb48d8fab6500d7d3edf7cd85b08dca0492d3ad90ec5431eb598d802d3bc64736f6c63430008160033",
224
+ "linkReferences": {},
225
+ "deployedLinkReferences": {}
226
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "GUID",
4
+ "sourceName": "contracts/libs/GUID.sol",
5
+ "abi": [],
6
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122057acc9edcb83cf5dd7f1e7c0fad5f44b270c8c201c47f5c83db89e98ec88bd2f64736f6c63430008160033",
7
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122057acc9edcb83cf5dd7f1e7c0fad5f44b270c8c201c47f5c83db89e98ec88bd2f64736f6c63430008160033",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {}
10
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "Transfer",
4
+ "sourceName": "contracts/libs/Transfer.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "ToAddressIsZero",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [
13
+ {
14
+ "internalType": "address",
15
+ "name": "_to",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint256",
20
+ "name": "_value",
21
+ "type": "uint256"
22
+ }
23
+ ],
24
+ "name": "TransferNativeFailed",
25
+ "type": "error"
26
+ }
27
+ ],
28
+ "bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202996ef855ffdc2427ef699e77b81d7c3b23586bf4ce04a559c931c7550a2d00264736f6c63430008160033",
29
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212202996ef855ffdc2427ef699e77b81d7c3b23586bf4ce04a559c931c7550a2d00264736f6c63430008160033",
30
+ "linkReferences": {},
31
+ "deployedLinkReferences": {}
32
+ }