@layerzerolabs/lz-evm-sdk-v2 2.0.12-tron-rc.2 → 2.0.12

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 (218) hide show
  1. package/artifacts/contracts/EndpointV2.sol/EndpointV2.json +2 -2
  2. package/artifacts/contracts/EndpointV2Alt.sol/EndpointV2Alt.json +2 -2
  3. package/artifacts/contracts/Executor.sol/Executor.json +2 -2
  4. package/artifacts/contracts/ExecutorFeeLib.sol/ExecutorFeeLib.json +2 -2
  5. package/artifacts/contracts/PriceFeed.sol/PriceFeed.json +2 -2
  6. package/artifacts/contracts/Treasury.sol/Treasury.json +2 -2
  7. package/artifacts/contracts/libs/AddressCast.sol/AddressCast.json +2 -2
  8. package/artifacts/contracts/libs/CalldataBytesLib.sol/CalldataBytesLib.json +2 -2
  9. package/artifacts/contracts/libs/Errors.sol/Errors.json +2 -2
  10. package/artifacts/contracts/libs/GUID.sol/GUID.json +2 -2
  11. package/artifacts/contracts/libs/SafeCall.sol/SafeCall.json +2 -2
  12. package/artifacts/contracts/libs/Transfer.sol/Transfer.json +2 -2
  13. package/artifacts/contracts/messagelib/BlockedMessageLib.sol/BlockedMessageLib.json +2 -2
  14. package/artifacts/contracts/messagelib/SimpleMessageLib.sol/SimpleMessageLib.json +2 -2
  15. package/artifacts/contracts/messagelib/libs/BitMaps.sol/BitMaps.json +2 -2
  16. package/artifacts/contracts/messagelib/libs/ExecutorOptions.sol/ExecutorOptions.json +2 -2
  17. package/artifacts/contracts/messagelib/libs/PacketV1Codec.sol/PacketV1Codec.json +2 -2
  18. package/artifacts/contracts/oapp/examples/OmniCounter.sol/MsgCodec.json +2 -2
  19. package/artifacts/contracts/oapp/examples/OmniCounter.sol/OmniCounter.json +2 -2
  20. package/artifacts/contracts/oapp/examples/OmniCounterPreCrime.sol/OmniCounterPreCrime.json +2 -2
  21. package/artifacts/contracts/oapp/libs/OptionsBuilder.sol/OptionsBuilder.json +2 -2
  22. package/artifacts/contracts/oft/OFT.sol/OFT.json +2 -2
  23. package/artifacts/contracts/oft/OFTAdapter.sol/OFTAdapter.json +2 -2
  24. package/artifacts/contracts/oft/libs/OFTComposeMsgCodec.sol/OFTComposeMsgCodec.json +2 -2
  25. package/artifacts/contracts/oft/libs/OFTMsgCodec.sol/OFTMsgCodec.json +2 -2
  26. package/artifacts/contracts/precrime/libs/Packet.sol/PacketDecoder.json +2 -2
  27. package/artifacts/contracts/uln/LzExecutor.sol/LzExecutor.json +5 -5
  28. package/artifacts/contracts/uln/dvn/DVN.sol/DVN.json +2 -2
  29. package/artifacts/contracts/uln/dvn/DVNFeeLib.sol/DVNFeeLib.json +2 -2
  30. package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol/CCIPDVNAdapter.json +2 -2
  31. package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol/CCIPDVNAdapterFeeLib.json +2 -2
  32. package/artifacts/contracts/uln/dvn/adapters/DVNAdapterFeeLibBase.sol/DVNAdapterFeeLibBase.json +2 -2
  33. package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/AxelarDVNAdapter.json +2 -2
  34. package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol/AxelarDVNAdapterFeeLib.json +2 -2
  35. package/artifacts/contracts/uln/libs/DVNOptions.sol/DVNOptions.json +2 -2
  36. package/artifacts/contracts/uln/libs/UlnOptions.sol/UlnOptions.json +2 -2
  37. package/artifacts/contracts/uln/uln301/ReceiveUln301.sol/ReceiveUln301.json +2 -2
  38. package/artifacts/contracts/uln/uln301/SendUln301.sol/SendUln301.json +2 -2
  39. package/artifacts/contracts/uln/uln301/TreasuryFeeHandler.sol/TreasuryFeeHandler.json +2 -2
  40. package/artifacts/contracts/uln/uln302/ReceiveUln302.sol/ReceiveUln302.json +2 -2
  41. package/artifacts/contracts/uln/uln302/SendUln302.sol/SendUln302.json +2 -2
  42. package/deployments/{arbitrum-sandbox-local → bera-testnet}/DVN.json +76 -43
  43. package/deployments/{bsc-sandbox-local → bera-testnet}/DVNFeeLib.json +13 -13
  44. package/deployments/{arbitrum-sandbox-local → bera-testnet}/EndpointV2.json +114 -60
  45. package/deployments/{tron-sandbox-local → bera-testnet}/Executor.json +88 -105
  46. package/deployments/{bsc-sandbox-local → bera-testnet}/ExecutorFeeLib.json +13 -13
  47. package/deployments/{bsc-sandbox-local → bera-testnet}/ExecutorProxyAdmin.json +20 -20
  48. package/deployments/{bsc-sandbox-local → bera-testnet}/Executor_Implementation.json +7 -7
  49. package/deployments/{tron-sandbox-local → bera-testnet}/Executor_Proxy.json +79 -94
  50. package/deployments/bera-testnet/LzExecutor.json +332 -0
  51. package/deployments/bera-testnet/PriceFeed.json +35 -35
  52. package/deployments/bera-testnet/PriceFeedProxyAdmin.json +17 -17
  53. package/deployments/bera-testnet/PriceFeed_Implementation.json +6 -6
  54. package/deployments/bera-testnet/PriceFeed_Proxy.json +34 -34
  55. package/deployments/{bsc-sandbox-local → bera-testnet}/ReceiveUln301.json +15 -15
  56. package/deployments/{avalanche-sandbox-local → bera-testnet}/ReceiveUln302.json +18 -18
  57. package/deployments/{arbitrum-sandbox-local → bera-testnet}/SendUln301.json +17 -17
  58. package/deployments/{arbitrum-sandbox-local → bera-testnet}/SendUln302.json +14 -14
  59. package/deployments/{bsc-sandbox-local → bera-testnet}/Treasury.json +13 -13
  60. package/deployments/{avalanche-sandbox-local → bera-testnet}/TreasuryFeeHandler.json +8 -8
  61. package/deployments/ethereum-sandbox-local/BlockedMessageLib.json +90 -0
  62. package/deployments/ethereum-sandbox-local/DVN.json +5 -5
  63. package/deployments/ethereum-sandbox-local/DVNFeeLib.json +2 -2
  64. package/deployments/ethereum-sandbox-local/Endpoint.json +2355 -0
  65. package/deployments/ethereum-sandbox-local/EndpointV2.json +4 -4
  66. package/deployments/ethereum-sandbox-local/Executor.json +14 -14
  67. package/deployments/ethereum-sandbox-local/ExecutorFeeLib.json +2 -2
  68. package/deployments/ethereum-sandbox-local/ExecutorProxyAdmin.json +3 -3
  69. package/deployments/ethereum-sandbox-local/Executor_Implementation.json +1 -1
  70. package/deployments/ethereum-sandbox-local/Executor_Proxy.json +14 -14
  71. package/deployments/ethereum-sandbox-local/MultiSigOracle.json +1448 -0
  72. package/deployments/ethereum-sandbox-local/NonceContract.json +158 -0
  73. package/deployments/ethereum-sandbox-local/NonceContractMock.json +1 -1
  74. package/deployments/ethereum-sandbox-local/OmniCounter.json +1133 -0
  75. package/deployments/ethereum-sandbox-local/OmniCounterPreCrime.json +493 -0
  76. package/deployments/ethereum-sandbox-local/OmniCounterPreCrimeView.json +672 -0
  77. package/deployments/ethereum-sandbox-local/OmniCounterViewer.json +214 -0
  78. package/deployments/ethereum-sandbox-local/OmniCounterWithPreCrime.json +1646 -0
  79. package/deployments/{arbitrum-sandbox-local/Executor.json → ethereum-sandbox-local/Oracle.json} +400 -658
  80. package/deployments/ethereum-sandbox-local/OracleFeeLib.json +166 -0
  81. package/deployments/ethereum-sandbox-local/OracleProxyAdmin.json +272 -0
  82. package/deployments/ethereum-sandbox-local/Oracle_Implementation.json +1326 -0
  83. package/deployments/{bsc-sandbox-local/PriceFeed_Proxy.json → ethereum-sandbox-local/Oracle_Proxy.json} +96 -35
  84. package/deployments/ethereum-sandbox-local/PriceFeed.json +5 -5
  85. package/deployments/ethereum-sandbox-local/PriceFeedProxyAdmin.json +3 -3
  86. package/deployments/ethereum-sandbox-local/PriceFeed_Implementation.json +1 -1
  87. package/deployments/ethereum-sandbox-local/PriceFeed_Proxy.json +5 -5
  88. package/deployments/ethereum-sandbox-local/ReceiveUln301.json +2 -2
  89. package/deployments/ethereum-sandbox-local/ReceiveUln302.json +2 -2
  90. package/deployments/{tron-sandbox-local/PriceFeed.json → ethereum-sandbox-local/Relayer.json} +445 -339
  91. package/deployments/ethereum-sandbox-local/RelayerFeeLib.json +130 -0
  92. package/deployments/ethereum-sandbox-local/RelayerProxyAdmin.json +272 -0
  93. package/deployments/ethereum-sandbox-local/Relayer_Implementation.json +1014 -0
  94. package/deployments/{tron-sandbox-local/PriceFeed_Proxy.json → ethereum-sandbox-local/Relayer_Proxy.json} +64 -33
  95. package/deployments/ethereum-sandbox-local/SendUln301.json +2 -2
  96. package/deployments/ethereum-sandbox-local/SendUln302.json +2 -2
  97. package/deployments/ethereum-sandbox-local/SimpleMessageLib.json +2 -2
  98. package/deployments/ethereum-sandbox-local/Treasury.json +2 -2
  99. package/deployments/ethereum-sandbox-local/TreasuryFeeHandler.json +1 -1
  100. package/deployments/ethereum-sandbox-local/UlnConfig301.json +1003 -0
  101. package/deployments/ethereum-sandbox-local/UlnConfig302.json +1003 -0
  102. package/deployments/ethereum-sandbox-local/UltraLightNodeE302.json +1696 -0
  103. package/deployments/{bsc-sandbox-local → etherlink-testnet}/PriceFeed.json +34 -34
  104. package/deployments/{arbitrum-sandbox-local/ExecutorProxyAdmin.json → etherlink-testnet/PriceFeedProxyAdmin.json} +22 -22
  105. package/deployments/{arbitrum-sandbox-local → etherlink-testnet}/PriceFeed_Implementation.json +9 -9
  106. package/deployments/{avalanche-sandbox-local → etherlink-testnet}/PriceFeed_Proxy.json +32 -32
  107. package/deployments/{avalanche-sandbox-local → etherlink-testnet}/Treasury.json +15 -15
  108. package/deployments/polygon-sandbox-local/BlockedMessageLib.json +90 -0
  109. package/deployments/polygon-sandbox-local/DVN.json +5 -5
  110. package/deployments/polygon-sandbox-local/DVNFeeLib.json +2 -2
  111. package/deployments/polygon-sandbox-local/Endpoint.json +2355 -0
  112. package/deployments/polygon-sandbox-local/EndpointV2.json +4 -4
  113. package/deployments/polygon-sandbox-local/Executor.json +14 -14
  114. package/deployments/polygon-sandbox-local/ExecutorFeeLib.json +2 -2
  115. package/deployments/polygon-sandbox-local/ExecutorProxyAdmin.json +3 -3
  116. package/deployments/polygon-sandbox-local/Executor_Implementation.json +1 -1
  117. package/deployments/polygon-sandbox-local/Executor_Proxy.json +14 -14
  118. package/deployments/polygon-sandbox-local/MultiSigOracle.json +1448 -0
  119. package/deployments/polygon-sandbox-local/NonceContract.json +158 -0
  120. package/deployments/polygon-sandbox-local/NonceContractMock.json +1 -1
  121. package/deployments/polygon-sandbox-local/OmniCounter.json +1133 -0
  122. package/deployments/polygon-sandbox-local/OmniCounterPreCrime.json +493 -0
  123. package/deployments/polygon-sandbox-local/OmniCounterPreCrimeView.json +672 -0
  124. package/deployments/polygon-sandbox-local/OmniCounterViewer.json +214 -0
  125. package/deployments/polygon-sandbox-local/OmniCounterWithPreCrime.json +1646 -0
  126. package/deployments/{bsc-sandbox-local/Executor.json → polygon-sandbox-local/Oracle.json} +400 -658
  127. package/deployments/polygon-sandbox-local/OracleFeeLib.json +166 -0
  128. package/deployments/polygon-sandbox-local/OracleProxyAdmin.json +272 -0
  129. package/deployments/polygon-sandbox-local/Oracle_Implementation.json +1326 -0
  130. package/deployments/polygon-sandbox-local/Oracle_Proxy.json +305 -0
  131. package/deployments/polygon-sandbox-local/PriceFeed.json +5 -5
  132. package/deployments/polygon-sandbox-local/PriceFeedProxyAdmin.json +3 -3
  133. package/deployments/polygon-sandbox-local/PriceFeed_Implementation.json +1 -1
  134. package/deployments/polygon-sandbox-local/PriceFeed_Proxy.json +5 -5
  135. package/deployments/polygon-sandbox-local/ReceiveUln301.json +2 -2
  136. package/deployments/polygon-sandbox-local/ReceiveUln302.json +2 -2
  137. package/deployments/{arbitrum-sandbox-local/PriceFeed.json → polygon-sandbox-local/Relayer.json} +445 -339
  138. package/deployments/polygon-sandbox-local/RelayerFeeLib.json +130 -0
  139. package/deployments/polygon-sandbox-local/RelayerProxyAdmin.json +272 -0
  140. package/deployments/polygon-sandbox-local/Relayer_Implementation.json +1014 -0
  141. package/deployments/{arbitrum-sandbox-local/PriceFeed_Proxy.json → polygon-sandbox-local/Relayer_Proxy.json} +64 -33
  142. package/deployments/polygon-sandbox-local/SendUln301.json +2 -2
  143. package/deployments/polygon-sandbox-local/SendUln302.json +2 -2
  144. package/deployments/polygon-sandbox-local/SimpleMessageLib.json +2 -2
  145. package/deployments/polygon-sandbox-local/Treasury.json +2 -2
  146. package/deployments/polygon-sandbox-local/TreasuryFeeHandler.json +1 -1
  147. package/deployments/polygon-sandbox-local/UlnConfig301.json +1003 -0
  148. package/deployments/polygon-sandbox-local/UlnConfig302.json +1003 -0
  149. package/deployments/polygon-sandbox-local/UltraLightNodeE302.json +1696 -0
  150. package/dist/{index-cijKSBLK.d.cts → index-pO8kCANF.d.mts} +41 -41
  151. package/dist/{index-cijKSBLK.d.ts → index-pO8kCANF.d.ts} +41 -41
  152. package/dist/index.browser.cjs +34 -34
  153. package/dist/index.browser.cjs.map +1 -1
  154. package/dist/{index.browser.d.cts → index.browser.d.mts} +1 -1
  155. package/dist/index.browser.d.ts +1 -1
  156. package/dist/index.browser.mjs +34 -34
  157. package/dist/index.browser.mjs.map +1 -1
  158. package/dist/index.cjs +34 -34
  159. package/dist/index.cjs.map +1 -1
  160. package/dist/{index.d.cts → index.d.mts} +1 -1
  161. package/dist/index.d.ts +1 -1
  162. package/dist/index.mjs +34 -34
  163. package/dist/index.mjs.map +1 -1
  164. package/package.json +15 -14
  165. package/deployments/arbitrum-sandbox-local/DVNFeeLib.json +0 -387
  166. package/deployments/arbitrum-sandbox-local/ExecutorFeeLib.json +0 -407
  167. package/deployments/arbitrum-sandbox-local/Executor_Implementation.json +0 -1591
  168. package/deployments/arbitrum-sandbox-local/Executor_Proxy.json +0 -380
  169. package/deployments/arbitrum-sandbox-local/NonceContractMock.json +0 -163
  170. package/deployments/arbitrum-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  171. package/deployments/arbitrum-sandbox-local/ReceiveUln301.json +0 -1264
  172. package/deployments/arbitrum-sandbox-local/ReceiveUln302.json +0 -954
  173. package/deployments/arbitrum-sandbox-local/SimpleMessageLib.json +0 -708
  174. package/deployments/arbitrum-sandbox-local/Treasury.json +0 -412
  175. package/deployments/arbitrum-sandbox-local/TreasuryFeeHandler.json +0 -125
  176. package/deployments/avalanche-sandbox-local/DVN.json +0 -1896
  177. package/deployments/avalanche-sandbox-local/DVNFeeLib.json +0 -387
  178. package/deployments/avalanche-sandbox-local/EndpointV2.json +0 -2955
  179. package/deployments/avalanche-sandbox-local/Executor.json +0 -1549
  180. package/deployments/avalanche-sandbox-local/ExecutorFeeLib.json +0 -407
  181. package/deployments/avalanche-sandbox-local/ExecutorProxyAdmin.json +0 -283
  182. package/deployments/avalanche-sandbox-local/Executor_Implementation.json +0 -1591
  183. package/deployments/avalanche-sandbox-local/Executor_Proxy.json +0 -380
  184. package/deployments/avalanche-sandbox-local/NonceContractMock.json +0 -163
  185. package/deployments/avalanche-sandbox-local/PriceFeed.json +0 -890
  186. package/deployments/avalanche-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  187. package/deployments/avalanche-sandbox-local/PriceFeed_Implementation.json +0 -912
  188. package/deployments/avalanche-sandbox-local/ReceiveUln301.json +0 -1264
  189. package/deployments/avalanche-sandbox-local/SendUln301.json +0 -1569
  190. package/deployments/avalanche-sandbox-local/SendUln302.json +0 -1527
  191. package/deployments/avalanche-sandbox-local/SimpleMessageLib.json +0 -708
  192. package/deployments/bsc-sandbox-local/DVN.json +0 -1896
  193. package/deployments/bsc-sandbox-local/EndpointV2.json +0 -2955
  194. package/deployments/bsc-sandbox-local/Executor_Proxy.json +0 -380
  195. package/deployments/bsc-sandbox-local/NonceContractMock.json +0 -163
  196. package/deployments/bsc-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  197. package/deployments/bsc-sandbox-local/PriceFeed_Implementation.json +0 -912
  198. package/deployments/bsc-sandbox-local/ReceiveUln302.json +0 -954
  199. package/deployments/bsc-sandbox-local/SendUln301.json +0 -1569
  200. package/deployments/bsc-sandbox-local/SendUln302.json +0 -1527
  201. package/deployments/bsc-sandbox-local/SimpleMessageLib.json +0 -708
  202. package/deployments/bsc-sandbox-local/TreasuryFeeHandler.json +0 -125
  203. package/deployments/tron-sandbox-local/DVN.json +0 -1896
  204. package/deployments/tron-sandbox-local/DVNFeeLib.json +0 -387
  205. package/deployments/tron-sandbox-local/EndpointV2.json +0 -2955
  206. package/deployments/tron-sandbox-local/ExecutorFeeLib.json +0 -407
  207. package/deployments/tron-sandbox-local/ExecutorProxyAdmin.json +0 -283
  208. package/deployments/tron-sandbox-local/Executor_Implementation.json +0 -1591
  209. package/deployments/tron-sandbox-local/NonceContractMock.json +0 -163
  210. package/deployments/tron-sandbox-local/PriceFeedProxyAdmin.json +0 -283
  211. package/deployments/tron-sandbox-local/PriceFeed_Implementation.json +0 -912
  212. package/deployments/tron-sandbox-local/ReceiveUln301.json +0 -1264
  213. package/deployments/tron-sandbox-local/ReceiveUln302.json +0 -954
  214. package/deployments/tron-sandbox-local/SendUln301.json +0 -1569
  215. package/deployments/tron-sandbox-local/SendUln302.json +0 -1527
  216. package/deployments/tron-sandbox-local/SimpleMessageLib.json +0 -708
  217. package/deployments/tron-sandbox-local/Treasury.json +0 -412
  218. package/deployments/tron-sandbox-local/TreasuryFeeHandler.json +0 -125
