@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,2731 @@
1
+ "Asm.fif" include
2
+ // automatically generated from `src/workers/executor/main.fc` incl:`src/workers/executor/handler.fc` incl:`src/workers/executor/../core/workerCoreHandler.fc` incl:`src/workers/executor/../core/../../funC++/classlib.fc` incl:`src/workers/executor/../core/../../funC++/utils.fc` incl:`src/workers/executor/../core/../../funC++/constants.fc` incl:`src/workers/executor/../core/../../funC++/stdlib.fc` incl:`src/workers/executor/../core/../../funC++/stringlib.fc` incl:`src/workers/executor/../core/../../classes/msgdata/CoinsAmount.fc` incl:`src/workers/executor/../core/../../classes/msgdata/SetAddress.fc` incl:`src/workers/executor/../core/../../funC++/actions/event.fc` incl:`src/workers/executor/../core/../../funC++/actions/../baseInterface.fc` incl:`src/workers/executor/../core/../../funC++/actions/utils.fc` incl:`src/workers/executor/../core/../../funC++/actions/../txnContext.fc` incl:`src/workers/executor/../core/../../funC++/actions/payment.fc` incl:`src/workers/executor/../core/../../funC++/actions/call.fc` incl:`src/workers/executor/../core/../msgdata/MdDict.fc` incl:`src/workers/executor/../core/../msgdata/MdCallContract.fc` incl:`src/workers/executor/../core/abstract/workerHandler.fc` incl:`src/workers/executor/../core/abstract/../../../funC++/handlerCore.fc` incl:`src/workers/executor/../core/abstract/../../../funC++/abstract/handlerAbstract.fc` incl:`src/workers/executor/../core/abstract/../../../classes/msgdata/MdObj.fc` incl:`src/workers/executor/../core/abstract/../workerCoreStorage.fc` incl:`src/workers/executor/../core/abstract/../interface.fc` incl:`src/workers/executor/../../classes/msgdata/MdAddress.fc` incl:`src/workers/executor/../../classes/msgdata/Nonce.fc` incl:`src/workers/executor/../../protocol/msglibs/interface.fc` incl:`src/workers/executor/../../protocol/channel/interface.fc` incl:`src/workers/executor/../../protocol/channel/callbackOpcodes.fc` incl:`src/workers/executor/../msgdata/UlnCommitPacket.fc` incl:`src/workers/executor/../msgdata/NativeDrop.fc` incl:`src/workers/executor/interface.fc` incl:`src/workers/executor/storage.fc` incl:`src/workers/executor/../core/abstract/workerMain.fc` incl:`src/workers/executor/../core/abstract/../../../funC++/actions/deploy.fc` incl:`src/workers/executor/../core/abstract/../../../funC++/contractMain.fc` incl:`src/workers/executor/../core/abstract/../../../funC++/abstract/contractMainAbstract.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
+ 94636 DECLMETHOD md::CoinsAmount::New
76
+ 77914 DECLMETHOD md::SetAddress::New
77
+ DECLPROC getMsgValue
78
+ DECLPROC getOpcode
79
+ DECLPROC txnIsBounced
80
+ DECLPROC getContractBalance
81
+ DECLPROC getInitialContractBalance
82
+ DECLPROC getCaller
83
+ DECLPROC getOrigin
84
+ DECLPROC getOriginStd
85
+ DECLPROC getDonationNanos
86
+ DECLPROC setDonationNanos
87
+ DECLPROC getMsgData
88
+ DECLPROC setOrigin
89
+ DECLPROC initTxnContext
90
+ DECLPROC emptyActions
91
+ DECLPROC sendTerminalAction
92
+ DECLPROC sendNonTerminalAction
93
+ DECLPROC buildLayerzeroMessageBody
94
+ DECLPROC _getEventSink
95
+ 79569 DECLMETHOD action::event::New
96
+ DECLPROC action::event::equals
97
+ DECLPROC _newAction<event>
98
+ DECLPROC ~pushAction<event>
99
+ DECLPROC executeEvent
100
+ DECLPROC action::payment::New
101
+ DECLPROC action::payment::equals
102
+ DECLPROC _newAction<payment>
103
+ DECLPROC ~pushAction<payment>
104
+ DECLPROC executePayment
105
+ DECLPROC action::call::New
106
+ DECLPROC action::call::equals
107
+ DECLPROC _newAction<call>
108
+ DECLPROC ~pushAction<call>
109
+ DECLPROC executeCall
110
+ 87141 DECLMETHOD md::MdDict::New
111
+ 113457 DECLMETHOD md::CallContract::New
112
+ DECLPROC assertInitialized
113
+ DECLPROC checkPermissions
114
+ DECLPROC initialize
115
+ DECLPROC authenticateIfNecessary
116
+ DECLPROC assertOwner
117
+ DECLPROC _checkPermissions
118
+ DECLPROC preamble
119
+ 88345 DECLMETHOD md::MdObj::New
120
+ 78561 DECLMETHOD WorkerCoreStorage::New
121
+ DECLPROC getCoreStorage
122
+ DECLPROC setCoreStorage
123
+ DECLPROC getOwner
124
+ DECLPROC getInitialStorage
125
+ DECLPROC assertAuthenticated
126
+ DECLPROC assertAdmin
127
+ DECLPROC authenticate
128
+ DECLPROC _initialize
129
+ 125595 DECLMETHOD verifyEventOrigin
130
+ DECLPROC claimTon
131
+ DECLPROC transferOwnership
132
+ DECLPROC claimOwnership
133
+ DECLPROC callContract
134
+ DECLPROC setAdminsByAdmin
135
+ 84761 DECLMETHOD md::MdAddress::New
136
+ 110004 DECLMETHOD md::Nonce::New
137
+ 71153 DECLMETHOD md::UlnCommitPacket::New
138
+ 98667 DECLMETHOD md::NativeDrop::New
139
+ 97831 DECLMETHOD Executor::New
140
+ DECLPROC executorCommitPacket
141
+ DECLPROC _executorLzReceivePrepare
142
+ DECLPROC executorLzReceivePrepare
143
+ DECLPROC _executorNativeDrop
144
+ DECLPROC executorNativeDrop
145
+ DECLPROC executorNativeDropAndLzReceivePrepare
146
+ DECLPROC executorLzReceiveAlert
147
+ DECLPROC action::deploy::New
148
+ DECLPROC action::deploy::equals
149
+ DECLPROC _newAction<deployAndCall>
150
+ DECLPROC ~pushAction<deployAndCall>
151
+ DECLPROC executeDeploy
152
+ DECLPROC _executeOpcode
153
+ DECLPROC _executeAction
154
+ DECLPROC main
155
+ DECLPROC __executeOpcode
156
+ DECLGLOBVAR txnContext
157
+ cell_is_empty PROCINLINE:<{
158
+ HASHCU
159
+ 68134197439415885698044414435951397869210496020759160419881882418413283430343 PUSHINT
160
+ EQUAL
161
+ }>
162
+ throwError PROCINLINE:<{
163
+ DUP
164
+ STRDUMP
165
+ DROP
166
+ HASHSU
167
+ 11 PUSHPOW2DEC
168
+ AND
169
+ THROWANY
170
+ }>
171
+ throwErrorUnless PROCINLINE:<{
172
+ SWAP
173
+ IFNOT:<{
174
+ throwError INLINECALLDICT
175
+ }>ELSE<{
176
+ DROP
177
+ }>
178
+ }>
179
+ getContractStateSize PROCINLINE:<{
180
+ 6 PUSHINT
181
+ NEWC
182
+ 5 STU
183
+ s1 s2 XCHG
184
+ STREF
185
+ STREF
186
+ ENDC
187
+ 16 PUSHPOW2DEC
188
+ CDATASIZE
189
+ DROP
190
+ }>
191
+ calculateStorageFees PROCINLINE:<{
192
+ 0 PUSHINT
193
+ GETSTORAGEFEE
194
+ }>
195
+ treeShapeEqual PROCINLINE:<{
196
+ SWAP
197
+ CTOS
198
+ SWAP
199
+ CTOS
200
+ OVER
201
+ SBITREFS
202
+ s2 PUSH
203
+ SBITREFS
204
+ s3 s3 XCHG2
205
+ NEQ
206
+ s1 s2 PUXC
207
+ NEQ
208
+ s1 s2 XCHG
209
+ OR
210
+ IF:<{
211
+ 3 BLKDROP
212
+ FALSE
213
+ }>ELSE<{
214
+ DUP
215
+ 0 EQINT
216
+ IFJMP:<{
217
+ 3 BLKDROP
218
+ TRUE
219
+ }>
220
+ TRUE
221
+ 0 PUSHINT
222
+ WHILE:<{
223
+ s2 PUSH
224
+ 0 GTINT
225
+ }>DO<{
226
+ s4 s0 PUSH2
227
+ PLDREFVAR
228
+ s4 s1 PUSH2
229
+ PLDREFVAR
230
+ treeShapeEqual INLINECALLDICT
231
+ s1 s2 XCHG
232
+ AND
233
+ SWAP
234
+ }>
235
+ s1 s4 XCHG
236
+ 4 BLKDROP
237
+ }>
238
+ }>
239
+ str::asciiUint256ToStr PROC:<{
240
+ DUP
241
+ NEWC
242
+ 256 STU
243
+ ENDC
244
+ CTOS
245
+ SDCNTLEAD0
246
+ 8 PUSHPOW2
247
+ SWAP
248
+ SUB
249
+ POW2
250
+ DEC
251
+ 8627645864741206717834700843784589212596587092734002810783114102550390051603 PUSHINT
252
+ SWAP
253
+ NOT
254
+ AND
255
+ OR
256
+ NEWC
257
+ 256 STU
258
+ ENDC
259
+ CTOS
260
+ }>
261
+ ~str::concat PROC:<{
262
+ OVER
263
+ SBITS
264
+ OVER
265
+ SBITS
266
+ ADD
267
+ 32385 PUSHINT
268
+ GREATER
269
+ IF:<{
270
+ x{43616e6e6f7420636f6e636174656e6174653a20737472696e6720746f6f206c6f6e67} PUSHSLICE
271
+ throwError INLINECALLDICT
272
+ }>
273
+ NEWC
274
+ ROT
275
+ STSLICER
276
+ SWAP
277
+ STSLICER
278
+ ENDC
279
+ CTOS
280
+ }>
281
+ str::concat PROC:<{
282
+ ~str::concat CALLDICT
283
+ }>
284
+ ~str::concatInt PROC:<{
285
+ <b b> <s PUSHSLICE
286
+ OVER
287
+ 0 LESSINT
288
+ IF:<{
289
+ s0 s2 XCHG
290
+ x{2d} PUSHSLICE
291
+ ~str::concat CALLDICT
292
+ SWAP
293
+ NEGATE
294
+ ROT
295
+ }>
296
+ OVER
297
+ 0 EQINT
298
+ IF:<{
299
+ 48 PUSHINT
300
+ NEWC
301
+ 8 STU
302
+ ENDC
303
+ CTOS
304
+ ~str::concat CALLDICT
305
+ }>
306
+ WHILE:<{
307
+ OVER
308
+ 0 GTINT
309
+ }>DO<{
310
+ OVER
311
+ 10 PUSHINT
312
+ MOD
313
+ 48 ADDCONST
314
+ NEWC
315
+ 8 STU
316
+ ENDC
317
+ CTOS
318
+ SWAP
319
+ str::concat CALLDICT
320
+ SWAP
321
+ 10 PUSHINT
322
+ DIV
323
+ SWAP
324
+ }>
325
+ NIP
326
+ str::concat CALLDICT
327
+ }>
328
+ str::concatInt PROC:<{
329
+ ~str::concatInt CALLDICT
330
+ }>
331
+ ~str::concatHex PROC:<{
332
+ <b b> <s PUSHSLICE
333
+ OVER
334
+ 0 EQINT
335
+ IF:<{
336
+ 48 PUSHINT
337
+ NEWC
338
+ 8 STU
339
+ ENDC
340
+ CTOS
341
+ ~str::concat CALLDICT
342
+ }>
343
+ WHILE:<{
344
+ OVER
345
+ 0 GTINT
346
+ }>DO<{
347
+ OVER
348
+ 4 MODPOW2#
349
+ 10 LESSINT
350
+ IF:<{
351
+ OVER
352
+ 4 MODPOW2#
353
+ 48 ADDCONST
354
+ NEWC
355
+ 8 STU
356
+ ENDC
357
+ CTOS
358
+ SWAP
359
+ str::concat CALLDICT
360
+ }>ELSE<{
361
+ OVER
362
+ 4 MODPOW2#
363
+ 65 ADDCONST
364
+ -10 ADDCONST
365
+ NEWC
366
+ 8 STU
367
+ ENDC
368
+ CTOS
369
+ SWAP
370
+ str::concat CALLDICT
371
+ }>
372
+ SWAP
373
+ 4 RSHIFT#
374
+ SWAP
375
+ }>
376
+ NIP
377
+ str::concat CALLDICT
378
+ }>
379
+ str::concatHex PROC:<{
380
+ ~str::concatHex CALLDICT
381
+ }>
382
+ str::console::log<int> PROC:<{
383
+ SWAP
384
+ x{3a20} PUSHSLICE
385
+ str::concat CALLDICT
386
+ SWAP
387
+ str::concatInt CALLDICT
388
+ STRDUMP
389
+ DROP
390
+ }>
391
+ basechainAddressStdToHashpart PROCINLINE:<{
392
+ REWRITESTDADDR
393
+ NIP
394
+ }>
395
+ hashpartToBasechainAddressStd PROCINLINE:<{
396
+ 0 PUSHINT
397
+ 4 PUSHINT
398
+ NEWC
399
+ 3 STU
400
+ 8 STI
401
+ 256 STU
402
+ ENDC CTOS
403
+ }>
404
+ getContractAddress PROCINLINE:<{
405
+ MYADDR
406
+ 11 PUSHINT
407
+ 8 PUSHPOW2
408
+ SDSUBSTR
409
+ 256 PLDU
410
+ }>
411
+ cl::objToSlice PROCINLINE:<{
412
+ CTOS
413
+ }>
414
+ _getTypeWidth PROCINLINE:<{
415
+ DUP
416
+ 9 LESSINT
417
+ IF:<{
418
+ POW2
419
+ }>ELSE<{
420
+ DROP
421
+ 0 PUSHINT
422
+ }>
423
+ }>
424
+ cl::hash PROCINLINE:<{
425
+ HASHCU
426
+ }>
427
+ cl::isNull PROCINLINE:<{
428
+ cell_is_empty INLINECALLDICT
429
+ }>
430
+ cl::noRefFields PROC:<{
431
+ c2 SAVE
432
+ SAMEALTSAVE
433
+ CTOS
434
+ DUP
435
+ SREFS
436
+ DUP
437
+ 0 EQINT
438
+ IFJMP:<{
439
+ 2DROP
440
+ TRUE
441
+ }>
442
+ DUP
443
+ 3 LESSINT
444
+ IFJMP:<{
445
+ 2DROP
446
+ FALSE
447
+ RETALT
448
+ }>
449
+ DUP
450
+ 2 GTINT
451
+ IF:<{
452
+ OVER
453
+ 0 PUSHINT
454
+ PLDREFVAR
455
+ cell_is_empty INLINECALLDICT
456
+ 0 EQINT
457
+ s2 PUSH
458
+ 1 PUSHINT
459
+ PLDREFVAR
460
+ cell_is_empty INLINECALLDICT
461
+ 0 EQINT
462
+ OR
463
+ s2 PUSH
464
+ 2 PUSHINT
465
+ PLDREFVAR
466
+ CTOS
467
+ SREFS
468
+ 0 NEQINT
469
+ OR
470
+ IFJMP:<{
471
+ 2DROP
472
+ FALSE
473
+ RETALT
474
+ }>
475
+ }>
476
+ 3 GTINT
477
+ IF:<{
478
+ 3 PUSHINT
479
+ PLDREFVAR
480
+ CTOS
481
+ SREFS
482
+ 0 NEQINT
483
+ IFJMP:<{
484
+ FALSE
485
+ RETALT
486
+ }>
487
+ }>ELSE<{
488
+ DROP
489
+ }>
490
+ TRUE
491
+ }>
492
+ cl::equalObjTypeShallow PROC:<{
493
+ c2 SAVE
494
+ SAMEALTSAVE
495
+ SWAP
496
+ CTOS
497
+ SWAP
498
+ CTOS
499
+ OVER
500
+ SREFS
501
+ OVER
502
+ SREFS
503
+ s1 s(-1) PUXC
504
+ NEQ
505
+ s3 PUSH
506
+ SBITS
507
+ s3 PUSH
508
+ SBITS
509
+ NEQ
510
+ OR
511
+ IFJMP:<{
512
+ 3 BLKDROP
513
+ FALSE
514
+ }>
515
+ 2 PUSHINT
516
+ WHILE:<{
517
+ s0 s1 PUSH2
518
+ LESS
519
+ }>DO<{
520
+ s3 s0 PUSH2
521
+ PLDREFVAR
522
+ CTOS
523
+ SREFS
524
+ s3 s1 PUSH2
525
+ PLDREFVAR
526
+ CTOS
527
+ SREFS
528
+ NEQ
529
+ s4 s1 PUSH2
530
+ PLDREFVAR
531
+ CTOS
532
+ SBITS
533
+ s4 s2 PUSH2
534
+ PLDREFVAR
535
+ CTOS
536
+ SBITS
537
+ NEQ
538
+ OR
539
+ IFJMP:<{
540
+ 4 BLKDROP
541
+ FALSE
542
+ RETALT
543
+ }>
544
+ INC
545
+ }>
546
+ 4 BLKDROP
547
+ TRUE
548
+ }>
549
+ setContractStorage PROCINLINE:<{
550
+ c4 POP
551
+ }>
552
+ getContractStorage PROCINLINE:<{
553
+ c4 PUSH
554
+ }>
555
+ computeContractAddress PROCINLINE:<{
556
+ 6 PUSHINT
557
+ NEWC
558
+ 5 STU
559
+ STREF
560
+ STREF
561
+ ENDC
562
+ HASHCU
563
+ }>
564
+ cl::typeof PROCINLINE:<{
565
+ DUP
566
+ cl::isNull INLINECALLDICT
567
+ IF:<{
568
+ DROP
569
+ 1314212940 PUSHINT
570
+ }>ELSE<{
571
+ CTOS
572
+ 80 PLDU
573
+ }>
574
+ }>
575
+ cl::declare PROCINLINE:<{
576
+ PUSHNULL
577
+ NEWC
578
+ PAIR
579
+ OVER
580
+ TLEN
581
+ s0 s3 XCHG
582
+ NEWC
583
+ 80 STU
584
+ 1 PUSHINT
585
+ DUP
586
+ 2 PUSHINT
587
+ 350 PUSHINT
588
+ 0 PUSHINT
589
+ DUP
590
+ WHILE:<{
591
+ s0 s9 PUSH2
592
+ LESS
593
+ }>DO<{
594
+ s8 s0 PUSH2
595
+ INDEXVAR
596
+ DUP
597
+ 0 INDEX
598
+ DUP
599
+ _getTypeWidth INLINECALLDICT
600
+ s5 s0 PUSH2
601
+ ADD
602
+ 10 PUSHPOW2DEC
603
+ GREATER
604
+ IF:<{
605
+ s5 POP
606
+ s0 s7 XCHG
607
+ INC
608
+ 0 PUSHINT
609
+ s10 PUSH
610
+ TLEN
611
+ s2 s(-1) PUXC
612
+ GEQ
613
+ IF:<{
614
+ s0 s10 XCHG
615
+ NEWC
616
+ TPUSH
617
+ s0 s10 XCHG
618
+ }>
619
+ s8 s5 XCHG2
620
+ }>
621
+ s4 PUSH
622
+ INC
623
+ s7 PUSH
624
+ GREATER
625
+ IF:<{
626
+ s4 POP
627
+ s5 POP
628
+ s0 s5 XCHG
629
+ INC
630
+ 0 PUSHINT
631
+ 4 PUSHINT
632
+ s10 PUSH
633
+ TLEN
634
+ s3 s(-1) PUXC
635
+ GEQ
636
+ IF:<{
637
+ s0 s10 XCHG
638
+ NEWC
639
+ TPUSH
640
+ s0 s10 XCHG
641
+ }>
642
+ s7 s6 s6 XCHG3
643
+ s0 s4 XCHG
644
+ }>
645
+ OVER
646
+ 9 LESSINT
647
+ IF:<{
648
+ s0 s2 XCHG
649
+ 1 INDEX
650
+ ABS
651
+ s10 s8 PUSH2
652
+ INDEXVAR
653
+ s3 PUSH
654
+ STUX
655
+ s10 s0 s8 XC2PU
656
+ SETINDEXVAR
657
+ }>ELSE<{
658
+ OVER
659
+ 9 EQINT
660
+ IF:<{
661
+ s0 s2 XCHG
662
+ 1 INDEX
663
+ s10 s7 PUSH2
664
+ INDEXVAR
665
+ STREF
666
+ s10 s0 s7 XC2PU
667
+ SETINDEXVAR
668
+ }>ELSE<{
669
+ s0 s2 XCHG
670
+ 1 INDEX
671
+ s10 s7 PUSH2
672
+ INDEXVAR
673
+ STREF
674
+ s10 s0 s7 XC2PU
675
+ SETINDEXVAR
676
+ }>
677
+ }>
678
+ s9 s8 XCHG2
679
+ 4 STU
680
+ s8 PUSH
681
+ 0 GTINT
682
+ IF:<{
683
+ 3 PUSHINT
684
+ s7 PUSH
685
+ 1 EQINT
686
+ IF:<{
687
+ 0 PUSHINT
688
+ }>ELSE<{
689
+ s7 PUSH
690
+ }>
691
+ ROT
692
+ 2 STU
693
+ s4 s(-1) PUXC
694
+ 10 STU
695
+ 2 STU
696
+ s3 s8 XCHG2
697
+ ADD
698
+ }>ELSE<{
699
+ s8 POP
700
+ 10 PUSHPOW2DEC
701
+ s5 PUSH
702
+ 1 EQINT
703
+ IF:<{
704
+ 0 PUSHINT
705
+ }>ELSE<{
706
+ s5 PUSH
707
+ }>
708
+ s0 s9 XCHG2
709
+ 2 STU
710
+ s1 s8 XCHG
711
+ 10 STU
712
+ s1 s(-1) PUXC
713
+ 2 STU
714
+ SWAP
715
+ INC
716
+ s7 s0 s7 XCHG3
717
+ }>
718
+ s0 s2 XCHG
719
+ INC
720
+ s6 s7 XCHG
721
+ }>
722
+ 6 BLKDROP
723
+ 2 2 BLKDROP2
724
+ OVER
725
+ 1 INDEX
726
+ s2 PUSH
727
+ TLEN
728
+ DEC
729
+ DUP
730
+ 1 GTINT
731
+ IF:<{
732
+ OVER
733
+ BREFS
734
+ 0 EQINT
735
+ IF:<{
736
+ <b b> PUSHREF
737
+ <b b> PUSHREF
738
+ s0 s3 XCHG2
739
+ STREF
740
+ s1 s2 XCHG
741
+ STREF
742
+ }>ELSE<{
743
+ OVER
744
+ BREFS
745
+ 1 EQINT
746
+ IF:<{
747
+ <b b> PUSHREF
748
+ ROT
749
+ STREF
750
+ SWAP
751
+ }>
752
+ SWAP
753
+ }>
754
+ SWAP
755
+ }>
756
+ 350 PUSHINT
757
+ s3 PUSH
758
+ BBITS
759
+ SUB
760
+ s1 s3 XCHG
761
+ STONES
762
+ SWAP
763
+ STBR
764
+ OVER
765
+ 1 EQINT
766
+ IF:<{
767
+ 2 1 BLKDROP2
768
+ ENDC
769
+ }>ELSE<{
770
+ SWAP
771
+ 2 EQINT
772
+ IFJMP:<{
773
+ SWAP
774
+ 2 INDEX
775
+ ENDC
776
+ SWAP
777
+ STREF
778
+ ENDC
779
+ }>
780
+ OVER
781
+ 3 INDEX
782
+ ENDC
783
+ s0 s2 XCHG
784
+ 2 INDEX
785
+ ENDC
786
+ SWAP
787
+ STREF
788
+ STREF
789
+ ENDC
790
+ }>
791
+ }>
792
+ cl::nullObject PROCINLINE:<{
793
+ <b b> PUSHREF
794
+ }>
795
+ cl::set PROCINLINE:<{
796
+ s0 s2 XCHG
797
+ CTOS
798
+ SWAP
799
+ 18 MULCONST
800
+ 80 ADDCONST
801
+ 2DUP
802
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
803
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
804
+ SDSUBSTR // STACK [substring]
805
+ 2 PLDU // STACK [2BitUnsignInt]
806
+ s2 s1 PUSH2
807
+ // STACK [fieldInfoOffset, headerSlice]
808
+ 4 PUSHINT // STACK [_FIELD_TYPE_WIDTH, fieldInfoOffset, headerSlice]
809
+ SDSUBSTR // STACK [substring]
810
+ 4 PLDU // STACK [2BitUnsignInt]
811
+ 2OVER
812
+ 6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
813
+ 10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
814
+ SDSUBSTR // STACK [substring]
815
+ 10 PLDU // STACK [10BitUnsignInt]
816
+ s4 s3 PUXC
817
+ 16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
818
+ 2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
819
+ SDSUBSTR // STACK [substring]
820
+ 2 PLDU // STACK [10BitUnsignInt]
821
+ OVER
822
+ _getTypeWidth INLINECALLDICT
823
+ s3 PUSH
824
+ 0 EQINT
825
+ IF:<{
826
+ s5 PUSH
827
+ }>ELSE<{
828
+ s5 s3 PUSH2
829
+ PLDREFVAR
830
+ CTOS
831
+ }>
832
+ OVER
833
+ 0 NEQINT
834
+ IF:<{
835
+ 4 PUSHINT
836
+ s3 POP
837
+ }>
838
+ NEWC
839
+ OVER
840
+ SBITS
841
+ s7 PUSH
842
+ MIN
843
+ s2 PUSH
844
+ SREFS
845
+ s5 s(-1) PUXC
846
+ MIN
847
+ s3 PUSH
848
+ -ROT
849
+ SCUTFIRST
850
+ STSLICER
851
+ s4 PUSH
852
+ 9 EQINT
853
+ IF:<{
854
+ s2 POP
855
+ s3 POP
856
+ s4 POP
857
+ s5 s5 XCHG2
858
+ s0 s3 XCHG
859
+ STREF
860
+ 0 PUSHINT
861
+ s3 PUSH
862
+ SREFS
863
+ s0 s6 XCHG2
864
+ SUB
865
+ DEC
866
+ s3 s5 s0 XCHG3
867
+ SCUTLAST
868
+ s1 s3 XCHG
869
+ STSLICER
870
+ }>ELSE<{
871
+ s0 s4 XCHG
872
+ 9 EQINT
873
+ IF:<{
874
+ NIP
875
+ s4 POP
876
+ s5 s5 XCHG2
877
+ STREF
878
+ 0 PUSHINT
879
+ s3 PUSH
880
+ SREFS
881
+ s0 s6 XCHG2
882
+ SUB
883
+ DEC
884
+ s3 s5 s0 XCHG3
885
+ SCUTLAST
886
+ s1 s3 XCHG
887
+ STSLICER
888
+ }>ELSE<{
889
+ s2 POP
890
+ s0 s6 XCHG
891
+ ABS
892
+ s0 s2 s6 XC2PU
893
+ STUX
894
+ s3 s5 XCHG2
895
+ ADD
896
+ s2 PUSH
897
+ SREFS
898
+ s2 s3 XCHG
899
+ SSKIPFIRST
900
+ s1 s3 XCHG
901
+ STSLICER
902
+ }>
903
+ }>
904
+ s2 PUSH
905
+ 0 GTINT
906
+ IF:<{
907
+ ENDC
908
+ NEWC
909
+ s2 PUSH
910
+ SBITS
911
+ s3 s4 s(-1) PU2XC
912
+ SCUTFIRST
913
+ STSLICER
914
+ STREF
915
+ 0 PUSHINT
916
+ s2 PUSH
917
+ SREFS
918
+ s0 s4 XCHG2
919
+ SUB
920
+ DEC
921
+ s1 s3 XCHG
922
+ SCUTLAST
923
+ STSLICER
924
+ ENDC
925
+ }>ELSE<{
926
+ 2 1 BLKDROP2
927
+ ENDC
928
+ }>
929
+ }>
930
+ cl::get<uint> PROCINLINE:<{
931
+ s0 s2 XCHG
932
+ CTOS
933
+ SWAP
934
+ 18 MULCONST
935
+ 80 ADDCONST
936
+ 2DUP
937
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
938
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
939
+ SDSUBSTR // STACK [substring]
940
+ 2 PLDU // STACK [2BitUnsignInt]
941
+ s2 s1 PUXC
942
+ 6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
943
+ 10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
944
+ SDSUBSTR // STACK [substring]
945
+ 10 PLDU // STACK [10BitUnsignInt]
946
+ OVER
947
+ 0 EQINT
948
+ IF:<{
949
+ NIP
950
+ s2 PUSH
951
+ SDSUBSTR // STACK [substring]
952
+ s1 XCHG0
953
+ PLDUX // STACK [10BitUnsignInt] (CC +1 )
954
+ }>ELSE<{
955
+ -ROT
956
+ PLDREFVAR
957
+ CTOS
958
+ s1 s2 XCPU
959
+ SDSUBSTR // STACK [substring]
960
+ s1 XCHG0
961
+ PLDUX // STACK [10BitUnsignInt] (CC +1 )
962
+ }>
963
+ }>
964
+ cl::get<cellRef> PROCINLINE:<{
965
+ SWAP
966
+ CTOS
967
+ SWAP
968
+ 18 MULCONST
969
+ 80 ADDCONST
970
+ 2DUP
971
+ 4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
972
+ 2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
973
+ SDSUBSTR // STACK [substring]
974
+ 2 PLDU // STACK [2BitUnsignInt]
975
+ s2 s1 PUXC
976
+ 16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
977
+ 2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
978
+ SDSUBSTR // STACK [substring]
979
+ 2 PLDU // STACK [10BitUnsignInt]
980
+ OVER
981
+ 0 EQINT
982
+ IF:<{
983
+ NIP
984
+ PLDREFVAR
985
+ }>ELSE<{
986
+ -ROT
987
+ PLDREFVAR
988
+ CTOS
989
+ SWAP
990
+ PLDREFVAR
991
+ }>
992
+ }>
993
+ cl::getWithCell<cellRef> PROCINLINE:<{
994
+ cl::get<cellRef> INLINECALLDICT
995
+ }>
996
+ cl::get<objRef> PROCINLINE:<{
997
+ cl::get<cellRef> INLINECALLDICT
998
+ }>
999
+ cl::get<uint8> PROCINLINE:<{
1000
+ 8 PUSHINT
1001
+ cl::get<uint> INLINECALLDICT
1002
+ }>
1003
+ cl::get<uint16> PROCINLINE:<{
1004
+ 16 PUSHINT
1005
+ cl::get<uint> INLINECALLDICT
1006
+ }>
1007
+ cl::get<uint32> PROCINLINE:<{
1008
+ 32 PUSHINT
1009
+ cl::get<uint> INLINECALLDICT
1010
+ }>
1011
+ cl::get<uint64> PROCINLINE:<{
1012
+ 64 PUSHINT
1013
+ cl::get<uint> INLINECALLDICT
1014
+ }>
1015
+ cl::get<coins> PROCINLINE:<{
1016
+ 7 PUSHPOW2
1017
+ cl::get<uint> INLINECALLDICT
1018
+ }>
1019
+ cl::get<uint256> PROCINLINE:<{
1020
+ 8 PUSHPOW2
1021
+ cl::get<uint> INLINECALLDICT
1022
+ }>
1023
+ cl::get<std_address> PROCINLINE:<{
1024
+ 8 PUSHPOW2
1025
+ cl::get<uint> INLINECALLDICT
1026
+ hashpartToBasechainAddressStd INLINECALLDICT
1027
+ }>
1028
+ cl::get<bool> PROCINLINE:<{
1029
+ 1 PUSHINT
1030
+ cl::get<uint> INLINECALLDICT
1031
+ 0 NEQINT
1032
+ }>
1033
+ cl::get<dict256> PROCINLINE:<{
1034
+ cl::get<cellRef> INLINECALLDICT
1035
+ }>
1036
+ cl::get<address> PROCINLINE:<{
1037
+ 8 PUSHPOW2
1038
+ cl::get<uint> INLINECALLDICT
1039
+ }>
1040
+ typeofField PROCINLINE:<{
1041
+ SWAP
1042
+ CTOS
1043
+ SWAP
1044
+ 18 MULCONST
1045
+ 80 ADDCONST
1046
+ 4 PUSHINT
1047
+ SDSUBSTR
1048
+ 4 PLDU
1049
+ }>
1050
+ compareObjectFields PROCINLINE:<{
1051
+ CONT:<{
1052
+ c2 SAVE
1053
+ SAMEALTSAVE
1054
+ OVER
1055
+ cl::typeof INLINECALLDICT
1056
+ OVER
1057
+ cl::typeof INLINECALLDICT
1058
+ NEQ
1059
+ DUP
1060
+ IF:<{
1061
+ 3 BLKDROP
1062
+ 16 PUSHINT
1063
+ }>ELSE<{
1064
+ s2 PUSH
1065
+ cl::typeof INLINECALLDICT
1066
+ 1314212940 PUSHINT
1067
+ EQUAL
1068
+ IFJMP:<{
1069
+ 3 BLKDROP
1070
+ -1 PUSHINT
1071
+ }>
1072
+ 0 PUSHINT
1073
+ WHILE:<{
1074
+ DUP
1075
+ 16 LESSINT
1076
+ }>DO<{
1077
+ s3 s0 PUSH2
1078
+ typeofField INLINECALLDICT
1079
+ DUP
1080
+ 9 EQINT
1081
+ IF:<{
1082
+ DROP
1083
+ NIP
1084
+ s2 s0 PUSH2
1085
+ cl::get<objRef> INLINECALLDICT
1086
+ cl::hash INLINECALLDICT
1087
+ s2 s1 PUSH2
1088
+ cl::get<objRef> INLINECALLDICT
1089
+ cl::hash INLINECALLDICT
1090
+ NEQ
1091
+ DUP
1092
+ IF:<{
1093
+ s3 s1 PUSH2
1094
+ cl::get<objRef> INLINECALLDICT
1095
+ HASHCU
1096
+ s0 DUMP
1097
+ DROP
1098
+ s2 s1 PUSH2
1099
+ cl::get<objRef> INLINECALLDICT
1100
+ HASHCU
1101
+ s0 DUMP
1102
+ DROP
1103
+ }>
1104
+ }>ELSE<{
1105
+ DUP
1106
+ 9 LESSINT
1107
+ IF:<{
1108
+ 1 2 BLKDROP2
1109
+ _getTypeWidth INLINECALLDICT
1110
+ s3 s1 s0 PUSH3
1111
+ cl::get<uint> INLINECALLDICT
1112
+ s3 s2 s1 PUSH3
1113
+ cl::get<uint> INLINECALLDICT
1114
+ NEQ
1115
+ DUP
1116
+ IF:<{
1117
+ x{6c68733a20} PUSHSLICE
1118
+ s5 s3 s2 PUSH3
1119
+ cl::get<uint> INLINECALLDICT
1120
+ str::console::log<int> CALLDICT
1121
+ 2OVER
1122
+ x{7268733a20} PUSHSLICE
1123
+ s0 s4 XCHG
1124
+ cl::get<uint> INLINECALLDICT
1125
+ s1 s2 XCHG
1126
+ str::console::log<int> CALLDICT
1127
+ }>ELSE<{
1128
+ NIP
1129
+ }>
1130
+ }>ELSE<{
1131
+ 2DROP
1132
+ 16 PUSHINT
1133
+ SWAP
1134
+ }>
1135
+ }>
1136
+ DUP
1137
+ IFJMP:<{
1138
+ s1 s3 XCHG
1139
+ 3 BLKDROP
1140
+ x{4d616c666f726d6564206669656c643a20} PUSHSLICE
1141
+ OVER
1142
+ str::console::log<int> CALLDICT
1143
+ RETALT
1144
+ }>
1145
+ SWAP
1146
+ INC
1147
+ }>
1148
+ 4 BLKDROP
1149
+ -1 PUSHINT
1150
+ }>
1151
+ }>
1152
+ EXECUTE
1153
+ }>
1154
+ objectsAreEqual PROCINLINE:<{
1155
+ compareObjectFields INLINECALLDICT
1156
+ -1 EQINT
1157
+ }>
1158
+ _typeToStr PROC:<{
1159
+ DUP
1160
+ 3 EQINT
1161
+ IFJMP:<{
1162
+ DROP
1163
+ x{75696e7438} PUSHSLICE
1164
+ }>
1165
+ DUP
1166
+ 4 EQINT
1167
+ IFJMP:<{
1168
+ DROP
1169
+ x{75696e743136} PUSHSLICE
1170
+ }>
1171
+ DUP
1172
+ 5 EQINT
1173
+ IFJMP:<{
1174
+ DROP
1175
+ x{75696e743332} PUSHSLICE
1176
+ }>
1177
+ DUP
1178
+ 6 EQINT
1179
+ IFJMP:<{
1180
+ DROP
1181
+ x{75696e743634} PUSHSLICE
1182
+ }>
1183
+ DUP
1184
+ 8 EQINT
1185
+ IFJMP:<{
1186
+ DROP
1187
+ x{75696e74323536} PUSHSLICE
1188
+ }>
1189
+ DUP
1190
+ 7 EQINT
1191
+ IFJMP:<{
1192
+ DROP
1193
+ x{636f696e73} PUSHSLICE
1194
+ }>
1195
+ DUP
1196
+ 8 EQINT
1197
+ IFJMP:<{
1198
+ DROP
1199
+ x{61646472657373} PUSHSLICE
1200
+ }>
1201
+ DUP
1202
+ 9 EQINT
1203
+ IFJMP:<{
1204
+ DROP
1205
+ x{64696374323536} PUSHSLICE
1206
+ }>
1207
+ DUP
1208
+ 9 EQINT
1209
+ IFJMP:<{
1210
+ DROP
1211
+ x{6f626a526566} PUSHSLICE
1212
+ }>
1213
+ DUP
1214
+ 9 EQINT
1215
+ IFJMP:<{
1216
+ DROP
1217
+ x{63656c6c526566} PUSHSLICE
1218
+ }>
1219
+ 0 EQINT
1220
+ IFJMP:<{
1221
+ x{626f6f6c} PUSHSLICE
1222
+ }>
1223
+ x{756e6b6e6f776e} PUSHSLICE
1224
+ }>
1225
+ printField PROCINLINE:<{
1226
+ OVER
1227
+ CTOS
1228
+ s2 s1 PUSH2
1229
+ typeofField INLINECALLDICT
1230
+ s2 PUSH
1231
+ 18 MULCONST
1232
+ 80 ADDCONST
1233
+ DUP
1234
+ 4 ADDCONST
1235
+ s3 s(-1) PUXC
1236
+ 2 PUSHINT
1237
+ SDSUBSTR
1238
+ 2 PLDU
1239
+ OVER
1240
+ 4 ADDCONST
1241
+ 2 ADDCONST
1242
+ 10 ADDCONST
1243
+ s4 s(-1) PUXC
1244
+ 2 PUSHINT
1245
+ SDSUBSTR
1246
+ 2 PLDU
1247
+ s3 PUSH
1248
+ _getTypeWidth INLINECALLDICT
1249
+ s0 s3 XCHG
1250
+ 4 ADDCONST
1251
+ 2 ADDCONST
1252
+ s1 s5 XCHG
1253
+ 10 PUSHINT
1254
+ SDSUBSTR
1255
+ 10 PLDU
1256
+ s3 PUSH
1257
+ _typeToStr CALLDICT
1258
+ x{20} PUSHSLICE
1259
+ str::concat CALLDICT
1260
+ s6 PUSH
1261
+ str::concatInt CALLDICT
1262
+ x{2061742063} PUSHSLICE
1263
+ str::concat CALLDICT
1264
+ ROT
1265
+ str::concatInt CALLDICT
1266
+ s2 PUSH
1267
+ 0 GTINT
1268
+ IF:<{
1269
+ s4 POP
1270
+ s0 s3 XCHG
1271
+ x{2e62} PUSHSLICE
1272
+ str::concat CALLDICT
1273
+ s0 s3 XCHG2
1274
+ str::concatInt CALLDICT
1275
+ }>ELSE<{
1276
+ NIP
1277
+ x{2e72} PUSHSLICE
1278
+ str::concat CALLDICT
1279
+ s0 s3 XCHG2
1280
+ str::concatInt CALLDICT
1281
+ }>
1282
+ OVER
1283
+ 9 LESSINT
1284
+ IF:<{
1285
+ NIP
1286
+ x{203d20} PUSHSLICE
1287
+ str::concat CALLDICT
1288
+ 3 -ROLL
1289
+ cl::get<uint> INLINECALLDICT
1290
+ str::concatInt CALLDICT
1291
+ STRDUMP
1292
+ DROP
1293
+ }>ELSE<{
1294
+ s2 POP
1295
+ 9 EQINT
1296
+ IF:<{
1297
+ x{2068617368203d20} PUSHSLICE
1298
+ str::concat CALLDICT
1299
+ -ROT
1300
+ cl::get<objRef> INLINECALLDICT
1301
+ cl::hash INLINECALLDICT
1302
+ str::concatInt CALLDICT
1303
+ STRDUMP
1304
+ DROP
1305
+ }>ELSE<{
1306
+ x{2068617368203d20} PUSHSLICE
1307
+ str::concat CALLDICT
1308
+ -ROT
1309
+ cl::get<cellRef> INLINECALLDICT
1310
+ HASHCU
1311
+ str::concatInt CALLDICT
1312
+ STRDUMP
1313
+ DROP
1314
+ }>
1315
+ }>
1316
+ }>
1317
+ uint256ToSlice PROCINLINE:<{
1318
+ NEWC
1319
+ 256 STU
1320
+ ENDC CTOS
1321
+ }>
1322
+ sliceToUint256 PROCINLINE:<{
1323
+ 256 PLDU
1324
+ }>
1325
+ cl::dict256::New PROCINLINE:<{
1326
+ <b b> PUSHREF
1327
+ }>
1328
+ cl::dict256::get PROCINLINE:<{
1329
+ OVER
1330
+ cell_is_empty INLINECALLDICT
1331
+ IF:<{
1332
+ NIP
1333
+ NEWDICT
1334
+ 8 PUSHPOW2
1335
+ DICTUGET
1336
+ NULLSWAPIFNOT
1337
+ }>ELSE<{
1338
+ SWAP
1339
+ 8 PUSHPOW2
1340
+ DICTUGET
1341
+ NULLSWAPIFNOT
1342
+ }>
1343
+ }>
1344
+ cl::dict256::get<uint256> PROCINLINE:<{
1345
+ cl::dict256::get INLINECALLDICT
1346
+ IF:<{
1347
+ sliceToUint256 INLINECALLDICT
1348
+ TRUE
1349
+ }>ELSE<{
1350
+ DROP
1351
+ 0 PUSHINT
1352
+ FALSE
1353
+ }>
1354
+ }>
1355
+ cl::dict256::get<cellRef> PROCINLINE:<{
1356
+ OVER
1357
+ cell_is_empty INLINECALLDICT
1358
+ IF:<{
1359
+ 2DROP
1360
+ <b b> PUSHREF
1361
+ FALSE
1362
+ }>ELSE<{
1363
+ SWAP
1364
+ 8 PUSHPOW2
1365
+ DICTUGETREF
1366
+ NULLSWAPIFNOT
1367
+ }>
1368
+ }>
1369
+ cl::dict256::setRef PROCINLINE:<{
1370
+ s2 PUSH
1371
+ cell_is_empty INLINECALLDICT
1372
+ IF:<{
1373
+ 1 2 BLKDROP2
1374
+ NEWDICT
1375
+ s1 s2 XCHG
1376
+ 8 PUSHPOW2
1377
+ DICTUSETREF
1378
+ }>ELSE<{
1379
+ s0 s2 XCHG
1380
+ 8 PUSHPOW2
1381
+ DICTUSETREF
1382
+ }>
1383
+ }>
1384
+ cl::dict256::set PROCINLINE:<{
1385
+ DUP
1386
+ <{ TRY:<{ SBITS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
1387
+ IF:<{
1388
+ }>ELSE<{
1389
+ uint256ToSlice INLINECALLDICT
1390
+ }>
1391
+ s2 PUSH
1392
+ cell_is_empty INLINECALLDICT
1393
+ IF:<{
1394
+ s2 POP
1395
+ NEWDICT
1396
+ 8 PUSHPOW2
1397
+ DICTUSET
1398
+ }>ELSE<{
1399
+ s0 s2 XCHG
1400
+ 8 PUSHPOW2
1401
+ DICTUSET
1402
+ }>
1403
+ }>
1404
+ cl::dict256::delete PROC:<{
1405
+ OVER
1406
+ cell_is_empty INLINECALLDICT
1407
+ IFJMP:<{
1408
+ DROP
1409
+ }>
1410
+ SWAP
1411
+ 8 PUSHPOW2
1412
+ DICTUDEL
1413
+ DROP
1414
+ DUP
1415
+ <{ TRY:<{ CTOS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
1416
+ IF:<{
1417
+ }>ELSE<{
1418
+ DROP
1419
+ cl::dict256::New INLINECALLDICT
1420
+ }>
1421
+ }>
1422
+ cl::dict256::getMin<slice> PROC:<{
1423
+ DUP
1424
+ cell_is_empty INLINECALLDICT
1425
+ IFJMP:<{
1426
+ DROP
1427
+ -1 PUSHINT
1428
+ PUSHNULL
1429
+ }>
1430
+ 8 PUSHPOW2
1431
+ DICTUMIN
1432
+ NULLSWAPIFNOT2
1433
+ IFJMP:<{
1434
+ SWAP
1435
+ }>
1436
+ 2DROP
1437
+ -1 PUSHINT
1438
+ PUSHNULL
1439
+ }>
1440
+ cl::dict256::getMin<uint256> PROC:<{
1441
+ DUP
1442
+ cell_is_empty INLINECALLDICT
1443
+ IFJMP:<{
1444
+ DROP
1445
+ -1 PUSHINT
1446
+ PUSHNULL
1447
+ }>
1448
+ 8 PUSHPOW2
1449
+ DICTUMIN
1450
+ NULLSWAPIFNOT2
1451
+ IFJMP:<{
1452
+ SWAP
1453
+ 256 PLDU
1454
+ }>
1455
+ 2DROP
1456
+ -1 PUSHINT
1457
+ PUSHNULL
1458
+ }>
1459
+ cl::dict256::getMin<cellRef> PROC:<{
1460
+ DUP
1461
+ cell_is_empty INLINECALLDICT
1462
+ IFJMP:<{
1463
+ DROP
1464
+ -1 PUSHINT
1465
+ PUSHNULL
1466
+ }>
1467
+ 8 PUSHPOW2
1468
+ DICTUMINREF
1469
+ NULLSWAPIFNOT2
1470
+ IFJMP:<{
1471
+ SWAP
1472
+ }>
1473
+ 2DROP
1474
+ -1 PUSHINT
1475
+ PUSHNULL
1476
+ }>
1477
+ cl::dict256::getNext<slice> PROC:<{
1478
+ OVER
1479
+ cell_is_empty INLINECALLDICT
1480
+ IFJMP:<{
1481
+ 2DROP
1482
+ -1 PUSHINT
1483
+ PUSHNULL
1484
+ }>
1485
+ SWAP
1486
+ 8 PUSHPOW2
1487
+ DICTUGETNEXT
1488
+ NULLSWAPIFNOT2
1489
+ IFJMP:<{
1490
+ SWAP
1491
+ }>
1492
+ 2DROP
1493
+ -1 PUSHINT
1494
+ PUSHNULL
1495
+ }>
1496
+ cl::dict256::getNext<uint256> PROC:<{
1497
+ OVER
1498
+ cell_is_empty INLINECALLDICT
1499
+ IFJMP:<{
1500
+ 2DROP
1501
+ -1 PUSHINT
1502
+ PUSHNULL
1503
+ }>
1504
+ SWAP
1505
+ 8 PUSHPOW2
1506
+ DICTUGETNEXT
1507
+ NULLSWAPIFNOT2
1508
+ IFJMP:<{
1509
+ SWAP
1510
+ 256 PLDU
1511
+ }>
1512
+ 2DROP
1513
+ -1 PUSHINT
1514
+ PUSHNULL
1515
+ }>
1516
+ cl::dict256::getNext<cellRef> PROC:<{
1517
+ OVER
1518
+ cell_is_empty INLINECALLDICT
1519
+ IFJMP:<{
1520
+ 2DROP
1521
+ -1 PUSHINT
1522
+ PUSHNULL
1523
+ }>
1524
+ SWAP
1525
+ 8 PUSHPOW2
1526
+ DICTUGETNEXT
1527
+ NULLSWAPIFNOT2
1528
+ IFJMP:<{
1529
+ SWAP
1530
+ 0 PLDREFIDX
1531
+ }>
1532
+ 2DROP
1533
+ -1 PUSHINT
1534
+ PUSHNULL
1535
+ }>
1536
+ cl::dict256::size PROCINLINE:<{
1537
+ 0 PUSHINT
1538
+ OVER
1539
+ cl::dict256::getMin<slice> CALLDICT
1540
+ DROP
1541
+ WHILE:<{
1542
+ DUP
1543
+ -1 GTINT
1544
+ }>DO<{
1545
+ s2 s(-1) PUXC
1546
+ cl::dict256::getNext<slice> CALLDICT
1547
+ DROP
1548
+ SWAP
1549
+ INC
1550
+ SWAP
1551
+ }>
1552
+ DROP
1553
+ NIP
1554
+ }>
1555
+ cl::nestedDict256::set PROCINLINE:<{
1556
+ 2OVER
1557
+ cl::get<dict256> INLINECALLDICT
1558
+ -ROT
1559
+ cl::dict256::set INLINECALLDICT
1560
+ cl::set INLINECALLDICT
1561
+ }>
1562
+ cl::nestedDict256::setRef PROCINLINE:<{
1563
+ 2OVER
1564
+ cl::get<dict256> INLINECALLDICT
1565
+ -ROT
1566
+ cl::dict256::setRef INLINECALLDICT
1567
+ cl::set INLINECALLDICT
1568
+ }>
1569
+ cl::nestedDict256::delete PROCINLINE:<{
1570
+ s2 s1 PUSH2
1571
+ cl::get<dict256> INLINECALLDICT
1572
+ SWAP
1573
+ cl::dict256::delete CALLDICT
1574
+ cl::set INLINECALLDICT
1575
+ }>
1576
+ cl::nestedDict256::get<uint256> PROCINLINE:<{
1577
+ -ROT
1578
+ cl::get<dict256> INLINECALLDICT
1579
+ SWAP
1580
+ cl::dict256::get<uint256> INLINECALLDICT
1581
+ }>
1582
+ cl::nestedDict256::get<slice> PROCINLINE:<{
1583
+ -ROT
1584
+ cl::get<dict256> INLINECALLDICT
1585
+ SWAP
1586
+ cl::dict256::get INLINECALLDICT
1587
+ }>
1588
+ cl::nestedDict256::get<cellRef> PROCINLINE:<{
1589
+ -ROT
1590
+ cl::get<dict256> INLINECALLDICT
1591
+ SWAP
1592
+ cl::dict256::get INLINECALLDICT
1593
+ DUP
1594
+ IF:<{
1595
+ SWAP
1596
+ 0 PLDREFIDX
1597
+ SWAP
1598
+ }>ELSE<{
1599
+ NIP
1600
+ <b b> PUSHREF
1601
+ SWAP
1602
+ }>
1603
+ }>
1604
+ md::CoinsAmount::New PROCINLINE:<{
1605
+ 7165061455270735220 PUSHINT
1606
+ 7 PUSHINT
1607
+ ROT
1608
+ PAIR
1609
+ SINGLE
1610
+ cl::declare INLINECALLDICT
1611
+ }>
1612
+ md::SetAddress::New PROCINLINE:<{
1613
+ 544943643768618328879987 PUSHINT
1614
+ 8 PUSHINT
1615
+ ROT
1616
+ PAIR
1617
+ SINGLE
1618
+ cl::declare INLINECALLDICT
1619
+ }>
1620
+ getMsgValue PROCINLINE:<{
1621
+ txnContext GETGLOB
1622
+ 6 INDEX
1623
+ }>
1624
+ getOpcode PROCINLINE:<{
1625
+ txnContext GETGLOB
1626
+ 3 INDEX
1627
+ }>
1628
+ txnIsBounced PROCINLINE:<{
1629
+ txnContext GETGLOB
1630
+ 0 INDEX
1631
+ }>
1632
+ getContractBalance PROCINLINE:<{
1633
+ txnContext GETGLOB
1634
+ 5 INDEX
1635
+ }>
1636
+ getInitialContractBalance PROCINLINE:<{
1637
+ getContractBalance INLINECALLDICT
1638
+ getMsgValue INLINECALLDICT
1639
+ SUB
1640
+ }>
1641
+ getCaller PROCINLINE:<{
1642
+ txnContext GETGLOB
1643
+ 1 INDEX
1644
+ }>
1645
+ getOrigin PROCINLINE:<{
1646
+ txnContext GETGLOB
1647
+ 9 INDEX
1648
+ }>
1649
+ getOriginStd PROCINLINE:<{
1650
+ getOrigin INLINECALLDICT
1651
+ hashpartToBasechainAddressStd INLINECALLDICT
1652
+ }>
1653
+ getDonationNanos PROCINLINE:<{
1654
+ txnContext GETGLOB
1655
+ 10 INDEX
1656
+ }>
1657
+ setDonationNanos PROCINLINE:<{
1658
+ txnContext GETGLOB
1659
+ SWAP
1660
+ 10 PUSHINT
1661
+ SETINDEXVAR
1662
+ txnContext SETGLOB
1663
+ }>
1664
+ getMsgData PROCINLINE:<{
1665
+ txnContext GETGLOB
1666
+ 11 INDEX
1667
+ }>
1668
+ setOrigin PROCINLINE:<{
1669
+ txnContext GETGLOB
1670
+ SWAP
1671
+ 9 PUSHINT
1672
+ SETINDEXVAR
1673
+ txnContext SETGLOB
1674
+ }>
1675
+ initTxnContext PROCINLINE:<{
1676
+ OVER
1677
+ CTOS
1678
+ 4 PUSHINT
1679
+ LDUX
1680
+ FALSE
1681
+ s0 s2 XCHG
1682
+ 1 PUSHINT
1683
+ AND
1684
+ IF:<{
1685
+ NIP
1686
+ TRUE
1687
+ s0 s2 XCHG
1688
+ 32 PUSHINT
1689
+ SDSKIPFIRST
1690
+ -ROT
1691
+ }>
1692
+ -1 PUSHINT
1693
+ DUP
1694
+ 0 PUSHINT
1695
+ PUSHNULL
1696
+ s0 s4 XCHG
1697
+ LDMSGADDR
1698
+ LDMSGADDR
1699
+ NIP
1700
+ LDGRAMS
1701
+ NIP
1702
+ 1 PUSHINT
1703
+ SDSKIPFIRST
1704
+ LDGRAMS
1705
+ NIP
1706
+ SWAP
1707
+ basechainAddressStdToHashpart INLINECALLDICT
1708
+ s0 s7 PUSH2
1709
+ SEMPTY
1710
+ IFNOT:<{
1711
+ 3 3 BLKDROP2
1712
+ s0 s5 XCHG
1713
+ 32 PUSHINT
1714
+ LDUX
1715
+ 64 PUSHINT
1716
+ LDUX
1717
+ LDGRAMS
1718
+ DUP
1719
+ SBITS
1720
+ 267 PUSHINT
1721
+ GEQ
1722
+ IF:<{
1723
+ s8 POP
1724
+ s7 PUSH
1725
+ 11 PUSHINT
1726
+ 8 PUSHPOW2
1727
+ SDSUBSTR
1728
+ 256 PLDU
1729
+ s0 s8 XCHG
1730
+ }>
1731
+ DUP
1732
+ SREMPTY
1733
+ IFNOT:<{
1734
+ s6 POP
1735
+ s5 PUSH
1736
+ PLDREF
1737
+ s0 s6 XCHG
1738
+ }>
1739
+ s0 s8 XCHG
1740
+ s3 s5 XCHG
1741
+ s4 s3 s0 XCHG3
1742
+ s1 s2 XCHG
1743
+ }>
1744
+ s0 s2 XCHG
1745
+ LDGRAMS
1746
+ DROP
1747
+ 3 PUSHINT
1748
+ 1 MULRSHIFT#
1749
+ s7 s11 XCHG
1750
+ s10 s9 XCHG2
1751
+ s5 s8 XCHG
1752
+ s4 s7 XCHG
1753
+ s4 s6 XCHG
1754
+ s3 s3 XCHG2
1755
+ s0 s5 XCHG
1756
+ s0 s4 XCHG
1757
+ 12 TUPLE
1758
+ txnContext SETGLOB
1759
+ }>
1760
+ emptyActions PROCINLINE:<{
1761
+ 0 PUSHINT
1762
+ SINGLE
1763
+ }>
1764
+ sendTerminalAction PROCINLINE:<{
1765
+ 24 PUSHINT
1766
+ NEWC
1767
+ 6 STU
1768
+ s0 s4 XCHG
1769
+ hashpartToBasechainAddressStd INLINECALLDICT
1770
+ s1 s4 XCHG
1771
+ STSLICER
1772
+ 0 PUSHINT
1773
+ STGRAMS
1774
+ OVER
1775
+ ISNULL
1776
+ IF:<{
1777
+ 1 PUSHINT
1778
+ s2 POP
1779
+ 107 STU
1780
+ }>ELSE<{
1781
+ 7 PUSHINT
1782
+ SWAP
1783
+ 108 STU
1784
+ STREF
1785
+ }>
1786
+ STREF
1787
+ ENDC
1788
+ 7 PUSHPOW2
1789
+ ROT
1790
+ OR
1791
+ SENDRAWMSG
1792
+ }>
1793
+ sendNonTerminalAction PROCINLINE:<{
1794
+ 1 PUSHINT
1795
+ s0 s5 XCHG
1796
+ NEWC
1797
+ 6 STU
1798
+ s0 s3 XCHG
1799
+ hashpartToBasechainAddressStd INLINECALLDICT
1800
+ s1 s3 XCHG
1801
+ STSLICER
1802
+ s0 s3 XCHG2
1803
+ STGRAMS
1804
+ s1 s3 XCHG
1805
+ 107 STU
1806
+ STREF
1807
+ ENDC
1808
+ SWAP
1809
+ SENDRAWMSG
1810
+ }>
1811
+ buildLayerzeroMessageBody PROCINLINE:<{
1812
+ SWAP
1813
+ txnContext GETGLOB 4 INDEX SWAP NEWC 32 STU 64 STU
1814
+ ROT
1815
+ STGRAMS
1816
+ getOriginStd INLINECALLDICT
1817
+ STSLICER
1818
+ STREF
1819
+ ENDC
1820
+ }>
1821
+ _getEventSink PROCINLINE:<{
1822
+ getContractAddress INLINECALLDICT
1823
+ }>
1824
+ action::event::New PROCINLINE:<{
1825
+ 435778055796 PUSHINT
1826
+ 8 PUSHINT
1827
+ s0 s4 XCHG2
1828
+ PAIR
1829
+ 9 PUSHINT
1830
+ s0 s3 XCHG2
1831
+ PAIR
1832
+ 9 PUSHINT
1833
+ ROT
1834
+ PAIR
1835
+ TRIPLE
1836
+ cl::declare INLINECALLDICT
1837
+ 435778055796 PUSHINT
1838
+ SWAP
1839
+ PAIR
1840
+ }>
1841
+ action::event::equals PROC:<{
1842
+ OVER
1843
+ 1 INDEX
1844
+ OVER
1845
+ 1 INDEX
1846
+ compareObjectFields INLINECALLDICT
1847
+ s0 s2 XCHG
1848
+ 0 INDEX
1849
+ SWAP
1850
+ 0 INDEX
1851
+ EQUAL
1852
+ SWAP
1853
+ -1 EQINT
1854
+ AND
1855
+ }>
1856
+ _newAction<event> PROCINLINE:<{
1857
+ cl::nullObject INLINECALLDICT
1858
+ action::event::New INLINECALLDICT
1859
+ }>
1860
+ ~pushAction<event> PROCINLINE:<{
1861
+ _newAction<event> INLINECALLDICT
1862
+ TPUSH
1863
+ }>
1864
+ executeEvent PROCINLINE:<{
1865
+ 16 PUSHINT
1866
+ 0 PUSHINT
1867
+ _getEventSink INLINECALLDICT
1868
+ OVER
1869
+ 3812333683 PUSHINT
1870
+ s0 s5 XCHG
1871
+ 1 INDEX
1872
+ s1 s5 s0 XCHG3
1873
+ buildLayerzeroMessageBody INLINECALLDICT
1874
+ s1 s3 s0 XCHG3
1875
+ 1 PUSHINT
1876
+ sendNonTerminalAction INLINECALLDICT
1877
+ TRUE
1878
+ }>
1879
+ action::payment::New PROCINLINE:<{
1880
+ 31632371545894516 PUSHINT
1881
+ 3 -ROLL
1882
+ 4 TUPLE
1883
+ }>
1884
+ action::payment::equals PROC:<{
1885
+ OVER
1886
+ 0 INDEX
1887
+ OVER
1888
+ 0 INDEX
1889
+ EQUAL
1890
+ s2 PUSH
1891
+ 1 INDEX
1892
+ s2 PUSH
1893
+ 1 INDEX
1894
+ EQUAL
1895
+ AND
1896
+ s2 PUSH
1897
+ 2 INDEX
1898
+ s2 PUSH
1899
+ 2 INDEX
1900
+ EQUAL
1901
+ AND
1902
+ s0 s2 XCHG
1903
+ 3 INDEX
1904
+ SWAP
1905
+ 3 INDEX
1906
+ EQUAL
1907
+ AND
1908
+ }>
1909
+ _newAction<payment> PROCINLINE:<{
1910
+ action::payment::New INLINECALLDICT
1911
+ }>
1912
+ ~pushAction<payment> PROCINLINE:<{
1913
+ DUP
1914
+ 0 GTINT
1915
+ IF:<{
1916
+ s3 PUSH
1917
+ 0 INDEX
1918
+ OVER
1919
+ ADD
1920
+ s1 s4 XCHG
1921
+ 0 PUSHINT
1922
+ SETINDEXVAR
1923
+ s0 s3 XCHG
1924
+ }>
1925
+ _newAction<payment> INLINECALLDICT
1926
+ TPUSH
1927
+ }>
1928
+ executePayment PROCINLINE:<{
1929
+ 16 PUSHINT
1930
+ 1 PUSHINT
1931
+ 0 PUSHINT
1932
+ DUP
1933
+ GETFORWARDFEE
1934
+ s2 PUSH
1935
+ 2 INDEX
1936
+ ADD
1937
+ s0 s2 XCHG
1938
+ 1 INDEX
1939
+ <b b> PUSHREF
1940
+ s2 s3 XCHG
1941
+ 0 PUSHINT
1942
+ sendNonTerminalAction INLINECALLDICT
1943
+ TRUE
1944
+ }>
1945
+ action::call::New PROCINLINE:<{
1946
+ 459904164859953153141868 PUSHINT
1947
+ 3 -ROLL
1948
+ 4 TUPLE
1949
+ }>
1950
+ action::call::equals PROC:<{
1951
+ OVER
1952
+ 3 INDEX
1953
+ OVER
1954
+ 3 INDEX
1955
+ compareObjectFields INLINECALLDICT
1956
+ s2 PUSH
1957
+ 0 INDEX
1958
+ s2 PUSH
1959
+ 0 INDEX
1960
+ EQUAL
1961
+ s3 PUSH
1962
+ 1 INDEX
1963
+ s3 PUSH
1964
+ 1 INDEX
1965
+ EQUAL
1966
+ AND
1967
+ s0 s3 XCHG
1968
+ 2 INDEX
1969
+ s0 s2 XCHG
1970
+ 2 INDEX
1971
+ s1 s2 XCHG
1972
+ EQUAL
1973
+ s1 s2 XCHG
1974
+ AND
1975
+ SWAP
1976
+ -1 EQINT
1977
+ AND
1978
+ }>
1979
+ _newAction<call> PROCINLINE:<{
1980
+ action::call::New INLINECALLDICT
1981
+ }>
1982
+ ~pushAction<call> PROCINLINE:<{
1983
+ _newAction<call> INLINECALLDICT
1984
+ TPUSH
1985
+ }>
1986
+ executeCall PROCINLINE:<{
1987
+ DUP
1988
+ 1 INDEX
1989
+ 0 PUSHINT
1990
+ s2 PUSH
1991
+ 2 INDEX
1992
+ s0 s3 XCHG
1993
+ 3 INDEX
1994
+ s1 s3 s0 XCHG3
1995
+ buildLayerzeroMessageBody INLINECALLDICT
1996
+ PUSHNULL
1997
+ 0 PUSHINT
1998
+ sendTerminalAction INLINECALLDICT
1999
+ FALSE
2000
+ }>
2001
+ md::MdDict::New PROCINLINE:<{
2002
+ 85093039825780 PUSHINT
2003
+ 9 PUSHINT
2004
+ ROT
2005
+ PAIR
2006
+ SINGLE
2007
+ cl::declare INLINECALLDICT
2008
+ }>
2009
+ md::CallContract::New PROC:<{
2010
+ 1427624030939840144244 PUSHINT
2011
+ 9 PUSHINT
2012
+ s0 s4 XCHG2
2013
+ PAIR
2014
+ 8 PUSHINT
2015
+ s0 s3 XCHG2
2016
+ PAIR
2017
+ 5 PUSHINT
2018
+ ROT
2019
+ PAIR
2020
+ TRIPLE
2021
+ cl::declare INLINECALLDICT
2022
+ }>
2023
+ assertInitialized PROCINLINE:<{
2024
+ getCoreStorage INLINECALLDICT
2025
+ 3 PUSHINT
2026
+ cl::get<bool> INLINECALLDICT
2027
+ 753 THROWIFNOT
2028
+ }>
2029
+ checkPermissions PROCINLINE:<{
2030
+ OVER
2031
+ 3812333683 PUSHINT
2032
+ EQUAL
2033
+ IF:<{
2034
+ 2DROP
2035
+ }>ELSE<{
2036
+ OVER
2037
+ 4133284232 PUSHINT
2038
+ EQUAL
2039
+ IF:<{
2040
+ 2DROP
2041
+ assertOwner INLINECALLDICT
2042
+ }>ELSE<{
2043
+ _checkPermissions INLINECALLDICT
2044
+ }>
2045
+ }>
2046
+ }>
2047
+ initialize PROCINLINE:<{
2048
+ assertAuthenticated INLINECALLDICT
2049
+ getCoreStorage INLINECALLDICT
2050
+ 3 PUSHINT
2051
+ cl::get<bool> INLINECALLDICT
2052
+ IF:<{
2053
+ DROP
2054
+ emptyActions INLINECALLDICT
2055
+ }>ELSE<{
2056
+ DUP
2057
+ 0 PUSHINT
2058
+ cl::get<objRef> INLINECALLDICT
2059
+ SWAP
2060
+ 1 PUSHINT
2061
+ cl::get<objRef> INLINECALLDICT
2062
+ _initialize INLINECALLDICT
2063
+ getCoreStorage INLINECALLDICT
2064
+ 3 PUSHINT
2065
+ TRUE
2066
+ cl::set INLINECALLDICT
2067
+ 4 PUSHINT
2068
+ ROT
2069
+ s0 s4 XCHG
2070
+ cl::set INLINECALLDICT
2071
+ setCoreStorage INLINECALLDICT
2072
+ setContractStorage INLINECALLDICT
2073
+ }>
2074
+ }>
2075
+ authenticateIfNecessary PROCINLINE:<{
2076
+ getCoreStorage INLINECALLDICT
2077
+ 2 PUSHINT
2078
+ cl::get<bool> INLINECALLDICT
2079
+ IFNOT:<{
2080
+ authenticate CALLDICT
2081
+ }>
2082
+ }>
2083
+ assertOwner PROCINLINE:<{
2084
+ getCoreStorage INLINECALLDICT
2085
+ 0 PUSHINT
2086
+ cl::get<address> INLINECALLDICT
2087
+ getCaller INLINECALLDICT
2088
+ EQUAL
2089
+ 438 THROWIFNOT
2090
+ }>
2091
+ _checkPermissions PROCINLINE:<{
2092
+ DROP
2093
+ DUP
2094
+ 1097876869 PUSHINT
2095
+ EQUAL
2096
+ SWAP
2097
+ 333322037 PUSHINT
2098
+ EQUAL
2099
+ OR
2100
+ IF:<{
2101
+ assertAdmin INLINECALLDICT
2102
+ }>ELSE<{
2103
+ 2014 THROW
2104
+ }>
2105
+ }>
2106
+ preamble PROCINLINE:<{
2107
+ getContractStorage INLINECALLDICT
2108
+ emptyActions INLINECALLDICT
2109
+ }>
2110
+ md::MdObj::New PROCINLINE:<{
2111
+ 332395405930 PUSHINT
2112
+ 9 PUSHINT
2113
+ s0 s3 XCHG2
2114
+ PAIR
2115
+ 9 PUSHINT
2116
+ ROT
2117
+ PAIR
2118
+ PAIR
2119
+ cl::declare INLINECALLDICT
2120
+ }>
2121
+ WorkerCoreStorage::New PROCINLINE:<{
2122
+ 564072269429812984311666 PUSHINT
2123
+ 8 PUSHINT
2124
+ s0 s3 XCHG2
2125
+ PAIR
2126
+ 8 PUSHINT
2127
+ 0 PUSHINT
2128
+ PAIR
2129
+ 0 PUSHINT
2130
+ FALSE
2131
+ PAIR
2132
+ 0 PUSHINT
2133
+ FALSE
2134
+ PAIR
2135
+ 9 PUSHINT
2136
+ cl::dict256::New INLINECALLDICT
2137
+ PAIR
2138
+ 8 PUSHINT
2139
+ s0 s6 XCHG2
2140
+ PAIR
2141
+ s4 s5 XCHG
2142
+ s3 s4 XCHG
2143
+ s1 s3 s0 XCHG3
2144
+ 6 TUPLE
2145
+ cl::declare INLINECALLDICT
2146
+ }>
2147
+ getCoreStorage PROCINLINE:<{
2148
+ getContractStorage INLINECALLDICT
2149
+ 0 PUSHINT
2150
+ cl::get<objRef> INLINECALLDICT
2151
+ }>
2152
+ setCoreStorage PROCINLINE:<{
2153
+ 0 PUSHINT
2154
+ SWAP
2155
+ cl::set INLINECALLDICT
2156
+ }>
2157
+ getOwner PROCINLINE:<{
2158
+ getCoreStorage INLINECALLDICT
2159
+ 0 PUSHINT
2160
+ cl::get<address> INLINECALLDICT
2161
+ }>
2162
+ getInitialStorage PROCINLINE:<{
2163
+ <b b> PUSHREF
2164
+ }>
2165
+ assertAuthenticated PROCINLINE:<{
2166
+ getCoreStorage INLINECALLDICT
2167
+ 2 PUSHINT
2168
+ cl::get<bool> INLINECALLDICT
2169
+ 1410 THROWIFNOT
2170
+ }>
2171
+ assertAdmin PROCINLINE:<{
2172
+ getCoreStorage INLINECALLDICT
2173
+ 4 PUSHINT
2174
+ getCaller INLINECALLDICT
2175
+ cl::nestedDict256::get<cellRef> INLINECALLDICT
2176
+ NIP
2177
+ 700 THROWIFNOT
2178
+ }>
2179
+ authenticate PROC:<{
2180
+ assertOwner INLINECALLDICT
2181
+ getContractStorage INLINECALLDICT
2182
+ getCoreStorage INLINECALLDICT
2183
+ 2 PUSHINT
2184
+ TRUE
2185
+ cl::set INLINECALLDICT
2186
+ setCoreStorage INLINECALLDICT
2187
+ setContractStorage INLINECALLDICT
2188
+ }>
2189
+ _initialize PROCINLINE:<{
2190
+ DROP
2191
+ getContractStorage INLINECALLDICT
2192
+ emptyActions INLINECALLDICT
2193
+ }>
2194
+ verifyEventOrigin PROC:<{
2195
+ getContractAddress INLINECALLDICT
2196
+ EQUAL
2197
+ }>
2198
+ claimTon PROC:<{
2199
+ emptyActions INLINECALLDICT
2200
+ getCaller INLINECALLDICT
2201
+ s2 PUSH
2202
+ 0 PUSHINT
2203
+ cl::get<coins> INLINECALLDICT
2204
+ s0 s3 XCHG
2205
+ 0 PUSHINT
2206
+ cl::get<coins> INLINECALLDICT
2207
+ s1 s3 s0 XCHG3
2208
+ ~pushAction<payment> INLINECALLDICT
2209
+ }>
2210
+ transferOwnership PROC:<{
2211
+ preamble INLINECALLDICT
2212
+ getCoreStorage INLINECALLDICT
2213
+ 1 PUSHINT
2214
+ s0 s4 XCHG
2215
+ 0 PUSHINT
2216
+ cl::get<address> INLINECALLDICT
2217
+ s1 s4 s0 XCHG3
2218
+ cl::set INLINECALLDICT
2219
+ setCoreStorage INLINECALLDICT
2220
+ setContractStorage INLINECALLDICT
2221
+ }>
2222
+ claimOwnership PROC:<{
2223
+ DROP
2224
+ preamble INLINECALLDICT
2225
+ getCoreStorage INLINECALLDICT
2226
+ 1 PUSHINT
2227
+ 0 PUSHINT
2228
+ cl::set INLINECALLDICT
2229
+ 0 PUSHINT
2230
+ getCaller INLINECALLDICT
2231
+ cl::set INLINECALLDICT
2232
+ s1 s2 XCHG
2233
+ setCoreStorage INLINECALLDICT
2234
+ setContractStorage INLINECALLDICT
2235
+ }>
2236
+ callContract PROC:<{
2237
+ emptyActions INLINECALLDICT
2238
+ OVER
2239
+ 1 PUSHINT
2240
+ cl::get<address> INLINECALLDICT
2241
+ s2 PUSH
2242
+ 2 PUSHINT
2243
+ cl::get<uint32> INLINECALLDICT
2244
+ s0 s3 XCHG
2245
+ 0 PUSHINT
2246
+ cl::get<objRef> INLINECALLDICT
2247
+ s1 s3 s0 XCHG3
2248
+ ~pushAction<call> INLINECALLDICT
2249
+ }>
2250
+ setAdminsByAdmin PROC:<{
2251
+ preamble INLINECALLDICT
2252
+ 2357252093876358906106551247238670241473378062308617984754153002583380 PUSHINT
2253
+ s3 PUSH
2254
+ ~pushAction<event> INLINECALLDICT
2255
+ getCoreStorage INLINECALLDICT
2256
+ 4 PUSHINT
2257
+ s0 s4 XCHG
2258
+ 0 PUSHINT
2259
+ cl::get<dict256> INLINECALLDICT
2260
+ s1 s4 s0 XCHG3
2261
+ cl::set INLINECALLDICT
2262
+ setCoreStorage INLINECALLDICT
2263
+ setContractStorage INLINECALLDICT
2264
+ }>
2265
+ md::MdAddress::New PROCINLINE:<{
2266
+ 85092989166706 PUSHINT
2267
+ 9 PUSHINT
2268
+ s0 s3 XCHG2
2269
+ PAIR
2270
+ 8 PUSHINT
2271
+ ROT
2272
+ PAIR
2273
+ PAIR
2274
+ cl::declare INLINECALLDICT
2275
+ }>
2276
+ md::Nonce::New PROCINLINE:<{
2277
+ 474315907941 PUSHINT
2278
+ 6 PUSHINT
2279
+ ROT
2280
+ PAIR
2281
+ SINGLE
2282
+ cl::declare INLINECALLDICT
2283
+ }>
2284
+ md::UlnCommitPacket::New PROCINLINE:<{
2285
+ 18979015723412851 PUSHINT
2286
+ 9 PUSHINT
2287
+ s0 s4 XCHG2
2288
+ PAIR
2289
+ 8 PUSHINT
2290
+ s0 s3 XCHG2
2291
+ PAIR
2292
+ 8 PUSHINT
2293
+ ROT
2294
+ PAIR
2295
+ TRIPLE
2296
+ cl::declare INLINECALLDICT
2297
+ }>
2298
+ md::NativeDrop::New PROCINLINE:<{
2299
+ 5639758459968972141 PUSHINT
2300
+ 8 PUSHINT
2301
+ s0 s3 XCHG2
2302
+ PAIR
2303
+ 7 PUSHINT
2304
+ ROT
2305
+ PAIR
2306
+ PAIR
2307
+ cl::declare INLINECALLDICT
2308
+ }>
2309
+ Executor::New PROC:<{
2310
+ 7311705472882732914 PUSHINT
2311
+ s0 s3 XCHG
2312
+ 9 PUSHINT
2313
+ s0 s3 XCHG
2314
+ WorkerCoreStorage::New INLINECALLDICT
2315
+ s1 s2 XCHG
2316
+ PAIR
2317
+ 7 PUSHINT
2318
+ ROT
2319
+ PAIR
2320
+ PAIR
2321
+ cl::declare INLINECALLDICT
2322
+ }>
2323
+ executorCommitPacket PROCINLINE:<{
2324
+ emptyActions INLINECALLDICT
2325
+ OVER
2326
+ 0 PUSHINT
2327
+ cl::get<objRef> INLINECALLDICT
2328
+ s2 PUSH
2329
+ 1 PUSHINT
2330
+ cl::get<address> INLINECALLDICT
2331
+ s0 s3 XCHG
2332
+ 2 PUSHINT
2333
+ cl::get<address> INLINECALLDICT
2334
+ SWAP
2335
+ 1578602291 PUSHINT
2336
+ s0 s4 XCHG
2337
+ md::MdAddress::New INLINECALLDICT
2338
+ s1 s3 s0 XCHG3
2339
+ ~pushAction<call> INLINECALLDICT
2340
+ }>
2341
+ _executorLzReceivePrepare PROCINLINE:<{
2342
+ DUP
2343
+ 1 PUSHINT
2344
+ cl::get<address> INLINECALLDICT
2345
+ 586394633 PUSHINT
2346
+ s0 s2 XCHG
2347
+ 0 PUSHINT
2348
+ cl::get<objRef> INLINECALLDICT
2349
+ s1 s2 XCHG
2350
+ ~pushAction<call> INLINECALLDICT
2351
+ }>
2352
+ executorLzReceivePrepare PROCINLINE:<{
2353
+ emptyActions INLINECALLDICT
2354
+ SWAP
2355
+ _executorLzReceivePrepare INLINECALLDICT
2356
+ }>
2357
+ _executorNativeDrop PROCINLINE:<{
2358
+ getContractStorage INLINECALLDICT
2359
+ 0 PUSHINT
2360
+ s2 s2 XCPU
2361
+ cl::get<dict256> INLINECALLDICT
2362
+ -1 PUSHINT
2363
+ UNTIL:<{
2364
+ s1 s(-1) PUXC
2365
+ cl::dict256::getNext<cellRef> CALLDICT
2366
+ OVER
2367
+ -1 NEQINT
2368
+ IF:<{
2369
+ DUP
2370
+ 0 PUSHINT
2371
+ cl::get<address> INLINECALLDICT
2372
+ SWAP
2373
+ 1 PUSHINT
2374
+ cl::get<coins> INLINECALLDICT
2375
+ s5 s5 XCPU
2376
+ ADD
2377
+ s6 s1 s5 XCHG3
2378
+ 0 PUSHINT
2379
+ ~pushAction<payment> INLINECALLDICT
2380
+ s0 s4 XCHG
2381
+ }>ELSE<{
2382
+ DROP
2383
+ }>
2384
+ DUP
2385
+ -1 EQINT
2386
+ }>
2387
+ 2DROP
2388
+ 1 PUSHINT
2389
+ cl::get<coins> INLINECALLDICT
2390
+ GREATER
2391
+ 210 THROWIF
2392
+ }>
2393
+ executorNativeDrop PROCINLINE:<{
2394
+ emptyActions INLINECALLDICT
2395
+ SWAP
2396
+ _executorNativeDrop INLINECALLDICT
2397
+ }>
2398
+ executorNativeDropAndLzReceivePrepare PROCINLINE:<{
2399
+ emptyActions INLINECALLDICT
2400
+ OVER
2401
+ 1 PUSHINT
2402
+ cl::get<objRef> INLINECALLDICT
2403
+ _executorNativeDrop INLINECALLDICT
2404
+ SWAP
2405
+ 0 PUSHINT
2406
+ cl::get<objRef> INLINECALLDICT
2407
+ _executorLzReceivePrepare INLINECALLDICT
2408
+ }>
2409
+ executorLzReceiveAlert PROCINLINE:<{
2410
+ emptyActions INLINECALLDICT
2411
+ 1872915503847835639517843655130358044835956776372090239617289700069972 PUSHINT
2412
+ ROT
2413
+ ~pushAction<event> INLINECALLDICT
2414
+ }>
2415
+ action::deploy::New PROCINLINE:<{
2416
+ 110386840629113 PUSHINT
2417
+ 6 -ROLL
2418
+ 7 TUPLE
2419
+ }>
2420
+ action::deploy::equals PROC:<{
2421
+ OVER
2422
+ 2 INDEX
2423
+ OVER
2424
+ 2 INDEX
2425
+ compareObjectFields INLINECALLDICT
2426
+ s2 PUSH
2427
+ 5 INDEX
2428
+ s2 PUSH
2429
+ 5 INDEX
2430
+ compareObjectFields INLINECALLDICT
2431
+ s3 PUSH
2432
+ 0 INDEX
2433
+ s3 PUSH
2434
+ 0 INDEX
2435
+ EQUAL
2436
+ s4 PUSH
2437
+ 1 INDEX
2438
+ HASHCU
2439
+ s4 PUSH
2440
+ 1 INDEX
2441
+ HASHCU
2442
+ EQUAL
2443
+ AND
2444
+ s0 s2 XCHG
2445
+ -1 EQINT
2446
+ s1 s2 XCHG
2447
+ AND
2448
+ s3 PUSH
2449
+ 3 INDEX
2450
+ s3 PUSH
2451
+ 3 INDEX
2452
+ EQUAL
2453
+ AND
2454
+ s3 PUSH
2455
+ 4 INDEX
2456
+ s3 PUSH
2457
+ 4 INDEX
2458
+ EQUAL
2459
+ AND
2460
+ SWAP
2461
+ -1 EQINT
2462
+ AND
2463
+ s0 s2 XCHG
2464
+ 6 INDEX
2465
+ SWAP
2466
+ 6 INDEX
2467
+ EQUAL
2468
+ AND
2469
+ }>
2470
+ _newAction<deployAndCall> PROCINLINE:<{
2471
+ action::deploy::New INLINECALLDICT
2472
+ }>
2473
+ ~pushAction<deployAndCall> PROCINLINE:<{
2474
+ _newAction<deployAndCall> INLINECALLDICT
2475
+ TPUSH
2476
+ }>
2477
+ executeDeploy PROCINLINE:<{
2478
+ DUP
2479
+ 2 INDEX
2480
+ OVER
2481
+ 1 INDEX
2482
+ 2DUP
2483
+ computeContractAddress INLINECALLDICT
2484
+ s3 PUSH
2485
+ 3 INDEX
2486
+ s4 PUSH
2487
+ 4 INDEX
2488
+ s0 s5 XCHG
2489
+ 5 INDEX
2490
+ s1 s5 s0 XCHG3
2491
+ buildLayerzeroMessageBody INLINECALLDICT
2492
+ 6 PUSHINT
2493
+ NEWC
2494
+ 5 STU
2495
+ s1 s2 XCHG
2496
+ STREF
2497
+ s1 s2 XCHG
2498
+ STREF
2499
+ ENDC
2500
+ 0 PUSHINT
2501
+ sendTerminalAction INLINECALLDICT
2502
+ FALSE
2503
+ }>
2504
+ _executeOpcode PROCINLINE:<{
2505
+ CONT:<{
2506
+ c2 SAVE
2507
+ SAMEALTSAVE
2508
+ OVER
2509
+ 561383380 PUSHINT
2510
+ EQUAL
2511
+ IF:<{
2512
+ NIP
2513
+ claimTon CALLDICT
2514
+ }>ELSE<{
2515
+ OVER
2516
+ 4207273743 PUSHINT
2517
+ EQUAL
2518
+ IFJMP:<{
2519
+ NIP
2520
+ transferOwnership CALLDICT
2521
+ RETALT
2522
+ }>
2523
+ OVER
2524
+ 4207273743 PUSHINT
2525
+ EQUAL
2526
+ IFJMP:<{
2527
+ NIP
2528
+ claimOwnership CALLDICT
2529
+ RETALT
2530
+ }>
2531
+ OVER
2532
+ 2178604288 PUSHINT
2533
+ EQUAL
2534
+ IFJMP:<{
2535
+ NIP
2536
+ callContract CALLDICT
2537
+ RETALT
2538
+ }>
2539
+ OVER
2540
+ 3114368649 PUSHINT
2541
+ EQUAL
2542
+ IFJMP:<{
2543
+ NIP
2544
+ setAdminsByAdmin CALLDICT
2545
+ RETALT
2546
+ }>
2547
+ __executeOpcode INLINECALLDICT
2548
+ }>
2549
+ }>
2550
+ EXECUTE
2551
+ }>
2552
+ _executeAction PROCINLINE:<{
2553
+ CONT:<{
2554
+ c2 SAVE
2555
+ SAMEALTSAVE
2556
+ OVER
2557
+ 435778055796 PUSHINT
2558
+ EQUAL
2559
+ IF:<{
2560
+ NIP
2561
+ executeEvent INLINECALLDICT
2562
+ }>ELSE<{
2563
+ OVER
2564
+ 459904164859953153141868 PUSHINT
2565
+ EQUAL
2566
+ IFJMP:<{
2567
+ NIP
2568
+ executeCall INLINECALLDICT
2569
+ RETALT
2570
+ }>
2571
+ OVER
2572
+ 31632371545894516 PUSHINT
2573
+ EQUAL
2574
+ IFJMP:<{
2575
+ NIP
2576
+ executePayment INLINECALLDICT
2577
+ RETALT
2578
+ }>
2579
+ SWAP
2580
+ 110386840629113 PUSHINT
2581
+ EQUAL
2582
+ IFJMP:<{
2583
+ executeDeploy INLINECALLDICT
2584
+ RETALT
2585
+ }>
2586
+ DROP
2587
+ 1693 THROW
2588
+ FALSE
2589
+ }>
2590
+ }>
2591
+ EXECUTE
2592
+ }>
2593
+ main PROCINLINE:<{
2594
+ 3 -ROLL
2595
+ s3 PUSH
2596
+ initTxnContext INLINECALLDICT
2597
+ txnIsBounced INLINECALLDICT
2598
+ IF:<{
2599
+ DROP
2600
+ }>ELSE<{
2601
+ authenticateIfNecessary INLINECALLDICT
2602
+ SEMPTY
2603
+ IFJMP:<{
2604
+ }>
2605
+ getOpcode INLINECALLDICT
2606
+ getMsgData INLINECALLDICT
2607
+ 2DUP
2608
+ checkPermissions INLINECALLDICT
2609
+ OVER
2610
+ 3812333683 PUSHINT
2611
+ EQUAL
2612
+ IF:<{
2613
+ 488 THROW
2614
+ }>
2615
+ OVER
2616
+ 4133284232 PUSHINT
2617
+ EQUAL
2618
+ IF:<{
2619
+ NIP
2620
+ initialize INLINECALLDICT
2621
+ }>ELSE<{
2622
+ assertInitialized INLINECALLDICT
2623
+ _executeOpcode INLINECALLDICT
2624
+ }>
2625
+ DUP
2626
+ 0 INDEX
2627
+ getContractBalance INLINECALLDICT
2628
+ STORAGEFEES
2629
+ SUB
2630
+ getMsgValue INLINECALLDICT
2631
+ getDonationNanos INLINECALLDICT
2632
+ SUB
2633
+ SUB
2634
+ s0 s1 PUSH2
2635
+ GEQ
2636
+ 37 THROWIFNOT
2637
+ SWAP
2638
+ SUB
2639
+ 0 PUSHINT
2640
+ RAWRESERVE
2641
+ TRUE
2642
+ 1 PUSHINT
2643
+ s2 PUSH
2644
+ TLEN
2645
+ WHILE:<{
2646
+ 2DUP
2647
+ LESS
2648
+ }>DO<{
2649
+ s3 s1 PUSH2
2650
+ INDEXVAR
2651
+ DUP
2652
+ 0 INDEX
2653
+ s0 s3 XCHG
2654
+ INC
2655
+ s3 s3 XCHG2
2656
+ _executeAction INLINECALLDICT
2657
+ s1 s3 XCHG
2658
+ AND
2659
+ s0 s2 XCHG
2660
+ }>
2661
+ s2 s3 XCHG
2662
+ 3 BLKDROP
2663
+ IF:<{
2664
+ <b b> PUSHREF
2665
+ 1 PUSHINT
2666
+ 16 PUSHINT
2667
+ NEWC
2668
+ 6 STU
2669
+ getOriginStd INLINECALLDICT
2670
+ STSLICER
2671
+ 0 PUSHINT
2672
+ STGRAMS
2673
+ 107 STU
2674
+ STREF
2675
+ ENDC
2676
+ 7 PUSHPOW2
2677
+ SENDRAWMSG
2678
+ }>
2679
+ }>
2680
+ }>
2681
+ __executeOpcode PROCINLINE:<{
2682
+ CONT:<{
2683
+ c2 SAVE
2684
+ SAMEALTSAVE
2685
+ OVER
2686
+ 1097876869 PUSHINT
2687
+ EQUAL
2688
+ IF:<{
2689
+ NIP
2690
+ executorCommitPacket INLINECALLDICT
2691
+ }>ELSE<{
2692
+ OVER
2693
+ 333322037 PUSHINT
2694
+ EQUAL
2695
+ IFJMP:<{
2696
+ NIP
2697
+ executorLzReceivePrepare INLINECALLDICT
2698
+ RETALT
2699
+ }>
2700
+ OVER
2701
+ 74966741 PUSHINT
2702
+ EQUAL
2703
+ IFJMP:<{
2704
+ NIP
2705
+ executorNativeDrop INLINECALLDICT
2706
+ RETALT
2707
+ }>
2708
+ OVER
2709
+ 1812316278 PUSHINT
2710
+ EQUAL
2711
+ IFJMP:<{
2712
+ NIP
2713
+ executorNativeDropAndLzReceivePrepare INLINECALLDICT
2714
+ RETALT
2715
+ }>
2716
+ SWAP
2717
+ 3844476787 PUSHINT
2718
+ EQUAL
2719
+ IFJMP:<{
2720
+ executorLzReceiveAlert INLINECALLDICT
2721
+ RETALT
2722
+ }>
2723
+ DROP
2724
+ 1199 THROW
2725
+ emptyActions INLINECALLDICT
2726
+ }>
2727
+ }>
2728
+ EXECUTE
2729
+ }>
2730
+ }END>c
2731
+ 2 boc+>B "build/Executor.boc" B>file