@layerzerolabs/layerzero-v2-ton 3.0.12-ton.0

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 (251) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/README.md +15 -0
  3. package/build/AllStorages.boc +0 -0
  4. package/build/AllStorages.compiled.json +1 -0
  5. package/build/AllStorages.fif +4164 -0
  6. package/build/AllStorages.test.boc +0 -0
  7. package/build/AllStorages.test.compiled.json +1 -0
  8. package/build/AllStorages.test.fif +1831 -0
  9. package/build/BaseContract.test.boc +0 -0
  10. package/build/BaseContract.test.compiled.json +1 -0
  11. package/build/BaseContract.test.fif +3553 -0
  12. package/build/Channel.boc +0 -0
  13. package/build/Channel.compiled.json +1 -0
  14. package/build/Channel.fif +5001 -0
  15. package/build/Channel.permissions.test.boc +0 -0
  16. package/build/Channel.permissions.test.compiled.json +1 -0
  17. package/build/Channel.permissions.test.fif +7569 -0
  18. package/build/ChannelBurn.test.boc +0 -0
  19. package/build/ChannelBurn.test.compiled.json +1 -0
  20. package/build/ChannelBurn.test.fif +7454 -0
  21. package/build/ChannelCommitPacket.test.boc +0 -0
  22. package/build/ChannelCommitPacket.test.compiled.json +1 -0
  23. package/build/ChannelCommitPacket.test.fif +7981 -0
  24. package/build/ChannelConfig.test.boc +0 -0
  25. package/build/ChannelConfig.test.compiled.json +1 -0
  26. package/build/ChannelConfig.test.fif +7442 -0
  27. package/build/ChannelInitialize.test.boc +0 -0
  28. package/build/ChannelInitialize.test.compiled.json +1 -0
  29. package/build/ChannelInitialize.test.fif +7289 -0
  30. package/build/ChannelMsglibIntegration.test.boc +0 -0
  31. package/build/ChannelMsglibIntegration.test.compiled.json +1 -0
  32. package/build/ChannelMsglibIntegration.test.fif +7404 -0
  33. package/build/ChannelMsglibSendCallback.test.boc +0 -0
  34. package/build/ChannelMsglibSendCallback.test.compiled.json +1 -0
  35. package/build/ChannelMsglibSendCallback.test.fif +7711 -0
  36. package/build/ChannelNilify.test.boc +0 -0
  37. package/build/ChannelNilify.test.compiled.json +1 -0
  38. package/build/ChannelNilify.test.fif +7672 -0
  39. package/build/ChannelReceive.test.boc +0 -0
  40. package/build/ChannelReceive.test.compiled.json +1 -0
  41. package/build/ChannelReceive.test.fif +7702 -0
  42. package/build/ChannelReceiveCallback.test.boc +0 -0
  43. package/build/ChannelReceiveCallback.test.compiled.json +1 -0
  44. package/build/ChannelReceiveCallback.test.fif +7549 -0
  45. package/build/ChannelReceiveView.test.boc +0 -0
  46. package/build/ChannelReceiveView.test.compiled.json +1 -0
  47. package/build/ChannelReceiveView.test.fif +7352 -0
  48. package/build/ChannelSend.test.boc +0 -0
  49. package/build/ChannelSend.test.compiled.json +1 -0
  50. package/build/ChannelSend.test.fif +7658 -0
  51. package/build/Classlib.test.boc +0 -0
  52. package/build/Classlib.test.compiled.json +1 -0
  53. package/build/Classlib.test.fif +4728 -0
  54. package/build/Connection.boc +0 -0
  55. package/build/Connection.compiled.json +1 -0
  56. package/build/Connection.fif +3503 -0
  57. package/build/Connection.test.boc +0 -0
  58. package/build/Connection.test.compiled.json +1 -0
  59. package/build/Connection.test.fif +6575 -0
  60. package/build/Controller.assertions.test.boc +0 -0
  61. package/build/Controller.assertions.test.compiled.json +1 -0
  62. package/build/Controller.assertions.test.fif +6130 -0
  63. package/build/Controller.boc +0 -0
  64. package/build/Controller.compiled.json +1 -0
  65. package/build/Controller.fif +3195 -0
  66. package/build/Controller.permissions.test.boc +0 -0
  67. package/build/Controller.permissions.test.compiled.json +1 -0
  68. package/build/Controller.permissions.test.fif +6237 -0
  69. package/build/Controller.test.boc +0 -0
  70. package/build/Controller.test.compiled.json +1 -0
  71. package/build/Controller.test.fif +6400 -0
  72. package/build/Counter.boc +0 -0
  73. package/build/Counter.compiled.json +1 -0
  74. package/build/Counter.fif +4809 -0
  75. package/build/Counter.permissions.test.boc +0 -0
  76. package/build/Counter.permissions.test.compiled.json +1 -0
  77. package/build/Counter.permissions.test.fif +7106 -0
  78. package/build/Counter.setters.test.boc +0 -0
  79. package/build/Counter.setters.test.compiled.json +1 -0
  80. package/build/Counter.setters.test.fif +7083 -0
  81. package/build/Counter.test.boc +0 -0
  82. package/build/Counter.test.compiled.json +1 -0
  83. package/build/Counter.test.fif +7540 -0
  84. package/build/Dvn.boc +0 -0
  85. package/build/Dvn.compiled.json +1 -0
  86. package/build/Dvn.fif +2923 -0
  87. package/build/Dvn.test.boc +0 -0
  88. package/build/Dvn.test.compiled.json +1 -0
  89. package/build/Dvn.test.fif +5753 -0
  90. package/build/Endpoint.boc +0 -0
  91. package/build/Endpoint.compiled.json +1 -0
  92. package/build/Endpoint.fif +3694 -0
  93. package/build/Endpoint.permissions.test.boc +0 -0
  94. package/build/Endpoint.permissions.test.compiled.json +1 -0
  95. package/build/Endpoint.permissions.test.fif +6211 -0
  96. package/build/Endpoint.test.boc +0 -0
  97. package/build/Endpoint.test.compiled.json +1 -0
  98. package/build/Endpoint.test.fif +6899 -0
  99. package/build/EndpointSetEpConfigDefaults.test.boc +0 -0
  100. package/build/EndpointSetEpConfigDefaults.test.compiled.json +1 -0
  101. package/build/EndpointSetEpConfigDefaults.test.fif +6529 -0
  102. package/build/Executor.boc +0 -0
  103. package/build/Executor.compiled.json +1 -0
  104. package/build/Executor.fif +2731 -0
  105. package/build/Executor.test.boc +0 -0
  106. package/build/Executor.test.compiled.json +1 -0
  107. package/build/Executor.test.fif +5822 -0
  108. package/build/LzClasses.test.boc +0 -0
  109. package/build/LzClasses.test.compiled.json +1 -0
  110. package/build/LzClasses.test.fif +4457 -0
  111. package/build/LzUtil.test.boc +0 -0
  112. package/build/LzUtil.test.compiled.json +1 -0
  113. package/build/LzUtil.test.fif +1831 -0
  114. package/build/MsgData.test.boc +0 -0
  115. package/build/MsgData.test.compiled.json +1 -0
  116. package/build/MsgData.test.fif +4318 -0
  117. package/build/MsglibPacketCodec.test.boc +0 -0
  118. package/build/MsglibPacketCodec.test.compiled.json +1 -0
  119. package/build/MsglibPacketCodec.test.fif +4851 -0
  120. package/build/MultiSig.boc +0 -0
  121. package/build/MultiSig.compiled.json +1 -0
  122. package/build/MultiSig.fif +727 -0
  123. package/build/MultiSigOrder.boc +0 -0
  124. package/build/MultiSigOrder.compiled.json +1 -0
  125. package/build/MultiSigOrder.fif +650 -0
  126. package/build/PipelinedOutOfOrder.test.boc +0 -0
  127. package/build/PipelinedOutOfOrder.test.compiled.json +1 -0
  128. package/build/PipelinedOutOfOrder.test.fif +2188 -0
  129. package/build/SmlConnection.boc +0 -0
  130. package/build/SmlConnection.compiled.json +1 -0
  131. package/build/SmlConnection.fif +2517 -0
  132. package/build/SmlConnection.permissions.test.boc +0 -0
  133. package/build/SmlConnection.permissions.test.compiled.json +1 -0
  134. package/build/SmlConnection.permissions.test.fif +5497 -0
  135. package/build/SmlConnection.test.boc +0 -0
  136. package/build/SmlConnection.test.compiled.json +1 -0
  137. package/build/SmlConnection.test.fif +5494 -0
  138. package/build/SmlManager.boc +0 -0
  139. package/build/SmlManager.compiled.json +1 -0
  140. package/build/SmlManager.fif +3904 -0
  141. package/build/SmlManager.permissions.test.boc +0 -0
  142. package/build/SmlManager.permissions.test.compiled.json +1 -0
  143. package/build/SmlManager.permissions.test.fif +6018 -0
  144. package/build/SmlManager.test.boc +0 -0
  145. package/build/SmlManager.test.compiled.json +1 -0
  146. package/build/SmlManager.test.fif +6047 -0
  147. package/build/Uln.boc +0 -0
  148. package/build/Uln.compiled.json +1 -0
  149. package/build/Uln.fif +4841 -0
  150. package/build/Uln.test.boc +0 -0
  151. package/build/Uln.test.compiled.json +1 -0
  152. package/build/Uln.test.fif +7077 -0
  153. package/build/UlnManager.boc +0 -0
  154. package/build/UlnManager.compiled.json +1 -0
  155. package/build/UlnManager.fif +3851 -0
  156. package/build/UlnManager.test.boc +0 -0
  157. package/build/UlnManager.test.compiled.json +1 -0
  158. package/build/UlnManager.test.fif +6571 -0
  159. package/build/UlnReceiveConfig.test.boc +0 -0
  160. package/build/UlnReceiveConfig.test.compiled.json +1 -0
  161. package/build/UlnReceiveConfig.test.fif +4413 -0
  162. package/build/UlnSend.test.boc +0 -0
  163. package/build/UlnSend.test.compiled.json +1 -0
  164. package/build/UlnSend.test.fif +6576 -0
  165. package/build/UlnSendConfig.test.boc +0 -0
  166. package/build/UlnSendConfig.test.compiled.json +1 -0
  167. package/build/UlnSendConfig.test.fif +4431 -0
  168. package/build/UlnSendWorkerFactory.test.boc +0 -0
  169. package/build/UlnSendWorkerFactory.test.compiled.json +1 -0
  170. package/build/UlnSendWorkerFactory.test.fif +6683 -0
  171. package/build/UlnUtil.test.boc +0 -0
  172. package/build/UlnUtil.test.compiled.json +1 -0
  173. package/build/UlnUtil.test.fif +5873 -0
  174. package/build/WorkerCore.test.boc +0 -0
  175. package/build/WorkerCore.test.compiled.json +1 -0
  176. package/build/WorkerCore.test.fif +5630 -0
  177. package/build/ZroMinter.boc +0 -0
  178. package/build/ZroMinter.compiled.json +1 -0
  179. package/build/ZroMinter.fif +2300 -0
  180. package/build/ZroWallet.boc +0 -0
  181. package/build/ZroWallet.compiled.json +1 -0
  182. package/build/ZroWallet.fif +2471 -0
  183. package/package.json +64 -0
  184. package/src/classes/lz/Attestation.fc +23 -0
  185. package/src/classes/lz/Config.fc +23 -0
  186. package/src/classes/lz/EpConfig.fc +91 -0
  187. package/src/classes/lz/MsglibInfo.fc +31 -0
  188. package/src/classes/lz/Packet.fc +202 -0
  189. package/src/classes/lz/Path.fc +56 -0
  190. package/src/classes/lz/ReceiveEpConfig.fc +24 -0
  191. package/src/classes/lz/SendEpConfig.fc +18 -0
  192. package/src/classes/lz/SmlJobAssigned.fc +20 -0
  193. package/src/classes/lz/Worker.fc +32 -0
  194. package/src/classes/msgdata/AddMsglib.fc +18 -0
  195. package/src/classes/msgdata/Amount.fc +16 -0
  196. package/src/classes/msgdata/Bool.fc +16 -0
  197. package/src/classes/msgdata/ChannelNonceInfo.fc +18 -0
  198. package/src/classes/msgdata/ClaimUnaccountedPoolFunds.fc +0 -0
  199. package/src/classes/msgdata/CoinsAmount.fc +16 -0
  200. package/src/classes/msgdata/CounterIncrement.fc +24 -0
  201. package/src/classes/msgdata/Deploy.fc +20 -0
  202. package/src/classes/msgdata/ExtendedMd.fc +20 -0
  203. package/src/classes/msgdata/GetMsglibCallback.fc +18 -0
  204. package/src/classes/msgdata/InitEndpoint.fc +16 -0
  205. package/src/classes/msgdata/InitSmlConnection.fc +16 -0
  206. package/src/classes/msgdata/InitUlnConnection.fc +18 -0
  207. package/src/classes/msgdata/LzReceiveStatus.fc +58 -0
  208. package/src/classes/msgdata/LzSend.fc +58 -0
  209. package/src/classes/msgdata/MdAddress.fc +18 -0
  210. package/src/classes/msgdata/MdEid.fc +18 -0
  211. package/src/classes/msgdata/MdObj.fc +18 -0
  212. package/src/classes/msgdata/MessagingReceipt.fc +22 -0
  213. package/src/classes/msgdata/MsglibSendCallback.fc +113 -0
  214. package/src/classes/msgdata/Nonce.fc +16 -0
  215. package/src/classes/msgdata/OptionsExtended.fc +20 -0
  216. package/src/classes/msgdata/OptionsV1.fc +27 -0
  217. package/src/classes/msgdata/OptionsV2.fc +34 -0
  218. package/src/classes/msgdata/PacketId.fc +18 -0
  219. package/src/classes/msgdata/PacketSent.fc +39 -0
  220. package/src/classes/msgdata/SetAddress.fc +16 -0
  221. package/src/classes/msgdata/SetEpConfig.fc +33 -0
  222. package/src/classes/msgdata/SetPeer.fc +18 -0
  223. package/src/classes/msgdata/SetSmlManagerConfig.fc +18 -0
  224. package/src/funC++/abstract/contractMainAbstract.fc +3 -0
  225. package/src/funC++/abstract/handlerAbstract.fc +12 -0
  226. package/src/funC++/actions/call.fc +51 -0
  227. package/src/funC++/actions/deploy.fc +118 -0
  228. package/src/funC++/actions/destroy.fc +28 -0
  229. package/src/funC++/actions/dispatch.fc +57 -0
  230. package/src/funC++/actions/event.fc +69 -0
  231. package/src/funC++/actions/payment.fc +52 -0
  232. package/src/funC++/actions/sendJettons.fc +76 -0
  233. package/src/funC++/actions/utils.fc +49 -0
  234. package/src/funC++/baseInterface.fc +16 -0
  235. package/src/funC++/classlib.fc +819 -0
  236. package/src/funC++/constants.fc +64 -0
  237. package/src/funC++/contractMain.fc +84 -0
  238. package/src/funC++/dataStructures/DeterministicInsertionCircularQueue.fc +155 -0
  239. package/src/funC++/dataStructures/PipelinedOutOfOrder.fc +93 -0
  240. package/src/funC++/handlerCore.fc +30 -0
  241. package/src/funC++/stdlib.fc +625 -0
  242. package/src/funC++/stringlib.fc +75 -0
  243. package/src/funC++/txnContext.fc +126 -0
  244. package/src/funC++/utils.fc +119 -0
  245. package/src/jettons/zro/minter.fc +120 -0
  246. package/src/jettons/zro/op-codes.fc +10 -0
  247. package/src/jettons/zro/params.fc +18 -0
  248. package/src/jettons/zro/utils.fc +33 -0
  249. package/src/jettons/zro/wallet.fc +261 -0
  250. package/tests/baseContractTest.fc +192 -0
  251. package/tests/testMain.fc +135 -0