@@ -1,954 +0,0 @@
1
- {
2
- "address": "0x5C7c905B505f0Cf40Ab6600d05e677F717916F6B",
3
- "abi": [
4
- {
5
- "inputs": [
6
- {
7
- "internalType": "address",
8
- "name": "_endpoint",
9
- "type": "address"
10
- }
11
- ],
12
- "stateMutability": "nonpayable",
13
- "type": "constructor"
14
- },
15
- {
16
- "inputs": [],
17
- "name": "AtLeastOneDVN",
18
- "type": "error"
19
- },
20
- {
21
- "inputs": [
22
- {
23
- "internalType": "uint32",
24
- "name": "configType",
25
- "type": "uint32"
26
- }
27
- ],
28
- "name": "InvalidConfigType",
29
- "type": "error"
30
- },
31
- {
32
- "inputs": [],
33
- "name": "InvalidConfirmations",
34
- "type": "error"
35
- },
36
- {
37
- "inputs": [],
38
- "name": "InvalidEid",
39
- "type": "error"
40
- },
41
- {
42
- "inputs": [],
43
- "name": "InvalidOptionalDVNCount",
44
- "type": "error"
45
- },
46
- {
47
- "inputs": [],
48
- "name": "InvalidOptionalDVNThreshold",
49
- "type": "error"
50
- },
51
- {
52
- "inputs": [],
53
- "name": "InvalidPacketHeader",
54
- "type": "error"
55
- },
56
- {
57
- "inputs": [],
58
- "name": "InvalidPacketVersion",
59
- "type": "error"
60
- },
61
- {
62
- "inputs": [],
63
- "name": "InvalidRequiredDVNCount",
64
- "type": "error"
65
- },
66
- {
67
- "inputs": [],
68
- "name": "OnlyEndpoint",
69
- "type": "error"
70
- },
71
- {
72
- "inputs": [],
73
- "name": "Unsorted",
74
- "type": "error"
75
- },
76
- {
77
- "inputs": [
78
- {
79
- "internalType": "uint32",
80
- "name": "eid",
81
- "type": "uint32"
82
- }
83
- ],
84
- "name": "UnsupportedEid",
85
- "type": "error"
86
- },
87
- {
88
- "inputs": [],
89
- "name": "Verifying",
90
- "type": "error"
91
- },
92
- {
93
- "anonymous": false,
94
- "inputs": [
95
- {
96
- "components": [
97
- {
98
- "internalType": "uint32",
99
- "name": "eid",
100
- "type": "uint32"
101
- },
102
- {
103
- "components": [
104
- {
105
- "internalType": "uint64",
106
- "name": "confirmations",
107
- "type": "uint64"
108
- },
109
- {
110
- "internalType": "uint8",
111
- "name": "requiredDVNCount",
112
- "type": "uint8"
113
- },
114
- {
115
- "internalType": "uint8",
116
- "name": "optionalDVNCount",
117
- "type": "uint8"
118
- },
119
- {
120
- "internalType": "uint8",
121
- "name": "optionalDVNThreshold",
122
- "type": "uint8"
123
- },
124
- {
125
- "internalType": "address[]",
126
- "name": "requiredDVNs",
127
- "type": "address[]"
128
- },
129
- {
130
- "internalType": "address[]",
131
- "name": "optionalDVNs",
132
- "type": "address[]"
133
- }
134
- ],
135
- "internalType": "struct UlnConfig",
136
- "name": "config",
137
- "type": "tuple"
138
- }
139
- ],
140
- "indexed": false,
141
- "internalType": "struct SetDefaultUlnConfigParam[]",
142
- "name": "params",
143
- "type": "tuple[]"
144
- }
145
- ],
146
- "name": "DefaultUlnConfigsSet",
147
- "type": "event"
148
- },
149
- {
150
- "anonymous": false,
151
- "inputs": [
152
- {
153
- "indexed": true,
154
- "internalType": "address",
155
- "name": "previousOwner",
156
- "type": "address"
157
- },
158
- {
159
- "indexed": true,
160
- "internalType": "address",
161
- "name": "newOwner",
162
- "type": "address"
163
- }
164
- ],
165
- "name": "OwnershipTransferred",
166
- "type": "event"
167
- },
168
- {
169
- "anonymous": false,
170
- "inputs": [
171
- {
172
- "indexed": false,
173
- "internalType": "address",
174
- "name": "dvn",
175
- "type": "address"
176
- },
177
- {
178
- "indexed": false,
179
- "internalType": "bytes",
180
- "name": "header",
181
- "type": "bytes"
182
- },
183
- {
184
- "indexed": false,
185
- "internalType": "uint256",
186
- "name": "confirmations",
187
- "type": "uint256"
188
- },
189
- {
190
- "indexed": false,
191
- "internalType": "bytes32",
192
- "name": "proofHash",
193
- "type": "bytes32"
194
- }
195
- ],
196
- "name": "PayloadVerified",
197
- "type": "event"
198
- },
199
- {
200
- "anonymous": false,
201
- "inputs": [
202
- {
203
- "indexed": false,
204
- "internalType": "address",
205
- "name": "oapp",
206
- "type": "address"
207
- },
208
- {
209
- "indexed": false,
210
- "internalType": "uint32",
211
- "name": "eid",
212
- "type": "uint32"
213
- },
214
- {
215
- "components": [
216
- {
217
- "internalType": "uint64",
218
- "name": "confirmations",
219
- "type": "uint64"
220
- },
221
- {
222
- "internalType": "uint8",
223
- "name": "requiredDVNCount",
224
- "type": "uint8"
225
- },
226
- {
227
- "internalType": "uint8",
228
- "name": "optionalDVNCount",
229
- "type": "uint8"
230
- },
231
- {
232
- "internalType": "uint8",
233
- "name": "optionalDVNThreshold",
234
- "type": "uint8"
235
- },
236
- {
237
- "internalType": "address[]",
238
- "name": "requiredDVNs",
239
- "type": "address[]"
240
- },
241
- {
242
- "internalType": "address[]",
243
- "name": "optionalDVNs",
244
- "type": "address[]"
245
- }
246
- ],
247
- "indexed": false,
248
- "internalType": "struct UlnConfig",
249
- "name": "config",
250
- "type": "tuple"
251
- }
252
- ],
253
- "name": "UlnConfigSet",
254
- "type": "event"
255
- },
256
- {
257
- "inputs": [
258
- {
259
- "internalType": "bytes",
260
- "name": "_packetHeader",
261
- "type": "bytes"
262
- },
263
- {
264
- "internalType": "bytes32",
265
- "name": "_payloadHash",
266
- "type": "bytes32"
267
- }
268
- ],
269
- "name": "commitVerification",
270
- "outputs": [],
271
- "stateMutability": "nonpayable",
272
- "type": "function"
273
- },
274
- {
275
- "inputs": [
276
- {
277
- "internalType": "address",
278
- "name": "_oapp",
279
- "type": "address"
280
- },
281
- {
282
- "internalType": "uint32",
283
- "name": "_remoteEid",
284
- "type": "uint32"
285
- }
286
- ],
287
- "name": "getAppUlnConfig",
288
- "outputs": [
289
- {
290
- "components": [
291
- {
292
- "internalType": "uint64",
293
- "name": "confirmations",
294
- "type": "uint64"
295
- },
296
- {
297
- "internalType": "uint8",
298
- "name": "requiredDVNCount",
299
- "type": "uint8"
300
- },
301
- {
302
- "internalType": "uint8",
303
- "name": "optionalDVNCount",
304
- "type": "uint8"
305
- },
306
- {
307
- "internalType": "uint8",
308
- "name": "optionalDVNThreshold",
309
- "type": "uint8"
310
- },
311
- {
312
- "internalType": "address[]",
313
- "name": "requiredDVNs",
314
- "type": "address[]"
315
- },
316
- {
317
- "internalType": "address[]",
318
- "name": "optionalDVNs",
319
- "type": "address[]"
320
- }
321
- ],
322
- "internalType": "struct UlnConfig",
323
- "name": "",
324
- "type": "tuple"
325
- }
326
- ],
327
- "stateMutability": "view",
328
- "type": "function"
329
- },
330
- {
331
- "inputs": [
332
- {
333
- "internalType": "uint32",
334
- "name": "_eid",
335
- "type": "uint32"
336
- },
337
- {
338
- "internalType": "address",
339
- "name": "_oapp",
340
- "type": "address"
341
- },
342
- {
343
- "internalType": "uint32",
344
- "name": "_configType",
345
- "type": "uint32"
346
- }
347
- ],
348
- "name": "getConfig",
349
- "outputs": [
350
- {
351
- "internalType": "bytes",
352
- "name": "",
353
- "type": "bytes"
354
- }
355
- ],
356
- "stateMutability": "view",
357
- "type": "function"
358
- },
359
- {
360
- "inputs": [
361
- {
362
- "internalType": "address",
363
- "name": "_oapp",
364
- "type": "address"
365
- },
366
- {
367
- "internalType": "uint32",
368
- "name": "_remoteEid",
369
- "type": "uint32"
370
- }
371
- ],
372
- "name": "getUlnConfig",
373
- "outputs": [
374
- {
375
- "components": [
376
- {
377
- "internalType": "uint64",
378
- "name": "confirmations",
379
- "type": "uint64"
380
- },
381
- {
382
- "internalType": "uint8",
383
- "name": "requiredDVNCount",
384
- "type": "uint8"
385
- },
386
- {
387
- "internalType": "uint8",
388
- "name": "optionalDVNCount",
389
- "type": "uint8"
390
- },
391
- {
392
- "internalType": "uint8",
393
- "name": "optionalDVNThreshold",
394
- "type": "uint8"
395
- },
396
- {
397
- "internalType": "address[]",
398
- "name": "requiredDVNs",
399
- "type": "address[]"
400
- },
401
- {
402
- "internalType": "address[]",
403
- "name": "optionalDVNs",
404
- "type": "address[]"
405
- }
406
- ],
407
- "internalType": "struct UlnConfig",
408
- "name": "rtnConfig",
409
- "type": "tuple"
410
- }
411
- ],
412
- "stateMutability": "view",
413
- "type": "function"
414
- },
415
- {
416
- "inputs": [
417
- {
418
- "internalType": "bytes32",
419
- "name": "headerHash",
420
- "type": "bytes32"
421
- },
422
- {
423
- "internalType": "bytes32",
424
- "name": "payloadHash",
425
- "type": "bytes32"
426
- },
427
- {
428
- "internalType": "address",
429
- "name": "dvn",
430
- "type": "address"
431
- }
432
- ],
433
- "name": "hashLookup",
434
- "outputs": [
435
- {
436
- "internalType": "bool",
437
- "name": "submitted",
438
- "type": "bool"
439
- },
440
- {
441
- "internalType": "uint64",
442
- "name": "confirmations",
443
- "type": "uint64"
444
- }
445
- ],
446
- "stateMutability": "view",
447
- "type": "function"
448
- },
449
- {
450
- "inputs": [
451
- {
452
- "internalType": "uint32",
453
- "name": "_eid",
454
- "type": "uint32"
455
- }
456
- ],
457
- "name": "isSupportedEid",
458
- "outputs": [
459
- {
460
- "internalType": "bool",
461
- "name": "",
462
- "type": "bool"
463
- }
464
- ],
465
- "stateMutability": "view",
466
- "type": "function"
467
- },
468
- {
469
- "inputs": [],
470
- "name": "messageLibType",
471
- "outputs": [
472
- {
473
- "internalType": "enum MessageLibType",
474
- "name": "",
475
- "type": "uint8"
476
- }
477
- ],
478
- "stateMutability": "pure",
479
- "type": "function"
480
- },
481
- {
482
- "inputs": [],
483
- "name": "owner",
484
- "outputs": [
485
- {
486
- "internalType": "address",
487
- "name": "",
488
- "type": "address"
489
- }
490
- ],
491
- "stateMutability": "view",
492
- "type": "function"
493
- },
494
- {
495
- "inputs": [],
496
- "name": "renounceOwnership",
497
- "outputs": [],
498
- "stateMutability": "nonpayable",
499
- "type": "function"
500
- },
501
- {
502
- "inputs": [
503
- {
504
- "internalType": "address",
505
- "name": "_oapp",
506
- "type": "address"
507
- },
508
- {
509
- "components": [
510
- {
511
- "internalType": "uint32",
512
- "name": "eid",
513
- "type": "uint32"
514
- },
515
- {
516
- "internalType": "uint32",
517
- "name": "configType",
518
- "type": "uint32"
519
- },
520
- {
521
- "internalType": "bytes",
522
- "name": "config",
523
- "type": "bytes"
524
- }
525
- ],
526
- "internalType": "struct SetConfigParam[]",
527
- "name": "_params",
528
- "type": "tuple[]"
529
- }
530
- ],
531
- "name": "setConfig",
532
- "outputs": [],
533
- "stateMutability": "nonpayable",
534
- "type": "function"
535
- },
536
- {
537
- "inputs": [
538
- {
539
- "components": [
540
- {
541
- "internalType": "uint32",
542
- "name": "eid",
543
- "type": "uint32"
544
- },
545
- {
546
- "components": [
547
- {
548
- "internalType": "uint64",
549
- "name": "confirmations",
550
- "type": "uint64"
551
- },
552
- {
553
- "internalType": "uint8",
554
- "name": "requiredDVNCount",
555
- "type": "uint8"
556
- },
557
- {
558
- "internalType": "uint8",
559
- "name": "optionalDVNCount",
560
- "type": "uint8"
561
- },
562
- {
563
- "internalType": "uint8",
564
- "name": "optionalDVNThreshold",
565
- "type": "uint8"
566
- },
567
- {
568
- "internalType": "address[]",
569
- "name": "requiredDVNs",
570
- "type": "address[]"
571
- },
572
- {
573
- "internalType": "address[]",
574
- "name": "optionalDVNs",
575
- "type": "address[]"
576
- }
577
- ],
578
- "internalType": "struct UlnConfig",
579
- "name": "config",
580
- "type": "tuple"
581
- }
582
- ],
583
- "internalType": "struct SetDefaultUlnConfigParam[]",
584
- "name": "_params",
585
- "type": "tuple[]"
586
- }
587
- ],
588
- "name": "setDefaultUlnConfigs",
589
- "outputs": [],
590
- "stateMutability": "nonpayable",
591
- "type": "function"
592
- },
593
- {
594
- "inputs": [
595
- {
596
- "internalType": "bytes4",
597
- "name": "_interfaceId",
598
- "type": "bytes4"
599
- }
600
- ],
601
- "name": "supportsInterface",
602
- "outputs": [
603
- {
604
- "internalType": "bool",
605
- "name": "",
606
- "type": "bool"
607
- }
608
- ],
609
- "stateMutability": "view",
610
- "type": "function"
611
- },
612
- {
613
- "inputs": [
614
- {
615
- "internalType": "address",
616
- "name": "newOwner",
617
- "type": "address"
618
- }
619
- ],
620
- "name": "transferOwnership",
621
- "outputs": [],
622
- "stateMutability": "nonpayable",
623
- "type": "function"
624
- },
625
- {
626
- "inputs": [
627
- {
628
- "internalType": "bytes",
629
- "name": "_packetHeader",
630
- "type": "bytes"
631
- },
632
- {
633
- "internalType": "bytes32",
634
- "name": "_payloadHash",
635
- "type": "bytes32"
636
- }
637
- ],
638
- "name": "verifiable",
639
- "outputs": [
640
- {
641
- "internalType": "enum VerificationState",
642
- "name": "",
643
- "type": "uint8"
644
- }
645
- ],
646
- "stateMutability": "view",
647
- "type": "function"
648
- },
649
- {
650
- "inputs": [
651
- {
652
- "internalType": "bytes",
653
- "name": "_packetHeader",
654
- "type": "bytes"
655
- },
656
- {
657
- "internalType": "bytes32",
658
- "name": "_payloadHash",
659
- "type": "bytes32"
660
- },
661
- {
662
- "internalType": "uint64",
663
- "name": "_confirmations",
664
- "type": "uint64"
665
- }
666
- ],
667
- "name": "verify",
668
- "outputs": [],
669
- "stateMutability": "nonpayable",
670
- "type": "function"
671
- },
672
- {
673
- "inputs": [],
674
- "name": "version",
675
- "outputs": [
676
- {
677
- "internalType": "uint64",
678
- "name": "major",
679
- "type": "uint64"
680
- },
681
- {
682
- "internalType": "uint8",
683
- "name": "minor",
684
- "type": "uint8"
685
- },
686
- {
687
- "internalType": "uint8",
688
- "name": "endpointVersion",
689
- "type": "uint8"
690
- }
691
- ],
692
- "stateMutability": "pure",
693
- "type": "function"
694
- }
695
- ],
696
- "transactionHash": "0xc6b2dc716df47d5aea2c871882af90c2a990b3fae2f9de34279c430d3da041f7",
697
- "receipt": {
698
- "to": null,
699
- "from": "0x70997970C51812dc3A010C7d01b50e0d17dc79C8",
700
- "contractAddress": "0x5C7c905B505f0Cf40Ab6600d05e677F717916F6B",
701
- "transactionIndex": 0,
702
- "gasUsed": "2570310",
703
- "logsBloom": "0x00000000000000000002000000000000000000000000000080800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011000000000000000000000000000000000800020000000000000000000800000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000001400000000000000000000000000000",
704
- "blockHash": "0x381cf1849e239081a52b56b24ad473520c9db03da34a6934cfed8a8d6b2e498a",
705
- "transactionHash": "0xc6b2dc716df47d5aea2c871882af90c2a990b3fae2f9de34279c430d3da041f7",
706
- "logs": [
707
- {
708
- "transactionIndex": 0,
709
- "blockNumber": 45,
710
- "transactionHash": "0xc6b2dc716df47d5aea2c871882af90c2a990b3fae2f9de34279c430d3da041f7",
711
- "address": "0x5C7c905B505f0Cf40Ab6600d05e677F717916F6B",
712
- "topics": [
713
- "0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0",
714
- "0x0000000000000000000000000000000000000000000000000000000000000000",
715
- "0x00000000000000000000000070997970c51812dc3a010c7d01b50e0d17dc79c8"
716
- ],
717
- "data": "0x",
718
- "logIndex": 0,
719
- "blockHash": "0x381cf1849e239081a52b56b24ad473520c9db03da34a6934cfed8a8d6b2e498a"
720
- }
721
- ],
722
- "blockNumber": 45,
723
- "cumulativeGasUsed": "2570310",
724
- "status": 1,
725
- "byzantium": true
726
- },
727
- "args": [
728
- "0x0b48aF34f4c854F5ae1A3D587da471FeA45bAD52"
729
- ],
730
- "numDeployments": 1,
731
- "solcInputHash": "9a77f541806fd95ff35b8613e526dae5",
732
- "bytecode": "0x60c06040523480156200001157600080fd5b5060405162002eee38038062002eee833981016040819052620000349162000116565b8080816001600160a01b031663416ecebf6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000075573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009b919062000148565b620000a633620000c6565b6001600160a01b0390911660805263ffffffff1660a05250620001709050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156200012957600080fd5b81516001600160a01b03811681146200014157600080fd5b9392505050565b6000602082840312156200015b57600080fd5b815163ffffffff811681146200014157600080fd5b60805160a051612d3c620001b2600039600081816103410152610636015260008181610465015281816104ce0152818161158001526116720152612d3c6000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80633c782a5211610097578063715018a611610066578063715018a6146102695780638da5cb5b146102715780639c33abf714610299578063f2fde38b146102b957600080fd5b80633c782a52146101be57806343ea4fa91461022357806354fd4d50146102365780636750cd4c1461025657600080fd5b806320efd722116100d357806320efd7221461016557806327d12cd91461017857806329460b0b1461018b57806339e3f9381461019e57600080fd5b806301ffc9a7146101055780630223536e1461012d5780630894edf1146101425780631881d94d14610155575b600080fd5b610118610113366004611f50565b6102cc565b60405190151581526020015b60405180910390f35b61014061013b366004611ff8565b610328565b005b610140610150366004612055565b61033a565b60015b60405161012491906120d8565b610140610173366004612154565b6104cc565b610158610186366004612055565b61062d565b6101406101993660046121a7565b6106db565b6101b16101ac3660046121fd565b6108c0565b60405161012491906122eb565b6102036101cc3660046122fe565b600260209081526000938452604080852082529284528284209052825290205460ff811690610100900467ffffffffffffffff1682565b60408051921515835267ffffffffffffffff909116602083015201610124565b6101b16102313660046121fd565b610a61565b604080516003815260006020820152600291810191909152606001610124565b610118610264366004612333565b610e1b565b610140610e26565b60005460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610124565b6102ac6102a736600461234e565b610e3a565b6040516101249190612388565b6101406102c73660046123f5565b610ed3565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f2d669246000000000000000000000000000000000000000000000000000000001480610322575061032282610f8a565b92915050565b61033484848484611021565b50505050565b61036583837f0000000000000000000000000000000000000000000000000000000000000000611135565b60006103718484611208565b9050600061037f858561121a565b9050600061038d8383610a61565b90506103b18187876040516103a3929190612410565b60405180910390208661123d565b600060405180606001604052808463ffffffff1681526020016103d489896113ec565b81526020016103e38989611405565b67ffffffffffffffff908116909152604080517fa825d747000000000000000000000000000000000000000000000000000000008152835163ffffffff1660048201526020840151602482015290830151909116604482015273ffffffffffffffffffffffffffffffffffffffff8681166064830152608482018890529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a825d7479060a401600060405180830381600087803b1580156104ab57600080fd5b505af11580156104bf573d6000803e3d6000fd5b5050505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16331461053b576040517f7eb966c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610334573683838381811061055957610559612420565b905060200281019061056b919061244f565b905061058261057d6020830183612333565b611428565b60026105946040830160208401612333565b63ffffffff16036105d4576105cf6105af6020830183612333565b866105bd604085018561248d565b8101906105ca91906126d1565b61146f565b610624565b6105e46040820160208301612333565b6040517f3018cc2b00000000000000000000000000000000000000000000000000000000815263ffffffff90911660048201526024015b60405180910390fd5b5060010161053e565b600061065a84847f0000000000000000000000000000000000000000000000000000000000000000611135565b60006106668585611208565b90506000610674868661121a565b905061068381838888886114c5565b610692576002925050506106d4565b6106bd61069f8383610a61565b87876040516106af929190612410565b6040518091039020866116fb565b156106cd576001925050506106d4565b6000925050505b9392505050565b6106e3611804565b60005b81811015610882573683838381811061070157610701612420565b9050602002810190610713919061270e565b905060ff6107246020830183612742565b610735906040810190602001612776565b60ff160361076f576040517f1b66804100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff61077e6020830183612742565b61078f906060810190604001612776565b60ff16036107c9576040517f05f7ab6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff6107df6020830183612742565b6107ed906020810190612791565b67ffffffffffffffff160361082e576040517f8f6ae8f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61084c61083e6020830183612742565b610847906127ac565b611885565b610879600061085e6020840184612333565b61086b6020850185612742565b610874906127ac565b6118d6565b506001016106e6565b507faaf3aaa0c11056e86ac56eb653e25b005ca1a7d4dcd21ba24647f7ab63f3b56082826040516108b4929190612868565b60405180910390a15050565b6040805160c0810182526000808252602082018190529181018290526060808201929092526080810182905260a081019190915273ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020835160c081018552815467ffffffffffffffff8116825260ff680100000000000000008204811683860152690100000000000000000082048116838801526a010000000000000000000090910416606082015292810180548551818502810185019096528086529394919360808601938301828280156109e157602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116109b6575b5050505050815260200160028201805480602002602001604051908101604052809291908181526020018280548015610a5057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610a25575b505050505081525050905092915050565b6040805160c0810182526000808252602080830182905282840182905260608084018390526080840181905260a084015263ffffffff85168083527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49825284832073ffffffffffffffffffffffffffffffffffffffff88168452600183528584209184529152929020805491929167ffffffffffffffff1680610b1157825467ffffffffffffffff168452610b30565b67ffffffffffffffff81811614610b305767ffffffffffffffff811684525b815468010000000000000000900460ff16610be657825468010000000000000000900460ff1615610be15782600101805480602002602001604051908101604052809291908181526020018280548015610bc057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610b95575b50505050506080850152825468010000000000000000900460ff1660208501525b610c84565b815468010000000000000000900460ff90811614610c845781600101805480602002602001604051908101604052809291908181526020018280548015610c6357602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610c38575b50505050506080850152815468010000000000000000900460ff1660208501525b81546901000000000000000000900460ff16610d535782546901000000000000000000900460ff1615610d4e5782600201805480602002602001604051908101604052809291908181526020018280548015610d1657602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610ceb575b505050505060a0850152825460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610e09565b81546901000000000000000000900460ff90811614610e095781600201805480602002602001604051908101604052809291908181526020018280548015610dd157602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610da6575b505050505060a0850152815460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610e1284611885565b50505092915050565b600061032282611c6a565b610e2e611804565b610e386000611cd1565b565b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe63ffffffff831601610e9957610e738385610a61565b604051602001610e8391906122eb565b60405160208183030381529060405290506106d4565b6040517f3018cc2b00000000000000000000000000000000000000000000000000000000815263ffffffff8316600482015260240161061b565b610edb611804565b73ffffffffffffffffffffffffffffffffffffffff8116610f7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161061b565b610f8781611cd1565b50565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f97f0258400000000000000000000000000000000000000000000000000000000148061032257507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610322565b6040805180820182526001815267ffffffffffffffff8316602082015290516002906000906110539088908890612410565b6040805191829003909120825260208083019390935290810160009081208682528352818120338083529084529082902084518154959094015167ffffffffffffffff16610100027fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909516949094179290921790925590517f2cb0eed7538baeae4c6fde038c0fd0384d27de0dd55a228c65847bda6aa1ab5691611127918790879086908890612a05565b60405180910390a150505050565b6051821461116f576040517f0666bafd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600161117b8484611d46565b60ff16146111b5576040517f28fac06600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8063ffffffff166111c68484611d68565b63ffffffff1614611203576040517f9a61cd2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60006106d46112178484611d78565b90565b600061122a600d60098486612a8a565b61123391612ab4565b60e01c9392505050565b6112488383836116fb565b61127e576040517f692c93cb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602083015160ff16156113365760005b836020015160ff168160ff16101561133457600083815260026020908152604080832085845290915281206080860151805191929160ff85169081106112d6576112d6612420565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff00000000000000000016905560010161128e565b505b604083015160ff16156112035760005b836040015160ff168160ff161015610334576000838152600260209081526040808320858452909152812060a0860151805191929160ff851690811061138e5761138e612420565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000169055600101611346565b60006113fc602d600d8486612a8a565b6106d491612afc565b6000611415600960018486612a8a565b61141e91612b38565b60c01c9392505050565b61143181611c6a565b610f87576040517f2146a07a00000000000000000000000000000000000000000000000000000000815263ffffffff8216600482015260240161061b565b61147a8284836118d6565b6114848284610a61565b507f82118522aa536ac0e96cc5c689407ae42b89d592aa133890a01f1509842f50818284836040516114b893929190612b7e565b60405180910390a1505050565b60008060405180606001604052808863ffffffff1681526020016114e987876113ec565b81526020016114f88787611405565b67ffffffffffffffff908116909152604080517fe1e3a7df000000000000000000000000000000000000000000000000000000008152835163ffffffff1660048201526020840151602482015290830151909116604482015273ffffffffffffffffffffffffffffffffffffffff888116606483015230608483015260a482018690529192507f00000000000000000000000000000000000000000000000000000000000000009091169063e1e3a7df9060c401602060405180830381865afa1580156115c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ed9190612bb9565b6115fb5760009150506116f2565b8051602082015160408084015190517fc9fc7bcd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a8116600483015263ffffffff9094166024820152604481019290925267ffffffffffffffff16606482015284917f0000000000000000000000000000000000000000000000000000000000000000169063c9fc7bcd90608401602060405180830381865afa1580156116b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116dd9190612bdb565b036116ec5760009150506116f2565b60019150505b95945050505050565b602083015160009060ff161561177e5760005b846020015160ff168160ff1610156117665761175085608001518260ff168151811061173c5761173c612420565b602002602001015185858860000151611d88565b61175e5760009150506106d4565b60010161170e565b50836040015160ff1660000361177e575060016106d4565b606084015160005b856040015160ff168160ff1610156117f8576117c88660a001518260ff16815181106117b4576117b4612420565b602002602001015186868960000151611d88565b156117f057816117d781612c23565b9250508160ff166000036117f0576001925050506106d4565b600101611786565b50600095945050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610e38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161061b565b602081015160ff1615801561189f5750606081015160ff16155b15610f87576040517f7e36c28400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602081015160ff90811614806118f15750602081015160ff16155b156119385760808101515115611933576040517f1b66804100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6119b7565b806020015160ff168160800151511415806119735750600261195c600160ff612c5e565b6119669190612c77565b60ff16816020015160ff16115b156119aa576040517f1b66804100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6119b78160800151611e17565b604081015160ff90811614806119d25750604081015160ff16155b15611a585760a08101515115611a14576040517f05f7ab6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff1615611a53576040517f81da67ee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b2f565b806040015160ff168160a0015151141580611a9357506002611a7c600160ff612c5e565b611a869190612c77565b60ff16816040015160ff16115b15611aca576040517f05f7ab6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff161580611aeb5750806040015160ff16816060015160ff16115b15611b22576040517f81da67ee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b2f8160a00151611e17565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020845181548684015195870151606088015167ffffffffffffffff9093167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909216919091176801000000000000000060ff97881602177fffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffff166901000000000000000000918716919091027fffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff16176a0100000000000000000000959091169490940293909317835560808401518051859493611c4693908501920190611eb1565b5060a08201518051611c62916002840191602090910190611eb1565b505050505050565b63ffffffff811660009081527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4960205260408120805468010000000000000000900460ff161515806106d45750546a0100000000000000000000900460ff16151592915050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000611d556001828486612a8a565b611d5e91612cc0565b60f81c9392505050565b600061122a6031602d8486612a8a565b60006113fc605160318486612a8a565b6000838152600260209081526040808320858452825280832073ffffffffffffffffffffffffffffffffffffffff88168452825280832081518083019092525460ff811615801580845261010090920467ffffffffffffffff16938301939093529091611e0d57508267ffffffffffffffff16816020015167ffffffffffffffff1610155b9695505050505050565b6000805b8251811015611203576000838281518110611e3857611e38612420565b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611ea7576040517fa228a30b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b9150600101611e1b565b828054828255906000526020600020908101928215611f2b579160200282015b82811115611f2b57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190611ed1565b50611f37929150611f3b565b5090565b5b80821115611f375760008155600101611f3c565b600060208284031215611f6257600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146106d457600080fd5b60008083601f840112611fa457600080fd5b50813567ffffffffffffffff811115611fbc57600080fd5b602083019150836020828501011115611fd457600080fd5b9250929050565b803567ffffffffffffffff81168114611ff357600080fd5b919050565b6000806000806060858703121561200e57600080fd5b843567ffffffffffffffff81111561202557600080fd5b61203187828801611f92565b9095509350506020850135915061204a60408601611fdb565b905092959194509250565b60008060006040848603121561206a57600080fd5b833567ffffffffffffffff81111561208157600080fd5b61208d86828701611f92565b909790965060209590950135949350505050565b60038110610f87577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b602081016120e5836120a1565b91905290565b803573ffffffffffffffffffffffffffffffffffffffff81168114611ff357600080fd5b60008083601f84011261212157600080fd5b50813567ffffffffffffffff81111561213957600080fd5b6020830191508360208260051b8501011115611fd457600080fd5b60008060006040848603121561216957600080fd5b612172846120eb565b9250602084013567ffffffffffffffff81111561218e57600080fd5b61219a8682870161210f565b9497909650939450505050565b600080602083850312156121ba57600080fd5b823567ffffffffffffffff8111156121d157600080fd5b6121dd8582860161210f565b90969095509350505050565b803563ffffffff81168114611ff357600080fd5b6000806040838503121561221057600080fd5b612219836120eb565b9150612227602084016121e9565b90509250929050565b60008151808452602080850194506020840160005b8381101561227757815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101612245565b509495945050505050565b67ffffffffffffffff815116825260ff602082015116602083015260ff604082015116604083015260ff60608201511660608301526000608082015160c060808501526122d260c0850182612230565b905060a083015184820360a08601526116f28282612230565b6020815260006106d46020830184612282565b60008060006060848603121561231357600080fd5b833592506020840135915061232a604085016120eb565b90509250925092565b60006020828403121561234557600080fd5b6106d4826121e9565b60008060006060848603121561236357600080fd5b61236c846121e9565b925061237a602085016120eb565b915061232a604085016121e9565b60006020808352835180602085015260005b818110156123b65785810183015185820160400152820161239a565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b60006020828403121561240757600080fd5b6106d4826120eb565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa183360301811261248357600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126124c257600080fd5b83018035915067ffffffffffffffff8211156124dd57600080fd5b602001915036819003821315611fd457600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715612544576125446124f2565b60405290565b803560ff81168114611ff357600080fd5b600082601f83011261256c57600080fd5b8135602067ffffffffffffffff80831115612589576125896124f2565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156125cc576125cc6124f2565b60405293845260208187018101949081019250878511156125ec57600080fd5b6020870191505b8482101561261357612604826120eb565b835291830191908301906125f3565b979650505050505050565b600060c0828403121561263057600080fd5b612638612521565b905061264382611fdb565b81526126516020830161254a565b60208201526126626040830161254a565b60408201526126736060830161254a565b6060820152608082013567ffffffffffffffff8082111561269357600080fd5b61269f8583860161255b565b608084015260a08401359150808211156126b857600080fd5b506126c58482850161255b565b60a08301525092915050565b6000602082840312156126e357600080fd5b813567ffffffffffffffff8111156126fa57600080fd5b6127068482850161261e565b949350505050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261248357600080fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4183360301811261248357600080fd5b60006020828403121561278857600080fd5b6106d48261254a565b6000602082840312156127a357600080fd5b6106d482611fdb565b6000610322368361261e565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126127ed57600080fd5b830160208101925035905067ffffffffffffffff81111561280d57600080fd5b8060051b3603821315611fd457600080fd5b8183526000602080850194508260005b858110156122775773ffffffffffffffffffffffffffffffffffffffff612855836120eb565b168752958201959082019060010161282f565b60208082528181018390526000906040808401600586901b8501820187855b888110156129f7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08089850301855282357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18c36030181126128e957600080fd5b8b0163ffffffff6128f9826121e9565b168552878101357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4182360301811261293057600080fd5b8589018890520167ffffffffffffffff61294982611fdb565b168786015261295988820161254a565b606060ff8083168289015261296f8a850161254a565b92506080818416818a015261298583860161254a565b935060a09250818416838a015261299e818601866127b8565b60c08b810152945091506129b990506101008901848361281f565b9250506129c8818401846127b8565b93509050838783030160e08801526129e182848361281f565b978a019796505050928701925050600101612887565b509098975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8616815260806020820152836080820152838560a0830137600060a08583010152600060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f870116830101905067ffffffffffffffff841660408301528260608301529695505050505050565b60008085851115612a9a57600080fd5b83861115612aa757600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612af45780818660040360031b1b83161692505b505092915050565b80356020831015610322577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffffffffffffffff0000000000000000000000000000000000000000000000008135818116916008851015612af45760089490940360031b84901b1690921692915050565b73ffffffffffffffffffffffffffffffffffffffff8416815263ffffffff831660208201526060604082015260006116f26060830184612282565b600060208284031215612bcb57600080fd5b815180151581146106d457600080fd5b600060208284031215612bed57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600060ff821680612c3657612c36612bf4565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b60ff828116828216039081111561032257610322612bf4565b600060ff831680612cb1577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8060ff84160491505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008135818116916001851015612af45760019490940360031b84901b169092169291505056fea2646970667358221220dcdb51660ad9bd93dabc11f7e183db062e9dd72fac3b88153105a615db4c82d664736f6c63430008160033",
733
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80633c782a5211610097578063715018a611610066578063715018a6146102695780638da5cb5b146102715780639c33abf714610299578063f2fde38b146102b957600080fd5b80633c782a52146101be57806343ea4fa91461022357806354fd4d50146102365780636750cd4c1461025657600080fd5b806320efd722116100d357806320efd7221461016557806327d12cd91461017857806329460b0b1461018b57806339e3f9381461019e57600080fd5b806301ffc9a7146101055780630223536e1461012d5780630894edf1146101425780631881d94d14610155575b600080fd5b610118610113366004611f50565b6102cc565b60405190151581526020015b60405180910390f35b61014061013b366004611ff8565b610328565b005b610140610150366004612055565b61033a565b60015b60405161012491906120d8565b610140610173366004612154565b6104cc565b610158610186366004612055565b61062d565b6101406101993660046121a7565b6106db565b6101b16101ac3660046121fd565b6108c0565b60405161012491906122eb565b6102036101cc3660046122fe565b600260209081526000938452604080852082529284528284209052825290205460ff811690610100900467ffffffffffffffff1682565b60408051921515835267ffffffffffffffff909116602083015201610124565b6101b16102313660046121fd565b610a61565b604080516003815260006020820152600291810191909152606001610124565b610118610264366004612333565b610e1b565b610140610e26565b60005460405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610124565b6102ac6102a736600461234e565b610e3a565b6040516101249190612388565b6101406102c73660046123f5565b610ed3565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f2d669246000000000000000000000000000000000000000000000000000000001480610322575061032282610f8a565b92915050565b61033484848484611021565b50505050565b61036583837f0000000000000000000000000000000000000000000000000000000000000000611135565b60006103718484611208565b9050600061037f858561121a565b9050600061038d8383610a61565b90506103b18187876040516103a3929190612410565b60405180910390208661123d565b600060405180606001604052808463ffffffff1681526020016103d489896113ec565b81526020016103e38989611405565b67ffffffffffffffff908116909152604080517fa825d747000000000000000000000000000000000000000000000000000000008152835163ffffffff1660048201526020840151602482015290830151909116604482015273ffffffffffffffffffffffffffffffffffffffff8681166064830152608482018890529192507f00000000000000000000000000000000000000000000000000000000000000009091169063a825d7479060a401600060405180830381600087803b1580156104ab57600080fd5b505af11580156104bf573d6000803e3d6000fd5b5050505050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16331461053b576040517f7eb966c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b81811015610334573683838381811061055957610559612420565b905060200281019061056b919061244f565b905061058261057d6020830183612333565b611428565b60026105946040830160208401612333565b63ffffffff16036105d4576105cf6105af6020830183612333565b866105bd604085018561248d565b8101906105ca91906126d1565b61146f565b610624565b6105e46040820160208301612333565b6040517f3018cc2b00000000000000000000000000000000000000000000000000000000815263ffffffff90911660048201526024015b60405180910390fd5b5060010161053e565b600061065a84847f0000000000000000000000000000000000000000000000000000000000000000611135565b60006106668585611208565b90506000610674868661121a565b905061068381838888886114c5565b610692576002925050506106d4565b6106bd61069f8383610a61565b87876040516106af929190612410565b6040518091039020866116fb565b156106cd576001925050506106d4565b6000925050505b9392505050565b6106e3611804565b60005b81811015610882573683838381811061070157610701612420565b9050602002810190610713919061270e565b905060ff6107246020830183612742565b610735906040810190602001612776565b60ff160361076f576040517f1b66804100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60ff61077e6020830183612742565b61078f906060810190604001612776565b60ff16036107c9576040517f05f7ab6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff6107df6020830183612742565b6107ed906020810190612791565b67ffffffffffffffff160361082e576040517f8f6ae8f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61084c61083e6020830183612742565b610847906127ac565b611885565b610879600061085e6020840184612333565b61086b6020850185612742565b610874906127ac565b6118d6565b506001016106e6565b507faaf3aaa0c11056e86ac56eb653e25b005ca1a7d4dcd21ba24647f7ab63f3b56082826040516108b4929190612868565b60405180910390a15050565b6040805160c0810182526000808252602082018190529181018290526060808201929092526080810182905260a081019190915273ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020835160c081018552815467ffffffffffffffff8116825260ff680100000000000000008204811683860152690100000000000000000082048116838801526a010000000000000000000090910416606082015292810180548551818502810185019096528086529394919360808601938301828280156109e157602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116109b6575b5050505050815260200160028201805480602002602001604051908101604052809291908181526020018280548015610a5057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610a25575b505050505081525050905092915050565b6040805160c0810182526000808252602080830182905282840182905260608084018390526080840181905260a084015263ffffffff85168083527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb49825284832073ffffffffffffffffffffffffffffffffffffffff88168452600183528584209184529152929020805491929167ffffffffffffffff1680610b1157825467ffffffffffffffff168452610b30565b67ffffffffffffffff81811614610b305767ffffffffffffffff811684525b815468010000000000000000900460ff16610be657825468010000000000000000900460ff1615610be15782600101805480602002602001604051908101604052809291908181526020018280548015610bc057602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610b95575b50505050506080850152825468010000000000000000900460ff1660208501525b610c84565b815468010000000000000000900460ff90811614610c845781600101805480602002602001604051908101604052809291908181526020018280548015610c6357602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610c38575b50505050506080850152815468010000000000000000900460ff1660208501525b81546901000000000000000000900460ff16610d535782546901000000000000000000900460ff1615610d4e5782600201805480602002602001604051908101604052809291908181526020018280548015610d1657602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610ceb575b505050505060a0850152825460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610e09565b81546901000000000000000000900460ff90811614610e095781600201805480602002602001604051908101604052809291908181526020018280548015610dd157602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610da6575b505050505060a0850152815460ff69010000000000000000008204811660408701526a01000000000000000000009091041660608501525b610e1284611885565b50505092915050565b600061032282611c6a565b610e2e611804565b610e386000611cd1565b565b60607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe63ffffffff831601610e9957610e738385610a61565b604051602001610e8391906122eb565b60405160208183030381529060405290506106d4565b6040517f3018cc2b00000000000000000000000000000000000000000000000000000000815263ffffffff8316600482015260240161061b565b610edb611804565b73ffffffffffffffffffffffffffffffffffffffff8116610f7e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161061b565b610f8781611cd1565b50565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f97f0258400000000000000000000000000000000000000000000000000000000148061032257507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610322565b6040805180820182526001815267ffffffffffffffff8316602082015290516002906000906110539088908890612410565b6040805191829003909120825260208083019390935290810160009081208682528352818120338083529084529082902084518154959094015167ffffffffffffffff16610100027fffffffffffffffffffffffffffffffffffffffffffffff0000000000000000ff941515949094167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909516949094179290921790925590517f2cb0eed7538baeae4c6fde038c0fd0384d27de0dd55a228c65847bda6aa1ab5691611127918790879086908890612a05565b60405180910390a150505050565b6051821461116f576040517f0666bafd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600161117b8484611d46565b60ff16146111b5576040517f28fac06600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8063ffffffff166111c68484611d68565b63ffffffff1614611203576040517f9a61cd2600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60006106d46112178484611d78565b90565b600061122a600d60098486612a8a565b61123391612ab4565b60e01c9392505050565b6112488383836116fb565b61127e576040517f692c93cb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602083015160ff16156113365760005b836020015160ff168160ff16101561133457600083815260026020908152604080832085845290915281206080860151805191929160ff85169081106112d6576112d6612420565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff00000000000000000016905560010161128e565b505b604083015160ff16156112035760005b836040015160ff168160ff161015610334576000838152600260209081526040808320858452909152812060a0860151805191929160ff851690811061138e5761138e612420565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff16825281019190915260400160002080547fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000169055600101611346565b60006113fc602d600d8486612a8a565b6106d491612afc565b6000611415600960018486612a8a565b61141e91612b38565b60c01c9392505050565b61143181611c6a565b610f87576040517f2146a07a00000000000000000000000000000000000000000000000000000000815263ffffffff8216600482015260240161061b565b61147a8284836118d6565b6114848284610a61565b507f82118522aa536ac0e96cc5c689407ae42b89d592aa133890a01f1509842f50818284836040516114b893929190612b7e565b60405180910390a1505050565b60008060405180606001604052808863ffffffff1681526020016114e987876113ec565b81526020016114f88787611405565b67ffffffffffffffff908116909152604080517fe1e3a7df000000000000000000000000000000000000000000000000000000008152835163ffffffff1660048201526020840151602482015290830151909116604482015273ffffffffffffffffffffffffffffffffffffffff888116606483015230608483015260a482018690529192507f00000000000000000000000000000000000000000000000000000000000000009091169063e1e3a7df9060c401602060405180830381865afa1580156115c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ed9190612bb9565b6115fb5760009150506116f2565b8051602082015160408084015190517fc9fc7bcd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a8116600483015263ffffffff9094166024820152604481019290925267ffffffffffffffff16606482015284917f0000000000000000000000000000000000000000000000000000000000000000169063c9fc7bcd90608401602060405180830381865afa1580156116b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116dd9190612bdb565b036116ec5760009150506116f2565b60019150505b95945050505050565b602083015160009060ff161561177e5760005b846020015160ff168160ff1610156117665761175085608001518260ff168151811061173c5761173c612420565b602002602001015185858860000151611d88565b61175e5760009150506106d4565b60010161170e565b50836040015160ff1660000361177e575060016106d4565b606084015160005b856040015160ff168160ff1610156117f8576117c88660a001518260ff16815181106117b4576117b4612420565b602002602001015186868960000151611d88565b156117f057816117d781612c23565b9250508160ff166000036117f0576001925050506106d4565b600101611786565b50600095945050505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610e38576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161061b565b602081015160ff1615801561189f5750606081015160ff16155b15610f87576040517f7e36c28400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b602081015160ff90811614806118f15750602081015160ff16155b156119385760808101515115611933576040517f1b66804100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6119b7565b806020015160ff168160800151511415806119735750600261195c600160ff612c5e565b6119669190612c77565b60ff16816020015160ff16115b156119aa576040517f1b66804100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6119b78160800151611e17565b604081015160ff90811614806119d25750604081015160ff16155b15611a585760a08101515115611a14576040517f05f7ab6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff1615611a53576040517f81da67ee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b2f565b806040015160ff168160a0015151141580611a9357506002611a7c600160ff612c5e565b611a869190612c77565b60ff16816040015160ff16115b15611aca576040517f05f7ab6200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b606081015160ff161580611aeb5750806040015160ff16816060015160ff16115b15611b22576040517f81da67ee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b2f8160a00151611e17565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260016020818152604080842063ffffffff87168552825292839020845181548684015195870151606088015167ffffffffffffffff9093167fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000909216919091176801000000000000000060ff97881602177fffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffffff166901000000000000000000918716919091027fffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffffffff16176a0100000000000000000000959091169490940293909317835560808401518051859493611c4693908501920190611eb1565b5060a08201518051611c62916002840191602090910190611eb1565b505050505050565b63ffffffff811660009081527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb4960205260408120805468010000000000000000900460ff161515806106d45750546a0100000000000000000000900460ff16151592915050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000611d556001828486612a8a565b611d5e91612cc0565b60f81c9392505050565b600061122a6031602d8486612a8a565b60006113fc605160318486612a8a565b6000838152600260209081526040808320858452825280832073ffffffffffffffffffffffffffffffffffffffff88168452825280832081518083019092525460ff811615801580845261010090920467ffffffffffffffff16938301939093529091611e0d57508267ffffffffffffffff16816020015167ffffffffffffffff1610155b9695505050505050565b6000805b8251811015611203576000838281518110611e3857611e38612420565b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611ea7576040517fa228a30b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b9150600101611e1b565b828054828255906000526020600020908101928215611f2b579160200282015b82811115611f2b57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190611ed1565b50611f37929150611f3b565b5090565b5b80821115611f375760008155600101611f3c565b600060208284031215611f6257600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146106d457600080fd5b60008083601f840112611fa457600080fd5b50813567ffffffffffffffff811115611fbc57600080fd5b602083019150836020828501011115611fd457600080fd5b9250929050565b803567ffffffffffffffff81168114611ff357600080fd5b919050565b6000806000806060858703121561200e57600080fd5b843567ffffffffffffffff81111561202557600080fd5b61203187828801611f92565b9095509350506020850135915061204a60408601611fdb565b905092959194509250565b60008060006040848603121561206a57600080fd5b833567ffffffffffffffff81111561208157600080fd5b61208d86828701611f92565b909790965060209590950135949350505050565b60038110610f87577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b602081016120e5836120a1565b91905290565b803573ffffffffffffffffffffffffffffffffffffffff81168114611ff357600080fd5b60008083601f84011261212157600080fd5b50813567ffffffffffffffff81111561213957600080fd5b6020830191508360208260051b8501011115611fd457600080fd5b60008060006040848603121561216957600080fd5b612172846120eb565b9250602084013567ffffffffffffffff81111561218e57600080fd5b61219a8682870161210f565b9497909650939450505050565b600080602083850312156121ba57600080fd5b823567ffffffffffffffff8111156121d157600080fd5b6121dd8582860161210f565b90969095509350505050565b803563ffffffff81168114611ff357600080fd5b6000806040838503121561221057600080fd5b612219836120eb565b9150612227602084016121e9565b90509250929050565b60008151808452602080850194506020840160005b8381101561227757815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101612245565b509495945050505050565b67ffffffffffffffff815116825260ff602082015116602083015260ff604082015116604083015260ff60608201511660608301526000608082015160c060808501526122d260c0850182612230565b905060a083015184820360a08601526116f28282612230565b6020815260006106d46020830184612282565b60008060006060848603121561231357600080fd5b833592506020840135915061232a604085016120eb565b90509250925092565b60006020828403121561234557600080fd5b6106d4826121e9565b60008060006060848603121561236357600080fd5b61236c846121e9565b925061237a602085016120eb565b915061232a604085016121e9565b60006020808352835180602085015260005b818110156123b65785810183015185820160400152820161239a565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b60006020828403121561240757600080fd5b6106d4826120eb565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa183360301811261248357600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126124c257600080fd5b83018035915067ffffffffffffffff8211156124dd57600080fd5b602001915036819003821315611fd457600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715612544576125446124f2565b60405290565b803560ff81168114611ff357600080fd5b600082601f83011261256c57600080fd5b8135602067ffffffffffffffff80831115612589576125896124f2565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156125cc576125cc6124f2565b60405293845260208187018101949081019250878511156125ec57600080fd5b6020870191505b8482101561261357612604826120eb565b835291830191908301906125f3565b979650505050505050565b600060c0828403121561263057600080fd5b612638612521565b905061264382611fdb565b81526126516020830161254a565b60208201526126626040830161254a565b60408201526126736060830161254a565b6060820152608082013567ffffffffffffffff8082111561269357600080fd5b61269f8583860161255b565b608084015260a08401359150808211156126b857600080fd5b506126c58482850161255b565b60a08301525092915050565b6000602082840312156126e357600080fd5b813567ffffffffffffffff8111156126fa57600080fd5b6127068482850161261e565b949350505050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261248357600080fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4183360301811261248357600080fd5b60006020828403121561278857600080fd5b6106d48261254a565b6000602082840312156127a357600080fd5b6106d482611fdb565b6000610322368361261e565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126127ed57600080fd5b830160208101925035905067ffffffffffffffff81111561280d57600080fd5b8060051b3603821315611fd457600080fd5b8183526000602080850194508260005b858110156122775773ffffffffffffffffffffffffffffffffffffffff612855836120eb565b168752958201959082019060010161282f565b60208082528181018390526000906040808401600586901b8501820187855b888110156129f7577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc08089850301855282357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc18c36030181126128e957600080fd5b8b0163ffffffff6128f9826121e9565b168552878101357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff4182360301811261293057600080fd5b8589018890520167ffffffffffffffff61294982611fdb565b168786015261295988820161254a565b606060ff8083168289015261296f8a850161254a565b92506080818416818a015261298583860161254a565b935060a09250818416838a015261299e818601866127b8565b60c08b810152945091506129b990506101008901848361281f565b9250506129c8818401846127b8565b93509050838783030160e08801526129e182848361281f565b978a019796505050928701925050600101612887565b509098975050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8616815260806020820152836080820152838560a0830137600060a08583010152600060a07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f870116830101905067ffffffffffffffff841660408301528260608301529695505050505050565b60008085851115612a9a57600080fd5b83861115612aa757600080fd5b5050820193919092039150565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015612af45780818660040360031b1b83161692505b505092915050565b80356020831015610322577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b7fffffffffffffffff0000000000000000000000000000000000000000000000008135818116916008851015612af45760089490940360031b84901b1690921692915050565b73ffffffffffffffffffffffffffffffffffffffff8416815263ffffffff831660208201526060604082015260006116f26060830184612282565b600060208284031215612bcb57600080fd5b815180151581146106d457600080fd5b600060208284031215612bed57600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600060ff821680612c3657612c36612bf4565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b60ff828116828216039081111561032257610322612bf4565b600060ff831680612cb1577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b8060ff84160491505092915050565b7fff000000000000000000000000000000000000000000000000000000000000008135818116916001851015612af45760019490940360031b84901b169092169291505056fea2646970667358221220dcdb51660ad9bd93dabc11f7e183db062e9dd72fac3b88153105a615db4c82d664736f6c63430008160033",
734
- "devdoc": {
735
- "details": "This is a gluing contract. It simply parses the requests and forward to the super.impl() accordingly.In this case, it combines the logic of ReceiveUlnBase and ReceiveLibBaseE2",
736
- "kind": "dev",
737
- "methods": {
738
- "commitVerification(bytes,bytes32)": {
739
- "details": "dont need to check endpoint verifiable here to save gas, as it will reverts if not verifiable."
740
- },
741
- "getAppUlnConfig(address,uint32)": {
742
- "details": "Get the uln config without the default config for the given remoteEid."
743
- },
744
- "owner()": {
745
- "details": "Returns the address of the current owner."
746
- },
747
- "renounceOwnership()": {
748
- "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."
749
- },
750
- "setDefaultUlnConfigs((uint32,(uint64,uint8,uint8,uint8,address[],address[]))[])": {
751
- "details": "about the DEFAULT ULN config 1) its values are all LITERAL (e.g. 0 is 0). whereas in the oapp ULN config, 0 (default value) points to the default ULN config this design enables the oapp to point to DEFAULT config without explicitly setting the config 2) its configuration is more restrictive than the oapp ULN config that a) it must not use NIL value, where NIL is used only by oapps to indicate the LITERAL 0 b) it must have at least one DVN"
752
- },
753
- "transferOwnership(address)": {
754
- "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."
755
- },
756
- "verifiable(bytes,bytes32)": {
757
- "details": "a ULN verifiable requires it to be endpoint verifiable and committable"
758
- },
759
- "verify(bytes,bytes32,uint64)": {
760
- "details": "for dvn to verify the payload"
761
- }
762
- },
763
- "stateVariables": {
764
- "CONFIG_TYPE_ULN": {
765
- "details": "CONFIG_TYPE_ULN=2 here to align with SendUln302/ReceiveUln302/ReceiveUln301"
766
- }
767
- },
768
- "version": 1
769
- },
770
- "userdoc": {
771
- "kind": "user",
772
- "methods": {},
773
- "version": 1
774
- },
775
- "storageLayout": {
776
- "storage": [
777
- {
778
- "astId": 6813,
779
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
780
- "label": "_owner",
781
- "offset": 0,
782
- "slot": "0",
783
- "type": "t_address"
784
- },
785
- {
786
- "astId": 16927,
787
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
788
- "label": "ulnConfigs",
789
- "offset": 0,
790
- "slot": "1",
791
- "type": "t_mapping(t_address,t_mapping(t_uint32,t_struct(UlnConfig)16876_storage))"
792
- },
793
- {
794
- "astId": 16033,
795
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
796
- "label": "hashLookup",
797
- "offset": 0,
798
- "slot": "2",
799
- "type": "t_mapping(t_bytes32,t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)16018_storage)))"
800
- }
801
- ],
802
- "types": {
803
- "t_address": {
804
- "encoding": "inplace",
805
- "label": "address",
806
- "numberOfBytes": "20"
807
- },
808
- "t_array(t_address)dyn_storage": {
809
- "base": "t_address",
810
- "encoding": "dynamic_array",
811
- "label": "address[]",
812
- "numberOfBytes": "32"
813
- },
814
- "t_bool": {
815
- "encoding": "inplace",
816
- "label": "bool",
817
- "numberOfBytes": "1"
818
- },
819
- "t_bytes32": {
820
- "encoding": "inplace",
821
- "label": "bytes32",
822
- "numberOfBytes": "32"
823
- },
824
- "t_mapping(t_address,t_mapping(t_uint32,t_struct(UlnConfig)16876_storage))": {
825
- "encoding": "mapping",
826
- "key": "t_address",
827
- "label": "mapping(address => mapping(uint32 => struct UlnConfig))",
828
- "numberOfBytes": "32",
829
- "value": "t_mapping(t_uint32,t_struct(UlnConfig)16876_storage)"
830
- },
831
- "t_mapping(t_address,t_struct(Verification)16018_storage)": {
832
- "encoding": "mapping",
833
- "key": "t_address",
834
- "label": "mapping(address => struct Verification)",
835
- "numberOfBytes": "32",
836
- "value": "t_struct(Verification)16018_storage"
837
- },
838
- "t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)16018_storage))": {
839
- "encoding": "mapping",
840
- "key": "t_bytes32",
841
- "label": "mapping(bytes32 => mapping(address => struct Verification))",
842
- "numberOfBytes": "32",
843
- "value": "t_mapping(t_address,t_struct(Verification)16018_storage)"
844
- },
845
- "t_mapping(t_bytes32,t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)16018_storage)))": {
846
- "encoding": "mapping",
847
- "key": "t_bytes32",
848
- "label": "mapping(bytes32 => mapping(bytes32 => mapping(address => struct Verification)))",
849
- "numberOfBytes": "32",
850
- "value": "t_mapping(t_bytes32,t_mapping(t_address,t_struct(Verification)16018_storage))"
851
- },
852
- "t_mapping(t_uint32,t_struct(UlnConfig)16876_storage)": {
853
- "encoding": "mapping",
854
- "key": "t_uint32",
855
- "label": "mapping(uint32 => struct UlnConfig)",
856
- "numberOfBytes": "32",
857
- "value": "t_struct(UlnConfig)16876_storage"
858
- },
859
- "t_struct(UlnConfig)16876_storage": {
860
- "encoding": "inplace",
861
- "label": "struct UlnConfig",
862
- "members": [
863
- {
864
- "astId": 16863,
865
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
866
- "label": "confirmations",
867
- "offset": 0,
868
- "slot": "0",
869
- "type": "t_uint64"
870
- },
871
- {
872
- "astId": 16865,
873
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
874
- "label": "requiredDVNCount",
875
- "offset": 8,
876
- "slot": "0",
877
- "type": "t_uint8"
878
- },
879
- {
880
- "astId": 16867,
881
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
882
- "label": "optionalDVNCount",
883
- "offset": 9,
884
- "slot": "0",
885
- "type": "t_uint8"
886
- },
887
- {
888
- "astId": 16869,
889
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
890
- "label": "optionalDVNThreshold",
891
- "offset": 10,
892
- "slot": "0",
893
- "type": "t_uint8"
894
- },
895
- {
896
- "astId": 16872,
897
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
898
- "label": "requiredDVNs",
899
- "offset": 0,
900
- "slot": "1",
901
- "type": "t_array(t_address)dyn_storage"
902
- },
903
- {
904
- "astId": 16875,
905
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
906
- "label": "optionalDVNs",
907
- "offset": 0,
908
- "slot": "2",
909
- "type": "t_array(t_address)dyn_storage"
910
- }
911
- ],
912
- "numberOfBytes": "96"
913
- },
914
- "t_struct(Verification)16018_storage": {
915
- "encoding": "inplace",
916
- "label": "struct Verification",
917
- "members": [
918
- {
919
- "astId": 16015,
920
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
921
- "label": "submitted",
922
- "offset": 0,
923
- "slot": "0",
924
- "type": "t_bool"
925
- },
926
- {
927
- "astId": 16017,
928
- "contract": "contracts/uln/uln302/ReceiveUln302.sol:ReceiveUln302",
929
- "label": "confirmations",
930
- "offset": 1,
931
- "slot": "0",
932
- "type": "t_uint64"
933
- }
934
- ],
935
- "numberOfBytes": "32"
936
- },
937
- "t_uint32": {
938
- "encoding": "inplace",
939
- "label": "uint32",
940
- "numberOfBytes": "4"
941
- },
942
- "t_uint64": {
943
- "encoding": "inplace",
944
- "label": "uint64",
945
- "numberOfBytes": "8"
946
- },
947
- "t_uint8": {
948
- "encoding": "inplace",
949
- "label": "uint8",
950
- "numberOfBytes": "1"
951
- }
952
- }
953
- }
954
- }