@layerzerolabs/lz-evm-sdk-v1 2.3.9 → 2.3.11

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 (166) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/artifacts-tron/contracts/Endpoint.sol/Endpoint.json +958 -0
  3. package/artifacts-tron/contracts/NonceContract.sol/NonceContract.json +88 -0
  4. package/artifacts-tron/contracts/PriceFeed.sol/PriceFeed.json +531 -0
  5. package/artifacts-tron/contracts/RelayerV2.sol/RelayerV2.json +1170 -0
  6. package/artifacts-tron/contracts/UltraLightNode.sol/UltraLightNode.json +1475 -0
  7. package/artifacts-tron/contracts/UltraLightNodeV2.sol/UltraLightNodeV2.json +1423 -0
  8. package/artifacts-tron/contracts/interfaces/IContractOne.sol/IContractOne.json +24 -0
  9. package/artifacts-tron/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.json +447 -0
  10. package/artifacts-tron/contracts/interfaces/ILayerZeroMessagingLibrary.sol/ILayerZeroMessagingLibrary.json +160 -0
  11. package/artifacts-tron/contracts/interfaces/ILayerZeroMessagingLibraryV2.sol/ILayerZeroMessagingLibraryV2.json +184 -0
  12. package/artifacts-tron/contracts/interfaces/ILayerZeroOracle.sol/ILayerZeroOracle.json +77 -0
  13. package/artifacts-tron/contracts/interfaces/ILayerZeroOracleV2.sol/ILayerZeroOracleV2.json +97 -0
  14. package/artifacts-tron/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +107 -0
  15. package/artifacts-tron/contracts/interfaces/ILayerZeroPriceFeedV2.sol/ILayerZeroPriceFeedV2.json +104 -0
  16. package/artifacts-tron/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.json +39 -0
  17. package/artifacts-tron/contracts/interfaces/ILayerZeroRelayer.sol/ILayerZeroRelayer.json +92 -0
  18. package/artifacts-tron/contracts/interfaces/ILayerZeroRelayerV2.sol/ILayerZeroRelayerV2.json +107 -0
  19. package/artifacts-tron/contracts/interfaces/ILayerZeroRelayerV2PriceData.sol/ILayerZeroRelayerV2PriceData.json +83 -0
  20. package/artifacts-tron/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +40 -0
  21. package/artifacts-tron/contracts/interfaces/ILayerZeroUltraLightNodeV1.sol/ILayerZeroUltraLightNodeV1.json +156 -0
  22. package/artifacts-tron/contracts/interfaces/ILayerZeroUltraLightNodeV2.sol/ILayerZeroUltraLightNodeV2.json +582 -0
  23. package/artifacts-tron/contracts/interfaces/ILayerZeroUserApplicationConfig.sol/ILayerZeroUserApplicationConfig.json +83 -0
  24. package/artifacts-tron/contracts/interfaces/ILayerZeroValidationLibrary.sol/ILayerZeroValidationLibrary.json +77 -0
  25. package/artifacts-tron/contracts/interfaces/IValidationLibraryHelper.sol/IValidationLibraryHelper.json +146 -0
  26. package/artifacts-tron/contracts/interfaces/IValidationLibraryHelperV2.sol/IValidationLibraryHelperV2.json +154 -0
  27. package/artifacts-tron/contracts/precrime/PreCrime.sol/PreCrime.json +353 -0
  28. package/artifacts-tron/contracts/precrime/PreCrimeBase.sol/PreCrimeBase.json +259 -0
  29. package/artifacts-tron/contracts/precrime/PreCrimeView.sol/PreCrimeView.json +318 -0
  30. package/artifacts-tron/contracts/precrime/interfaces/IPreCrime.sol/IPreCrime.json +162 -0
  31. package/artifacts-tron/contracts/precrime/interfaces/IPreCrimeBase.sol/IPreCrimeBase.json +116 -0
  32. package/artifacts-tron/contracts/precrime/interfaces/IPreCrimeView.sol/IPreCrimeView.json +162 -0
  33. package/artifacts-tron/contracts/proof/FPValidator.sol/FPValidator.json +326 -0
  34. package/artifacts-tron/contracts/proof/FPValidator.sol/IStargate.json +10 -0
  35. package/artifacts-tron/contracts/proof/MPTValidator.sol/MPTValidator.json +146 -0
  36. package/artifacts-tron/contracts/proof/MPTValidator01.sol/IStargate.json +10 -0
  37. package/artifacts-tron/contracts/proof/MPTValidator01.sol/MPTValidator01.json +339 -0
  38. package/artifacts-tron/contracts/proof/MPTValidatorStgV3.sol/MPTValidatorStgV3.json +310 -0
  39. package/artifacts-tron/contracts/proof/MPTValidatorV2.sol/MPTValidatorV2.json +212 -0
  40. package/artifacts-tron/contracts/proof/MPTValidatorV4.sol/IStargate.json +10 -0
  41. package/artifacts-tron/contracts/proof/MPTValidatorV4.sol/IUltraLightNode.json +108 -0
  42. package/artifacts-tron/contracts/proof/MPTValidatorV4.sol/MPTValidatorV4.json +414 -0
  43. package/artifacts-tron/contracts/proof/MPTValidatorV5.sol/IStargate.json +10 -0
  44. package/artifacts-tron/contracts/proof/MPTValidatorV5.sol/IUltraLightNode.json +108 -0
  45. package/artifacts-tron/contracts/proof/MPTValidatorV5.sol/MPTValidatorV5.json +432 -0
  46. package/artifacts-tron/contracts/proof/utility/Buffer.sol/Buffer.json +10 -0
  47. package/artifacts-tron/contracts/proof/utility/LayerZeroPacket.sol/LayerZeroPacket.json +10 -0
  48. package/artifacts-tron/contracts/proof/utility/RLPDecode.sol/RLPDecode.json +10 -0
  49. package/artifacts-tron/contracts/proof/utility/UltraLightNodeEVMDecoder.sol/UltraLightNodeEVMDecoder.json +10 -0
  50. package/artifacts-zk/contracts/Endpoint.sol/Endpoint.json +959 -0
  51. package/artifacts-zk/contracts/NonceContract.sol/NonceContract.json +89 -0
  52. package/artifacts-zk/contracts/PriceFeed.sol/PriceFeed.json +545 -0
  53. package/artifacts-zk/contracts/RelayerV2.sol/RelayerV2.json +1020 -0
  54. package/artifacts-zk/contracts/TreasuryV2.sol/TreasuryV2.json +309 -0
  55. package/artifacts-zk/contracts/UltraLightNodeV2.sol/UltraLightNodeV2.json +1424 -0
  56. package/artifacts-zk/contracts/interfaces/IContractOne.sol/IContractOne.json +25 -0
  57. package/artifacts-zk/contracts/interfaces/ILayerZeroEndpoint.sol/ILayerZeroEndpoint.json +448 -0
  58. package/artifacts-zk/contracts/interfaces/ILayerZeroMessagingLibrary.sol/ILayerZeroMessagingLibrary.json +161 -0
  59. package/artifacts-zk/contracts/interfaces/ILayerZeroMessagingLibraryV2.sol/ILayerZeroMessagingLibraryV2.json +185 -0
  60. package/artifacts-zk/contracts/interfaces/ILayerZeroOracleV2.sol/ILayerZeroOracleV2.json +98 -0
  61. package/artifacts-zk/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +108 -0
  62. package/artifacts-zk/contracts/interfaces/ILayerZeroPriceFeedV2.sol/ILayerZeroPriceFeedV2.json +105 -0
  63. package/artifacts-zk/contracts/interfaces/ILayerZeroReceiver.sol/ILayerZeroReceiver.json +40 -0
  64. package/artifacts-zk/contracts/interfaces/ILayerZeroRelayerV2.sol/ILayerZeroRelayerV2.json +108 -0
  65. package/artifacts-zk/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +41 -0
  66. package/artifacts-zk/contracts/interfaces/ILayerZeroUltraLightNodeV2.sol/ILayerZeroUltraLightNodeV2.json +583 -0
  67. package/artifacts-zk/contracts/interfaces/ILayerZeroUserApplicationConfig.sol/ILayerZeroUserApplicationConfig.json +84 -0
  68. package/artifacts-zk/contracts/interfaces/ILayerZeroValidationLibrary.sol/ILayerZeroValidationLibrary.json +78 -0
  69. package/artifacts-zk/contracts/interfaces/IValidationLibraryHelper.sol/IValidationLibraryHelper.json +147 -0
  70. package/artifacts-zk/contracts/interfaces/IValidationLibraryHelperV2.sol/IValidationLibraryHelperV2.json +155 -0
  71. package/artifacts-zk/contracts/oracle/OracleV2.sol/OracleV2.json +1527 -0
  72. package/artifacts-zk/contracts/precrime/PreCrime.sol/PreCrime.json +354 -0
  73. package/artifacts-zk/contracts/precrime/PreCrimeBase.sol/PreCrimeBase.json +260 -0
  74. package/artifacts-zk/contracts/precrime/PreCrimeView.sol/PreCrimeView.json +319 -0
  75. package/artifacts-zk/contracts/precrime/example/inherit/CounterI.sol/CounterI.json +624 -0
  76. package/artifacts-zk/contracts/precrime/example/inherit/CounterPrecrime.sol/CounterPrecrime.json +458 -0
  77. package/artifacts-zk/contracts/precrime/example/view/CounterPrecrimeView.sol/CounterPrecrimeView.json +417 -0
  78. package/artifacts-zk/contracts/precrime/example/view/CounterV.sol/CounterV.json +178 -0
  79. package/artifacts-zk/contracts/precrime/example/view/CounterView.sol/CounterView.json +166 -0
  80. package/artifacts-zk/contracts/precrime/interfaces/IPreCrime.sol/IPreCrime.json +163 -0
  81. package/artifacts-zk/contracts/precrime/interfaces/IPreCrimeBase.sol/IPreCrimeBase.json +117 -0
  82. package/artifacts-zk/contracts/precrime/interfaces/IPreCrimeView.sol/IPreCrimeView.json +163 -0
  83. package/artifacts-zk/contracts/proof/FPValidator.sol/FPValidator.json +327 -0
  84. package/artifacts-zk/contracts/proof/FPValidator.sol/IStargate.json +11 -0
  85. package/artifacts-zk/contracts/proof/utility/Buffer.sol/Buffer.json +11 -0
  86. package/artifacts-zk/contracts/proof/utility/LayerZeroPacket.sol/LayerZeroPacket.json +11 -0
  87. package/artifacts-zk/contracts/proof/utility/RLPDecode.sol/RLPDecode.json +11 -0
  88. package/artifacts-zk/contracts/proof/utility/UltraLightNodeEVMDecoder.sol/UltraLightNodeEVMDecoder.json +11 -0
  89. package/artifacts-zk/contracts/proxy/ProxyAdmin.sol/ProxyAdmin.json +172 -0
  90. package/artifacts-zk/contracts/proxy/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +156 -0
  91. package/deployments/arbitrum-sandbox-local/DefaultProxyAdmin.json +10 -10
  92. package/deployments/arbitrum-sandbox-local/Endpoint.json +7 -7
  93. package/deployments/arbitrum-sandbox-local/FPValidator.json +4 -4
  94. package/deployments/arbitrum-sandbox-local/MPTValidator01.json +4 -4
  95. package/deployments/arbitrum-sandbox-local/NonceContract.json +4 -4
  96. package/deployments/arbitrum-sandbox-local/RelayerV2.json +16 -16
  97. package/deployments/arbitrum-sandbox-local/RelayerV2_Implementation.json +4 -4
  98. package/deployments/arbitrum-sandbox-local/RelayerV2_Proxy.json +16 -16
  99. package/deployments/arbitrum-sandbox-local/TreasuryV2.json +7 -7
  100. package/deployments/arbitrum-sandbox-local/UltraLightNode.json +7 -7
  101. package/deployments/arbitrum-sandbox-local/UltraLightNodeV2.json +7 -7
  102. package/deployments/bsc-sandbox-local/DefaultProxyAdmin.json +10 -10
  103. package/deployments/bsc-sandbox-local/Endpoint.json +7 -7
  104. package/deployments/bsc-sandbox-local/FPValidator.json +4 -4
  105. package/deployments/bsc-sandbox-local/MPTValidator01.json +4 -4
  106. package/deployments/bsc-sandbox-local/NonceContract.json +4 -4
  107. package/deployments/bsc-sandbox-local/RelayerV2.json +16 -16
  108. package/deployments/bsc-sandbox-local/RelayerV2_Implementation.json +4 -4
  109. package/deployments/bsc-sandbox-local/RelayerV2_Proxy.json +16 -16
  110. package/deployments/bsc-sandbox-local/TreasuryV2.json +7 -7
  111. package/deployments/bsc-sandbox-local/UltraLightNode.json +7 -7
  112. package/deployments/bsc-sandbox-local/UltraLightNodeV2.json +7 -7
  113. package/deployments/cyber-mainnet/DefaultProxyAdmin.json +273 -0
  114. package/deployments/cyber-mainnet/Endpoint.json +1282 -0
  115. package/deployments/cyber-mainnet/FPValidator.json +382 -0
  116. package/deployments/cyber-mainnet/MPTValidator01.json +395 -0
  117. package/deployments/cyber-mainnet/NonceContract.json +159 -0
  118. package/deployments/cyber-mainnet/RelayerV2.json +1415 -0
  119. package/deployments/cyber-mainnet/RelayerV2_Implementation.json +1612 -0
  120. package/deployments/cyber-mainnet/RelayerV2_Proxy.json +245 -0
  121. package/deployments/cyber-mainnet/TreasuryV2.json +458 -0
  122. package/deployments/cyber-mainnet/UltraLightNodeV2.json +1816 -0
  123. package/deployments/ethereum-sandbox-local/DefaultProxyAdmin.json +10 -10
  124. package/deployments/ethereum-sandbox-local/Endpoint.json +7 -7
  125. package/deployments/ethereum-sandbox-local/FPValidator.json +4 -4
  126. package/deployments/ethereum-sandbox-local/MPTValidator01.json +4 -4
  127. package/deployments/ethereum-sandbox-local/NonceContract.json +4 -4
  128. package/deployments/ethereum-sandbox-local/RelayerV2.json +16 -16
  129. package/deployments/ethereum-sandbox-local/RelayerV2_Implementation.json +4 -4
  130. package/deployments/ethereum-sandbox-local/RelayerV2_Proxy.json +16 -16
  131. package/deployments/ethereum-sandbox-local/TreasuryV2.json +7 -7
  132. package/deployments/ethereum-sandbox-local/UltraLightNode.json +7 -7
  133. package/deployments/ethereum-sandbox-local/UltraLightNodeV2.json +7 -7
  134. package/deployments/iota-mainnet/DefaultProxyAdmin.json +273 -0
  135. package/deployments/iota-mainnet/Endpoint.json +1282 -0
  136. package/deployments/iota-mainnet/FPValidator.json +382 -0
  137. package/deployments/iota-mainnet/MPTValidator01.json +395 -0
  138. package/deployments/iota-mainnet/NonceContract.json +159 -0
  139. package/deployments/iota-mainnet/RelayerV2.json +1415 -0
  140. package/deployments/iota-mainnet/RelayerV2_Implementation.json +1612 -0
  141. package/deployments/iota-mainnet/RelayerV2_Proxy.json +245 -0
  142. package/deployments/iota-mainnet/TreasuryV2.json +458 -0
  143. package/deployments/iota-mainnet/UltraLightNodeV2.json +1816 -0
  144. package/deployments/polygon-sandbox-local/DefaultProxyAdmin.json +3 -3
  145. package/deployments/polygon-sandbox-local/Endpoint.json +2 -2
  146. package/deployments/polygon-sandbox-local/FPValidator.json +1 -1
  147. package/deployments/polygon-sandbox-local/MPTValidator01.json +1 -1
  148. package/deployments/polygon-sandbox-local/NonceContract.json +1 -1
  149. package/deployments/polygon-sandbox-local/RelayerV2.json +5 -5
  150. package/deployments/polygon-sandbox-local/RelayerV2_Implementation.json +1 -1
  151. package/deployments/polygon-sandbox-local/RelayerV2_Proxy.json +5 -5
  152. package/deployments/polygon-sandbox-local/TreasuryV2.json +2 -2
  153. package/deployments/polygon-sandbox-local/UltraLightNode.json +2 -2
  154. package/deployments/polygon-sandbox-local/UltraLightNodeV2.json +2 -2
  155. package/deployments/tron-sandbox-local/DefaultProxyAdmin.json +14 -14
  156. package/deployments/tron-sandbox-local/Endpoint.json +10 -10
  157. package/deployments/tron-sandbox-local/FPValidator.json +6 -6
  158. package/deployments/tron-sandbox-local/MPTValidator01.json +6 -6
  159. package/deployments/tron-sandbox-local/NonceContract.json +7 -7
  160. package/deployments/tron-sandbox-local/RelayerV2.json +31 -31
  161. package/deployments/tron-sandbox-local/RelayerV2_Implementation.json +6 -6
  162. package/deployments/tron-sandbox-local/RelayerV2_Proxy.json +28 -28
  163. package/deployments/tron-sandbox-local/TreasuryV2.json +11 -11
  164. package/deployments/tron-sandbox-local/UltraLightNode.json +11 -11
  165. package/deployments/tron-sandbox-local/UltraLightNodeV2.json +12 -12
  166. package/package.json +23 -7