@@ -0,0 +1,5001 @@
1
+ "Asm.fif" include
2
+ // automatically generated from `src/protocol/channel/main.fc` incl:`src/protocol/channel/../core/abstract/protocolMain.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/contractMain.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/baseInterface.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/constants.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/classlib.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/utils.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/stdlib.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/stringlib.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/txnContext.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/actions/utils.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/abstract/contractMainAbstract.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/handlerCore.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/abstract/handlerAbstract.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/actions/call.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/actions/deploy.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/actions/event.fc` incl:`src/protocol/channel/../core/abstract/../../../funC++/actions/payment.fc` incl:`src/protocol/channel/handler.fc` incl:`src/protocol/channel/callbackOpcodes.fc` incl:`src/protocol/channel/../../classes/lz/EpConfig.fc` incl:`src/protocol/channel/../../classes/lz/Packet.fc` incl:`src/protocol/channel/../../classes/lz/Path.fc` incl:`src/protocol/channel/../../classes/lz/ReceiveEpConfig.fc` incl:`src/protocol/channel/../../classes/lz/SendEpConfig.fc` incl:`src/protocol/channel/../../classes/msgdata/ChannelNonceInfo.fc` incl:`src/protocol/channel/../../classes/msgdata/CoinsAmount.fc` incl:`src/protocol/channel/../../classes/msgdata/ExtendedMd.fc` incl:`src/protocol/channel/../../classes/msgdata/LzReceiveStatus.fc` incl:`src/protocol/channel/../../classes/msgdata/LzSend.fc` incl:`src/protocol/channel/../../classes/msgdata/MdAddress.fc` incl:`src/protocol/channel/../../classes/msgdata/MdObj.fc` incl:`src/protocol/channel/../../classes/msgdata/MessagingReceipt.fc` incl:`src/protocol/channel/../../classes/msgdata/MsglibSendCallback.fc` incl:`src/protocol/channel/../../classes/msgdata/Nonce.fc` incl:`src/protocol/channel/../../classes/msgdata/PacketId.fc` incl:`src/protocol/channel/../../classes/msgdata/PacketSent.fc` incl:`src/protocol/channel/../core/abstract/protocolHandler.fc` incl:`src/protocol/channel/../core/abstract/../baseStorage.fc` incl:`src/protocol/channel/../../funC++/dataStructures/DeterministicInsertionCircularQueue.fc` incl:`src/protocol/channel/../../funC++/dataStructures/PipelinedOutOfOrder.fc` incl:`src/protocol/channel/../interfaces.fc` incl:`src/protocol/channel/../channel/interface.fc` incl:`src/protocol/channel/../controller/interface.fc` incl:`src/protocol/channel/../endpoint/interface.fc` incl:`src/protocol/channel/../msglibs/interface.fc` incl:`src/protocol/channel/storage.fc`
3
+ PROGRAM{
4
+ DECLPROC cell_is_empty
5
+ DECLPROC throwError
6
+ DECLPROC throwErrorUnless
7
+ DECLPROC getContractStateSize
8
+ DECLPROC calculateStorageFees
9
+ DECLPROC treeShapeEqual
10
+ DECLPROC str::asciiUint256ToStr
11
+ DECLPROC ~str::concat
12
+ DECLPROC str::concat
13
+ DECLPROC ~str::concatInt
14
+ DECLPROC str::concatInt
15
+ DECLPROC ~str::concatHex
16
+ DECLPROC str::concatHex
17
+ DECLPROC str::console::log<int>
18
+ DECLPROC basechainAddressStdToHashpart
19
+ DECLPROC hashpartToBasechainAddressStd
20
+ DECLPROC getContractAddress
21
+ 131006 DECLMETHOD cl::objToSlice
22
+ DECLPROC _getTypeWidth
23
+ DECLPROC cl::hash
24
+ DECLPROC cl::isNull
25
+ DECLPROC cl::noRefFields
26
+ DECLPROC cl::equalObjTypeShallow
27
+ DECLPROC setContractStorage
28
+ 125767 DECLMETHOD getContractStorage
29
+ DECLPROC computeContractAddress
30
+ 72147 DECLMETHOD cl::typeof
31
+ 100174 DECLMETHOD cl::declare
32
+ 129818 DECLMETHOD cl::nullObject
33
+ 97013 DECLMETHOD cl::set
34
+ 78847 DECLMETHOD cl::get<uint>
35
+ 126275 DECLMETHOD cl::get<cellRef>
36
+ 122745 DECLMETHOD cl::getWithCell<cellRef>
37
+ 67678 DECLMETHOD cl::get<objRef>
38
+ 99339 DECLMETHOD cl::get<uint8>
39
+ 72361 DECLMETHOD cl::get<uint16>
40
+ 112653 DECLMETHOD cl::get<uint32>
41
+ 129371 DECLMETHOD cl::get<uint64>
42
+ 121426 DECLMETHOD cl::get<coins>
43
+ 100035 DECLMETHOD cl::get<uint256>
44
+ 71979 DECLMETHOD cl::get<std_address>
45
+ 117250 DECLMETHOD cl::get<bool>
46
+ 111335 DECLMETHOD cl::get<dict256>
47
+ 93365 DECLMETHOD cl::get<address>
48
+ DECLPROC typeofField
49
+ DECLPROC compareObjectFields
50
+ DECLPROC objectsAreEqual
51
+ DECLPROC _typeToStr
52
+ DECLPROC printField
53
+ 101219 DECLMETHOD uint256ToSlice
54
+ 76252 DECLMETHOD sliceToUint256
55
+ 101318 DECLMETHOD cl::dict256::New
56
+ 107506 DECLMETHOD cl::dict256::get
57
+ 68118 DECLMETHOD cl::dict256::get<uint256>
58
+ 90518 DECLMETHOD cl::dict256::get<cellRef>
59
+ 83291 DECLMETHOD cl::dict256::setRef
60
+ DECLPROC cl::dict256::set
61
+ DECLPROC cl::dict256::delete
62
+ DECLPROC cl::dict256::getMin<slice>
63
+ DECLPROC cl::dict256::getMin<uint256>
64
+ DECLPROC cl::dict256::getMin<cellRef>
65
+ DECLPROC cl::dict256::getNext<slice>
66
+ DECLPROC cl::dict256::getNext<uint256>
67
+ DECLPROC cl::dict256::getNext<cellRef>
68
+ DECLPROC cl::dict256::size
69
+ 130704 DECLMETHOD cl::nestedDict256::set
70
+ 75945 DECLMETHOD cl::nestedDict256::setRef
71
+ 74780 DECLMETHOD cl::nestedDict256::delete
72
+ 90264 DECLMETHOD cl::nestedDict256::get<uint256>
73
+ 111526 DECLMETHOD cl::nestedDict256::get<slice>
74
+ 68376 DECLMETHOD cl::nestedDict256::get<cellRef>
75
+ DECLPROC getMsgValue
76
+ DECLPROC getOpcode
77
+ DECLPROC txnIsBounced
78
+ DECLPROC getContractBalance
79
+ DECLPROC getInitialContractBalance
80
+ DECLPROC getCaller
81
+ DECLPROC getOrigin
82
+ DECLPROC getOriginStd
83
+ DECLPROC getDonationNanos
84
+ DECLPROC setDonationNanos
85
+ DECLPROC getMsgData
86
+ DECLPROC setOrigin
87
+ DECLPROC initTxnContext
88
+ DECLPROC emptyActions
89
+ DECLPROC sendTerminalAction
90
+ DECLPROC sendNonTerminalAction
91
+ DECLPROC buildLayerzeroMessageBody
92
+ DECLPROC _executeOpcode
93
+ DECLPROC _executeAction
94
+ DECLPROC assertInitialized
95
+ DECLPROC checkPermissions
96
+ DECLPROC initialize
97
+ DECLPROC authenticateIfNecessary
98
+ DECLPROC assertOwner
99
+ DECLPROC _checkPermissions
100
+ DECLPROC preamble
101
+ DECLPROC main
102
+ DECLPROC action::call::New
103
+ DECLPROC action::call::equals
104
+ DECLPROC _newAction<call>
105
+ DECLPROC ~pushAction<call>
106
+ DECLPROC executeCall
107
+ DECLPROC action::deploy::New
108
+ DECLPROC action::deploy::equals
109
+ DECLPROC _newAction<deployAndCall>
110
+ DECLPROC ~pushAction<deployAndCall>
111
+ DECLPROC executeDeploy
112
+ DECLPROC _getEventSink
113
+ 79569 DECLMETHOD action::event::New
114
+ DECLPROC action::event::equals
115
+ DECLPROC _newAction<event>
116
+ DECLPROC ~pushAction<event>
117
+ DECLPROC executeEvent
118
+ DECLPROC action::payment::New
119
+ DECLPROC action::payment::equals
120
+ DECLPROC _newAction<payment>
121
+ DECLPROC ~pushAction<payment>
122
+ DECLPROC executePayment
123
+ 106645 DECLMETHOD lz::EpConfig::NewWithConnection
124
+ 66399 DECLMETHOD lz::EpConfig::New
125
+ 98878 DECLMETHOD lz::EpConfig::NewWithDefaults
126
+ 110673 DECLMETHOD lz::EpConfig::NewFrom
127
+ 129005 DECLMETHOD lz::EpConfig::isValid
128
+ 67373 DECLMETHOD lz::Path::New
129
+ DECLPROC lz::Path::endpointPath
130
+ DECLPROC lz::Path::reverse
131
+ DECLPROC lz::Path::optimizedReverse
132
+ 88187 DECLMETHOD lz::Packet::New
133
+ 96366 DECLMETHOD lz::Packet::nonceless
134
+ DECLPROC lz::Packet::_assertValidLinkedList
135
+ DECLPROC lz::Packet::assertValidSendMessage
136
+ DECLPROC lz::Packet::assertValidReceiveMessage
137
+ 114194 DECLMETHOD lz::Packet::calculateGuid
138
+ 67130 DECLMETHOD lz::Packet::replaceTwoFieldsAtOffsets
139
+ 79921 DECLMETHOD lz::ReceiveEpConfig::New
140
+ 97802 DECLMETHOD lz::SendEpConfig::New
141
+ 120188 DECLMETHOD md::ChannelNonceInfo::New
142
+ 94636 DECLMETHOD md::CoinsAmount::New
143
+ 98028 DECLMETHOD md::ExtendedMd::New
144
+ 74000 DECLMETHOD md::LzReceiveStatus::New
145
+ 105225 DECLMETHOD md::LzReceiveStatus::NewFull
146
+ 74274 DECLMETHOD md::LzSend::New
147
+ DECLPROC md::lzSend::fillRequestInfo
148
+ 84761 DECLMETHOD md::MdAddress::New
149
+ 88345 DECLMETHOD md::MdObj::New
150
+ 83641 DECLMETHOD md::MessagingReceipt::New
151
+ 85911 DECLMETHOD md::MsglibSendCallback::New
152
+ DECLPROC serializePayees
153
+ DECLPROC deserializePayees
154
+ 110004 DECLMETHOD md::Nonce::New
155
+ 102950 DECLMETHOD md::PacketId::New
156
+ 103604 DECLMETHOD md::PacketSent::New
157
+ 124063 DECLMETHOD BaseStorage::New
158
+ DECLPROC getOwner
159
+ DECLPROC getInitialStorage
160
+ DECLPROC assertAuthenticated
161
+ DECLPROC authenticate
162
+ DECLPROC _initialize
163
+ DECLPROC DeterministicInsertionCircularQueue::_buildLevel
164
+ DECLPROC DeterministicInsertionCircularQueue::get
165
+ DECLPROC DeterministicInsertionCircularQueue::_setRaw
166
+ DECLPROC DeterministicInsertionCircularQueue::set
167
+ DECLPROC DeterministicInsertionCircularQueue::delete
168
+ 96090 DECLMETHOD DeterministicInsertionCircularQueue::create
169
+ 106165 DECLMETHOD POOO::set
170
+ 76066 DECLMETHOD POOO::New
171
+ 126005 DECLMETHOD POOO::NewWithBitsSets
172
+ 116795 DECLMETHOD POOO::isBitSet
173
+ 68887 DECLMETHOD POOO::maxSettableBit
174
+ 82960 DECLMETHOD Channel::New
175
+ DECLPROC _assertEqualPaths
176
+ 103253 DECLMETHOD _buildSendRequestQueueEntry
177
+ 131058 DECLMETHOD _readSendRequestQueueEntry
178
+ 100439 DECLMETHOD _nonceCommittable
179
+ 70036 DECLMETHOD _getExecutablePacket
180
+ DECLPROC _assertNonceCommittable
181
+ 66547 DECLMETHOD _viewInboundNonce
182
+ 73039 DECLMETHOD _viewExecutionStatus
183
+ DECLPROC _assertEndpoint
184
+ DECLPROC _assertSendMsglib
185
+ DECLPROC _assertOApp
186
+ 68405 DECLMETHOD setEpConfigOApp
187
+ 66209 DECLMETHOD channelSend
188
+ 69717 DECLMETHOD msglibSendCallback
189
+ 99809 DECLMETHOD channelCommitPacket
190
+ 118232 DECLMETHOD lzReceivePrepare
191
+ 112518 DECLMETHOD lzReceiveLock
192
+ 115734 DECLMETHOD lzReceiveExecuteCallback
193
+ 121942 DECLMETHOD _commitFakePacket
194
+ 78643 DECLMETHOD nilify
195
+ 91153 DECLMETHOD burn
196
+ 79889 DECLMETHOD depositZro
197
+ 129027 DECLMETHOD forceAbort
198
+ 81775 DECLMETHOD syncMsglibConnection
199
+ 83622 DECLMETHOD notifyPacketExecuted
200
+ 117791 DECLMETHOD emitLzReceiveAlert
201
+ DECLGLOBVAR txnContext
202
+ cell_is_empty PROCINLINE:<{
203
+ HASHCU
204
+ 68134197439415885698044414435951397869210496020759160419881882418413283430343 PUSHINT
205
+ EQUAL
206
+ }>
207
+ throwError PROCINLINE:<{
208
+ DUP
209
+ STRDUMP
210
+ DROP
211
+ HASHSU
212
+ 11 PUSHPOW2DEC
213
+ AND
214
+ THROWANY
215
+ }>
216
+ throwErrorUnless PROCINLINE:<{
217
+ SWAP
218
+ IFNOT:<{
219
+ throwError INLINECALLDICT
220
+ }>ELSE<{
221
+ DROP
222
+ }>
223
+ }>
224
+ getContractStateSize PROCINLINE:<{
225
+ 6 PUSHINT
226
+ NEWC
227
+ 5 STU
228
+ s1 s2 XCHG
229
+ STREF
230
+ STREF
231
+ ENDC
232
+ 16 PUSHPOW2DEC
233
+ CDATASIZE
234
+ DROP
235
+ }>
236
+ calculateStorageFees PROCINLINE:<{
237
+ 0 PUSHINT
238
+ GETSTORAGEFEE
239
+ }>
240
+ treeShapeEqual PROCINLINE:<{
241
+ SWAP
242
+ CTOS
243
+ SWAP
244
+ CTOS
245
+ OVER
246
+ SBITREFS
247
+ s2 PUSH
248
+ SBITREFS
249
+ s3 s3 XCHG2
250
+ NEQ
251
+ s1 s2 PUXC
252
+ NEQ
253
+ s1 s2 XCHG
254
+ OR
255
+ IF:<{
256
+ 3 BLKDROP
257
+ FALSE
258
+ }>ELSE<{
259
+ DUP
260
+ 0 EQINT
261
+ IFJMP:<{
262
+ 3 BLKDROP
263
+ TRUE
264
+ }>
265
+ TRUE
266
+ 0 PUSHINT
267
+ WHILE:<{
268
+ s2 PUSH
269
+ 0 GTINT
270
+ }>DO<{
271
+ s4 s0 PUSH2
272
+ PLDREFVAR
273
+ s4 s1 PUSH2
274
+ PLDREFVAR
275
+ treeShapeEqual INLINECALLDICT
276
+ s1 s2 XCHG
277
+ AND
278
+ SWAP
279
+ }>
280
+ s1 s4 XCHG
281
+ 4 BLKDROP
282
+ }>
283
+ }>
284
+ str::asciiUint256ToStr PROC:<{
285
+ DUP
286
+ NEWC
287
+ 256 STU
288
+ ENDC
289
+ CTOS
290
+ SDCNTLEAD0
291
+ 8 PUSHPOW2
292
+ SWAP
293
+ SUB
294
+ POW2
295
+ DEC
296
+ 8627645864741206717834700843784589212596587092734002810783114102550390051603 PUSHINT
297
+ SWAP
298
+ NOT
299
+ AND
300
+ OR
301
+ NEWC
302
+ 256 STU
303
+ ENDC
304
+ CTOS
305
+ }>
306
+ ~str::concat PROC:<{
307
+ OVER
308
+ SBITS
309
+ OVER
310
+ SBITS
311
+ ADD
312
+ 32385 PUSHINT
313
+ GREATER
314
+ IF:<{
315
+ x{43616e6e6f7420636f6e636174656e6174653a20737472696e6720746f6f206c6f6e67} PUSHSLICE
316
+ throwError INLINECALLDICT
317
+ }>
318
+ NEWC
319
+ ROT
320
+ STSLICER
321
+ SWAP
322
+ STSLICER
323
+ ENDC
324
+ CTOS
325
+ }>
326
+ str::concat PROC:<{
327
+ ~str::concat CALLDICT
328
+ }>
329
+ ~str::concatInt PROC:<{
330
+ <b b> <s PUSHSLICE
331
+ OVER
332
+ 0 LESSINT
333
+ IF:<{
334
+ s0 s2 XCHG
335
+ x{2d} PUSHSLICE
336
+ ~str::concat CALLDICT
337
+ SWAP
338
+ NEGATE
339
+ ROT
340
+ }>
341
+ OVER
342
+ 0 EQINT
343
+ IF:<{
344
+ 48 PUSHINT
345
+ NEWC
346
+ 8 STU
347
+ ENDC
348
+ CTOS
349
+ ~str::concat CALLDICT
350
+ }>
351
+ WHILE:<{
352
+ OVER
353
+ 0 GTINT
354
+ }>DO<{
355
+ OVER
356
+ 10 PUSHINT
357
+ MOD
358
+ 48 ADDCONST
359
+ NEWC
360
+ 8 STU
361
+ ENDC
362
+ CTOS
363
+ SWAP
364
+ str::concat CALLDICT
365
+ SWAP
366
+ 10 PUSHINT
367
+ DIV
368
+ SWAP
369
+ }>
370
+ NIP
371
+ str::concat CALLDICT
372
+ }>
373
+ str::concatInt PROC:<{
374
+ ~str::concatInt CALLDICT
375
+ }>
376
+ ~str::concatHex PROC:<{
377
+ <b b> <s PUSHSLICE
378
+ OVER
379
+ 0 EQINT
380
+ IF:<{
381
+ 48 PUSHINT
382
+ NEWC
383
+ 8 STU
384
+ ENDC
385
+ CTOS
386
+ ~str::concat CALLDICT
387
+ }>
388
+ WHILE:<{
389
+ OVER
390
+ 0 GTINT
391
+ }>DO<{
392
+ OVER
393
+ 4 MODPOW2#
394
+ 10 LESSINT
395
+ IF:<{
396
+ OVER
397
+ 4 MODPOW2#
398
+ 48 ADDCONST
399
+ NEWC
400
+ 8 STU
401
+ ENDC
402
+ CTOS
403
+ SWAP
404
+ str::concat CALLDICT
405
+ }>ELSE<{
406
+ OVER
407
+ 4 MODPOW2#
408
+ 65 ADDCONST
409
+ -10 ADDCONST
410
+ NEWC
411
+ 8 STU
412
+ ENDC
413
+ CTOS
414
+ SWAP
415
+ str::concat CALLDICT
416
+ }>
417
+ SWAP
418
+ 4 RSHIFT#
419
+ SWAP
420
+ }>
421
+ NIP
422
+ str::concat CALLDICT
423
+ }>
424
+ str::concatHex PROC:<{
425
+ ~str::concatHex CALLDICT
426
+ }>
427
+ str::console::log<int> PROC:<{
428
+ SWAP
429
+ x{3a20} PUSHSLICE
430
+ str::concat CALLDICT
431
+ SWAP
432
+ str::concatInt CALLDICT
433
+ STRDUMP
434
+ DROP
435
+ }>
436
+ basechainAddressStdToHashpart PROCINLINE:<{
437
+ REWRITESTDADDR
438
+ NIP
439
+ }>
440
+ hashpartToBasechainAddressStd PROCINLINE:<{
441
+ 0 PUSHINT
442
+ 4 PUSHINT
443
+ NEWC
444
+ 3 STU
445
+ 8 STI
446
+ 256 STU
447
+ ENDC CTOS
448
+ }>
449
+ getContractAddress PROCINLINE:<{
450
+ MYADDR
451
+ 11 PUSHINT
452
+ 8 PUSHPOW2
453
+ SDSUBSTR
454
+ 256 PLDU
455
+ }>
456
+ cl::objToSlice PROCINLINE:<{
457
+ CTOS
458
+ }>
459
+ _getTypeWidth PROCINLINE:<{
460
+ DUP
461
+ 9 LESSINT
462
+ IF:<{
463
+ POW2
464
+ }>ELSE<{
465
+ DROP
466
+ 0 PUSHINT
467
+ }>
468
+ }>
469
+ cl::hash PROCINLINE:<{
470
+ HASHCU
471
+ }>
472
+ cl::isNull PROCINLINE:<{
473
+ cell_is_empty INLINECALLDICT
474
+ }>
475
+ cl::noRefFields PROC:<{
476
+ c2 SAVE
477
+ SAMEALTSAVE
478
+ CTOS
479
+ DUP
480
+ SREFS
481
+ DUP
482
+ 0 EQINT
483
+ IFJMP:<{
484
+ 2DROP
485
+ TRUE
486
+ }>
487
+ DUP
488
+ 3 LESSINT
489
+ IFJMP:<{
490
+ 2DROP
491
+ FALSE
492
+ RETALT
493
+ }>
494
+ DUP
495
+ 2 GTINT
496
+ IF:<{
497
+ OVER
498
+ 0 PUSHINT
499
+ PLDREFVAR
500
+ cell_is_empty INLINECALLDICT
501
+ 0 EQINT
502
+ s2 PUSH
503
+ 1 PUSHINT
504
+ PLDREFVAR
505
+ cell_is_empty INLINECALLDICT
506
+ 0 EQINT
507
+ OR
508
+ s2 PUSH
509
+ 2 PUSHINT
510
+ PLDREFVAR
511
+ CTOS
512
+ SREFS
513
+ 0 NEQINT
514
+ OR
515
+ IFJMP:<{
516
+ 2DROP
517
+ FALSE
518
+ RETALT
519
+ }>
520
+ }>
521
+ 3 GTINT
522
+ IF:<{
523
+ 3 PUSHINT
524
+ PLDREFVAR
525
+ CTOS
526
+ SREFS
527
+ 0 NEQINT
528
+ IFJMP:<{
529
+ FALSE
530
+ RETALT
531
+ }>
532
+ }>ELSE<{
533
+ DROP
534
+ }>
535
+ TRUE
536
+ }>
537
+ cl::equalObjTypeShallow PROC:<{
538
+ c2 SAVE
539
+ SAMEALTSAVE
540
+ SWAP
541
+ CTOS
542
+ SWAP
543
+ CTOS
544
+ OVER
545
+ SREFS
546
+ OVER
547
+ SREFS
548
+ s1 s(-1) PUXC
549
+ NEQ
550
+ s3 PUSH
551
+ SBITS
552
+ s3 PUSH
553
+ SBITS
554
+ NEQ
555
+ OR
556
+ IFJMP:<{
557
+ 3 BLKDROP
558
+ FALSE
559
+ }>
560
+ 2 PUSHINT
561
+ WHILE:<{
562
+ s0 s1 PUSH2
563
+ LESS
564
+ }>DO<{
565
+ s3 s0 PUSH2
566
+ PLDREFVAR
567
+ CTOS
568
+ SREFS
569
+ s3 s1 PUSH2
570
+ PLDREFVAR
571
+ CTOS
572
+ SREFS
573
+ NEQ
574
+ s4 s1 PUSH2
575
+ PLDREFVAR
576
+ CTOS
577
+ SBITS
578
+ s4 s2 PUSH2
579
+ PLDREFVAR
580
+ CTOS
581
+ SBITS
582
+ NEQ
583
+ OR
584
+ IFJMP:<{
585
+ 4 BLKDROP
586
+ FALSE
587
+ RETALT
588
+ }>
589
+ INC
590
+ }>
591
+ 4 BLKDROP
592
+ TRUE
593
+ }>
594
+ setContractStorage PROCINLINE:<{
595
+ c4 POP
596
+ }>
597
+ getContractStorage PROCINLINE:<{
598
+ c4 PUSH
599
+ }>
600
+ computeContractAddress PROCINLINE:<{
601
+ 6 PUSHINT
602
+ NEWC
603
+ 5 STU
604
+ STREF
605
+ STREF
606
+ ENDC
607
+ HASHCU
608
+ }>
609
+ cl::typeof PROCINLINE:<{
610
+ DUP
611
+ cl::isNull INLINECALLDICT
612
+ IF:<{
613
+ DROP
614
+ 1314212940 PUSHINT
615
+ }>ELSE<{
616
+ CTOS
617
+ 80 PLDU
618
+ }>
619
+ }>
620
+ cl::declare PROCINLINE:<{
621
+ PUSHNULL
622
+ NEWC
623
+ PAIR
624
+ OVER
625
+ TLEN
626
+ s0 s3 XCHG
627
+ NEWC
628
+ 80 STU
629
+ 1 PUSHINT
630
+ DUP
631
+ 2 PUSHINT
632
+ 350 PUSHINT
633
+ 0 PUSHINT
634
+ DUP
635
+ WHILE:<{
636
+ s0 s9 PUSH2
637
+ LESS
638
+ }>DO<{
639
+ s8 s0 PUSH2
640
+ INDEXVAR
641
+ DUP
642
+ 0 INDEX
643
+ DUP
644
+ _getTypeWidth INLINECALLDICT
645
+ s5 s0 PUSH2
646
+ ADD
647
+ 10 PUSHPOW2DEC
648
+ GREATER
649
+ IF:<{
650
+ s5 POP
651
+ s0 s7 XCHG
652
+ INC
653
+ 0 PUSHINT
654
+ s10 PUSH
655
+ TLEN
656
+ s2 s(-1) PUXC
657
+ GEQ
658
+ IF:<{
659
+ s0 s10 XCHG
660
+ NEWC
661
+ TPUSH
662
+ s0 s10 XCHG
663
+ }>
664
+ s8 s5 XCHG2
665
+ }>
666
+ s4 PUSH
667
+ INC
668
+ s7 PUSH
669
+ GREATER
670
+ IF:<{
671
+ s4 POP
672
+ s5 POP
673
+ s0 s5 XCHG
674
+ INC
675
+ 0 PUSHINT
676
+ 4 PUSHINT
677
+ s10 PUSH
678
+ TLEN
679
+ s3 s(-1) PUXC
680
+ GEQ
681
+ IF:<{
682
+ s0 s10 XCHG
683
+ NEWC
684
+ TPUSH
685
+ s0 s10 XCHG
686
+ }>
687
+ s7 s6 s6 XCHG3
688
+ s0 s4 XCHG
689
+ }>
690
+ OVER
691
+ 9 LESSINT
692
+ IF:<{
693
+ s0 s2 XCHG
694
+ 1 INDEX
695
+ ABS
696
+ s10 s8 PUSH2
697
+ INDEXVAR
698
+ s3 PUSH
699
+ STUX
700
+ s10 s0 s8 XC2PU
701
+ SETINDEXVAR
702
+ }>ELSE<{
703
+ OVER
704
+ 9 EQINT
705
+ IF:<{
706
+ s0 s2 XCHG
707
+ 1 INDEX
708
+ s10 s7 PUSH2
709
+ INDEXVAR
710
+ STREF
711
+ s10 s0 s7 XC2PU
712
+ SETINDEXVAR
713
+ }>ELSE<{
714
+ s0 s2 XCHG
715
+ 1 INDEX
716
+ s10 s7 PUSH2
717
+ INDEXVAR
718
+ STREF
719
+ s10 s0 s7 XC2PU
720
+ SETINDEXVAR
721
+ }>
722
+ }>
723
+ s9 s8 XCHG2
724
+ 4 STU
725
+ s8 PUSH
726
+ 0 GTINT
727
+ IF:<{
728
+ 3 PUSHINT
729
+ s7 PUSH
730
+ 1 EQINT
731
+ IF:<{
732
+ 0 PUSHINT
733
+ }>ELSE<{
734
+ s7 PUSH
735
+ }>
736
+ ROT
737
+ 2 STU
738
+ s4 s(-1) PUXC
739
+ 10 STU
740
+ 2 STU
741
+ s3 s8 XCHG2
742
+ ADD
743
+ }>ELSE<{
744
+ s8 POP
745
+ 10 PUSHPOW2DEC
746
+ s5 PUSH
747
+ 1 EQINT
748
+ IF:<{
749
+ 0 PUSHINT
750
+ }>ELSE<{
751
+ s5 PUSH
752
+ }>
753
+ s0 s9 XCHG2
754
+ 2 STU
755
+ s1 s8 XCHG
756
+ 10 STU
757
+ s1 s(-1) PUXC
758
+ 2 STU
759
+ SWAP
760
+ INC
761
+ s7 s0 s7 XCHG3
762
+ }>
763
+ s0 s2 XCHG
764
+ INC
765
+ s6 s7 XCHG
766
+ }>
767
+ 6 BLKDROP
768
+ 2 2 BLKDROP2
769
+ OVER
770
+ 1 INDEX
771
+ s2 PUSH
772
+ TLEN
773
+ DEC
774
+ DUP
775
+ 1 GTINT
776
+ IF:<{
777
+ OVER
778
+ BREFS
779
+ 0 EQINT
780
+ IF:<{
781
+ <b b> PUSHREF
782
+ <b b> PUSHREF
783
+ s0 s3 XCHG2
784
+ STREF
785
+ s1 s2 XCHG
786
+ STREF
787
+ }>ELSE<{
788
+ OVER
789
+ BREFS
790
+ 1 EQINT
791
+ IF:<{
792
+ <b b> PUSHREF
793
+ ROT
794
+ STREF
795
+ SWAP
796
+ }>
797
+ SWAP
798
+ }>
799
+ SWAP
800
+ }>
801
+ 350 PUSHINT
802
+ s3 PUSH
803
+ BBITS
804
+ SUB
805
+ s1 s3 XCHG
806
+ STONES
807
+ SWAP
808
+ STBR
809
+ OVER
810
+ 1 EQINT
811
+ IF:<{
812
+ 2 1 BLKDROP2
813
+ ENDC
814
+ }>ELSE<{
815
+ SWAP
816
+ 2 EQINT
817
+ IFJMP:<{
818
+ SWAP
819
+ 2 INDEX
820
+ ENDC
821
+ SWAP
822
+ STREF
823
+ ENDC
824
+ }>
825
+ OVER
826
+ 3 INDEX
827
+ ENDC
828
+ s0 s2 XCHG
829
+ 2 INDEX
830
+ ENDC
831
+ SWAP
832
+ STREF
833
+ STREF
834
+ ENDC
835
+ }>
836
+ }>
837
+ cl::nullObject PROCINLINE:<{
838
+ <b b> PUSHREF
839
+ }>
840
+ cl::set PROCINLINE:<{
841
+ s0 s2 XCHG
842
+ CTOS
843
+ SWAP
844
+ 18 MULCONST
845
+ 80 ADDCONST
846
+ 2DUP
847
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
848
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
849
+ SDSUBSTR // STACK [substring]
850
+ 2 PLDU // STACK [2BitUnsignInt]
851
+ s2 s1 PUSH2
852
+ // STACK [fieldInfoOffset, headerSlice]
853
+ 4 PUSHINT // STACK [_FIELD_TYPE_WIDTH, fieldInfoOffset, headerSlice]
854
+ SDSUBSTR // STACK [substring]
855
+ 4 PLDU // STACK [2BitUnsignInt]
856
+ 2OVER
857
+ 6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
858
+ 10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
859
+ SDSUBSTR // STACK [substring]
860
+ 10 PLDU // STACK [10BitUnsignInt]
861
+ s4 s3 PUXC
862
+ 16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
863
+ 2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
864
+ SDSUBSTR // STACK [substring]
865
+ 2 PLDU // STACK [10BitUnsignInt]
866
+ OVER
867
+ _getTypeWidth INLINECALLDICT
868
+ s3 PUSH
869
+ 0 EQINT
870
+ IF:<{
871
+ s5 PUSH
872
+ }>ELSE<{
873
+ s5 s3 PUSH2
874
+ PLDREFVAR
875
+ CTOS
876
+ }>
877
+ OVER
878
+ 0 NEQINT
879
+ IF:<{
880
+ 4 PUSHINT
881
+ s3 POP
882
+ }>
883
+ NEWC
884
+ OVER
885
+ SBITS
886
+ s7 PUSH
887
+ MIN
888
+ s2 PUSH
889
+ SREFS
890
+ s5 s(-1) PUXC
891
+ MIN
892
+ s3 PUSH
893
+ -ROT
894
+ SCUTFIRST
895
+ STSLICER
896
+ s4 PUSH
897
+ 9 EQINT
898
+ IF:<{
899
+ s2 POP
900
+ s3 POP
901
+ s4 POP
902
+ s5 s5 XCHG2
903
+ s0 s3 XCHG
904
+ STREF
905
+ 0 PUSHINT
906
+ s3 PUSH
907
+ SREFS
908
+ s0 s6 XCHG2
909
+ SUB
910
+ DEC
911
+ s3 s5 s0 XCHG3
912
+ SCUTLAST
913
+ s1 s3 XCHG
914
+ STSLICER
915
+ }>ELSE<{
916
+ s0 s4 XCHG
917
+ 9 EQINT
918
+ IF:<{
919
+ NIP
920
+ s4 POP
921
+ s5 s5 XCHG2
922
+ STREF
923
+ 0 PUSHINT
924
+ s3 PUSH
925
+ SREFS
926
+ s0 s6 XCHG2
927
+ SUB
928
+ DEC
929
+ s3 s5 s0 XCHG3
930
+ SCUTLAST
931
+ s1 s3 XCHG
932
+ STSLICER
933
+ }>ELSE<{
934
+ s2 POP
935
+ s0 s6 XCHG
936
+ ABS
937
+ s0 s2 s6 XC2PU
938
+ STUX
939
+ s3 s5 XCHG2
940
+ ADD
941
+ s2 PUSH
942
+ SREFS
943
+ s2 s3 XCHG
944
+ SSKIPFIRST
945
+ s1 s3 XCHG
946
+ STSLICER
947
+ }>
948
+ }>
949
+ s2 PUSH
950
+ 0 GTINT
951
+ IF:<{
952
+ ENDC
953
+ NEWC
954
+ s2 PUSH
955
+ SBITS
956
+ s3 s4 s(-1) PU2XC
957
+ SCUTFIRST
958
+ STSLICER
959
+ STREF
960
+ 0 PUSHINT
961
+ s2 PUSH
962
+ SREFS
963
+ s0 s4 XCHG2
964
+ SUB
965
+ DEC
966
+ s1 s3 XCHG
967
+ SCUTLAST
968
+ STSLICER
969
+ ENDC
970
+ }>ELSE<{
971
+ 2 1 BLKDROP2
972
+ ENDC
973
+ }>
974
+ }>
975
+ cl::get<uint> PROCINLINE:<{
976
+ s0 s2 XCHG
977
+ CTOS
978
+ SWAP
979
+ 18 MULCONST
980
+ 80 ADDCONST
981
+ 2DUP
982
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
983
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
984
+ SDSUBSTR // STACK [substring]
985
+ 2 PLDU // STACK [2BitUnsignInt]
986
+ s2 s1 PUXC
987
+ 6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
988
+ 10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
989
+ SDSUBSTR // STACK [substring]
990
+ 10 PLDU // STACK [10BitUnsignInt]
991
+ OVER
992
+ 0 EQINT
993
+ IF:<{
994
+ NIP
995
+ s2 PUSH
996
+ SDSUBSTR // STACK [substring]
997
+ s1 XCHG0
998
+ PLDUX // STACK [10BitUnsignInt] (CC +1 )
999
+ }>ELSE<{
1000
+ -ROT
1001
+ PLDREFVAR
1002
+ CTOS
1003
+ s1 s2 XCPU
1004
+ SDSUBSTR // STACK [substring]
1005
+ s1 XCHG0
1006
+ PLDUX // STACK [10BitUnsignInt] (CC +1 )
1007
+ }>
1008
+ }>
1009
+ cl::get<cellRef> PROCINLINE:<{
1010
+ SWAP
1011
+ CTOS
1012
+ SWAP
1013
+ 18 MULCONST
1014
+ 80 ADDCONST
1015
+ 2DUP
1016
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
1017
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
1018
+ SDSUBSTR // STACK [substring]
1019
+ 2 PLDU // STACK [2BitUnsignInt]
1020
+ s2 s1 PUXC
1021
+ 16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
1022
+ 2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
1023
+ SDSUBSTR // STACK [substring]
1024
+ 2 PLDU // STACK [10BitUnsignInt]
1025
+ OVER
1026
+ 0 EQINT
1027
+ IF:<{
1028
+ NIP
1029
+ PLDREFVAR
1030
+ }>ELSE<{
1031
+ -ROT
1032
+ PLDREFVAR
1033
+ CTOS
1034
+ SWAP
1035
+ PLDREFVAR
1036
+ }>
1037
+ }>
1038
+ cl::getWithCell<cellRef> PROCINLINE:<{
1039
+ cl::get<cellRef> INLINECALLDICT
1040
+ }>
1041
+ cl::get<objRef> PROCINLINE:<{
1042
+ cl::get<cellRef> INLINECALLDICT
1043
+ }>
1044
+ cl::get<uint8> PROCINLINE:<{
1045
+ 8 PUSHINT
1046
+ cl::get<uint> INLINECALLDICT
1047
+ }>
1048
+ cl::get<uint16> PROCINLINE:<{
1049
+ 16 PUSHINT
1050
+ cl::get<uint> INLINECALLDICT
1051
+ }>
1052
+ cl::get<uint32> PROCINLINE:<{
1053
+ 32 PUSHINT
1054
+ cl::get<uint> INLINECALLDICT
1055
+ }>
1056
+ cl::get<uint64> PROCINLINE:<{
1057
+ 64 PUSHINT
1058
+ cl::get<uint> INLINECALLDICT
1059
+ }>
1060
+ cl::get<coins> PROCINLINE:<{
1061
+ 7 PUSHPOW2
1062
+ cl::get<uint> INLINECALLDICT
1063
+ }>
1064
+ cl::get<uint256> PROCINLINE:<{
1065
+ 8 PUSHPOW2
1066
+ cl::get<uint> INLINECALLDICT
1067
+ }>
1068
+ cl::get<std_address> PROCINLINE:<{
1069
+ 8 PUSHPOW2
1070
+ cl::get<uint> INLINECALLDICT
1071
+ hashpartToBasechainAddressStd INLINECALLDICT
1072
+ }>
1073
+ cl::get<bool> PROCINLINE:<{
1074
+ 1 PUSHINT
1075
+ cl::get<uint> INLINECALLDICT
1076
+ 0 NEQINT
1077
+ }>
1078
+ cl::get<dict256> PROCINLINE:<{
1079
+ cl::get<cellRef> INLINECALLDICT
1080
+ }>
1081
+ cl::get<address> PROCINLINE:<{
1082
+ 8 PUSHPOW2
1083
+ cl::get<uint> INLINECALLDICT
1084
+ }>
1085
+ typeofField PROCINLINE:<{
1086
+ SWAP
1087
+ CTOS
1088
+ SWAP
1089
+ 18 MULCONST
1090
+ 80 ADDCONST
1091
+ 4 PUSHINT
1092
+ SDSUBSTR
1093
+ 4 PLDU
1094
+ }>
1095
+ compareObjectFields PROCINLINE:<{
1096
+ CONT:<{
1097
+ c2 SAVE
1098
+ SAMEALTSAVE
1099
+ OVER
1100
+ cl::typeof INLINECALLDICT
1101
+ OVER
1102
+ cl::typeof INLINECALLDICT
1103
+ NEQ
1104
+ DUP
1105
+ IF:<{
1106
+ 3 BLKDROP
1107
+ 16 PUSHINT
1108
+ }>ELSE<{
1109
+ s2 PUSH
1110
+ cl::typeof INLINECALLDICT
1111
+ 1314212940 PUSHINT
1112
+ EQUAL
1113
+ IFJMP:<{
1114
+ 3 BLKDROP
1115
+ -1 PUSHINT
1116
+ }>
1117
+ 0 PUSHINT
1118
+ WHILE:<{
1119
+ DUP
1120
+ 16 LESSINT
1121
+ }>DO<{
1122
+ s3 s0 PUSH2
1123
+ typeofField INLINECALLDICT
1124
+ DUP
1125
+ 9 EQINT
1126
+ IF:<{
1127
+ DROP
1128
+ NIP
1129
+ s2 s0 PUSH2
1130
+ cl::get<objRef> INLINECALLDICT
1131
+ cl::hash INLINECALLDICT
1132
+ s2 s1 PUSH2
1133
+ cl::get<objRef> INLINECALLDICT
1134
+ cl::hash INLINECALLDICT
1135
+ NEQ
1136
+ DUP
1137
+ IF:<{
1138
+ s3 s1 PUSH2
1139
+ cl::get<objRef> INLINECALLDICT
1140
+ HASHCU
1141
+ s0 DUMP
1142
+ DROP
1143
+ s2 s1 PUSH2
1144
+ cl::get<objRef> INLINECALLDICT
1145
+ HASHCU
1146
+ s0 DUMP
1147
+ DROP
1148
+ }>
1149
+ }>ELSE<{
1150
+ DUP
1151
+ 9 LESSINT
1152
+ IF:<{
1153
+ 1 2 BLKDROP2
1154
+ _getTypeWidth INLINECALLDICT
1155
+ s3 s1 s0 PUSH3
1156
+ cl::get<uint> INLINECALLDICT
1157
+ s3 s2 s1 PUSH3
1158
+ cl::get<uint> INLINECALLDICT
1159
+ NEQ
1160
+ DUP
1161
+ IF:<{
1162
+ x{6c68733a20} PUSHSLICE
1163
+ s5 s3 s2 PUSH3
1164
+ cl::get<uint> INLINECALLDICT
1165
+ str::console::log<int> CALLDICT
1166
+ 2OVER
1167
+ x{7268733a20} PUSHSLICE
1168
+ s0 s4 XCHG
1169
+ cl::get<uint> INLINECALLDICT
1170
+ s1 s2 XCHG
1171
+ str::console::log<int> CALLDICT
1172
+ }>ELSE<{
1173
+ NIP
1174
+ }>
1175
+ }>ELSE<{
1176
+ 2DROP
1177
+ 16 PUSHINT
1178
+ SWAP
1179
+ }>
1180
+ }>
1181
+ DUP
1182
+ IFJMP:<{
1183
+ s1 s3 XCHG
1184
+ 3 BLKDROP
1185
+ x{4d616c666f726d6564206669656c643a20} PUSHSLICE
1186
+ OVER
1187
+ str::console::log<int> CALLDICT
1188
+ RETALT
1189
+ }>
1190
+ SWAP
1191
+ INC
1192
+ }>
1193
+ 4 BLKDROP
1194
+ -1 PUSHINT
1195
+ }>
1196
+ }>
1197
+ EXECUTE
1198
+ }>
1199
+ objectsAreEqual PROCINLINE:<{
1200
+ compareObjectFields INLINECALLDICT
1201
+ -1 EQINT
1202
+ }>
1203
+ _typeToStr PROC:<{
1204
+ DUP
1205
+ 3 EQINT
1206
+ IFJMP:<{
1207
+ DROP
1208
+ x{75696e7438} PUSHSLICE
1209
+ }>
1210
+ DUP
1211
+ 4 EQINT
1212
+ IFJMP:<{
1213
+ DROP
1214
+ x{75696e743136} PUSHSLICE
1215
+ }>
1216
+ DUP
1217
+ 5 EQINT
1218
+ IFJMP:<{
1219
+ DROP
1220
+ x{75696e743332} PUSHSLICE
1221
+ }>
1222
+ DUP
1223
+ 6 EQINT
1224
+ IFJMP:<{
1225
+ DROP
1226
+ x{75696e743634} PUSHSLICE
1227
+ }>
1228
+ DUP
1229
+ 8 EQINT
1230
+ IFJMP:<{
1231
+ DROP
1232
+ x{75696e74323536} PUSHSLICE
1233
+ }>
1234
+ DUP
1235
+ 7 EQINT
1236
+ IFJMP:<{
1237
+ DROP
1238
+ x{636f696e73} PUSHSLICE
1239
+ }>
1240
+ DUP
1241
+ 8 EQINT
1242
+ IFJMP:<{
1243
+ DROP
1244
+ x{61646472657373} PUSHSLICE
1245
+ }>
1246
+ DUP
1247
+ 9 EQINT
1248
+ IFJMP:<{
1249
+ DROP
1250
+ x{64696374323536} PUSHSLICE
1251
+ }>
1252
+ DUP
1253
+ 9 EQINT
1254
+ IFJMP:<{
1255
+ DROP
1256
+ x{6f626a526566} PUSHSLICE
1257
+ }>
1258
+ DUP
1259
+ 9 EQINT
1260
+ IFJMP:<{
1261
+ DROP
1262
+ x{63656c6c526566} PUSHSLICE
1263
+ }>
1264
+ 0 EQINT
1265
+ IFJMP:<{
1266
+ x{626f6f6c} PUSHSLICE
1267
+ }>
1268
+ x{756e6b6e6f776e} PUSHSLICE
1269
+ }>
1270
+ printField PROCINLINE:<{
1271
+ OVER
1272
+ CTOS
1273
+ s2 s1 PUSH2
1274
+ typeofField INLINECALLDICT
1275
+ s2 PUSH
1276
+ 18 MULCONST
1277
+ 80 ADDCONST
1278
+ DUP
1279
+ 4 ADDCONST
1280
+ s3 s(-1) PUXC
1281
+ 2 PUSHINT
1282
+ SDSUBSTR
1283
+ 2 PLDU
1284
+ OVER
1285
+ 4 ADDCONST
1286
+ 2 ADDCONST
1287
+ 10 ADDCONST
1288
+ s4 s(-1) PUXC
1289
+ 2 PUSHINT
1290
+ SDSUBSTR
1291
+ 2 PLDU
1292
+ s3 PUSH
1293
+ _getTypeWidth INLINECALLDICT
1294
+ s0 s3 XCHG
1295
+ 4 ADDCONST
1296
+ 2 ADDCONST
1297
+ s1 s5 XCHG
1298
+ 10 PUSHINT
1299
+ SDSUBSTR
1300
+ 10 PLDU
1301
+ s3 PUSH
1302
+ _typeToStr CALLDICT
1303
+ x{20} PUSHSLICE
1304
+ str::concat CALLDICT
1305
+ s6 PUSH
1306
+ str::concatInt CALLDICT
1307
+ x{2061742063} PUSHSLICE
1308
+ str::concat CALLDICT
1309
+ ROT
1310
+ str::concatInt CALLDICT
1311
+ s2 PUSH
1312
+ 0 GTINT
1313
+ IF:<{
1314
+ s4 POP
1315
+ s0 s3 XCHG
1316
+ x{2e62} PUSHSLICE
1317
+ str::concat CALLDICT
1318
+ s0 s3 XCHG2
1319
+ str::concatInt CALLDICT
1320
+ }>ELSE<{
1321
+ NIP
1322
+ x{2e72} PUSHSLICE
1323
+ str::concat CALLDICT
1324
+ s0 s3 XCHG2
1325
+ str::concatInt CALLDICT
1326
+ }>
1327
+ OVER
1328
+ 9 LESSINT
1329
+ IF:<{
1330
+ NIP
1331
+ x{203d20} PUSHSLICE
1332
+ str::concat CALLDICT
1333
+ 3 -ROLL
1334
+ cl::get<uint> INLINECALLDICT
1335
+ str::concatInt CALLDICT
1336
+ STRDUMP
1337
+ DROP
1338
+ }>ELSE<{
1339
+ s2 POP
1340
+ 9 EQINT
1341
+ IF:<{
1342
+ x{2068617368203d20} PUSHSLICE
1343
+ str::concat CALLDICT
1344
+ -ROT
1345
+ cl::get<objRef> INLINECALLDICT
1346
+ cl::hash INLINECALLDICT
1347
+ str::concatInt CALLDICT
1348
+ STRDUMP
1349
+ DROP
1350
+ }>ELSE<{
1351
+ x{2068617368203d20} PUSHSLICE
1352
+ str::concat CALLDICT
1353
+ -ROT
1354
+ cl::get<cellRef> INLINECALLDICT
1355
+ HASHCU
1356
+ str::concatInt CALLDICT
1357
+ STRDUMP
1358
+ DROP
1359
+ }>
1360
+ }>
1361
+ }>
1362
+ uint256ToSlice PROCINLINE:<{
1363
+ NEWC
1364
+ 256 STU
1365
+ ENDC CTOS
1366
+ }>
1367
+ sliceToUint256 PROCINLINE:<{
1368
+ 256 PLDU
1369
+ }>
1370
+ cl::dict256::New PROCINLINE:<{
1371
+ <b b> PUSHREF
1372
+ }>
1373
+ cl::dict256::get PROCINLINE:<{
1374
+ OVER
1375
+ cell_is_empty INLINECALLDICT
1376
+ IF:<{
1377
+ NIP
1378
+ NEWDICT
1379
+ 8 PUSHPOW2
1380
+ DICTUGET
1381
+ NULLSWAPIFNOT
1382
+ }>ELSE<{
1383
+ SWAP
1384
+ 8 PUSHPOW2
1385
+ DICTUGET
1386
+ NULLSWAPIFNOT
1387
+ }>
1388
+ }>
1389
+ cl::dict256::get<uint256> PROCINLINE:<{
1390
+ cl::dict256::get INLINECALLDICT
1391
+ IF:<{
1392
+ sliceToUint256 INLINECALLDICT
1393
+ TRUE
1394
+ }>ELSE<{
1395
+ DROP
1396
+ 0 PUSHINT
1397
+ FALSE
1398
+ }>
1399
+ }>
1400
+ cl::dict256::get<cellRef> PROCINLINE:<{
1401
+ OVER
1402
+ cell_is_empty INLINECALLDICT
1403
+ IF:<{
1404
+ 2DROP
1405
+ <b b> PUSHREF
1406
+ FALSE
1407
+ }>ELSE<{
1408
+ SWAP
1409
+ 8 PUSHPOW2
1410
+ DICTUGETREF
1411
+ NULLSWAPIFNOT
1412
+ }>
1413
+ }>
1414
+ cl::dict256::setRef PROCINLINE:<{
1415
+ s2 PUSH
1416
+ cell_is_empty INLINECALLDICT
1417
+ IF:<{
1418
+ 1 2 BLKDROP2
1419
+ NEWDICT
1420
+ s1 s2 XCHG
1421
+ 8 PUSHPOW2
1422
+ DICTUSETREF
1423
+ }>ELSE<{
1424
+ s0 s2 XCHG
1425
+ 8 PUSHPOW2
1426
+ DICTUSETREF
1427
+ }>
1428
+ }>
1429
+ cl::dict256::set PROCINLINE:<{
1430
+ DUP
1431
+ <{ TRY:<{ SBITS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
1432
+ IF:<{
1433
+ }>ELSE<{
1434
+ uint256ToSlice INLINECALLDICT
1435
+ }>
1436
+ s2 PUSH
1437
+ cell_is_empty INLINECALLDICT
1438
+ IF:<{
1439
+ s2 POP
1440
+ NEWDICT
1441
+ 8 PUSHPOW2
1442
+ DICTUSET
1443
+ }>ELSE<{
1444
+ s0 s2 XCHG
1445
+ 8 PUSHPOW2
1446
+ DICTUSET
1447
+ }>
1448
+ }>
1449
+ cl::dict256::delete PROC:<{
1450
+ OVER
1451
+ cell_is_empty INLINECALLDICT
1452
+ IFJMP:<{
1453
+ DROP
1454
+ }>
1455
+ SWAP
1456
+ 8 PUSHPOW2
1457
+ DICTUDEL
1458
+ DROP
1459
+ DUP
1460
+ <{ TRY:<{ CTOS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
1461
+ IF:<{
1462
+ }>ELSE<{
1463
+ DROP
1464
+ cl::dict256::New INLINECALLDICT
1465
+ }>
1466
+ }>
1467
+ cl::dict256::getMin<slice> PROC:<{
1468
+ DUP
1469
+ cell_is_empty INLINECALLDICT
1470
+ IFJMP:<{
1471
+ DROP
1472
+ -1 PUSHINT
1473
+ PUSHNULL
1474
+ }>
1475
+ 8 PUSHPOW2
1476
+ DICTUMIN
1477
+ NULLSWAPIFNOT2
1478
+ IFJMP:<{
1479
+ SWAP
1480
+ }>
1481
+ 2DROP
1482
+ -1 PUSHINT
1483
+ PUSHNULL
1484
+ }>
1485
+ cl::dict256::getMin<uint256> PROC:<{
1486
+ DUP
1487
+ cell_is_empty INLINECALLDICT
1488
+ IFJMP:<{
1489
+ DROP
1490
+ -1 PUSHINT
1491
+ PUSHNULL
1492
+ }>
1493
+ 8 PUSHPOW2
1494
+ DICTUMIN
1495
+ NULLSWAPIFNOT2
1496
+ IFJMP:<{
1497
+ SWAP
1498
+ 256 PLDU
1499
+ }>
1500
+ 2DROP
1501
+ -1 PUSHINT
1502
+ PUSHNULL
1503
+ }>
1504
+ cl::dict256::getMin<cellRef> PROC:<{
1505
+ DUP
1506
+ cell_is_empty INLINECALLDICT
1507
+ IFJMP:<{
1508
+ DROP
1509
+ -1 PUSHINT
1510
+ PUSHNULL
1511
+ }>
1512
+ 8 PUSHPOW2
1513
+ DICTUMINREF
1514
+ NULLSWAPIFNOT2
1515
+ IFJMP:<{
1516
+ SWAP
1517
+ }>
1518
+ 2DROP
1519
+ -1 PUSHINT
1520
+ PUSHNULL
1521
+ }>
1522
+ cl::dict256::getNext<slice> PROC:<{
1523
+ OVER
1524
+ cell_is_empty INLINECALLDICT
1525
+ IFJMP:<{
1526
+ 2DROP
1527
+ -1 PUSHINT
1528
+ PUSHNULL
1529
+ }>
1530
+ SWAP
1531
+ 8 PUSHPOW2
1532
+ DICTUGETNEXT
1533
+ NULLSWAPIFNOT2
1534
+ IFJMP:<{
1535
+ SWAP
1536
+ }>
1537
+ 2DROP
1538
+ -1 PUSHINT
1539
+ PUSHNULL
1540
+ }>
1541
+ cl::dict256::getNext<uint256> PROC:<{
1542
+ OVER
1543
+ cell_is_empty INLINECALLDICT
1544
+ IFJMP:<{
1545
+ 2DROP
1546
+ -1 PUSHINT
1547
+ PUSHNULL
1548
+ }>
1549
+ SWAP
1550
+ 8 PUSHPOW2
1551
+ DICTUGETNEXT
1552
+ NULLSWAPIFNOT2
1553
+ IFJMP:<{
1554
+ SWAP
1555
+ 256 PLDU
1556
+ }>
1557
+ 2DROP
1558
+ -1 PUSHINT
1559
+ PUSHNULL
1560
+ }>
1561
+ cl::dict256::getNext<cellRef> PROC:<{
1562
+ OVER
1563
+ cell_is_empty INLINECALLDICT
1564
+ IFJMP:<{
1565
+ 2DROP
1566
+ -1 PUSHINT
1567
+ PUSHNULL
1568
+ }>
1569
+ SWAP
1570
+ 8 PUSHPOW2
1571
+ DICTUGETNEXT
1572
+ NULLSWAPIFNOT2
1573
+ IFJMP:<{
1574
+ SWAP
1575
+ 0 PLDREFIDX
1576
+ }>
1577
+ 2DROP
1578
+ -1 PUSHINT
1579
+ PUSHNULL
1580
+ }>
1581
+ cl::dict256::size PROCINLINE:<{
1582
+ 0 PUSHINT
1583
+ OVER
1584
+ cl::dict256::getMin<slice> CALLDICT
1585
+ DROP
1586
+ WHILE:<{
1587
+ DUP
1588
+ -1 GTINT
1589
+ }>DO<{
1590
+ s2 s(-1) PUXC
1591
+ cl::dict256::getNext<slice> CALLDICT
1592
+ DROP
1593
+ SWAP
1594
+ INC
1595
+ SWAP
1596
+ }>
1597
+ DROP
1598
+ NIP
1599
+ }>
1600
+ cl::nestedDict256::set PROCINLINE:<{
1601
+ 2OVER
1602
+ cl::get<dict256> INLINECALLDICT
1603
+ -ROT
1604
+ cl::dict256::set INLINECALLDICT
1605
+ cl::set INLINECALLDICT
1606
+ }>
1607
+ cl::nestedDict256::setRef PROCINLINE:<{
1608
+ 2OVER
1609
+ cl::get<dict256> INLINECALLDICT
1610
+ -ROT
1611
+ cl::dict256::setRef INLINECALLDICT
1612
+ cl::set INLINECALLDICT
1613
+ }>
1614
+ cl::nestedDict256::delete PROCINLINE:<{
1615
+ s2 s1 PUSH2
1616
+ cl::get<dict256> INLINECALLDICT
1617
+ SWAP
1618
+ cl::dict256::delete CALLDICT
1619
+ cl::set INLINECALLDICT
1620
+ }>
1621
+ cl::nestedDict256::get<uint256> PROCINLINE:<{
1622
+ -ROT
1623
+ cl::get<dict256> INLINECALLDICT
1624
+ SWAP
1625
+ cl::dict256::get<uint256> INLINECALLDICT
1626
+ }>
1627
+ cl::nestedDict256::get<slice> PROCINLINE:<{
1628
+ -ROT
1629
+ cl::get<dict256> INLINECALLDICT
1630
+ SWAP
1631
+ cl::dict256::get INLINECALLDICT
1632
+ }>
1633
+ cl::nestedDict256::get<cellRef> PROCINLINE:<{
1634
+ -ROT
1635
+ cl::get<dict256> INLINECALLDICT
1636
+ SWAP
1637
+ cl::dict256::get INLINECALLDICT
1638
+ DUP
1639
+ IF:<{
1640
+ SWAP
1641
+ 0 PLDREFIDX
1642
+ SWAP
1643
+ }>ELSE<{
1644
+ NIP
1645
+ <b b> PUSHREF
1646
+ SWAP
1647
+ }>
1648
+ }>
1649
+ getMsgValue PROCINLINE:<{
1650
+ txnContext GETGLOB
1651
+ 6 INDEX
1652
+ }>
1653
+ getOpcode PROCINLINE:<{
1654
+ txnContext GETGLOB
1655
+ 3 INDEX
1656
+ }>
1657
+ txnIsBounced PROCINLINE:<{
1658
+ txnContext GETGLOB
1659
+ 0 INDEX
1660
+ }>
1661
+ getContractBalance PROCINLINE:<{
1662
+ txnContext GETGLOB
1663
+ 5 INDEX
1664
+ }>
1665
+ getInitialContractBalance PROCINLINE:<{
1666
+ getContractBalance INLINECALLDICT
1667
+ getMsgValue INLINECALLDICT
1668
+ SUB
1669
+ }>
1670
+ getCaller PROCINLINE:<{
1671
+ txnContext GETGLOB
1672
+ 1 INDEX
1673
+ }>
1674
+ getOrigin PROCINLINE:<{
1675
+ txnContext GETGLOB
1676
+ 9 INDEX
1677
+ }>
1678
+ getOriginStd PROCINLINE:<{
1679
+ getOrigin INLINECALLDICT
1680
+ hashpartToBasechainAddressStd INLINECALLDICT
1681
+ }>
1682
+ getDonationNanos PROCINLINE:<{
1683
+ txnContext GETGLOB
1684
+ 10 INDEX
1685
+ }>
1686
+ setDonationNanos PROCINLINE:<{
1687
+ txnContext GETGLOB
1688
+ SWAP
1689
+ 10 PUSHINT
1690
+ SETINDEXVAR
1691
+ txnContext SETGLOB
1692
+ }>
1693
+ getMsgData PROCINLINE:<{
1694
+ txnContext GETGLOB
1695
+ 11 INDEX
1696
+ }>
1697
+ setOrigin PROCINLINE:<{
1698
+ txnContext GETGLOB
1699
+ SWAP
1700
+ 9 PUSHINT
1701
+ SETINDEXVAR
1702
+ txnContext SETGLOB
1703
+ }>
1704
+ initTxnContext PROCINLINE:<{
1705
+ OVER
1706
+ CTOS
1707
+ 4 PUSHINT
1708
+ LDUX
1709
+ FALSE
1710
+ s0 s2 XCHG
1711
+ 1 PUSHINT
1712
+ AND
1713
+ IF:<{
1714
+ NIP
1715
+ TRUE
1716
+ s0 s2 XCHG
1717
+ 32 PUSHINT
1718
+ SDSKIPFIRST
1719
+ -ROT
1720
+ }>
1721
+ -1 PUSHINT
1722
+ DUP
1723
+ 0 PUSHINT
1724
+ PUSHNULL
1725
+ s0 s4 XCHG
1726
+ LDMSGADDR
1727
+ LDMSGADDR
1728
+ NIP
1729
+ LDGRAMS
1730
+ NIP
1731
+ 1 PUSHINT
1732
+ SDSKIPFIRST
1733
+ LDGRAMS
1734
+ NIP
1735
+ SWAP
1736
+ basechainAddressStdToHashpart INLINECALLDICT
1737
+ s0 s7 PUSH2
1738
+ SEMPTY
1739
+ IFNOT:<{
1740
+ 3 3 BLKDROP2
1741
+ s0 s5 XCHG
1742
+ 32 PUSHINT
1743
+ LDUX
1744
+ 64 PUSHINT
1745
+ LDUX
1746
+ LDGRAMS
1747
+ DUP
1748
+ SBITS
1749
+ 267 PUSHINT
1750
+ GEQ
1751
+ IF:<{
1752
+ s8 POP
1753
+ s7 PUSH
1754
+ 11 PUSHINT
1755
+ 8 PUSHPOW2
1756
+ SDSUBSTR
1757
+ 256 PLDU
1758
+ s0 s8 XCHG
1759
+ }>
1760
+ DUP
1761
+ SREMPTY
1762
+ IFNOT:<{
1763
+ s6 POP
1764
+ s5 PUSH
1765
+ PLDREF
1766
+ s0 s6 XCHG
1767
+ }>
1768
+ s0 s8 XCHG
1769
+ s3 s5 XCHG
1770
+ s4 s3 s0 XCHG3
1771
+ s1 s2 XCHG
1772
+ }>
1773
+ s0 s2 XCHG
1774
+ LDGRAMS
1775
+ DROP
1776
+ 3 PUSHINT
1777
+ 1 MULRSHIFT#
1778
+ s7 s11 XCHG
1779
+ s10 s9 XCHG2
1780
+ s5 s8 XCHG
1781
+ s4 s7 XCHG
1782
+ s4 s6 XCHG
1783
+ s3 s3 XCHG2
1784
+ s0 s5 XCHG
1785
+ s0 s4 XCHG
1786
+ 12 TUPLE
1787
+ txnContext SETGLOB
1788
+ }>
1789
+ emptyActions PROCINLINE:<{
1790
+ 0 PUSHINT
1791
+ SINGLE
1792
+ }>
1793
+ sendTerminalAction PROCINLINE:<{
1794
+ 24 PUSHINT
1795
+ NEWC
1796
+ 6 STU
1797
+ s0 s4 XCHG
1798
+ hashpartToBasechainAddressStd INLINECALLDICT
1799
+ s1 s4 XCHG
1800
+ STSLICER
1801
+ 0 PUSHINT
1802
+ STGRAMS
1803
+ OVER
1804
+ ISNULL
1805
+ IF:<{
1806
+ 1 PUSHINT
1807
+ s2 POP
1808
+ 107 STU
1809
+ }>ELSE<{
1810
+ 7 PUSHINT
1811
+ SWAP
1812
+ 108 STU
1813
+ STREF
1814
+ }>
1815
+ STREF
1816
+ ENDC
1817
+ 7 PUSHPOW2
1818
+ ROT
1819
+ OR
1820
+ SENDRAWMSG
1821
+ }>
1822
+ sendNonTerminalAction PROCINLINE:<{
1823
+ 1 PUSHINT
1824
+ s0 s5 XCHG
1825
+ NEWC
1826
+ 6 STU
1827
+ s0 s3 XCHG
1828
+ hashpartToBasechainAddressStd INLINECALLDICT
1829
+ s1 s3 XCHG
1830
+ STSLICER
1831
+ s0 s3 XCHG2
1832
+ STGRAMS
1833
+ s1 s3 XCHG
1834
+ 107 STU
1835
+ STREF
1836
+ ENDC
1837
+ SWAP
1838
+ SENDRAWMSG
1839
+ }>
1840
+ buildLayerzeroMessageBody PROCINLINE:<{
1841
+ SWAP
1842
+ txnContext GETGLOB 4 INDEX SWAP NEWC 32 STU 64 STU
1843
+ ROT
1844
+ STGRAMS
1845
+ getOriginStd INLINECALLDICT
1846
+ STSLICER
1847
+ STREF
1848
+ ENDC
1849
+ }>
1850
+ _executeOpcode PROCINLINE:<{
1851
+ CONT:<{
1852
+ c2 SAVE
1853
+ SAMEALTSAVE
1854
+ OVER
1855
+ 1726097956 PUSHINT
1856
+ EQUAL
1857
+ IF:<{
1858
+ NIP
1859
+ setEpConfigOApp INLINECALLDICT
1860
+ }>ELSE<{
1861
+ OVER
1862
+ 1399843593 PUSHINT
1863
+ EQUAL
1864
+ IFJMP:<{
1865
+ NIP
1866
+ channelSend INLINECALLDICT
1867
+ RETALT
1868
+ }>
1869
+ OVER
1870
+ 1109137957 PUSHINT
1871
+ EQUAL
1872
+ IFJMP:<{
1873
+ NIP
1874
+ msglibSendCallback INLINECALLDICT
1875
+ RETALT
1876
+ }>
1877
+ OVER
1878
+ 1401474440 PUSHINT
1879
+ EQUAL
1880
+ IFJMP:<{
1881
+ NIP
1882
+ channelCommitPacket INLINECALLDICT
1883
+ RETALT
1884
+ }>
1885
+ OVER
1886
+ 586394633 PUSHINT
1887
+ EQUAL
1888
+ IFJMP:<{
1889
+ NIP
1890
+ lzReceivePrepare INLINECALLDICT
1891
+ RETALT
1892
+ }>
1893
+ OVER
1894
+ 3077049286 PUSHINT
1895
+ EQUAL
1896
+ IFJMP:<{
1897
+ NIP
1898
+ lzReceiveLock INLINECALLDICT
1899
+ RETALT
1900
+ }>
1901
+ OVER
1902
+ 3400410529 PUSHINT
1903
+ EQUAL
1904
+ IFJMP:<{
1905
+ NIP
1906
+ lzReceiveExecuteCallback INLINECALLDICT
1907
+ RETALT
1908
+ }>
1909
+ OVER
1910
+ 617148342 PUSHINT
1911
+ EQUAL
1912
+ IFJMP:<{
1913
+ NIP
1914
+ depositZro INLINECALLDICT
1915
+ RETALT
1916
+ }>
1917
+ OVER
1918
+ 1371314582 PUSHINT
1919
+ EQUAL
1920
+ IFJMP:<{
1921
+ NIP
1922
+ nilify INLINECALLDICT
1923
+ RETALT
1924
+ }>
1925
+ OVER
1926
+ 882743973 PUSHINT
1927
+ EQUAL
1928
+ IFJMP:<{
1929
+ NIP
1930
+ burn INLINECALLDICT
1931
+ RETALT
1932
+ }>
1933
+ OVER
1934
+ 1504021698 PUSHINT
1935
+ EQUAL
1936
+ IFJMP:<{
1937
+ NIP
1938
+ forceAbort INLINECALLDICT
1939
+ RETALT
1940
+ }>
1941
+ OVER
1942
+ 2903748817 PUSHINT
1943
+ EQUAL
1944
+ IFJMP:<{
1945
+ NIP
1946
+ syncMsglibConnection INLINECALLDICT
1947
+ RETALT
1948
+ }>
1949
+ OVER
1950
+ 2440175356 PUSHINT
1951
+ EQUAL
1952
+ IFJMP:<{
1953
+ NIP
1954
+ notifyPacketExecuted INLINECALLDICT
1955
+ RETALT
1956
+ }>
1957
+ SWAP
1958
+ 1963505712 PUSHINT
1959
+ EQUAL
1960
+ IFJMP:<{
1961
+ emitLzReceiveAlert INLINECALLDICT
1962
+ RETALT
1963
+ }>
1964
+ DROP
1965
+ 1199 THROW
1966
+ NIL
1967
+ }>
1968
+ }>
1969
+ EXECUTE
1970
+ }>
1971
+ _executeAction PROCINLINE:<{
1972
+ CONT:<{
1973
+ c2 SAVE
1974
+ SAMEALTSAVE
1975
+ OVER
1976
+ 435778055796 PUSHINT
1977
+ EQUAL
1978
+ IF:<{
1979
+ NIP
1980
+ executeEvent INLINECALLDICT
1981
+ }>ELSE<{
1982
+ OVER
1983
+ 459904164859953153141868 PUSHINT
1984
+ EQUAL
1985
+ IFJMP:<{
1986
+ NIP
1987
+ executeCall INLINECALLDICT
1988
+ RETALT
1989
+ }>
1990
+ OVER
1991
+ 31632371545894516 PUSHINT
1992
+ EQUAL
1993
+ IFJMP:<{
1994
+ NIP
1995
+ executePayment INLINECALLDICT
1996
+ RETALT
1997
+ }>
1998
+ SWAP
1999
+ 110386840629113 PUSHINT
2000
+ EQUAL
2001
+ IFJMP:<{
2002
+ executeDeploy INLINECALLDICT
2003
+ RETALT
2004
+ }>
2005
+ DROP
2006
+ 1693 THROW
2007
+ FALSE
2008
+ }>
2009
+ }>
2010
+ EXECUTE
2011
+ }>
2012
+ assertInitialized PROCINLINE:<{
2013
+ getContractStorage INLINECALLDICT
2014
+ 0 PUSHINT
2015
+ cl::get<objRef> INLINECALLDICT
2016
+ 2 PUSHINT
2017
+ cl::get<bool> INLINECALLDICT
2018
+ 1160 THROWIFNOT
2019
+ }>
2020
+ checkPermissions PROCINLINE:<{
2021
+ OVER
2022
+ 3812333683 PUSHINT
2023
+ EQUAL
2024
+ IF:<{
2025
+ 2DROP
2026
+ }>ELSE<{
2027
+ OVER
2028
+ 4133284232 PUSHINT
2029
+ EQUAL
2030
+ IF:<{
2031
+ 2DROP
2032
+ assertOwner INLINECALLDICT
2033
+ }>ELSE<{
2034
+ _checkPermissions INLINECALLDICT
2035
+ }>
2036
+ }>
2037
+ }>
2038
+ initialize PROCINLINE:<{
2039
+ assertAuthenticated INLINECALLDICT
2040
+ getContractStorage INLINECALLDICT
2041
+ 0 PUSHINT
2042
+ cl::get<objRef> INLINECALLDICT
2043
+ 2 PUSHINT
2044
+ cl::get<bool> INLINECALLDICT
2045
+ IF:<{
2046
+ DROP
2047
+ emptyActions INLINECALLDICT
2048
+ }>ELSE<{
2049
+ _initialize INLINECALLDICT
2050
+ 0 PUSHINT
2051
+ s2 s0 PUSH2
2052
+ cl::get<objRef> INLINECALLDICT
2053
+ 2 PUSHINT
2054
+ TRUE
2055
+ cl::set INLINECALLDICT
2056
+ s2 s3 XCHG
2057
+ cl::set INLINECALLDICT
2058
+ setContractStorage INLINECALLDICT
2059
+ }>
2060
+ }>
2061
+ authenticateIfNecessary PROCINLINE:<{
2062
+ getContractStorage INLINECALLDICT
2063
+ 0 PUSHINT
2064
+ cl::get<objRef> INLINECALLDICT
2065
+ 1 PUSHINT
2066
+ cl::get<bool> INLINECALLDICT
2067
+ 0 EQINT
2068
+ IF:<{
2069
+ authenticate CALLDICT
2070
+ }>
2071
+ }>
2072
+ assertOwner PROCINLINE:<{
2073
+ getContractStorage INLINECALLDICT
2074
+ 0 PUSHINT
2075
+ cl::get<objRef> INLINECALLDICT
2076
+ getCaller INLINECALLDICT
2077
+ SWAP
2078
+ 0 PUSHINT
2079
+ cl::get<address> INLINECALLDICT
2080
+ EQUAL
2081
+ 163 THROWIFNOT
2082
+ }>
2083
+ _checkPermissions PROCINLINE:<{
2084
+ CONT:<{
2085
+ c2 SAVE
2086
+ SAMEALTSAVE
2087
+ OVER
2088
+ 586394633 PUSHINT
2089
+ EQUAL
2090
+ IF:<{
2091
+ 2DROP
2092
+ }>ELSE<{
2093
+ OVER
2094
+ 1399843593 PUSHINT
2095
+ EQUAL
2096
+ s2 PUSH
2097
+ 1401474440 PUSHINT
2098
+ EQUAL
2099
+ OR
2100
+ IF:<{
2101
+ 2DROP
2102
+ _assertEndpoint INLINECALLDICT
2103
+ }>ELSE<{
2104
+ OVER
2105
+ 1109137957 PUSHINT
2106
+ EQUAL
2107
+ IF:<{
2108
+ NIP
2109
+ _assertSendMsglib INLINECALLDICT
2110
+ }>ELSE<{
2111
+ DROP
2112
+ DUP
2113
+ 3077049286 PUSHINT
2114
+ EQUAL
2115
+ OVER
2116
+ 3400410529 PUSHINT
2117
+ EQUAL
2118
+ OR
2119
+ IF:<{
2120
+ DROP
2121
+ _assertOApp INLINECALLDICT
2122
+ }>ELSE<{
2123
+ DUP
2124
+ 617148342 PUSHINT
2125
+ EQUAL
2126
+ IF:<{
2127
+ DROP
2128
+ assertOwner INLINECALLDICT
2129
+ }>ELSE<{
2130
+ DUP
2131
+ 2440175356 PUSHINT
2132
+ EQUAL
2133
+ OVER
2134
+ 2903748817 PUSHINT
2135
+ EQUAL
2136
+ OR
2137
+ IFJMP:<{
2138
+ DROP
2139
+ RETALT
2140
+ }>
2141
+ DUP
2142
+ 1726097956 PUSHINT
2143
+ EQUAL
2144
+ IF:<{
2145
+ DROP
2146
+ _assertEndpoint INLINECALLDICT
2147
+ }>ELSE<{
2148
+ DUP
2149
+ 1371314582 PUSHINT
2150
+ EQUAL
2151
+ OVER
2152
+ 882743973 PUSHINT
2153
+ EQUAL
2154
+ OR
2155
+ OVER
2156
+ 1504021698 PUSHINT
2157
+ EQUAL
2158
+ OR
2159
+ IF:<{
2160
+ DROP
2161
+ _assertOApp INLINECALLDICT
2162
+ }>ELSE<{
2163
+ 1963505712 PUSHINT
2164
+ EQUAL
2165
+ IFJMP:<{
2166
+ RETALT
2167
+ }>
2168
+ 1199 THROW
2169
+ }>
2170
+ }>
2171
+ }>
2172
+ }>
2173
+ }>
2174
+ }>
2175
+ }>
2176
+ }>
2177
+ EXECUTE
2178
+ }>
2179
+ preamble PROCINLINE:<{
2180
+ getContractStorage INLINECALLDICT
2181
+ emptyActions INLINECALLDICT
2182
+ }>
2183
+ main PROCINLINE:<{
2184
+ 3 -ROLL
2185
+ s3 PUSH
2186
+ initTxnContext INLINECALLDICT
2187
+ txnIsBounced INLINECALLDICT
2188
+ IF:<{
2189
+ DROP
2190
+ }>ELSE<{
2191
+ authenticateIfNecessary INLINECALLDICT
2192
+ SEMPTY
2193
+ IFJMP:<{
2194
+ }>
2195
+ getOpcode INLINECALLDICT
2196
+ getMsgData INLINECALLDICT
2197
+ 2DUP
2198
+ checkPermissions INLINECALLDICT
2199
+ OVER
2200
+ 3812333683 PUSHINT
2201
+ EQUAL
2202
+ IF:<{
2203
+ 488 THROW
2204
+ }>
2205
+ OVER
2206
+ 4133284232 PUSHINT
2207
+ EQUAL
2208
+ IF:<{
2209
+ NIP
2210
+ initialize INLINECALLDICT
2211
+ }>ELSE<{
2212
+ assertInitialized INLINECALLDICT
2213
+ _executeOpcode INLINECALLDICT
2214
+ }>
2215
+ DUP
2216
+ 0 INDEX
2217
+ getContractBalance INLINECALLDICT
2218
+ STORAGEFEES
2219
+ SUB
2220
+ getMsgValue INLINECALLDICT
2221
+ getDonationNanos INLINECALLDICT
2222
+ SUB
2223
+ SUB
2224
+ s0 s1 PUSH2
2225
+ GEQ
2226
+ 37 THROWIFNOT
2227
+ SWAP
2228
+ SUB
2229
+ 0 PUSHINT
2230
+ RAWRESERVE
2231
+ TRUE
2232
+ 1 PUSHINT
2233
+ s2 PUSH
2234
+ TLEN
2235
+ WHILE:<{
2236
+ 2DUP
2237
+ LESS
2238
+ }>DO<{
2239
+ s3 s1 PUSH2
2240
+ INDEXVAR
2241
+ DUP
2242
+ 0 INDEX
2243
+ s0 s3 XCHG
2244
+ INC
2245
+ s3 s3 XCHG2
2246
+ _executeAction INLINECALLDICT
2247
+ s1 s3 XCHG
2248
+ AND
2249
+ s0 s2 XCHG
2250
+ }>
2251
+ s2 s3 XCHG
2252
+ 3 BLKDROP
2253
+ IF:<{
2254
+ <b b> PUSHREF
2255
+ 1 PUSHINT
2256
+ 16 PUSHINT
2257
+ NEWC
2258
+ 6 STU
2259
+ getOriginStd INLINECALLDICT
2260
+ STSLICER
2261
+ 0 PUSHINT
2262
+ STGRAMS
2263
+ 107 STU
2264
+ STREF
2265
+ ENDC
2266
+ 7 PUSHPOW2
2267
+ SENDRAWMSG
2268
+ }>
2269
+ }>
2270
+ }>
2271
+ action::call::New PROCINLINE:<{
2272
+ 459904164859953153141868 PUSHINT
2273
+ 3 -ROLL
2274
+ 4 TUPLE
2275
+ }>
2276
+ action::call::equals PROC:<{
2277
+ OVER
2278
+ 3 INDEX
2279
+ OVER
2280
+ 3 INDEX
2281
+ compareObjectFields INLINECALLDICT
2282
+ s2 PUSH
2283
+ 0 INDEX
2284
+ s2 PUSH
2285
+ 0 INDEX
2286
+ EQUAL
2287
+ s3 PUSH
2288
+ 1 INDEX
2289
+ s3 PUSH
2290
+ 1 INDEX
2291
+ EQUAL
2292
+ AND
2293
+ s0 s3 XCHG
2294
+ 2 INDEX
2295
+ s0 s2 XCHG
2296
+ 2 INDEX
2297
+ s1 s2 XCHG
2298
+ EQUAL
2299
+ s1 s2 XCHG
2300
+ AND
2301
+ SWAP
2302
+ -1 EQINT
2303
+ AND
2304
+ }>
2305
+ _newAction<call> PROCINLINE:<{
2306
+ action::call::New INLINECALLDICT
2307
+ }>
2308
+ ~pushAction<call> PROCINLINE:<{
2309
+ _newAction<call> INLINECALLDICT
2310
+ TPUSH
2311
+ }>
2312
+ executeCall PROCINLINE:<{
2313
+ DUP
2314
+ 1 INDEX
2315
+ 0 PUSHINT
2316
+ s2 PUSH
2317
+ 2 INDEX
2318
+ s0 s3 XCHG
2319
+ 3 INDEX
2320
+ s1 s3 s0 XCHG3
2321
+ buildLayerzeroMessageBody INLINECALLDICT
2322
+ PUSHNULL
2323
+ 0 PUSHINT
2324
+ sendTerminalAction INLINECALLDICT
2325
+ FALSE
2326
+ }>
2327
+ action::deploy::New PROCINLINE:<{
2328
+ 110386840629113 PUSHINT
2329
+ 6 -ROLL
2330
+ 7 TUPLE
2331
+ }>
2332
+ action::deploy::equals PROC:<{
2333
+ OVER
2334
+ 2 INDEX
2335
+ OVER
2336
+ 2 INDEX
2337
+ compareObjectFields INLINECALLDICT
2338
+ s2 PUSH
2339
+ 5 INDEX
2340
+ s2 PUSH
2341
+ 5 INDEX
2342
+ compareObjectFields INLINECALLDICT
2343
+ s3 PUSH
2344
+ 0 INDEX
2345
+ s3 PUSH
2346
+ 0 INDEX
2347
+ EQUAL
2348
+ s4 PUSH
2349
+ 1 INDEX
2350
+ HASHCU
2351
+ s4 PUSH
2352
+ 1 INDEX
2353
+ HASHCU
2354
+ EQUAL
2355
+ AND
2356
+ s0 s2 XCHG
2357
+ -1 EQINT
2358
+ s1 s2 XCHG
2359
+ AND
2360
+ s3 PUSH
2361
+ 3 INDEX
2362
+ s3 PUSH
2363
+ 3 INDEX
2364
+ EQUAL
2365
+ AND
2366
+ s3 PUSH
2367
+ 4 INDEX
2368
+ s3 PUSH
2369
+ 4 INDEX
2370
+ EQUAL
2371
+ AND
2372
+ SWAP
2373
+ -1 EQINT
2374
+ AND
2375
+ s0 s2 XCHG
2376
+ 6 INDEX
2377
+ SWAP
2378
+ 6 INDEX
2379
+ EQUAL
2380
+ AND
2381
+ }>
2382
+ _newAction<deployAndCall> PROCINLINE:<{
2383
+ action::deploy::New INLINECALLDICT
2384
+ }>
2385
+ ~pushAction<deployAndCall> PROCINLINE:<{
2386
+ _newAction<deployAndCall> INLINECALLDICT
2387
+ TPUSH
2388
+ }>
2389
+ executeDeploy PROCINLINE:<{
2390
+ DUP
2391
+ 2 INDEX
2392
+ OVER
2393
+ 1 INDEX
2394
+ 2DUP
2395
+ computeContractAddress INLINECALLDICT
2396
+ s3 PUSH
2397
+ 3 INDEX
2398
+ s4 PUSH
2399
+ 4 INDEX
2400
+ s0 s5 XCHG
2401
+ 5 INDEX
2402
+ s1 s5 s0 XCHG3
2403
+ buildLayerzeroMessageBody INLINECALLDICT
2404
+ 6 PUSHINT
2405
+ NEWC
2406
+ 5 STU
2407
+ s1 s2 XCHG
2408
+ STREF
2409
+ s1 s2 XCHG
2410
+ STREF
2411
+ ENDC
2412
+ 0 PUSHINT
2413
+ sendTerminalAction INLINECALLDICT
2414
+ FALSE
2415
+ }>
2416
+ _getEventSink PROCINLINE:<{
2417
+ getContractStorage INLINECALLDICT
2418
+ 0 PUSHINT
2419
+ cl::get<objRef> INLINECALLDICT
2420
+ 0 PUSHINT
2421
+ cl::get<address> INLINECALLDICT
2422
+ }>
2423
+ action::event::New PROCINLINE:<{
2424
+ 435778055796 PUSHINT
2425
+ 8 PUSHINT
2426
+ s0 s4 XCHG2
2427
+ PAIR
2428
+ 9 PUSHINT
2429
+ s0 s3 XCHG2
2430
+ PAIR
2431
+ 9 PUSHINT
2432
+ ROT
2433
+ PAIR
2434
+ TRIPLE
2435
+ cl::declare INLINECALLDICT
2436
+ 435778055796 PUSHINT
2437
+ SWAP
2438
+ PAIR
2439
+ }>
2440
+ action::event::equals PROC:<{
2441
+ OVER
2442
+ 1 INDEX
2443
+ OVER
2444
+ 1 INDEX
2445
+ compareObjectFields INLINECALLDICT
2446
+ s0 s2 XCHG
2447
+ 0 INDEX
2448
+ SWAP
2449
+ 0 INDEX
2450
+ EQUAL
2451
+ SWAP
2452
+ -1 EQINT
2453
+ AND
2454
+ }>
2455
+ _newAction<event> PROCINLINE:<{
2456
+ getInitialStorage INLINECALLDICT
2457
+ action::event::New INLINECALLDICT
2458
+ }>
2459
+ ~pushAction<event> PROCINLINE:<{
2460
+ _newAction<event> INLINECALLDICT
2461
+ TPUSH
2462
+ }>
2463
+ executeEvent PROCINLINE:<{
2464
+ 16 PUSHINT
2465
+ 0 PUSHINT
2466
+ _getEventSink INLINECALLDICT
2467
+ OVER
2468
+ 3812333683 PUSHINT
2469
+ s0 s5 XCHG
2470
+ 1 INDEX
2471
+ s1 s5 s0 XCHG3
2472
+ buildLayerzeroMessageBody INLINECALLDICT
2473
+ s1 s3 s0 XCHG3
2474
+ 1 PUSHINT
2475
+ sendNonTerminalAction INLINECALLDICT
2476
+ TRUE
2477
+ }>
2478
+ action::payment::New PROCINLINE:<{
2479
+ 31632371545894516 PUSHINT
2480
+ 3 -ROLL
2481
+ 4 TUPLE
2482
+ }>
2483
+ action::payment::equals PROC:<{
2484
+ OVER
2485
+ 0 INDEX
2486
+ OVER
2487
+ 0 INDEX
2488
+ EQUAL
2489
+ s2 PUSH
2490
+ 1 INDEX
2491
+ s2 PUSH
2492
+ 1 INDEX
2493
+ EQUAL
2494
+ AND
2495
+ s2 PUSH
2496
+ 2 INDEX
2497
+ s2 PUSH
2498
+ 2 INDEX
2499
+ EQUAL
2500
+ AND
2501
+ s0 s2 XCHG
2502
+ 3 INDEX
2503
+ SWAP
2504
+ 3 INDEX
2505
+ EQUAL
2506
+ AND
2507
+ }>
2508
+ _newAction<payment> PROCINLINE:<{
2509
+ action::payment::New INLINECALLDICT
2510
+ }>
2511
+ ~pushAction<payment> PROCINLINE:<{
2512
+ DUP
2513
+ 0 GTINT
2514
+ IF:<{
2515
+ s3 PUSH
2516
+ 0 INDEX
2517
+ OVER
2518
+ ADD
2519
+ s1 s4 XCHG
2520
+ 0 PUSHINT
2521
+ SETINDEXVAR
2522
+ s0 s3 XCHG
2523
+ }>
2524
+ _newAction<payment> INLINECALLDICT
2525
+ TPUSH
2526
+ }>
2527
+ executePayment PROCINLINE:<{
2528
+ 16 PUSHINT
2529
+ 1 PUSHINT
2530
+ 0 PUSHINT
2531
+ DUP
2532
+ GETFORWARDFEE
2533
+ s2 PUSH
2534
+ 2 INDEX
2535
+ ADD
2536
+ s0 s2 XCHG
2537
+ 1 INDEX
2538
+ <b b> PUSHREF
2539
+ s2 s3 XCHG
2540
+ 0 PUSHINT
2541
+ sendNonTerminalAction INLINECALLDICT
2542
+ TRUE
2543
+ }>
2544
+ lz::EpConfig::NewWithConnection PROCINLINE:<{
2545
+ 5003573331881257319 PUSHINT
2546
+ 0 PUSHINT
2547
+ s0 s9 XCHG2
2548
+ PAIR
2549
+ 8 PUSHINT
2550
+ s0 s8 XCHG2
2551
+ PAIR
2552
+ 8 PUSHINT
2553
+ s0 s7 XCHG2
2554
+ PAIR
2555
+ 8 PUSHINT
2556
+ s0 s6 XCHG2
2557
+ PAIR
2558
+ 8 PUSHINT
2559
+ s0 s5 XCHG2
2560
+ PAIR
2561
+ 8 PUSHINT
2562
+ s0 s4 XCHG2
2563
+ PAIR
2564
+ 8 PUSHINT
2565
+ s0 s3 XCHG2
2566
+ PAIR
2567
+ 6 PUSHINT
2568
+ ROT
2569
+ PAIR
2570
+ 8 TUPLE
2571
+ cl::declare INLINECALLDICT
2572
+ }>
2573
+ lz::EpConfig::New PROCINLINE:<{
2574
+ 0 PUSHINT
2575
+ s3 s3 s3 XCPU2
2576
+ s4 s0 s3 XCHG3
2577
+ lz::EpConfig::NewWithConnection INLINECALLDICT
2578
+ }>
2579
+ lz::EpConfig::NewWithDefaults PROCINLINE:<{
2580
+ TRUE
2581
+ 0 PUSHINT
2582
+ s0 s0 s0 PUSH3
2583
+ lz::EpConfig::New INLINECALLDICT
2584
+ }>
2585
+ lz::EpConfig::NewFrom PROCINLINE:<{
2586
+ TRUE
2587
+ 0 PUSHINT
2588
+ s3 s0 s0 XC2PU
2589
+ s2 s3 XCHG
2590
+ lz::EpConfig::New INLINECALLDICT
2591
+ }>
2592
+ lz::EpConfig::isValid PROCINLINE:<{
2593
+ CONT:<{
2594
+ c2 SAVE
2595
+ SAMEALTSAVE
2596
+ DUP
2597
+ 3 PUSHINT
2598
+ cl::get<address> INLINECALLDICT
2599
+ OVER
2600
+ 5 PUSHINT
2601
+ cl::get<address> INLINECALLDICT
2602
+ s0 s2 XCHG
2603
+ 7 PUSHINT
2604
+ cl::get<uint64> INLINECALLDICT
2605
+ s2 PUSH
2606
+ 0 EQINT
2607
+ OVER
2608
+ 0 NEQINT
2609
+ AND
2610
+ IF:<{
2611
+ 3 BLKDROP
2612
+ 1836 PUSHINT
2613
+ }>ELSE<{
2614
+ s2 PUSH
2615
+ 0 NEQINT
2616
+ SWAP
2617
+ NOW
2618
+ LEQ
2619
+ AND
2620
+ IFJMP:<{
2621
+ 2DROP
2622
+ 637 PUSHINT
2623
+ RETALT
2624
+ }>
2625
+ DUP
2626
+ 0 NEQINT
2627
+ s0 s2 XCHG
2628
+ EQUAL
2629
+ AND
2630
+ IFJMP:<{
2631
+ 1003 PUSHINT
2632
+ RETALT
2633
+ }>
2634
+ 1109 PUSHINT
2635
+ }>
2636
+ }>
2637
+ EXECUTE
2638
+ }>
2639
+ lz::Path::New PROCINLINE:<{
2640
+ 1885434984 PUSHINT
2641
+ 5 PUSHINT
2642
+ s0 s5 XCHG2
2643
+ PAIR
2644
+ 8 PUSHINT
2645
+ s0 s4 XCHG2
2646
+ PAIR
2647
+ 5 PUSHINT
2648
+ s0 s3 XCHG2
2649
+ PAIR
2650
+ 8 PUSHINT
2651
+ ROT
2652
+ PAIR
2653
+ 4 TUPLE
2654
+ cl::declare INLINECALLDICT
2655
+ }>
2656
+ lz::Path::endpointPath PROCINLINE:<{
2657
+ 0 PUSHINT
2658
+ TUCK
2659
+ lz::Path::New INLINECALLDICT
2660
+ }>
2661
+ lz::Path::reverse PROCINLINE:<{
2662
+ DUP
2663
+ 0 PUSHINT
2664
+ cl::get<uint32> INLINECALLDICT
2665
+ OVER
2666
+ 1 PUSHINT
2667
+ cl::get<address> INLINECALLDICT
2668
+ s2 PUSH
2669
+ 2 PUSHINT
2670
+ cl::get<uint32> INLINECALLDICT
2671
+ s0 s3 XCHG
2672
+ 3 PUSHINT
2673
+ cl::get<address> INLINECALLDICT
2674
+ -ROT
2675
+ lz::Path::New INLINECALLDICT
2676
+ }>
2677
+ lz::Path::optimizedReverse PROCINLINE:<{
2678
+ CTOS
2679
+ NEWC
2680
+ OVER
2681
+ 350 PUSHINT
2682
+ 0 PUSHINT
2683
+ SCUTFIRST
2684
+ STSLICER
2685
+ OVER
2686
+ 638 PUSHINT
2687
+ 288 PUSHINT
2688
+ SDSUBSTR
2689
+ STSLICER
2690
+ SWAP
2691
+ 350 PUSHINT
2692
+ 288 PUSHINT
2693
+ SDSUBSTR
2694
+ STSLICER
2695
+ ENDC
2696
+ }>
2697
+ lz::Packet::New PROCINLINE:<{
2698
+ 88379210032500 PUSHINT
2699
+ 9 PUSHINT
2700
+ s0 s4 XCHG2
2701
+ PAIR
2702
+ 9 PUSHINT
2703
+ s0 s3 XCHG2
2704
+ PAIR
2705
+ 6 PUSHINT
2706
+ ROT
2707
+ PAIR
2708
+ 8 PUSHINT
2709
+ 0 PUSHINT
2710
+ PAIR
2711
+ 4 TUPLE
2712
+ cl::declare INLINECALLDICT
2713
+ }>
2714
+ lz::Packet::nonceless PROCINLINE:<{
2715
+ 0 PUSHINT
2716
+ lz::Packet::New INLINECALLDICT
2717
+ }>
2718
+ lz::Packet::_assertValidLinkedList PROCINLINE:<{
2719
+ CONT:<{
2720
+ c2 SAVE
2721
+ SAMEALTSAVE
2722
+ SWAP
2723
+ CTOS
2724
+ SWAP
2725
+ REPEAT:<{
2726
+ DUP
2727
+ SBITREFS
2728
+ DUP
2729
+ 0 EQINT
2730
+ IFJMP:<{
2731
+ DROP
2732
+ NIP
2733
+ 3 MODPOW2#
2734
+ 0 NEQINT
2735
+ 1402 THROWIF
2736
+ RETALT
2737
+ }>
2738
+ 1 NEQINT
2739
+ SWAP
2740
+ 1016 PUSHINT
2741
+ NEQ
2742
+ OR
2743
+ 1402 THROWIF
2744
+ 0 PLDREFIDX
2745
+ CTOS
2746
+ }>
2747
+ DROP
2748
+ 1402 THROW
2749
+ }>
2750
+ EXECUTE
2751
+ }>
2752
+ lz::Packet::assertValidSendMessage PROCINLINE:<{
2753
+ 1 PUSHINT
2754
+ cl::get<cellRef> INLINECALLDICT
2755
+ 8 PUSHPOW2DEC
2756
+ lz::Packet::_assertValidLinkedList INLINECALLDICT
2757
+ }>
2758
+ lz::Packet::assertValidReceiveMessage PROCINLINE:<{
2759
+ 1 PUSHINT
2760
+ cl::get<cellRef> INLINECALLDICT
2761
+ 32 PUSHINT
2762
+ lz::Packet::_assertValidLinkedList INLINECALLDICT
2763
+ }>
2764
+ lz::Packet::calculateGuid PROCINLINE:<{
2765
+ OVER
2766
+ 3 PUSHINT
2767
+ cl::get<address> INLINECALLDICT
2768
+ s2 PUSH
2769
+ 2 PUSHINT
2770
+ cl::get<uint32> INLINECALLDICT
2771
+ s3 PUSH
2772
+ 1 PUSHINT
2773
+ cl::get<address> INLINECALLDICT
2774
+ s0 s4 XCHG
2775
+ 0 PUSHINT
2776
+ cl::get<uint32> INLINECALLDICT
2777
+ s0 s3 XCHG
2778
+ NEWC
2779
+ 64 STU
2780
+ s1 s3 XCHG
2781
+ 32 STU
2782
+ s1 s3 XCHG
2783
+ 256 STU
2784
+ 32 STU
2785
+ 256 STU
2786
+ 1 PUSHINT HASHEXT_KECCAK256
2787
+ }>
2788
+ lz::Packet::replaceTwoFieldsAtOffsets PROCINLINE:<{
2789
+ s4 PUSH
2790
+ 127 PUSHINT
2791
+ MOD
2792
+ 3 LSHIFT#
2793
+ s0 s5 XCHG
2794
+ 127 PUSHINT
2795
+ DIV
2796
+ s2 PUSH
2797
+ 127 PUSHINT
2798
+ MOD
2799
+ 3 LSHIFT#
2800
+ s0 s3 XCHG
2801
+ 127 PUSHINT
2802
+ DIV
2803
+ s0 s8 XCHG
2804
+ CTOS
2805
+ s5 PUSH
2806
+ 3 LSHIFT#
2807
+ s3 PUSH
2808
+ 3 LSHIFT#
2809
+ s8 s1 PUSH2
2810
+ ADD
2811
+ s6 s1 PUSH2
2812
+ ADD
2813
+ s9 s6 XCHG2
2814
+ MAX
2815
+ 127 GTINT
2816
+ s8 s5 PUSH2
2817
+ MAX
2818
+ 1016 PUSHINT
2819
+ GREATER
2820
+ OR
2821
+ 637 THROWIF
2822
+ s10 PUSH
2823
+ 0 EQINT
2824
+ IF:<{
2825
+ s3 POP
2826
+ s9 POP
2827
+ DUP
2828
+ NEWC
2829
+ s0 s8 XCHG
2830
+ 0 PUSHINT
2831
+ SCUTFIRST
2832
+ s1 s7 XCHG
2833
+ STSLICER
2834
+ s7 s0 s8 XCHG3
2835
+ STUX
2836
+ 0 PUSHINT
2837
+ s2 s4 XCPU
2838
+ SUB
2839
+ s2 s5 PUSH2
2840
+ s0 s4 XCHG
2841
+ s3 s6 XCHG
2842
+ -ROT
2843
+ SUBSLICE
2844
+ s1 s2 XCHG
2845
+ STSLICER
2846
+ s1 s0 s4 XCHG3
2847
+ STUX
2848
+ s2 PUSH
2849
+ SBITS
2850
+ ROT
2851
+ SUB
2852
+ s2 PUSH
2853
+ SREFS
2854
+ s2 s3 XCHG
2855
+ SCUTLAST
2856
+ STSLICER
2857
+ ENDC
2858
+ }>ELSE<{
2859
+ s4 POP
2860
+ s6 POP
2861
+ NIL
2862
+ 0 PUSHINT
2863
+ UNTIL:<{
2864
+ s0 s3 PUSH2
2865
+ EQUAL
2866
+ s4 s11 PUSH2
2867
+ EQUAL
2868
+ AND
2869
+ IF:<{
2870
+ s2 s8 PUSH2
2871
+ 0 PUSHINT
2872
+ SCUTFIRST
2873
+ s9 s8 PUSH2
2874
+ ADD
2875
+ 0 PUSHINT
2876
+ s8 s11 PUSH2
2877
+ SUB
2878
+ s11 PUSH
2879
+ SUB
2880
+ s1 s6 PUSH2
2881
+ 4 -ROLL
2882
+ SUBSLICE
2883
+ s4 PUSH
2884
+ SBITS
2885
+ s7 s8 PUSH2
2886
+ ADD
2887
+ SUB
2888
+ s5 PUSH
2889
+ SREFS
2890
+ s6 PUSH
2891
+ -ROT
2892
+ SCUTLAST
2893
+ NEWC
2894
+ s0 s3 XCHG2
2895
+ STSLICER
2896
+ s12 s10 s(-1) PU2XC
2897
+ STUX
2898
+ SWAP
2899
+ STSLICER
2900
+ s8 s6 s(-1) PU2XC
2901
+ STUX
2902
+ SWAP
2903
+ STSLICER
2904
+ s1 s2 XCHG
2905
+ TPUSH
2906
+ }>ELSE<{
2907
+ s0 s3 PUSH2
2908
+ EQUAL
2909
+ IF:<{
2910
+ NEWC
2911
+ s3 s9 PUSH2
2912
+ 0 PUSHINT
2913
+ SCUTFIRST
2914
+ STSLICER
2915
+ s10 s8 s(-1) PU2XC
2916
+ STUX
2917
+ s3 PUSH
2918
+ SBITS
2919
+ s9 s10 PUSH2
2920
+ ADD
2921
+ SUB
2922
+ s4 PUSH
2923
+ SREFS
2924
+ s5 PUSH
2925
+ -ROT
2926
+ SCUTLAST
2927
+ STSLICER
2928
+ s1 s2 XCHG
2929
+ TPUSH
2930
+ }>ELSE<{
2931
+ s0 s10 PUSH2
2932
+ EQUAL
2933
+ IF:<{
2934
+ NEWC
2935
+ s3 s6 PUSH2
2936
+ 0 PUSHINT
2937
+ SCUTFIRST
2938
+ STSLICER
2939
+ s7 s5 s(-1) PU2XC
2940
+ STUX
2941
+ s3 PUSH
2942
+ SBITS
2943
+ s6 s7 PUSH2
2944
+ ADD
2945
+ SUB
2946
+ s4 PUSH
2947
+ SREFS
2948
+ s5 PUSH
2949
+ -ROT
2950
+ SCUTLAST
2951
+ STSLICER
2952
+ s1 s2 XCHG
2953
+ TPUSH
2954
+ }>ELSE<{
2955
+ NEWC
2956
+ s3 PUSH
2957
+ STSLICER
2958
+ s1 s2 XCHG
2959
+ TPUSH
2960
+ }>
2961
+ }>
2962
+ }>
2963
+ s2 PUSH
2964
+ SREFS
2965
+ 0 GTINT
2966
+ IF:<{
2967
+ s0 s2 XCHG
2968
+ 0 PLDREFIDX
2969
+ CTOS
2970
+ s0 s2 XCHG
2971
+ }>
2972
+ SWAP
2973
+ INC
2974
+ s0 s10 PUSH2
2975
+ GEQ
2976
+ }>
2977
+ s1 s9 XCHG
2978
+ 9 BLKDROP
2979
+ s0 s1 PUSH2
2980
+ INDEXVAR
2981
+ ENDC
2982
+ WHILE:<{
2983
+ s2 PUSH
2984
+ 0 GTINT
2985
+ }>DO<{
2986
+ s0 s2 XCHG
2987
+ DEC
2988
+ 2DUP
2989
+ INDEXVAR
2990
+ s1 s3 XCHG
2991
+ STREF
2992
+ ENDC
2993
+ }>
2994
+ 2 1 BLKDROP2
2995
+ }>
2996
+ }>
2997
+ lz::ReceiveEpConfig::New PROCINLINE:<{
2998
+ 1519800015059241691490 PUSHINT
2999
+ 8 PUSHINT
3000
+ s0 s4 XCHG2
3001
+ PAIR
3002
+ 8 PUSHINT
3003
+ s0 s3 XCHG2
3004
+ PAIR
3005
+ 6 PUSHINT
3006
+ ROT
3007
+ PAIR
3008
+ TRIPLE
3009
+ cl::declare INLINECALLDICT
3010
+ }>
3011
+ lz::SendEpConfig::New PROCINLINE:<{
3012
+ 1538388647612560664167 PUSHINT
3013
+ 8 PUSHINT
3014
+ s0 s3 XCHG2
3015
+ PAIR
3016
+ 8 PUSHINT
3017
+ ROT
3018
+ PAIR
3019
+ PAIR
3020
+ cl::declare INLINECALLDICT
3021
+ }>
3022
+ md::ChannelNonceInfo::New PROCINLINE:<{
3023
+ 468961157306316544173679 PUSHINT
3024
+ 6 PUSHINT
3025
+ s0 s3 XCHG2
3026
+ PAIR
3027
+ 6 PUSHINT
3028
+ ROT
3029
+ PAIR
3030
+ PAIR
3031
+ cl::declare INLINECALLDICT
3032
+ }>
3033
+ md::CoinsAmount::New PROCINLINE:<{
3034
+ 7165061455270735220 PUSHINT
3035
+ 7 PUSHINT
3036
+ ROT
3037
+ PAIR
3038
+ SINGLE
3039
+ cl::declare INLINECALLDICT
3040
+ }>
3041
+ md::ExtendedMd::New PROCINLINE:<{
3042
+ 479181011289937837051236 PUSHINT
3043
+ 9 PUSHINT
3044
+ s0 s4 XCHG2
3045
+ PAIR
3046
+ 9 PUSHINT
3047
+ s0 s3 XCHG2
3048
+ PAIR
3049
+ 8 PUSHINT
3050
+ ROT
3051
+ PAIR
3052
+ TRIPLE
3053
+ cl::declare INLINECALLDICT
3054
+ }>
3055
+ md::LzReceiveStatus::New PROCINLINE:<{
3056
+ 1410766768500504753267 PUSHINT
3057
+ 0 PUSHINT
3058
+ s0 s3 XCHG2
3059
+ PAIR
3060
+ 6 PUSHINT
3061
+ ROT
3062
+ PAIR
3063
+ 7 PUSHINT
3064
+ 0 PUSHINT
3065
+ PAIR
3066
+ 9 PUSHINT
3067
+ <b b> PUSHREF
3068
+ PAIR
3069
+ 9 PUSHINT
3070
+ <b b> PUSHREF
3071
+ PAIR
3072
+ 8 PUSHINT
3073
+ 0 PUSHINT
3074
+ PAIR
3075
+ 9 PUSHINT
3076
+ cl::nullObject INLINECALLDICT
3077
+ PAIR
3078
+ 3 PUSHINT
3079
+ 0 PUSHINT
3080
+ PAIR
3081
+ 8 TUPLE
3082
+ cl::declare INLINECALLDICT
3083
+ }>
3084
+ md::LzReceiveStatus::NewFull PROCINLINE:<{
3085
+ s4 PUSH
3086
+ 32 PUSHINT
3087
+ lz::Packet::_assertValidLinkedList INLINECALLDICT
3088
+ s3 PUSH
3089
+ 32 PUSHINT
3090
+ lz::Packet::_assertValidLinkedList INLINECALLDICT
3091
+ 1410766768500504753267 PUSHINT
3092
+ 0 PUSHINT
3093
+ s0 s9 XCHG2
3094
+ PAIR
3095
+ 6 PUSHINT
3096
+ s0 s8 XCHG2
3097
+ PAIR
3098
+ 7 PUSHINT
3099
+ s0 s7 XCHG2
3100
+ PAIR
3101
+ 9 PUSHINT
3102
+ s0 s6 XCHG2
3103
+ PAIR
3104
+ 9 PUSHINT
3105
+ s0 s5 XCHG2
3106
+ PAIR
3107
+ 8 PUSHINT
3108
+ s0 s4 XCHG2
3109
+ PAIR
3110
+ 9 PUSHINT
3111
+ s0 s3 XCHG2
3112
+ PAIR
3113
+ 3 PUSHINT
3114
+ ROT
3115
+ PAIR
3116
+ 8 TUPLE
3117
+ cl::declare INLINECALLDICT
3118
+ }>
3119
+ md::LzSend::New PROCINLINE:<{
3120
+ 119272640966244 PUSHINT
3121
+ 6 PUSHINT
3122
+ 0 PUSHINT
3123
+ PAIR
3124
+ 8 PUSHINT
3125
+ 0 PUSHINT
3126
+ PAIR
3127
+ 8 PUSHINT
3128
+ 0 PUSHINT
3129
+ PAIR
3130
+ 9 PUSHINT
3131
+ s0 s6 XCHG2
3132
+ PAIR
3133
+ 7 PUSHINT
3134
+ s0 s10 XCHG2
3135
+ PAIR
3136
+ 7 PUSHINT
3137
+ s0 s9 XCHG2
3138
+ PAIR
3139
+ 9 PUSHINT
3140
+ s0 s8 XCHG2
3141
+ PAIR
3142
+ 9 PUSHINT
3143
+ s0 s7 XCHG2
3144
+ PAIR
3145
+ 9 PUSHINT
3146
+ s0 s5 XCHG2
3147
+ PAIR
3148
+ s8 s7 s0 XCHG3
3149
+ s5 s6 XCHG
3150
+ s5 s9 XCHG
3151
+ s4 s3 s0 XCHG3
3152
+ s9 s9 s0 XCHG3
3153
+ 9 TUPLE
3154
+ cl::declare INLINECALLDICT
3155
+ }>
3156
+ md::lzSend::fillRequestInfo PROCINLINE:<{
3157
+ s0 s3 XCHG
3158
+ CTOS
3159
+ NEWC
3160
+ OVER
3161
+ 350 PUSHINT
3162
+ 0 PUSHINT
3163
+ SCUTFIRST
3164
+ STSLICER
3165
+ s1 s3 XCHG
3166
+ 64 STU
3167
+ 256 STU
3168
+ s1 s2 XCHG
3169
+ 256 STU
3170
+ SWAP
3171
+ 926 PUSHINT
3172
+ 0 PUSHINT
3173
+ SSKIPFIRST
3174
+ STSLICER
3175
+ ENDC
3176
+ }>
3177
+ md::MdAddress::New PROCINLINE:<{
3178
+ 85092989166706 PUSHINT
3179
+ 9 PUSHINT
3180
+ s0 s3 XCHG2
3181
+ PAIR
3182
+ 8 PUSHINT
3183
+ ROT
3184
+ PAIR
3185
+ PAIR
3186
+ cl::declare INLINECALLDICT
3187
+ }>
3188
+ md::MdObj::New PROCINLINE:<{
3189
+ 332395405930 PUSHINT
3190
+ 9 PUSHINT
3191
+ s0 s3 XCHG2
3192
+ PAIR
3193
+ 9 PUSHINT
3194
+ ROT
3195
+ PAIR
3196
+ PAIR
3197
+ cl::declare INLINECALLDICT
3198
+ }>
3199
+ md::MessagingReceipt::New PROCINLINE:<{
3200
+ 516866776333078755897460 PUSHINT
3201
+ 9 PUSHINT
3202
+ s0 s5 XCHG2
3203
+ PAIR
3204
+ 7 PUSHINT
3205
+ s0 s4 XCHG2
3206
+ PAIR
3207
+ 7 PUSHINT
3208
+ s0 s3 XCHG2
3209
+ PAIR
3210
+ 4 PUSHINT
3211
+ ROT
3212
+ PAIR
3213
+ 4 TUPLE
3214
+ cl::declare INLINECALLDICT
3215
+ }>
3216
+ md::MsglibSendCallback::New PROCINLINE:<{
3217
+ 7811883139124708194 PUSHINT
3218
+ 7 PUSHINT
3219
+ s0 s12 XCHG2
3220
+ PAIR
3221
+ 7 PUSHINT
3222
+ s0 s11 XCHG2
3223
+ PAIR
3224
+ 9 PUSHINT
3225
+ s0 s10 XCHG2
3226
+ PAIR
3227
+ 9 PUSHINT
3228
+ s0 s9 XCHG2
3229
+ PAIR
3230
+ 9 PUSHINT
3231
+ s0 s8 XCHG2
3232
+ PAIR
3233
+ 4 PUSHINT
3234
+ s0 s7 XCHG2
3235
+ PAIR
3236
+ 3 PUSHINT
3237
+ s0 s6 XCHG2
3238
+ PAIR
3239
+ 4 PUSHINT
3240
+ s0 s5 XCHG2
3241
+ PAIR
3242
+ 3 PUSHINT
3243
+ s0 s4 XCHG2
3244
+ PAIR
3245
+ 9 PUSHINT
3246
+ s0 s3 XCHG2
3247
+ PAIR
3248
+ 3 PUSHINT
3249
+ ROT
3250
+ PAIR
3251
+ 11 TUPLE
3252
+ cl::declare INLINECALLDICT
3253
+ }>
3254
+ serializePayees PROCINLINE:<{
3255
+ DUP
3256
+ TLEN
3257
+ DUP
3258
+ 0 EQINT
3259
+ IF:<{
3260
+ 2DROP
3261
+ <b b> PUSHREF
3262
+ }>ELSE<{
3263
+ NEWC
3264
+ 1 PUSHINT
3265
+ WHILE:<{
3266
+ s0 s2 PUSH2
3267
+ LEQ
3268
+ }>DO<{
3269
+ s2 s0 PUSH2
3270
+ SUB
3271
+ s4 s(-1) PUXC
3272
+ INDEXVAR
3273
+ OVER
3274
+ 3 PUSHINT
3275
+ MOD
3276
+ 0 EQINT
3277
+ IF:<{
3278
+ DUP
3279
+ 1 INDEX
3280
+ SWAP
3281
+ 0 INDEX
3282
+ s0 s3 XCHG
3283
+ ENDC
3284
+ NEWC
3285
+ STREF
3286
+ s1 s3 XCHG
3287
+ 256 STU
3288
+ s1 s2 XCHG
3289
+ 64 STU
3290
+ }>ELSE<{
3291
+ DUP
3292
+ 1 INDEX
3293
+ SWAP
3294
+ 0 INDEX
3295
+ s0 s3 XCHG2
3296
+ 256 STU
3297
+ s1 s2 XCHG
3298
+ 64 STU
3299
+ }>
3300
+ SWAP
3301
+ INC
3302
+ }>
3303
+ s1 s3 XCHG
3304
+ 3 BLKDROP
3305
+ ENDC
3306
+ }>
3307
+ }>
3308
+ deserializePayees PROCINLINE:<{
3309
+ CTOS
3310
+ DUP
3311
+ SEMPTY
3312
+ IF:<{
3313
+ DROP
3314
+ NIL
3315
+ }>ELSE<{
3316
+ NIL
3317
+ WHILE:<{
3318
+ OVER
3319
+ SEMPTY
3320
+ NOT
3321
+ }>DO<{
3322
+ SWAP
3323
+ 256 LDU SWAP
3324
+ SWAP
3325
+ 64 LDU SWAP
3326
+ s1 s2 XCHG
3327
+ PAIR
3328
+ s1 s2 XCHG
3329
+ TPUSH
3330
+ OVER
3331
+ SBITS
3332
+ 320 PUSHINT
3333
+ GEQ
3334
+ IF:<{
3335
+ SWAP
3336
+ 256 LDU SWAP
3337
+ SWAP
3338
+ 64 LDU SWAP
3339
+ s1 s2 XCHG
3340
+ PAIR
3341
+ s1 s2 XCHG
3342
+ TPUSH
3343
+ }>
3344
+ OVER
3345
+ SBITS
3346
+ 320 PUSHINT
3347
+ GEQ
3348
+ IF:<{
3349
+ SWAP
3350
+ 256 LDU SWAP
3351
+ SWAP
3352
+ 64 LDU SWAP
3353
+ s1 s2 XCHG
3354
+ PAIR
3355
+ s1 s2 XCHG
3356
+ TPUSH
3357
+ }>
3358
+ OVER
3359
+ SREFS
3360
+ 0 GTINT
3361
+ IF:<{
3362
+ SWAP
3363
+ 0 PLDREFIDX
3364
+ CTOS
3365
+ SWAP
3366
+ }>
3367
+ }>
3368
+ NIP
3369
+ }>
3370
+ }>
3371
+ md::Nonce::New PROCINLINE:<{
3372
+ 474315907941 PUSHINT
3373
+ 6 PUSHINT
3374
+ ROT
3375
+ PAIR
3376
+ SINGLE
3377
+ cl::declare INLINECALLDICT
3378
+ }>
3379
+ md::PacketId::New PROCINLINE:<{
3380
+ 482839120228 PUSHINT
3381
+ 9 PUSHINT
3382
+ s0 s3 XCHG2
3383
+ PAIR
3384
+ 6 PUSHINT
3385
+ ROT
3386
+ PAIR
3387
+ PAIR
3388
+ cl::declare INLINECALLDICT
3389
+ }>
3390
+ md::PacketSent::New PROCINLINE:<{
3391
+ 31643344751128180 PUSHINT
3392
+ 7 PUSHINT
3393
+ s0 s9 XCHG2
3394
+ PAIR
3395
+ 7 PUSHINT
3396
+ s0 s8 XCHG2
3397
+ PAIR
3398
+ 9 PUSHINT
3399
+ s0 s7 XCHG2
3400
+ PAIR
3401
+ 9 PUSHINT
3402
+ s0 s6 XCHG2
3403
+ PAIR
3404
+ 9 PUSHINT
3405
+ s0 s5 XCHG2
3406
+ PAIR
3407
+ 6 PUSHINT
3408
+ s0 s4 XCHG2
3409
+ PAIR
3410
+ 8 PUSHINT
3411
+ s0 s3 XCHG2
3412
+ PAIR
3413
+ 9 PUSHINT
3414
+ ROT
3415
+ PAIR
3416
+ 8 TUPLE
3417
+ cl::declare INLINECALLDICT
3418
+ }>
3419
+ BaseStorage::New PROCINLINE:<{
3420
+ 1814802986876646945381 PUSHINT
3421
+ 8 PUSHINT
3422
+ ROT
3423
+ PAIR
3424
+ 0 PUSHINT
3425
+ FALSE
3426
+ PAIR
3427
+ 0 PUSHINT
3428
+ FALSE
3429
+ PAIR
3430
+ 9 PUSHINT
3431
+ cl::nullObject INLINECALLDICT
3432
+ PAIR
3433
+ 4 TUPLE
3434
+ cl::declare INLINECALLDICT
3435
+ }>
3436
+ getOwner PROCINLINE:<{
3437
+ getContractStorage INLINECALLDICT
3438
+ 0 PUSHINT
3439
+ cl::get<objRef> INLINECALLDICT
3440
+ 0 PUSHINT
3441
+ cl::get<address> INLINECALLDICT
3442
+ }>
3443
+ getInitialStorage PROCINLINE:<{
3444
+ getContractStorage INLINECALLDICT
3445
+ 0 PUSHINT
3446
+ cl::get<objRef> INLINECALLDICT
3447
+ 3 PUSHINT
3448
+ cl::get<objRef> INLINECALLDICT
3449
+ }>
3450
+ assertAuthenticated PROCINLINE:<{
3451
+ getContractStorage INLINECALLDICT
3452
+ 0 PUSHINT
3453
+ cl::get<objRef> INLINECALLDICT
3454
+ 1 PUSHINT
3455
+ cl::get<bool> INLINECALLDICT
3456
+ 2032 THROWIFNOT
3457
+ }>
3458
+ authenticate PROC:<{
3459
+ assertOwner INLINECALLDICT
3460
+ getContractStorage INLINECALLDICT
3461
+ 0 PUSHINT
3462
+ 2DUP
3463
+ cl::get<objRef> INLINECALLDICT
3464
+ 3 PUSHINT
3465
+ getContractStorage INLINECALLDICT
3466
+ cl::set INLINECALLDICT
3467
+ 1 PUSHINT
3468
+ TRUE
3469
+ cl::set INLINECALLDICT
3470
+ cl::set INLINECALLDICT
3471
+ setContractStorage INLINECALLDICT
3472
+ }>
3473
+ _initialize PROCINLINE:<{
3474
+ DROP
3475
+ preamble INLINECALLDICT
3476
+ OVER
3477
+ 1 PUSHINT
3478
+ cl::get<objRef> INLINECALLDICT
3479
+ DUP
3480
+ 0 PUSHINT
3481
+ cl::get<uint32> INLINECALLDICT
3482
+ 0 EQINT
3483
+ OVER
3484
+ 1 PUSHINT
3485
+ cl::get<address> INLINECALLDICT
3486
+ 0 EQINT
3487
+ OR
3488
+ OVER
3489
+ 2 PUSHINT
3490
+ cl::get<uint32> INLINECALLDICT
3491
+ 0 EQINT
3492
+ OR
3493
+ SWAP
3494
+ 3 PUSHINT
3495
+ cl::get<address> INLINECALLDICT
3496
+ 0 EQINT
3497
+ OR
3498
+ 169 THROWIF
3499
+ 9 PUSHINT
3500
+ DeterministicInsertionCircularQueue::create CALLDICT
3501
+ s2 s3 XCHG
3502
+ cl::set INLINECALLDICT
3503
+ 5 PUSHINT
3504
+ DeterministicInsertionCircularQueue::create CALLDICT
3505
+ cl::set INLINECALLDICT
3506
+ SWAP
3507
+ }>
3508
+ DeterministicInsertionCircularQueue::_buildLevel PROCINLINE:<{
3509
+ OVER
3510
+ 0 EQINT
3511
+ IF:<{
3512
+ NIP
3513
+ DUP
3514
+ NEWC
3515
+ STREF
3516
+ s1 s(-1) PUXC
3517
+ STREF
3518
+ s1 s(-1) PUXC
3519
+ STREF
3520
+ STREF
3521
+ ENDC
3522
+ }>ELSE<{
3523
+ SWAP
3524
+ DEC
3525
+ s0 s1 PUSH2
3526
+ DeterministicInsertionCircularQueue::_buildLevel INLINECALLDICT
3527
+ s1 s2 PUSH2
3528
+ DeterministicInsertionCircularQueue::_buildLevel INLINECALLDICT
3529
+ s2 s3 PUSH2
3530
+ DeterministicInsertionCircularQueue::_buildLevel INLINECALLDICT
3531
+ s3 s4 XCHG2
3532
+ DeterministicInsertionCircularQueue::_buildLevel INLINECALLDICT
3533
+ NEWC
3534
+ STREF
3535
+ s1 s3 XCHG
3536
+ STREF
3537
+ STREF
3538
+ STREF
3539
+ ENDC
3540
+ }>
3541
+ }>
3542
+ DeterministicInsertionCircularQueue::get PROCINLINE:<{
3543
+ 10 PUSHPOW2DEC
3544
+ MOD
3545
+ SWAP
3546
+ CTOS
3547
+ OVER
3548
+ 8 RSHIFT#
3549
+ PLDREFVAR
3550
+ CTOS
3551
+ OVER
3552
+ 8 MODPOW2#
3553
+ 6 RSHIFT#
3554
+ PLDREFVAR
3555
+ CTOS
3556
+ OVER
3557
+ 6 MODPOW2#
3558
+ 4 RSHIFT#
3559
+ PLDREFVAR
3560
+ CTOS
3561
+ OVER
3562
+ 4 MODPOW2#
3563
+ 2 RSHIFT#
3564
+ PLDREFVAR
3565
+ CTOS
3566
+ SWAP
3567
+ 2 MODPOW2#
3568
+ PLDREFVAR
3569
+ CTOS
3570
+ 1 LDI
3571
+ 8 PUSHINT
3572
+ LDUX
3573
+ s2 PUSH
3574
+ IF:<{
3575
+ DUP
3576
+ 64 PLDU
3577
+ SWAP
3578
+ 0 PLDREFIDX
3579
+ s0 s0 s3 XCHG3
3580
+ }>ELSE<{
3581
+ 2DROP
3582
+ -1 PUSHINT
3583
+ <b b> PUSHREF
3584
+ s0 s0 s2 XCPUXC
3585
+ }>
3586
+ }>
3587
+ DeterministicInsertionCircularQueue::_setRaw PROCINLINE:<{
3588
+ SWAP
3589
+ 10 PUSHPOW2DEC
3590
+ MOD
3591
+ s0 s2 XCHG
3592
+ CTOS
3593
+ s2 PUSH
3594
+ 8 RSHIFT#
3595
+ s3 PUSH
3596
+ 8 MODPOW2#
3597
+ 6 RSHIFT#
3598
+ s4 PUSH
3599
+ 6 MODPOW2#
3600
+ 4 RSHIFT#
3601
+ s5 PUSH
3602
+ 4 MODPOW2#
3603
+ 2 RSHIFT#
3604
+ s0 s6 XCHG
3605
+ 2 MODPOW2#
3606
+ s4 s3 PUSH2
3607
+ PLDREFVAR
3608
+ CTOS
3609
+ s0 s3 PUSH2
3610
+ PLDREFVAR
3611
+ CTOS
3612
+ s0 s3 PUSH2
3613
+ PLDREFVAR
3614
+ CTOS
3615
+ s0 s9 PUSH2
3616
+ PLDREFVAR
3617
+ CTOS
3618
+ NEWC
3619
+ OVER
3620
+ 0 PUSHINT
3621
+ s7 PUSH
3622
+ SCUTFIRST
3623
+ STSLICER
3624
+ s1 s10 XCHG
3625
+ STREF
3626
+ 0 PUSHINT
3627
+ 3 PUSHINT
3628
+ s0 s6 XCHG2
3629
+ SUB
3630
+ s10 s5 s0 XCHG3
3631
+ SCUTLAST
3632
+ s1 s3 XCHG
3633
+ STSLICER
3634
+ ENDC
3635
+ NEWC
3636
+ s8 PUSH
3637
+ 0 PUSHINT
3638
+ s11 PUSH
3639
+ SCUTFIRST
3640
+ STSLICER
3641
+ STREF
3642
+ 0 PUSHINT
3643
+ 3 PUSHINT
3644
+ s0 s10 XCHG2
3645
+ SUB
3646
+ s8 s9 s0 XCHG3
3647
+ SCUTLAST
3648
+ s1 s7 XCHG
3649
+ STSLICER
3650
+ ENDC
3651
+ NEWC
3652
+ s7 PUSH
3653
+ 0 PUSHINT
3654
+ s4 PUSH
3655
+ SCUTFIRST
3656
+ STSLICER
3657
+ STREF
3658
+ 0 PUSHINT
3659
+ 3 PUSHINT
3660
+ s0 s3 XCHG2
3661
+ SUB
3662
+ s7 s7 s0 XCHG3
3663
+ SCUTLAST
3664
+ s1 s5 XCHG
3665
+ STSLICER
3666
+ ENDC
3667
+ NEWC
3668
+ s4 PUSH
3669
+ 0 PUSHINT
3670
+ s7 PUSH
3671
+ SCUTFIRST
3672
+ STSLICER
3673
+ STREF
3674
+ 0 PUSHINT
3675
+ 3 PUSHINT
3676
+ s0 s6 XCHG2
3677
+ SUB
3678
+ 5 1 REVERSE
3679
+ SCUTLAST
3680
+ s1 s3 XCHG
3681
+ STSLICER
3682
+ ENDC
3683
+ NEWC
3684
+ s3 PUSH
3685
+ 0 PUSHINT
3686
+ s4 PUSH
3687
+ SCUTFIRST
3688
+ STSLICER
3689
+ STREF
3690
+ 0 PUSHINT
3691
+ 3 PUSHINT
3692
+ s0 s3 XCHG2
3693
+ SUB
3694
+ s3 s3 s0 XCHG3
3695
+ SCUTLAST
3696
+ STSLICER
3697
+ ENDC
3698
+ }>
3699
+ DeterministicInsertionCircularQueue::set PROCINLINE:<{
3700
+ TRUE
3701
+ NEWC
3702
+ 1 STI
3703
+ 8 STU
3704
+ s2 s(-1) PUXC
3705
+ 64 STU
3706
+ STREF
3707
+ ENDC
3708
+ DeterministicInsertionCircularQueue::_setRaw INLINECALLDICT
3709
+ }>
3710
+ DeterministicInsertionCircularQueue::delete PROCINLINE:<{
3711
+ <b b> PUSHREF
3712
+ 0 PUSHINT
3713
+ DUP
3714
+ FALSE
3715
+ NEWC
3716
+ 1 STI
3717
+ 8 STU
3718
+ 64 STU
3719
+ STREF
3720
+ ENDC
3721
+ DeterministicInsertionCircularQueue::_setRaw INLINECALLDICT
3722
+ }>
3723
+ DeterministicInsertionCircularQueue::create PROC:<{
3724
+ <b b> PUSHREF
3725
+ 0 PUSHINT
3726
+ DUP
3727
+ FALSE
3728
+ NEWC
3729
+ 1 STI
3730
+ 8 STU
3731
+ 64 STU
3732
+ STREF
3733
+ ENDC
3734
+ 4 PUSHINT
3735
+ SWAP
3736
+ DeterministicInsertionCircularQueue::_buildLevel INLINECALLDICT
3737
+ }>
3738
+ POOO::set PROCINLINE:<{
3739
+ DUP
3740
+ 0 LESSINT
3741
+ 1587 THROWIF
3742
+ OVER
3743
+ 1 PUSHINT
3744
+ cl::get<cellRef> INLINECALLDICT
3745
+ CTOS
3746
+ s2 PUSH
3747
+ 0 PUSHINT
3748
+ cl::get<uint64> INLINECALLDICT
3749
+ s2 s0 PUSH2
3750
+ LESS
3751
+ IF:<{
3752
+ 3 BLKDROP
3753
+ }>ELSE<{
3754
+ s2 s2 XCPU
3755
+ SUB
3756
+ 1 PUSHINT
3757
+ NEWC
3758
+ 2OVER
3759
+ 0 PUSHINT
3760
+ SCUTFIRST
3761
+ STSLICER
3762
+ 1 STU
3763
+ 10 PUSHPOW2DEC
3764
+ ROT
3765
+ SUB
3766
+ DEC
3767
+ s1 s2 XCHG
3768
+ 0 PUSHINT
3769
+ SCUTLAST
3770
+ STSLICER
3771
+ ENDC CTOS
3772
+ LDONES
3773
+ 1 PUSHINT
3774
+ NEWC
3775
+ ROT
3776
+ STSLICER
3777
+ s2 PUSH
3778
+ STZEROES
3779
+ ENDC
3780
+ s2 s4 XCHG
3781
+ cl::set INLINECALLDICT
3782
+ SWAP
3783
+ 0 PUSHINT
3784
+ s0 s3 XCHG
3785
+ ADD
3786
+ s1 s2 XCHG
3787
+ cl::set INLINECALLDICT
3788
+ }>
3789
+ }>
3790
+ POOO::New PROCINLINE:<{
3791
+ 1347374927 PUSHINT
3792
+ 6 PUSHINT
3793
+ 1 PUSHINT
3794
+ PAIR
3795
+ 9 PUSHINT
3796
+ NEWC
3797
+ 10 PUSHPOW2DEC
3798
+ STZEROES
3799
+ ENDC
3800
+ PAIR
3801
+ PAIR
3802
+ cl::declare INLINECALLDICT
3803
+ }>
3804
+ POOO::NewWithBitsSets PROC:<{
3805
+ 1347374927 PUSHINT
3806
+ 6 PUSHINT
3807
+ 1 PUSHINT
3808
+ PAIR
3809
+ 9 PUSHINT
3810
+ NEWC
3811
+ 1 PUSHINT
3812
+ STZEROES
3813
+ s4 s5 PUXC
3814
+ SUB
3815
+ s1 s5 XCHG
3816
+ STONES
3817
+ 10 PUSHPOW2DEC
3818
+ s0 s4 XCHG2
3819
+ SUB
3820
+ s1 s3 XCHG
3821
+ STZEROES
3822
+ ENDC
3823
+ s1 s3 XCHG
3824
+ PAIR
3825
+ PAIR
3826
+ cl::declare INLINECALLDICT
3827
+ }>
3828
+ POOO::isBitSet PROCINLINE:<{
3829
+ OVER
3830
+ 0 PUSHINT
3831
+ cl::get<uint64> INLINECALLDICT
3832
+ SUB
3833
+ SWAP
3834
+ 1 PUSHINT
3835
+ cl::get<cellRef> INLINECALLDICT
3836
+ CTOS
3837
+ SWAP
3838
+ 1 PUSHINT
3839
+ SDSUBSTR
3840
+ 1 PLDU
3841
+ 1 EQINT
3842
+ }>
3843
+ POOO::maxSettableBit PROCINLINE:<{
3844
+ 0 PUSHINT
3845
+ cl::get<uint64> INLINECALLDICT
3846
+ 1022 PUSHINT
3847
+ ADD
3848
+ }>
3849
+ Channel::New PROCINLINE:<{
3850
+ 27980790368200044 PUSHINT
3851
+ 9 PUSHINT
3852
+ s0 s4 XCHG
3853
+ BaseStorage::New INLINECALLDICT
3854
+ s1 s4 XCHG
3855
+ PAIR
3856
+ 9 PUSHINT
3857
+ s0 s3 XCHG2
3858
+ PAIR
3859
+ 8 PUSHINT
3860
+ ROT
3861
+ PAIR
3862
+ 9 PUSHINT
3863
+ lz::EpConfig::NewWithDefaults INLINECALLDICT
3864
+ PAIR
3865
+ 6 PUSHINT
3866
+ 0 PUSHINT
3867
+ PAIR
3868
+ 9 PUSHINT
3869
+ <b b> PUSHREF
3870
+ PAIR
3871
+ 6 PUSHINT
3872
+ 0 PUSHINT
3873
+ PAIR
3874
+ 9 PUSHINT
3875
+ POOO::New INLINECALLDICT
3876
+ PAIR
3877
+ 9 PUSHINT
3878
+ POOO::New INLINECALLDICT
3879
+ PAIR
3880
+ 9 PUSHINT
3881
+ <b b> PUSHREF
3882
+ PAIR
3883
+ 7 PUSHINT
3884
+ 0 PUSHINT
3885
+ PAIR
3886
+ 11 TUPLE
3887
+ cl::declare INLINECALLDICT
3888
+ }>
3889
+ _assertEqualPaths PROCINLINE:<{
3890
+ SWAP
3891
+ cl::hash INLINECALLDICT
3892
+ SWAP
3893
+ cl::hash INLINECALLDICT
3894
+ EQUAL
3895
+ 169 THROWIFNOT
3896
+ }>
3897
+ _buildSendRequestQueueEntry PROCINLINE:<{
3898
+ cl::hash INLINECALLDICT
3899
+ NEWC
3900
+ 256 STU
3901
+ ENDC
3902
+ }>
3903
+ _readSendRequestQueueEntry PROCINLINE:<{
3904
+ CONT:<{
3905
+ c2 SAVE
3906
+ SAMEALTSAVE
3907
+ DUP
3908
+ ISNULL
3909
+ IF:<{
3910
+ DROP
3911
+ 0 PUSHINT
3912
+ }>ELSE<{
3913
+ DUP
3914
+ cell_is_empty INLINECALLDICT
3915
+ IFJMP:<{
3916
+ DROP
3917
+ 0 PUSHINT
3918
+ RETALT
3919
+ }>
3920
+ CTOS
3921
+ 256 PLDU
3922
+ }>
3923
+ }>
3924
+ EXECUTE
3925
+ }>
3926
+ _nonceCommittable PROCINLINE:<{
3927
+ CONT:<{
3928
+ c2 SAVE
3929
+ SAMEALTSAVE
3930
+ DUP
3931
+ 1 LESSINT
3932
+ 248 THROWIF
3933
+ getContractStorage INLINECALLDICT
3934
+ DUP
3935
+ 8 PUSHINT
3936
+ cl::get<objRef> INLINECALLDICT
3937
+ DUP
3938
+ 0 PUSHINT
3939
+ cl::get<uint64> INLINECALLDICT
3940
+ s0 s2 XCHG
3941
+ 9 PUSHINT
3942
+ cl::get<cellRef> INLINECALLDICT
3943
+ s3 PUSH
3944
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
3945
+ s6 s5 PUSH2
3946
+ EQUAL
3947
+ s4 s7 XCPU
3948
+ EQUAL
3949
+ s1 s4 XCHG
3950
+ AND
3951
+ OVER
3952
+ 1 NEQINT
3953
+ AND
3954
+ IF:<{
3955
+ DROP
3956
+ 2 2 BLKDROP2
3957
+ s2 POP
3958
+ TRUE
3959
+ SWAP
3960
+ IF:<{
3961
+ }>ELSE<{
3962
+ PUSHNULL
3963
+ s2 POP
3964
+ }>
3965
+ SWAP
3966
+ }>ELSE<{
3967
+ s5 s4 PUSH2
3968
+ GEQ
3969
+ s0 s5 XCHG
3970
+ 10 PUSHPOW2DEC
3971
+ ADD
3972
+ s6 s(-1) PUXC
3973
+ LESS
3974
+ s1 s5 XCHG
3975
+ AND
3976
+ s0 s4 XCHG
3977
+ 1 NEQINT
3978
+ s1 s4 XCHG
3979
+ AND
3980
+ IF:<{
3981
+ s0 s3 XCHG
3982
+ POOO::isBitSet INLINECALLDICT
3983
+ IFNOTJMP:<{
3984
+ TRUE
3985
+ s0 s2 XCHG
3986
+ IF:<{
3987
+ }>ELSE<{
3988
+ DROP
3989
+ PUSHNULL
3990
+ }>
3991
+ RETALT
3992
+ }>
3993
+ 2DROP
3994
+ }>ELSE<{
3995
+ 4 BLKDROP
3996
+ }>
3997
+ FALSE
3998
+ PUSHNULL
3999
+ }>
4000
+ }>
4001
+ EXECUTE
4002
+ }>
4003
+ _getExecutablePacket PROCINLINE:<{
4004
+ DUP
4005
+ _nonceCommittable INLINECALLDICT
4006
+ getContractStorage INLINECALLDICT
4007
+ 7 PUSHINT
4008
+ cl::get<objRef> INLINECALLDICT
4009
+ 0 PUSHINT
4010
+ cl::get<uint64> INLINECALLDICT
4011
+ s0 s2 XCHG
4012
+ NOT
4013
+ 2SWAP
4014
+ GEQ
4015
+ OR
4016
+ OVER
4017
+ ISNULL
4018
+ OR
4019
+ 1529 THROWIF
4020
+ }>
4021
+ _assertNonceCommittable PROCINLINE:<{
4022
+ _nonceCommittable INLINECALLDICT
4023
+ DROP
4024
+ 290 THROWIFNOT
4025
+ }>
4026
+ _viewInboundNonce PROC:<{
4027
+ getContractStorage INLINECALLDICT
4028
+ 7 PUSHINT
4029
+ cl::get<objRef> INLINECALLDICT
4030
+ 0 PUSHINT
4031
+ cl::get<uint64> INLINECALLDICT
4032
+ DEC
4033
+ }>
4034
+ _viewExecutionStatus PROC:<{
4035
+ c2 SAVE
4036
+ SAMEALTSAVE
4037
+ getContractStorage INLINECALLDICT
4038
+ DUP
4039
+ 8 PUSHINT
4040
+ cl::get<objRef> INLINECALLDICT
4041
+ DUP
4042
+ 0 PUSHINT
4043
+ cl::get<uint64> INLINECALLDICT
4044
+ s2 PUSH
4045
+ 7 PUSHINT
4046
+ cl::get<objRef> INLINECALLDICT
4047
+ DUP
4048
+ 0 PUSHINT
4049
+ cl::get<uint64> INLINECALLDICT
4050
+ _viewInboundNonce CALLDICT
4051
+ s6 s3 PUSH2
4052
+ LESS
4053
+ DUP
4054
+ NOT
4055
+ s0 s5 XCHG
4056
+ 10 PUSHPOW2DEC
4057
+ ADD
4058
+ s8 s(-1) PUXC
4059
+ LESS
4060
+ s1 s5 XCHG
4061
+ AND
4062
+ IF:<{
4063
+ s4 s6 XCPU
4064
+ POOO::isBitSet INLINECALLDICT
4065
+ s1 s3 XCHG
4066
+ OR
4067
+ s0 s2 XCHG
4068
+ }>ELSE<{
4069
+ s4 POP
4070
+ }>
4071
+ s5 s0 PUSH2
4072
+ LESS
4073
+ DUP
4074
+ NOT
4075
+ s0 s2 XCHG
4076
+ 10 PUSHPOW2DEC
4077
+ ADD
4078
+ s7 s(-1) PUXC
4079
+ LESS
4080
+ s1 s2 XCHG
4081
+ AND
4082
+ IF:<{
4083
+ s1 s5 XCPU
4084
+ POOO::isBitSet INLINECALLDICT
4085
+ OR
4086
+ }>ELSE<{
4087
+ NIP
4088
+ }>
4089
+ IFNOTJMP:<{
4090
+ 4 BLKDROP
4091
+ 0 PUSHINT
4092
+ }>
4093
+ IFJMP:<{
4094
+ 3 BLKDROP
4095
+ 3 PUSHINT
4096
+ RETALT
4097
+ }>
4098
+ SWAP
4099
+ 9 PUSHINT
4100
+ cl::get<cellRef> INLINECALLDICT
4101
+ s2 PUSH
4102
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4103
+ s1 s3 XCHG
4104
+ 3 BLKDROP
4105
+ 1 EQINT
4106
+ IFJMP:<{
4107
+ 2DROP
4108
+ 4 PUSHINT
4109
+ }>
4110
+ LEQ
4111
+ IFJMP:<{
4112
+ 2 PUSHINT
4113
+ RETALT
4114
+ }>
4115
+ 1 PUSHINT
4116
+ }>
4117
+ _assertEndpoint PROCINLINE:<{
4118
+ getCaller INLINECALLDICT
4119
+ getContractStorage INLINECALLDICT
4120
+ 2 PUSHINT
4121
+ cl::get<address> INLINECALLDICT
4122
+ EQUAL
4123
+ 1406 THROWIFNOT
4124
+ }>
4125
+ _assertSendMsglib PROCINLINE:<{
4126
+ getContractStorage INLINECALLDICT
4127
+ DROP
4128
+ 0 PUSHINT
4129
+ cl::get<objRef> INLINECALLDICT
4130
+ 2 PUSHINT
4131
+ cl::get<objRef> INLINECALLDICT
4132
+ 1 PUSHINT
4133
+ cl::get<address> INLINECALLDICT
4134
+ getCaller INLINECALLDICT
4135
+ SWAP
4136
+ EQUAL
4137
+ 1386 THROWIFNOT
4138
+ }>
4139
+ _assertOApp PROCINLINE:<{
4140
+ getCaller INLINECALLDICT
4141
+ getContractStorage INLINECALLDICT
4142
+ 1 PUSHINT
4143
+ cl::get<objRef> INLINECALLDICT
4144
+ 1 PUSHINT
4145
+ cl::get<uint256> INLINECALLDICT
4146
+ EQUAL
4147
+ 922 THROWIFNOT
4148
+ }>
4149
+ setEpConfigOApp PROCINLINE:<{
4150
+ preamble INLINECALLDICT
4151
+ s2 PUSH
4152
+ lz::EpConfig::isValid INLINECALLDICT
4153
+ DUP
4154
+ 1109 PUSHINT
4155
+ NEQ
4156
+ THROWANYIF
4157
+ SWAP
4158
+ 3 PUSHINT
4159
+ s3 PUSH
4160
+ cl::set INLINECALLDICT
4161
+ setContractStorage INLINECALLDICT
4162
+ 119099161704811121292864632451295737476869657197032916828228640468653786452 PUSHINT
4163
+ ROT
4164
+ ~pushAction<event> INLINECALLDICT
4165
+ }>
4166
+ channelSend PROCINLINE:<{
4167
+ preamble INLINECALLDICT
4168
+ s2 PUSH
4169
+ 0 PUSHINT
4170
+ cl::get<objRef> INLINECALLDICT
4171
+ DUP
4172
+ 3 PUSHINT
4173
+ cl::get<objRef> INLINECALLDICT
4174
+ lz::Packet::assertValidSendMessage INLINECALLDICT
4175
+ s2 PUSH
4176
+ 3 PUSHINT
4177
+ cl::get<objRef> INLINECALLDICT
4178
+ DUP
4179
+ 1 PUSHINT
4180
+ cl::get<address> INLINECALLDICT
4181
+ OVER
4182
+ 2 PUSHINT
4183
+ cl::get<address> INLINECALLDICT
4184
+ s0 s2 XCHG
4185
+ 0 PUSHINT
4186
+ cl::get<bool> INLINECALLDICT
4187
+ IF:<{
4188
+ 2DROP
4189
+ s0 s3 XCHG
4190
+ 1 PUSHINT
4191
+ cl::get<objRef> INLINECALLDICT
4192
+ DUP
4193
+ 0 PUSHINT
4194
+ cl::get<address> INLINECALLDICT
4195
+ SWAP
4196
+ 1 PUSHINT
4197
+ cl::get<address> INLINECALLDICT
4198
+ s1 s4 XCHG
4199
+ }>ELSE<{
4200
+ s5 POP
4201
+ }>
4202
+ s3 PUSH
4203
+ 6 PUSHINT
4204
+ cl::get<uint64> INLINECALLDICT
4205
+ INC
4206
+ s2 s0 s5 XCPUXC
4207
+ s3 PUSH
4208
+ md::lzSend::fillRequestInfo INLINECALLDICT
4209
+ s3 PUSH
4210
+ 5 PUSHINT
4211
+ cl::get<cellRef> INLINECALLDICT
4212
+ s0 s5 PUSH2
4213
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4214
+ 3 1 BLKDROP2
4215
+ IF:<{
4216
+ DROP
4217
+ NIP
4218
+ s3 POP
4219
+ 342 PUSHINT
4220
+ s3 PUSH
4221
+ ~pushAction<event> INLINECALLDICT
4222
+ SWAP
4223
+ 1 PUSHINT
4224
+ cl::get<objRef> INLINECALLDICT
4225
+ 1 PUSHINT
4226
+ cl::get<address> INLINECALLDICT
4227
+ 2729835438 PUSHINT
4228
+ 0 PUSHINT
4229
+ s4 s0 s0 XC2PU
4230
+ 342 PUSHINT
4231
+ md::MessagingReceipt::New INLINECALLDICT
4232
+ getInitialStorage INLINECALLDICT
4233
+ md::MdObj::New INLINECALLDICT
4234
+ s1 s3 s0 XCHG3
4235
+ ~pushAction<call> INLINECALLDICT
4236
+ }>ELSE<{
4237
+ s0 s4 XCHG
4238
+ 6 PUSHINT
4239
+ s6 PUSH
4240
+ cl::set INLINECALLDICT
4241
+ 5 PUSHINT
4242
+ s2 PUSH
4243
+ _buildSendRequestQueueEntry INLINECALLDICT
4244
+ s6 s7 s0 XCHG3
4245
+ 1 PUSHINT
4246
+ DeterministicInsertionCircularQueue::set INLINECALLDICT
4247
+ 5 1 REVERSE
4248
+ cl::set INLINECALLDICT
4249
+ setContractStorage INLINECALLDICT
4250
+ s0 s2 XCHG
4251
+ 1073919888 PUSHINT
4252
+ SWAP
4253
+ ~pushAction<call> INLINECALLDICT
4254
+ }>
4255
+ }>
4256
+ msglibSendCallback PROCINLINE:<{
4257
+ preamble INLINECALLDICT
4258
+ s2 PUSH
4259
+ 0 PUSHINT
4260
+ cl::get<objRef> INLINECALLDICT
4261
+ DUP
4262
+ 10 PUSHINT
4263
+ cl::get<uint8> INLINECALLDICT
4264
+ OVER
4265
+ 2 PUSHINT
4266
+ cl::get<objRef> INLINECALLDICT
4267
+ s4 PUSH
4268
+ 5 PUSHINT
4269
+ cl::get<cellRef> INLINECALLDICT
4270
+ OVER
4271
+ 0 PUSHINT
4272
+ cl::get<uint64> INLINECALLDICT
4273
+ 2DUP
4274
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4275
+ NIP
4276
+ 1 2 BLKDROP2
4277
+ IFNOT:<{
4278
+ s6 s8 XCHG
4279
+ 8 BLKDROP
4280
+ }>ELSE<{
4281
+ _readSendRequestQueueEntry INLINECALLDICT
4282
+ s3 PUSH
4283
+ cl::hash INLINECALLDICT
4284
+ EQUAL
4285
+ IF:<{
4286
+ SWAP
4287
+ 5 PUSHINT
4288
+ s0 s2 XCHG
4289
+ DeterministicInsertionCircularQueue::delete INLINECALLDICT
4290
+ s2 s6 XCHG
4291
+ cl::set INLINECALLDICT
4292
+ s0 s4 XCHG
4293
+ }>ELSE<{
4294
+ 2DROP
4295
+ }>
4296
+ s2 PUSH
4297
+ 1 PUSHINT
4298
+ cl::get<coins> INLINECALLDICT
4299
+ s3 PUSH
4300
+ 0 PUSHINT
4301
+ cl::get<coins> INLINECALLDICT
4302
+ s2 PUSH
4303
+ 4 PUSHINT
4304
+ cl::get<coins> INLINECALLDICT
4305
+ OVER
4306
+ LESS
4307
+ IF:<{
4308
+ 1322 PUSHINT
4309
+ s4 POP
4310
+ }>
4311
+ s2 PUSH
4312
+ 5 PUSHINT
4313
+ cl::get<coins> INLINECALLDICT
4314
+ s2 PUSH
4315
+ LESS
4316
+ IF:<{
4317
+ 1365 PUSHINT
4318
+ s4 POP
4319
+ }>
4320
+ s6 PUSH
4321
+ 10 PUSHINT
4322
+ cl::get<coins> INLINECALLDICT
4323
+ s0 s2 PUSH2
4324
+ LESS
4325
+ IF:<{
4326
+ 446 PUSHINT
4327
+ s5 POP
4328
+ }>
4329
+ s7 PUSH
4330
+ 1 PUSHINT
4331
+ cl::get<objRef> INLINECALLDICT
4332
+ 0 PUSHINT
4333
+ s0 s6 PUSH2
4334
+ 0 EQINT
4335
+ IF:<{
4336
+ 2DROP
4337
+ s8 PUSH
4338
+ 4 PUSHINT
4339
+ cl::get<uint64> INLINECALLDICT
4340
+ INC
4341
+ 2DUP
4342
+ lz::Packet::calculateGuid INLINECALLDICT
4343
+ s8 PUSH
4344
+ 4 PUSHINT
4345
+ cl::get<cellRef> INLINECALLDICT
4346
+ deserializePayees INLINECALLDICT
4347
+ DUP
4348
+ TLEN
4349
+ REPEAT:<{
4350
+ TPOP
4351
+ UNPAIR
4352
+ s2 s12 XCHG
4353
+ 0 PUSHINT
4354
+ ~pushAction<payment> INLINECALLDICT
4355
+ s0 s10 XCHG
4356
+ }>
4357
+ DROP
4358
+ s8 PUSH
4359
+ 3 PUSHINT
4360
+ cl::get<cellRef> INLINECALLDICT
4361
+ s9 PUSH
4362
+ 5 PUSHINT
4363
+ cl::get<uint16> INLINECALLDICT
4364
+ s10 PUSH
4365
+ 6 PUSHINT
4366
+ cl::get<uint8> INLINECALLDICT
4367
+ s11 PUSH
4368
+ 7 PUSHINT
4369
+ cl::get<uint16> INLINECALLDICT
4370
+ s12 PUSH
4371
+ 8 PUSHINT
4372
+ cl::get<uint8> INLINECALLDICT
4373
+ s1 s3 PUSH2
4374
+ GREATER
4375
+ IF:<{
4376
+ s6 PUSH
4377
+ s0 s4 XCHG
4378
+ s3 s1 s3 XCHG3
4379
+ s6 PUSH
4380
+ s0 s2 XCHG
4381
+ lz::Packet::replaceTwoFieldsAtOffsets INLINECALLDICT
4382
+ }>ELSE<{
4383
+ s5 PUSH
4384
+ s1 s3 s4 XCHG3
4385
+ s7 PUSH
4386
+ s0 s2 XCHG
4387
+ lz::Packet::replaceTwoFieldsAtOffsets INLINECALLDICT
4388
+ }>
4389
+ 27729934478367474231138972670607207686856031885933812545027919444 PUSHINT
4390
+ s8 PUSH
4391
+ 6 PUSHINT
4392
+ cl::get<objRef> INLINECALLDICT
4393
+ s9 PUSH
4394
+ 7 PUSHINT
4395
+ cl::get<objRef> INLINECALLDICT
4396
+ s0 s15 XCHG
4397
+ 1 PUSHINT
4398
+ cl::get<address> INLINECALLDICT
4399
+ s0 s12 XCHG
4400
+ 9 PUSHINT
4401
+ cl::get<objRef> INLINECALLDICT
4402
+ s8 PUSH
4403
+ s5 s10 XCPU
4404
+ s0 s5 XCHG
4405
+ s3 s4 XCHG
4406
+ s3 17 s() XCHG
4407
+ s7 s2 s14 PUXC2
4408
+ SWAP
4409
+ md::PacketSent::New INLINECALLDICT
4410
+ s9 s11 s0 XCHG3
4411
+ ~pushAction<event> INLINECALLDICT
4412
+ 10 PUSHINT
4413
+ s2 s4 XCPU
4414
+ SUB
4415
+ s9 s9 s0 XCHG3
4416
+ cl::set INLINECALLDICT
4417
+ 4 PUSHINT
4418
+ s9 PUSH
4419
+ cl::set INLINECALLDICT
4420
+ s6 s8 XCHG
4421
+ s0 s7 XCHG
4422
+ s0 s6 XCHG
4423
+ s0 s5 XCHG
4424
+ }>ELSE<{
4425
+ s2 s11 XCHG
4426
+ s3 POP
4427
+ s7 POP
4428
+ DROP
4429
+ }>
4430
+ s0 s7 XCHG
4431
+ setContractStorage INLINECALLDICT
4432
+ s0 s7 XCHG
4433
+ 1 PUSHINT
4434
+ cl::get<address> INLINECALLDICT
4435
+ 2729835438 PUSHINT
4436
+ 3 PUSHINT
4437
+ s4 s0 PUSH2
4438
+ cl::get<objRef> INLINECALLDICT
4439
+ 2 PUSHINT
4440
+ ROT
4441
+ s0 s8 XCHG
4442
+ cl::set INLINECALLDICT
4443
+ s0 s6 s8 XCPUXC
4444
+ cl::set INLINECALLDICT
4445
+ s3 s5 s0 XCHG3
4446
+ cl::set INLINECALLDICT
4447
+ s0 s3 XCHG
4448
+ s6 s1 s6 XCHG3
4449
+ md::MessagingReceipt::New INLINECALLDICT
4450
+ getInitialStorage INLINECALLDICT
4451
+ md::MdObj::New INLINECALLDICT
4452
+ s3 s3 s0 XCHG3
4453
+ ~pushAction<call> INLINECALLDICT
4454
+ }>
4455
+ }>
4456
+ channelCommitPacket PROCINLINE:<{
4457
+ preamble INLINECALLDICT
4458
+ s2 PUSH
4459
+ 0 PUSHINT
4460
+ cl::get<objRef> INLINECALLDICT
4461
+ DUP
4462
+ lz::Packet::assertValidReceiveMessage INLINECALLDICT
4463
+ s2 PUSH
4464
+ 3 PUSHINT
4465
+ cl::get<objRef> INLINECALLDICT
4466
+ DUP
4467
+ 4 PUSHINT
4468
+ cl::get<address> INLINECALLDICT
4469
+ OVER
4470
+ 0 PUSHINT
4471
+ cl::get<bool> INLINECALLDICT
4472
+ DUP
4473
+ IF:<{
4474
+ NIP
4475
+ s5 PUSH
4476
+ 1 PUSHINT
4477
+ cl::get<objRef> INLINECALLDICT
4478
+ 0 PUSHINT
4479
+ cl::get<address> INLINECALLDICT
4480
+ SWAP
4481
+ }>
4482
+ s6 PUSH
4483
+ 2 PUSHINT
4484
+ cl::get<address> INLINECALLDICT
4485
+ s2 s2 XCPU
4486
+ NEQ
4487
+ IF:<{
4488
+ s0 s6 XCHG
4489
+ 1 PUSHINT
4490
+ cl::get<objRef> INLINECALLDICT
4491
+ s6 PUSH
4492
+ IF:<{
4493
+ DUP
4494
+ 1 PUSHINT
4495
+ cl::get<address> INLINECALLDICT
4496
+ }>ELSE<{
4497
+ s2 PUSH
4498
+ 6 PUSHINT
4499
+ cl::get<address> INLINECALLDICT
4500
+ }>
4501
+ s0 s7 XCHG
4502
+ IF:<{
4503
+ 1 2 BLKDROP2
4504
+ 2 PUSHINT
4505
+ cl::get<uint64> INLINECALLDICT
4506
+ }>ELSE<{
4507
+ DROP
4508
+ SWAP
4509
+ 7 PUSHINT
4510
+ cl::get<uint64> INLINECALLDICT
4511
+ }>
4512
+ s5 s1 XCPU
4513
+ NEQ
4514
+ s0 s5 XCHG
4515
+ NOW
4516
+ LESS
4517
+ s1 s5 XCHG
4518
+ OR
4519
+ IF:<{
4520
+ 1301 THROW
4521
+ }>
4522
+ }>ELSE<{
4523
+ DROP
4524
+ s5 POP
4525
+ DROP
4526
+ }>
4527
+ DUP
4528
+ 2 PUSHINT
4529
+ cl::get<uint64> INLINECALLDICT
4530
+ s3 PUSH
4531
+ 7 PUSHINT
4532
+ cl::get<objRef> INLINECALLDICT
4533
+ OVER
4534
+ _assertNonceCommittable INLINECALLDICT
4535
+ 7 PUSHINT
4536
+ s1 s2 XCPU
4537
+ POOO::set INLINECALLDICT
4538
+ s5 PUSH
4539
+ -ROT
4540
+ cl::set INLINECALLDICT
4541
+ 9 PUSHINT
4542
+ s5 s5 XCPU
4543
+ cl::get<cellRef> INLINECALLDICT
4544
+ s2 s3 PUSH2
4545
+ 2 PUSHINT
4546
+ DeterministicInsertionCircularQueue::set INLINECALLDICT
4547
+ s1 s5 s0 XCHG3
4548
+ cl::set INLINECALLDICT
4549
+ setContractStorage INLINECALLDICT
4550
+ 30489385396431647050973345907531708794093175298667245388886869385143456646468 PUSHINT
4551
+ SWAP
4552
+ ~pushAction<event> INLINECALLDICT
4553
+ 1578602291 PUSHINT
4554
+ s0 s2 XCHG
4555
+ md::Nonce::New INLINECALLDICT
4556
+ getInitialStorage INLINECALLDICT
4557
+ md::MdObj::New INLINECALLDICT
4558
+ s3 s3 s0 XCHG3
4559
+ ~pushAction<call> INLINECALLDICT
4560
+ }>
4561
+ lzReceivePrepare PROCINLINE:<{
4562
+ preamble INLINECALLDICT
4563
+ SWAP
4564
+ 1 PUSHINT
4565
+ cl::get<objRef> INLINECALLDICT
4566
+ 1 PUSHINT
4567
+ cl::get<uint256> INLINECALLDICT
4568
+ 2547990604 PUSHINT
4569
+ s0 s3 XCHG
4570
+ 0 PUSHINT
4571
+ cl::get<uint64> INLINECALLDICT
4572
+ _getExecutablePacket INLINECALLDICT
4573
+ s1 s3 s0 XCHG3
4574
+ ~pushAction<call> INLINECALLDICT
4575
+ }>
4576
+ lzReceiveLock PROCINLINE:<{
4577
+ preamble INLINECALLDICT
4578
+ s0 s2 XCHG
4579
+ 0 PUSHINT
4580
+ cl::get<uint64> INLINECALLDICT
4581
+ DUP
4582
+ 1 LESSINT
4583
+ 248 THROWIF
4584
+ OVER
4585
+ 9 PUSHINT
4586
+ cl::get<cellRef> INLINECALLDICT
4587
+ s0 s1 PUSH2
4588
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4589
+ DROP
4590
+ getContractStorage INLINECALLDICT
4591
+ 7 PUSHINT
4592
+ cl::get<objRef> INLINECALLDICT
4593
+ 0 PUSHINT
4594
+ cl::get<uint64> INLINECALLDICT
4595
+ s3 s5 XCPU
4596
+ EQUAL
4597
+ SWAP
4598
+ 2 EQINT
4599
+ AND
4600
+ s4 s2 PUXC
4601
+ LESS
4602
+ s1 s2 XCHG
4603
+ AND
4604
+ IF:<{
4605
+ 9 PUSHINT
4606
+ s2 s3 s2 XC2PU
4607
+ 1 PUSHINT
4608
+ DeterministicInsertionCircularQueue::set INLINECALLDICT
4609
+ s3 s2 s2 PUXC2
4610
+ cl::set INLINECALLDICT
4611
+ setContractStorage INLINECALLDICT
4612
+ SWAP
4613
+ 1 PUSHINT
4614
+ cl::get<objRef> INLINECALLDICT
4615
+ 1 PUSHINT
4616
+ cl::get<uint256> INLINECALLDICT
4617
+ 209421336 PUSHINT
4618
+ getInitialStorage INLINECALLDICT
4619
+ s1 s3 XCHG
4620
+ md::MdObj::New INLINECALLDICT
4621
+ s1 s2 XCHG
4622
+ ~pushAction<call> INLINECALLDICT
4623
+ }>ELSE<{
4624
+ 2DROP
4625
+ 465231100409418442550252470512873974519204557513690586395473165336857669 PUSHINT
4626
+ s0 s2 XCHG
4627
+ 1 PUSHINT
4628
+ cl::get<objRef> INLINECALLDICT
4629
+ SWAP
4630
+ md::PacketId::New INLINECALLDICT
4631
+ ~pushAction<event> INLINECALLDICT
4632
+ }>
4633
+ }>
4634
+ lzReceiveExecuteCallback PROCINLINE:<{
4635
+ preamble INLINECALLDICT
4636
+ s2 PUSH
4637
+ 1 PUSHINT
4638
+ cl::get<uint64> INLINECALLDICT
4639
+ s2 PUSH
4640
+ 9 PUSHINT
4641
+ cl::get<cellRef> INLINECALLDICT
4642
+ s0 s1 PUSH2
4643
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4644
+ DROP
4645
+ s2 s4 XCPU
4646
+ EQUAL
4647
+ s0 s2 XCHG
4648
+ 1 EQINT
4649
+ s1 s2 XCHG
4650
+ AND
4651
+ 213 THROWIFNOT
4652
+ s5 PUSH
4653
+ 0 PUSHINT
4654
+ cl::get<bool> INLINECALLDICT
4655
+ IF:<{
4656
+ DROP
4657
+ s4 POP
4658
+ s3 s3 XCPU
4659
+ DeterministicInsertionCircularQueue::delete INLINECALLDICT
4660
+ 8 PUSHINT
4661
+ s3 s0 PUSH2
4662
+ cl::get<objRef> INLINECALLDICT
4663
+ s5 PUSH
4664
+ POOO::set INLINECALLDICT
4665
+ s2 s4 XCHG
4666
+ cl::set INLINECALLDICT
4667
+ 423125220922355258653853953103747675885643674185878272623940 PUSHINT
4668
+ OVER
4669
+ 1 PUSHINT
4670
+ cl::get<objRef> INLINECALLDICT
4671
+ s0 s5 XCHG2
4672
+ md::PacketId::New INLINECALLDICT
4673
+ s1 s4 XCHG
4674
+ ~pushAction<event> INLINECALLDICT
4675
+ }>ELSE<{
4676
+ s1 s2 s1 XCPU2
4677
+ 2 PUSHINT
4678
+ DeterministicInsertionCircularQueue::set INLINECALLDICT
4679
+ 30489385396431647050973345907531708794087988762567614461523310285239087354452 PUSHINT
4680
+ FALSE
4681
+ s7 PUSH
4682
+ 2 PUSHINT
4683
+ cl::get<coins> INLINECALLDICT
4684
+ s8 PUSH
4685
+ 3 PUSHINT
4686
+ cl::get<cellRef> INLINECALLDICT
4687
+ s0 s9 XCHG
4688
+ 4 PUSHINT
4689
+ cl::get<cellRef> INLINECALLDICT
4690
+ getOrigin INLINECALLDICT
4691
+ s3 s6 XCHG
4692
+ s5 s7 XCHG
4693
+ s2 s4 XCHG
4694
+ s3 s10 XCHG
4695
+ s1 s0 s10 XCHG3
4696
+ 2 PUSHINT
4697
+ md::LzReceiveStatus::NewFull INLINECALLDICT
4698
+ s1 s4 XCHG
4699
+ ~pushAction<event> INLINECALLDICT
4700
+ s1 s2 XCHG
4701
+ }>
4702
+ s1 s2 XCHG
4703
+ 9 PUSHINT
4704
+ s0 s3 XCHG2
4705
+ cl::set INLINECALLDICT
4706
+ setContractStorage INLINECALLDICT
4707
+ }>
4708
+ _commitFakePacket PROCINLINE:<{
4709
+ <b b> PUSHREF
4710
+ ROT
4711
+ lz::Packet::New INLINECALLDICT
4712
+ 3735928559 PUSHINT
4713
+ 0 PUSHINT
4714
+ DUP
4715
+ lz::ReceiveEpConfig::New INLINECALLDICT
4716
+ s0 s2 XCHG
4717
+ 3 PUSHINT
4718
+ cl::get<objRef> INLINECALLDICT
4719
+ DUP
4720
+ 0 PUSHINT
4721
+ cl::get<bool> INLINECALLDICT
4722
+ IF:<{
4723
+ DROP
4724
+ OVER
4725
+ 4 PUSHINT
4726
+ cl::get<address> INLINECALLDICT
4727
+ }>ELSE<{
4728
+ 4 PUSHINT
4729
+ cl::get<address> INLINECALLDICT
4730
+ }>
4731
+ s1 s2 XCHG
4732
+ md::ExtendedMd::New INLINECALLDICT
4733
+ channelCommitPacket INLINECALLDICT
4734
+ DROP
4735
+ }>
4736
+ nilify PROCINLINE:<{
4737
+ preamble INLINECALLDICT
4738
+ OVER
4739
+ 1 PUSHINT
4740
+ cl::get<objRef> INLINECALLDICT
4741
+ lz::Path::optimizedReverse INLINECALLDICT
4742
+ s3 PUSH
4743
+ 0 PUSHINT
4744
+ cl::get<objRef> INLINECALLDICT
4745
+ s1 s(-1) PUXC
4746
+ _assertEqualPaths INLINECALLDICT
4747
+ s3 PUSH
4748
+ 1 PUSHINT
4749
+ cl::get<uint64> INLINECALLDICT
4750
+ DUP
4751
+ _assertNonceCommittable INLINECALLDICT
4752
+ DUP
4753
+ _nonceCommittable INLINECALLDICT
4754
+ NIP
4755
+ s4 s1 s2 PUSH3
4756
+ _commitFakePacket INLINECALLDICT
4757
+ getContractStorage INLINECALLDICT
4758
+ 9 PUSHINT
4759
+ s6 s6 XCPU
4760
+ cl::get<cellRef> INLINECALLDICT
4761
+ s3 PUSH
4762
+ DeterministicInsertionCircularQueue::delete INLINECALLDICT
4763
+ s1 s6 s0 XCHG3
4764
+ cl::set INLINECALLDICT
4765
+ setContractStorage INLINECALLDICT
4766
+ s3 PUSH
4767
+ ISNULL
4768
+ IF:<{
4769
+ s3 POP
4770
+ <b b> PUSHREF
4771
+ s1 s0 s3 PUXC2
4772
+ lz::Packet::New INLINECALLDICT
4773
+ s0 s2 XCHG
4774
+ }>ELSE<{
4775
+ DROP
4776
+ }>
4777
+ 119099161704811121292864632451295737476926466010418927301130277103531017540 PUSHINT
4778
+ s0 s3 XCHG2
4779
+ ~pushAction<event> INLINECALLDICT
4780
+ SWAP
4781
+ 3 PUSHINT
4782
+ cl::get<uint256> INLINECALLDICT
4783
+ 2067737187 PUSHINT
4784
+ getInitialStorage INLINECALLDICT
4785
+ s1 s4 XCHG
4786
+ md::MdObj::New INLINECALLDICT
4787
+ s1 s3 s0 XCHG3
4788
+ ~pushAction<call> INLINECALLDICT
4789
+ }>
4790
+ burn PROCINLINE:<{
4791
+ preamble INLINECALLDICT
4792
+ OVER
4793
+ 1 PUSHINT
4794
+ cl::get<objRef> INLINECALLDICT
4795
+ lz::Path::reverse INLINECALLDICT
4796
+ s3 PUSH
4797
+ 0 PUSHINT
4798
+ cl::get<objRef> INLINECALLDICT
4799
+ s1 s(-1) PUXC
4800
+ _assertEqualPaths INLINECALLDICT
4801
+ s0 s3 XCHG
4802
+ 1 PUSHINT
4803
+ cl::get<uint64> INLINECALLDICT
4804
+ DUP
4805
+ md::Nonce::New INLINECALLDICT
4806
+ OVER
4807
+ _nonceCommittable INLINECALLDICT
4808
+ NIP
4809
+ s4 s2 s5 XCPU2
4810
+ _commitFakePacket INLINECALLDICT
4811
+ lzReceiveLock INLINECALLDICT
4812
+ DROP
4813
+ TRUE
4814
+ OVER
4815
+ md::LzReceiveStatus::New INLINECALLDICT
4816
+ lzReceiveExecuteCallback INLINECALLDICT
4817
+ DROP
4818
+ s2 PUSH
4819
+ ISNULL
4820
+ IF:<{
4821
+ s2 POP
4822
+ <b b> PUSHREF
4823
+ s3 s2 s(-1) PU2XC
4824
+ lz::Packet::New INLINECALLDICT
4825
+ s0 s2 XCHG
4826
+ }>
4827
+ 1817308985974290791211923712940913962965796905676558338932326817219908 PUSHINT
4828
+ s0 s3 XCHG2
4829
+ ~pushAction<event> INLINECALLDICT
4830
+ s2 s1 PUXC
4831
+ md::PacketId::New INLINECALLDICT
4832
+ s0 s2 XCHG
4833
+ 3 PUSHINT
4834
+ cl::get<uint256> INLINECALLDICT
4835
+ 2512618370 PUSHINT
4836
+ getInitialStorage INLINECALLDICT
4837
+ s1 s4 XCHG
4838
+ md::MdObj::New INLINECALLDICT
4839
+ s1 s3 s0 XCHG3
4840
+ ~pushAction<call> INLINECALLDICT
4841
+ }>
4842
+ depositZro PROCINLINE:<{
4843
+ preamble INLINECALLDICT
4844
+ 10 PUSHINT
4845
+ s2 s0 PUSH2
4846
+ cl::get<coins> INLINECALLDICT
4847
+ s4 PUSH
4848
+ 0 PUSHINT
4849
+ cl::get<coins> INLINECALLDICT
4850
+ ADD
4851
+ s2 s3 XCHG
4852
+ cl::set INLINECALLDICT
4853
+ setContractStorage INLINECALLDICT
4854
+ 1817308985974290791211923712940913962966594463148405578391549560243524 PUSHINT
4855
+ ROT
4856
+ ~pushAction<event> INLINECALLDICT
4857
+ }>
4858
+ forceAbort PROCINLINE:<{
4859
+ preamble INLINECALLDICT
4860
+ OVER
4861
+ 1 PUSHINT
4862
+ cl::get<objRef> INLINECALLDICT
4863
+ s3 PUSH
4864
+ 3 PUSHINT
4865
+ cl::get<objRef> INLINECALLDICT
4866
+ 0 PUSHINT
4867
+ cl::get<objRef> INLINECALLDICT
4868
+ s1 s(-1) PUXC
4869
+ _assertEqualPaths INLINECALLDICT
4870
+ s3 PUSH
4871
+ 0 PUSHINT
4872
+ cl::get<uint64> INLINECALLDICT
4873
+ s3 PUSH
4874
+ 5 PUSHINT
4875
+ cl::get<cellRef> INLINECALLDICT
4876
+ s0 s1 PUSH2
4877
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4878
+ DROP
4879
+ 1 2 BLKDROP2
4880
+ 1 NEQINT
4881
+ SWAP
4882
+ _readSendRequestQueueEntry INLINECALLDICT
4883
+ s7 PUSH
4884
+ cl::hash INLINECALLDICT
4885
+ NEQ
4886
+ OR
4887
+ 79 THROWIF
4888
+ 5 PUSHINT
4889
+ s0 s2 XCHG
4890
+ DeterministicInsertionCircularQueue::delete INLINECALLDICT
4891
+ s2 s4 XCHG
4892
+ cl::set INLINECALLDICT
4893
+ setContractStorage INLINECALLDICT
4894
+ SWAP
4895
+ 1 PUSHINT
4896
+ cl::get<uint256> INLINECALLDICT
4897
+ 2729835438 PUSHINT
4898
+ 0 PUSHINT
4899
+ s4 s0 s0 XC2PU
4900
+ 1044 PUSHINT
4901
+ md::MessagingReceipt::New INLINECALLDICT
4902
+ getInitialStorage INLINECALLDICT
4903
+ md::MdObj::New INLINECALLDICT
4904
+ s1 s3 s0 XCHG3
4905
+ ~pushAction<call> INLINECALLDICT
4906
+ }>
4907
+ syncMsglibConnection PROCINLINE:<{
4908
+ preamble INLINECALLDICT
4909
+ s0 s2 XCHG
4910
+ 1 PUSHINT
4911
+ cl::get<address> INLINECALLDICT
4912
+ 2258172214 PUSHINT
4913
+ s2 PUSH
4914
+ 7 PUSHINT
4915
+ cl::get<objRef> INLINECALLDICT
4916
+ 0 PUSHINT
4917
+ cl::get<uint64> INLINECALLDICT
4918
+ s0 s3 XCHG
4919
+ 8 PUSHINT
4920
+ cl::get<objRef> INLINECALLDICT
4921
+ 0 PUSHINT
4922
+ cl::get<uint64> INLINECALLDICT
4923
+ s1 s3 XCHG
4924
+ md::ChannelNonceInfo::New INLINECALLDICT
4925
+ getInitialStorage INLINECALLDICT
4926
+ md::MdObj::New INLINECALLDICT
4927
+ s1 s2 XCHG
4928
+ ~pushAction<call> INLINECALLDICT
4929
+ }>
4930
+ notifyPacketExecuted PROCINLINE:<{
4931
+ preamble INLINECALLDICT
4932
+ NIP
4933
+ OVER
4934
+ 0 PUSHINT
4935
+ cl::get<objRef> INLINECALLDICT
4936
+ DUP
4937
+ 0 PUSHINT
4938
+ cl::get<uint64> INLINECALLDICT
4939
+ _viewExecutionStatus CALLDICT
4940
+ 3 NEQINT
4941
+ IF:<{
4942
+ DROP
4943
+ NIP
4944
+ }>ELSE<{
4945
+ s0 s2 XCHG
4946
+ 1 PUSHINT
4947
+ cl::get<address> INLINECALLDICT
4948
+ 1578602291 PUSHINT
4949
+ getInitialStorage INLINECALLDICT
4950
+ s1 s4 XCHG
4951
+ md::MdObj::New INLINECALLDICT
4952
+ s1 s3 s0 XCHG3
4953
+ ~pushAction<call> INLINECALLDICT
4954
+ }>
4955
+ }>
4956
+ emitLzReceiveAlert PROCINLINE:<{
4957
+ preamble INLINECALLDICT
4958
+ s2 PUSH
4959
+ 1 PUSHINT
4960
+ cl::get<uint64> INLINECALLDICT
4961
+ DUP
4962
+ 0 EQINT
4963
+ 248 THROWIF
4964
+ DUP
4965
+ _viewExecutionStatus CALLDICT
4966
+ s0 s3 XCHG
4967
+ 9 PUSHINT
4968
+ cl::get<cellRef> INLINECALLDICT
4969
+ OVER
4970
+ DeterministicInsertionCircularQueue::get INLINECALLDICT
4971
+ NIP
4972
+ s2 s3 XCPU
4973
+ EQUAL
4974
+ ROT
4975
+ AND
4976
+ 248 THROWIFNOT
4977
+ 30489385396431647050973345907531708794087988762567614461523310285239087354452 PUSHINT
4978
+ s5 PUSH
4979
+ 0 PUSHINT
4980
+ cl::get<bool> INLINECALLDICT
4981
+ s6 PUSH
4982
+ 2 PUSHINT
4983
+ cl::get<coins> INLINECALLDICT
4984
+ s7 PUSH
4985
+ 3 PUSHINT
4986
+ cl::get<cellRef> INLINECALLDICT
4987
+ s0 s8 XCHG
4988
+ 4 PUSHINT
4989
+ cl::get<cellRef> INLINECALLDICT
4990
+ getCaller INLINECALLDICT
4991
+ s3 s7 XCHG
4992
+ s2 s5 XCHG
4993
+ s4 s9 XCHG
4994
+ s0 s0 s3 XCHG3
4995
+ s0 s8 XCHG
4996
+ md::LzReceiveStatus::NewFull INLINECALLDICT
4997
+ s1 s2 XCHG
4998
+ ~pushAction<event> INLINECALLDICT
4999
+ }>
5000
+ }END>c
5001
+ 2 boc+>B "build/Channel.boc" B>file