@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
@@ -0,0 +1,1326 @@
1
+ {
2
+ "address": "0x10Aeafac83d48E2f9ac4bAAf94311c45fACe1404",
3
+ "abi": [
4
+ {
5
+ "anonymous": false,
6
+ "inputs": [
7
+ {
8
+ "indexed": false,
9
+ "internalType": "uint32",
10
+ "name": "dstEid",
11
+ "type": "uint32"
12
+ },
13
+ {
14
+ "indexed": false,
15
+ "internalType": "address",
16
+ "name": "oapp",
17
+ "type": "address"
18
+ },
19
+ {
20
+ "indexed": false,
21
+ "internalType": "uint64",
22
+ "name": "confirmations",
23
+ "type": "uint64"
24
+ },
25
+ {
26
+ "indexed": false,
27
+ "internalType": "uint256",
28
+ "name": "totalFee",
29
+ "type": "uint256"
30
+ }
31
+ ],
32
+ "name": "AssignJob",
33
+ "type": "event"
34
+ },
35
+ {
36
+ "anonymous": false,
37
+ "inputs": [
38
+ {
39
+ "indexed": false,
40
+ "internalType": "address",
41
+ "name": "_target",
42
+ "type": "address"
43
+ },
44
+ {
45
+ "indexed": false,
46
+ "internalType": "bytes32",
47
+ "name": "_callDataHash",
48
+ "type": "bytes32"
49
+ },
50
+ {
51
+ "indexed": false,
52
+ "internalType": "bool",
53
+ "name": "_success",
54
+ "type": "bool"
55
+ },
56
+ {
57
+ "indexed": false,
58
+ "internalType": "bytes",
59
+ "name": "_data",
60
+ "type": "bytes"
61
+ }
62
+ ],
63
+ "name": "Execute",
64
+ "type": "event"
65
+ },
66
+ {
67
+ "anonymous": false,
68
+ "inputs": [
69
+ {
70
+ "indexed": false,
71
+ "internalType": "uint8",
72
+ "name": "version",
73
+ "type": "uint8"
74
+ }
75
+ ],
76
+ "name": "Initialized",
77
+ "type": "event"
78
+ },
79
+ {
80
+ "anonymous": false,
81
+ "inputs": [
82
+ {
83
+ "indexed": true,
84
+ "internalType": "bytes32",
85
+ "name": "role",
86
+ "type": "bytes32"
87
+ },
88
+ {
89
+ "indexed": true,
90
+ "internalType": "bytes32",
91
+ "name": "previousAdminRole",
92
+ "type": "bytes32"
93
+ },
94
+ {
95
+ "indexed": true,
96
+ "internalType": "bytes32",
97
+ "name": "newAdminRole",
98
+ "type": "bytes32"
99
+ }
100
+ ],
101
+ "name": "RoleAdminChanged",
102
+ "type": "event"
103
+ },
104
+ {
105
+ "anonymous": false,
106
+ "inputs": [
107
+ {
108
+ "indexed": true,
109
+ "internalType": "bytes32",
110
+ "name": "role",
111
+ "type": "bytes32"
112
+ },
113
+ {
114
+ "indexed": true,
115
+ "internalType": "address",
116
+ "name": "account",
117
+ "type": "address"
118
+ },
119
+ {
120
+ "indexed": true,
121
+ "internalType": "address",
122
+ "name": "sender",
123
+ "type": "address"
124
+ }
125
+ ],
126
+ "name": "RoleGranted",
127
+ "type": "event"
128
+ },
129
+ {
130
+ "anonymous": false,
131
+ "inputs": [
132
+ {
133
+ "indexed": true,
134
+ "internalType": "bytes32",
135
+ "name": "role",
136
+ "type": "bytes32"
137
+ },
138
+ {
139
+ "indexed": true,
140
+ "internalType": "address",
141
+ "name": "account",
142
+ "type": "address"
143
+ },
144
+ {
145
+ "indexed": true,
146
+ "internalType": "address",
147
+ "name": "sender",
148
+ "type": "address"
149
+ }
150
+ ],
151
+ "name": "RoleRevoked",
152
+ "type": "event"
153
+ },
154
+ {
155
+ "anonymous": false,
156
+ "inputs": [
157
+ {
158
+ "indexed": false,
159
+ "internalType": "uint16",
160
+ "name": "multiplierBps",
161
+ "type": "uint16"
162
+ }
163
+ ],
164
+ "name": "SetDefaultMultiplierBps",
165
+ "type": "event"
166
+ },
167
+ {
168
+ "anonymous": false,
169
+ "inputs": [
170
+ {
171
+ "components": [
172
+ {
173
+ "internalType": "uint32",
174
+ "name": "dstEid",
175
+ "type": "uint32"
176
+ },
177
+ {
178
+ "internalType": "uint64",
179
+ "name": "gas",
180
+ "type": "uint64"
181
+ },
182
+ {
183
+ "internalType": "uint16",
184
+ "name": "multiplierBps",
185
+ "type": "uint16"
186
+ },
187
+ {
188
+ "internalType": "uint128",
189
+ "name": "floorMarginUSD",
190
+ "type": "uint128"
191
+ }
192
+ ],
193
+ "indexed": false,
194
+ "internalType": "struct IOracle.DstConfigParam[]",
195
+ "name": "params",
196
+ "type": "tuple[]"
197
+ }
198
+ ],
199
+ "name": "SetDstConfig",
200
+ "type": "event"
201
+ },
202
+ {
203
+ "anonymous": false,
204
+ "inputs": [
205
+ {
206
+ "indexed": false,
207
+ "internalType": "address",
208
+ "name": "priceFeed",
209
+ "type": "address"
210
+ }
211
+ ],
212
+ "name": "SetPriceFeed",
213
+ "type": "event"
214
+ },
215
+ {
216
+ "anonymous": false,
217
+ "inputs": [
218
+ {
219
+ "indexed": false,
220
+ "internalType": "address",
221
+ "name": "workerLib",
222
+ "type": "address"
223
+ }
224
+ ],
225
+ "name": "SetWorkerLib",
226
+ "type": "event"
227
+ },
228
+ {
229
+ "anonymous": false,
230
+ "inputs": [
231
+ {
232
+ "indexed": false,
233
+ "internalType": "uint64",
234
+ "name": "_quorum",
235
+ "type": "uint64"
236
+ }
237
+ ],
238
+ "name": "UpdateQuorum",
239
+ "type": "event"
240
+ },
241
+ {
242
+ "anonymous": false,
243
+ "inputs": [
244
+ {
245
+ "indexed": false,
246
+ "internalType": "address",
247
+ "name": "_signer",
248
+ "type": "address"
249
+ },
250
+ {
251
+ "indexed": false,
252
+ "internalType": "bool",
253
+ "name": "_active",
254
+ "type": "bool"
255
+ }
256
+ ],
257
+ "name": "UpdateSigner",
258
+ "type": "event"
259
+ },
260
+ {
261
+ "anonymous": false,
262
+ "inputs": [
263
+ {
264
+ "indexed": false,
265
+ "internalType": "address",
266
+ "name": "lib",
267
+ "type": "address"
268
+ },
269
+ {
270
+ "indexed": false,
271
+ "internalType": "address",
272
+ "name": "to",
273
+ "type": "address"
274
+ },
275
+ {
276
+ "indexed": false,
277
+ "internalType": "uint256",
278
+ "name": "amount",
279
+ "type": "uint256"
280
+ }
281
+ ],
282
+ "name": "Withdraw",
283
+ "type": "event"
284
+ },
285
+ {
286
+ "inputs": [],
287
+ "name": "ADMIN_ROLE",
288
+ "outputs": [
289
+ {
290
+ "internalType": "bytes32",
291
+ "name": "",
292
+ "type": "bytes32"
293
+ }
294
+ ],
295
+ "stateMutability": "view",
296
+ "type": "function"
297
+ },
298
+ {
299
+ "inputs": [],
300
+ "name": "ALLOWLIST",
301
+ "outputs": [
302
+ {
303
+ "internalType": "bytes32",
304
+ "name": "",
305
+ "type": "bytes32"
306
+ }
307
+ ],
308
+ "stateMutability": "view",
309
+ "type": "function"
310
+ },
311
+ {
312
+ "inputs": [],
313
+ "name": "DEFAULT_ADMIN_ROLE",
314
+ "outputs": [
315
+ {
316
+ "internalType": "bytes32",
317
+ "name": "",
318
+ "type": "bytes32"
319
+ }
320
+ ],
321
+ "stateMutability": "view",
322
+ "type": "function"
323
+ },
324
+ {
325
+ "inputs": [],
326
+ "name": "DENYLIST",
327
+ "outputs": [
328
+ {
329
+ "internalType": "bytes32",
330
+ "name": "",
331
+ "type": "bytes32"
332
+ }
333
+ ],
334
+ "stateMutability": "view",
335
+ "type": "function"
336
+ },
337
+ {
338
+ "inputs": [],
339
+ "name": "MESSAGE_LIB_ROLE",
340
+ "outputs": [
341
+ {
342
+ "internalType": "bytes32",
343
+ "name": "",
344
+ "type": "bytes32"
345
+ }
346
+ ],
347
+ "stateMutability": "view",
348
+ "type": "function"
349
+ },
350
+ {
351
+ "inputs": [],
352
+ "name": "allowlistSize",
353
+ "outputs": [
354
+ {
355
+ "internalType": "uint64",
356
+ "name": "",
357
+ "type": "uint64"
358
+ }
359
+ ],
360
+ "stateMutability": "view",
361
+ "type": "function"
362
+ },
363
+ {
364
+ "inputs": [
365
+ {
366
+ "internalType": "uint32",
367
+ "name": "_dstEid",
368
+ "type": "uint32"
369
+ },
370
+ {
371
+ "internalType": "uint64",
372
+ "name": "_confirmations",
373
+ "type": "uint64"
374
+ },
375
+ {
376
+ "internalType": "address",
377
+ "name": "_sender",
378
+ "type": "address"
379
+ },
380
+ {
381
+ "internalType": "bytes",
382
+ "name": "_options",
383
+ "type": "bytes"
384
+ }
385
+ ],
386
+ "name": "assignJob",
387
+ "outputs": [
388
+ {
389
+ "internalType": "uint256",
390
+ "name": "totalFee",
391
+ "type": "uint256"
392
+ }
393
+ ],
394
+ "stateMutability": "payable",
395
+ "type": "function"
396
+ },
397
+ {
398
+ "inputs": [],
399
+ "name": "defaultMultiplierBps",
400
+ "outputs": [
401
+ {
402
+ "internalType": "uint16",
403
+ "name": "",
404
+ "type": "uint16"
405
+ }
406
+ ],
407
+ "stateMutability": "view",
408
+ "type": "function"
409
+ },
410
+ {
411
+ "inputs": [
412
+ {
413
+ "internalType": "uint32",
414
+ "name": "dstEid",
415
+ "type": "uint32"
416
+ }
417
+ ],
418
+ "name": "dstConfig",
419
+ "outputs": [
420
+ {
421
+ "internalType": "uint64",
422
+ "name": "gas",
423
+ "type": "uint64"
424
+ },
425
+ {
426
+ "internalType": "uint16",
427
+ "name": "multiplierBps",
428
+ "type": "uint16"
429
+ },
430
+ {
431
+ "internalType": "uint128",
432
+ "name": "floorMarginUSD",
433
+ "type": "uint128"
434
+ }
435
+ ],
436
+ "stateMutability": "view",
437
+ "type": "function"
438
+ },
439
+ {
440
+ "inputs": [
441
+ {
442
+ "internalType": "address",
443
+ "name": "_target",
444
+ "type": "address"
445
+ },
446
+ {
447
+ "internalType": "bytes",
448
+ "name": "_callData",
449
+ "type": "bytes"
450
+ },
451
+ {
452
+ "internalType": "uint256",
453
+ "name": "_expiration",
454
+ "type": "uint256"
455
+ },
456
+ {
457
+ "internalType": "bytes",
458
+ "name": "_signatures",
459
+ "type": "bytes"
460
+ },
461
+ {
462
+ "internalType": "bool",
463
+ "name": "_tryDeliver",
464
+ "type": "bool"
465
+ }
466
+ ],
467
+ "name": "execute",
468
+ "outputs": [],
469
+ "stateMutability": "nonpayable",
470
+ "type": "function"
471
+ },
472
+ {
473
+ "inputs": [
474
+ {
475
+ "internalType": "uint32",
476
+ "name": "_dstEid",
477
+ "type": "uint32"
478
+ },
479
+ {
480
+ "internalType": "uint64",
481
+ "name": "_confirmations",
482
+ "type": "uint64"
483
+ },
484
+ {
485
+ "internalType": "address",
486
+ "name": "_sender",
487
+ "type": "address"
488
+ },
489
+ {
490
+ "internalType": "bytes",
491
+ "name": "_options",
492
+ "type": "bytes"
493
+ }
494
+ ],
495
+ "name": "getFee",
496
+ "outputs": [
497
+ {
498
+ "internalType": "uint256",
499
+ "name": "fee",
500
+ "type": "uint256"
501
+ }
502
+ ],
503
+ "stateMutability": "view",
504
+ "type": "function"
505
+ },
506
+ {
507
+ "inputs": [
508
+ {
509
+ "internalType": "uint32",
510
+ "name": "_dstEid",
511
+ "type": "uint32"
512
+ }
513
+ ],
514
+ "name": "getPrice",
515
+ "outputs": [
516
+ {
517
+ "internalType": "uint128",
518
+ "name": "",
519
+ "type": "uint128"
520
+ },
521
+ {
522
+ "internalType": "uint64",
523
+ "name": "",
524
+ "type": "uint64"
525
+ }
526
+ ],
527
+ "stateMutability": "view",
528
+ "type": "function"
529
+ },
530
+ {
531
+ "inputs": [
532
+ {
533
+ "internalType": "bytes32",
534
+ "name": "role",
535
+ "type": "bytes32"
536
+ }
537
+ ],
538
+ "name": "getRoleAdmin",
539
+ "outputs": [
540
+ {
541
+ "internalType": "bytes32",
542
+ "name": "",
543
+ "type": "bytes32"
544
+ }
545
+ ],
546
+ "stateMutability": "view",
547
+ "type": "function"
548
+ },
549
+ {
550
+ "inputs": [
551
+ {
552
+ "internalType": "bytes32",
553
+ "name": "role",
554
+ "type": "bytes32"
555
+ },
556
+ {
557
+ "internalType": "address",
558
+ "name": "account",
559
+ "type": "address"
560
+ }
561
+ ],
562
+ "name": "grantRole",
563
+ "outputs": [],
564
+ "stateMutability": "nonpayable",
565
+ "type": "function"
566
+ },
567
+ {
568
+ "inputs": [
569
+ {
570
+ "internalType": "bytes32",
571
+ "name": "role",
572
+ "type": "bytes32"
573
+ },
574
+ {
575
+ "internalType": "address",
576
+ "name": "account",
577
+ "type": "address"
578
+ }
579
+ ],
580
+ "name": "hasRole",
581
+ "outputs": [
582
+ {
583
+ "internalType": "bool",
584
+ "name": "",
585
+ "type": "bool"
586
+ }
587
+ ],
588
+ "stateMutability": "view",
589
+ "type": "function"
590
+ },
591
+ {
592
+ "inputs": [
593
+ {
594
+ "internalType": "address",
595
+ "name": "_target",
596
+ "type": "address"
597
+ },
598
+ {
599
+ "internalType": "bytes",
600
+ "name": "_callData",
601
+ "type": "bytes"
602
+ },
603
+ {
604
+ "internalType": "uint256",
605
+ "name": "_expiration",
606
+ "type": "uint256"
607
+ }
608
+ ],
609
+ "name": "hashCallData",
610
+ "outputs": [
611
+ {
612
+ "internalType": "bytes32",
613
+ "name": "",
614
+ "type": "bytes32"
615
+ }
616
+ ],
617
+ "stateMutability": "pure",
618
+ "type": "function"
619
+ },
620
+ {
621
+ "inputs": [
622
+ {
623
+ "internalType": "address[]",
624
+ "name": "_messageLibs",
625
+ "type": "address[]"
626
+ },
627
+ {
628
+ "internalType": "address",
629
+ "name": "_priceFeed",
630
+ "type": "address"
631
+ },
632
+ {
633
+ "internalType": "address[]",
634
+ "name": "_signers",
635
+ "type": "address[]"
636
+ },
637
+ {
638
+ "internalType": "uint64",
639
+ "name": "_quorum",
640
+ "type": "uint64"
641
+ },
642
+ {
643
+ "internalType": "address[]",
644
+ "name": "_admins",
645
+ "type": "address[]"
646
+ }
647
+ ],
648
+ "name": "initialize",
649
+ "outputs": [],
650
+ "stateMutability": "nonpayable",
651
+ "type": "function"
652
+ },
653
+ {
654
+ "inputs": [],
655
+ "name": "paused",
656
+ "outputs": [
657
+ {
658
+ "internalType": "bool",
659
+ "name": "",
660
+ "type": "bool"
661
+ }
662
+ ],
663
+ "stateMutability": "view",
664
+ "type": "function"
665
+ },
666
+ {
667
+ "inputs": [],
668
+ "name": "priceFeed",
669
+ "outputs": [
670
+ {
671
+ "internalType": "contract ILayerZeroPriceFeed",
672
+ "name": "",
673
+ "type": "address"
674
+ }
675
+ ],
676
+ "stateMutability": "view",
677
+ "type": "function"
678
+ },
679
+ {
680
+ "inputs": [],
681
+ "name": "quorum",
682
+ "outputs": [
683
+ {
684
+ "internalType": "uint64",
685
+ "name": "",
686
+ "type": "uint64"
687
+ }
688
+ ],
689
+ "stateMutability": "view",
690
+ "type": "function"
691
+ },
692
+ {
693
+ "inputs": [
694
+ {
695
+ "internalType": "bytes32",
696
+ "name": "",
697
+ "type": "bytes32"
698
+ },
699
+ {
700
+ "internalType": "address",
701
+ "name": "",
702
+ "type": "address"
703
+ }
704
+ ],
705
+ "name": "renounceRole",
706
+ "outputs": [],
707
+ "stateMutability": "nonpayable",
708
+ "type": "function"
709
+ },
710
+ {
711
+ "inputs": [
712
+ {
713
+ "internalType": "bytes32",
714
+ "name": "role",
715
+ "type": "bytes32"
716
+ },
717
+ {
718
+ "internalType": "address",
719
+ "name": "account",
720
+ "type": "address"
721
+ }
722
+ ],
723
+ "name": "revokeRole",
724
+ "outputs": [],
725
+ "stateMutability": "nonpayable",
726
+ "type": "function"
727
+ },
728
+ {
729
+ "inputs": [
730
+ {
731
+ "internalType": "uint16",
732
+ "name": "_multiplierBps",
733
+ "type": "uint16"
734
+ }
735
+ ],
736
+ "name": "setDefaultMultiplierBps",
737
+ "outputs": [],
738
+ "stateMutability": "nonpayable",
739
+ "type": "function"
740
+ },
741
+ {
742
+ "inputs": [
743
+ {
744
+ "components": [
745
+ {
746
+ "internalType": "uint32",
747
+ "name": "dstEid",
748
+ "type": "uint32"
749
+ },
750
+ {
751
+ "internalType": "uint64",
752
+ "name": "gas",
753
+ "type": "uint64"
754
+ },
755
+ {
756
+ "internalType": "uint16",
757
+ "name": "multiplierBps",
758
+ "type": "uint16"
759
+ },
760
+ {
761
+ "internalType": "uint128",
762
+ "name": "floorMarginUSD",
763
+ "type": "uint128"
764
+ }
765
+ ],
766
+ "internalType": "struct IOracle.DstConfigParam[]",
767
+ "name": "_params",
768
+ "type": "tuple[]"
769
+ }
770
+ ],
771
+ "name": "setDstConfig",
772
+ "outputs": [],
773
+ "stateMutability": "nonpayable",
774
+ "type": "function"
775
+ },
776
+ {
777
+ "inputs": [
778
+ {
779
+ "internalType": "bool",
780
+ "name": "_paused",
781
+ "type": "bool"
782
+ }
783
+ ],
784
+ "name": "setPaused",
785
+ "outputs": [],
786
+ "stateMutability": "nonpayable",
787
+ "type": "function"
788
+ },
789
+ {
790
+ "inputs": [
791
+ {
792
+ "internalType": "address",
793
+ "name": "_priceFeed",
794
+ "type": "address"
795
+ }
796
+ ],
797
+ "name": "setPriceFeed",
798
+ "outputs": [],
799
+ "stateMutability": "nonpayable",
800
+ "type": "function"
801
+ },
802
+ {
803
+ "inputs": [
804
+ {
805
+ "internalType": "uint64",
806
+ "name": "_quorum",
807
+ "type": "uint64"
808
+ }
809
+ ],
810
+ "name": "setQuorum",
811
+ "outputs": [],
812
+ "stateMutability": "nonpayable",
813
+ "type": "function"
814
+ },
815
+ {
816
+ "inputs": [
817
+ {
818
+ "internalType": "address",
819
+ "name": "_signer",
820
+ "type": "address"
821
+ },
822
+ {
823
+ "internalType": "bool",
824
+ "name": "_active",
825
+ "type": "bool"
826
+ }
827
+ ],
828
+ "name": "setSigner",
829
+ "outputs": [],
830
+ "stateMutability": "nonpayable",
831
+ "type": "function"
832
+ },
833
+ {
834
+ "inputs": [
835
+ {
836
+ "internalType": "address",
837
+ "name": "_workerLib",
838
+ "type": "address"
839
+ }
840
+ ],
841
+ "name": "setWorkerLib",
842
+ "outputs": [],
843
+ "stateMutability": "nonpayable",
844
+ "type": "function"
845
+ },
846
+ {
847
+ "inputs": [],
848
+ "name": "signerSize",
849
+ "outputs": [
850
+ {
851
+ "internalType": "uint64",
852
+ "name": "",
853
+ "type": "uint64"
854
+ }
855
+ ],
856
+ "stateMutability": "view",
857
+ "type": "function"
858
+ },
859
+ {
860
+ "inputs": [
861
+ {
862
+ "internalType": "address",
863
+ "name": "signer",
864
+ "type": "address"
865
+ }
866
+ ],
867
+ "name": "signers",
868
+ "outputs": [
869
+ {
870
+ "internalType": "bool",
871
+ "name": "active",
872
+ "type": "bool"
873
+ }
874
+ ],
875
+ "stateMutability": "view",
876
+ "type": "function"
877
+ },
878
+ {
879
+ "inputs": [
880
+ {
881
+ "internalType": "bytes4",
882
+ "name": "interfaceId",
883
+ "type": "bytes4"
884
+ }
885
+ ],
886
+ "name": "supportsInterface",
887
+ "outputs": [
888
+ {
889
+ "internalType": "bool",
890
+ "name": "",
891
+ "type": "bool"
892
+ }
893
+ ],
894
+ "stateMutability": "view",
895
+ "type": "function"
896
+ },
897
+ {
898
+ "inputs": [
899
+ {
900
+ "internalType": "bytes32",
901
+ "name": "executableHash",
902
+ "type": "bytes32"
903
+ }
904
+ ],
905
+ "name": "usedHashes",
906
+ "outputs": [
907
+ {
908
+ "internalType": "bool",
909
+ "name": "used",
910
+ "type": "bool"
911
+ }
912
+ ],
913
+ "stateMutability": "view",
914
+ "type": "function"
915
+ },
916
+ {
917
+ "inputs": [
918
+ {
919
+ "internalType": "bytes32",
920
+ "name": "_hash",
921
+ "type": "bytes32"
922
+ },
923
+ {
924
+ "internalType": "bytes",
925
+ "name": "_signatures",
926
+ "type": "bytes"
927
+ }
928
+ ],
929
+ "name": "verifySignatures",
930
+ "outputs": [],
931
+ "stateMutability": "view",
932
+ "type": "function"
933
+ },
934
+ {
935
+ "inputs": [
936
+ {
937
+ "internalType": "address",
938
+ "name": "_lib",
939
+ "type": "address"
940
+ },
941
+ {
942
+ "internalType": "address payable",
943
+ "name": "_to",
944
+ "type": "address"
945
+ },
946
+ {
947
+ "internalType": "uint256",
948
+ "name": "_amount",
949
+ "type": "uint256"
950
+ }
951
+ ],
952
+ "name": "withdrawFee",
953
+ "outputs": [],
954
+ "stateMutability": "nonpayable",
955
+ "type": "function"
956
+ },
957
+ {
958
+ "inputs": [],
959
+ "name": "workerLib",
960
+ "outputs": [
961
+ {
962
+ "internalType": "address",
963
+ "name": "",
964
+ "type": "address"
965
+ }
966
+ ],
967
+ "stateMutability": "view",
968
+ "type": "function"
969
+ }
970
+ ],
971
+ "transactionHash": "0x0612aeacbbd11438501dcef1d1bc46d5ea8776e462b5978da448b677b81a2887",
972
+ "receipt": {
973
+ "to": null,
974
+ "from": "0xBcd4042DE499D14e55001CcbB24a551F3b954096",
975
+ "contractAddress": "0x10Aeafac83d48E2f9ac4bAAf94311c45fACe1404",
976
+ "transactionIndex": 0,
977
+ "gasUsed": "3515723",
978
+ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
979
+ "blockHash": "0x41710d5001b13f0b2f071cbeb8c78c9ba6b97ed16a165d67d8893a0e7c426fca",
980
+ "transactionHash": "0x0612aeacbbd11438501dcef1d1bc46d5ea8776e462b5978da448b677b81a2887",
981
+ "logs": [],
982
+ "blockNumber": 228,
983
+ "cumulativeGasUsed": "3515723",
984
+ "status": 1,
985
+ "byzantium": true
986
+ },
987
+ "args": [],
988
+ "numDeployments": 1,
989
+ "solcInputHash": "12821035dc6b52fddd2b30f510462795",
990
+ "bytecode": "0x608060405234801561001057600080fd5b50613eef806100206000396000f3fe60806040526004361061024e5760003560e01c806375b238fc11610138578063aef18bf7116100b0578063d547741f1161007f578063e4fbd90311610064578063e4fbd903146108b4578063f3ad31f4146108c7578063fd62e750146108e757600080fd5b8063d547741f14610843578063da26663a1461086357600080fd5b8063aef18bf71461079a578063c358de0a146107ca578063c7a823e0146107ea578063d2ae21041461080a57600080fd5b806391d14854116101075780639f32e2a3116100ec5780639f32e2a314610731578063a217fddf14610751578063a98586e11461076657600080fd5b806391d14854146106395780639e9449651461068c57600080fd5b806375b238fc14610598578063770f015f146105cc578063834dfdce146105f95780638585c9451461061957600080fd5b806330bb3aac116101cb578063545f8c6b1161019a578063724e78da1161017f578063724e78da146104f6578063736c0d5b14610516578063741bef1a1461054657600080fd5b8063545f8c6b146104a45780635c975abb146104c457600080fd5b806330bb3aac1461042457806331cb61051461044457806336568abe1461046457806352d3b8711461048457600080fd5b806316c38b3c116102225780631f3a6f04116102075780631f3a6f04146103a0578063248a9ca3146103d45780632f2ff15d1461040457600080fd5b806316c38b3c1461033a5780631703a0181461035a57600080fd5b8062bf2e801461025357806301ffc9a7146102a6578063036c0a2c146102d65780631095b6d714610318575b600080fd5b34801561025f57600080fd5b5060975461028e907c0100000000000000000000000000000000000000000000000000000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b3480156102b257600080fd5b506102c66102c1366004613077565b610908565b604051901515815260200161029d565b3480156102e257600080fd5b5061030a7f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481565b60405190815260200161029d565b34801561032457600080fd5b506103386103333660046130db565b6109a1565b005b34801561034657600080fd5b5061033861035536600461312a565b610b4b565b34801561036657600080fd5b5060cb546103879068010000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff909116815260200161029d565b3480156103ac57600080fd5b5061030a7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca81565b3480156103e057600080fd5b5061030a6103ef366004613147565b60009081526065602052604090206001015490565b34801561041057600080fd5b5061033861041f366004613160565b610ba1565b34801561043057600080fd5b5061030a61043f366004613211565b610cb1565b34801561045057600080fd5b5061033861045f36600461328d565b610fa8565b34801561047057600080fd5b5061033861047f366004613160565b611005565b34801561049057600080fd5b5061033861049f3660046133b6565b61104d565b3480156104b057600080fd5b506103386104bf366004613517565b6111d3565b3480156104d057600080fd5b506098546102c69074010000000000000000000000000000000000000000900460ff1681565b34801561050257600080fd5b506103386105113660046135c9565b611408565b34801561052257600080fd5b506102c66105313660046135c9565b60ca6020526000908152604090205460ff1681565b34801561055257600080fd5b506098546105739073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161029d565b3480156105a457600080fd5b5061030a7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b3480156105d857600080fd5b506097546105739073ffffffffffffffffffffffffffffffffffffffff1681565b34801561060557600080fd5b506103386106143660046135e6565b6114a5565b34801561062557600080fd5b50610338610634366004613686565b611956565b34801561064557600080fd5b506102c6610654366004613160565b600091825260656020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561069857600080fd5b506106f66106a73660046136a3565b60fd6020526000908152604090205467ffffffffffffffff81169068010000000000000000810461ffff16906a010000000000000000000090046fffffffffffffffffffffffffffffffff1683565b6040805167ffffffffffffffff909416845261ffff90921660208401526fffffffffffffffffffffffffffffffff169082015260600161029d565b34801561073d57600080fd5b5061033861074c3660046135c9565b6119b1565b34801561075d57600080fd5b5061030a600081565b34801561077257600080fd5b5061030a7f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81565b3480156107a657600080fd5b506102c66107b5366004613147565b60fe6020526000908152604090205460ff1681565b3480156107d657600080fd5b506103386107e53660046136c0565b611a57565b3480156107f657600080fd5b506103386108053660046136db565b611b04565b34801561081657600080fd5b506097546103879074010000000000000000000000000000000000000000900467ffffffffffffffff1681565b34801561084f57600080fd5b5061033861085e366004613160565b611e0c565b34801561086f57600080fd5b5061088361087e3660046136a3565b611f17565b604080516fffffffffffffffffffffffffffffffff909316835267ffffffffffffffff90911660208301520161029d565b61030a6108c2366004613211565b611fc7565b3480156108d357600080fd5b5061030a6108e2366004613727565b612079565b3480156108f357600080fd5b5060cb546103879067ffffffffffffffff1681565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061099b57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756109cb816120b2565b73ffffffffffffffffffffffffffffffffffffffff841660009081527fe3a3b2721d010eec8988605a93cd7c15d969808c0e2b42f6155dc2b4fa13c081602052604090205460ff16610a645760405162461bcd60e51b815260206004820152601b60248201527f576f726b65723a20496e76616c6964206d657373616765206c6962000000000060448201526064015b60405180910390fd5b6040517ffd9be52200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526024820184905285169063fd9be52290604401600060405180830381600087803b158015610ad457600080fd5b505af1158015610ae8573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8089168252871660208201529081018590527f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9250606001905060405180910390a150505050565b6000610b56816120b2565b506098805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480610bef57507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80610c1957507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15610c7257303314610c6d5760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b610ca2565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103610ca257610ca2816120b2565b610cac83836120bc565b505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081527f0f6a9529577ef7bf1cbc8fccda1cc3c881f755c7e92e34c7c4deac1fa3c1c7916020526040812054849060ff1615610d485760405162461bcd60e51b815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610a5b565b60975474010000000000000000000000000000000000000000900467ffffffffffffffff161580610dbd575073ffffffffffffffffffffffffffffffffffffffff811660009081527f35c5067391a9036240763c1067bfa438a7b0131204a675a2fe562dd73782ce85602052604090205460ff165b15610f565760985474010000000000000000000000000000000000000000900460ff1615610e2d5760405162461bcd60e51b815260206004820152600e60248201527f576f726b65723a207061757365640000000000000000000000000000000000006044820152606401610a5b565b6040805160c08101825260985473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8a16602080840182905267ffffffffffffffff808c16858701528a8416606086015260cb5468010000000000000000900416608085015260975461ffff7c010000000000000000000000000000000000000000000000000000000082041660a0860152600092835260fd9091529084902093517f7bfa20a90000000000000000000000000000000000000000000000000000000081529293911691637bfa20a991610f0d918591908a908a906004016137cc565b602060405180830381865afa158015610f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4e9190613890565b925050610f9e565b60405162461bcd60e51b815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610a5b565b5095945050505050565b303314610ff75760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b6110018282612184565b5050565b60405162461bcd60e51b815260206004820152601c60248201527f576f726b65723a2063616e6e6f742072656e6f756e636520726f6c65000000006044820152606401610a5b565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611077816120b2565b60005b8251811015611197576000838281518110611097576110976138a9565b60209081029190910181015160408051606080820183528385015167ffffffffffffffff90811683528385015161ffff908116848801908152928601516fffffffffffffffffffffffffffffffff908116858701908152965163ffffffff16600090815260fd9098529490962092518354925195519094166a0100000000000000000000027fffffffffffff00000000000000000000000000000000ffffffffffffffffffff9590961668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff000000000000000000009092169316929092179190911791909116919091179055508061118f81613907565b91505061107a565b507f7dd21e42791b013d1929e86f0c59085e4fca24251f0f1aa81917b3b1611766e0826040516111c7919061393f565b60405180910390a15050565b60006111fd7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166112565773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355611278565b3373ffffffffffffffffffffffffffffffffffffffff82161461127857600080fd5b600054610100900460ff16158080156112985750600054600160ff909116105b806112b25750303b1580156112b2575060005460ff166001145b6113245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a5b565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561138257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6113928787612ee06000876123ba565b61139c858561244b565b80156113ff57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611432816120b2565b609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527ff724a45d041687842411f2b977ef22ab8f43c8f1104f4592b42a00f9b34a643d906020016111c7565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756114cf816120b2565b73ffffffffffffffffffffffffffffffffffffffff881660009081527fe3a3b2721d010eec8988605a93cd7c15d969808c0e2b42f6155dc2b4fa13c081602052604090205460ff1680611537575073ffffffffffffffffffffffffffffffffffffffff881630145b6115a95760405162461bcd60e51b815260206004820152602960248201527f4f7261636c653a20746172676574206d757374206265206d6573736167656c6960448201527f62206f722073656c6600000000000000000000000000000000000000000000006064820152608401610a5b565b4285116115f85760405162461bcd60e51b815260206004820152601960248201527f4f7261636c653a2063616c6c20646174612065787069726564000000000000006044820152606401610a5b565b600061160689898989612079565b600081815260fe602052604090205490915060ff161561168e5760405162461bcd60e51b815260206004820152602260248201527f4f7261636c653a2063616c6c206461746120616c72656164792065786563757460448201527f65640000000000000000000000000000000000000000000000000000000000006064820152608401610a5b565b600081815260fe6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556116d0818686611b04565b6000808a73ffffffffffffffffffffffffffffffffffffffff168a8a6040516116fa9291906139c9565b6000604051808303816000865af19150503d8060008114611737576040519150601f19603f3d011682016040523d82523d6000602084013e61173c565b606091505b50915091507f293e3a2153dc5c8d3667cbd6ede71a71674b2381e5dc4b40c91ad0e813447c0f8b8484846040516117769493929190613a47565b60405180910390a18480156117885750815b80156117de57507f7e09a8d6000000000000000000000000000000000000000000000000000000006117ba8a8c613a8e565b7fffffffff0000000000000000000000000000000000000000000000000000000016145b156119495760008b90506000808c8c60049080926117fe93929190613ad6565b81019061180b9190613b00565b50909250905060016040517f7c0cf76300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851690637c0cf763906118679086908690600401613bfc565b602060405180830381865afa158015611884573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a89190613c1e565b60038111156118b9576118b9613bcd565b03611945576040517f5ed31c5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff841690635ed31c59906119129085908590600401613bfc565b600060405180830381600087803b15801561192c57600080fd5b505af1158015611940573d6000803e3d6000fd5b505050505b5050505b5050505050505050505050565b3033146119a55760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b6119ae816124d2565b50565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756119db816120b2565b6119e4826125c3565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f1399be28223800f8669b3ba5f8721d9fc16fc4e8d0bbf98378791c8c5a3015e0906020016111c7565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611a81816120b2565b609780547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff8516908102919091179091556040519081527f7af0ac740036ffb1c97b03697859d729e80a44ae5030543d64971c313565ab4d906020016111c7565b60cb54611b289068010000000000000000900467ffffffffffffffff166041613c3f565b811015611b775760405162461bcd60e51b815260206004820152601e60248201527f4d756c74695369673a207369676e61747572657320746f6f2073686f727400006044820152606401610a5b565b6000611bd0846040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90506000805b60cb5468010000000000000000900467ffffffffffffffff16811015611e04576000806000611c3c88888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892506126e3915050565b925092509250600060018785858560405160008152602001604052604051611c80949392919093845260ff9290921660208401526040830152606082015260800190565b6020604051602081039080840390855afa158015611ca2573d6000803e3d6000fd5b5050506020604051035190508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611d4f5760405162461bcd60e51b815260206004820152602f60248201527f4d756c74695369673a207369676e617475726573206d75737420626520696e2060448201527f617363656e64696e67206f7264657200000000000000000000000000000000006064820152608401610a5b565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260ca602052604090205460ff16611dea5760405162461bcd60e51b815260206004820152602860248201527f4d756c74695369673a207369676e6174757265206973206e6f742066726f6d2060448201527f61207369676e65720000000000000000000000000000000000000000000000006064820152608401610a5b565b809550505050508080611dfc90613907565b915050611bd6565b505050505050565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480611e5a57507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80611e8457507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15611edd57303314611ed85760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b611f0d565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103611f0d57611f0d816120b2565b610cac8383612701565b6098546040517fda26663a00000000000000000000000000000000000000000000000000000000815263ffffffff831660048201526000918291829173ffffffffffffffffffffffffffffffffffffffff169063da26663a90602401606060405180830381865afa158015611f90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fb49190613c56565b8051602090910151909590945092505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de611ff3816120b2565b6120008787878787610cb1565b6040805163ffffffff8a16815273ffffffffffffffffffffffffffffffffffffffff8816602082015267ffffffffffffffff8916818301526060810183905290519193507f2fc4e514b16a8f0f9f15009b848663b25939a33de41fa2b98a534b3ac4d5a572919081900360800190a15095945050505050565b6000848285856040516020016120929493929190613cc8565b604051602081830303815290604052805190602001209050949350505050565b6119ae81336127c8565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca8214801561211b5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b1561217a576097805474010000000000000000000000000000000000000000900467ffffffffffffffff1690601461215283613d0e565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b6110018282612868565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260ca602052604090205481151560ff9091161515036122275760405162461bcd60e51b815260206004820152602660248201527f4d756c74695369673a207369676e657220616c726561647920696e207468617460448201527f20737461746500000000000000000000000000000000000000000000000000006064820152608401610a5b565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260ca6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016821515179055806122995760cb546122949060019067ffffffffffffffff16613d35565b6122b1565b60cb546122b19067ffffffffffffffff166001613d5d565b60cb80547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff9283169081179182905568010000000000000000909104909116111561236d5760405162461bcd60e51b8152602060048201526024808201527f4d756c74695369673a20636f6d6d69747465652073697a65203c20746872657360448201527f686f6c64000000000000000000000000000000000000000000000000000000006064820152608401610a5b565b6040805173ffffffffffffffffffffffffffffffffffffffff8416815282151560208201527f863d338cad74814b108a06288ad5e0e80d56495e0332238b1d2cdcfa0ca8e5ce91016111c7565b600054610100900460ff166124375760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b612444858585858561295c565b5050505050565b600054610100900460ff166124c85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b6110018282612b27565b60cb5467ffffffffffffffff908116908216118015906124fc575060008167ffffffffffffffff16115b6125485760405162461bcd60e51b815260206004820152601860248201527f4d756c74695369673a20696e76616c69642071756f72756d00000000000000006044820152606401610a5b565b60cb80547fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000067ffffffffffffffff8416908102919091179091556040519081527fb600f3cf7f38a4b49bb0c75f722ef69f7e3e39ef3bb4aa8207fd86e724a232499060200160405180910390a150565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527f7bfa20a900000000000000000000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff8216906301ffc9a790602401602060405180830381865afa15801561264d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126719190613d7e565b6119ae5760405162461bcd60e51b815260206004820152602f60248201527f4f7261636c653a20776f726b657220646f6573206e6f7420696d706c656d656e60448201527f7420494f7261636c654665654c696200000000000000000000000000000000006064820152608401610a5b565b60419081029190910160208101516040820151919092015160ff1692565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca8214801561275f5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff165b156127be576097805474010000000000000000000000000000000000000000900467ffffffffffffffff1690601461279683613d9b565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b6110018282612d6d565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff166110015761280881612e28565b612813836020612e47565b604051602001612824929190613ddd565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262461bcd60e51b8252610a5b91600401613e5e565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661100157600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556128fe3390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600054610100900460ff166129d95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b609780547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff861602179055609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8616179055612a716000836120bc565b60005b8551811015612ad257612ac07f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de878381518110612ab357612ab36138a9565b60200260200101516120bc565b80612aca81613907565b915050612a74565b5060005b8151811015611e0457612b157fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775838381518110612ab357612ab36138a9565b80612b1f81613907565b915050612ad6565b600054610100900460ff16612ba45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b8067ffffffffffffffff16825110158015612bc9575060008167ffffffffffffffff16115b612c155760405162461bcd60e51b815260206004820152601960248201527f4d756c74695369673a207369676e65727320746f6f20666577000000000000006044820152606401610a5b565b6000805b8351811015612d1d576000848281518110612c3657612c366138a9565b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611612cbb5760405162461bcd60e51b815260206004820152601c60248201527f4d756c74695369673a207369676e657273206e6f7420736f72746564000000006044820152606401610a5b565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260ca6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055915080612d1581613907565b915050612c19565b5050905160cb805467ffffffffffffffff93841668010000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091169390921692909217179055565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561100157600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b606061099b73ffffffffffffffffffffffffffffffffffffffff831660145b60606000612e56836002613c3f565b612e61906002613e71565b67ffffffffffffffff811115612e7957612e796132bb565b6040519080825280601f01601f191660200182016040528015612ea3576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110612eda57612eda6138a9565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110612f3d57612f3d6138a9565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000612f79846002613c3f565b612f84906001613e71565b90505b6001811115613021577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110612fc557612fc56138a9565b1a60f81b828281518110612fdb57612fdb6138a9565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c9361301a81613e84565b9050612f87565b5083156130705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a5b565b9392505050565b60006020828403121561308957600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461307057600080fd5b73ffffffffffffffffffffffffffffffffffffffff811681146119ae57600080fd5b6000806000606084860312156130f057600080fd5b83356130fb816130b9565b9250602084013561310b816130b9565b929592945050506040919091013590565b80151581146119ae57600080fd5b60006020828403121561313c57600080fd5b81356130708161311c565b60006020828403121561315957600080fd5b5035919050565b6000806040838503121561317357600080fd5b823591506020830135613185816130b9565b809150509250929050565b63ffffffff811681146119ae57600080fd5b67ffffffffffffffff811681146119ae57600080fd5b80356131c3816131a2565b919050565b60008083601f8401126131da57600080fd5b50813567ffffffffffffffff8111156131f257600080fd5b60208301915083602082850101111561320a57600080fd5b9250929050565b60008060008060006080868803121561322957600080fd5b853561323481613190565b94506020860135613244816131a2565b93506040860135613254816130b9565b9250606086013567ffffffffffffffff81111561327057600080fd5b61327c888289016131c8565b969995985093965092949392505050565b600080604083850312156132a057600080fd5b82356132ab816130b9565b915060208301356131858161311c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516080810167ffffffffffffffff8111828210171561330d5761330d6132bb565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561335a5761335a6132bb565b604052919050565b600067ffffffffffffffff82111561337c5761337c6132bb565b5060051b60200190565b803561ffff811681146131c357600080fd5b6fffffffffffffffffffffffffffffffff811681146119ae57600080fd5b600060208083850312156133c957600080fd5b823567ffffffffffffffff8111156133e057600080fd5b8301601f810185136133f157600080fd5b80356134046133ff82613362565b613313565b81815260079190911b8201830190838101908783111561342357600080fd5b928401925b8284101561349d57608084890312156134415760008081fd5b6134496132ea565b843561345481613190565b815284860135613463816131a2565b818701526040613474868201613386565b9082015260608581013561348781613398565b9082015282526080939093019290840190613428565b979650505050505050565b600082601f8301126134b957600080fd5b813560206134c96133ff83613362565b82815260059290921b840181019181810190868411156134e857600080fd5b8286015b8481101561350c5780356134ff816130b9565b83529183019183016134ec565b509695505050505050565b600080600080600060a0868803121561352f57600080fd5b853567ffffffffffffffff8082111561354757600080fd5b61355389838a016134a8565b965060208801359150613565826130b9565b9094506040870135908082111561357b57600080fd5b61358789838a016134a8565b945060608801359150613599826131a2565b909250608087013590808211156135af57600080fd5b506135bc888289016134a8565b9150509295509295909350565b6000602082840312156135db57600080fd5b8135613070816130b9565b600080600080600080600060a0888a03121561360157600080fd5b873561360c816130b9565b9650602088013567ffffffffffffffff8082111561362957600080fd5b6136358b838c016131c8565b909850965060408a0135955060608a013591508082111561365557600080fd5b506136628a828b016131c8565b90945092505060808801356136768161311c565b8091505092959891949750929550565b60006020828403121561369857600080fd5b8135613070816131a2565b6000602082840312156136b557600080fd5b813561307081613190565b6000602082840312156136d257600080fd5b61307082613386565b6000806000604084860312156136f057600080fd5b83359250602084013567ffffffffffffffff81111561370e57600080fd5b61371a868287016131c8565b9497909650939450505050565b6000806000806060858703121561373d57600080fd5b8435613748816130b9565b9350602085013567ffffffffffffffff81111561376457600080fd5b613770878288016131c8565b9598909750949560400135949350505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b600061014073ffffffffffffffffffffffffffffffffffffffff80885116845263ffffffff6020890151166020850152604088015167ffffffffffffffff80821660408701528260608b01511660608701528060808b015116608087015250505061ffff60a08801511660a084015261387c60c08401875467ffffffffffffffff81168252604081811c61ffff16602084015260509190911c6fffffffffffffffffffffffffffffffff16910152565b8061012084015261349d8184018587613783565b6000602082840312156138a257600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613938576139386138d8565b5060010190565b602080825282518282018190526000919060409081850190868401855b828110156139bc578151805163ffffffff1685528681015167ffffffffffffffff16878601528581015161ffff16868601526060908101516fffffffffffffffffffffffffffffffff16908501526080909301929085019060010161395c565b5091979650505050505050565b8183823760009101908152919050565b60005b838110156139f45781810151838201526020016139dc565b50506000910152565b60008151808452613a158160208601602086016139d9565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b73ffffffffffffffffffffffffffffffffffffffff851681528360208201528215156040820152608060608201526000613a8460808301846139fd565b9695505050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015613ace5780818660040360031b1b83161692505b505092915050565b60008085851115613ae657600080fd5b83861115613af357600080fd5b5050820193919092039150565b600080600060608486031215613b1557600080fd5b833567ffffffffffffffff80821115613b2d57600080fd5b818601915086601f830112613b4157600080fd5b8135602082821115613b5557613b556132bb565b613b85817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f85011601613313565b92508183528881838601011115613b9b57600080fd5b8181850182850137600081838501015282965080880135955050505050613bc4604085016131b8565b90509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613c0f60408301856139fd565b90508260208301529392505050565b600060208284031215613c3057600080fd5b81516004811061307057600080fd5b808202811582820484141761099b5761099b6138d8565b600060608284031215613c6857600080fd5b6040516060810181811067ffffffffffffffff82111715613c8b57613c8b6132bb565b6040528251613c9981613398565b81526020830151613ca9816131a2565b60208201526040830151613cbc81613190565b60408201529392505050565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008560601b16815283601482015281836034830137600091016034019081529392505050565b600067ffffffffffffffff808316818103613d2b57613d2b6138d8565b6001019392505050565b67ffffffffffffffff828116828216039080821115613d5657613d566138d8565b5092915050565b67ffffffffffffffff818116838216019080821115613d5657613d566138d8565b600060208284031215613d9057600080fd5b81516130708161311c565b600067ffffffffffffffff821680613db557613db56138d8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351613e158160178501602088016139d9565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351613e528160288401602088016139d9565b01602801949350505050565b60208152600061307060208301846139fd565b8082018082111561099b5761099b6138d8565b600081613e9357613e936138d8565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea264697066735822122084eecb57bb92f6d0d5fc98179a7bf67417ee13d33bec8427657c6f79e3f8a2ea64736f6c63430008120033",
991
+ "deployedBytecode": "0x60806040526004361061024e5760003560e01c806375b238fc11610138578063aef18bf7116100b0578063d547741f1161007f578063e4fbd90311610064578063e4fbd903146108b4578063f3ad31f4146108c7578063fd62e750146108e757600080fd5b8063d547741f14610843578063da26663a1461086357600080fd5b8063aef18bf71461079a578063c358de0a146107ca578063c7a823e0146107ea578063d2ae21041461080a57600080fd5b806391d14854116101075780639f32e2a3116100ec5780639f32e2a314610731578063a217fddf14610751578063a98586e11461076657600080fd5b806391d14854146106395780639e9449651461068c57600080fd5b806375b238fc14610598578063770f015f146105cc578063834dfdce146105f95780638585c9451461061957600080fd5b806330bb3aac116101cb578063545f8c6b1161019a578063724e78da1161017f578063724e78da146104f6578063736c0d5b14610516578063741bef1a1461054657600080fd5b8063545f8c6b146104a45780635c975abb146104c457600080fd5b806330bb3aac1461042457806331cb61051461044457806336568abe1461046457806352d3b8711461048457600080fd5b806316c38b3c116102225780631f3a6f04116102075780631f3a6f04146103a0578063248a9ca3146103d45780632f2ff15d1461040457600080fd5b806316c38b3c1461033a5780631703a0181461035a57600080fd5b8062bf2e801461025357806301ffc9a7146102a6578063036c0a2c146102d65780631095b6d714610318575b600080fd5b34801561025f57600080fd5b5060975461028e907c0100000000000000000000000000000000000000000000000000000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b3480156102b257600080fd5b506102c66102c1366004613077565b610908565b604051901515815260200161029d565b3480156102e257600080fd5b5061030a7f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481565b60405190815260200161029d565b34801561032457600080fd5b506103386103333660046130db565b6109a1565b005b34801561034657600080fd5b5061033861035536600461312a565b610b4b565b34801561036657600080fd5b5060cb546103879068010000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff909116815260200161029d565b3480156103ac57600080fd5b5061030a7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca81565b3480156103e057600080fd5b5061030a6103ef366004613147565b60009081526065602052604090206001015490565b34801561041057600080fd5b5061033861041f366004613160565b610ba1565b34801561043057600080fd5b5061030a61043f366004613211565b610cb1565b34801561045057600080fd5b5061033861045f36600461328d565b610fa8565b34801561047057600080fd5b5061033861047f366004613160565b611005565b34801561049057600080fd5b5061033861049f3660046133b6565b61104d565b3480156104b057600080fd5b506103386104bf366004613517565b6111d3565b3480156104d057600080fd5b506098546102c69074010000000000000000000000000000000000000000900460ff1681565b34801561050257600080fd5b506103386105113660046135c9565b611408565b34801561052257600080fd5b506102c66105313660046135c9565b60ca6020526000908152604090205460ff1681565b34801561055257600080fd5b506098546105739073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200161029d565b3480156105a457600080fd5b5061030a7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177581565b3480156105d857600080fd5b506097546105739073ffffffffffffffffffffffffffffffffffffffff1681565b34801561060557600080fd5b506103386106143660046135e6565b6114a5565b34801561062557600080fd5b50610338610634366004613686565b611956565b34801561064557600080fd5b506102c6610654366004613160565b600091825260656020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561069857600080fd5b506106f66106a73660046136a3565b60fd6020526000908152604090205467ffffffffffffffff81169068010000000000000000810461ffff16906a010000000000000000000090046fffffffffffffffffffffffffffffffff1683565b6040805167ffffffffffffffff909416845261ffff90921660208401526fffffffffffffffffffffffffffffffff169082015260600161029d565b34801561073d57600080fd5b5061033861074c3660046135c9565b6119b1565b34801561075d57600080fd5b5061030a600081565b34801561077257600080fd5b5061030a7f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81565b3480156107a657600080fd5b506102c66107b5366004613147565b60fe6020526000908152604090205460ff1681565b3480156107d657600080fd5b506103386107e53660046136c0565b611a57565b3480156107f657600080fd5b506103386108053660046136db565b611b04565b34801561081657600080fd5b506097546103879074010000000000000000000000000000000000000000900467ffffffffffffffff1681565b34801561084f57600080fd5b5061033861085e366004613160565b611e0c565b34801561086f57600080fd5b5061088361087e3660046136a3565b611f17565b604080516fffffffffffffffffffffffffffffffff909316835267ffffffffffffffff90911660208301520161029d565b61030a6108c2366004613211565b611fc7565b3480156108d357600080fd5b5061030a6108e2366004613727565b612079565b3480156108f357600080fd5b5060cb546103879067ffffffffffffffff1681565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b00000000000000000000000000000000000000000000000000000000148061099b57507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756109cb816120b2565b73ffffffffffffffffffffffffffffffffffffffff841660009081527fe3a3b2721d010eec8988605a93cd7c15d969808c0e2b42f6155dc2b4fa13c081602052604090205460ff16610a645760405162461bcd60e51b815260206004820152601b60248201527f576f726b65723a20496e76616c6964206d657373616765206c6962000000000060448201526064015b60405180910390fd5b6040517ffd9be52200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526024820184905285169063fd9be52290604401600060405180830381600087803b158015610ad457600080fd5b505af1158015610ae8573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8089168252871660208201529081018590527f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9250606001905060405180910390a150505050565b6000610b56816120b2565b506098805491151574010000000000000000000000000000000000000000027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480610bef57507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80610c1957507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15610c7257303314610c6d5760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b610ca2565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103610ca257610ca2816120b2565b610cac83836120bc565b505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081527f0f6a9529577ef7bf1cbc8fccda1cc3c881f755c7e92e34c7c4deac1fa3c1c7916020526040812054849060ff1615610d485760405162461bcd60e51b815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610a5b565b60975474010000000000000000000000000000000000000000900467ffffffffffffffff161580610dbd575073ffffffffffffffffffffffffffffffffffffffff811660009081527f35c5067391a9036240763c1067bfa438a7b0131204a675a2fe562dd73782ce85602052604090205460ff165b15610f565760985474010000000000000000000000000000000000000000900460ff1615610e2d5760405162461bcd60e51b815260206004820152600e60248201527f576f726b65723a207061757365640000000000000000000000000000000000006044820152606401610a5b565b6040805160c08101825260985473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8a16602080840182905267ffffffffffffffff808c16858701528a8416606086015260cb5468010000000000000000900416608085015260975461ffff7c010000000000000000000000000000000000000000000000000000000082041660a0860152600092835260fd9091529084902093517f7bfa20a90000000000000000000000000000000000000000000000000000000081529293911691637bfa20a991610f0d918591908a908a906004016137cc565b602060405180830381865afa158015610f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4e9190613890565b925050610f9e565b60405162461bcd60e51b815260206004820152601360248201527f576f726b65723a206e6f7420616c6c6f776564000000000000000000000000006044820152606401610a5b565b5095945050505050565b303314610ff75760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b6110018282612184565b5050565b60405162461bcd60e51b815260206004820152601c60248201527f576f726b65723a2063616e6e6f742072656e6f756e636520726f6c65000000006044820152606401610a5b565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611077816120b2565b60005b8251811015611197576000838281518110611097576110976138a9565b60209081029190910181015160408051606080820183528385015167ffffffffffffffff90811683528385015161ffff908116848801908152928601516fffffffffffffffffffffffffffffffff908116858701908152965163ffffffff16600090815260fd9098529490962092518354925195519094166a0100000000000000000000027fffffffffffff00000000000000000000000000000000ffffffffffffffffffff9590961668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff000000000000000000009092169316929092179190911791909116919091179055508061118f81613907565b91505061107a565b507f7dd21e42791b013d1929e86f0c59085e4fca24251f0f1aa81917b3b1611766e0826040516111c7919061393f565b60405180910390a15050565b60006111fd7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166112565773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355611278565b3373ffffffffffffffffffffffffffffffffffffffff82161461127857600080fd5b600054610100900460ff16158080156112985750600054600160ff909116105b806112b25750303b1580156112b2575060005460ff166001145b6113245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a65640000000000000000000000000000000000006064820152608401610a5b565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561138257600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6113928787612ee06000876123ba565b61139c858561244b565b80156113ff57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611432816120b2565b609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527ff724a45d041687842411f2b977ef22ab8f43c8f1104f4592b42a00f9b34a643d906020016111c7565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756114cf816120b2565b73ffffffffffffffffffffffffffffffffffffffff881660009081527fe3a3b2721d010eec8988605a93cd7c15d969808c0e2b42f6155dc2b4fa13c081602052604090205460ff1680611537575073ffffffffffffffffffffffffffffffffffffffff881630145b6115a95760405162461bcd60e51b815260206004820152602960248201527f4f7261636c653a20746172676574206d757374206265206d6573736167656c6960448201527f62206f722073656c6600000000000000000000000000000000000000000000006064820152608401610a5b565b4285116115f85760405162461bcd60e51b815260206004820152601960248201527f4f7261636c653a2063616c6c20646174612065787069726564000000000000006044820152606401610a5b565b600061160689898989612079565b600081815260fe602052604090205490915060ff161561168e5760405162461bcd60e51b815260206004820152602260248201527f4f7261636c653a2063616c6c206461746120616c72656164792065786563757460448201527f65640000000000000000000000000000000000000000000000000000000000006064820152608401610a5b565b600081815260fe6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556116d0818686611b04565b6000808a73ffffffffffffffffffffffffffffffffffffffff168a8a6040516116fa9291906139c9565b6000604051808303816000865af19150503d8060008114611737576040519150601f19603f3d011682016040523d82523d6000602084013e61173c565b606091505b50915091507f293e3a2153dc5c8d3667cbd6ede71a71674b2381e5dc4b40c91ad0e813447c0f8b8484846040516117769493929190613a47565b60405180910390a18480156117885750815b80156117de57507f7e09a8d6000000000000000000000000000000000000000000000000000000006117ba8a8c613a8e565b7fffffffff0000000000000000000000000000000000000000000000000000000016145b156119495760008b90506000808c8c60049080926117fe93929190613ad6565b81019061180b9190613b00565b50909250905060016040517f7c0cf76300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff851690637c0cf763906118679086908690600401613bfc565b602060405180830381865afa158015611884573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a89190613c1e565b60038111156118b9576118b9613bcd565b03611945576040517f5ed31c5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff841690635ed31c59906119129085908590600401613bfc565b600060405180830381600087803b15801561192c57600080fd5b505af1158015611940573d6000803e3d6000fd5b505050505b5050505b5050505050505050505050565b3033146119a55760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b6119ae816124d2565b50565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756119db816120b2565b6119e4826125c3565b609780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f1399be28223800f8669b3ba5f8721d9fc16fc4e8d0bbf98378791c8c5a3015e0906020016111c7565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611a81816120b2565b609780547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff8516908102919091179091556040519081527f7af0ac740036ffb1c97b03697859d729e80a44ae5030543d64971c313565ab4d906020016111c7565b60cb54611b289068010000000000000000900467ffffffffffffffff166041613c3f565b811015611b775760405162461bcd60e51b815260206004820152601e60248201527f4d756c74695369673a207369676e61747572657320746f6f2073686f727400006044820152606401610a5b565b6000611bd0846040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b90506000805b60cb5468010000000000000000900467ffffffffffffffff16811015611e04576000806000611c3c88888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508892506126e3915050565b925092509250600060018785858560405160008152602001604052604051611c80949392919093845260ff9290921660208401526040830152606082015260800190565b6020604051602081039080840390855afa158015611ca2573d6000803e3d6000fd5b5050506020604051035190508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611611d4f5760405162461bcd60e51b815260206004820152602f60248201527f4d756c74695369673a207369676e617475726573206d75737420626520696e2060448201527f617363656e64696e67206f7264657200000000000000000000000000000000006064820152608401610a5b565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260ca602052604090205460ff16611dea5760405162461bcd60e51b815260206004820152602860248201527f4d756c74695369673a207369676e6174757265206973206e6f742066726f6d2060448201527f61207369676e65720000000000000000000000000000000000000000000000006064820152608401610a5b565b809550505050508080611dfc90613907565b915050611bd6565b505050505050565b817f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca811480611e5a57507f4270fae16c6d150d00e80b689daca99e8073b1838ff2b6063a37be9d851283e481145b80611e8457507f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de81145b15611edd57303314611ed85760405162461bcd60e51b815260206004820152601b60248201527f4f7261636c653a2063616c6c6572206d7573742062652073656c6600000000006044820152606401610a5b565b611f0d565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217758103611f0d57611f0d816120b2565b610cac8383612701565b6098546040517fda26663a00000000000000000000000000000000000000000000000000000000815263ffffffff831660048201526000918291829173ffffffffffffffffffffffffffffffffffffffff169063da26663a90602401606060405180830381865afa158015611f90573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fb49190613c56565b8051602090910151909590945092505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de611ff3816120b2565b6120008787878787610cb1565b6040805163ffffffff8a16815273ffffffffffffffffffffffffffffffffffffffff8816602082015267ffffffffffffffff8916818301526060810183905290519193507f2fc4e514b16a8f0f9f15009b848663b25939a33de41fa2b98a534b3ac4d5a572919081900360800190a15095945050505050565b6000848285856040516020016120929493929190613cc8565b604051602081830303815290604052805190602001209050949350505050565b6119ae81336127c8565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca8214801561211b5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b1561217a576097805474010000000000000000000000000000000000000000900467ffffffffffffffff1690601461215283613d0e565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b6110018282612868565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260ca602052604090205481151560ff9091161515036122275760405162461bcd60e51b815260206004820152602660248201527f4d756c74695369673a207369676e657220616c726561647920696e207468617460448201527f20737461746500000000000000000000000000000000000000000000000000006064820152608401610a5b565b73ffffffffffffffffffffffffffffffffffffffff8216600090815260ca6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016821515179055806122995760cb546122949060019067ffffffffffffffff16613d35565b6122b1565b60cb546122b19067ffffffffffffffff166001613d5d565b60cb80547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff9283169081179182905568010000000000000000909104909116111561236d5760405162461bcd60e51b8152602060048201526024808201527f4d756c74695369673a20636f6d6d69747465652073697a65203c20746872657360448201527f686f6c64000000000000000000000000000000000000000000000000000000006064820152608401610a5b565b6040805173ffffffffffffffffffffffffffffffffffffffff8416815282151560208201527f863d338cad74814b108a06288ad5e0e80d56495e0332238b1d2cdcfa0ca8e5ce91016111c7565b600054610100900460ff166124375760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b612444858585858561295c565b5050505050565b600054610100900460ff166124c85760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b6110018282612b27565b60cb5467ffffffffffffffff908116908216118015906124fc575060008167ffffffffffffffff16115b6125485760405162461bcd60e51b815260206004820152601860248201527f4d756c74695369673a20696e76616c69642071756f72756d00000000000000006044820152606401610a5b565b60cb80547fffffffffffffffffffffffffffffffff0000000000000000ffffffffffffffff166801000000000000000067ffffffffffffffff8416908102919091179091556040519081527fb600f3cf7f38a4b49bb0c75f722ef69f7e3e39ef3bb4aa8207fd86e724a232499060200160405180910390a150565b6040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527f7bfa20a900000000000000000000000000000000000000000000000000000000600482015273ffffffffffffffffffffffffffffffffffffffff8216906301ffc9a790602401602060405180830381865afa15801561264d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126719190613d7e565b6119ae5760405162461bcd60e51b815260206004820152602f60248201527f4f7261636c653a20776f726b657220646f6573206e6f7420696d706c656d656e60448201527f7420494f7261636c654665654c696200000000000000000000000000000000006064820152608401610a5b565b60419081029190910160208101516040820151919092015160ff1692565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca8214801561275f5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff165b156127be576097805474010000000000000000000000000000000000000000900467ffffffffffffffff1690601461279683613d9b565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505b6110018282612d6d565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff166110015761280881612e28565b612813836020612e47565b604051602001612824929190613ddd565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905262461bcd60e51b8252610a5b91600401613e5e565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661100157600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556128fe3390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600054610100900460ff166129d95760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b609780547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff861602179055609880547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8616179055612a716000836120bc565b60005b8551811015612ad257612ac07f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de878381518110612ab357612ab36138a9565b60200260200101516120bc565b80612aca81613907565b915050612a74565b5060005b8151811015611e0457612b157fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775838381518110612ab357612ab36138a9565b80612b1f81613907565b915050612ad6565b600054610100900460ff16612ba45760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610a5b565b8067ffffffffffffffff16825110158015612bc9575060008167ffffffffffffffff16115b612c155760405162461bcd60e51b815260206004820152601960248201527f4d756c74695369673a207369676e65727320746f6f20666577000000000000006044820152606401610a5b565b6000805b8351811015612d1d576000848281518110612c3657612c366138a9565b602002602001015190508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1611612cbb5760405162461bcd60e51b815260206004820152601c60248201527f4d756c74695369673a207369676e657273206e6f7420736f72746564000000006044820152606401610a5b565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260ca6020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055915080612d1581613907565b915050612c19565b5050905160cb805467ffffffffffffffff93841668010000000000000000027fffffffffffffffffffffffffffffffff000000000000000000000000000000009091169390921692909217179055565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561100157600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b606061099b73ffffffffffffffffffffffffffffffffffffffff831660145b60606000612e56836002613c3f565b612e61906002613e71565b67ffffffffffffffff811115612e7957612e796132bb565b6040519080825280601f01601f191660200182016040528015612ea3576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110612eda57612eda6138a9565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110612f3d57612f3d6138a9565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000612f79846002613c3f565b612f84906001613e71565b90505b6001811115613021577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110612fc557612fc56138a9565b1a60f81b828281518110612fdb57612fdb6138a9565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c9361301a81613e84565b9050612f87565b5083156130705760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a5b565b9392505050565b60006020828403121561308957600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461307057600080fd5b73ffffffffffffffffffffffffffffffffffffffff811681146119ae57600080fd5b6000806000606084860312156130f057600080fd5b83356130fb816130b9565b9250602084013561310b816130b9565b929592945050506040919091013590565b80151581146119ae57600080fd5b60006020828403121561313c57600080fd5b81356130708161311c565b60006020828403121561315957600080fd5b5035919050565b6000806040838503121561317357600080fd5b823591506020830135613185816130b9565b809150509250929050565b63ffffffff811681146119ae57600080fd5b67ffffffffffffffff811681146119ae57600080fd5b80356131c3816131a2565b919050565b60008083601f8401126131da57600080fd5b50813567ffffffffffffffff8111156131f257600080fd5b60208301915083602082850101111561320a57600080fd5b9250929050565b60008060008060006080868803121561322957600080fd5b853561323481613190565b94506020860135613244816131a2565b93506040860135613254816130b9565b9250606086013567ffffffffffffffff81111561327057600080fd5b61327c888289016131c8565b969995985093965092949392505050565b600080604083850312156132a057600080fd5b82356132ab816130b9565b915060208301356131858161311c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040516080810167ffffffffffffffff8111828210171561330d5761330d6132bb565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561335a5761335a6132bb565b604052919050565b600067ffffffffffffffff82111561337c5761337c6132bb565b5060051b60200190565b803561ffff811681146131c357600080fd5b6fffffffffffffffffffffffffffffffff811681146119ae57600080fd5b600060208083850312156133c957600080fd5b823567ffffffffffffffff8111156133e057600080fd5b8301601f810185136133f157600080fd5b80356134046133ff82613362565b613313565b81815260079190911b8201830190838101908783111561342357600080fd5b928401925b8284101561349d57608084890312156134415760008081fd5b6134496132ea565b843561345481613190565b815284860135613463816131a2565b818701526040613474868201613386565b9082015260608581013561348781613398565b9082015282526080939093019290840190613428565b979650505050505050565b600082601f8301126134b957600080fd5b813560206134c96133ff83613362565b82815260059290921b840181019181810190868411156134e857600080fd5b8286015b8481101561350c5780356134ff816130b9565b83529183019183016134ec565b509695505050505050565b600080600080600060a0868803121561352f57600080fd5b853567ffffffffffffffff8082111561354757600080fd5b61355389838a016134a8565b965060208801359150613565826130b9565b9094506040870135908082111561357b57600080fd5b61358789838a016134a8565b945060608801359150613599826131a2565b909250608087013590808211156135af57600080fd5b506135bc888289016134a8565b9150509295509295909350565b6000602082840312156135db57600080fd5b8135613070816130b9565b600080600080600080600060a0888a03121561360157600080fd5b873561360c816130b9565b9650602088013567ffffffffffffffff8082111561362957600080fd5b6136358b838c016131c8565b909850965060408a0135955060608a013591508082111561365557600080fd5b506136628a828b016131c8565b90945092505060808801356136768161311c565b8091505092959891949750929550565b60006020828403121561369857600080fd5b8135613070816131a2565b6000602082840312156136b557600080fd5b813561307081613190565b6000602082840312156136d257600080fd5b61307082613386565b6000806000604084860312156136f057600080fd5b83359250602084013567ffffffffffffffff81111561370e57600080fd5b61371a868287016131c8565b9497909650939450505050565b6000806000806060858703121561373d57600080fd5b8435613748816130b9565b9350602085013567ffffffffffffffff81111561376457600080fd5b613770878288016131c8565b9598909750949560400135949350505050565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b600061014073ffffffffffffffffffffffffffffffffffffffff80885116845263ffffffff6020890151166020850152604088015167ffffffffffffffff80821660408701528260608b01511660608701528060808b015116608087015250505061ffff60a08801511660a084015261387c60c08401875467ffffffffffffffff81168252604081811c61ffff16602084015260509190911c6fffffffffffffffffffffffffffffffff16910152565b8061012084015261349d8184018587613783565b6000602082840312156138a257600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613938576139386138d8565b5060010190565b602080825282518282018190526000919060409081850190868401855b828110156139bc578151805163ffffffff1685528681015167ffffffffffffffff16878601528581015161ffff16868601526060908101516fffffffffffffffffffffffffffffffff16908501526080909301929085019060010161395c565b5091979650505050505050565b8183823760009101908152919050565b60005b838110156139f45781810151838201526020016139dc565b50506000910152565b60008151808452613a158160208601602086016139d9565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b73ffffffffffffffffffffffffffffffffffffffff851681528360208201528215156040820152608060608201526000613a8460808301846139fd565b9695505050505050565b7fffffffff000000000000000000000000000000000000000000000000000000008135818116916004851015613ace5780818660040360031b1b83161692505b505092915050565b60008085851115613ae657600080fd5b83861115613af357600080fd5b5050820193919092039150565b600080600060608486031215613b1557600080fd5b833567ffffffffffffffff80821115613b2d57600080fd5b818601915086601f830112613b4157600080fd5b8135602082821115613b5557613b556132bb565b613b85817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f85011601613313565b92508183528881838601011115613b9b57600080fd5b8181850182850137600081838501015282965080880135955050505050613bc4604085016131b8565b90509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613c0f60408301856139fd565b90508260208301529392505050565b600060208284031215613c3057600080fd5b81516004811061307057600080fd5b808202811582820484141761099b5761099b6138d8565b600060608284031215613c6857600080fd5b6040516060810181811067ffffffffffffffff82111715613c8b57613c8b6132bb565b6040528251613c9981613398565b81526020830151613ca9816131a2565b60208201526040830151613cbc81613190565b60408201529392505050565b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008560601b16815283601482015281836034830137600091016034019081529392505050565b600067ffffffffffffffff808316818103613d2b57613d2b6138d8565b6001019392505050565b67ffffffffffffffff828116828216039080821115613d5657613d566138d8565b5092915050565b67ffffffffffffffff818116838216019080821115613d5657613d566138d8565b600060208284031215613d9057600080fd5b81516130708161311c565b600067ffffffffffffffff821680613db557613db56138d8565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351613e158160178501602088016139d9565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351613e528160288401602088016139d9565b01602801949350505050565b60208152600061307060208301846139fd565b8082018082111561099b5761099b6138d8565b600081613e9357613e936138d8565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff019056fea264697066735822122084eecb57bb92f6d0d5fc98179a7bf67417ee13d33bec8427657c6f79e3f8a2ea64736f6c63430008120033",
992
+ "devdoc": {
993
+ "events": {
994
+ "Initialized(uint8)": {
995
+ "details": "Triggered when the contract has been initialized or reinitialized."
996
+ },
997
+ "RoleAdminChanged(bytes32,bytes32,bytes32)": {
998
+ "details": "Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._"
999
+ },
1000
+ "RoleGranted(bytes32,address,address)": {
1001
+ "details": "Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}."
1002
+ },
1003
+ "RoleRevoked(bytes32,address,address)": {
1004
+ "details": "Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)"
1005
+ }
1006
+ },
1007
+ "kind": "dev",
1008
+ "methods": {
1009
+ "getRoleAdmin(bytes32)": {
1010
+ "details": "Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."
1011
+ },
1012
+ "grantRole(bytes32,address)": {
1013
+ "details": "Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."
1014
+ },
1015
+ "hasRole(bytes32,address)": {
1016
+ "details": "Returns `true` if `account` has been granted `role`."
1017
+ },
1018
+ "revokeRole(bytes32,address)": {
1019
+ "details": "Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."
1020
+ },
1021
+ "supportsInterface(bytes4)": {
1022
+ "details": "See {IERC165-supportsInterface}."
1023
+ }
1024
+ },
1025
+ "version": 1
1026
+ },
1027
+ "userdoc": {
1028
+ "kind": "user",
1029
+ "methods": {},
1030
+ "version": 1
1031
+ },
1032
+ "storageLayout": {
1033
+ "storage": [
1034
+ {
1035
+ "astId": 3197,
1036
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1037
+ "label": "_initialized",
1038
+ "offset": 0,
1039
+ "slot": "0",
1040
+ "type": "t_uint8"
1041
+ },
1042
+ {
1043
+ "astId": 3200,
1044
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1045
+ "label": "_initializing",
1046
+ "offset": 1,
1047
+ "slot": "0",
1048
+ "type": "t_bool"
1049
+ },
1050
+ {
1051
+ "astId": 3814,
1052
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1053
+ "label": "__gap",
1054
+ "offset": 0,
1055
+ "slot": "1",
1056
+ "type": "t_array(t_uint256)50_storage"
1057
+ },
1058
+ {
1059
+ "astId": 4087,
1060
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1061
+ "label": "__gap",
1062
+ "offset": 0,
1063
+ "slot": "51",
1064
+ "type": "t_array(t_uint256)50_storage"
1065
+ },
1066
+ {
1067
+ "astId": 2689,
1068
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1069
+ "label": "_roles",
1070
+ "offset": 0,
1071
+ "slot": "101",
1072
+ "type": "t_mapping(t_bytes32,t_struct(RoleData)2684_storage)"
1073
+ },
1074
+ {
1075
+ "astId": 2984,
1076
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1077
+ "label": "__gap",
1078
+ "offset": 0,
1079
+ "slot": "102",
1080
+ "type": "t_array(t_uint256)49_storage"
1081
+ },
1082
+ {
1083
+ "astId": 9625,
1084
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1085
+ "label": "workerLib",
1086
+ "offset": 0,
1087
+ "slot": "151",
1088
+ "type": "t_address"
1089
+ },
1090
+ {
1091
+ "astId": 9627,
1092
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1093
+ "label": "allowlistSize",
1094
+ "offset": 20,
1095
+ "slot": "151",
1096
+ "type": "t_uint64"
1097
+ },
1098
+ {
1099
+ "astId": 9629,
1100
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1101
+ "label": "defaultMultiplierBps",
1102
+ "offset": 28,
1103
+ "slot": "151",
1104
+ "type": "t_uint16"
1105
+ },
1106
+ {
1107
+ "astId": 9632,
1108
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1109
+ "label": "priceFeed",
1110
+ "offset": 0,
1111
+ "slot": "152",
1112
+ "type": "t_contract(ILayerZeroPriceFeed)10191"
1113
+ },
1114
+ {
1115
+ "astId": 9634,
1116
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1117
+ "label": "paused",
1118
+ "offset": 20,
1119
+ "slot": "152",
1120
+ "type": "t_bool"
1121
+ },
1122
+ {
1123
+ "astId": 9988,
1124
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1125
+ "label": "__gap",
1126
+ "offset": 0,
1127
+ "slot": "153",
1128
+ "type": "t_array(t_uint256)49_storage"
1129
+ },
1130
+ {
1131
+ "astId": 10578,
1132
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1133
+ "label": "signers",
1134
+ "offset": 0,
1135
+ "slot": "202",
1136
+ "type": "t_mapping(t_address,t_bool)"
1137
+ },
1138
+ {
1139
+ "astId": 10580,
1140
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1141
+ "label": "signerSize",
1142
+ "offset": 0,
1143
+ "slot": "203",
1144
+ "type": "t_uint64"
1145
+ },
1146
+ {
1147
+ "astId": 10582,
1148
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1149
+ "label": "quorum",
1150
+ "offset": 8,
1151
+ "slot": "203",
1152
+ "type": "t_uint64"
1153
+ },
1154
+ {
1155
+ "astId": 10890,
1156
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1157
+ "label": "__gap",
1158
+ "offset": 0,
1159
+ "slot": "204",
1160
+ "type": "t_array(t_uint256)49_storage"
1161
+ },
1162
+ {
1163
+ "astId": 10913,
1164
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1165
+ "label": "dstConfig",
1166
+ "offset": 0,
1167
+ "slot": "253",
1168
+ "type": "t_mapping(t_uint32,t_struct(DstConfig)12455_storage)"
1169
+ },
1170
+ {
1171
+ "astId": 10917,
1172
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1173
+ "label": "usedHashes",
1174
+ "offset": 0,
1175
+ "slot": "254",
1176
+ "type": "t_mapping(t_bytes32,t_bool)"
1177
+ }
1178
+ ],
1179
+ "types": {
1180
+ "t_address": {
1181
+ "encoding": "inplace",
1182
+ "label": "address",
1183
+ "numberOfBytes": "20"
1184
+ },
1185
+ "t_array(t_uint256)49_storage": {
1186
+ "base": "t_uint256",
1187
+ "encoding": "inplace",
1188
+ "label": "uint256[49]",
1189
+ "numberOfBytes": "1568"
1190
+ },
1191
+ "t_array(t_uint256)50_storage": {
1192
+ "base": "t_uint256",
1193
+ "encoding": "inplace",
1194
+ "label": "uint256[50]",
1195
+ "numberOfBytes": "1600"
1196
+ },
1197
+ "t_bool": {
1198
+ "encoding": "inplace",
1199
+ "label": "bool",
1200
+ "numberOfBytes": "1"
1201
+ },
1202
+ "t_bytes32": {
1203
+ "encoding": "inplace",
1204
+ "label": "bytes32",
1205
+ "numberOfBytes": "32"
1206
+ },
1207
+ "t_contract(ILayerZeroPriceFeed)10191": {
1208
+ "encoding": "inplace",
1209
+ "label": "contract ILayerZeroPriceFeed",
1210
+ "numberOfBytes": "20"
1211
+ },
1212
+ "t_mapping(t_address,t_bool)": {
1213
+ "encoding": "mapping",
1214
+ "key": "t_address",
1215
+ "label": "mapping(address => bool)",
1216
+ "numberOfBytes": "32",
1217
+ "value": "t_bool"
1218
+ },
1219
+ "t_mapping(t_bytes32,t_bool)": {
1220
+ "encoding": "mapping",
1221
+ "key": "t_bytes32",
1222
+ "label": "mapping(bytes32 => bool)",
1223
+ "numberOfBytes": "32",
1224
+ "value": "t_bool"
1225
+ },
1226
+ "t_mapping(t_bytes32,t_struct(RoleData)2684_storage)": {
1227
+ "encoding": "mapping",
1228
+ "key": "t_bytes32",
1229
+ "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)",
1230
+ "numberOfBytes": "32",
1231
+ "value": "t_struct(RoleData)2684_storage"
1232
+ },
1233
+ "t_mapping(t_uint32,t_struct(DstConfig)12455_storage)": {
1234
+ "encoding": "mapping",
1235
+ "key": "t_uint32",
1236
+ "label": "mapping(uint32 => struct IOracle.DstConfig)",
1237
+ "numberOfBytes": "32",
1238
+ "value": "t_struct(DstConfig)12455_storage"
1239
+ },
1240
+ "t_struct(DstConfig)12455_storage": {
1241
+ "encoding": "inplace",
1242
+ "label": "struct IOracle.DstConfig",
1243
+ "members": [
1244
+ {
1245
+ "astId": 12450,
1246
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1247
+ "label": "gas",
1248
+ "offset": 0,
1249
+ "slot": "0",
1250
+ "type": "t_uint64"
1251
+ },
1252
+ {
1253
+ "astId": 12452,
1254
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1255
+ "label": "multiplierBps",
1256
+ "offset": 8,
1257
+ "slot": "0",
1258
+ "type": "t_uint16"
1259
+ },
1260
+ {
1261
+ "astId": 12454,
1262
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1263
+ "label": "floorMarginUSD",
1264
+ "offset": 10,
1265
+ "slot": "0",
1266
+ "type": "t_uint128"
1267
+ }
1268
+ ],
1269
+ "numberOfBytes": "32"
1270
+ },
1271
+ "t_struct(RoleData)2684_storage": {
1272
+ "encoding": "inplace",
1273
+ "label": "struct AccessControlUpgradeable.RoleData",
1274
+ "members": [
1275
+ {
1276
+ "astId": 2681,
1277
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1278
+ "label": "members",
1279
+ "offset": 0,
1280
+ "slot": "0",
1281
+ "type": "t_mapping(t_address,t_bool)"
1282
+ },
1283
+ {
1284
+ "astId": 2683,
1285
+ "contract": "contracts/uln/Oracle.sol:Oracle",
1286
+ "label": "adminRole",
1287
+ "offset": 0,
1288
+ "slot": "1",
1289
+ "type": "t_bytes32"
1290
+ }
1291
+ ],
1292
+ "numberOfBytes": "64"
1293
+ },
1294
+ "t_uint128": {
1295
+ "encoding": "inplace",
1296
+ "label": "uint128",
1297
+ "numberOfBytes": "16"
1298
+ },
1299
+ "t_uint16": {
1300
+ "encoding": "inplace",
1301
+ "label": "uint16",
1302
+ "numberOfBytes": "2"
1303
+ },
1304
+ "t_uint256": {
1305
+ "encoding": "inplace",
1306
+ "label": "uint256",
1307
+ "numberOfBytes": "32"
1308
+ },
1309
+ "t_uint32": {
1310
+ "encoding": "inplace",
1311
+ "label": "uint32",
1312
+ "numberOfBytes": "4"
1313
+ },
1314
+ "t_uint64": {
1315
+ "encoding": "inplace",
1316
+ "label": "uint64",
1317
+ "numberOfBytes": "8"
1318
+ },
1319
+ "t_uint8": {
1320
+ "encoding": "inplace",
1321
+ "label": "uint8",
1322
+ "numberOfBytes": "1"
1323
+ }
1324
+ }
1325
+ }
1326
+ }