@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,3694 @@
1
+ "Asm.fif" include
2
+ // automatically generated from `src/protocol/endpoint/main.fc` incl:`src/protocol/endpoint/../core/abstract/protocolMain.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/contractMain.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/baseInterface.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/constants.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/classlib.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/utils.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/stdlib.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/stringlib.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/txnContext.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/actions/utils.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/abstract/contractMainAbstract.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/handlerCore.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/abstract/handlerAbstract.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/actions/call.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/actions/deploy.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/actions/event.fc` incl:`src/protocol/endpoint/../core/abstract/../../../funC++/actions/payment.fc` incl:`src/protocol/endpoint/handler.fc` incl:`src/protocol/endpoint/../core/abstract/protocolHandler.fc` incl:`src/protocol/endpoint/../core/abstract/../baseStorage.fc` incl:`src/protocol/endpoint/../../classes/msgdata/ExtendedMd.fc` incl:`src/protocol/endpoint/../../classes/msgdata/MdAddress.fc` incl:`src/protocol/endpoint/../../classes/msgdata/MdObj.fc` incl:`src/protocol/endpoint/../../classes/msgdata/AddMsglib.fc` incl:`src/protocol/endpoint/../../classes/msgdata/InitEndpoint.fc` incl:`src/protocol/endpoint/../../classes/msgdata/LzSend.fc` incl:`src/protocol/endpoint/../../classes/msgdata/SetEpConfig.fc` incl:`src/protocol/endpoint/../../classes/lz/SendEpConfig.fc` incl:`src/protocol/endpoint/../../classes/lz/MsglibInfo.fc` incl:`src/protocol/endpoint/../../classes/lz/../../protocol/msglibs/interface.fc` incl:`src/protocol/endpoint/../../classes/lz/ReceiveEpConfig.fc` incl:`src/protocol/endpoint/../../classes/lz/Packet.fc` incl:`src/protocol/endpoint/../../classes/lz/Path.fc` incl:`src/protocol/endpoint/../../classes/lz/EpConfig.fc` incl:`src/protocol/endpoint/../channel/storage.fc` incl:`src/protocol/endpoint/../channel/../../funC++/dataStructures/PipelinedOutOfOrder.fc` incl:`src/protocol/endpoint/../interfaces.fc` incl:`src/protocol/endpoint/../channel/interface.fc` incl:`src/protocol/endpoint/../channel/callbackOpcodes.fc` incl:`src/protocol/endpoint/../controller/interface.fc` incl:`src/protocol/endpoint/../endpoint/interface.fc` incl:`src/protocol/endpoint/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
+ 124063 DECLMETHOD BaseStorage::New
124
+ DECLPROC getOwner
125
+ DECLPROC getInitialStorage
126
+ DECLPROC assertAuthenticated
127
+ DECLPROC authenticate
128
+ DECLPROC _initialize
129
+ 98028 DECLMETHOD md::ExtendedMd::New
130
+ 84761 DECLMETHOD md::MdAddress::New
131
+ 88345 DECLMETHOD md::MdObj::New
132
+ 99117 DECLMETHOD md::AddMsglib::New
133
+ 108070 DECLMETHOD md::InitEndpoint::New
134
+ 74274 DECLMETHOD md::LzSend::New
135
+ DECLPROC md::lzSend::fillRequestInfo
136
+ 119441 DECLMETHOD md::SetEpConfig::New
137
+ 97802 DECLMETHOD lz::SendEpConfig::New
138
+ 72751 DECLMETHOD lz::MsglibInfo::New
139
+ 131065 DECLMETHOD lz::MsglibInfo::getMsglibConnectionAddress
140
+ 79921 DECLMETHOD lz::ReceiveEpConfig::New
141
+ 67373 DECLMETHOD lz::Path::New
142
+ DECLPROC lz::Path::endpointPath
143
+ DECLPROC lz::Path::reverse
144
+ DECLPROC lz::Path::optimizedReverse
145
+ 88187 DECLMETHOD lz::Packet::New
146
+ 96366 DECLMETHOD lz::Packet::nonceless
147
+ DECLPROC lz::Packet::_assertValidLinkedList
148
+ DECLPROC lz::Packet::assertValidSendMessage
149
+ DECLPROC lz::Packet::assertValidReceiveMessage
150
+ 114194 DECLMETHOD lz::Packet::calculateGuid
151
+ 67130 DECLMETHOD lz::Packet::replaceTwoFieldsAtOffsets
152
+ 106645 DECLMETHOD lz::EpConfig::NewWithConnection
153
+ 66399 DECLMETHOD lz::EpConfig::New
154
+ 98878 DECLMETHOD lz::EpConfig::NewWithDefaults
155
+ 110673 DECLMETHOD lz::EpConfig::NewFrom
156
+ 129005 DECLMETHOD lz::EpConfig::isValid
157
+ 106165 DECLMETHOD POOO::set
158
+ 76066 DECLMETHOD POOO::New
159
+ 126005 DECLMETHOD POOO::NewWithBitsSets
160
+ 116795 DECLMETHOD POOO::isBitSet
161
+ 68887 DECLMETHOD POOO::maxSettableBit
162
+ 82960 DECLMETHOD Channel::New
163
+ 89455 DECLMETHOD Endpoint::New
164
+ 66168 DECLMETHOD _msglibManagerToShards
165
+ 92336 DECLMETHOD _getChannelAddress
166
+ 74724 DECLMETHOD _getEpConfigFromManagerAddresses
167
+ 130536 DECLMETHOD _getMsglibAndConnectionDefaults
168
+ 97405 DECLMETHOD _getSendMsglibAndConnectionDefaults
169
+ 69414 DECLMETHOD getReceiveMsglibAndConnectionDefaults
170
+ 87476 DECLMETHOD getTimeoutReceiveMsglibAndConnectionDefaults
171
+ 92530 DECLMETHOD _assertAuthorizedMsglib
172
+ 125672 DECLMETHOD setEpConfigDefaults
173
+ 68405 DECLMETHOD setEpConfigOApp
174
+ 86145 DECLMETHOD endpointSend
175
+ 110549 DECLMETHOD endpointCommitPacket
176
+ 77739 DECLMETHOD addMsglib
177
+ 71017 DECLMETHOD getMsglibInfoCallback
178
+ DECLGLOBVAR txnContext
179
+ cell_is_empty PROCINLINE:<{
180
+ HASHCU
181
+ 68134197439415885698044414435951397869210496020759160419881882418413283430343 PUSHINT
182
+ EQUAL
183
+ }>
184
+ throwError PROCINLINE:<{
185
+ DUP
186
+ STRDUMP
187
+ DROP
188
+ HASHSU
189
+ 11 PUSHPOW2DEC
190
+ AND
191
+ THROWANY
192
+ }>
193
+ throwErrorUnless PROCINLINE:<{
194
+ SWAP
195
+ IFNOT:<{
196
+ throwError INLINECALLDICT
197
+ }>ELSE<{
198
+ DROP
199
+ }>
200
+ }>
201
+ getContractStateSize PROCINLINE:<{
202
+ 6 PUSHINT
203
+ NEWC
204
+ 5 STU
205
+ s1 s2 XCHG
206
+ STREF
207
+ STREF
208
+ ENDC
209
+ 16 PUSHPOW2DEC
210
+ CDATASIZE
211
+ DROP
212
+ }>
213
+ calculateStorageFees PROCINLINE:<{
214
+ 0 PUSHINT
215
+ GETSTORAGEFEE
216
+ }>
217
+ treeShapeEqual PROCINLINE:<{
218
+ SWAP
219
+ CTOS
220
+ SWAP
221
+ CTOS
222
+ OVER
223
+ SBITREFS
224
+ s2 PUSH
225
+ SBITREFS
226
+ s3 s3 XCHG2
227
+ NEQ
228
+ s1 s2 PUXC
229
+ NEQ
230
+ s1 s2 XCHG
231
+ OR
232
+ IF:<{
233
+ 3 BLKDROP
234
+ FALSE
235
+ }>ELSE<{
236
+ DUP
237
+ 0 EQINT
238
+ IFJMP:<{
239
+ 3 BLKDROP
240
+ TRUE
241
+ }>
242
+ TRUE
243
+ 0 PUSHINT
244
+ WHILE:<{
245
+ s2 PUSH
246
+ 0 GTINT
247
+ }>DO<{
248
+ s4 s0 PUSH2
249
+ PLDREFVAR
250
+ s4 s1 PUSH2
251
+ PLDREFVAR
252
+ treeShapeEqual INLINECALLDICT
253
+ s1 s2 XCHG
254
+ AND
255
+ SWAP
256
+ }>
257
+ s1 s4 XCHG
258
+ 4 BLKDROP
259
+ }>
260
+ }>
261
+ str::asciiUint256ToStr PROC:<{
262
+ DUP
263
+ NEWC
264
+ 256 STU
265
+ ENDC
266
+ CTOS
267
+ SDCNTLEAD0
268
+ 8 PUSHPOW2
269
+ SWAP
270
+ SUB
271
+ POW2
272
+ DEC
273
+ 8627645864741206717834700843784589212596587092734002810783114102550390051603 PUSHINT
274
+ SWAP
275
+ NOT
276
+ AND
277
+ OR
278
+ NEWC
279
+ 256 STU
280
+ ENDC
281
+ CTOS
282
+ }>
283
+ ~str::concat PROC:<{
284
+ OVER
285
+ SBITS
286
+ OVER
287
+ SBITS
288
+ ADD
289
+ 32385 PUSHINT
290
+ GREATER
291
+ IF:<{
292
+ x{43616e6e6f7420636f6e636174656e6174653a20737472696e6720746f6f206c6f6e67} PUSHSLICE
293
+ throwError INLINECALLDICT
294
+ }>
295
+ NEWC
296
+ ROT
297
+ STSLICER
298
+ SWAP
299
+ STSLICER
300
+ ENDC
301
+ CTOS
302
+ }>
303
+ str::concat PROC:<{
304
+ ~str::concat CALLDICT
305
+ }>
306
+ ~str::concatInt PROC:<{
307
+ <b b> <s PUSHSLICE
308
+ OVER
309
+ 0 LESSINT
310
+ IF:<{
311
+ s0 s2 XCHG
312
+ x{2d} PUSHSLICE
313
+ ~str::concat CALLDICT
314
+ SWAP
315
+ NEGATE
316
+ ROT
317
+ }>
318
+ OVER
319
+ 0 EQINT
320
+ IF:<{
321
+ 48 PUSHINT
322
+ NEWC
323
+ 8 STU
324
+ ENDC
325
+ CTOS
326
+ ~str::concat CALLDICT
327
+ }>
328
+ WHILE:<{
329
+ OVER
330
+ 0 GTINT
331
+ }>DO<{
332
+ OVER
333
+ 10 PUSHINT
334
+ MOD
335
+ 48 ADDCONST
336
+ NEWC
337
+ 8 STU
338
+ ENDC
339
+ CTOS
340
+ SWAP
341
+ str::concat CALLDICT
342
+ SWAP
343
+ 10 PUSHINT
344
+ DIV
345
+ SWAP
346
+ }>
347
+ NIP
348
+ str::concat CALLDICT
349
+ }>
350
+ str::concatInt PROC:<{
351
+ ~str::concatInt CALLDICT
352
+ }>
353
+ ~str::concatHex PROC:<{
354
+ <b b> <s PUSHSLICE
355
+ OVER
356
+ 0 EQINT
357
+ IF:<{
358
+ 48 PUSHINT
359
+ NEWC
360
+ 8 STU
361
+ ENDC
362
+ CTOS
363
+ ~str::concat CALLDICT
364
+ }>
365
+ WHILE:<{
366
+ OVER
367
+ 0 GTINT
368
+ }>DO<{
369
+ OVER
370
+ 4 MODPOW2#
371
+ 10 LESSINT
372
+ IF:<{
373
+ OVER
374
+ 4 MODPOW2#
375
+ 48 ADDCONST
376
+ NEWC
377
+ 8 STU
378
+ ENDC
379
+ CTOS
380
+ SWAP
381
+ str::concat CALLDICT
382
+ }>ELSE<{
383
+ OVER
384
+ 4 MODPOW2#
385
+ 65 ADDCONST
386
+ -10 ADDCONST
387
+ NEWC
388
+ 8 STU
389
+ ENDC
390
+ CTOS
391
+ SWAP
392
+ str::concat CALLDICT
393
+ }>
394
+ SWAP
395
+ 4 RSHIFT#
396
+ SWAP
397
+ }>
398
+ NIP
399
+ str::concat CALLDICT
400
+ }>
401
+ str::concatHex PROC:<{
402
+ ~str::concatHex CALLDICT
403
+ }>
404
+ str::console::log<int> PROC:<{
405
+ SWAP
406
+ x{3a20} PUSHSLICE
407
+ str::concat CALLDICT
408
+ SWAP
409
+ str::concatInt CALLDICT
410
+ STRDUMP
411
+ DROP
412
+ }>
413
+ basechainAddressStdToHashpart PROCINLINE:<{
414
+ REWRITESTDADDR
415
+ NIP
416
+ }>
417
+ hashpartToBasechainAddressStd PROCINLINE:<{
418
+ 0 PUSHINT
419
+ 4 PUSHINT
420
+ NEWC
421
+ 3 STU
422
+ 8 STI
423
+ 256 STU
424
+ ENDC CTOS
425
+ }>
426
+ getContractAddress PROCINLINE:<{
427
+ MYADDR
428
+ 11 PUSHINT
429
+ 8 PUSHPOW2
430
+ SDSUBSTR
431
+ 256 PLDU
432
+ }>
433
+ cl::objToSlice PROCINLINE:<{
434
+ CTOS
435
+ }>
436
+ _getTypeWidth PROCINLINE:<{
437
+ DUP
438
+ 9 LESSINT
439
+ IF:<{
440
+ POW2
441
+ }>ELSE<{
442
+ DROP
443
+ 0 PUSHINT
444
+ }>
445
+ }>
446
+ cl::hash PROCINLINE:<{
447
+ HASHCU
448
+ }>
449
+ cl::isNull PROCINLINE:<{
450
+ cell_is_empty INLINECALLDICT
451
+ }>
452
+ cl::noRefFields PROC:<{
453
+ c2 SAVE
454
+ SAMEALTSAVE
455
+ CTOS
456
+ DUP
457
+ SREFS
458
+ DUP
459
+ 0 EQINT
460
+ IFJMP:<{
461
+ 2DROP
462
+ TRUE
463
+ }>
464
+ DUP
465
+ 3 LESSINT
466
+ IFJMP:<{
467
+ 2DROP
468
+ FALSE
469
+ RETALT
470
+ }>
471
+ DUP
472
+ 2 GTINT
473
+ IF:<{
474
+ OVER
475
+ 0 PUSHINT
476
+ PLDREFVAR
477
+ cell_is_empty INLINECALLDICT
478
+ 0 EQINT
479
+ s2 PUSH
480
+ 1 PUSHINT
481
+ PLDREFVAR
482
+ cell_is_empty INLINECALLDICT
483
+ 0 EQINT
484
+ OR
485
+ s2 PUSH
486
+ 2 PUSHINT
487
+ PLDREFVAR
488
+ CTOS
489
+ SREFS
490
+ 0 NEQINT
491
+ OR
492
+ IFJMP:<{
493
+ 2DROP
494
+ FALSE
495
+ RETALT
496
+ }>
497
+ }>
498
+ 3 GTINT
499
+ IF:<{
500
+ 3 PUSHINT
501
+ PLDREFVAR
502
+ CTOS
503
+ SREFS
504
+ 0 NEQINT
505
+ IFJMP:<{
506
+ FALSE
507
+ RETALT
508
+ }>
509
+ }>ELSE<{
510
+ DROP
511
+ }>
512
+ TRUE
513
+ }>
514
+ cl::equalObjTypeShallow PROC:<{
515
+ c2 SAVE
516
+ SAMEALTSAVE
517
+ SWAP
518
+ CTOS
519
+ SWAP
520
+ CTOS
521
+ OVER
522
+ SREFS
523
+ OVER
524
+ SREFS
525
+ s1 s(-1) PUXC
526
+ NEQ
527
+ s3 PUSH
528
+ SBITS
529
+ s3 PUSH
530
+ SBITS
531
+ NEQ
532
+ OR
533
+ IFJMP:<{
534
+ 3 BLKDROP
535
+ FALSE
536
+ }>
537
+ 2 PUSHINT
538
+ WHILE:<{
539
+ s0 s1 PUSH2
540
+ LESS
541
+ }>DO<{
542
+ s3 s0 PUSH2
543
+ PLDREFVAR
544
+ CTOS
545
+ SREFS
546
+ s3 s1 PUSH2
547
+ PLDREFVAR
548
+ CTOS
549
+ SREFS
550
+ NEQ
551
+ s4 s1 PUSH2
552
+ PLDREFVAR
553
+ CTOS
554
+ SBITS
555
+ s4 s2 PUSH2
556
+ PLDREFVAR
557
+ CTOS
558
+ SBITS
559
+ NEQ
560
+ OR
561
+ IFJMP:<{
562
+ 4 BLKDROP
563
+ FALSE
564
+ RETALT
565
+ }>
566
+ INC
567
+ }>
568
+ 4 BLKDROP
569
+ TRUE
570
+ }>
571
+ setContractStorage PROCINLINE:<{
572
+ c4 POP
573
+ }>
574
+ getContractStorage PROCINLINE:<{
575
+ c4 PUSH
576
+ }>
577
+ computeContractAddress PROCINLINE:<{
578
+ 6 PUSHINT
579
+ NEWC
580
+ 5 STU
581
+ STREF
582
+ STREF
583
+ ENDC
584
+ HASHCU
585
+ }>
586
+ cl::typeof PROCINLINE:<{
587
+ DUP
588
+ cl::isNull INLINECALLDICT
589
+ IF:<{
590
+ DROP
591
+ 1314212940 PUSHINT
592
+ }>ELSE<{
593
+ CTOS
594
+ 80 PLDU
595
+ }>
596
+ }>
597
+ cl::declare PROCINLINE:<{
598
+ PUSHNULL
599
+ NEWC
600
+ PAIR
601
+ OVER
602
+ TLEN
603
+ s0 s3 XCHG
604
+ NEWC
605
+ 80 STU
606
+ 1 PUSHINT
607
+ DUP
608
+ 2 PUSHINT
609
+ 350 PUSHINT
610
+ 0 PUSHINT
611
+ DUP
612
+ WHILE:<{
613
+ s0 s9 PUSH2
614
+ LESS
615
+ }>DO<{
616
+ s8 s0 PUSH2
617
+ INDEXVAR
618
+ DUP
619
+ 0 INDEX
620
+ DUP
621
+ _getTypeWidth INLINECALLDICT
622
+ s5 s0 PUSH2
623
+ ADD
624
+ 10 PUSHPOW2DEC
625
+ GREATER
626
+ IF:<{
627
+ s5 POP
628
+ s0 s7 XCHG
629
+ INC
630
+ 0 PUSHINT
631
+ s10 PUSH
632
+ TLEN
633
+ s2 s(-1) PUXC
634
+ GEQ
635
+ IF:<{
636
+ s0 s10 XCHG
637
+ NEWC
638
+ TPUSH
639
+ s0 s10 XCHG
640
+ }>
641
+ s8 s5 XCHG2
642
+ }>
643
+ s4 PUSH
644
+ INC
645
+ s7 PUSH
646
+ GREATER
647
+ IF:<{
648
+ s4 POP
649
+ s5 POP
650
+ s0 s5 XCHG
651
+ INC
652
+ 0 PUSHINT
653
+ 4 PUSHINT
654
+ s10 PUSH
655
+ TLEN
656
+ s3 s(-1) PUXC
657
+ GEQ
658
+ IF:<{
659
+ s0 s10 XCHG
660
+ NEWC
661
+ TPUSH
662
+ s0 s10 XCHG
663
+ }>
664
+ s7 s6 s6 XCHG3
665
+ s0 s4 XCHG
666
+ }>
667
+ OVER
668
+ 9 LESSINT
669
+ IF:<{
670
+ s0 s2 XCHG
671
+ 1 INDEX
672
+ ABS
673
+ s10 s8 PUSH2
674
+ INDEXVAR
675
+ s3 PUSH
676
+ STUX
677
+ s10 s0 s8 XC2PU
678
+ SETINDEXVAR
679
+ }>ELSE<{
680
+ OVER
681
+ 9 EQINT
682
+ IF:<{
683
+ s0 s2 XCHG
684
+ 1 INDEX
685
+ s10 s7 PUSH2
686
+ INDEXVAR
687
+ STREF
688
+ s10 s0 s7 XC2PU
689
+ SETINDEXVAR
690
+ }>ELSE<{
691
+ s0 s2 XCHG
692
+ 1 INDEX
693
+ s10 s7 PUSH2
694
+ INDEXVAR
695
+ STREF
696
+ s10 s0 s7 XC2PU
697
+ SETINDEXVAR
698
+ }>
699
+ }>
700
+ s9 s8 XCHG2
701
+ 4 STU
702
+ s8 PUSH
703
+ 0 GTINT
704
+ IF:<{
705
+ 3 PUSHINT
706
+ s7 PUSH
707
+ 1 EQINT
708
+ IF:<{
709
+ 0 PUSHINT
710
+ }>ELSE<{
711
+ s7 PUSH
712
+ }>
713
+ ROT
714
+ 2 STU
715
+ s4 s(-1) PUXC
716
+ 10 STU
717
+ 2 STU
718
+ s3 s8 XCHG2
719
+ ADD
720
+ }>ELSE<{
721
+ s8 POP
722
+ 10 PUSHPOW2DEC
723
+ s5 PUSH
724
+ 1 EQINT
725
+ IF:<{
726
+ 0 PUSHINT
727
+ }>ELSE<{
728
+ s5 PUSH
729
+ }>
730
+ s0 s9 XCHG2
731
+ 2 STU
732
+ s1 s8 XCHG
733
+ 10 STU
734
+ s1 s(-1) PUXC
735
+ 2 STU
736
+ SWAP
737
+ INC
738
+ s7 s0 s7 XCHG3
739
+ }>
740
+ s0 s2 XCHG
741
+ INC
742
+ s6 s7 XCHG
743
+ }>
744
+ 6 BLKDROP
745
+ 2 2 BLKDROP2
746
+ OVER
747
+ 1 INDEX
748
+ s2 PUSH
749
+ TLEN
750
+ DEC
751
+ DUP
752
+ 1 GTINT
753
+ IF:<{
754
+ OVER
755
+ BREFS
756
+ 0 EQINT
757
+ IF:<{
758
+ <b b> PUSHREF
759
+ <b b> PUSHREF
760
+ s0 s3 XCHG2
761
+ STREF
762
+ s1 s2 XCHG
763
+ STREF
764
+ }>ELSE<{
765
+ OVER
766
+ BREFS
767
+ 1 EQINT
768
+ IF:<{
769
+ <b b> PUSHREF
770
+ ROT
771
+ STREF
772
+ SWAP
773
+ }>
774
+ SWAP
775
+ }>
776
+ SWAP
777
+ }>
778
+ 350 PUSHINT
779
+ s3 PUSH
780
+ BBITS
781
+ SUB
782
+ s1 s3 XCHG
783
+ STONES
784
+ SWAP
785
+ STBR
786
+ OVER
787
+ 1 EQINT
788
+ IF:<{
789
+ 2 1 BLKDROP2
790
+ ENDC
791
+ }>ELSE<{
792
+ SWAP
793
+ 2 EQINT
794
+ IFJMP:<{
795
+ SWAP
796
+ 2 INDEX
797
+ ENDC
798
+ SWAP
799
+ STREF
800
+ ENDC
801
+ }>
802
+ OVER
803
+ 3 INDEX
804
+ ENDC
805
+ s0 s2 XCHG
806
+ 2 INDEX
807
+ ENDC
808
+ SWAP
809
+ STREF
810
+ STREF
811
+ ENDC
812
+ }>
813
+ }>
814
+ cl::nullObject PROCINLINE:<{
815
+ <b b> PUSHREF
816
+ }>
817
+ cl::set PROCINLINE:<{
818
+ s0 s2 XCHG
819
+ CTOS
820
+ SWAP
821
+ 18 MULCONST
822
+ 80 ADDCONST
823
+ 2DUP
824
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
825
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
826
+ SDSUBSTR // STACK [substring]
827
+ 2 PLDU // STACK [2BitUnsignInt]
828
+ s2 s1 PUSH2
829
+ // STACK [fieldInfoOffset, headerSlice]
830
+ 4 PUSHINT // STACK [_FIELD_TYPE_WIDTH, fieldInfoOffset, headerSlice]
831
+ SDSUBSTR // STACK [substring]
832
+ 4 PLDU // STACK [2BitUnsignInt]
833
+ 2OVER
834
+ 6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
835
+ 10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
836
+ SDSUBSTR // STACK [substring]
837
+ 10 PLDU // STACK [10BitUnsignInt]
838
+ s4 s3 PUXC
839
+ 16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
840
+ 2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
841
+ SDSUBSTR // STACK [substring]
842
+ 2 PLDU // STACK [10BitUnsignInt]
843
+ OVER
844
+ _getTypeWidth INLINECALLDICT
845
+ s3 PUSH
846
+ 0 EQINT
847
+ IF:<{
848
+ s5 PUSH
849
+ }>ELSE<{
850
+ s5 s3 PUSH2
851
+ PLDREFVAR
852
+ CTOS
853
+ }>
854
+ OVER
855
+ 0 NEQINT
856
+ IF:<{
857
+ 4 PUSHINT
858
+ s3 POP
859
+ }>
860
+ NEWC
861
+ OVER
862
+ SBITS
863
+ s7 PUSH
864
+ MIN
865
+ s2 PUSH
866
+ SREFS
867
+ s5 s(-1) PUXC
868
+ MIN
869
+ s3 PUSH
870
+ -ROT
871
+ SCUTFIRST
872
+ STSLICER
873
+ s4 PUSH
874
+ 9 EQINT
875
+ IF:<{
876
+ s2 POP
877
+ s3 POP
878
+ s4 POP
879
+ s5 s5 XCHG2
880
+ s0 s3 XCHG
881
+ STREF
882
+ 0 PUSHINT
883
+ s3 PUSH
884
+ SREFS
885
+ s0 s6 XCHG2
886
+ SUB
887
+ DEC
888
+ s3 s5 s0 XCHG3
889
+ SCUTLAST
890
+ s1 s3 XCHG
891
+ STSLICER
892
+ }>ELSE<{
893
+ s0 s4 XCHG
894
+ 9 EQINT
895
+ IF:<{
896
+ NIP
897
+ s4 POP
898
+ s5 s5 XCHG2
899
+ STREF
900
+ 0 PUSHINT
901
+ s3 PUSH
902
+ SREFS
903
+ s0 s6 XCHG2
904
+ SUB
905
+ DEC
906
+ s3 s5 s0 XCHG3
907
+ SCUTLAST
908
+ s1 s3 XCHG
909
+ STSLICER
910
+ }>ELSE<{
911
+ s2 POP
912
+ s0 s6 XCHG
913
+ ABS
914
+ s0 s2 s6 XC2PU
915
+ STUX
916
+ s3 s5 XCHG2
917
+ ADD
918
+ s2 PUSH
919
+ SREFS
920
+ s2 s3 XCHG
921
+ SSKIPFIRST
922
+ s1 s3 XCHG
923
+ STSLICER
924
+ }>
925
+ }>
926
+ s2 PUSH
927
+ 0 GTINT
928
+ IF:<{
929
+ ENDC
930
+ NEWC
931
+ s2 PUSH
932
+ SBITS
933
+ s3 s4 s(-1) PU2XC
934
+ SCUTFIRST
935
+ STSLICER
936
+ STREF
937
+ 0 PUSHINT
938
+ s2 PUSH
939
+ SREFS
940
+ s0 s4 XCHG2
941
+ SUB
942
+ DEC
943
+ s1 s3 XCHG
944
+ SCUTLAST
945
+ STSLICER
946
+ ENDC
947
+ }>ELSE<{
948
+ 2 1 BLKDROP2
949
+ ENDC
950
+ }>
951
+ }>
952
+ cl::get<uint> PROCINLINE:<{
953
+ s0 s2 XCHG
954
+ CTOS
955
+ SWAP
956
+ 18 MULCONST
957
+ 80 ADDCONST
958
+ 2DUP
959
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
960
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
961
+ SDSUBSTR // STACK [substring]
962
+ 2 PLDU // STACK [2BitUnsignInt]
963
+ s2 s1 PUXC
964
+ 6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
965
+ 10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
966
+ SDSUBSTR // STACK [substring]
967
+ 10 PLDU // STACK [10BitUnsignInt]
968
+ OVER
969
+ 0 EQINT
970
+ IF:<{
971
+ NIP
972
+ s2 PUSH
973
+ SDSUBSTR // STACK [substring]
974
+ s1 XCHG0
975
+ PLDUX // STACK [10BitUnsignInt] (CC +1 )
976
+ }>ELSE<{
977
+ -ROT
978
+ PLDREFVAR
979
+ CTOS
980
+ s1 s2 XCPU
981
+ SDSUBSTR // STACK [substring]
982
+ s1 XCHG0
983
+ PLDUX // STACK [10BitUnsignInt] (CC +1 )
984
+ }>
985
+ }>
986
+ cl::get<cellRef> PROCINLINE:<{
987
+ SWAP
988
+ CTOS
989
+ SWAP
990
+ 18 MULCONST
991
+ 80 ADDCONST
992
+ 2DUP
993
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
994
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
995
+ SDSUBSTR // STACK [substring]
996
+ 2 PLDU // STACK [2BitUnsignInt]
997
+ s2 s1 PUXC
998
+ 16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
999
+ 2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
1000
+ SDSUBSTR // STACK [substring]
1001
+ 2 PLDU // STACK [10BitUnsignInt]
1002
+ OVER
1003
+ 0 EQINT
1004
+ IF:<{
1005
+ NIP
1006
+ PLDREFVAR
1007
+ }>ELSE<{
1008
+ -ROT
1009
+ PLDREFVAR
1010
+ CTOS
1011
+ SWAP
1012
+ PLDREFVAR
1013
+ }>
1014
+ }>
1015
+ cl::getWithCell<cellRef> PROCINLINE:<{
1016
+ cl::get<cellRef> INLINECALLDICT
1017
+ }>
1018
+ cl::get<objRef> PROCINLINE:<{
1019
+ cl::get<cellRef> INLINECALLDICT
1020
+ }>
1021
+ cl::get<uint8> PROCINLINE:<{
1022
+ 8 PUSHINT
1023
+ cl::get<uint> INLINECALLDICT
1024
+ }>
1025
+ cl::get<uint16> PROCINLINE:<{
1026
+ 16 PUSHINT
1027
+ cl::get<uint> INLINECALLDICT
1028
+ }>
1029
+ cl::get<uint32> PROCINLINE:<{
1030
+ 32 PUSHINT
1031
+ cl::get<uint> INLINECALLDICT
1032
+ }>
1033
+ cl::get<uint64> PROCINLINE:<{
1034
+ 64 PUSHINT
1035
+ cl::get<uint> INLINECALLDICT
1036
+ }>
1037
+ cl::get<coins> PROCINLINE:<{
1038
+ 7 PUSHPOW2
1039
+ cl::get<uint> INLINECALLDICT
1040
+ }>
1041
+ cl::get<uint256> PROCINLINE:<{
1042
+ 8 PUSHPOW2
1043
+ cl::get<uint> INLINECALLDICT
1044
+ }>
1045
+ cl::get<std_address> PROCINLINE:<{
1046
+ 8 PUSHPOW2
1047
+ cl::get<uint> INLINECALLDICT
1048
+ hashpartToBasechainAddressStd INLINECALLDICT
1049
+ }>
1050
+ cl::get<bool> PROCINLINE:<{
1051
+ 1 PUSHINT
1052
+ cl::get<uint> INLINECALLDICT
1053
+ 0 NEQINT
1054
+ }>
1055
+ cl::get<dict256> PROCINLINE:<{
1056
+ cl::get<cellRef> INLINECALLDICT
1057
+ }>
1058
+ cl::get<address> PROCINLINE:<{
1059
+ 8 PUSHPOW2
1060
+ cl::get<uint> INLINECALLDICT
1061
+ }>
1062
+ typeofField PROCINLINE:<{
1063
+ SWAP
1064
+ CTOS
1065
+ SWAP
1066
+ 18 MULCONST
1067
+ 80 ADDCONST
1068
+ 4 PUSHINT
1069
+ SDSUBSTR
1070
+ 4 PLDU
1071
+ }>
1072
+ compareObjectFields PROCINLINE:<{
1073
+ CONT:<{
1074
+ c2 SAVE
1075
+ SAMEALTSAVE
1076
+ OVER
1077
+ cl::typeof INLINECALLDICT
1078
+ OVER
1079
+ cl::typeof INLINECALLDICT
1080
+ NEQ
1081
+ DUP
1082
+ IF:<{
1083
+ 3 BLKDROP
1084
+ 16 PUSHINT
1085
+ }>ELSE<{
1086
+ s2 PUSH
1087
+ cl::typeof INLINECALLDICT
1088
+ 1314212940 PUSHINT
1089
+ EQUAL
1090
+ IFJMP:<{
1091
+ 3 BLKDROP
1092
+ -1 PUSHINT
1093
+ }>
1094
+ 0 PUSHINT
1095
+ WHILE:<{
1096
+ DUP
1097
+ 16 LESSINT
1098
+ }>DO<{
1099
+ s3 s0 PUSH2
1100
+ typeofField INLINECALLDICT
1101
+ DUP
1102
+ 9 EQINT
1103
+ IF:<{
1104
+ DROP
1105
+ NIP
1106
+ s2 s0 PUSH2
1107
+ cl::get<objRef> INLINECALLDICT
1108
+ cl::hash INLINECALLDICT
1109
+ s2 s1 PUSH2
1110
+ cl::get<objRef> INLINECALLDICT
1111
+ cl::hash INLINECALLDICT
1112
+ NEQ
1113
+ DUP
1114
+ IF:<{
1115
+ s3 s1 PUSH2
1116
+ cl::get<objRef> INLINECALLDICT
1117
+ HASHCU
1118
+ s0 DUMP
1119
+ DROP
1120
+ s2 s1 PUSH2
1121
+ cl::get<objRef> INLINECALLDICT
1122
+ HASHCU
1123
+ s0 DUMP
1124
+ DROP
1125
+ }>
1126
+ }>ELSE<{
1127
+ DUP
1128
+ 9 LESSINT
1129
+ IF:<{
1130
+ 1 2 BLKDROP2
1131
+ _getTypeWidth INLINECALLDICT
1132
+ s3 s1 s0 PUSH3
1133
+ cl::get<uint> INLINECALLDICT
1134
+ s3 s2 s1 PUSH3
1135
+ cl::get<uint> INLINECALLDICT
1136
+ NEQ
1137
+ DUP
1138
+ IF:<{
1139
+ x{6c68733a20} PUSHSLICE
1140
+ s5 s3 s2 PUSH3
1141
+ cl::get<uint> INLINECALLDICT
1142
+ str::console::log<int> CALLDICT
1143
+ 2OVER
1144
+ x{7268733a20} PUSHSLICE
1145
+ s0 s4 XCHG
1146
+ cl::get<uint> INLINECALLDICT
1147
+ s1 s2 XCHG
1148
+ str::console::log<int> CALLDICT
1149
+ }>ELSE<{
1150
+ NIP
1151
+ }>
1152
+ }>ELSE<{
1153
+ 2DROP
1154
+ 16 PUSHINT
1155
+ SWAP
1156
+ }>
1157
+ }>
1158
+ DUP
1159
+ IFJMP:<{
1160
+ s1 s3 XCHG
1161
+ 3 BLKDROP
1162
+ x{4d616c666f726d6564206669656c643a20} PUSHSLICE
1163
+ OVER
1164
+ str::console::log<int> CALLDICT
1165
+ RETALT
1166
+ }>
1167
+ SWAP
1168
+ INC
1169
+ }>
1170
+ 4 BLKDROP
1171
+ -1 PUSHINT
1172
+ }>
1173
+ }>
1174
+ EXECUTE
1175
+ }>
1176
+ objectsAreEqual PROCINLINE:<{
1177
+ compareObjectFields INLINECALLDICT
1178
+ -1 EQINT
1179
+ }>
1180
+ _typeToStr PROC:<{
1181
+ DUP
1182
+ 3 EQINT
1183
+ IFJMP:<{
1184
+ DROP
1185
+ x{75696e7438} PUSHSLICE
1186
+ }>
1187
+ DUP
1188
+ 4 EQINT
1189
+ IFJMP:<{
1190
+ DROP
1191
+ x{75696e743136} PUSHSLICE
1192
+ }>
1193
+ DUP
1194
+ 5 EQINT
1195
+ IFJMP:<{
1196
+ DROP
1197
+ x{75696e743332} PUSHSLICE
1198
+ }>
1199
+ DUP
1200
+ 6 EQINT
1201
+ IFJMP:<{
1202
+ DROP
1203
+ x{75696e743634} PUSHSLICE
1204
+ }>
1205
+ DUP
1206
+ 8 EQINT
1207
+ IFJMP:<{
1208
+ DROP
1209
+ x{75696e74323536} PUSHSLICE
1210
+ }>
1211
+ DUP
1212
+ 7 EQINT
1213
+ IFJMP:<{
1214
+ DROP
1215
+ x{636f696e73} PUSHSLICE
1216
+ }>
1217
+ DUP
1218
+ 8 EQINT
1219
+ IFJMP:<{
1220
+ DROP
1221
+ x{61646472657373} PUSHSLICE
1222
+ }>
1223
+ DUP
1224
+ 9 EQINT
1225
+ IFJMP:<{
1226
+ DROP
1227
+ x{64696374323536} PUSHSLICE
1228
+ }>
1229
+ DUP
1230
+ 9 EQINT
1231
+ IFJMP:<{
1232
+ DROP
1233
+ x{6f626a526566} PUSHSLICE
1234
+ }>
1235
+ DUP
1236
+ 9 EQINT
1237
+ IFJMP:<{
1238
+ DROP
1239
+ x{63656c6c526566} PUSHSLICE
1240
+ }>
1241
+ 0 EQINT
1242
+ IFJMP:<{
1243
+ x{626f6f6c} PUSHSLICE
1244
+ }>
1245
+ x{756e6b6e6f776e} PUSHSLICE
1246
+ }>
1247
+ printField PROCINLINE:<{
1248
+ OVER
1249
+ CTOS
1250
+ s2 s1 PUSH2
1251
+ typeofField INLINECALLDICT
1252
+ s2 PUSH
1253
+ 18 MULCONST
1254
+ 80 ADDCONST
1255
+ DUP
1256
+ 4 ADDCONST
1257
+ s3 s(-1) PUXC
1258
+ 2 PUSHINT
1259
+ SDSUBSTR
1260
+ 2 PLDU
1261
+ OVER
1262
+ 4 ADDCONST
1263
+ 2 ADDCONST
1264
+ 10 ADDCONST
1265
+ s4 s(-1) PUXC
1266
+ 2 PUSHINT
1267
+ SDSUBSTR
1268
+ 2 PLDU
1269
+ s3 PUSH
1270
+ _getTypeWidth INLINECALLDICT
1271
+ s0 s3 XCHG
1272
+ 4 ADDCONST
1273
+ 2 ADDCONST
1274
+ s1 s5 XCHG
1275
+ 10 PUSHINT
1276
+ SDSUBSTR
1277
+ 10 PLDU
1278
+ s3 PUSH
1279
+ _typeToStr CALLDICT
1280
+ x{20} PUSHSLICE
1281
+ str::concat CALLDICT
1282
+ s6 PUSH
1283
+ str::concatInt CALLDICT
1284
+ x{2061742063} PUSHSLICE
1285
+ str::concat CALLDICT
1286
+ ROT
1287
+ str::concatInt CALLDICT
1288
+ s2 PUSH
1289
+ 0 GTINT
1290
+ IF:<{
1291
+ s4 POP
1292
+ s0 s3 XCHG
1293
+ x{2e62} PUSHSLICE
1294
+ str::concat CALLDICT
1295
+ s0 s3 XCHG2
1296
+ str::concatInt CALLDICT
1297
+ }>ELSE<{
1298
+ NIP
1299
+ x{2e72} PUSHSLICE
1300
+ str::concat CALLDICT
1301
+ s0 s3 XCHG2
1302
+ str::concatInt CALLDICT
1303
+ }>
1304
+ OVER
1305
+ 9 LESSINT
1306
+ IF:<{
1307
+ NIP
1308
+ x{203d20} PUSHSLICE
1309
+ str::concat CALLDICT
1310
+ 3 -ROLL
1311
+ cl::get<uint> INLINECALLDICT
1312
+ str::concatInt CALLDICT
1313
+ STRDUMP
1314
+ DROP
1315
+ }>ELSE<{
1316
+ s2 POP
1317
+ 9 EQINT
1318
+ IF:<{
1319
+ x{2068617368203d20} PUSHSLICE
1320
+ str::concat CALLDICT
1321
+ -ROT
1322
+ cl::get<objRef> INLINECALLDICT
1323
+ cl::hash INLINECALLDICT
1324
+ str::concatInt CALLDICT
1325
+ STRDUMP
1326
+ DROP
1327
+ }>ELSE<{
1328
+ x{2068617368203d20} PUSHSLICE
1329
+ str::concat CALLDICT
1330
+ -ROT
1331
+ cl::get<cellRef> INLINECALLDICT
1332
+ HASHCU
1333
+ str::concatInt CALLDICT
1334
+ STRDUMP
1335
+ DROP
1336
+ }>
1337
+ }>
1338
+ }>
1339
+ uint256ToSlice PROCINLINE:<{
1340
+ NEWC
1341
+ 256 STU
1342
+ ENDC CTOS
1343
+ }>
1344
+ sliceToUint256 PROCINLINE:<{
1345
+ 256 PLDU
1346
+ }>
1347
+ cl::dict256::New PROCINLINE:<{
1348
+ <b b> PUSHREF
1349
+ }>
1350
+ cl::dict256::get PROCINLINE:<{
1351
+ OVER
1352
+ cell_is_empty INLINECALLDICT
1353
+ IF:<{
1354
+ NIP
1355
+ NEWDICT
1356
+ 8 PUSHPOW2
1357
+ DICTUGET
1358
+ NULLSWAPIFNOT
1359
+ }>ELSE<{
1360
+ SWAP
1361
+ 8 PUSHPOW2
1362
+ DICTUGET
1363
+ NULLSWAPIFNOT
1364
+ }>
1365
+ }>
1366
+ cl::dict256::get<uint256> PROCINLINE:<{
1367
+ cl::dict256::get INLINECALLDICT
1368
+ IF:<{
1369
+ sliceToUint256 INLINECALLDICT
1370
+ TRUE
1371
+ }>ELSE<{
1372
+ DROP
1373
+ 0 PUSHINT
1374
+ FALSE
1375
+ }>
1376
+ }>
1377
+ cl::dict256::get<cellRef> PROCINLINE:<{
1378
+ OVER
1379
+ cell_is_empty INLINECALLDICT
1380
+ IF:<{
1381
+ 2DROP
1382
+ <b b> PUSHREF
1383
+ FALSE
1384
+ }>ELSE<{
1385
+ SWAP
1386
+ 8 PUSHPOW2
1387
+ DICTUGETREF
1388
+ NULLSWAPIFNOT
1389
+ }>
1390
+ }>
1391
+ cl::dict256::setRef PROCINLINE:<{
1392
+ s2 PUSH
1393
+ cell_is_empty INLINECALLDICT
1394
+ IF:<{
1395
+ 1 2 BLKDROP2
1396
+ NEWDICT
1397
+ s1 s2 XCHG
1398
+ 8 PUSHPOW2
1399
+ DICTUSETREF
1400
+ }>ELSE<{
1401
+ s0 s2 XCHG
1402
+ 8 PUSHPOW2
1403
+ DICTUSETREF
1404
+ }>
1405
+ }>
1406
+ cl::dict256::set PROCINLINE:<{
1407
+ DUP
1408
+ <{ TRY:<{ SBITS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
1409
+ IF:<{
1410
+ }>ELSE<{
1411
+ uint256ToSlice INLINECALLDICT
1412
+ }>
1413
+ s2 PUSH
1414
+ cell_is_empty INLINECALLDICT
1415
+ IF:<{
1416
+ s2 POP
1417
+ NEWDICT
1418
+ 8 PUSHPOW2
1419
+ DICTUSET
1420
+ }>ELSE<{
1421
+ s0 s2 XCHG
1422
+ 8 PUSHPOW2
1423
+ DICTUSET
1424
+ }>
1425
+ }>
1426
+ cl::dict256::delete PROC:<{
1427
+ OVER
1428
+ cell_is_empty INLINECALLDICT
1429
+ IFJMP:<{
1430
+ DROP
1431
+ }>
1432
+ SWAP
1433
+ 8 PUSHPOW2
1434
+ DICTUDEL
1435
+ DROP
1436
+ DUP
1437
+ <{ TRY:<{ CTOS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
1438
+ IF:<{
1439
+ }>ELSE<{
1440
+ DROP
1441
+ cl::dict256::New INLINECALLDICT
1442
+ }>
1443
+ }>
1444
+ cl::dict256::getMin<slice> PROC:<{
1445
+ DUP
1446
+ cell_is_empty INLINECALLDICT
1447
+ IFJMP:<{
1448
+ DROP
1449
+ -1 PUSHINT
1450
+ PUSHNULL
1451
+ }>
1452
+ 8 PUSHPOW2
1453
+ DICTUMIN
1454
+ NULLSWAPIFNOT2
1455
+ IFJMP:<{
1456
+ SWAP
1457
+ }>
1458
+ 2DROP
1459
+ -1 PUSHINT
1460
+ PUSHNULL
1461
+ }>
1462
+ cl::dict256::getMin<uint256> PROC:<{
1463
+ DUP
1464
+ cell_is_empty INLINECALLDICT
1465
+ IFJMP:<{
1466
+ DROP
1467
+ -1 PUSHINT
1468
+ PUSHNULL
1469
+ }>
1470
+ 8 PUSHPOW2
1471
+ DICTUMIN
1472
+ NULLSWAPIFNOT2
1473
+ IFJMP:<{
1474
+ SWAP
1475
+ 256 PLDU
1476
+ }>
1477
+ 2DROP
1478
+ -1 PUSHINT
1479
+ PUSHNULL
1480
+ }>
1481
+ cl::dict256::getMin<cellRef> PROC:<{
1482
+ DUP
1483
+ cell_is_empty INLINECALLDICT
1484
+ IFJMP:<{
1485
+ DROP
1486
+ -1 PUSHINT
1487
+ PUSHNULL
1488
+ }>
1489
+ 8 PUSHPOW2
1490
+ DICTUMINREF
1491
+ NULLSWAPIFNOT2
1492
+ IFJMP:<{
1493
+ SWAP
1494
+ }>
1495
+ 2DROP
1496
+ -1 PUSHINT
1497
+ PUSHNULL
1498
+ }>
1499
+ cl::dict256::getNext<slice> PROC:<{
1500
+ OVER
1501
+ cell_is_empty INLINECALLDICT
1502
+ IFJMP:<{
1503
+ 2DROP
1504
+ -1 PUSHINT
1505
+ PUSHNULL
1506
+ }>
1507
+ SWAP
1508
+ 8 PUSHPOW2
1509
+ DICTUGETNEXT
1510
+ NULLSWAPIFNOT2
1511
+ IFJMP:<{
1512
+ SWAP
1513
+ }>
1514
+ 2DROP
1515
+ -1 PUSHINT
1516
+ PUSHNULL
1517
+ }>
1518
+ cl::dict256::getNext<uint256> PROC:<{
1519
+ OVER
1520
+ cell_is_empty INLINECALLDICT
1521
+ IFJMP:<{
1522
+ 2DROP
1523
+ -1 PUSHINT
1524
+ PUSHNULL
1525
+ }>
1526
+ SWAP
1527
+ 8 PUSHPOW2
1528
+ DICTUGETNEXT
1529
+ NULLSWAPIFNOT2
1530
+ IFJMP:<{
1531
+ SWAP
1532
+ 256 PLDU
1533
+ }>
1534
+ 2DROP
1535
+ -1 PUSHINT
1536
+ PUSHNULL
1537
+ }>
1538
+ cl::dict256::getNext<cellRef> PROC:<{
1539
+ OVER
1540
+ cell_is_empty INLINECALLDICT
1541
+ IFJMP:<{
1542
+ 2DROP
1543
+ -1 PUSHINT
1544
+ PUSHNULL
1545
+ }>
1546
+ SWAP
1547
+ 8 PUSHPOW2
1548
+ DICTUGETNEXT
1549
+ NULLSWAPIFNOT2
1550
+ IFJMP:<{
1551
+ SWAP
1552
+ 0 PLDREFIDX
1553
+ }>
1554
+ 2DROP
1555
+ -1 PUSHINT
1556
+ PUSHNULL
1557
+ }>
1558
+ cl::dict256::size PROCINLINE:<{
1559
+ 0 PUSHINT
1560
+ OVER
1561
+ cl::dict256::getMin<slice> CALLDICT
1562
+ DROP
1563
+ WHILE:<{
1564
+ DUP
1565
+ -1 GTINT
1566
+ }>DO<{
1567
+ s2 s(-1) PUXC
1568
+ cl::dict256::getNext<slice> CALLDICT
1569
+ DROP
1570
+ SWAP
1571
+ INC
1572
+ SWAP
1573
+ }>
1574
+ DROP
1575
+ NIP
1576
+ }>
1577
+ cl::nestedDict256::set PROCINLINE:<{
1578
+ 2OVER
1579
+ cl::get<dict256> INLINECALLDICT
1580
+ -ROT
1581
+ cl::dict256::set INLINECALLDICT
1582
+ cl::set INLINECALLDICT
1583
+ }>
1584
+ cl::nestedDict256::setRef PROCINLINE:<{
1585
+ 2OVER
1586
+ cl::get<dict256> INLINECALLDICT
1587
+ -ROT
1588
+ cl::dict256::setRef INLINECALLDICT
1589
+ cl::set INLINECALLDICT
1590
+ }>
1591
+ cl::nestedDict256::delete PROCINLINE:<{
1592
+ s2 s1 PUSH2
1593
+ cl::get<dict256> INLINECALLDICT
1594
+ SWAP
1595
+ cl::dict256::delete CALLDICT
1596
+ cl::set INLINECALLDICT
1597
+ }>
1598
+ cl::nestedDict256::get<uint256> PROCINLINE:<{
1599
+ -ROT
1600
+ cl::get<dict256> INLINECALLDICT
1601
+ SWAP
1602
+ cl::dict256::get<uint256> INLINECALLDICT
1603
+ }>
1604
+ cl::nestedDict256::get<slice> PROCINLINE:<{
1605
+ -ROT
1606
+ cl::get<dict256> INLINECALLDICT
1607
+ SWAP
1608
+ cl::dict256::get INLINECALLDICT
1609
+ }>
1610
+ cl::nestedDict256::get<cellRef> PROCINLINE:<{
1611
+ -ROT
1612
+ cl::get<dict256> INLINECALLDICT
1613
+ SWAP
1614
+ cl::dict256::get INLINECALLDICT
1615
+ DUP
1616
+ IF:<{
1617
+ SWAP
1618
+ 0 PLDREFIDX
1619
+ SWAP
1620
+ }>ELSE<{
1621
+ NIP
1622
+ <b b> PUSHREF
1623
+ SWAP
1624
+ }>
1625
+ }>
1626
+ getMsgValue PROCINLINE:<{
1627
+ txnContext GETGLOB
1628
+ 6 INDEX
1629
+ }>
1630
+ getOpcode PROCINLINE:<{
1631
+ txnContext GETGLOB
1632
+ 3 INDEX
1633
+ }>
1634
+ txnIsBounced PROCINLINE:<{
1635
+ txnContext GETGLOB
1636
+ 0 INDEX
1637
+ }>
1638
+ getContractBalance PROCINLINE:<{
1639
+ txnContext GETGLOB
1640
+ 5 INDEX
1641
+ }>
1642
+ getInitialContractBalance PROCINLINE:<{
1643
+ getContractBalance INLINECALLDICT
1644
+ getMsgValue INLINECALLDICT
1645
+ SUB
1646
+ }>
1647
+ getCaller PROCINLINE:<{
1648
+ txnContext GETGLOB
1649
+ 1 INDEX
1650
+ }>
1651
+ getOrigin PROCINLINE:<{
1652
+ txnContext GETGLOB
1653
+ 9 INDEX
1654
+ }>
1655
+ getOriginStd PROCINLINE:<{
1656
+ getOrigin INLINECALLDICT
1657
+ hashpartToBasechainAddressStd INLINECALLDICT
1658
+ }>
1659
+ getDonationNanos PROCINLINE:<{
1660
+ txnContext GETGLOB
1661
+ 10 INDEX
1662
+ }>
1663
+ setDonationNanos PROCINLINE:<{
1664
+ txnContext GETGLOB
1665
+ SWAP
1666
+ 10 PUSHINT
1667
+ SETINDEXVAR
1668
+ txnContext SETGLOB
1669
+ }>
1670
+ getMsgData PROCINLINE:<{
1671
+ txnContext GETGLOB
1672
+ 11 INDEX
1673
+ }>
1674
+ setOrigin PROCINLINE:<{
1675
+ txnContext GETGLOB
1676
+ SWAP
1677
+ 9 PUSHINT
1678
+ SETINDEXVAR
1679
+ txnContext SETGLOB
1680
+ }>
1681
+ initTxnContext PROCINLINE:<{
1682
+ OVER
1683
+ CTOS
1684
+ 4 PUSHINT
1685
+ LDUX
1686
+ FALSE
1687
+ s0 s2 XCHG
1688
+ 1 PUSHINT
1689
+ AND
1690
+ IF:<{
1691
+ NIP
1692
+ TRUE
1693
+ s0 s2 XCHG
1694
+ 32 PUSHINT
1695
+ SDSKIPFIRST
1696
+ -ROT
1697
+ }>
1698
+ -1 PUSHINT
1699
+ DUP
1700
+ 0 PUSHINT
1701
+ PUSHNULL
1702
+ s0 s4 XCHG
1703
+ LDMSGADDR
1704
+ LDMSGADDR
1705
+ NIP
1706
+ LDGRAMS
1707
+ NIP
1708
+ 1 PUSHINT
1709
+ SDSKIPFIRST
1710
+ LDGRAMS
1711
+ NIP
1712
+ SWAP
1713
+ basechainAddressStdToHashpart INLINECALLDICT
1714
+ s0 s7 PUSH2
1715
+ SEMPTY
1716
+ IFNOT:<{
1717
+ 3 3 BLKDROP2
1718
+ s0 s5 XCHG
1719
+ 32 PUSHINT
1720
+ LDUX
1721
+ 64 PUSHINT
1722
+ LDUX
1723
+ LDGRAMS
1724
+ DUP
1725
+ SBITS
1726
+ 267 PUSHINT
1727
+ GEQ
1728
+ IF:<{
1729
+ s8 POP
1730
+ s7 PUSH
1731
+ 11 PUSHINT
1732
+ 8 PUSHPOW2
1733
+ SDSUBSTR
1734
+ 256 PLDU
1735
+ s0 s8 XCHG
1736
+ }>
1737
+ DUP
1738
+ SREMPTY
1739
+ IFNOT:<{
1740
+ s6 POP
1741
+ s5 PUSH
1742
+ PLDREF
1743
+ s0 s6 XCHG
1744
+ }>
1745
+ s0 s8 XCHG
1746
+ s3 s5 XCHG
1747
+ s4 s3 s0 XCHG3
1748
+ s1 s2 XCHG
1749
+ }>
1750
+ s0 s2 XCHG
1751
+ LDGRAMS
1752
+ DROP
1753
+ 3 PUSHINT
1754
+ 1 MULRSHIFT#
1755
+ s7 s11 XCHG
1756
+ s10 s9 XCHG2
1757
+ s5 s8 XCHG
1758
+ s4 s7 XCHG
1759
+ s4 s6 XCHG
1760
+ s3 s3 XCHG2
1761
+ s0 s5 XCHG
1762
+ s0 s4 XCHG
1763
+ 12 TUPLE
1764
+ txnContext SETGLOB
1765
+ }>
1766
+ emptyActions PROCINLINE:<{
1767
+ 0 PUSHINT
1768
+ SINGLE
1769
+ }>
1770
+ sendTerminalAction PROCINLINE:<{
1771
+ 24 PUSHINT
1772
+ NEWC
1773
+ 6 STU
1774
+ s0 s4 XCHG
1775
+ hashpartToBasechainAddressStd INLINECALLDICT
1776
+ s1 s4 XCHG
1777
+ STSLICER
1778
+ 0 PUSHINT
1779
+ STGRAMS
1780
+ OVER
1781
+ ISNULL
1782
+ IF:<{
1783
+ 1 PUSHINT
1784
+ s2 POP
1785
+ 107 STU
1786
+ }>ELSE<{
1787
+ 7 PUSHINT
1788
+ SWAP
1789
+ 108 STU
1790
+ STREF
1791
+ }>
1792
+ STREF
1793
+ ENDC
1794
+ 7 PUSHPOW2
1795
+ ROT
1796
+ OR
1797
+ SENDRAWMSG
1798
+ }>
1799
+ sendNonTerminalAction PROCINLINE:<{
1800
+ 1 PUSHINT
1801
+ s0 s5 XCHG
1802
+ NEWC
1803
+ 6 STU
1804
+ s0 s3 XCHG
1805
+ hashpartToBasechainAddressStd INLINECALLDICT
1806
+ s1 s3 XCHG
1807
+ STSLICER
1808
+ s0 s3 XCHG2
1809
+ STGRAMS
1810
+ s1 s3 XCHG
1811
+ 107 STU
1812
+ STREF
1813
+ ENDC
1814
+ SWAP
1815
+ SENDRAWMSG
1816
+ }>
1817
+ buildLayerzeroMessageBody PROCINLINE:<{
1818
+ SWAP
1819
+ txnContext GETGLOB 4 INDEX SWAP NEWC 32 STU 64 STU
1820
+ ROT
1821
+ STGRAMS
1822
+ getOriginStd INLINECALLDICT
1823
+ STSLICER
1824
+ STREF
1825
+ ENDC
1826
+ }>
1827
+ _executeOpcode PROCINLINE:<{
1828
+ CONT:<{
1829
+ c2 SAVE
1830
+ SAMEALTSAVE
1831
+ OVER
1832
+ 3712918452 PUSHINT
1833
+ EQUAL
1834
+ IF:<{
1835
+ NIP
1836
+ endpointSend INLINECALLDICT
1837
+ }>ELSE<{
1838
+ OVER
1839
+ 1571517594 PUSHINT
1840
+ EQUAL
1841
+ IFJMP:<{
1842
+ NIP
1843
+ endpointCommitPacket INLINECALLDICT
1844
+ RETALT
1845
+ }>
1846
+ OVER
1847
+ 2606379067 PUSHINT
1848
+ EQUAL
1849
+ IFJMP:<{
1850
+ NIP
1851
+ setEpConfigDefaults INLINECALLDICT
1852
+ RETALT
1853
+ }>
1854
+ OVER
1855
+ 2317840231 PUSHINT
1856
+ EQUAL
1857
+ IFJMP:<{
1858
+ NIP
1859
+ setEpConfigOApp INLINECALLDICT
1860
+ RETALT
1861
+ }>
1862
+ OVER
1863
+ 3132988998 PUSHINT
1864
+ EQUAL
1865
+ IFJMP:<{
1866
+ NIP
1867
+ addMsglib INLINECALLDICT
1868
+ RETALT
1869
+ }>
1870
+ SWAP
1871
+ 3876417750 PUSHINT
1872
+ EQUAL
1873
+ IFJMP:<{
1874
+ getMsglibInfoCallback INLINECALLDICT
1875
+ RETALT
1876
+ }>
1877
+ DROP
1878
+ 1199 THROW
1879
+ NIL
1880
+ }>
1881
+ }>
1882
+ EXECUTE
1883
+ }>
1884
+ _executeAction PROCINLINE:<{
1885
+ CONT:<{
1886
+ c2 SAVE
1887
+ SAMEALTSAVE
1888
+ OVER
1889
+ 435778055796 PUSHINT
1890
+ EQUAL
1891
+ IF:<{
1892
+ NIP
1893
+ executeEvent INLINECALLDICT
1894
+ }>ELSE<{
1895
+ OVER
1896
+ 459904164859953153141868 PUSHINT
1897
+ EQUAL
1898
+ IFJMP:<{
1899
+ NIP
1900
+ executeCall INLINECALLDICT
1901
+ RETALT
1902
+ }>
1903
+ OVER
1904
+ 31632371545894516 PUSHINT
1905
+ EQUAL
1906
+ IFJMP:<{
1907
+ NIP
1908
+ executePayment INLINECALLDICT
1909
+ RETALT
1910
+ }>
1911
+ SWAP
1912
+ 110386840629113 PUSHINT
1913
+ EQUAL
1914
+ IFJMP:<{
1915
+ executeDeploy INLINECALLDICT
1916
+ RETALT
1917
+ }>
1918
+ DROP
1919
+ 1693 THROW
1920
+ FALSE
1921
+ }>
1922
+ }>
1923
+ EXECUTE
1924
+ }>
1925
+ assertInitialized PROCINLINE:<{
1926
+ getContractStorage INLINECALLDICT
1927
+ 0 PUSHINT
1928
+ cl::get<objRef> INLINECALLDICT
1929
+ 2 PUSHINT
1930
+ cl::get<bool> INLINECALLDICT
1931
+ 1160 THROWIFNOT
1932
+ }>
1933
+ checkPermissions PROCINLINE:<{
1934
+ OVER
1935
+ 3812333683 PUSHINT
1936
+ EQUAL
1937
+ IF:<{
1938
+ 2DROP
1939
+ }>ELSE<{
1940
+ OVER
1941
+ 4133284232 PUSHINT
1942
+ EQUAL
1943
+ IF:<{
1944
+ 2DROP
1945
+ assertOwner INLINECALLDICT
1946
+ }>ELSE<{
1947
+ _checkPermissions INLINECALLDICT
1948
+ }>
1949
+ }>
1950
+ }>
1951
+ initialize PROCINLINE:<{
1952
+ assertAuthenticated INLINECALLDICT
1953
+ getContractStorage INLINECALLDICT
1954
+ 0 PUSHINT
1955
+ cl::get<objRef> INLINECALLDICT
1956
+ 2 PUSHINT
1957
+ cl::get<bool> INLINECALLDICT
1958
+ IF:<{
1959
+ DROP
1960
+ emptyActions INLINECALLDICT
1961
+ }>ELSE<{
1962
+ _initialize INLINECALLDICT
1963
+ 0 PUSHINT
1964
+ s2 s0 PUSH2
1965
+ cl::get<objRef> INLINECALLDICT
1966
+ 2 PUSHINT
1967
+ TRUE
1968
+ cl::set INLINECALLDICT
1969
+ s2 s3 XCHG
1970
+ cl::set INLINECALLDICT
1971
+ setContractStorage INLINECALLDICT
1972
+ }>
1973
+ }>
1974
+ authenticateIfNecessary PROCINLINE:<{
1975
+ getContractStorage INLINECALLDICT
1976
+ 0 PUSHINT
1977
+ cl::get<objRef> INLINECALLDICT
1978
+ 1 PUSHINT
1979
+ cl::get<bool> INLINECALLDICT
1980
+ 0 EQINT
1981
+ IF:<{
1982
+ authenticate CALLDICT
1983
+ }>
1984
+ }>
1985
+ assertOwner PROCINLINE:<{
1986
+ getContractStorage INLINECALLDICT
1987
+ 0 PUSHINT
1988
+ cl::get<objRef> INLINECALLDICT
1989
+ getCaller INLINECALLDICT
1990
+ SWAP
1991
+ 0 PUSHINT
1992
+ cl::get<address> INLINECALLDICT
1993
+ EQUAL
1994
+ 163 THROWIFNOT
1995
+ }>
1996
+ _checkPermissions PROCINLINE:<{
1997
+ CONT:<{
1998
+ c2 SAVE
1999
+ SAMEALTSAVE
2000
+ OVER
2001
+ 3712918452 PUSHINT
2002
+ EQUAL
2003
+ IF:<{
2004
+ NIP
2005
+ getCaller INLINECALLDICT
2006
+ SWAP
2007
+ 3 PUSHINT
2008
+ cl::get<objRef> INLINECALLDICT
2009
+ 0 PUSHINT
2010
+ cl::get<objRef> INLINECALLDICT
2011
+ 1 PUSHINT
2012
+ cl::get<address> INLINECALLDICT
2013
+ EQUAL
2014
+ 662 THROWIFNOT
2015
+ }>ELSE<{
2016
+ DROP
2017
+ DUP
2018
+ 1571517594 PUSHINT
2019
+ EQUAL
2020
+ IFJMP:<{
2021
+ DROP
2022
+ RETALT
2023
+ }>
2024
+ DUP
2025
+ 2317840231 PUSHINT
2026
+ EQUAL
2027
+ OVER
2028
+ 2606379067 PUSHINT
2029
+ EQUAL
2030
+ OR
2031
+ OVER
2032
+ 3132988998 PUSHINT
2033
+ EQUAL
2034
+ OR
2035
+ IF:<{
2036
+ DROP
2037
+ assertOwner INLINECALLDICT
2038
+ }>ELSE<{
2039
+ 3876417750 PUSHINT
2040
+ EQUAL
2041
+ IF:<{
2042
+ _assertAuthorizedMsglib INLINECALLDICT
2043
+ }>ELSE<{
2044
+ 1199 THROW
2045
+ }>
2046
+ }>
2047
+ }>
2048
+ }>
2049
+ EXECUTE
2050
+ }>
2051
+ preamble PROCINLINE:<{
2052
+ getContractStorage INLINECALLDICT
2053
+ emptyActions INLINECALLDICT
2054
+ }>
2055
+ main PROCINLINE:<{
2056
+ 3 -ROLL
2057
+ s3 PUSH
2058
+ initTxnContext INLINECALLDICT
2059
+ txnIsBounced INLINECALLDICT
2060
+ IF:<{
2061
+ DROP
2062
+ }>ELSE<{
2063
+ authenticateIfNecessary INLINECALLDICT
2064
+ SEMPTY
2065
+ IFJMP:<{
2066
+ }>
2067
+ getOpcode INLINECALLDICT
2068
+ getMsgData INLINECALLDICT
2069
+ 2DUP
2070
+ checkPermissions INLINECALLDICT
2071
+ OVER
2072
+ 3812333683 PUSHINT
2073
+ EQUAL
2074
+ IF:<{
2075
+ 488 THROW
2076
+ }>
2077
+ OVER
2078
+ 4133284232 PUSHINT
2079
+ EQUAL
2080
+ IF:<{
2081
+ NIP
2082
+ initialize INLINECALLDICT
2083
+ }>ELSE<{
2084
+ assertInitialized INLINECALLDICT
2085
+ _executeOpcode INLINECALLDICT
2086
+ }>
2087
+ DUP
2088
+ 0 INDEX
2089
+ getContractBalance INLINECALLDICT
2090
+ STORAGEFEES
2091
+ SUB
2092
+ getMsgValue INLINECALLDICT
2093
+ getDonationNanos INLINECALLDICT
2094
+ SUB
2095
+ SUB
2096
+ s0 s1 PUSH2
2097
+ GEQ
2098
+ 37 THROWIFNOT
2099
+ SWAP
2100
+ SUB
2101
+ 0 PUSHINT
2102
+ RAWRESERVE
2103
+ TRUE
2104
+ 1 PUSHINT
2105
+ s2 PUSH
2106
+ TLEN
2107
+ WHILE:<{
2108
+ 2DUP
2109
+ LESS
2110
+ }>DO<{
2111
+ s3 s1 PUSH2
2112
+ INDEXVAR
2113
+ DUP
2114
+ 0 INDEX
2115
+ s0 s3 XCHG
2116
+ INC
2117
+ s3 s3 XCHG2
2118
+ _executeAction INLINECALLDICT
2119
+ s1 s3 XCHG
2120
+ AND
2121
+ s0 s2 XCHG
2122
+ }>
2123
+ s2 s3 XCHG
2124
+ 3 BLKDROP
2125
+ IF:<{
2126
+ <b b> PUSHREF
2127
+ 1 PUSHINT
2128
+ 16 PUSHINT
2129
+ NEWC
2130
+ 6 STU
2131
+ getOriginStd INLINECALLDICT
2132
+ STSLICER
2133
+ 0 PUSHINT
2134
+ STGRAMS
2135
+ 107 STU
2136
+ STREF
2137
+ ENDC
2138
+ 7 PUSHPOW2
2139
+ SENDRAWMSG
2140
+ }>
2141
+ }>
2142
+ }>
2143
+ action::call::New PROCINLINE:<{
2144
+ 459904164859953153141868 PUSHINT
2145
+ 3 -ROLL
2146
+ 4 TUPLE
2147
+ }>
2148
+ action::call::equals PROC:<{
2149
+ OVER
2150
+ 3 INDEX
2151
+ OVER
2152
+ 3 INDEX
2153
+ compareObjectFields INLINECALLDICT
2154
+ s2 PUSH
2155
+ 0 INDEX
2156
+ s2 PUSH
2157
+ 0 INDEX
2158
+ EQUAL
2159
+ s3 PUSH
2160
+ 1 INDEX
2161
+ s3 PUSH
2162
+ 1 INDEX
2163
+ EQUAL
2164
+ AND
2165
+ s0 s3 XCHG
2166
+ 2 INDEX
2167
+ s0 s2 XCHG
2168
+ 2 INDEX
2169
+ s1 s2 XCHG
2170
+ EQUAL
2171
+ s1 s2 XCHG
2172
+ AND
2173
+ SWAP
2174
+ -1 EQINT
2175
+ AND
2176
+ }>
2177
+ _newAction<call> PROCINLINE:<{
2178
+ action::call::New INLINECALLDICT
2179
+ }>
2180
+ ~pushAction<call> PROCINLINE:<{
2181
+ _newAction<call> INLINECALLDICT
2182
+ TPUSH
2183
+ }>
2184
+ executeCall PROCINLINE:<{
2185
+ DUP
2186
+ 1 INDEX
2187
+ 0 PUSHINT
2188
+ s2 PUSH
2189
+ 2 INDEX
2190
+ s0 s3 XCHG
2191
+ 3 INDEX
2192
+ s1 s3 s0 XCHG3
2193
+ buildLayerzeroMessageBody INLINECALLDICT
2194
+ PUSHNULL
2195
+ 0 PUSHINT
2196
+ sendTerminalAction INLINECALLDICT
2197
+ FALSE
2198
+ }>
2199
+ action::deploy::New PROCINLINE:<{
2200
+ 110386840629113 PUSHINT
2201
+ 6 -ROLL
2202
+ 7 TUPLE
2203
+ }>
2204
+ action::deploy::equals PROC:<{
2205
+ OVER
2206
+ 2 INDEX
2207
+ OVER
2208
+ 2 INDEX
2209
+ compareObjectFields INLINECALLDICT
2210
+ s2 PUSH
2211
+ 5 INDEX
2212
+ s2 PUSH
2213
+ 5 INDEX
2214
+ compareObjectFields INLINECALLDICT
2215
+ s3 PUSH
2216
+ 0 INDEX
2217
+ s3 PUSH
2218
+ 0 INDEX
2219
+ EQUAL
2220
+ s4 PUSH
2221
+ 1 INDEX
2222
+ HASHCU
2223
+ s4 PUSH
2224
+ 1 INDEX
2225
+ HASHCU
2226
+ EQUAL
2227
+ AND
2228
+ s0 s2 XCHG
2229
+ -1 EQINT
2230
+ s1 s2 XCHG
2231
+ AND
2232
+ s3 PUSH
2233
+ 3 INDEX
2234
+ s3 PUSH
2235
+ 3 INDEX
2236
+ EQUAL
2237
+ AND
2238
+ s3 PUSH
2239
+ 4 INDEX
2240
+ s3 PUSH
2241
+ 4 INDEX
2242
+ EQUAL
2243
+ AND
2244
+ SWAP
2245
+ -1 EQINT
2246
+ AND
2247
+ s0 s2 XCHG
2248
+ 6 INDEX
2249
+ SWAP
2250
+ 6 INDEX
2251
+ EQUAL
2252
+ AND
2253
+ }>
2254
+ _newAction<deployAndCall> PROCINLINE:<{
2255
+ action::deploy::New INLINECALLDICT
2256
+ }>
2257
+ ~pushAction<deployAndCall> PROCINLINE:<{
2258
+ _newAction<deployAndCall> INLINECALLDICT
2259
+ TPUSH
2260
+ }>
2261
+ executeDeploy PROCINLINE:<{
2262
+ DUP
2263
+ 2 INDEX
2264
+ OVER
2265
+ 1 INDEX
2266
+ 2DUP
2267
+ computeContractAddress INLINECALLDICT
2268
+ s3 PUSH
2269
+ 3 INDEX
2270
+ s4 PUSH
2271
+ 4 INDEX
2272
+ s0 s5 XCHG
2273
+ 5 INDEX
2274
+ s1 s5 s0 XCHG3
2275
+ buildLayerzeroMessageBody INLINECALLDICT
2276
+ 6 PUSHINT
2277
+ NEWC
2278
+ 5 STU
2279
+ s1 s2 XCHG
2280
+ STREF
2281
+ s1 s2 XCHG
2282
+ STREF
2283
+ ENDC
2284
+ 0 PUSHINT
2285
+ sendTerminalAction INLINECALLDICT
2286
+ FALSE
2287
+ }>
2288
+ _getEventSink PROCINLINE:<{
2289
+ getContractStorage INLINECALLDICT
2290
+ 0 PUSHINT
2291
+ cl::get<objRef> INLINECALLDICT
2292
+ 0 PUSHINT
2293
+ cl::get<address> INLINECALLDICT
2294
+ }>
2295
+ action::event::New PROCINLINE:<{
2296
+ 435778055796 PUSHINT
2297
+ 8 PUSHINT
2298
+ s0 s4 XCHG2
2299
+ PAIR
2300
+ 9 PUSHINT
2301
+ s0 s3 XCHG2
2302
+ PAIR
2303
+ 9 PUSHINT
2304
+ ROT
2305
+ PAIR
2306
+ TRIPLE
2307
+ cl::declare INLINECALLDICT
2308
+ 435778055796 PUSHINT
2309
+ SWAP
2310
+ PAIR
2311
+ }>
2312
+ action::event::equals PROC:<{
2313
+ OVER
2314
+ 1 INDEX
2315
+ OVER
2316
+ 1 INDEX
2317
+ compareObjectFields INLINECALLDICT
2318
+ s0 s2 XCHG
2319
+ 0 INDEX
2320
+ SWAP
2321
+ 0 INDEX
2322
+ EQUAL
2323
+ SWAP
2324
+ -1 EQINT
2325
+ AND
2326
+ }>
2327
+ _newAction<event> PROCINLINE:<{
2328
+ getInitialStorage INLINECALLDICT
2329
+ action::event::New INLINECALLDICT
2330
+ }>
2331
+ ~pushAction<event> PROCINLINE:<{
2332
+ _newAction<event> INLINECALLDICT
2333
+ TPUSH
2334
+ }>
2335
+ executeEvent PROCINLINE:<{
2336
+ 16 PUSHINT
2337
+ 0 PUSHINT
2338
+ _getEventSink INLINECALLDICT
2339
+ OVER
2340
+ 3812333683 PUSHINT
2341
+ s0 s5 XCHG
2342
+ 1 INDEX
2343
+ s1 s5 s0 XCHG3
2344
+ buildLayerzeroMessageBody INLINECALLDICT
2345
+ s1 s3 s0 XCHG3
2346
+ 1 PUSHINT
2347
+ sendNonTerminalAction INLINECALLDICT
2348
+ TRUE
2349
+ }>
2350
+ action::payment::New PROCINLINE:<{
2351
+ 31632371545894516 PUSHINT
2352
+ 3 -ROLL
2353
+ 4 TUPLE
2354
+ }>
2355
+ action::payment::equals PROC:<{
2356
+ OVER
2357
+ 0 INDEX
2358
+ OVER
2359
+ 0 INDEX
2360
+ EQUAL
2361
+ s2 PUSH
2362
+ 1 INDEX
2363
+ s2 PUSH
2364
+ 1 INDEX
2365
+ EQUAL
2366
+ AND
2367
+ s2 PUSH
2368
+ 2 INDEX
2369
+ s2 PUSH
2370
+ 2 INDEX
2371
+ EQUAL
2372
+ AND
2373
+ s0 s2 XCHG
2374
+ 3 INDEX
2375
+ SWAP
2376
+ 3 INDEX
2377
+ EQUAL
2378
+ AND
2379
+ }>
2380
+ _newAction<payment> PROCINLINE:<{
2381
+ action::payment::New INLINECALLDICT
2382
+ }>
2383
+ ~pushAction<payment> PROCINLINE:<{
2384
+ DUP
2385
+ 0 GTINT
2386
+ IF:<{
2387
+ s3 PUSH
2388
+ 0 INDEX
2389
+ OVER
2390
+ ADD
2391
+ s1 s4 XCHG
2392
+ 0 PUSHINT
2393
+ SETINDEXVAR
2394
+ s0 s3 XCHG
2395
+ }>
2396
+ _newAction<payment> INLINECALLDICT
2397
+ TPUSH
2398
+ }>
2399
+ executePayment PROCINLINE:<{
2400
+ 16 PUSHINT
2401
+ 1 PUSHINT
2402
+ 0 PUSHINT
2403
+ DUP
2404
+ GETFORWARDFEE
2405
+ s2 PUSH
2406
+ 2 INDEX
2407
+ ADD
2408
+ s0 s2 XCHG
2409
+ 1 INDEX
2410
+ <b b> PUSHREF
2411
+ s2 s3 XCHG
2412
+ 0 PUSHINT
2413
+ sendNonTerminalAction INLINECALLDICT
2414
+ TRUE
2415
+ }>
2416
+ BaseStorage::New PROCINLINE:<{
2417
+ 1814802986876646945381 PUSHINT
2418
+ 8 PUSHINT
2419
+ ROT
2420
+ PAIR
2421
+ 0 PUSHINT
2422
+ FALSE
2423
+ PAIR
2424
+ 0 PUSHINT
2425
+ FALSE
2426
+ PAIR
2427
+ 9 PUSHINT
2428
+ cl::nullObject INLINECALLDICT
2429
+ PAIR
2430
+ 4 TUPLE
2431
+ cl::declare INLINECALLDICT
2432
+ }>
2433
+ getOwner PROCINLINE:<{
2434
+ getContractStorage INLINECALLDICT
2435
+ 0 PUSHINT
2436
+ cl::get<objRef> INLINECALLDICT
2437
+ 0 PUSHINT
2438
+ cl::get<address> INLINECALLDICT
2439
+ }>
2440
+ getInitialStorage PROCINLINE:<{
2441
+ getContractStorage INLINECALLDICT
2442
+ 0 PUSHINT
2443
+ cl::get<objRef> INLINECALLDICT
2444
+ 3 PUSHINT
2445
+ cl::get<objRef> INLINECALLDICT
2446
+ }>
2447
+ assertAuthenticated PROCINLINE:<{
2448
+ getContractStorage INLINECALLDICT
2449
+ 0 PUSHINT
2450
+ cl::get<objRef> INLINECALLDICT
2451
+ 1 PUSHINT
2452
+ cl::get<bool> INLINECALLDICT
2453
+ 2032 THROWIFNOT
2454
+ }>
2455
+ authenticate PROC:<{
2456
+ assertOwner INLINECALLDICT
2457
+ getContractStorage INLINECALLDICT
2458
+ 0 PUSHINT
2459
+ 2DUP
2460
+ cl::get<objRef> INLINECALLDICT
2461
+ 3 PUSHINT
2462
+ getContractStorage INLINECALLDICT
2463
+ cl::set INLINECALLDICT
2464
+ 1 PUSHINT
2465
+ TRUE
2466
+ cl::set INLINECALLDICT
2467
+ cl::set INLINECALLDICT
2468
+ setContractStorage INLINECALLDICT
2469
+ }>
2470
+ _initialize PROCINLINE:<{
2471
+ preamble INLINECALLDICT
2472
+ 5 PUSHINT
2473
+ s0 s3 XCHG
2474
+ 0 PUSHINT
2475
+ cl::get<cellRef> INLINECALLDICT
2476
+ s2 s3 s3 PUXC2
2477
+ cl::set INLINECALLDICT
2478
+ 6 PUSHINT
2479
+ getOwner INLINECALLDICT
2480
+ s3 PUSH
2481
+ 1 PUSHINT
2482
+ cl::get<uint32> INLINECALLDICT
2483
+ s0 s4 XCHG
2484
+ 2 PUSHINT
2485
+ cl::get<uint32> INLINECALLDICT
2486
+ s1 s4 XCHG
2487
+ lz::Path::endpointPath INLINECALLDICT
2488
+ getContractAddress INLINECALLDICT
2489
+ s2 s4 XCHG
2490
+ Channel::New INLINECALLDICT
2491
+ s1 s2 XCHG
2492
+ cl::set INLINECALLDICT
2493
+ SWAP
2494
+ }>
2495
+ md::ExtendedMd::New PROCINLINE:<{
2496
+ 479181011289937837051236 PUSHINT
2497
+ 9 PUSHINT
2498
+ s0 s4 XCHG2
2499
+ PAIR
2500
+ 9 PUSHINT
2501
+ s0 s3 XCHG2
2502
+ PAIR
2503
+ 8 PUSHINT
2504
+ ROT
2505
+ PAIR
2506
+ TRIPLE
2507
+ cl::declare INLINECALLDICT
2508
+ }>
2509
+ md::MdAddress::New PROCINLINE:<{
2510
+ 85092989166706 PUSHINT
2511
+ 9 PUSHINT
2512
+ s0 s3 XCHG2
2513
+ PAIR
2514
+ 8 PUSHINT
2515
+ ROT
2516
+ PAIR
2517
+ PAIR
2518
+ cl::declare INLINECALLDICT
2519
+ }>
2520
+ md::MdObj::New PROCINLINE:<{
2521
+ 332395405930 PUSHINT
2522
+ 9 PUSHINT
2523
+ s0 s3 XCHG2
2524
+ PAIR
2525
+ 9 PUSHINT
2526
+ ROT
2527
+ PAIR
2528
+ PAIR
2529
+ cl::declare INLINECALLDICT
2530
+ }>
2531
+ md::AddMsglib::New PROCINLINE:<{
2532
+ 1796568167209340004706 PUSHINT
2533
+ 8 PUSHINT
2534
+ s0 s3 XCHG2
2535
+ PAIR
2536
+ 5 PUSHINT
2537
+ ROT
2538
+ PAIR
2539
+ PAIR
2540
+ cl::declare INLINECALLDICT
2541
+ }>
2542
+ md::InitEndpoint::New PROCINLINE:<{
2543
+ 115922936546672 PUSHINT
2544
+ 9 PUSHINT
2545
+ ROT
2546
+ PAIR
2547
+ SINGLE
2548
+ cl::declare INLINECALLDICT
2549
+ }>
2550
+ md::LzSend::New PROCINLINE:<{
2551
+ 119272640966244 PUSHINT
2552
+ 6 PUSHINT
2553
+ 0 PUSHINT
2554
+ PAIR
2555
+ 8 PUSHINT
2556
+ 0 PUSHINT
2557
+ PAIR
2558
+ 8 PUSHINT
2559
+ 0 PUSHINT
2560
+ PAIR
2561
+ 9 PUSHINT
2562
+ s0 s6 XCHG2
2563
+ PAIR
2564
+ 7 PUSHINT
2565
+ s0 s10 XCHG2
2566
+ PAIR
2567
+ 7 PUSHINT
2568
+ s0 s9 XCHG2
2569
+ PAIR
2570
+ 9 PUSHINT
2571
+ s0 s8 XCHG2
2572
+ PAIR
2573
+ 9 PUSHINT
2574
+ s0 s7 XCHG2
2575
+ PAIR
2576
+ 9 PUSHINT
2577
+ s0 s5 XCHG2
2578
+ PAIR
2579
+ s8 s7 s0 XCHG3
2580
+ s5 s6 XCHG
2581
+ s5 s9 XCHG
2582
+ s4 s3 s0 XCHG3
2583
+ s9 s9 s0 XCHG3
2584
+ 9 TUPLE
2585
+ cl::declare INLINECALLDICT
2586
+ }>
2587
+ md::lzSend::fillRequestInfo PROCINLINE:<{
2588
+ s0 s3 XCHG
2589
+ CTOS
2590
+ NEWC
2591
+ OVER
2592
+ 350 PUSHINT
2593
+ 0 PUSHINT
2594
+ SCUTFIRST
2595
+ STSLICER
2596
+ s1 s3 XCHG
2597
+ 64 STU
2598
+ 256 STU
2599
+ s1 s2 XCHG
2600
+ 256 STU
2601
+ SWAP
2602
+ 926 PUSHINT
2603
+ 0 PUSHINT
2604
+ SSKIPFIRST
2605
+ STSLICER
2606
+ ENDC
2607
+ }>
2608
+ md::SetEpConfig::New PROCINLINE:<{
2609
+ 6009337119380825703 PUSHINT
2610
+ 0 PUSHINT
2611
+ s0 s6 XCHG2
2612
+ PAIR
2613
+ 8 PUSHINT
2614
+ s0 s5 XCHG2
2615
+ PAIR
2616
+ 8 PUSHINT
2617
+ s0 s4 XCHG2
2618
+ PAIR
2619
+ 8 PUSHINT
2620
+ s0 s3 XCHG2
2621
+ PAIR
2622
+ 6 PUSHINT
2623
+ ROT
2624
+ PAIR
2625
+ 5 TUPLE
2626
+ cl::declare INLINECALLDICT
2627
+ }>
2628
+ lz::SendEpConfig::New PROCINLINE:<{
2629
+ 1538388647612560664167 PUSHINT
2630
+ 8 PUSHINT
2631
+ s0 s3 XCHG2
2632
+ PAIR
2633
+ 8 PUSHINT
2634
+ ROT
2635
+ PAIR
2636
+ PAIR
2637
+ cl::declare INLINECALLDICT
2638
+ }>
2639
+ lz::MsglibInfo::New PROCINLINE:<{
2640
+ 365751047196793530902127 PUSHINT
2641
+ 8 PUSHINT
2642
+ s0 s4 XCHG2
2643
+ PAIR
2644
+ 9 PUSHINT
2645
+ s0 s3 XCHG2
2646
+ PAIR
2647
+ 9 PUSHINT
2648
+ ROT
2649
+ PAIR
2650
+ TRIPLE
2651
+ cl::declare INLINECALLDICT
2652
+ }>
2653
+ lz::MsglibInfo::getMsglibConnectionAddress PROCINLINE:<{
2654
+ OVER
2655
+ 2 PUSHINT
2656
+ cl::get<objRef> INLINECALLDICT
2657
+ 1 PUSHINT
2658
+ ROT
2659
+ cl::set INLINECALLDICT
2660
+ SWAP
2661
+ 1 PUSHINT
2662
+ cl::get<cellRef> INLINECALLDICT
2663
+ computeContractAddress INLINECALLDICT
2664
+ }>
2665
+ lz::ReceiveEpConfig::New PROCINLINE:<{
2666
+ 1519800015059241691490 PUSHINT
2667
+ 8 PUSHINT
2668
+ s0 s4 XCHG2
2669
+ PAIR
2670
+ 8 PUSHINT
2671
+ s0 s3 XCHG2
2672
+ PAIR
2673
+ 6 PUSHINT
2674
+ ROT
2675
+ PAIR
2676
+ TRIPLE
2677
+ cl::declare INLINECALLDICT
2678
+ }>
2679
+ lz::Path::New PROCINLINE:<{
2680
+ 1885434984 PUSHINT
2681
+ 5 PUSHINT
2682
+ s0 s5 XCHG2
2683
+ PAIR
2684
+ 8 PUSHINT
2685
+ s0 s4 XCHG2
2686
+ PAIR
2687
+ 5 PUSHINT
2688
+ s0 s3 XCHG2
2689
+ PAIR
2690
+ 8 PUSHINT
2691
+ ROT
2692
+ PAIR
2693
+ 4 TUPLE
2694
+ cl::declare INLINECALLDICT
2695
+ }>
2696
+ lz::Path::endpointPath PROCINLINE:<{
2697
+ 0 PUSHINT
2698
+ TUCK
2699
+ lz::Path::New INLINECALLDICT
2700
+ }>
2701
+ lz::Path::reverse PROCINLINE:<{
2702
+ DUP
2703
+ 0 PUSHINT
2704
+ cl::get<uint32> INLINECALLDICT
2705
+ OVER
2706
+ 1 PUSHINT
2707
+ cl::get<address> INLINECALLDICT
2708
+ s2 PUSH
2709
+ 2 PUSHINT
2710
+ cl::get<uint32> INLINECALLDICT
2711
+ s0 s3 XCHG
2712
+ 3 PUSHINT
2713
+ cl::get<address> INLINECALLDICT
2714
+ -ROT
2715
+ lz::Path::New INLINECALLDICT
2716
+ }>
2717
+ lz::Path::optimizedReverse PROCINLINE:<{
2718
+ CTOS
2719
+ NEWC
2720
+ OVER
2721
+ 350 PUSHINT
2722
+ 0 PUSHINT
2723
+ SCUTFIRST
2724
+ STSLICER
2725
+ OVER
2726
+ 638 PUSHINT
2727
+ 288 PUSHINT
2728
+ SDSUBSTR
2729
+ STSLICER
2730
+ SWAP
2731
+ 350 PUSHINT
2732
+ 288 PUSHINT
2733
+ SDSUBSTR
2734
+ STSLICER
2735
+ ENDC
2736
+ }>
2737
+ lz::Packet::New PROCINLINE:<{
2738
+ 88379210032500 PUSHINT
2739
+ 9 PUSHINT
2740
+ s0 s4 XCHG2
2741
+ PAIR
2742
+ 9 PUSHINT
2743
+ s0 s3 XCHG2
2744
+ PAIR
2745
+ 6 PUSHINT
2746
+ ROT
2747
+ PAIR
2748
+ 8 PUSHINT
2749
+ 0 PUSHINT
2750
+ PAIR
2751
+ 4 TUPLE
2752
+ cl::declare INLINECALLDICT
2753
+ }>
2754
+ lz::Packet::nonceless PROCINLINE:<{
2755
+ 0 PUSHINT
2756
+ lz::Packet::New INLINECALLDICT
2757
+ }>
2758
+ lz::Packet::_assertValidLinkedList PROCINLINE:<{
2759
+ CONT:<{
2760
+ c2 SAVE
2761
+ SAMEALTSAVE
2762
+ SWAP
2763
+ CTOS
2764
+ SWAP
2765
+ REPEAT:<{
2766
+ DUP
2767
+ SBITREFS
2768
+ DUP
2769
+ 0 EQINT
2770
+ IFJMP:<{
2771
+ DROP
2772
+ NIP
2773
+ 3 MODPOW2#
2774
+ 0 NEQINT
2775
+ 1402 THROWIF
2776
+ RETALT
2777
+ }>
2778
+ 1 NEQINT
2779
+ SWAP
2780
+ 1016 PUSHINT
2781
+ NEQ
2782
+ OR
2783
+ 1402 THROWIF
2784
+ 0 PLDREFIDX
2785
+ CTOS
2786
+ }>
2787
+ DROP
2788
+ 1402 THROW
2789
+ }>
2790
+ EXECUTE
2791
+ }>
2792
+ lz::Packet::assertValidSendMessage PROCINLINE:<{
2793
+ 1 PUSHINT
2794
+ cl::get<cellRef> INLINECALLDICT
2795
+ 8 PUSHPOW2DEC
2796
+ lz::Packet::_assertValidLinkedList INLINECALLDICT
2797
+ }>
2798
+ lz::Packet::assertValidReceiveMessage PROCINLINE:<{
2799
+ 1 PUSHINT
2800
+ cl::get<cellRef> INLINECALLDICT
2801
+ 32 PUSHINT
2802
+ lz::Packet::_assertValidLinkedList INLINECALLDICT
2803
+ }>
2804
+ lz::Packet::calculateGuid PROCINLINE:<{
2805
+ OVER
2806
+ 3 PUSHINT
2807
+ cl::get<address> INLINECALLDICT
2808
+ s2 PUSH
2809
+ 2 PUSHINT
2810
+ cl::get<uint32> INLINECALLDICT
2811
+ s3 PUSH
2812
+ 1 PUSHINT
2813
+ cl::get<address> INLINECALLDICT
2814
+ s0 s4 XCHG
2815
+ 0 PUSHINT
2816
+ cl::get<uint32> INLINECALLDICT
2817
+ s0 s3 XCHG
2818
+ NEWC
2819
+ 64 STU
2820
+ s1 s3 XCHG
2821
+ 32 STU
2822
+ s1 s3 XCHG
2823
+ 256 STU
2824
+ 32 STU
2825
+ 256 STU
2826
+ 1 PUSHINT HASHEXT_KECCAK256
2827
+ }>
2828
+ lz::Packet::replaceTwoFieldsAtOffsets PROCINLINE:<{
2829
+ s4 PUSH
2830
+ 127 PUSHINT
2831
+ MOD
2832
+ 3 LSHIFT#
2833
+ s0 s5 XCHG
2834
+ 127 PUSHINT
2835
+ DIV
2836
+ s2 PUSH
2837
+ 127 PUSHINT
2838
+ MOD
2839
+ 3 LSHIFT#
2840
+ s0 s3 XCHG
2841
+ 127 PUSHINT
2842
+ DIV
2843
+ s0 s8 XCHG
2844
+ CTOS
2845
+ s5 PUSH
2846
+ 3 LSHIFT#
2847
+ s3 PUSH
2848
+ 3 LSHIFT#
2849
+ s8 s1 PUSH2
2850
+ ADD
2851
+ s6 s1 PUSH2
2852
+ ADD
2853
+ s9 s6 XCHG2
2854
+ MAX
2855
+ 127 GTINT
2856
+ s8 s5 PUSH2
2857
+ MAX
2858
+ 1016 PUSHINT
2859
+ GREATER
2860
+ OR
2861
+ 637 THROWIF
2862
+ s10 PUSH
2863
+ 0 EQINT
2864
+ IF:<{
2865
+ s3 POP
2866
+ s9 POP
2867
+ DUP
2868
+ NEWC
2869
+ s0 s8 XCHG
2870
+ 0 PUSHINT
2871
+ SCUTFIRST
2872
+ s1 s7 XCHG
2873
+ STSLICER
2874
+ s7 s0 s8 XCHG3
2875
+ STUX
2876
+ 0 PUSHINT
2877
+ s2 s4 XCPU
2878
+ SUB
2879
+ s2 s5 PUSH2
2880
+ s0 s4 XCHG
2881
+ s3 s6 XCHG
2882
+ -ROT
2883
+ SUBSLICE
2884
+ s1 s2 XCHG
2885
+ STSLICER
2886
+ s1 s0 s4 XCHG3
2887
+ STUX
2888
+ s2 PUSH
2889
+ SBITS
2890
+ ROT
2891
+ SUB
2892
+ s2 PUSH
2893
+ SREFS
2894
+ s2 s3 XCHG
2895
+ SCUTLAST
2896
+ STSLICER
2897
+ ENDC
2898
+ }>ELSE<{
2899
+ s4 POP
2900
+ s6 POP
2901
+ NIL
2902
+ 0 PUSHINT
2903
+ UNTIL:<{
2904
+ s0 s3 PUSH2
2905
+ EQUAL
2906
+ s4 s11 PUSH2
2907
+ EQUAL
2908
+ AND
2909
+ IF:<{
2910
+ s2 s8 PUSH2
2911
+ 0 PUSHINT
2912
+ SCUTFIRST
2913
+ s9 s8 PUSH2
2914
+ ADD
2915
+ 0 PUSHINT
2916
+ s8 s11 PUSH2
2917
+ SUB
2918
+ s11 PUSH
2919
+ SUB
2920
+ s1 s6 PUSH2
2921
+ 4 -ROLL
2922
+ SUBSLICE
2923
+ s4 PUSH
2924
+ SBITS
2925
+ s7 s8 PUSH2
2926
+ ADD
2927
+ SUB
2928
+ s5 PUSH
2929
+ SREFS
2930
+ s6 PUSH
2931
+ -ROT
2932
+ SCUTLAST
2933
+ NEWC
2934
+ s0 s3 XCHG2
2935
+ STSLICER
2936
+ s12 s10 s(-1) PU2XC
2937
+ STUX
2938
+ SWAP
2939
+ STSLICER
2940
+ s8 s6 s(-1) PU2XC
2941
+ STUX
2942
+ SWAP
2943
+ STSLICER
2944
+ s1 s2 XCHG
2945
+ TPUSH
2946
+ }>ELSE<{
2947
+ s0 s3 PUSH2
2948
+ EQUAL
2949
+ IF:<{
2950
+ NEWC
2951
+ s3 s9 PUSH2
2952
+ 0 PUSHINT
2953
+ SCUTFIRST
2954
+ STSLICER
2955
+ s10 s8 s(-1) PU2XC
2956
+ STUX
2957
+ s3 PUSH
2958
+ SBITS
2959
+ s9 s10 PUSH2
2960
+ ADD
2961
+ SUB
2962
+ s4 PUSH
2963
+ SREFS
2964
+ s5 PUSH
2965
+ -ROT
2966
+ SCUTLAST
2967
+ STSLICER
2968
+ s1 s2 XCHG
2969
+ TPUSH
2970
+ }>ELSE<{
2971
+ s0 s10 PUSH2
2972
+ EQUAL
2973
+ IF:<{
2974
+ NEWC
2975
+ s3 s6 PUSH2
2976
+ 0 PUSHINT
2977
+ SCUTFIRST
2978
+ STSLICER
2979
+ s7 s5 s(-1) PU2XC
2980
+ STUX
2981
+ s3 PUSH
2982
+ SBITS
2983
+ s6 s7 PUSH2
2984
+ ADD
2985
+ SUB
2986
+ s4 PUSH
2987
+ SREFS
2988
+ s5 PUSH
2989
+ -ROT
2990
+ SCUTLAST
2991
+ STSLICER
2992
+ s1 s2 XCHG
2993
+ TPUSH
2994
+ }>ELSE<{
2995
+ NEWC
2996
+ s3 PUSH
2997
+ STSLICER
2998
+ s1 s2 XCHG
2999
+ TPUSH
3000
+ }>
3001
+ }>
3002
+ }>
3003
+ s2 PUSH
3004
+ SREFS
3005
+ 0 GTINT
3006
+ IF:<{
3007
+ s0 s2 XCHG
3008
+ 0 PLDREFIDX
3009
+ CTOS
3010
+ s0 s2 XCHG
3011
+ }>
3012
+ SWAP
3013
+ INC
3014
+ s0 s10 PUSH2
3015
+ GEQ
3016
+ }>
3017
+ s1 s9 XCHG
3018
+ 9 BLKDROP
3019
+ s0 s1 PUSH2
3020
+ INDEXVAR
3021
+ ENDC
3022
+ WHILE:<{
3023
+ s2 PUSH
3024
+ 0 GTINT
3025
+ }>DO<{
3026
+ s0 s2 XCHG
3027
+ DEC
3028
+ 2DUP
3029
+ INDEXVAR
3030
+ s1 s3 XCHG
3031
+ STREF
3032
+ ENDC
3033
+ }>
3034
+ 2 1 BLKDROP2
3035
+ }>
3036
+ }>
3037
+ lz::EpConfig::NewWithConnection PROCINLINE:<{
3038
+ 5003573331881257319 PUSHINT
3039
+ 0 PUSHINT
3040
+ s0 s9 XCHG2
3041
+ PAIR
3042
+ 8 PUSHINT
3043
+ s0 s8 XCHG2
3044
+ PAIR
3045
+ 8 PUSHINT
3046
+ s0 s7 XCHG2
3047
+ PAIR
3048
+ 8 PUSHINT
3049
+ s0 s6 XCHG2
3050
+ PAIR
3051
+ 8 PUSHINT
3052
+ s0 s5 XCHG2
3053
+ PAIR
3054
+ 8 PUSHINT
3055
+ s0 s4 XCHG2
3056
+ PAIR
3057
+ 8 PUSHINT
3058
+ s0 s3 XCHG2
3059
+ PAIR
3060
+ 6 PUSHINT
3061
+ ROT
3062
+ PAIR
3063
+ 8 TUPLE
3064
+ cl::declare INLINECALLDICT
3065
+ }>
3066
+ lz::EpConfig::New PROCINLINE:<{
3067
+ 0 PUSHINT
3068
+ s3 s3 s3 XCPU2
3069
+ s4 s0 s3 XCHG3
3070
+ lz::EpConfig::NewWithConnection INLINECALLDICT
3071
+ }>
3072
+ lz::EpConfig::NewWithDefaults PROCINLINE:<{
3073
+ TRUE
3074
+ 0 PUSHINT
3075
+ s0 s0 s0 PUSH3
3076
+ lz::EpConfig::New INLINECALLDICT
3077
+ }>
3078
+ lz::EpConfig::NewFrom PROCINLINE:<{
3079
+ TRUE
3080
+ 0 PUSHINT
3081
+ s3 s0 s0 XC2PU
3082
+ s2 s3 XCHG
3083
+ lz::EpConfig::New INLINECALLDICT
3084
+ }>
3085
+ lz::EpConfig::isValid PROCINLINE:<{
3086
+ CONT:<{
3087
+ c2 SAVE
3088
+ SAMEALTSAVE
3089
+ DUP
3090
+ 3 PUSHINT
3091
+ cl::get<address> INLINECALLDICT
3092
+ OVER
3093
+ 5 PUSHINT
3094
+ cl::get<address> INLINECALLDICT
3095
+ s0 s2 XCHG
3096
+ 7 PUSHINT
3097
+ cl::get<uint64> INLINECALLDICT
3098
+ s2 PUSH
3099
+ 0 EQINT
3100
+ OVER
3101
+ 0 NEQINT
3102
+ AND
3103
+ IF:<{
3104
+ 3 BLKDROP
3105
+ 1836 PUSHINT
3106
+ }>ELSE<{
3107
+ s2 PUSH
3108
+ 0 NEQINT
3109
+ SWAP
3110
+ NOW
3111
+ LEQ
3112
+ AND
3113
+ IFJMP:<{
3114
+ 2DROP
3115
+ 637 PUSHINT
3116
+ RETALT
3117
+ }>
3118
+ DUP
3119
+ 0 NEQINT
3120
+ s0 s2 XCHG
3121
+ EQUAL
3122
+ AND
3123
+ IFJMP:<{
3124
+ 1003 PUSHINT
3125
+ RETALT
3126
+ }>
3127
+ 1109 PUSHINT
3128
+ }>
3129
+ }>
3130
+ EXECUTE
3131
+ }>
3132
+ POOO::set PROCINLINE:<{
3133
+ DUP
3134
+ 0 LESSINT
3135
+ 1587 THROWIF
3136
+ OVER
3137
+ 1 PUSHINT
3138
+ cl::get<cellRef> INLINECALLDICT
3139
+ CTOS
3140
+ s2 PUSH
3141
+ 0 PUSHINT
3142
+ cl::get<uint64> INLINECALLDICT
3143
+ s2 s0 PUSH2
3144
+ LESS
3145
+ IF:<{
3146
+ 3 BLKDROP
3147
+ }>ELSE<{
3148
+ s2 s2 XCPU
3149
+ SUB
3150
+ 1 PUSHINT
3151
+ NEWC
3152
+ 2OVER
3153
+ 0 PUSHINT
3154
+ SCUTFIRST
3155
+ STSLICER
3156
+ 1 STU
3157
+ 10 PUSHPOW2DEC
3158
+ ROT
3159
+ SUB
3160
+ DEC
3161
+ s1 s2 XCHG
3162
+ 0 PUSHINT
3163
+ SCUTLAST
3164
+ STSLICER
3165
+ ENDC CTOS
3166
+ LDONES
3167
+ 1 PUSHINT
3168
+ NEWC
3169
+ ROT
3170
+ STSLICER
3171
+ s2 PUSH
3172
+ STZEROES
3173
+ ENDC
3174
+ s2 s4 XCHG
3175
+ cl::set INLINECALLDICT
3176
+ SWAP
3177
+ 0 PUSHINT
3178
+ s0 s3 XCHG
3179
+ ADD
3180
+ s1 s2 XCHG
3181
+ cl::set INLINECALLDICT
3182
+ }>
3183
+ }>
3184
+ POOO::New PROCINLINE:<{
3185
+ 1347374927 PUSHINT
3186
+ 6 PUSHINT
3187
+ 1 PUSHINT
3188
+ PAIR
3189
+ 9 PUSHINT
3190
+ NEWC
3191
+ 10 PUSHPOW2DEC
3192
+ STZEROES
3193
+ ENDC
3194
+ PAIR
3195
+ PAIR
3196
+ cl::declare INLINECALLDICT
3197
+ }>
3198
+ POOO::NewWithBitsSets PROC:<{
3199
+ 1347374927 PUSHINT
3200
+ 6 PUSHINT
3201
+ 1 PUSHINT
3202
+ PAIR
3203
+ 9 PUSHINT
3204
+ NEWC
3205
+ 1 PUSHINT
3206
+ STZEROES
3207
+ s4 s5 PUXC
3208
+ SUB
3209
+ s1 s5 XCHG
3210
+ STONES
3211
+ 10 PUSHPOW2DEC
3212
+ s0 s4 XCHG2
3213
+ SUB
3214
+ s1 s3 XCHG
3215
+ STZEROES
3216
+ ENDC
3217
+ s1 s3 XCHG
3218
+ PAIR
3219
+ PAIR
3220
+ cl::declare INLINECALLDICT
3221
+ }>
3222
+ POOO::isBitSet PROCINLINE:<{
3223
+ OVER
3224
+ 0 PUSHINT
3225
+ cl::get<uint64> INLINECALLDICT
3226
+ SUB
3227
+ SWAP
3228
+ 1 PUSHINT
3229
+ cl::get<cellRef> INLINECALLDICT
3230
+ CTOS
3231
+ SWAP
3232
+ 1 PUSHINT
3233
+ SDSUBSTR
3234
+ 1 PLDU
3235
+ 1 EQINT
3236
+ }>
3237
+ POOO::maxSettableBit PROCINLINE:<{
3238
+ 0 PUSHINT
3239
+ cl::get<uint64> INLINECALLDICT
3240
+ 1022 PUSHINT
3241
+ ADD
3242
+ }>
3243
+ Channel::New PROCINLINE:<{
3244
+ 27980790368200044 PUSHINT
3245
+ 9 PUSHINT
3246
+ s0 s4 XCHG
3247
+ BaseStorage::New INLINECALLDICT
3248
+ s1 s4 XCHG
3249
+ PAIR
3250
+ 9 PUSHINT
3251
+ s0 s3 XCHG2
3252
+ PAIR
3253
+ 8 PUSHINT
3254
+ ROT
3255
+ PAIR
3256
+ 9 PUSHINT
3257
+ lz::EpConfig::NewWithDefaults INLINECALLDICT
3258
+ PAIR
3259
+ 6 PUSHINT
3260
+ 0 PUSHINT
3261
+ PAIR
3262
+ 9 PUSHINT
3263
+ <b b> PUSHREF
3264
+ PAIR
3265
+ 6 PUSHINT
3266
+ 0 PUSHINT
3267
+ PAIR
3268
+ 9 PUSHINT
3269
+ POOO::New INLINECALLDICT
3270
+ PAIR
3271
+ 9 PUSHINT
3272
+ POOO::New INLINECALLDICT
3273
+ PAIR
3274
+ 9 PUSHINT
3275
+ <b b> PUSHREF
3276
+ PAIR
3277
+ 7 PUSHINT
3278
+ 0 PUSHINT
3279
+ PAIR
3280
+ 11 TUPLE
3281
+ cl::declare INLINECALLDICT
3282
+ }>
3283
+ Endpoint::New PROCINLINE:<{
3284
+ 7308889679337188980 PUSHINT
3285
+ 9 PUSHINT
3286
+ s0 s2 XCHG
3287
+ BaseStorage::New INLINECALLDICT
3288
+ s1 s2 XCHG
3289
+ PAIR
3290
+ 5 PUSHINT
3291
+ s0 s4 XCHG2
3292
+ PAIR
3293
+ 5 PUSHINT
3294
+ s0 s3 XCHG2
3295
+ PAIR
3296
+ 9 PUSHINT
3297
+ cl::dict256::New INLINECALLDICT
3298
+ PAIR
3299
+ 3 PUSHINT
3300
+ 0 PUSHINT
3301
+ PAIR
3302
+ 9 PUSHINT
3303
+ <b b> PUSHREF
3304
+ PAIR
3305
+ 9 PUSHINT
3306
+ cl::nullObject INLINECALLDICT
3307
+ PAIR
3308
+ 9 PUSHINT
3309
+ cl::nullObject INLINECALLDICT
3310
+ PAIR
3311
+ 9 PUSHINT
3312
+ cl::nullObject INLINECALLDICT
3313
+ PAIR
3314
+ 9 PUSHINT
3315
+ cl::nullObject INLINECALLDICT
3316
+ PAIR
3317
+ 6 PUSHINT
3318
+ 0 PUSHINT
3319
+ PAIR
3320
+ s10 s11 XCHG
3321
+ s9 s11 XCHG
3322
+ 11 TUPLE
3323
+ cl::declare INLINECALLDICT
3324
+ }>
3325
+ _msglibManagerToShards PROCINLINE:<{
3326
+ OVER
3327
+ 0 EQINT
3328
+ IF:<{
3329
+ 2DROP
3330
+ 0 PUSHINT
3331
+ DUP
3332
+ }>ELSE<{
3333
+ getContractStorage INLINECALLDICT
3334
+ 3 PUSHINT
3335
+ ROT
3336
+ s0 s3 XCHG
3337
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3338
+ 103 THROWIFNOT
3339
+ DUP
3340
+ cl::hash INLINECALLDICT
3341
+ cl::nullObject INLINECALLDICT
3342
+ cl::hash INLINECALLDICT
3343
+ NEQ
3344
+ 1976 THROWIFNOT
3345
+ DUP
3346
+ 0 PUSHINT
3347
+ cl::get<address> INLINECALLDICT
3348
+ s0 s2 XCHG
3349
+ lz::MsglibInfo::getMsglibConnectionAddress INLINECALLDICT
3350
+ }>
3351
+ }>
3352
+ _getChannelAddress PROCINLINE:<{
3353
+ getContractStorage INLINECALLDICT
3354
+ DUP
3355
+ 6 PUSHINT
3356
+ cl::get<objRef> INLINECALLDICT
3357
+ 1 PUSHINT
3358
+ ROT
3359
+ s0 s3 XCHG
3360
+ cl::set INLINECALLDICT
3361
+ SWAP
3362
+ 5 PUSHINT
3363
+ cl::get<cellRef> INLINECALLDICT
3364
+ computeContractAddress INLINECALLDICT
3365
+ }>
3366
+ _getEpConfigFromManagerAddresses PROCINLINE:<{
3367
+ OVER
3368
+ 1 PUSHINT
3369
+ cl::get<address> INLINECALLDICT
3370
+ OVER
3371
+ _msglibManagerToShards INLINECALLDICT
3372
+ s3 PUSH
3373
+ 2 PUSHINT
3374
+ cl::get<address> INLINECALLDICT
3375
+ s0 s3 PUSH2
3376
+ _msglibManagerToShards INLINECALLDICT
3377
+ s6 PUSH
3378
+ 3 PUSHINT
3379
+ cl::get<address> INLINECALLDICT
3380
+ s0 s6 PUXC
3381
+ _msglibManagerToShards INLINECALLDICT
3382
+ s4 s7 PUXC
3383
+ EQUAL
3384
+ s0 s4 XCHG
3385
+ 0 NEQINT
3386
+ s1 s4 XCHG
3387
+ AND
3388
+ 651 THROWIF
3389
+ s6 PUSH
3390
+ 0 PUSHINT
3391
+ cl::get<bool> INLINECALLDICT
3392
+ s0 s7 XCHG
3393
+ 4 PUSHINT
3394
+ cl::get<uint64> INLINECALLDICT
3395
+ s5 s6 XCHG
3396
+ s4 s5 XCHG
3397
+ s4 s3 s0 XCHG3
3398
+ s1 s2 XCHG
3399
+ lz::EpConfig::NewWithConnection INLINECALLDICT
3400
+ }>
3401
+ _getMsglibAndConnectionDefaults PROCINLINE:<{
3402
+ getContractStorage INLINECALLDICT
3403
+ ROT
3404
+ cl::get<objRef> INLINECALLDICT
3405
+ DUP
3406
+ cl::isNull INLINECALLDICT
3407
+ IF:<{
3408
+ 2DROP
3409
+ 0 PUSHINT
3410
+ DUP
3411
+ }>ELSE<{
3412
+ DUP
3413
+ 0 PUSHINT
3414
+ cl::get<address> INLINECALLDICT
3415
+ s0 s2 XCHG
3416
+ lz::MsglibInfo::getMsglibConnectionAddress INLINECALLDICT
3417
+ }>
3418
+ }>
3419
+ _getSendMsglibAndConnectionDefaults PROCINLINE:<{
3420
+ 7 PUSHINT
3421
+ SWAP
3422
+ _getMsglibAndConnectionDefaults INLINECALLDICT
3423
+ }>
3424
+ getReceiveMsglibAndConnectionDefaults PROCINLINE:<{
3425
+ 8 PUSHINT
3426
+ SWAP
3427
+ _getMsglibAndConnectionDefaults INLINECALLDICT
3428
+ }>
3429
+ getTimeoutReceiveMsglibAndConnectionDefaults PROCINLINE:<{
3430
+ 9 PUSHINT
3431
+ SWAP
3432
+ _getMsglibAndConnectionDefaults INLINECALLDICT
3433
+ }>
3434
+ _assertAuthorizedMsglib PROCINLINE:<{
3435
+ getContractStorage INLINECALLDICT
3436
+ 3 PUSHINT
3437
+ getCaller INLINECALLDICT
3438
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3439
+ NIP
3440
+ 103 THROWIFNOT
3441
+ }>
3442
+ setEpConfigDefaults PROCINLINE:<{
3443
+ preamble INLINECALLDICT
3444
+ OVER
3445
+ 1 PUSHINT
3446
+ cl::get<uint32> INLINECALLDICT
3447
+ s2 PUSH
3448
+ 2 PUSHINT
3449
+ cl::get<uint32> INLINECALLDICT
3450
+ lz::Path::endpointPath INLINECALLDICT
3451
+ s3 PUSH
3452
+ 1 PUSHINT
3453
+ cl::get<address> INLINECALLDICT
3454
+ s4 PUSH
3455
+ 2 PUSHINT
3456
+ cl::get<address> INLINECALLDICT
3457
+ s5 PUSH
3458
+ 3 PUSHINT
3459
+ cl::get<address> INLINECALLDICT
3460
+ getContractStorage INLINECALLDICT
3461
+ 3 PUSHINT
3462
+ s4 PUSH
3463
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3464
+ getContractStorage INLINECALLDICT
3465
+ 3 PUSHINT
3466
+ s5 PUSH
3467
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3468
+ getContractStorage INLINECALLDICT
3469
+ 3 PUSHINT
3470
+ s6 PUSH
3471
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3472
+ s12 PUSH
3473
+ 4 PUSHINT
3474
+ cl::get<uint64> INLINECALLDICT
3475
+ s0 s9 XCHG
3476
+ 0 EQINT
3477
+ s1 s5 XCHG
3478
+ OR
3479
+ s7 PUSH
3480
+ 0 EQINT
3481
+ s1 s3 XCHG
3482
+ OR
3483
+ s1 s2 XCHG
3484
+ AND
3485
+ s5 PUSH
3486
+ 0 EQINT
3487
+ s1 s4 XCHG
3488
+ OR
3489
+ s1 s3 XCHG
3490
+ AND
3491
+ 103 THROWIFNOT
3492
+ s3 PUSH
3493
+ 0 NEQINT
3494
+ s4 s5 PUXC
3495
+ EQUAL
3496
+ s1 s5 XCHG
3497
+ AND
3498
+ 651 THROWIF
3499
+ s2 PUSH
3500
+ 0 EQINT
3501
+ s5 PUSH
3502
+ 0 EQINT
3503
+ AND
3504
+ s0 s3 XCHG
3505
+ 0 NEQINT
3506
+ s5 PUSH
3507
+ NOW
3508
+ GREATER
3509
+ AND
3510
+ s1 s3 XCHG
3511
+ OR
3512
+ 1435 THROWIFNOT
3513
+ s7 s4 PUXC
3514
+ _getEpConfigFromManagerAddresses INLINECALLDICT
3515
+ lz::EpConfig::isValid INLINECALLDICT
3516
+ DUP
3517
+ 1109 PUSHINT
3518
+ NEQ
3519
+ THROWANYIF
3520
+ s1 s5 XCHG
3521
+ 7 PUSHINT
3522
+ s0 s4 XCHG2
3523
+ cl::set INLINECALLDICT
3524
+ 8 PUSHINT
3525
+ ROT
3526
+ s0 s5 XCHG
3527
+ cl::set INLINECALLDICT
3528
+ 9 PUSHINT
3529
+ ROT
3530
+ cl::set INLINECALLDICT
3531
+ 10 PUSHINT
3532
+ ROT
3533
+ s0 s3 XCHG
3534
+ cl::set INLINECALLDICT
3535
+ setContractStorage INLINECALLDICT
3536
+ 25933428907981203986586603491692636361258825927574868 PUSHINT
3537
+ ROT
3538
+ ~pushAction<event> INLINECALLDICT
3539
+ }>
3540
+ setEpConfigOApp PROCINLINE:<{
3541
+ preamble INLINECALLDICT
3542
+ NIP
3543
+ OVER
3544
+ 0 PUSHINT
3545
+ cl::get<objRef> INLINECALLDICT
3546
+ s0 s2 XCHG
3547
+ 1 PUSHINT
3548
+ cl::get<objRef> INLINECALLDICT
3549
+ s2 s2 XCPU
3550
+ _getEpConfigFromManagerAddresses INLINECALLDICT
3551
+ s0 s2 XCHG
3552
+ _getChannelAddress INLINECALLDICT
3553
+ ROT
3554
+ 1726097956 PUSHINT
3555
+ SWAP
3556
+ ~pushAction<call> INLINECALLDICT
3557
+ }>
3558
+ endpointSend PROCINLINE:<{
3559
+ preamble INLINECALLDICT
3560
+ NIP
3561
+ OVER
3562
+ 3 PUSHINT
3563
+ cl::get<objRef> INLINECALLDICT
3564
+ 0 PUSHINT
3565
+ cl::get<objRef> INLINECALLDICT
3566
+ DUP
3567
+ _getSendMsglibAndConnectionDefaults INLINECALLDICT
3568
+ s0 s2 XCHG
3569
+ _getChannelAddress INLINECALLDICT
3570
+ SWAP
3571
+ 1399843593 PUSHINT
3572
+ s0 s3 XCHG
3573
+ lz::SendEpConfig::New INLINECALLDICT
3574
+ s1 s4 XCHG
3575
+ md::MdObj::New INLINECALLDICT
3576
+ s2 s3 XCHG
3577
+ ~pushAction<call> INLINECALLDICT
3578
+ }>
3579
+ endpointCommitPacket PROCINLINE:<{
3580
+ preamble INLINECALLDICT
3581
+ s2 PUSH
3582
+ 0 PUSHINT
3583
+ cl::get<objRef> INLINECALLDICT
3584
+ DUP
3585
+ 0 PUSHINT
3586
+ cl::get<uint32> INLINECALLDICT
3587
+ s3 PUSH
3588
+ 2 PUSHINT
3589
+ cl::get<uint32> INLINECALLDICT
3590
+ NEQ
3591
+ OVER
3592
+ 2 PUSHINT
3593
+ cl::get<uint32> INLINECALLDICT
3594
+ s4 PUSH
3595
+ 1 PUSHINT
3596
+ cl::get<uint32> INLINECALLDICT
3597
+ NEQ
3598
+ OR
3599
+ 502 THROWIF
3600
+ lz::Path::optimizedReverse INLINECALLDICT
3601
+ s2 PUSH
3602
+ 6 PUSHINT
3603
+ cl::get<objRef> INLINECALLDICT
3604
+ 1 PUSHINT
3605
+ s2 PUSH
3606
+ cl::set INLINECALLDICT
3607
+ s3 PUSH
3608
+ 5 PUSHINT
3609
+ cl::get<cellRef> INLINECALLDICT
3610
+ computeContractAddress INLINECALLDICT
3611
+ OVER
3612
+ getReceiveMsglibAndConnectionDefaults INLINECALLDICT
3613
+ NIP
3614
+ s0 s2 XCHG
3615
+ getTimeoutReceiveMsglibAndConnectionDefaults INLINECALLDICT
3616
+ NIP
3617
+ 1401474440 PUSHINT
3618
+ s0 s5 XCHG
3619
+ 10 PUSHINT
3620
+ cl::get<uint64> INLINECALLDICT
3621
+ s2 s3 XCHG
3622
+ lz::ReceiveEpConfig::New INLINECALLDICT
3623
+ getCaller INLINECALLDICT
3624
+ s2 s5 XCHG
3625
+ md::ExtendedMd::New INLINECALLDICT
3626
+ s3 s3 s0 XCHG3
3627
+ ~pushAction<call> INLINECALLDICT
3628
+ }>
3629
+ addMsglib PROCINLINE:<{
3630
+ preamble INLINECALLDICT
3631
+ s2 PUSH
3632
+ 0 PUSHINT
3633
+ cl::get<address> INLINECALLDICT
3634
+ s2 PUSH
3635
+ 3 PUSHINT
3636
+ s2 PUSH
3637
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3638
+ DUP
3639
+ IFNOT:<{
3640
+ s4 PUSH
3641
+ 4 PUSHINT
3642
+ cl::get<uint8> INLINECALLDICT
3643
+ DUP
3644
+ 8 PUSHPOW2DEC
3645
+ LESS
3646
+ 1612 THROWIFNOT
3647
+ 3 PUSHINT
3648
+ cl::nullObject INLINECALLDICT
3649
+ s5 PUSH
3650
+ s3 s8 XCHG
3651
+ SWAP
3652
+ cl::nestedDict256::setRef INLINECALLDICT
3653
+ 4 PUSHINT
3654
+ s0 s6 XCHG
3655
+ INC
3656
+ s1 s6 s0 XCHG3
3657
+ cl::set INLINECALLDICT
3658
+ setContractStorage INLINECALLDICT
3659
+ }>ELSE<{
3660
+ s4 POP
3661
+ }>
3662
+ s0 s3 XCHG
3663
+ NOT
3664
+ s0 s3 XCHG
3665
+ cl::isNull INLINECALLDICT
3666
+ s1 s3 XCHG
3667
+ OR
3668
+ IF:<{
3669
+ s0 s2 XCHG
3670
+ 3960526418 PUSHINT
3671
+ SWAP
3672
+ ~pushAction<call> INLINECALLDICT
3673
+ }>ELSE<{
3674
+ 2 1 BLKDROP2
3675
+ }>
3676
+ }>
3677
+ getMsglibInfoCallback PROCINLINE:<{
3678
+ preamble INLINECALLDICT
3679
+ 3 PUSHINT
3680
+ getCaller INLINECALLDICT
3681
+ s3 PUSH
3682
+ -ROT
3683
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
3684
+ DROP
3685
+ cl::isNull INLINECALLDICT
3686
+ 198 THROWIFNOT
3687
+ 3 PUSHINT
3688
+ getCaller INLINECALLDICT
3689
+ s1 s0 s4 XCHG3
3690
+ cl::nestedDict256::setRef INLINECALLDICT
3691
+ setContractStorage INLINECALLDICT
3692
+ }>
3693
+ }END>c
3694
+ 2 boc+>B "build/Endpoint.boc" B>file