@@ -0,0 +1,310 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MPTValidatorStgV3",
4
+ "sourceName": "contracts/proof/MPTValidatorStgV3.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_stargateBridgeAddress",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "_stgTokenAddress",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint16",
20
+ "name": "_localChainId",
21
+ "type": "uint16"
22
+ }
23
+ ],
24
+ "stateMutability": "nonpayable",
25
+ "type": "constructor"
26
+ },
27
+ {
28
+ "inputs": [],
29
+ "name": "PACKET_SIGNATURE",
30
+ "outputs": [
31
+ {
32
+ "internalType": "bytes32",
33
+ "name": "",
34
+ "type": "bytes32"
35
+ }
36
+ ],
37
+ "stateMutability": "view",
38
+ "type": "function"
39
+ },
40
+ {
41
+ "inputs": [
42
+ {
43
+ "internalType": "bytes",
44
+ "name": "data",
45
+ "type": "bytes"
46
+ },
47
+ {
48
+ "internalType": "uint16",
49
+ "name": "srcChain",
50
+ "type": "uint16"
51
+ },
52
+ {
53
+ "internalType": "uint256",
54
+ "name": "sizeOfSrcAddress",
55
+ "type": "uint256"
56
+ },
57
+ {
58
+ "internalType": "bytes32",
59
+ "name": "ulnAddress",
60
+ "type": "bytes32"
61
+ }
62
+ ],
63
+ "name": "getPacket",
64
+ "outputs": [
65
+ {
66
+ "components": [
67
+ {
68
+ "internalType": "uint16",
69
+ "name": "srcChainId",
70
+ "type": "uint16"
71
+ },
72
+ {
73
+ "internalType": "uint16",
74
+ "name": "dstChainId",
75
+ "type": "uint16"
76
+ },
77
+ {
78
+ "internalType": "uint64",
79
+ "name": "nonce",
80
+ "type": "uint64"
81
+ },
82
+ {
83
+ "internalType": "address",
84
+ "name": "dstAddress",
85
+ "type": "address"
86
+ },
87
+ {
88
+ "internalType": "bytes",
89
+ "name": "srcAddress",
90
+ "type": "bytes"
91
+ },
92
+ {
93
+ "internalType": "bytes32",
94
+ "name": "ulnAddress",
95
+ "type": "bytes32"
96
+ },
97
+ {
98
+ "internalType": "bytes",
99
+ "name": "payload",
100
+ "type": "bytes"
101
+ }
102
+ ],
103
+ "internalType": "struct LayerZeroPacket.Packet",
104
+ "name": "",
105
+ "type": "tuple"
106
+ }
107
+ ],
108
+ "stateMutability": "pure",
109
+ "type": "function"
110
+ },
111
+ {
112
+ "inputs": [
113
+ {
114
+ "internalType": "bytes32",
115
+ "name": "hashRoot",
116
+ "type": "bytes32"
117
+ },
118
+ {
119
+ "internalType": "uint256[]",
120
+ "name": "receiptSlotIndex",
121
+ "type": "uint256[]"
122
+ },
123
+ {
124
+ "internalType": "uint256",
125
+ "name": "logIndex",
126
+ "type": "uint256"
127
+ },
128
+ {
129
+ "internalType": "bytes[]",
130
+ "name": "proof",
131
+ "type": "bytes[]"
132
+ }
133
+ ],
134
+ "name": "getVerifyLog",
135
+ "outputs": [
136
+ {
137
+ "components": [
138
+ {
139
+ "internalType": "bytes32",
140
+ "name": "contractAddress",
141
+ "type": "bytes32"
142
+ },
143
+ {
144
+ "internalType": "bytes32",
145
+ "name": "topicZeroSig",
146
+ "type": "bytes32"
147
+ },
148
+ {
149
+ "internalType": "bytes",
150
+ "name": "data",
151
+ "type": "bytes"
152
+ }
153
+ ],
154
+ "internalType": "struct MPTValidatorStgV3.ULNLog",
155
+ "name": "",
156
+ "type": "tuple"
157
+ }
158
+ ],
159
+ "stateMutability": "pure",
160
+ "type": "function"
161
+ },
162
+ {
163
+ "inputs": [],
164
+ "name": "localChainId",
165
+ "outputs": [
166
+ {
167
+ "internalType": "uint16",
168
+ "name": "",
169
+ "type": "uint16"
170
+ }
171
+ ],
172
+ "stateMutability": "view",
173
+ "type": "function"
174
+ },
175
+ {
176
+ "inputs": [
177
+ {
178
+ "internalType": "bytes",
179
+ "name": "_payload",
180
+ "type": "bytes"
181
+ }
182
+ ],
183
+ "name": "secureStgPayload",
184
+ "outputs": [
185
+ {
186
+ "internalType": "bytes",
187
+ "name": "",
188
+ "type": "bytes"
189
+ }
190
+ ],
191
+ "stateMutability": "view",
192
+ "type": "function"
193
+ },
194
+ {
195
+ "inputs": [
196
+ {
197
+ "internalType": "bytes",
198
+ "name": "_payload",
199
+ "type": "bytes"
200
+ }
201
+ ],
202
+ "name": "secureStgTokenPayload",
203
+ "outputs": [
204
+ {
205
+ "internalType": "bytes",
206
+ "name": "",
207
+ "type": "bytes"
208
+ }
209
+ ],
210
+ "stateMutability": "pure",
211
+ "type": "function"
212
+ },
213
+ {
214
+ "inputs": [],
215
+ "name": "stargateBridgeAddress",
216
+ "outputs": [
217
+ {
218
+ "internalType": "address",
219
+ "name": "",
220
+ "type": "address"
221
+ }
222
+ ],
223
+ "stateMutability": "view",
224
+ "type": "function"
225
+ },
226
+ {
227
+ "inputs": [],
228
+ "name": "stgTokenAddress",
229
+ "outputs": [
230
+ {
231
+ "internalType": "address",
232
+ "name": "",
233
+ "type": "address"
234
+ }
235
+ ],
236
+ "stateMutability": "view",
237
+ "type": "function"
238
+ },
239
+ {
240
+ "inputs": [
241
+ {
242
+ "internalType": "bytes32",
243
+ "name": "_receiptsRoot",
244
+ "type": "bytes32"
245
+ },
246
+ {
247
+ "internalType": "bytes",
248
+ "name": "_transactionProof",
249
+ "type": "bytes"
250
+ },
251
+ {
252
+ "internalType": "uint256",
253
+ "name": "_remoteAddressSize",
254
+ "type": "uint256"
255
+ }
256
+ ],
257
+ "name": "validateProof",
258
+ "outputs": [
259
+ {
260
+ "components": [
261
+ {
262
+ "internalType": "uint16",
263
+ "name": "srcChainId",
264
+ "type": "uint16"
265
+ },
266
+ {
267
+ "internalType": "uint16",
268
+ "name": "dstChainId",
269
+ "type": "uint16"
270
+ },
271
+ {
272
+ "internalType": "uint64",
273
+ "name": "nonce",
274
+ "type": "uint64"
275
+ },
276
+ {
277
+ "internalType": "address",
278
+ "name": "dstAddress",
279
+ "type": "address"
280
+ },
281
+ {
282
+ "internalType": "bytes",
283
+ "name": "srcAddress",
284
+ "type": "bytes"
285
+ },
286
+ {
287
+ "internalType": "bytes32",
288
+ "name": "ulnAddress",
289
+ "type": "bytes32"
290
+ },
291
+ {
292
+ "internalType": "bytes",
293
+ "name": "payload",
294
+ "type": "bytes"
295
+ }
296
+ ],
297
+ "internalType": "struct LayerZeroPacket.Packet",
298
+ "name": "",
299
+ "type": "tuple"
300
+ }
301
+ ],
302
+ "stateMutability": "view",
303
+ "type": "function"
304
+ }
305
+ ],
306
+ "bytecode": "0x60e06040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b5060405162001eef38038062001eef8339810160408190526200005091620000ab565b606092831b6001600160601b03199081166080529190921b1660a05260f01b6001600160f01b03191660c052620000fd565b80516000906001600160a81b03811681146200009c578182fd5b6001600160a01b031692915050565b600080600060608486031215620000c0578283fd5b620000cb8462000082565b9250620000db6020850162000082565b9150604084015161ffff81168114620000f2578182fd5b809150509250925092565b60805160601c60a05160601c60c05160f01c611dad62000142600039806101ee52806102cc5250806101b7528061038252508061021252806103175250611dad6000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100bd5760003560e01c80636348d26911610090578063be9d395e11610075578063be9d395e1461015d578063e0cabadd14610172578063ea455df914610185576100bd565b80636348d26914610135578063b71e0f711461013d576100bd565b80630f222e65146100c25780633fc18d4c146100eb5780635711c2a8146101005780635b056da514610120575b600080fd5b6100d56100d0366004611645565b610198565b6040516100e29190611b9d565b60405180910390f35b6100f36101b5565b6040516100e291906119b5565b61011361010e366004611736565b6101d9565b6040516100e291906119df565b6101286101ec565b6040516100e29190611bcc565b6100f3610210565b61015061014b3660046116b9565b610234565b6040516100e29190611b16565b6101656103f9565b6040516100e291906119d6565b610150610180366004611769565b61041d565b610113610193366004611736565b610431565b6101a061136f565b6101ac8585858561043c565b95945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606101e482610582565b90505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b61023c61138e565b600080808061024d87890189611809565b935093509350935060006102638a84848761043c565b60208101519091507fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f6146102b25760405162461bcd60e51b81526004016102a990611a82565b60405180910390fd5b60006102c88260400151878a8560000151610667565b90507f000000000000000000000000000000000000000000000000000000000000000061ffff16816020015161ffff16146103155760405162461bcd60e51b81526004016102a990611ab9565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16816060015173ffffffffffffffffffffffffffffffffffffffff1614156103805761037a8160c00151610582565b60c08201525b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16816060015173ffffffffffffffffffffffffffffffffffffffff1614156103eb576103e58160c0015161075d565b60c08201525b9a9950505050505050505050565b7fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f681565b61042561138e565b6101ac85858585610667565b60606101e48261075d565b61044461136f565b81518451146104655760405162461bcd60e51b81526004016102a990611a14565b61046d6113cc565b606060005b84518110156104ff5784818151811061048757fe5b60200260200101519150818051906020012088146104b75760405162461bcd60e51b81526004016102a990611a4b565b6104dd8782815181106104c657fe5b60200260200101516104d784610807565b9061087b565b925060018551038110156104f7576104f4836109e9565b97505b600101610472565b50600061051060036104d785610ad2565b90506000610526610521838961087b565b610b5e565b905061053061136f565b61054161053c83610bf0565b6109e9565b815261055a61053c600061055485610bf0565b90610c86565b602082015261057061056b83610bf0565b610d33565b60408201529998505050505050505050565b6020810151606090600160ff82161415610660576000806000806000806000898060200190518101906105b59190611882565b975097509750975097509750975050600081511115610658578151600090156105df575060148201515b803b80610655576000826040516020016105f99190611985565b60408051601f1981840301815260208381018352600080855292519194509192610631928f928f928f928f928f928f928b9201611bdb565b60408051601f198184030181529190529c506101e79b505050505050505050505050565b50505b505050505050505b5090919050565b61066f61138e565b602085015160608601516068870151858801607c0151919061068f6113e6565b6106998189610e2c565b506106a98160008c60888c610e66565b5060006106c1896106bb866014610f22565b90610f22565b90506106cb6113e6565b6106d58183610e2c565b506106f160008d6106e78d609c610f7f565b8492919086610e66565b506040805160e08101825261ffff808e16825298909816602089015267ffffffffffffffff909416938701939093525073ffffffffffffffffffffffffffffffffffffffff9093166060850152915160808401525060a082018490525160c08201529050949350505050565b60606000808380602001905181019061077691906117c4565b915091506000808351111561078c575060148201515b73ffffffffffffffffffffffffffffffffffffffff81166107fe5760405161dead906000906107bf908390602001611985565b604051602081830303815290604052905080846040516020016107e39291906119f2565b604051602081830303815290604052955050505050506101e7565b50929392505050565b61080f6113cc565b602082018051835160009190911a908015801590610830575060c060ff8316105b1561085f57600192909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b6040805180820190915290815260208101929092525092915050565b6108836113cc565b61088c83610fe0565b6108c75760405162461bcd60e51b8152600401808060200182810382526021815260200180611d366021913960400191505060405180910390fd5b6108d08361101a565b8210610923576040805162461bcd60e51b815260206004820152601660248201527f524c50206974656d206f7574206f6620626f756e647300000000000000000000604482015290519081900360640190fd5b825160208401519081019060009061093a90611072565b60208601510190506000805b858110156109655761095783611111565b928301929150600101610946565b5061096f82611111565b90508281830111156109c8576040805162461bcd60e51b815260206004820152601160248201527f524c50206974656d206f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b60405180604001604052808281526020018381525093505050505b92915050565b8051600090158015906109fe57508151602110155b610a4f576040805162461bcd60e51b815260206004820181905260248201527f524c504465636f64657220746f55696e7420696e76616c6964206c656e677468604482015290519081900360640190fd5b6000610a5e8360200151611072565b90508083600001511015610aa35760405162461bcd60e51b8152600401808060200182810382526028815260200180611d0e6028913960400191505060405180910390fd5b825160208085015183018051928490039291831015610ac957826020036101000a820491505b50949350505050565b610ada6113cc565b6000610ae98360200151611072565b60208401518451908201805192935060009290921a91908015801590610b12575060c060ff8416105b15610b4157600191909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b604080518082019091529081526020810191909152949350505050565b610b66611400565b610b6f82610fe0565b610bc0576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f72206973206e6f74206c69737400604482015290519081900360640190fd5b6000610bcf8360200151611072565b60208085015160408051808201909152868152920190820152915050919050565b610bf86113cc565b610c01826111e6565b610c52576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f7220686173206e6f206e65787400604482015290519081900360640190fd5b60208201516000610c6282611111565b80830160209586015260408051808201909152908152938401919091525090919050565b610c8e6113cc565b610c9783610fe0565b610cd25760405162461bcd60e51b8152600401808060200182810382526021815260200180611d366021913960400191505060405180910390fd5b6000610ce18460200151611072565b60208501510190506000805b84811015610d0c57610cfe83611111565b928301929150600101610ced565b50610d1682611111565b604080518082019091529081526020810192909252509392505050565b8051606090610d735760405162461bcd60e51b8152600401808060200182810382526021815260200180611d576021913960400191505060405180910390fd5b6000610d828360200151611072565b90508083600001511015610dc75760405162461bcd60e51b8152600401808060200182810382526028815260200180611d0e6028913960400191505060405180910390fd5b825181900360008167ffffffffffffffff81118015610de557600080fd5b506040519080825280601f01601f191660200182016040528015610e10576020820181803683370190505b5090506000816020019050610ac98487602001510182856111fb565b610e346113e6565b6020820615610e495760208206602003820191505b506020828101829052604080518085526000815290920101905290565b610e6e6113e6565b85602001518286011115610e9857610e9886610e908860200151888601611264565b60020261127b565b600080875180518860208301019350808987011115610eb75788860182525b5050508484015b60208410610edd5780518252601f199093019260209182019101610ebe565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b600082821115610f79576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610fd9576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b8051600090610ff1575060006101e7565b6020820151805160001a9060c0821015611010576000925050506101e7565b5060019392505050565b805160009061102b575060006101e7565b60008061103b8460200151611072565b602085015185519181019250015b808210156110695761105a82611111565b60019093019290910190611049565b50909392505050565b8051600090811a608081101561108c5760009150506101e7565b60b88110806110a7575060c081108015906110a7575060f881105b156110b65760019150506101e7565b60c08110156110e8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a0190506101e7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a0190506101e7565b80516000908190811a608081101561112c57600191506111df565b60b881101561115f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81810191506111df565b60c081101561118c5760b78103600185019450806020036101000a855104600182018101935050506111df565b60f88110156111bf577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff41810191506111df565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b80518051602091820151919092015191011190565b806112055761125f565b5b60208110611225578251825260209283019290910190601f1901611206565b8251825160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01801990921691161782525b505050565b6000818311156112755750816109e3565b50919050565b81516112878383610e2c565b506112928382611298565b50505050565b6112a06113e6565b610fd9838460000151518485516112b56113e6565b82518211156112c357600080fd5b846020015182850111156112e5576112e585610e908760200151878601611264565b6000808651805187602083010193508088870111156113045787860182525b505050602084015b6020841061132b5780518252601f19909301926020918201910161130c565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160608082018352600080835260208301529181019190915290565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b604051806040016040528060008152602001600081525090565b604051806040016040528060608152602001600081525090565b60405180604001604052806114136113cc565b8152602001600081525090565b600082601f830112611430578081fd5b8135602061144561144083611ca1565b611c7d565b82815281810190858301855b8581101561147a57611468898684358b01016114e1565b84529284019290840190600101611451565b5090979650505050505050565b600082601f830112611497578081fd5b813560206114a761144083611ca1565b82815281810190858301838502870184018810156114c3578586fd5b855b8581101561147a578135845292840192908401906001016114c5565b600082601f8301126114f1578081fd5b81356114ff61144082611cbf565b818152846020838601011115611513578283fd5b816020850160208301379081016020019190915292915050565b600082601f83011261153d578081fd5b815161154b61144082611cbf565b81815284602083860101111561155f578283fd5b611570826020830160208701611ce1565b949350505050565b600060408284031215611589578081fd5b6040516040810181811067ffffffffffffffff821117156115a657fe5b604052825181526020928301519281019290925250919050565b600060c082840312156115d1578081fd5b60405160c0810181811067ffffffffffffffff821117156115ee57fe5b8060405250809150825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201525092915050565b803561ffff811681146101e757600080fd5b6000806000806080858703121561165a578384fd5b84359350602085013567ffffffffffffffff80821115611678578485fd5b61168488838901611487565b94506040870135935060608701359150808211156116a0578283fd5b506116ad87828801611420565b91505092959194509250565b600080600080606085870312156116ce578384fd5b84359350602085013567ffffffffffffffff808211156116ec578485fd5b818701915087601f8301126116ff578485fd5b81358181111561170d578586fd5b88602082850101111561171e578586fd5b95986020929092019750949560400135945092505050565b600060208284031215611747578081fd5b813567ffffffffffffffff81111561175d578182fd5b611570848285016114e1565b6000806000806080858703121561177e578384fd5b843567ffffffffffffffff811115611794578485fd5b6117a0878288016114e1565b9450506117af60208601611633565b93969395505050506040820135916060013590565b600080604083850312156117d6578182fd5b825167ffffffffffffffff8111156117ec578283fd5b6117f88582860161152d565b925050602083015190509250929050565b6000806000806080858703121561181e578182fd5b61182785611633565b9350602085013567ffffffffffffffff80821115611843578384fd5b61184f88838901611420565b94506040870135915080821115611864578384fd5b5061187187828801611487565b949793965093946060013593505050565b6000806000806000806000806101c0898b03121561189e578586fd5b885160ff811681146118ae578687fd5b809850506020890151965060408901519550606089015194506118d48a60808b01611578565b93506118e38a60c08b016115c0565b925061018089015167ffffffffffffffff80821115611900578384fd5b61190c8c838d0161152d565b93506101a08b0151915080821115611922578283fd5b5061192f8b828c0161152d565b9150509295985092959890939650565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452611971816020860160208601611ce1565b601f01601f19169290920160200192915050565b60609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b90815260200190565b600060208252610fd96020830184611959565b600060408252611a056040830185611959565b90508260208301529392505050565b6020808252601c908201527f50726f6f664c69623a20696e76616c69642070726f6f662073697a6500000000604082015260600190565b6020808252601a908201527f50726f6f664c69623a20696e76616c696420686173686c696e6b000000000000604082015260600190565b6020808252601f908201527f50726f6f664c69623a207061636b6574206e6f74207265636f676e697a656400604082015260600190565b60208082526026908201527f50726f6f664c69623a20696e76616c69642064657374696e6174696f6e20636860408201527f61696e2049440000000000000000000000000000000000000000000000000000606082015260800190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff60408401511660608301526060830151611b5b608084018261193f565b50608083015160e060a0840152611b76610100840182611959565b905060a084015160c084015260c0840151601f198483030160e08501526101ac8282611959565b600060208252825160208301526020830151604083015260408301516060808401526115706080840182611959565b61ffff91909116815260200190565b60006101c060ff8b16835289602084015288604084015287606084015286516080840152602087015160a0840152855160c0840152602086015160e084015260408601516101008401526060860151610120840152608086015161014084015260a086015161016084015280610180840152611c5981840186611959565b90508281036101a0840152611c6e8185611959565b9b9a5050505050505050505050565b60405181810167ffffffffffffffff81118282101715611c9957fe5b604052919050565b600067ffffffffffffffff821115611cb557fe5b5060209081020190565b600067ffffffffffffffff821115611cd357fe5b50601f01601f191660200190565b60005b83811015611cfc578181015183820152602001611ce4565b83811115611292575050600091015256fe524c504465636f6465723a20696e76616c696420524c50206974656d206f66667365742073697a65524c504465636f646572206974657261746f72206973206e6f742061206c697374524c504465636f64657220746f427974657320696e76616c6964206c656e677468a26469706673582212207de7534bb42df6b0979269b6fb454d585f4f8c289926882e5130138fd75815f564736f6c63430007060033",
307
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100bd5760003560e01c80636348d26911610090578063be9d395e11610075578063be9d395e1461015d578063e0cabadd14610172578063ea455df914610185576100bd565b80636348d26914610135578063b71e0f711461013d576100bd565b80630f222e65146100c25780633fc18d4c146100eb5780635711c2a8146101005780635b056da514610120575b600080fd5b6100d56100d0366004611645565b610198565b6040516100e29190611b9d565b60405180910390f35b6100f36101b5565b6040516100e291906119b5565b61011361010e366004611736565b6101d9565b6040516100e291906119df565b6101286101ec565b6040516100e29190611bcc565b6100f3610210565b61015061014b3660046116b9565b610234565b6040516100e29190611b16565b6101656103f9565b6040516100e291906119d6565b610150610180366004611769565b61041d565b610113610193366004611736565b610431565b6101a061136f565b6101ac8585858561043c565b95945050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60606101e482610582565b90505b919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b61023c61138e565b600080808061024d87890189611809565b935093509350935060006102638a84848761043c565b60208101519091507fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f6146102b25760405162461bcd60e51b81526004016102a990611a82565b60405180910390fd5b60006102c88260400151878a8560000151610667565b90507f000000000000000000000000000000000000000000000000000000000000000061ffff16816020015161ffff16146103155760405162461bcd60e51b81526004016102a990611ab9565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16816060015173ffffffffffffffffffffffffffffffffffffffff1614156103805761037a8160c00151610582565b60c08201525b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16816060015173ffffffffffffffffffffffffffffffffffffffff1614156103eb576103e58160c0015161075d565b60c08201525b9a9950505050505050505050565b7fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f681565b61042561138e565b6101ac85858585610667565b60606101e48261075d565b61044461136f565b81518451146104655760405162461bcd60e51b81526004016102a990611a14565b61046d6113cc565b606060005b84518110156104ff5784818151811061048757fe5b60200260200101519150818051906020012088146104b75760405162461bcd60e51b81526004016102a990611a4b565b6104dd8782815181106104c657fe5b60200260200101516104d784610807565b9061087b565b925060018551038110156104f7576104f4836109e9565b97505b600101610472565b50600061051060036104d785610ad2565b90506000610526610521838961087b565b610b5e565b905061053061136f565b61054161053c83610bf0565b6109e9565b815261055a61053c600061055485610bf0565b90610c86565b602082015261057061056b83610bf0565b610d33565b60408201529998505050505050505050565b6020810151606090600160ff82161415610660576000806000806000806000898060200190518101906105b59190611882565b975097509750975097509750975050600081511115610658578151600090156105df575060148201515b803b80610655576000826040516020016105f99190611985565b60408051601f1981840301815260208381018352600080855292519194509192610631928f928f928f928f928f928f928b9201611bdb565b60408051601f198184030181529190529c506101e79b505050505050505050505050565b50505b505050505050505b5090919050565b61066f61138e565b602085015160608601516068870151858801607c0151919061068f6113e6565b6106998189610e2c565b506106a98160008c60888c610e66565b5060006106c1896106bb866014610f22565b90610f22565b90506106cb6113e6565b6106d58183610e2c565b506106f160008d6106e78d609c610f7f565b8492919086610e66565b506040805160e08101825261ffff808e16825298909816602089015267ffffffffffffffff909416938701939093525073ffffffffffffffffffffffffffffffffffffffff9093166060850152915160808401525060a082018490525160c08201529050949350505050565b60606000808380602001905181019061077691906117c4565b915091506000808351111561078c575060148201515b73ffffffffffffffffffffffffffffffffffffffff81166107fe5760405161dead906000906107bf908390602001611985565b604051602081830303815290604052905080846040516020016107e39291906119f2565b604051602081830303815290604052955050505050506101e7565b50929392505050565b61080f6113cc565b602082018051835160009190911a908015801590610830575060c060ff8316105b1561085f57600192909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b6040805180820190915290815260208101929092525092915050565b6108836113cc565b61088c83610fe0565b6108c75760405162461bcd60e51b8152600401808060200182810382526021815260200180611d366021913960400191505060405180910390fd5b6108d08361101a565b8210610923576040805162461bcd60e51b815260206004820152601660248201527f524c50206974656d206f7574206f6620626f756e647300000000000000000000604482015290519081900360640190fd5b825160208401519081019060009061093a90611072565b60208601510190506000805b858110156109655761095783611111565b928301929150600101610946565b5061096f82611111565b90508281830111156109c8576040805162461bcd60e51b815260206004820152601160248201527f524c50206974656d206f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b60405180604001604052808281526020018381525093505050505b92915050565b8051600090158015906109fe57508151602110155b610a4f576040805162461bcd60e51b815260206004820181905260248201527f524c504465636f64657220746f55696e7420696e76616c6964206c656e677468604482015290519081900360640190fd5b6000610a5e8360200151611072565b90508083600001511015610aa35760405162461bcd60e51b8152600401808060200182810382526028815260200180611d0e6028913960400191505060405180910390fd5b825160208085015183018051928490039291831015610ac957826020036101000a820491505b50949350505050565b610ada6113cc565b6000610ae98360200151611072565b60208401518451908201805192935060009290921a91908015801590610b12575060c060ff8416105b15610b4157600191909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b604080518082019091529081526020810191909152949350505050565b610b66611400565b610b6f82610fe0565b610bc0576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f72206973206e6f74206c69737400604482015290519081900360640190fd5b6000610bcf8360200151611072565b60208085015160408051808201909152868152920190820152915050919050565b610bf86113cc565b610c01826111e6565b610c52576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f7220686173206e6f206e65787400604482015290519081900360640190fd5b60208201516000610c6282611111565b80830160209586015260408051808201909152908152938401919091525090919050565b610c8e6113cc565b610c9783610fe0565b610cd25760405162461bcd60e51b8152600401808060200182810382526021815260200180611d366021913960400191505060405180910390fd5b6000610ce18460200151611072565b60208501510190506000805b84811015610d0c57610cfe83611111565b928301929150600101610ced565b50610d1682611111565b604080518082019091529081526020810192909252509392505050565b8051606090610d735760405162461bcd60e51b8152600401808060200182810382526021815260200180611d576021913960400191505060405180910390fd5b6000610d828360200151611072565b90508083600001511015610dc75760405162461bcd60e51b8152600401808060200182810382526028815260200180611d0e6028913960400191505060405180910390fd5b825181900360008167ffffffffffffffff81118015610de557600080fd5b506040519080825280601f01601f191660200182016040528015610e10576020820181803683370190505b5090506000816020019050610ac98487602001510182856111fb565b610e346113e6565b6020820615610e495760208206602003820191505b506020828101829052604080518085526000815290920101905290565b610e6e6113e6565b85602001518286011115610e9857610e9886610e908860200151888601611264565b60020261127b565b600080875180518860208301019350808987011115610eb75788860182525b5050508484015b60208410610edd5780518252601f199093019260209182019101610ebe565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b600082821115610f79576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610fd9576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b8051600090610ff1575060006101e7565b6020820151805160001a9060c0821015611010576000925050506101e7565b5060019392505050565b805160009061102b575060006101e7565b60008061103b8460200151611072565b602085015185519181019250015b808210156110695761105a82611111565b60019093019290910190611049565b50909392505050565b8051600090811a608081101561108c5760009150506101e7565b60b88110806110a7575060c081108015906110a7575060f881105b156110b65760019150506101e7565b60c08110156110e8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a0190506101e7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a0190506101e7565b80516000908190811a608081101561112c57600191506111df565b60b881101561115f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81810191506111df565b60c081101561118c5760b78103600185019450806020036101000a855104600182018101935050506111df565b60f88110156111bf577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff41810191506111df565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b80518051602091820151919092015191011190565b806112055761125f565b5b60208110611225578251825260209283019290910190601f1901611206565b8251825160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01801990921691161782525b505050565b6000818311156112755750816109e3565b50919050565b81516112878383610e2c565b506112928382611298565b50505050565b6112a06113e6565b610fd9838460000151518485516112b56113e6565b82518211156112c357600080fd5b846020015182850111156112e5576112e585610e908760200151878601611264565b6000808651805187602083010193508088870111156113045787860182525b505050602084015b6020841061132b5780518252601f19909301926020918201910161130c565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160608082018352600080835260208301529181019190915290565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b604051806040016040528060008152602001600081525090565b604051806040016040528060608152602001600081525090565b60405180604001604052806114136113cc565b8152602001600081525090565b600082601f830112611430578081fd5b8135602061144561144083611ca1565b611c7d565b82815281810190858301855b8581101561147a57611468898684358b01016114e1565b84529284019290840190600101611451565b5090979650505050505050565b600082601f830112611497578081fd5b813560206114a761144083611ca1565b82815281810190858301838502870184018810156114c3578586fd5b855b8581101561147a578135845292840192908401906001016114c5565b600082601f8301126114f1578081fd5b81356114ff61144082611cbf565b818152846020838601011115611513578283fd5b816020850160208301379081016020019190915292915050565b600082601f83011261153d578081fd5b815161154b61144082611cbf565b81815284602083860101111561155f578283fd5b611570826020830160208701611ce1565b949350505050565b600060408284031215611589578081fd5b6040516040810181811067ffffffffffffffff821117156115a657fe5b604052825181526020928301519281019290925250919050565b600060c082840312156115d1578081fd5b60405160c0810181811067ffffffffffffffff821117156115ee57fe5b8060405250809150825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201525092915050565b803561ffff811681146101e757600080fd5b6000806000806080858703121561165a578384fd5b84359350602085013567ffffffffffffffff80821115611678578485fd5b61168488838901611487565b94506040870135935060608701359150808211156116a0578283fd5b506116ad87828801611420565b91505092959194509250565b600080600080606085870312156116ce578384fd5b84359350602085013567ffffffffffffffff808211156116ec578485fd5b818701915087601f8301126116ff578485fd5b81358181111561170d578586fd5b88602082850101111561171e578586fd5b95986020929092019750949560400135945092505050565b600060208284031215611747578081fd5b813567ffffffffffffffff81111561175d578182fd5b611570848285016114e1565b6000806000806080858703121561177e578384fd5b843567ffffffffffffffff811115611794578485fd5b6117a0878288016114e1565b9450506117af60208601611633565b93969395505050506040820135916060013590565b600080604083850312156117d6578182fd5b825167ffffffffffffffff8111156117ec578283fd5b6117f88582860161152d565b925050602083015190509250929050565b6000806000806080858703121561181e578182fd5b61182785611633565b9350602085013567ffffffffffffffff80821115611843578384fd5b61184f88838901611420565b94506040870135915080821115611864578384fd5b5061187187828801611487565b949793965093946060013593505050565b6000806000806000806000806101c0898b03121561189e578586fd5b885160ff811681146118ae578687fd5b809850506020890151965060408901519550606089015194506118d48a60808b01611578565b93506118e38a60c08b016115c0565b925061018089015167ffffffffffffffff80821115611900578384fd5b61190c8c838d0161152d565b93506101a08b0151915080821115611922578283fd5b5061192f8b828c0161152d565b9150509295985092959890939650565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452611971816020860160208601611ce1565b601f01601f19169290920160200192915050565b60609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b73ffffffffffffffffffffffffffffffffffffffff91909116815260200190565b90815260200190565b600060208252610fd96020830184611959565b600060408252611a056040830185611959565b90508260208301529392505050565b6020808252601c908201527f50726f6f664c69623a20696e76616c69642070726f6f662073697a6500000000604082015260600190565b6020808252601a908201527f50726f6f664c69623a20696e76616c696420686173686c696e6b000000000000604082015260600190565b6020808252601f908201527f50726f6f664c69623a207061636b6574206e6f74207265636f676e697a656400604082015260600190565b60208082526026908201527f50726f6f664c69623a20696e76616c69642064657374696e6174696f6e20636860408201527f61696e2049440000000000000000000000000000000000000000000000000000606082015260800190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff60408401511660608301526060830151611b5b608084018261193f565b50608083015160e060a0840152611b76610100840182611959565b905060a084015160c084015260c0840151601f198483030160e08501526101ac8282611959565b600060208252825160208301526020830151604083015260408301516060808401526115706080840182611959565b61ffff91909116815260200190565b60006101c060ff8b16835289602084015288604084015287606084015286516080840152602087015160a0840152855160c0840152602086015160e084015260408601516101008401526060860151610120840152608086015161014084015260a086015161016084015280610180840152611c5981840186611959565b90508281036101a0840152611c6e8185611959565b9b9a5050505050505050505050565b60405181810167ffffffffffffffff81118282101715611c9957fe5b604052919050565b600067ffffffffffffffff821115611cb557fe5b5060209081020190565b600067ffffffffffffffff821115611cd357fe5b50601f01601f191660200190565b60005b83811015611cfc578181015183820152602001611ce4565b83811115611292575050600091015256fe524c504465636f6465723a20696e76616c696420524c50206974656d206f66667365742073697a65524c504465636f646572206974657261746f72206973206e6f742061206c697374524c504465636f64657220746f427974657320696e76616c6964206c656e677468a26469706673582212207de7534bb42df6b0979269b6fb454d585f4f8c289926882e5130138fd75815f564736f6c63430007060033",
308
+ "linkReferences": {},
309
+ "deployedLinkReferences": {}
310
+ }
@@ -0,0 +1,212 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "MPTValidatorV2",
4
+ "sourceName": "contracts/proof/MPTValidatorV2.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": "bytes",
23
+ "name": "data",
24
+ "type": "bytes"
25
+ },
26
+ {
27
+ "internalType": "uint16",
28
+ "name": "srcChain",
29
+ "type": "uint16"
30
+ },
31
+ {
32
+ "internalType": "uint256",
33
+ "name": "sizeOfSrcAddress",
34
+ "type": "uint256"
35
+ },
36
+ {
37
+ "internalType": "bytes32",
38
+ "name": "ulnAddress",
39
+ "type": "bytes32"
40
+ }
41
+ ],
42
+ "name": "getPacket",
43
+ "outputs": [
44
+ {
45
+ "components": [
46
+ {
47
+ "internalType": "uint16",
48
+ "name": "srcChainId",
49
+ "type": "uint16"
50
+ },
51
+ {
52
+ "internalType": "uint16",
53
+ "name": "dstChainId",
54
+ "type": "uint16"
55
+ },
56
+ {
57
+ "internalType": "uint64",
58
+ "name": "nonce",
59
+ "type": "uint64"
60
+ },
61
+ {
62
+ "internalType": "address",
63
+ "name": "dstAddress",
64
+ "type": "address"
65
+ },
66
+ {
67
+ "internalType": "bytes",
68
+ "name": "srcAddress",
69
+ "type": "bytes"
70
+ },
71
+ {
72
+ "internalType": "bytes32",
73
+ "name": "ulnAddress",
74
+ "type": "bytes32"
75
+ },
76
+ {
77
+ "internalType": "bytes",
78
+ "name": "payload",
79
+ "type": "bytes"
80
+ }
81
+ ],
82
+ "internalType": "struct LayerZeroPacket.Packet",
83
+ "name": "",
84
+ "type": "tuple"
85
+ }
86
+ ],
87
+ "stateMutability": "pure",
88
+ "type": "function"
89
+ },
90
+ {
91
+ "inputs": [
92
+ {
93
+ "internalType": "bytes32",
94
+ "name": "hashRoot",
95
+ "type": "bytes32"
96
+ },
97
+ {
98
+ "internalType": "uint256[]",
99
+ "name": "receiptSlotIndex",
100
+ "type": "uint256[]"
101
+ },
102
+ {
103
+ "internalType": "uint256",
104
+ "name": "logIndex",
105
+ "type": "uint256"
106
+ },
107
+ {
108
+ "internalType": "bytes[]",
109
+ "name": "proof",
110
+ "type": "bytes[]"
111
+ }
112
+ ],
113
+ "name": "getVerifyLog",
114
+ "outputs": [
115
+ {
116
+ "components": [
117
+ {
118
+ "internalType": "bytes32",
119
+ "name": "contractAddress",
120
+ "type": "bytes32"
121
+ },
122
+ {
123
+ "internalType": "bytes32",
124
+ "name": "topicZeroSig",
125
+ "type": "bytes32"
126
+ },
127
+ {
128
+ "internalType": "bytes",
129
+ "name": "data",
130
+ "type": "bytes"
131
+ }
132
+ ],
133
+ "internalType": "struct MPTValidatorV2.ULNLog",
134
+ "name": "",
135
+ "type": "tuple"
136
+ }
137
+ ],
138
+ "stateMutability": "pure",
139
+ "type": "function"
140
+ },
141
+ {
142
+ "inputs": [
143
+ {
144
+ "internalType": "bytes32",
145
+ "name": "_receiptsRoot",
146
+ "type": "bytes32"
147
+ },
148
+ {
149
+ "internalType": "bytes",
150
+ "name": "_transactionProof",
151
+ "type": "bytes"
152
+ },
153
+ {
154
+ "internalType": "uint256",
155
+ "name": "_remoteAddressSize",
156
+ "type": "uint256"
157
+ }
158
+ ],
159
+ "name": "validateProof",
160
+ "outputs": [
161
+ {
162
+ "components": [
163
+ {
164
+ "internalType": "uint16",
165
+ "name": "srcChainId",
166
+ "type": "uint16"
167
+ },
168
+ {
169
+ "internalType": "uint16",
170
+ "name": "dstChainId",
171
+ "type": "uint16"
172
+ },
173
+ {
174
+ "internalType": "uint64",
175
+ "name": "nonce",
176
+ "type": "uint64"
177
+ },
178
+ {
179
+ "internalType": "address",
180
+ "name": "dstAddress",
181
+ "type": "address"
182
+ },
183
+ {
184
+ "internalType": "bytes",
185
+ "name": "srcAddress",
186
+ "type": "bytes"
187
+ },
188
+ {
189
+ "internalType": "bytes32",
190
+ "name": "ulnAddress",
191
+ "type": "bytes32"
192
+ },
193
+ {
194
+ "internalType": "bytes",
195
+ "name": "payload",
196
+ "type": "bytes"
197
+ }
198
+ ],
199
+ "internalType": "struct LayerZeroPacket.Packet",
200
+ "name": "packet",
201
+ "type": "tuple"
202
+ }
203
+ ],
204
+ "stateMutability": "pure",
205
+ "type": "function"
206
+ }
207
+ ],
208
+ "bytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b506115da8061003a6000396000f3fe608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100665760003560e01c80630f222e651461006b578063b71e0f7114610094578063be9d395e146100b4578063e0cabadd146100c9575b600080fd5b61007e610079366004611162565b6100dc565b60405161008b91906114c1565b60405180910390f35b6100a76100a23660046111d6565b6100f9565b60405161008b919061143a565b6100bc610199565b60405161008b919061138c565b6100a76100d7366004611253565b6101bd565b6100e4610f79565b6100f0858585856101d1565b95945050505050565b610101610f98565b6000808080610112878901896112ae565b935093509350935060006101288a8484876101d1565b60208101519091507fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f6146101775760405162461bcd60e51b815260040161016e90611403565b60405180910390fd5b61018b816040015186898460000151610317565b9a9950505050505050505050565b7fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f681565b6101c5610f98565b6100f085858585610317565b6101d9610f79565b81518451146101fa5760405162461bcd60e51b815260040161016e90611395565b610202610fd6565b606060005b84518110156102945784818151811061021c57fe5b602002602001015191508180519060200120881461024c5760405162461bcd60e51b815260040161016e906113cc565b61027287828151811061025b57fe5b602002602001015161026c8461040d565b90610485565b9250600185510381101561028c57610289836105f3565b97505b600101610207565b5060006102a5600361026c856106dc565b905060006102bb6102b68389610485565b610768565b90506102c5610f79565b6102d66102d1836107fa565b6105f3565b81526102ef6102d160006102e9856107fa565b90610890565b6020820152610305610300836107fa565b61093d565b60408201529998505050505050505050565b61031f610f98565b602085015160608601516068870151858801607c0151919061033f610ff0565b6103498189610a36565b506103598160008c60888c610a70565b5060006103718961036b866014610b2c565b90610b2c565b905061037b610ff0565b6103858183610a36565b506103a160008d6103978d609c610b89565b8492919086610a70565b506040805160e08101825261ffff808e16825298909816602089015267ffffffffffffffff909416938701939093525073ffffffffffffffffffffffffffffffffffffffff9093166060850152915160808401525060a082018490525160c08201529050949350505050565b610415610fd6565b602082018051835160009190911a908015801590610436575060c060ff8316105b1561046557600192909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b60405180604001604052808281526020018481525093505050505b919050565b61048d610fd6565b61049683610bea565b6104d15760405162461bcd60e51b81526004018080602001828103825260218152602001806115636021913960400191505060405180910390fd5b6104da83610c24565b821061052d576040805162461bcd60e51b815260206004820152601660248201527f524c50206974656d206f7574206f6620626f756e647300000000000000000000604482015290519081900360640190fd5b825160208401519081019060009061054490610c7c565b60208601510190506000805b8581101561056f5761056183610d1b565b928301929150600101610550565b5061057982610d1b565b90508281830111156105d2576040805162461bcd60e51b815260206004820152601160248201527f524c50206974656d206f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b60405180604001604052808281526020018381525093505050505b92915050565b80516000901580159061060857508151602110155b610659576040805162461bcd60e51b815260206004820181905260248201527f524c504465636f64657220746f55696e7420696e76616c6964206c656e677468604482015290519081900360640190fd5b60006106688360200151610c7c565b905080836000015110156106ad5760405162461bcd60e51b815260040180806020018281038252602881526020018061153b6028913960400191505060405180910390fd5b8251602080850151830180519284900392918310156106d357826020036101000a820491505b50949350505050565b6106e4610fd6565b60006106f38360200151610c7c565b60208401518451908201805192935060009290921a9190801580159061071c575060c060ff8416105b1561074b57600191909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b604080518082019091529081526020810191909152949350505050565b61077061100a565b61077982610bea565b6107ca576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f72206973206e6f74206c69737400604482015290519081900360640190fd5b60006107d98360200151610c7c565b60208085015160408051808201909152868152920190820152915050919050565b610802610fd6565b61080b82610df0565b61085c576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f7220686173206e6f206e65787400604482015290519081900360640190fd5b6020820151600061086c82610d1b565b80830160209586015260408051808201909152908152938401919091525090919050565b610898610fd6565b6108a183610bea565b6108dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806115636021913960400191505060405180910390fd5b60006108eb8460200151610c7c565b60208501510190506000805b848110156109165761090883610d1b565b9283019291506001016108f7565b5061092082610d1b565b604080518082019091529081526020810192909252509392505050565b805160609061097d5760405162461bcd60e51b81526004018080602001828103825260218152602001806115846021913960400191505060405180910390fd5b600061098c8360200151610c7c565b905080836000015110156109d15760405162461bcd60e51b815260040180806020018281038252602881526020018061153b6028913960400191505060405180910390fd5b825181900360008167ffffffffffffffff811180156109ef57600080fd5b506040519080825280601f01601f191660200182016040528015610a1a576020820181803683370190505b50905060008160200190506106d3848760200151018285610e05565b610a3e610ff0565b6020820615610a535760208206602003820191505b506020828101829052604080518085526000815290920101905290565b610a78610ff0565b85602001518286011115610aa257610aa286610a9a8860200151888601610e6e565b600202610e85565b600080875180518860208301019350808987011115610ac15788860182525b5050508484015b60208410610ae75780518252601f199093019260209182019101610ac8565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b600082821115610b83576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610be3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b8051600090610bfb57506000610480565b6020820151805160001a9060c0821015610c1a57600092505050610480565b5060019392505050565b8051600090610c3557506000610480565b600080610c458460200151610c7c565b602085015185519181019250015b80821015610c7357610c6482610d1b565b60019093019290910190610c53565b50909392505050565b8051600090811a6080811015610c96576000915050610480565b60b8811080610cb1575060c08110801590610cb1575060f881105b15610cc0576001915050610480565b60c0811015610cf2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a019050610480565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a019050610480565b80516000908190811a6080811015610d365760019150610de9565b60b8811015610d69577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8181019150610de9565b60c0811015610d965760b78103600185019450806020036101000a85510460018201810193505050610de9565b60f8811015610dc9577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4181019150610de9565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b80518051602091820151919092015191011190565b80610e0f57610e69565b5b60208110610e2f578251825260209283019290910190601f1901610e10565b8251825160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01801990921691161782525b505050565b600081831115610e7f5750816105ed565b50919050565b8151610e918383610a36565b50610e9c8382610ea2565b50505050565b610eaa610ff0565b610be383846000015151848551610ebf610ff0565b8251821115610ecd57600080fd5b84602001518285011115610eef57610eef85610a9a8760200151878601610e6e565b600080865180518760208301019350808887011115610f0e5787860182525b505050602084015b60208410610f355780518252601f199093019260209182019101610f16565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160608082018352600080835260208301529181019190915290565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b604051806040016040528060008152602001600081525090565b604051806040016040528060608152602001600081525090565b604051806040016040528061101d610fd6565b8152602001600081525090565b600082601f83011261103a578081fd5b8135602061104f61104a8361151c565b6114f8565b82815281810190858301855b8581101561108457611072898684358b01016110eb565b8452928401929084019060010161105b565b5090979650505050505050565b600082601f8301126110a1578081fd5b813560206110b161104a8361151c565b82815281810190858301838502870184018810156110cd578586fd5b855b85811015611084578135845292840192908401906001016110cf565b600082601f8301126110fb578081fd5b813567ffffffffffffffff81111561110f57fe5b6111226020601f19601f840116016114f8565b818152846020838601011115611136578283fd5b816020850160208301379081016020019190915292915050565b803561ffff8116811461048057600080fd5b60008060008060808587031215611177578384fd5b84359350602085013567ffffffffffffffff80821115611195578485fd5b6111a188838901611091565b94506040870135935060608701359150808211156111bd578283fd5b506111ca8782880161102a565b91505092959194509250565b600080600080606085870312156111eb578384fd5b84359350602085013567ffffffffffffffff80821115611209578485fd5b818701915087601f83011261121c578485fd5b81358181111561122a578586fd5b88602082850101111561123b578586fd5b95986020929092019750949560400135945092505050565b60008060008060808587031215611268578384fd5b843567ffffffffffffffff81111561127e578485fd5b61128a878288016110eb565b94505061129960208601611150565b93969395505050506040820135916060013590565b600080600080608085870312156112c3578384fd5b6112cc85611150565b9350602085013567ffffffffffffffff808211156112e8578485fd5b6112f48883890161102a565b94506040870135915080821115611309578384fd5b5061131687828801611091565b949793965093946060013593505050565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452815b818110156113665760208185018101518683018201520161134a565b818111156113775782602083870101525b50601f01601f19169290920160200192915050565b90815260200190565b6020808252601c908201527f50726f6f664c69623a20696e76616c69642070726f6f662073697a6500000000604082015260600190565b6020808252601a908201527f50726f6f664c69623a20696e76616c696420686173686c696e6b000000000000604082015260600190565b6020808252601f908201527f50726f6f664c69623a207061636b6574206e6f74207265636f676e697a656400604082015260600190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff6040840151166060830152606083015161147f6080840182611327565b50608083015160e060a084015261149a610100840182611341565b905060a084015160c084015260c0840151601f198483030160e08501526100f08282611341565b600060208252825160208301526020830151604083015260408301516060808401526114f06080840182611341565b949350505050565b60405181810167ffffffffffffffff8111828210171561151457fe5b604052919050565b600067ffffffffffffffff82111561153057fe5b506020908102019056fe524c504465636f6465723a20696e76616c696420524c50206974656d206f66667365742073697a65524c504465636f646572206974657261746f72206973206e6f742061206c697374524c504465636f64657220746f427974657320696e76616c6964206c656e677468a26469706673582212203865051d2b99e5f0d7e835cb3eb437092fc81c671c82b34c5d6a2cbfb3b5a17064736f6c63430007060033",
209
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50d3801561001d57600080fd5b50d2801561002a57600080fd5b50600436106100665760003560e01c80630f222e651461006b578063b71e0f7114610094578063be9d395e146100b4578063e0cabadd146100c9575b600080fd5b61007e610079366004611162565b6100dc565b60405161008b91906114c1565b60405180910390f35b6100a76100a23660046111d6565b6100f9565b60405161008b919061143a565b6100bc610199565b60405161008b919061138c565b6100a76100d7366004611253565b6101bd565b6100e4610f79565b6100f0858585856101d1565b95945050505050565b610101610f98565b6000808080610112878901896112ae565b935093509350935060006101288a8484876101d1565b60208101519091507fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f6146101775760405162461bcd60e51b815260040161016e90611403565b60405180910390fd5b61018b816040015186898460000151610317565b9a9950505050505050505050565b7fe8d23d927749ec8e512eb885679c2977d57068839d8cca1a85685dbbea0648f681565b6101c5610f98565b6100f085858585610317565b6101d9610f79565b81518451146101fa5760405162461bcd60e51b815260040161016e90611395565b610202610fd6565b606060005b84518110156102945784818151811061021c57fe5b602002602001015191508180519060200120881461024c5760405162461bcd60e51b815260040161016e906113cc565b61027287828151811061025b57fe5b602002602001015161026c8461040d565b90610485565b9250600185510381101561028c57610289836105f3565b97505b600101610207565b5060006102a5600361026c856106dc565b905060006102bb6102b68389610485565b610768565b90506102c5610f79565b6102d66102d1836107fa565b6105f3565b81526102ef6102d160006102e9856107fa565b90610890565b6020820152610305610300836107fa565b61093d565b60408201529998505050505050505050565b61031f610f98565b602085015160608601516068870151858801607c0151919061033f610ff0565b6103498189610a36565b506103598160008c60888c610a70565b5060006103718961036b866014610b2c565b90610b2c565b905061037b610ff0565b6103858183610a36565b506103a160008d6103978d609c610b89565b8492919086610a70565b506040805160e08101825261ffff808e16825298909816602089015267ffffffffffffffff909416938701939093525073ffffffffffffffffffffffffffffffffffffffff9093166060850152915160808401525060a082018490525160c08201529050949350505050565b610415610fd6565b602082018051835160009190911a908015801590610436575060c060ff8316105b1561046557600192909201917fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b60405180604001604052808281526020018481525093505050505b919050565b61048d610fd6565b61049683610bea565b6104d15760405162461bcd60e51b81526004018080602001828103825260218152602001806115636021913960400191505060405180910390fd5b6104da83610c24565b821061052d576040805162461bcd60e51b815260206004820152601660248201527f524c50206974656d206f7574206f6620626f756e647300000000000000000000604482015290519081900360640190fd5b825160208401519081019060009061054490610c7c565b60208601510190506000805b8581101561056f5761056183610d1b565b928301929150600101610550565b5061057982610d1b565b90508281830111156105d2576040805162461bcd60e51b815260206004820152601160248201527f524c50206974656d206f766572666c6f77000000000000000000000000000000604482015290519081900360640190fd5b60405180604001604052808281526020018381525093505050505b92915050565b80516000901580159061060857508151602110155b610659576040805162461bcd60e51b815260206004820181905260248201527f524c504465636f64657220746f55696e7420696e76616c6964206c656e677468604482015290519081900360640190fd5b60006106688360200151610c7c565b905080836000015110156106ad5760405162461bcd60e51b815260040180806020018281038252602881526020018061153b6028913960400191505060405180910390fd5b8251602080850151830180519284900392918310156106d357826020036101000a820491505b50949350505050565b6106e4610fd6565b60006106f38360200151610c7c565b60208401518451908201805192935060009290921a9190801580159061071c575060c060ff8416105b1561074b57600191909101907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015b604080518082019091529081526020810191909152949350505050565b61077061100a565b61077982610bea565b6107ca576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f72206973206e6f74206c69737400604482015290519081900360640190fd5b60006107d98360200151610c7c565b60208085015160408051808201909152868152920190820152915050919050565b610802610fd6565b61080b82610df0565b61085c576040805162461bcd60e51b815260206004820152601f60248201527f524c504465636f646572206974657261746f7220686173206e6f206e65787400604482015290519081900360640190fd5b6020820151600061086c82610d1b565b80830160209586015260408051808201909152908152938401919091525090919050565b610898610fd6565b6108a183610bea565b6108dc5760405162461bcd60e51b81526004018080602001828103825260218152602001806115636021913960400191505060405180910390fd5b60006108eb8460200151610c7c565b60208501510190506000805b848110156109165761090883610d1b565b9283019291506001016108f7565b5061092082610d1b565b604080518082019091529081526020810192909252509392505050565b805160609061097d5760405162461bcd60e51b81526004018080602001828103825260218152602001806115846021913960400191505060405180910390fd5b600061098c8360200151610c7c565b905080836000015110156109d15760405162461bcd60e51b815260040180806020018281038252602881526020018061153b6028913960400191505060405180910390fd5b825181900360008167ffffffffffffffff811180156109ef57600080fd5b506040519080825280601f01601f191660200182016040528015610a1a576020820181803683370190505b50905060008160200190506106d3848760200151018285610e05565b610a3e610ff0565b6020820615610a535760208206602003820191505b506020828101829052604080518085526000815290920101905290565b610a78610ff0565b85602001518286011115610aa257610aa286610a9a8860200151888601610e6e565b600202610e85565b600080875180518860208301019350808987011115610ac15788860182525b5050508484015b60208410610ae75780518252601f199093019260209182019101610ac8565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a01908116901991909116179052508495945050505050565b600082821115610b83576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082820183811015610be3576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b8051600090610bfb57506000610480565b6020820151805160001a9060c0821015610c1a57600092505050610480565b5060019392505050565b8051600090610c3557506000610480565b600080610c458460200151610c7c565b602085015185519181019250015b80821015610c7357610c6482610d1b565b60019093019290910190610c53565b50909392505050565b8051600090811a6080811015610c96576000915050610480565b60b8811080610cb1575060c08110801590610cb1575060f881105b15610cc0576001915050610480565b60c0811015610cf2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4a019050610480565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0a019050610480565b80516000908190811a6080811015610d365760019150610de9565b60b8811015610d69577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8181019150610de9565b60c0811015610d965760b78103600185019450806020036101000a85510460018201810193505050610de9565b60f8811015610dc9577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4181019150610de9565b60f78103600185019450806020036101000a855104600182018101935050505b5092915050565b80518051602091820151919092015191011190565b80610e0f57610e69565b5b60208110610e2f578251825260209283019290910190601f1901610e10565b8251825160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01801990921691161782525b505050565b600081831115610e7f5750816105ed565b50919050565b8151610e918383610a36565b50610e9c8382610ea2565b50505050565b610eaa610ff0565b610be383846000015151848551610ebf610ff0565b8251821115610ecd57600080fd5b84602001518285011115610eef57610eef85610a9a8760200151878601610e6e565b600080865180518760208301019350808887011115610f0e5787860182525b505050602084015b60208410610f355780518252601f199093019260209182019101610f16565b5181517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60208690036101000a019081169019919091161790525083949350505050565b6040805160608082018352600080835260208301529181019190915290565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b604051806040016040528060008152602001600081525090565b604051806040016040528060608152602001600081525090565b604051806040016040528061101d610fd6565b8152602001600081525090565b600082601f83011261103a578081fd5b8135602061104f61104a8361151c565b6114f8565b82815281810190858301855b8581101561108457611072898684358b01016110eb565b8452928401929084019060010161105b565b5090979650505050505050565b600082601f8301126110a1578081fd5b813560206110b161104a8361151c565b82815281810190858301838502870184018810156110cd578586fd5b855b85811015611084578135845292840192908401906001016110cf565b600082601f8301126110fb578081fd5b813567ffffffffffffffff81111561110f57fe5b6111226020601f19601f840116016114f8565b818152846020838601011115611136578283fd5b816020850160208301379081016020019190915292915050565b803561ffff8116811461048057600080fd5b60008060008060808587031215611177578384fd5b84359350602085013567ffffffffffffffff80821115611195578485fd5b6111a188838901611091565b94506040870135935060608701359150808211156111bd578283fd5b506111ca8782880161102a565b91505092959194509250565b600080600080606085870312156111eb578384fd5b84359350602085013567ffffffffffffffff80821115611209578485fd5b818701915087601f83011261121c578485fd5b81358181111561122a578586fd5b88602082850101111561123b578586fd5b95986020929092019750949560400135945092505050565b60008060008060808587031215611268578384fd5b843567ffffffffffffffff81111561127e578485fd5b61128a878288016110eb565b94505061129960208601611150565b93969395505050506040820135916060013590565b600080600080608085870312156112c3578384fd5b6112cc85611150565b9350602085013567ffffffffffffffff808211156112e8578485fd5b6112f48883890161102a565b94506040870135915080821115611309578384fd5b5061131687828801611091565b949793965093946060013593505050565b73ffffffffffffffffffffffffffffffffffffffff169052565b60008151808452815b818110156113665760208185018101518683018201520161134a565b818111156113775782602083870101525b50601f01601f19169290920160200192915050565b90815260200190565b6020808252601c908201527f50726f6f664c69623a20696e76616c69642070726f6f662073697a6500000000604082015260600190565b6020808252601a908201527f50726f6f664c69623a20696e76616c696420686173686c696e6b000000000000604082015260600190565b6020808252601f908201527f50726f6f664c69623a207061636b6574206e6f74207265636f676e697a656400604082015260600190565b60006020825261ffff8084511660208401528060208501511660408401525067ffffffffffffffff6040840151166060830152606083015161147f6080840182611327565b50608083015160e060a084015261149a610100840182611341565b905060a084015160c084015260c0840151601f198483030160e08501526100f08282611341565b600060208252825160208301526020830151604083015260408301516060808401526114f06080840182611341565b949350505050565b60405181810167ffffffffffffffff8111828210171561151457fe5b604052919050565b600067ffffffffffffffff82111561153057fe5b506020908102019056fe524c504465636f6465723a20696e76616c696420524c50206974656d206f66667365742073697a65524c504465636f646572206974657261746f72206973206e6f742061206c697374524c504465636f64657220746f427974657320696e76616c6964206c656e677468a26469706673582212203865051d2b99e5f0d7e835cb3eb437092fc81c671c82b34c5d6a2cbfb3b5a17064736f6c63430007060033",
210
+ "linkReferences": {},
211
+ "deployedLinkReferences": {}
212
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IStargate",
4
+ "sourceName": "contracts/proof/MPTValidatorV4.sol",
5
+ "abi": [],
6
+ "bytecode": "0x",
7
+ "deployedBytecode": "0x",
8
+ "linkReferences": {},
9
+ "deployedLinkReferences": {}
10
+ }