@layerzerolabs/lz-evm-messagelib-v2 2.1.5 → 2.1.7
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/decompressor/DVNDecoder.sol/DVNDecoder.json +10 -0
- package/artifacts/contracts/decompressor/DVNDecompressor.sol/DVNDecompressor.json +261 -0
- package/artifacts/contracts/decompressor/DecompressorExtension.sol/DecompressorExtension.json +92 -0
- package/artifacts/contracts/decompressor/ExecutorDecoder.sol/ExecutorDecoder.json +10 -0
- package/artifacts/contracts/decompressor/ExecutorDecompressor.sol/ExecutorDecompressor.json +220 -0
- package/artifacts/contracts/mocks/DVNMock.sol/DVNMock.json +135 -0
- package/artifacts/contracts/mocks/ExecutorMock.sol/ExecutorMock.json +397 -0
- package/contracts/decompressor/DVNDecoder.sol +48 -0
- package/contracts/decompressor/DVNDecompressor.sol +45 -0
- package/contracts/decompressor/DecompressorExtension.sol +204 -0
- package/contracts/decompressor/ExecutorDecoder.sol +147 -0
- package/contracts/decompressor/ExecutorDecompressor.sol +58 -0
- package/contracts/mocks/DVNMock.sol +28 -0
- package/contracts/mocks/ExecutorMock.sol +95 -0
- package/package.json +5 -5
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "DVNDecoder",
|
|
4
|
+
"sourceName": "contracts/decompressor/DVNDecoder.sol",
|
|
5
|
+
"abi": [],
|
|
6
|
+
"bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f1f75c95eb13cacfcedaa4853b599372a9f3fed481bb8230c3fa6da11bd9424764736f6c63430008160033",
|
|
7
|
+
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f1f75c95eb13cacfcedaa4853b599372a9f3fed481bb8230c3fa6da11bd9424764736f6c63430008160033",
|
|
8
|
+
"linkReferences": {},
|
|
9
|
+
"deployedLinkReferences": {}
|
|
10
|
+
}
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "DVNDecompressor",
|
|
4
|
+
"sourceName": "contracts/decompressor/DVNDecompressor.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "contract DVN",
|
|
10
|
+
"name": "_dvn",
|
|
11
|
+
"type": "address"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"components": [
|
|
15
|
+
{
|
|
16
|
+
"internalType": "uint8",
|
|
17
|
+
"name": "index",
|
|
18
|
+
"type": "uint8"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"internalType": "address",
|
|
22
|
+
"name": "target",
|
|
23
|
+
"type": "address"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
"internalType": "struct TargetParam[]",
|
|
27
|
+
"name": "_params",
|
|
28
|
+
"type": "tuple[]"
|
|
29
|
+
}
|
|
30
|
+
],
|
|
31
|
+
"stateMutability": "nonpayable",
|
|
32
|
+
"type": "constructor"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"inputs": [
|
|
36
|
+
{
|
|
37
|
+
"internalType": "uint256",
|
|
38
|
+
"name": "value",
|
|
39
|
+
"type": "uint256"
|
|
40
|
+
}
|
|
41
|
+
],
|
|
42
|
+
"name": "IncorrectDictAccess",
|
|
43
|
+
"type": "error"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"anonymous": false,
|
|
47
|
+
"inputs": [
|
|
48
|
+
{
|
|
49
|
+
"indexed": true,
|
|
50
|
+
"internalType": "address",
|
|
51
|
+
"name": "previousOwner",
|
|
52
|
+
"type": "address"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"indexed": true,
|
|
56
|
+
"internalType": "address",
|
|
57
|
+
"name": "newOwner",
|
|
58
|
+
"type": "address"
|
|
59
|
+
}
|
|
60
|
+
],
|
|
61
|
+
"name": "OwnershipTransferred",
|
|
62
|
+
"type": "event"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"inputs": [],
|
|
66
|
+
"name": "MAX_DICT_LEN",
|
|
67
|
+
"outputs": [
|
|
68
|
+
{
|
|
69
|
+
"internalType": "uint256",
|
|
70
|
+
"name": "",
|
|
71
|
+
"type": "uint256"
|
|
72
|
+
}
|
|
73
|
+
],
|
|
74
|
+
"stateMutability": "view",
|
|
75
|
+
"type": "function"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"inputs": [],
|
|
79
|
+
"name": "RESERVE_DICT_LEN",
|
|
80
|
+
"outputs": [
|
|
81
|
+
{
|
|
82
|
+
"internalType": "uint256",
|
|
83
|
+
"name": "",
|
|
84
|
+
"type": "uint256"
|
|
85
|
+
}
|
|
86
|
+
],
|
|
87
|
+
"stateMutability": "view",
|
|
88
|
+
"type": "function"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"inputs": [
|
|
92
|
+
{
|
|
93
|
+
"internalType": "uint8",
|
|
94
|
+
"name": "_index",
|
|
95
|
+
"type": "uint8"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"internalType": "address",
|
|
99
|
+
"name": "_target",
|
|
100
|
+
"type": "address"
|
|
101
|
+
}
|
|
102
|
+
],
|
|
103
|
+
"name": "addTarget",
|
|
104
|
+
"outputs": [],
|
|
105
|
+
"stateMutability": "nonpayable",
|
|
106
|
+
"type": "function"
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"inputs": [],
|
|
110
|
+
"name": "decompress",
|
|
111
|
+
"outputs": [],
|
|
112
|
+
"stateMutability": "payable",
|
|
113
|
+
"type": "function"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"inputs": [],
|
|
117
|
+
"name": "decompressed",
|
|
118
|
+
"outputs": [
|
|
119
|
+
{
|
|
120
|
+
"internalType": "bytes",
|
|
121
|
+
"name": "raw",
|
|
122
|
+
"type": "bytes"
|
|
123
|
+
}
|
|
124
|
+
],
|
|
125
|
+
"stateMutability": "view",
|
|
126
|
+
"type": "function"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"inputs": [],
|
|
130
|
+
"name": "dvn",
|
|
131
|
+
"outputs": [
|
|
132
|
+
{
|
|
133
|
+
"internalType": "contract DVN",
|
|
134
|
+
"name": "",
|
|
135
|
+
"type": "address"
|
|
136
|
+
}
|
|
137
|
+
],
|
|
138
|
+
"stateMutability": "view",
|
|
139
|
+
"type": "function"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"inputs": [
|
|
143
|
+
{
|
|
144
|
+
"internalType": "bytes",
|
|
145
|
+
"name": "_encoded",
|
|
146
|
+
"type": "bytes"
|
|
147
|
+
}
|
|
148
|
+
],
|
|
149
|
+
"name": "execute",
|
|
150
|
+
"outputs": [],
|
|
151
|
+
"stateMutability": "nonpayable",
|
|
152
|
+
"type": "function"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"inputs": [
|
|
156
|
+
{
|
|
157
|
+
"internalType": "uint256",
|
|
158
|
+
"name": "begin",
|
|
159
|
+
"type": "uint256"
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"internalType": "uint256",
|
|
163
|
+
"name": "end",
|
|
164
|
+
"type": "uint256"
|
|
165
|
+
}
|
|
166
|
+
],
|
|
167
|
+
"name": "getData",
|
|
168
|
+
"outputs": [
|
|
169
|
+
{
|
|
170
|
+
"internalType": "bytes32[]",
|
|
171
|
+
"name": "res",
|
|
172
|
+
"type": "bytes32[]"
|
|
173
|
+
}
|
|
174
|
+
],
|
|
175
|
+
"stateMutability": "view",
|
|
176
|
+
"type": "function"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"inputs": [],
|
|
180
|
+
"name": "owner",
|
|
181
|
+
"outputs": [
|
|
182
|
+
{
|
|
183
|
+
"internalType": "address",
|
|
184
|
+
"name": "",
|
|
185
|
+
"type": "address"
|
|
186
|
+
}
|
|
187
|
+
],
|
|
188
|
+
"stateMutability": "view",
|
|
189
|
+
"type": "function"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"inputs": [
|
|
193
|
+
{
|
|
194
|
+
"internalType": "uint8",
|
|
195
|
+
"name": "_index",
|
|
196
|
+
"type": "uint8"
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
"name": "removeTarget",
|
|
200
|
+
"outputs": [],
|
|
201
|
+
"stateMutability": "nonpayable",
|
|
202
|
+
"type": "function"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"inputs": [],
|
|
206
|
+
"name": "renounceOwnership",
|
|
207
|
+
"outputs": [],
|
|
208
|
+
"stateMutability": "nonpayable",
|
|
209
|
+
"type": "function"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"inputs": [
|
|
213
|
+
{
|
|
214
|
+
"internalType": "uint8",
|
|
215
|
+
"name": "index",
|
|
216
|
+
"type": "uint8"
|
|
217
|
+
}
|
|
218
|
+
],
|
|
219
|
+
"name": "targets",
|
|
220
|
+
"outputs": [
|
|
221
|
+
{
|
|
222
|
+
"internalType": "address",
|
|
223
|
+
"name": "target",
|
|
224
|
+
"type": "address"
|
|
225
|
+
}
|
|
226
|
+
],
|
|
227
|
+
"stateMutability": "view",
|
|
228
|
+
"type": "function"
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"inputs": [
|
|
232
|
+
{
|
|
233
|
+
"internalType": "address",
|
|
234
|
+
"name": "newOwner",
|
|
235
|
+
"type": "address"
|
|
236
|
+
}
|
|
237
|
+
],
|
|
238
|
+
"name": "transferOwnership",
|
|
239
|
+
"outputs": [],
|
|
240
|
+
"stateMutability": "nonpayable",
|
|
241
|
+
"type": "function"
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"inputs": [],
|
|
245
|
+
"name": "vid",
|
|
246
|
+
"outputs": [
|
|
247
|
+
{
|
|
248
|
+
"internalType": "uint32",
|
|
249
|
+
"name": "",
|
|
250
|
+
"type": "uint32"
|
|
251
|
+
}
|
|
252
|
+
],
|
|
253
|
+
"stateMutability": "view",
|
|
254
|
+
"type": "function"
|
|
255
|
+
}
|
|
256
|
+
],
|
|
257
|
+
"bytecode": "0x60c06040523480156200001157600080fd5b506040516200154638038062001546833981016040819052620000349162000210565b6200003f3362000133565b6001600160a01b0382166080819052604080516319e698ed60e31b8152905163cf34c768916004808201926020929091908290030181865afa1580156200008a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000b091906200031e565b63ffffffff1660a05260005b81518110156200012a576000828281518110620000dd57620000dd6200034d565b60209081029190910181015180820151905160ff16600090815262100001909252604090912080546001600160a01b0319166001600160a01b0390921691909117905550600101620000bc565b50505062000363565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146200019957600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620001d757620001d76200019c565b60405290565b604051601f8201601f191681016001600160401b03811182821017156200020857620002086200019c565b604052919050565b60008060408084860312156200022557600080fd5b8351620002328162000183565b602085810151919450906001600160401b03808211156200025257600080fd5b818701915087601f8301126200026757600080fd5b8151818111156200027c576200027c6200019c565b6200028c848260051b01620001dd565b818152848101925060069190911b830184019089821115620002ad57600080fd5b928401925b818410156200030e5785848b031215620002cc5760008081fd5b620002d6620001b2565b845160ff81168114620002e95760008081fd5b815284860151620002fa8162000183565b8187015283529285019291840191620002b2565b8096505050505050509250929050565b6000602082840312156200033157600080fd5b815163ffffffff811681146200034657600080fd5b9392505050565b634e487b7160e01b600052603260045260246000fd5b60805160a0516111af62000397600039600081816102ca0152610332015260008181610116015261039a01526111af6000f3fe6080604052600436106100dd5760003560e01c806362a8fdcb1161007f57806397a656141161005957806397a656141461026b578063ac423ce114610273578063cf34c768146102b8578063f2fde38b1461030157600080fd5b806362a8fdcb14610216578063715018a61461022b5780638da5cb5b1461024057600080fd5b80633c88c82e116100bb5780633c88c82e1461018457806344e0cffd146101a45780634736d978146101c45780634e4fe306146101e957600080fd5b806309c5eabe146100e257806317b00e7d146101045780633bec591e14610162575b600080fd5b3480156100ee57600080fd5b506101026100fd366004610cbd565b610321565b005b34801561011057600080fd5b506101387f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561016e57600080fd5b50610177610406565b6040516101599190610d93565b34801561019057600080fd5b5061010261019f366004610dc3565b610423565b3480156101b057600080fd5b506101026101bf366004610e02565b610466565b3480156101d057600080fd5b506101db6210000081565b604051908152602001610159565b3480156101f557600080fd5b50610209610204366004610e35565b6104c8565b6040516101599190610e57565b34801561022257600080fd5b506101db600281565b34801561023757600080fd5b5061010261060a565b34801561024c57600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff16610138565b61010261061e565b34801561027f57600080fd5b5061013861028e366004610dc3565b621000016020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b3480156102c457600080fd5b506102ec7f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610159565b34801561030d57600080fd5b5061010261031c366004610e9b565b61062e565b6103296106e5565b600061035a83837f000000000000000000000000000000000000000000000000000000000000000062100001610766565b6040517fb143044b00000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063b143044b906103cf908490600401610eb6565b600060405180830381600087803b1580156103e957600080fd5b505af11580156103fd573d6000803e3d6000fd5b50505050505050565b606061041e610419366004816000610f99565b610a89565b905090565b61042b6106e5565b60ff166000908152621000016020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b61046e6106e5565b60ff919091166000908152621000016020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055565b60608260028110806104dd5750621000008110155b1561051c576040517f50695b8f000000000000000000000000000000000000000000000000000000008152600481018290526024015b60405180910390fd5b82600281108061052f5750621000008110155b15610569576040517f50695b8f00000000000000000000000000000000000000000000000000000000815260048101829052602401610513565b838510156106025784840367ffffffffffffffff81111561058c5761058c610fc3565b6040519080825280602002602001820160405280156105b5578160200160208202803683370190505b509250845b84811015610600576001816210000081106105d7576105d7610ff2565b015484878303815181106105ed576105ed610ff2565b60209081029190910101526001016105ba565b505b505092915050565b6106126106e5565b61061c6000610c26565b565b61061c610629610406565b610c9b565b6106366106e5565b73ffffffffffffffffffffffffffffffffffffffff81166106d9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610513565b6106e281610c26565b50565b60005473ffffffffffffffffffffffffffffffffffffffff16331461061c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610513565b6060600080868187610779600183611021565b9261078693929190610f99565b61078f91611061565b60f81c905061079f600183611021565b91508060ff1667ffffffffffffffff8111156107bd576107bd610fc3565b60405190808252806020026020018201604052801561081857816020015b6040805160a08101825260008082526020820181905260609282018390528282015260808101919091528152602001906001900390816107db5790505b50925060005b8160ff16811015610a7e576000888489610839600183611021565b9261084693929190610f99565b61084f91611061565b60f81c905061085f600185611021565b9350600089858a610871601083611021565b9261087e93929190610f99565b610887916110a7565b60801c9050610897601086611021565b945060008a868b6108a9600283611021565b926108b693929190610f99565b6108bf916110ed565b60f01c90506108cf600287611021565b955060008b878c6108e461ffff861683611021565b926108f193929190610f99565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293506109379250505061ffff831688611021565b965060008c888d610949600883611021565b9261095693929190610f99565b61095f91611133565b60c01c905061096f600889611021565b975060008d898e61098a67ffffffffffffffff861683611021565b9261099793929190610f99565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293506109e39250505067ffffffffffffffff83168a611021565b6040805160a08101825263ffffffff8f16815260ff8916600090815260208f8152908390205473ffffffffffffffffffffffffffffffffffffffff16908201529081018390526fffffffffffffffffffffffffffffffff87166060820152608081018590528b51919a50908b9089908110610a6057610a60610ff2565b6020026020010181905250505050505050808060010191505061081e565b505050949350505050565b60405160208101838301845b81811015610bf457803560008160fe1c60008114610aca5760018114610ae55760028114610b405760038114610b5457610b64565b60018360001a01803688379590950194505050600101610a95565b60018360001a601f16017f2000000000000000000000000000000000000000000000000000000000000000841615610b24576000875280602003870196505b8060018601883795860195939093016001019250610a95915050565b8260041b60f41c9150600284019350610b64565b8260041b60ec1c91506003840193505b506000818015610b825760018114610b8a5782600101549150610b8e565b339150610b8e565b3091505b508260021b60fe1c60008114610bbf5760018114610bcd5760028114610bde578160081b8752601f87019650610beb565b818752602087019650610beb565b8160601b8752601487019650610beb565b8160e01b87526004870196505b50505050610a95565b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820301825260405292915050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080825160208401305af43d6000803e8015610cb7573d6000f35b503d6000fd5b60008060208385031215610cd057600080fd5b823567ffffffffffffffff80821115610ce857600080fd5b818501915085601f830112610cfc57600080fd5b813581811115610d0b57600080fd5b866020828501011115610d1d57600080fd5b60209290920196919550909350505050565b6000815180845260005b81811015610d5557602081850181015186830182015201610d39565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081526000610da66020830184610d2f565b9392505050565b803560ff81168114610dbe57600080fd5b919050565b600060208284031215610dd557600080fd5b610da682610dad565b803573ffffffffffffffffffffffffffffffffffffffff81168114610dbe57600080fd5b60008060408385031215610e1557600080fd5b610e1e83610dad565b9150610e2c60208401610dde565b90509250929050565b60008060408385031215610e4857600080fd5b50508035926020909101359150565b6020808252825182820181905260009190848201906040850190845b81811015610e8f57835183529284019291840191600101610e73565b50909695505050505050565b600060208284031215610ead57600080fd5b610da682610dde565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015610f8b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0898403018552815160a063ffffffff825116855273ffffffffffffffffffffffffffffffffffffffff898301511689860152878201518189870152610f4f82870182610d2f565b915050606080830151818701525060808083015192508582038187015250610f778183610d2f565b968901969450505090860190600101610edf565b509098975050505050505050565b60008085851115610fa957600080fd5b83861115610fb657600080fd5b5050820193919092039150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b8082018082111561105b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b92915050565b7fff0000000000000000000000000000000000000000000000000000000000000081358181169160018510156106025760019490940360031b84901b1690921692915050565b7fffffffffffffffffffffffffffffffff0000000000000000000000000000000081358181169160108510156106025760109490940360031b84901b1690921692915050565b7fffff00000000000000000000000000000000000000000000000000000000000081358181169160028510156106025760029490940360031b84901b1690921692915050565b7fffffffffffffffff00000000000000000000000000000000000000000000000081358181169160088510156106025760089490940360031b84901b169092169291505056fea2646970667358221220b95e25728ff5ea90865ef4683365af83a84a001306a919c83d816bb21dd7382264736f6c63430008160033",
|
|
258
|
+
"deployedBytecode": "0x6080604052600436106100dd5760003560e01c806362a8fdcb1161007f57806397a656141161005957806397a656141461026b578063ac423ce114610273578063cf34c768146102b8578063f2fde38b1461030157600080fd5b806362a8fdcb14610216578063715018a61461022b5780638da5cb5b1461024057600080fd5b80633c88c82e116100bb5780633c88c82e1461018457806344e0cffd146101a45780634736d978146101c45780634e4fe306146101e957600080fd5b806309c5eabe146100e257806317b00e7d146101045780633bec591e14610162575b600080fd5b3480156100ee57600080fd5b506101026100fd366004610cbd565b610321565b005b34801561011057600080fd5b506101387f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561016e57600080fd5b50610177610406565b6040516101599190610d93565b34801561019057600080fd5b5061010261019f366004610dc3565b610423565b3480156101b057600080fd5b506101026101bf366004610e02565b610466565b3480156101d057600080fd5b506101db6210000081565b604051908152602001610159565b3480156101f557600080fd5b50610209610204366004610e35565b6104c8565b6040516101599190610e57565b34801561022257600080fd5b506101db600281565b34801561023757600080fd5b5061010261060a565b34801561024c57600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff16610138565b61010261061e565b34801561027f57600080fd5b5061013861028e366004610dc3565b621000016020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b3480156102c457600080fd5b506102ec7f000000000000000000000000000000000000000000000000000000000000000081565b60405163ffffffff9091168152602001610159565b34801561030d57600080fd5b5061010261031c366004610e9b565b61062e565b6103296106e5565b600061035a83837f000000000000000000000000000000000000000000000000000000000000000062100001610766565b6040517fb143044b00000000000000000000000000000000000000000000000000000000815290915073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063b143044b906103cf908490600401610eb6565b600060405180830381600087803b1580156103e957600080fd5b505af11580156103fd573d6000803e3d6000fd5b50505050505050565b606061041e610419366004816000610f99565b610a89565b905090565b61042b6106e5565b60ff166000908152621000016020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b61046e6106e5565b60ff919091166000908152621000016020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909216919091179055565b60608260028110806104dd5750621000008110155b1561051c576040517f50695b8f000000000000000000000000000000000000000000000000000000008152600481018290526024015b60405180910390fd5b82600281108061052f5750621000008110155b15610569576040517f50695b8f00000000000000000000000000000000000000000000000000000000815260048101829052602401610513565b838510156106025784840367ffffffffffffffff81111561058c5761058c610fc3565b6040519080825280602002602001820160405280156105b5578160200160208202803683370190505b509250845b84811015610600576001816210000081106105d7576105d7610ff2565b015484878303815181106105ed576105ed610ff2565b60209081029190910101526001016105ba565b505b505092915050565b6106126106e5565b61061c6000610c26565b565b61061c610629610406565b610c9b565b6106366106e5565b73ffffffffffffffffffffffffffffffffffffffff81166106d9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610513565b6106e281610c26565b50565b60005473ffffffffffffffffffffffffffffffffffffffff16331461061c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610513565b6060600080868187610779600183611021565b9261078693929190610f99565b61078f91611061565b60f81c905061079f600183611021565b91508060ff1667ffffffffffffffff8111156107bd576107bd610fc3565b60405190808252806020026020018201604052801561081857816020015b6040805160a08101825260008082526020820181905260609282018390528282015260808101919091528152602001906001900390816107db5790505b50925060005b8160ff16811015610a7e576000888489610839600183611021565b9261084693929190610f99565b61084f91611061565b60f81c905061085f600185611021565b9350600089858a610871601083611021565b9261087e93929190610f99565b610887916110a7565b60801c9050610897601086611021565b945060008a868b6108a9600283611021565b926108b693929190610f99565b6108bf916110ed565b60f01c90506108cf600287611021565b955060008b878c6108e461ffff861683611021565b926108f193929190610f99565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293506109379250505061ffff831688611021565b965060008c888d610949600883611021565b9261095693929190610f99565b61095f91611133565b60c01c905061096f600889611021565b975060008d898e61098a67ffffffffffffffff861683611021565b9261099793929190610f99565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509293506109e39250505067ffffffffffffffff83168a611021565b6040805160a08101825263ffffffff8f16815260ff8916600090815260208f8152908390205473ffffffffffffffffffffffffffffffffffffffff16908201529081018390526fffffffffffffffffffffffffffffffff87166060820152608081018590528b51919a50908b9089908110610a6057610a60610ff2565b6020026020010181905250505050505050808060010191505061081e565b505050949350505050565b60405160208101838301845b81811015610bf457803560008160fe1c60008114610aca5760018114610ae55760028114610b405760038114610b5457610b64565b60018360001a01803688379590950194505050600101610a95565b60018360001a601f16017f2000000000000000000000000000000000000000000000000000000000000000841615610b24576000875280602003870196505b8060018601883795860195939093016001019250610a95915050565b8260041b60f41c9150600284019350610b64565b8260041b60ec1c91506003840193505b506000818015610b825760018114610b8a5782600101549150610b8e565b339150610b8e565b3091505b508260021b60fe1c60008114610bbf5760018114610bcd5760028114610bde578160081b8752601f87019650610beb565b818752602087019650610beb565b8160601b8752601487019650610beb565b8160e01b87526004870196505b50505050610a95565b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820301825260405292915050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080825160208401305af43d6000803e8015610cb7573d6000f35b503d6000fd5b60008060208385031215610cd057600080fd5b823567ffffffffffffffff80821115610ce857600080fd5b818501915085601f830112610cfc57600080fd5b813581811115610d0b57600080fd5b866020828501011115610d1d57600080fd5b60209290920196919550909350505050565b6000815180845260005b81811015610d5557602081850181015186830182015201610d39565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b602081526000610da66020830184610d2f565b9392505050565b803560ff81168114610dbe57600080fd5b919050565b600060208284031215610dd557600080fd5b610da682610dad565b803573ffffffffffffffffffffffffffffffffffffffff81168114610dbe57600080fd5b60008060408385031215610e1557600080fd5b610e1e83610dad565b9150610e2c60208401610dde565b90509250929050565b60008060408385031215610e4857600080fd5b50508035926020909101359150565b6020808252825182820181905260009190848201906040850190845b81811015610e8f57835183529284019291840191600101610e73565b50909695505050505050565b600060208284031215610ead57600080fd5b610da682610dde565b600060208083018184528085518083526040925060408601915060408160051b87010184880160005b83811015610f8b577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0898403018552815160a063ffffffff825116855273ffffffffffffffffffffffffffffffffffffffff898301511689860152878201518189870152610f4f82870182610d2f565b915050606080830151818701525060808083015192508582038187015250610f778183610d2f565b968901969450505090860190600101610edf565b509098975050505050505050565b60008085851115610fa957600080fd5b83861115610fb657600080fd5b5050820193919092039150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b8082018082111561105b577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b92915050565b7fff0000000000000000000000000000000000000000000000000000000000000081358181169160018510156106025760019490940360031b84901b1690921692915050565b7fffffffffffffffffffffffffffffffff0000000000000000000000000000000081358181169160108510156106025760109490940360031b84901b1690921692915050565b7fffff00000000000000000000000000000000000000000000000000000000000081358181169160028510156106025760029490940360031b84901b1690921692915050565b7fffffffffffffffff00000000000000000000000000000000000000000000000081358181169160088510156106025760089490940360031b84901b169092169291505056fea2646970667358221220b95e25728ff5ea90865ef4683365af83a84a001306a919c83d816bb21dd7382264736f6c63430008160033",
|
|
259
|
+
"linkReferences": {},
|
|
260
|
+
"deployedLinkReferences": {}
|
|
261
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "DecompressorExtension",
|
|
4
|
+
"sourceName": "contracts/decompressor/DecompressorExtension.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "uint256",
|
|
10
|
+
"name": "value",
|
|
11
|
+
"type": "uint256"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"name": "IncorrectDictAccess",
|
|
15
|
+
"type": "error"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"inputs": [],
|
|
19
|
+
"name": "MAX_DICT_LEN",
|
|
20
|
+
"outputs": [
|
|
21
|
+
{
|
|
22
|
+
"internalType": "uint256",
|
|
23
|
+
"name": "",
|
|
24
|
+
"type": "uint256"
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
"stateMutability": "view",
|
|
28
|
+
"type": "function"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"inputs": [],
|
|
32
|
+
"name": "RESERVE_DICT_LEN",
|
|
33
|
+
"outputs": [
|
|
34
|
+
{
|
|
35
|
+
"internalType": "uint256",
|
|
36
|
+
"name": "",
|
|
37
|
+
"type": "uint256"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"stateMutability": "view",
|
|
41
|
+
"type": "function"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"inputs": [],
|
|
45
|
+
"name": "decompress",
|
|
46
|
+
"outputs": [],
|
|
47
|
+
"stateMutability": "payable",
|
|
48
|
+
"type": "function"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"inputs": [],
|
|
52
|
+
"name": "decompressed",
|
|
53
|
+
"outputs": [
|
|
54
|
+
{
|
|
55
|
+
"internalType": "bytes",
|
|
56
|
+
"name": "raw",
|
|
57
|
+
"type": "bytes"
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"stateMutability": "view",
|
|
61
|
+
"type": "function"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"inputs": [
|
|
65
|
+
{
|
|
66
|
+
"internalType": "uint256",
|
|
67
|
+
"name": "begin",
|
|
68
|
+
"type": "uint256"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"internalType": "uint256",
|
|
72
|
+
"name": "end",
|
|
73
|
+
"type": "uint256"
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"name": "getData",
|
|
77
|
+
"outputs": [
|
|
78
|
+
{
|
|
79
|
+
"internalType": "bytes32[]",
|
|
80
|
+
"name": "res",
|
|
81
|
+
"type": "bytes32[]"
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
"stateMutability": "view",
|
|
85
|
+
"type": "function"
|
|
86
|
+
}
|
|
87
|
+
],
|
|
88
|
+
"bytecode": "0x",
|
|
89
|
+
"deployedBytecode": "0x",
|
|
90
|
+
"linkReferences": {},
|
|
91
|
+
"deployedLinkReferences": {}
|
|
92
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "ExecutorDecoder",
|
|
4
|
+
"sourceName": "contracts/decompressor/ExecutorDecoder.sol",
|
|
5
|
+
"abi": [],
|
|
6
|
+
"bytecode": "0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220167ba4a2e68a70e1f1254a961322f8eebc67ecffb659c6af526526d21062a4ad64736f6c63430008160033",
|
|
7
|
+
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220167ba4a2e68a70e1f1254a961322f8eebc67ecffb659c6af526526d21062a4ad64736f6c63430008160033",
|
|
8
|
+
"linkReferences": {},
|
|
9
|
+
"deployedLinkReferences": {}
|
|
10
|
+
}
|