@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.
- package/CHANGELOG.md +67 -0
- package/README.md +15 -0
- package/build/AllStorages.boc +0 -0
- package/build/AllStorages.compiled.json +1 -0
- package/build/AllStorages.fif +4164 -0
- package/build/AllStorages.test.boc +0 -0
- package/build/AllStorages.test.compiled.json +1 -0
- package/build/AllStorages.test.fif +1831 -0
- package/build/BaseContract.test.boc +0 -0
- package/build/BaseContract.test.compiled.json +1 -0
- package/build/BaseContract.test.fif +3553 -0
- package/build/Channel.boc +0 -0
- package/build/Channel.compiled.json +1 -0
- package/build/Channel.fif +5001 -0
- package/build/Channel.permissions.test.boc +0 -0
- package/build/Channel.permissions.test.compiled.json +1 -0
- package/build/Channel.permissions.test.fif +7569 -0
- package/build/ChannelBurn.test.boc +0 -0
- package/build/ChannelBurn.test.compiled.json +1 -0
- package/build/ChannelBurn.test.fif +7454 -0
- package/build/ChannelCommitPacket.test.boc +0 -0
- package/build/ChannelCommitPacket.test.compiled.json +1 -0
- package/build/ChannelCommitPacket.test.fif +7981 -0
- package/build/ChannelConfig.test.boc +0 -0
- package/build/ChannelConfig.test.compiled.json +1 -0
- package/build/ChannelConfig.test.fif +7442 -0
- package/build/ChannelInitialize.test.boc +0 -0
- package/build/ChannelInitialize.test.compiled.json +1 -0
- package/build/ChannelInitialize.test.fif +7289 -0
- package/build/ChannelMsglibIntegration.test.boc +0 -0
- package/build/ChannelMsglibIntegration.test.compiled.json +1 -0
- package/build/ChannelMsglibIntegration.test.fif +7404 -0
- package/build/ChannelMsglibSendCallback.test.boc +0 -0
- package/build/ChannelMsglibSendCallback.test.compiled.json +1 -0
- package/build/ChannelMsglibSendCallback.test.fif +7711 -0
- package/build/ChannelNilify.test.boc +0 -0
- package/build/ChannelNilify.test.compiled.json +1 -0
- package/build/ChannelNilify.test.fif +7672 -0
- package/build/ChannelReceive.test.boc +0 -0
- package/build/ChannelReceive.test.compiled.json +1 -0
- package/build/ChannelReceive.test.fif +7702 -0
- package/build/ChannelReceiveCallback.test.boc +0 -0
- package/build/ChannelReceiveCallback.test.compiled.json +1 -0
- package/build/ChannelReceiveCallback.test.fif +7549 -0
- package/build/ChannelReceiveView.test.boc +0 -0
- package/build/ChannelReceiveView.test.compiled.json +1 -0
- package/build/ChannelReceiveView.test.fif +7352 -0
- package/build/ChannelSend.test.boc +0 -0
- package/build/ChannelSend.test.compiled.json +1 -0
- package/build/ChannelSend.test.fif +7658 -0
- package/build/Classlib.test.boc +0 -0
- package/build/Classlib.test.compiled.json +1 -0
- package/build/Classlib.test.fif +4728 -0
- package/build/Connection.boc +0 -0
- package/build/Connection.compiled.json +1 -0
- package/build/Connection.fif +3503 -0
- package/build/Connection.test.boc +0 -0
- package/build/Connection.test.compiled.json +1 -0
- package/build/Connection.test.fif +6575 -0
- package/build/Controller.assertions.test.boc +0 -0
- package/build/Controller.assertions.test.compiled.json +1 -0
- package/build/Controller.assertions.test.fif +6130 -0
- package/build/Controller.boc +0 -0
- package/build/Controller.compiled.json +1 -0
- package/build/Controller.fif +3195 -0
- package/build/Controller.permissions.test.boc +0 -0
- package/build/Controller.permissions.test.compiled.json +1 -0
- package/build/Controller.permissions.test.fif +6237 -0
- package/build/Controller.test.boc +0 -0
- package/build/Controller.test.compiled.json +1 -0
- package/build/Controller.test.fif +6400 -0
- package/build/Counter.boc +0 -0
- package/build/Counter.compiled.json +1 -0
- package/build/Counter.fif +4809 -0
- package/build/Counter.permissions.test.boc +0 -0
- package/build/Counter.permissions.test.compiled.json +1 -0
- package/build/Counter.permissions.test.fif +7106 -0
- package/build/Counter.setters.test.boc +0 -0
- package/build/Counter.setters.test.compiled.json +1 -0
- package/build/Counter.setters.test.fif +7083 -0
- package/build/Counter.test.boc +0 -0
- package/build/Counter.test.compiled.json +1 -0
- package/build/Counter.test.fif +7540 -0
- package/build/Dvn.boc +0 -0
- package/build/Dvn.compiled.json +1 -0
- package/build/Dvn.fif +2923 -0
- package/build/Dvn.test.boc +0 -0
- package/build/Dvn.test.compiled.json +1 -0
- package/build/Dvn.test.fif +5753 -0
- package/build/Endpoint.boc +0 -0
- package/build/Endpoint.compiled.json +1 -0
- package/build/Endpoint.fif +3694 -0
- package/build/Endpoint.permissions.test.boc +0 -0
- package/build/Endpoint.permissions.test.compiled.json +1 -0
- package/build/Endpoint.permissions.test.fif +6211 -0
- package/build/Endpoint.test.boc +0 -0
- package/build/Endpoint.test.compiled.json +1 -0
- package/build/Endpoint.test.fif +6899 -0
- package/build/EndpointSetEpConfigDefaults.test.boc +0 -0
- package/build/EndpointSetEpConfigDefaults.test.compiled.json +1 -0
- package/build/EndpointSetEpConfigDefaults.test.fif +6529 -0
- package/build/Executor.boc +0 -0
- package/build/Executor.compiled.json +1 -0
- package/build/Executor.fif +2731 -0
- package/build/Executor.test.boc +0 -0
- package/build/Executor.test.compiled.json +1 -0
- package/build/Executor.test.fif +5822 -0
- package/build/LzClasses.test.boc +0 -0
- package/build/LzClasses.test.compiled.json +1 -0
- package/build/LzClasses.test.fif +4457 -0
- package/build/LzUtil.test.boc +0 -0
- package/build/LzUtil.test.compiled.json +1 -0
- package/build/LzUtil.test.fif +1831 -0
- package/build/MsgData.test.boc +0 -0
- package/build/MsgData.test.compiled.json +1 -0
- package/build/MsgData.test.fif +4318 -0
- package/build/MsglibPacketCodec.test.boc +0 -0
- package/build/MsglibPacketCodec.test.compiled.json +1 -0
- package/build/MsglibPacketCodec.test.fif +4851 -0
- package/build/MultiSig.boc +0 -0
- package/build/MultiSig.compiled.json +1 -0
- package/build/MultiSig.fif +727 -0
- package/build/MultiSigOrder.boc +0 -0
- package/build/MultiSigOrder.compiled.json +1 -0
- package/build/MultiSigOrder.fif +650 -0
- package/build/PipelinedOutOfOrder.test.boc +0 -0
- package/build/PipelinedOutOfOrder.test.compiled.json +1 -0
- package/build/PipelinedOutOfOrder.test.fif +2188 -0
- package/build/SmlConnection.boc +0 -0
- package/build/SmlConnection.compiled.json +1 -0
- package/build/SmlConnection.fif +2517 -0
- package/build/SmlConnection.permissions.test.boc +0 -0
- package/build/SmlConnection.permissions.test.compiled.json +1 -0
- package/build/SmlConnection.permissions.test.fif +5497 -0
- package/build/SmlConnection.test.boc +0 -0
- package/build/SmlConnection.test.compiled.json +1 -0
- package/build/SmlConnection.test.fif +5494 -0
- package/build/SmlManager.boc +0 -0
- package/build/SmlManager.compiled.json +1 -0
- package/build/SmlManager.fif +3904 -0
- package/build/SmlManager.permissions.test.boc +0 -0
- package/build/SmlManager.permissions.test.compiled.json +1 -0
- package/build/SmlManager.permissions.test.fif +6018 -0
- package/build/SmlManager.test.boc +0 -0
- package/build/SmlManager.test.compiled.json +1 -0
- package/build/SmlManager.test.fif +6047 -0
- package/build/Uln.boc +0 -0
- package/build/Uln.compiled.json +1 -0
- package/build/Uln.fif +4841 -0
- package/build/Uln.test.boc +0 -0
- package/build/Uln.test.compiled.json +1 -0
- package/build/Uln.test.fif +7077 -0
- package/build/UlnManager.boc +0 -0
- package/build/UlnManager.compiled.json +1 -0
- package/build/UlnManager.fif +3851 -0
- package/build/UlnManager.test.boc +0 -0
- package/build/UlnManager.test.compiled.json +1 -0
- package/build/UlnManager.test.fif +6571 -0
- package/build/UlnReceiveConfig.test.boc +0 -0
- package/build/UlnReceiveConfig.test.compiled.json +1 -0
- package/build/UlnReceiveConfig.test.fif +4413 -0
- package/build/UlnSend.test.boc +0 -0
- package/build/UlnSend.test.compiled.json +1 -0
- package/build/UlnSend.test.fif +6576 -0
- package/build/UlnSendConfig.test.boc +0 -0
- package/build/UlnSendConfig.test.compiled.json +1 -0
- package/build/UlnSendConfig.test.fif +4431 -0
- package/build/UlnSendWorkerFactory.test.boc +0 -0
- package/build/UlnSendWorkerFactory.test.compiled.json +1 -0
- package/build/UlnSendWorkerFactory.test.fif +6683 -0
- package/build/UlnUtil.test.boc +0 -0
- package/build/UlnUtil.test.compiled.json +1 -0
- package/build/UlnUtil.test.fif +5873 -0
- package/build/WorkerCore.test.boc +0 -0
- package/build/WorkerCore.test.compiled.json +1 -0
- package/build/WorkerCore.test.fif +5630 -0
- package/build/ZroMinter.boc +0 -0
- package/build/ZroMinter.compiled.json +1 -0
- package/build/ZroMinter.fif +2300 -0
- package/build/ZroWallet.boc +0 -0
- package/build/ZroWallet.compiled.json +1 -0
- package/build/ZroWallet.fif +2471 -0
- package/package.json +64 -0
- package/src/classes/lz/Attestation.fc +23 -0
- package/src/classes/lz/Config.fc +23 -0
- package/src/classes/lz/EpConfig.fc +91 -0
- package/src/classes/lz/MsglibInfo.fc +31 -0
- package/src/classes/lz/Packet.fc +202 -0
- package/src/classes/lz/Path.fc +56 -0
- package/src/classes/lz/ReceiveEpConfig.fc +24 -0
- package/src/classes/lz/SendEpConfig.fc +18 -0
- package/src/classes/lz/SmlJobAssigned.fc +20 -0
- package/src/classes/lz/Worker.fc +32 -0
- package/src/classes/msgdata/AddMsglib.fc +18 -0
- package/src/classes/msgdata/Amount.fc +16 -0
- package/src/classes/msgdata/Bool.fc +16 -0
- package/src/classes/msgdata/ChannelNonceInfo.fc +18 -0
- package/src/classes/msgdata/ClaimUnaccountedPoolFunds.fc +0 -0
- package/src/classes/msgdata/CoinsAmount.fc +16 -0
- package/src/classes/msgdata/CounterIncrement.fc +24 -0
- package/src/classes/msgdata/Deploy.fc +20 -0
- package/src/classes/msgdata/ExtendedMd.fc +20 -0
- package/src/classes/msgdata/GetMsglibCallback.fc +18 -0
- package/src/classes/msgdata/InitEndpoint.fc +16 -0
- package/src/classes/msgdata/InitSmlConnection.fc +16 -0
- package/src/classes/msgdata/InitUlnConnection.fc +18 -0
- package/src/classes/msgdata/LzReceiveStatus.fc +58 -0
- package/src/classes/msgdata/LzSend.fc +58 -0
- package/src/classes/msgdata/MdAddress.fc +18 -0
- package/src/classes/msgdata/MdEid.fc +18 -0
- package/src/classes/msgdata/MdObj.fc +18 -0
- package/src/classes/msgdata/MessagingReceipt.fc +22 -0
- package/src/classes/msgdata/MsglibSendCallback.fc +113 -0
- package/src/classes/msgdata/Nonce.fc +16 -0
- package/src/classes/msgdata/OptionsExtended.fc +20 -0
- package/src/classes/msgdata/OptionsV1.fc +27 -0
- package/src/classes/msgdata/OptionsV2.fc +34 -0
- package/src/classes/msgdata/PacketId.fc +18 -0
- package/src/classes/msgdata/PacketSent.fc +39 -0
- package/src/classes/msgdata/SetAddress.fc +16 -0
- package/src/classes/msgdata/SetEpConfig.fc +33 -0
- package/src/classes/msgdata/SetPeer.fc +18 -0
- package/src/classes/msgdata/SetSmlManagerConfig.fc +18 -0
- package/src/funC++/abstract/contractMainAbstract.fc +3 -0
- package/src/funC++/abstract/handlerAbstract.fc +12 -0
- package/src/funC++/actions/call.fc +51 -0
- package/src/funC++/actions/deploy.fc +118 -0
- package/src/funC++/actions/destroy.fc +28 -0
- package/src/funC++/actions/dispatch.fc +57 -0
- package/src/funC++/actions/event.fc +69 -0
- package/src/funC++/actions/payment.fc +52 -0
- package/src/funC++/actions/sendJettons.fc +76 -0
- package/src/funC++/actions/utils.fc +49 -0
- package/src/funC++/baseInterface.fc +16 -0
- package/src/funC++/classlib.fc +819 -0
- package/src/funC++/constants.fc +64 -0
- package/src/funC++/contractMain.fc +84 -0
- package/src/funC++/dataStructures/DeterministicInsertionCircularQueue.fc +155 -0
- package/src/funC++/dataStructures/PipelinedOutOfOrder.fc +93 -0
- package/src/funC++/handlerCore.fc +30 -0
- package/src/funC++/stdlib.fc +625 -0
- package/src/funC++/stringlib.fc +75 -0
- package/src/funC++/txnContext.fc +126 -0
- package/src/funC++/utils.fc +119 -0
- package/src/jettons/zro/minter.fc +120 -0
- package/src/jettons/zro/op-codes.fc +10 -0
- package/src/jettons/zro/params.fc +18 -0
- package/src/jettons/zro/utils.fc +33 -0
- package/src/jettons/zro/wallet.fc +261 -0
- package/tests/baseContractTest.fc +192 -0
- package/tests/testMain.fc +135 -0
|
@@ -0,0 +1,2188 @@
|
|
|
1
|
+
"Asm.fif" include
|
|
2
|
+
// automatically generated from `src/funC++/tests/POOO/main.fc` incl:`src/funC++/tests/POOO/../../../../tests/testMain.fc` incl:`src/funC++/tests/POOO/../../../../tests/../src/funC++/classlib.fc` incl:`src/funC++/tests/POOO/../../../../tests/../src/funC++/utils.fc` incl:`src/funC++/tests/POOO/../../../../tests/../src/funC++/constants.fc` incl:`src/funC++/tests/POOO/../../../../tests/../src/funC++/stdlib.fc` incl:`src/funC++/tests/POOO/../../../../tests/../src/funC++/stringlib.fc` incl:`src/funC++/tests/POOO/../../../../tests/../src/funC++/txnContext.fc` incl:`src/funC++/tests/POOO/../../dataStructures/PipelinedOutOfOrder.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 _testName
|
|
89
|
+
DECLPROC baseTest::getTests
|
|
90
|
+
DECLPROC baseTest::prepare
|
|
91
|
+
DECLPROC emitDone
|
|
92
|
+
DECLPROC test::throwError
|
|
93
|
+
DECLPROC test::throwErrorUnless
|
|
94
|
+
119192 DECLMETHOD get_test_name
|
|
95
|
+
DECLPROC setCaller
|
|
96
|
+
DECLPROC setContractBalance
|
|
97
|
+
DECLPROC setNewTime
|
|
98
|
+
DECLPROC main
|
|
99
|
+
DECLPROC test::shouldBeTrue
|
|
100
|
+
DECLPROC test::shouldBeFalse
|
|
101
|
+
106165 DECLMETHOD POOO::set
|
|
102
|
+
76066 DECLMETHOD POOO::New
|
|
103
|
+
126005 DECLMETHOD POOO::NewWithBitsSets
|
|
104
|
+
116795 DECLMETHOD POOO::isBitSet
|
|
105
|
+
68887 DECLMETHOD POOO::maxSettableBit
|
|
106
|
+
DECLPROC POOO::setBitOne
|
|
107
|
+
DECLPROC POOO::setBitTwo
|
|
108
|
+
DECLPROC POOO::8bitOrdered
|
|
109
|
+
DECLPROC POOO::8bitUnordered
|
|
110
|
+
DECLPROC POOO::lastBit
|
|
111
|
+
DECLPROC POOO::revert::pastLastBit
|
|
112
|
+
DECLPROC POOO::indexZero
|
|
113
|
+
DECLPROC POOO::wrapsAtEnd
|
|
114
|
+
DECLPROC POOO::negativeInput
|
|
115
|
+
DECLGLOBVAR txnContext
|
|
116
|
+
DECLGLOBVAR base_error_msg
|
|
117
|
+
cell_is_empty PROCINLINE:<{
|
|
118
|
+
HASHCU
|
|
119
|
+
68134197439415885698044414435951397869210496020759160419881882418413283430343 PUSHINT
|
|
120
|
+
EQUAL
|
|
121
|
+
}>
|
|
122
|
+
throwError PROCINLINE:<{
|
|
123
|
+
DUP
|
|
124
|
+
STRDUMP
|
|
125
|
+
DROP
|
|
126
|
+
HASHSU
|
|
127
|
+
11 PUSHPOW2DEC
|
|
128
|
+
AND
|
|
129
|
+
THROWANY
|
|
130
|
+
}>
|
|
131
|
+
throwErrorUnless PROCINLINE:<{
|
|
132
|
+
SWAP
|
|
133
|
+
IFNOT:<{
|
|
134
|
+
throwError INLINECALLDICT
|
|
135
|
+
}>ELSE<{
|
|
136
|
+
DROP
|
|
137
|
+
}>
|
|
138
|
+
}>
|
|
139
|
+
getContractStateSize PROCINLINE:<{
|
|
140
|
+
6 PUSHINT
|
|
141
|
+
NEWC
|
|
142
|
+
5 STU
|
|
143
|
+
s1 s2 XCHG
|
|
144
|
+
STREF
|
|
145
|
+
STREF
|
|
146
|
+
ENDC
|
|
147
|
+
16 PUSHPOW2DEC
|
|
148
|
+
CDATASIZE
|
|
149
|
+
DROP
|
|
150
|
+
}>
|
|
151
|
+
calculateStorageFees PROCINLINE:<{
|
|
152
|
+
0 PUSHINT
|
|
153
|
+
GETSTORAGEFEE
|
|
154
|
+
}>
|
|
155
|
+
treeShapeEqual PROCINLINE:<{
|
|
156
|
+
SWAP
|
|
157
|
+
CTOS
|
|
158
|
+
SWAP
|
|
159
|
+
CTOS
|
|
160
|
+
OVER
|
|
161
|
+
SBITREFS
|
|
162
|
+
s2 PUSH
|
|
163
|
+
SBITREFS
|
|
164
|
+
s3 s3 XCHG2
|
|
165
|
+
NEQ
|
|
166
|
+
s1 s2 PUXC
|
|
167
|
+
NEQ
|
|
168
|
+
s1 s2 XCHG
|
|
169
|
+
OR
|
|
170
|
+
IF:<{
|
|
171
|
+
3 BLKDROP
|
|
172
|
+
FALSE
|
|
173
|
+
}>ELSE<{
|
|
174
|
+
DUP
|
|
175
|
+
0 EQINT
|
|
176
|
+
IFJMP:<{
|
|
177
|
+
3 BLKDROP
|
|
178
|
+
TRUE
|
|
179
|
+
}>
|
|
180
|
+
TRUE
|
|
181
|
+
0 PUSHINT
|
|
182
|
+
WHILE:<{
|
|
183
|
+
s2 PUSH
|
|
184
|
+
0 GTINT
|
|
185
|
+
}>DO<{
|
|
186
|
+
s4 s0 PUSH2
|
|
187
|
+
PLDREFVAR
|
|
188
|
+
s4 s1 PUSH2
|
|
189
|
+
PLDREFVAR
|
|
190
|
+
treeShapeEqual INLINECALLDICT
|
|
191
|
+
s1 s2 XCHG
|
|
192
|
+
AND
|
|
193
|
+
SWAP
|
|
194
|
+
}>
|
|
195
|
+
s1 s4 XCHG
|
|
196
|
+
4 BLKDROP
|
|
197
|
+
}>
|
|
198
|
+
}>
|
|
199
|
+
str::asciiUint256ToStr PROC:<{
|
|
200
|
+
DUP
|
|
201
|
+
NEWC
|
|
202
|
+
256 STU
|
|
203
|
+
ENDC
|
|
204
|
+
CTOS
|
|
205
|
+
SDCNTLEAD0
|
|
206
|
+
8 PUSHPOW2
|
|
207
|
+
SWAP
|
|
208
|
+
SUB
|
|
209
|
+
POW2
|
|
210
|
+
DEC
|
|
211
|
+
8627645864741206717834700843784589212596587092734002810783114102550390051603 PUSHINT
|
|
212
|
+
SWAP
|
|
213
|
+
NOT
|
|
214
|
+
AND
|
|
215
|
+
OR
|
|
216
|
+
NEWC
|
|
217
|
+
256 STU
|
|
218
|
+
ENDC
|
|
219
|
+
CTOS
|
|
220
|
+
}>
|
|
221
|
+
~str::concat PROC:<{
|
|
222
|
+
OVER
|
|
223
|
+
SBITS
|
|
224
|
+
OVER
|
|
225
|
+
SBITS
|
|
226
|
+
ADD
|
|
227
|
+
32385 PUSHINT
|
|
228
|
+
GREATER
|
|
229
|
+
IF:<{
|
|
230
|
+
x{43616e6e6f7420636f6e636174656e6174653a20737472696e6720746f6f206c6f6e67} PUSHSLICE
|
|
231
|
+
throwError INLINECALLDICT
|
|
232
|
+
}>
|
|
233
|
+
NEWC
|
|
234
|
+
ROT
|
|
235
|
+
STSLICER
|
|
236
|
+
SWAP
|
|
237
|
+
STSLICER
|
|
238
|
+
ENDC
|
|
239
|
+
CTOS
|
|
240
|
+
}>
|
|
241
|
+
str::concat PROC:<{
|
|
242
|
+
~str::concat CALLDICT
|
|
243
|
+
}>
|
|
244
|
+
~str::concatInt PROC:<{
|
|
245
|
+
<b b> <s PUSHSLICE
|
|
246
|
+
OVER
|
|
247
|
+
0 LESSINT
|
|
248
|
+
IF:<{
|
|
249
|
+
s0 s2 XCHG
|
|
250
|
+
x{2d} PUSHSLICE
|
|
251
|
+
~str::concat CALLDICT
|
|
252
|
+
SWAP
|
|
253
|
+
NEGATE
|
|
254
|
+
ROT
|
|
255
|
+
}>
|
|
256
|
+
OVER
|
|
257
|
+
0 EQINT
|
|
258
|
+
IF:<{
|
|
259
|
+
48 PUSHINT
|
|
260
|
+
NEWC
|
|
261
|
+
8 STU
|
|
262
|
+
ENDC
|
|
263
|
+
CTOS
|
|
264
|
+
~str::concat CALLDICT
|
|
265
|
+
}>
|
|
266
|
+
WHILE:<{
|
|
267
|
+
OVER
|
|
268
|
+
0 GTINT
|
|
269
|
+
}>DO<{
|
|
270
|
+
OVER
|
|
271
|
+
10 PUSHINT
|
|
272
|
+
MOD
|
|
273
|
+
48 ADDCONST
|
|
274
|
+
NEWC
|
|
275
|
+
8 STU
|
|
276
|
+
ENDC
|
|
277
|
+
CTOS
|
|
278
|
+
SWAP
|
|
279
|
+
str::concat CALLDICT
|
|
280
|
+
SWAP
|
|
281
|
+
10 PUSHINT
|
|
282
|
+
DIV
|
|
283
|
+
SWAP
|
|
284
|
+
}>
|
|
285
|
+
NIP
|
|
286
|
+
str::concat CALLDICT
|
|
287
|
+
}>
|
|
288
|
+
str::concatInt PROC:<{
|
|
289
|
+
~str::concatInt CALLDICT
|
|
290
|
+
}>
|
|
291
|
+
~str::concatHex PROC:<{
|
|
292
|
+
<b b> <s PUSHSLICE
|
|
293
|
+
OVER
|
|
294
|
+
0 EQINT
|
|
295
|
+
IF:<{
|
|
296
|
+
48 PUSHINT
|
|
297
|
+
NEWC
|
|
298
|
+
8 STU
|
|
299
|
+
ENDC
|
|
300
|
+
CTOS
|
|
301
|
+
~str::concat CALLDICT
|
|
302
|
+
}>
|
|
303
|
+
WHILE:<{
|
|
304
|
+
OVER
|
|
305
|
+
0 GTINT
|
|
306
|
+
}>DO<{
|
|
307
|
+
OVER
|
|
308
|
+
4 MODPOW2#
|
|
309
|
+
10 LESSINT
|
|
310
|
+
IF:<{
|
|
311
|
+
OVER
|
|
312
|
+
4 MODPOW2#
|
|
313
|
+
48 ADDCONST
|
|
314
|
+
NEWC
|
|
315
|
+
8 STU
|
|
316
|
+
ENDC
|
|
317
|
+
CTOS
|
|
318
|
+
SWAP
|
|
319
|
+
str::concat CALLDICT
|
|
320
|
+
}>ELSE<{
|
|
321
|
+
OVER
|
|
322
|
+
4 MODPOW2#
|
|
323
|
+
65 ADDCONST
|
|
324
|
+
-10 ADDCONST
|
|
325
|
+
NEWC
|
|
326
|
+
8 STU
|
|
327
|
+
ENDC
|
|
328
|
+
CTOS
|
|
329
|
+
SWAP
|
|
330
|
+
str::concat CALLDICT
|
|
331
|
+
}>
|
|
332
|
+
SWAP
|
|
333
|
+
4 RSHIFT#
|
|
334
|
+
SWAP
|
|
335
|
+
}>
|
|
336
|
+
NIP
|
|
337
|
+
str::concat CALLDICT
|
|
338
|
+
}>
|
|
339
|
+
str::concatHex PROC:<{
|
|
340
|
+
~str::concatHex CALLDICT
|
|
341
|
+
}>
|
|
342
|
+
str::console::log<int> PROC:<{
|
|
343
|
+
SWAP
|
|
344
|
+
x{3a20} PUSHSLICE
|
|
345
|
+
str::concat CALLDICT
|
|
346
|
+
SWAP
|
|
347
|
+
str::concatInt CALLDICT
|
|
348
|
+
STRDUMP
|
|
349
|
+
DROP
|
|
350
|
+
}>
|
|
351
|
+
basechainAddressStdToHashpart PROCINLINE:<{
|
|
352
|
+
REWRITESTDADDR
|
|
353
|
+
NIP
|
|
354
|
+
}>
|
|
355
|
+
hashpartToBasechainAddressStd PROCINLINE:<{
|
|
356
|
+
0 PUSHINT
|
|
357
|
+
4 PUSHINT
|
|
358
|
+
NEWC
|
|
359
|
+
3 STU
|
|
360
|
+
8 STI
|
|
361
|
+
256 STU
|
|
362
|
+
ENDC CTOS
|
|
363
|
+
}>
|
|
364
|
+
getContractAddress PROCINLINE:<{
|
|
365
|
+
MYADDR
|
|
366
|
+
11 PUSHINT
|
|
367
|
+
8 PUSHPOW2
|
|
368
|
+
SDSUBSTR
|
|
369
|
+
256 PLDU
|
|
370
|
+
}>
|
|
371
|
+
cl::objToSlice PROCINLINE:<{
|
|
372
|
+
CTOS
|
|
373
|
+
}>
|
|
374
|
+
_getTypeWidth PROCINLINE:<{
|
|
375
|
+
DUP
|
|
376
|
+
9 LESSINT
|
|
377
|
+
IF:<{
|
|
378
|
+
POW2
|
|
379
|
+
}>ELSE<{
|
|
380
|
+
DROP
|
|
381
|
+
0 PUSHINT
|
|
382
|
+
}>
|
|
383
|
+
}>
|
|
384
|
+
cl::hash PROCINLINE:<{
|
|
385
|
+
HASHCU
|
|
386
|
+
}>
|
|
387
|
+
cl::isNull PROCINLINE:<{
|
|
388
|
+
cell_is_empty INLINECALLDICT
|
|
389
|
+
}>
|
|
390
|
+
cl::noRefFields PROC:<{
|
|
391
|
+
c2 SAVE
|
|
392
|
+
SAMEALTSAVE
|
|
393
|
+
CTOS
|
|
394
|
+
DUP
|
|
395
|
+
SREFS
|
|
396
|
+
DUP
|
|
397
|
+
0 EQINT
|
|
398
|
+
IFJMP:<{
|
|
399
|
+
2DROP
|
|
400
|
+
TRUE
|
|
401
|
+
}>
|
|
402
|
+
DUP
|
|
403
|
+
3 LESSINT
|
|
404
|
+
IFJMP:<{
|
|
405
|
+
2DROP
|
|
406
|
+
FALSE
|
|
407
|
+
RETALT
|
|
408
|
+
}>
|
|
409
|
+
DUP
|
|
410
|
+
2 GTINT
|
|
411
|
+
IF:<{
|
|
412
|
+
OVER
|
|
413
|
+
0 PUSHINT
|
|
414
|
+
PLDREFVAR
|
|
415
|
+
cell_is_empty INLINECALLDICT
|
|
416
|
+
0 EQINT
|
|
417
|
+
s2 PUSH
|
|
418
|
+
1 PUSHINT
|
|
419
|
+
PLDREFVAR
|
|
420
|
+
cell_is_empty INLINECALLDICT
|
|
421
|
+
0 EQINT
|
|
422
|
+
OR
|
|
423
|
+
s2 PUSH
|
|
424
|
+
2 PUSHINT
|
|
425
|
+
PLDREFVAR
|
|
426
|
+
CTOS
|
|
427
|
+
SREFS
|
|
428
|
+
0 NEQINT
|
|
429
|
+
OR
|
|
430
|
+
IFJMP:<{
|
|
431
|
+
2DROP
|
|
432
|
+
FALSE
|
|
433
|
+
RETALT
|
|
434
|
+
}>
|
|
435
|
+
}>
|
|
436
|
+
3 GTINT
|
|
437
|
+
IF:<{
|
|
438
|
+
3 PUSHINT
|
|
439
|
+
PLDREFVAR
|
|
440
|
+
CTOS
|
|
441
|
+
SREFS
|
|
442
|
+
0 NEQINT
|
|
443
|
+
IFJMP:<{
|
|
444
|
+
FALSE
|
|
445
|
+
RETALT
|
|
446
|
+
}>
|
|
447
|
+
}>ELSE<{
|
|
448
|
+
DROP
|
|
449
|
+
}>
|
|
450
|
+
TRUE
|
|
451
|
+
}>
|
|
452
|
+
cl::equalObjTypeShallow PROC:<{
|
|
453
|
+
c2 SAVE
|
|
454
|
+
SAMEALTSAVE
|
|
455
|
+
SWAP
|
|
456
|
+
CTOS
|
|
457
|
+
SWAP
|
|
458
|
+
CTOS
|
|
459
|
+
OVER
|
|
460
|
+
SREFS
|
|
461
|
+
OVER
|
|
462
|
+
SREFS
|
|
463
|
+
s1 s(-1) PUXC
|
|
464
|
+
NEQ
|
|
465
|
+
s3 PUSH
|
|
466
|
+
SBITS
|
|
467
|
+
s3 PUSH
|
|
468
|
+
SBITS
|
|
469
|
+
NEQ
|
|
470
|
+
OR
|
|
471
|
+
IFJMP:<{
|
|
472
|
+
3 BLKDROP
|
|
473
|
+
FALSE
|
|
474
|
+
}>
|
|
475
|
+
2 PUSHINT
|
|
476
|
+
WHILE:<{
|
|
477
|
+
s0 s1 PUSH2
|
|
478
|
+
LESS
|
|
479
|
+
}>DO<{
|
|
480
|
+
s3 s0 PUSH2
|
|
481
|
+
PLDREFVAR
|
|
482
|
+
CTOS
|
|
483
|
+
SREFS
|
|
484
|
+
s3 s1 PUSH2
|
|
485
|
+
PLDREFVAR
|
|
486
|
+
CTOS
|
|
487
|
+
SREFS
|
|
488
|
+
NEQ
|
|
489
|
+
s4 s1 PUSH2
|
|
490
|
+
PLDREFVAR
|
|
491
|
+
CTOS
|
|
492
|
+
SBITS
|
|
493
|
+
s4 s2 PUSH2
|
|
494
|
+
PLDREFVAR
|
|
495
|
+
CTOS
|
|
496
|
+
SBITS
|
|
497
|
+
NEQ
|
|
498
|
+
OR
|
|
499
|
+
IFJMP:<{
|
|
500
|
+
4 BLKDROP
|
|
501
|
+
FALSE
|
|
502
|
+
RETALT
|
|
503
|
+
}>
|
|
504
|
+
INC
|
|
505
|
+
}>
|
|
506
|
+
4 BLKDROP
|
|
507
|
+
TRUE
|
|
508
|
+
}>
|
|
509
|
+
setContractStorage PROCINLINE:<{
|
|
510
|
+
c4 POP
|
|
511
|
+
}>
|
|
512
|
+
getContractStorage PROCINLINE:<{
|
|
513
|
+
c4 PUSH
|
|
514
|
+
}>
|
|
515
|
+
computeContractAddress PROCINLINE:<{
|
|
516
|
+
6 PUSHINT
|
|
517
|
+
NEWC
|
|
518
|
+
5 STU
|
|
519
|
+
STREF
|
|
520
|
+
STREF
|
|
521
|
+
ENDC
|
|
522
|
+
HASHCU
|
|
523
|
+
}>
|
|
524
|
+
cl::typeof PROCINLINE:<{
|
|
525
|
+
DUP
|
|
526
|
+
cl::isNull INLINECALLDICT
|
|
527
|
+
IF:<{
|
|
528
|
+
DROP
|
|
529
|
+
1314212940 PUSHINT
|
|
530
|
+
}>ELSE<{
|
|
531
|
+
CTOS
|
|
532
|
+
80 PLDU
|
|
533
|
+
}>
|
|
534
|
+
}>
|
|
535
|
+
cl::declare PROCINLINE:<{
|
|
536
|
+
PUSHNULL
|
|
537
|
+
NEWC
|
|
538
|
+
PAIR
|
|
539
|
+
OVER
|
|
540
|
+
TLEN
|
|
541
|
+
s0 s3 XCHG
|
|
542
|
+
NEWC
|
|
543
|
+
80 STU
|
|
544
|
+
1 PUSHINT
|
|
545
|
+
DUP
|
|
546
|
+
2 PUSHINT
|
|
547
|
+
350 PUSHINT
|
|
548
|
+
0 PUSHINT
|
|
549
|
+
DUP
|
|
550
|
+
WHILE:<{
|
|
551
|
+
s0 s9 PUSH2
|
|
552
|
+
LESS
|
|
553
|
+
}>DO<{
|
|
554
|
+
s8 s0 PUSH2
|
|
555
|
+
INDEXVAR
|
|
556
|
+
DUP
|
|
557
|
+
0 INDEX
|
|
558
|
+
DUP
|
|
559
|
+
_getTypeWidth INLINECALLDICT
|
|
560
|
+
s5 s0 PUSH2
|
|
561
|
+
ADD
|
|
562
|
+
10 PUSHPOW2DEC
|
|
563
|
+
GREATER
|
|
564
|
+
IF:<{
|
|
565
|
+
s5 POP
|
|
566
|
+
s0 s7 XCHG
|
|
567
|
+
INC
|
|
568
|
+
0 PUSHINT
|
|
569
|
+
s10 PUSH
|
|
570
|
+
TLEN
|
|
571
|
+
s2 s(-1) PUXC
|
|
572
|
+
GEQ
|
|
573
|
+
IF:<{
|
|
574
|
+
s0 s10 XCHG
|
|
575
|
+
NEWC
|
|
576
|
+
TPUSH
|
|
577
|
+
s0 s10 XCHG
|
|
578
|
+
}>
|
|
579
|
+
s8 s5 XCHG2
|
|
580
|
+
}>
|
|
581
|
+
s4 PUSH
|
|
582
|
+
INC
|
|
583
|
+
s7 PUSH
|
|
584
|
+
GREATER
|
|
585
|
+
IF:<{
|
|
586
|
+
s4 POP
|
|
587
|
+
s5 POP
|
|
588
|
+
s0 s5 XCHG
|
|
589
|
+
INC
|
|
590
|
+
0 PUSHINT
|
|
591
|
+
4 PUSHINT
|
|
592
|
+
s10 PUSH
|
|
593
|
+
TLEN
|
|
594
|
+
s3 s(-1) PUXC
|
|
595
|
+
GEQ
|
|
596
|
+
IF:<{
|
|
597
|
+
s0 s10 XCHG
|
|
598
|
+
NEWC
|
|
599
|
+
TPUSH
|
|
600
|
+
s0 s10 XCHG
|
|
601
|
+
}>
|
|
602
|
+
s7 s6 s6 XCHG3
|
|
603
|
+
s0 s4 XCHG
|
|
604
|
+
}>
|
|
605
|
+
OVER
|
|
606
|
+
9 LESSINT
|
|
607
|
+
IF:<{
|
|
608
|
+
s0 s2 XCHG
|
|
609
|
+
1 INDEX
|
|
610
|
+
ABS
|
|
611
|
+
s10 s8 PUSH2
|
|
612
|
+
INDEXVAR
|
|
613
|
+
s3 PUSH
|
|
614
|
+
STUX
|
|
615
|
+
s10 s0 s8 XC2PU
|
|
616
|
+
SETINDEXVAR
|
|
617
|
+
}>ELSE<{
|
|
618
|
+
OVER
|
|
619
|
+
9 EQINT
|
|
620
|
+
IF:<{
|
|
621
|
+
s0 s2 XCHG
|
|
622
|
+
1 INDEX
|
|
623
|
+
s10 s7 PUSH2
|
|
624
|
+
INDEXVAR
|
|
625
|
+
STREF
|
|
626
|
+
s10 s0 s7 XC2PU
|
|
627
|
+
SETINDEXVAR
|
|
628
|
+
}>ELSE<{
|
|
629
|
+
s0 s2 XCHG
|
|
630
|
+
1 INDEX
|
|
631
|
+
s10 s7 PUSH2
|
|
632
|
+
INDEXVAR
|
|
633
|
+
STREF
|
|
634
|
+
s10 s0 s7 XC2PU
|
|
635
|
+
SETINDEXVAR
|
|
636
|
+
}>
|
|
637
|
+
}>
|
|
638
|
+
s9 s8 XCHG2
|
|
639
|
+
4 STU
|
|
640
|
+
s8 PUSH
|
|
641
|
+
0 GTINT
|
|
642
|
+
IF:<{
|
|
643
|
+
3 PUSHINT
|
|
644
|
+
s7 PUSH
|
|
645
|
+
1 EQINT
|
|
646
|
+
IF:<{
|
|
647
|
+
0 PUSHINT
|
|
648
|
+
}>ELSE<{
|
|
649
|
+
s7 PUSH
|
|
650
|
+
}>
|
|
651
|
+
ROT
|
|
652
|
+
2 STU
|
|
653
|
+
s4 s(-1) PUXC
|
|
654
|
+
10 STU
|
|
655
|
+
2 STU
|
|
656
|
+
s3 s8 XCHG2
|
|
657
|
+
ADD
|
|
658
|
+
}>ELSE<{
|
|
659
|
+
s8 POP
|
|
660
|
+
10 PUSHPOW2DEC
|
|
661
|
+
s5 PUSH
|
|
662
|
+
1 EQINT
|
|
663
|
+
IF:<{
|
|
664
|
+
0 PUSHINT
|
|
665
|
+
}>ELSE<{
|
|
666
|
+
s5 PUSH
|
|
667
|
+
}>
|
|
668
|
+
s0 s9 XCHG2
|
|
669
|
+
2 STU
|
|
670
|
+
s1 s8 XCHG
|
|
671
|
+
10 STU
|
|
672
|
+
s1 s(-1) PUXC
|
|
673
|
+
2 STU
|
|
674
|
+
SWAP
|
|
675
|
+
INC
|
|
676
|
+
s7 s0 s7 XCHG3
|
|
677
|
+
}>
|
|
678
|
+
s0 s2 XCHG
|
|
679
|
+
INC
|
|
680
|
+
s6 s7 XCHG
|
|
681
|
+
}>
|
|
682
|
+
6 BLKDROP
|
|
683
|
+
2 2 BLKDROP2
|
|
684
|
+
OVER
|
|
685
|
+
1 INDEX
|
|
686
|
+
s2 PUSH
|
|
687
|
+
TLEN
|
|
688
|
+
DEC
|
|
689
|
+
DUP
|
|
690
|
+
1 GTINT
|
|
691
|
+
IF:<{
|
|
692
|
+
OVER
|
|
693
|
+
BREFS
|
|
694
|
+
0 EQINT
|
|
695
|
+
IF:<{
|
|
696
|
+
<b b> PUSHREF
|
|
697
|
+
<b b> PUSHREF
|
|
698
|
+
s0 s3 XCHG2
|
|
699
|
+
STREF
|
|
700
|
+
s1 s2 XCHG
|
|
701
|
+
STREF
|
|
702
|
+
}>ELSE<{
|
|
703
|
+
OVER
|
|
704
|
+
BREFS
|
|
705
|
+
1 EQINT
|
|
706
|
+
IF:<{
|
|
707
|
+
<b b> PUSHREF
|
|
708
|
+
ROT
|
|
709
|
+
STREF
|
|
710
|
+
SWAP
|
|
711
|
+
}>
|
|
712
|
+
SWAP
|
|
713
|
+
}>
|
|
714
|
+
SWAP
|
|
715
|
+
}>
|
|
716
|
+
350 PUSHINT
|
|
717
|
+
s3 PUSH
|
|
718
|
+
BBITS
|
|
719
|
+
SUB
|
|
720
|
+
s1 s3 XCHG
|
|
721
|
+
STONES
|
|
722
|
+
SWAP
|
|
723
|
+
STBR
|
|
724
|
+
OVER
|
|
725
|
+
1 EQINT
|
|
726
|
+
IF:<{
|
|
727
|
+
2 1 BLKDROP2
|
|
728
|
+
ENDC
|
|
729
|
+
}>ELSE<{
|
|
730
|
+
SWAP
|
|
731
|
+
2 EQINT
|
|
732
|
+
IFJMP:<{
|
|
733
|
+
SWAP
|
|
734
|
+
2 INDEX
|
|
735
|
+
ENDC
|
|
736
|
+
SWAP
|
|
737
|
+
STREF
|
|
738
|
+
ENDC
|
|
739
|
+
}>
|
|
740
|
+
OVER
|
|
741
|
+
3 INDEX
|
|
742
|
+
ENDC
|
|
743
|
+
s0 s2 XCHG
|
|
744
|
+
2 INDEX
|
|
745
|
+
ENDC
|
|
746
|
+
SWAP
|
|
747
|
+
STREF
|
|
748
|
+
STREF
|
|
749
|
+
ENDC
|
|
750
|
+
}>
|
|
751
|
+
}>
|
|
752
|
+
cl::nullObject PROCINLINE:<{
|
|
753
|
+
<b b> PUSHREF
|
|
754
|
+
}>
|
|
755
|
+
cl::set PROCINLINE:<{
|
|
756
|
+
s0 s2 XCHG
|
|
757
|
+
CTOS
|
|
758
|
+
SWAP
|
|
759
|
+
18 MULCONST
|
|
760
|
+
80 ADDCONST
|
|
761
|
+
2DUP
|
|
762
|
+
4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
|
|
763
|
+
2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
|
|
764
|
+
SDSUBSTR // STACK [substring]
|
|
765
|
+
2 PLDU // STACK [2BitUnsignInt]
|
|
766
|
+
s2 s1 PUSH2
|
|
767
|
+
// STACK [fieldInfoOffset, headerSlice]
|
|
768
|
+
4 PUSHINT // STACK [_FIELD_TYPE_WIDTH, fieldInfoOffset, headerSlice]
|
|
769
|
+
SDSUBSTR // STACK [substring]
|
|
770
|
+
4 PLDU // STACK [2BitUnsignInt]
|
|
771
|
+
2OVER
|
|
772
|
+
6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
|
|
773
|
+
10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
|
|
774
|
+
SDSUBSTR // STACK [substring]
|
|
775
|
+
10 PLDU // STACK [10BitUnsignInt]
|
|
776
|
+
s4 s3 PUXC
|
|
777
|
+
16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
|
|
778
|
+
2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
|
|
779
|
+
SDSUBSTR // STACK [substring]
|
|
780
|
+
2 PLDU // STACK [10BitUnsignInt]
|
|
781
|
+
OVER
|
|
782
|
+
_getTypeWidth INLINECALLDICT
|
|
783
|
+
s3 PUSH
|
|
784
|
+
0 EQINT
|
|
785
|
+
IF:<{
|
|
786
|
+
s5 PUSH
|
|
787
|
+
}>ELSE<{
|
|
788
|
+
s5 s3 PUSH2
|
|
789
|
+
PLDREFVAR
|
|
790
|
+
CTOS
|
|
791
|
+
}>
|
|
792
|
+
OVER
|
|
793
|
+
0 NEQINT
|
|
794
|
+
IF:<{
|
|
795
|
+
4 PUSHINT
|
|
796
|
+
s3 POP
|
|
797
|
+
}>
|
|
798
|
+
NEWC
|
|
799
|
+
OVER
|
|
800
|
+
SBITS
|
|
801
|
+
s7 PUSH
|
|
802
|
+
MIN
|
|
803
|
+
s2 PUSH
|
|
804
|
+
SREFS
|
|
805
|
+
s5 s(-1) PUXC
|
|
806
|
+
MIN
|
|
807
|
+
s3 PUSH
|
|
808
|
+
-ROT
|
|
809
|
+
SCUTFIRST
|
|
810
|
+
STSLICER
|
|
811
|
+
s4 PUSH
|
|
812
|
+
9 EQINT
|
|
813
|
+
IF:<{
|
|
814
|
+
s2 POP
|
|
815
|
+
s3 POP
|
|
816
|
+
s4 POP
|
|
817
|
+
s5 s5 XCHG2
|
|
818
|
+
s0 s3 XCHG
|
|
819
|
+
STREF
|
|
820
|
+
0 PUSHINT
|
|
821
|
+
s3 PUSH
|
|
822
|
+
SREFS
|
|
823
|
+
s0 s6 XCHG2
|
|
824
|
+
SUB
|
|
825
|
+
DEC
|
|
826
|
+
s3 s5 s0 XCHG3
|
|
827
|
+
SCUTLAST
|
|
828
|
+
s1 s3 XCHG
|
|
829
|
+
STSLICER
|
|
830
|
+
}>ELSE<{
|
|
831
|
+
s0 s4 XCHG
|
|
832
|
+
9 EQINT
|
|
833
|
+
IF:<{
|
|
834
|
+
NIP
|
|
835
|
+
s4 POP
|
|
836
|
+
s5 s5 XCHG2
|
|
837
|
+
STREF
|
|
838
|
+
0 PUSHINT
|
|
839
|
+
s3 PUSH
|
|
840
|
+
SREFS
|
|
841
|
+
s0 s6 XCHG2
|
|
842
|
+
SUB
|
|
843
|
+
DEC
|
|
844
|
+
s3 s5 s0 XCHG3
|
|
845
|
+
SCUTLAST
|
|
846
|
+
s1 s3 XCHG
|
|
847
|
+
STSLICER
|
|
848
|
+
}>ELSE<{
|
|
849
|
+
s2 POP
|
|
850
|
+
s0 s6 XCHG
|
|
851
|
+
ABS
|
|
852
|
+
s0 s2 s6 XC2PU
|
|
853
|
+
STUX
|
|
854
|
+
s3 s5 XCHG2
|
|
855
|
+
ADD
|
|
856
|
+
s2 PUSH
|
|
857
|
+
SREFS
|
|
858
|
+
s2 s3 XCHG
|
|
859
|
+
SSKIPFIRST
|
|
860
|
+
s1 s3 XCHG
|
|
861
|
+
STSLICER
|
|
862
|
+
}>
|
|
863
|
+
}>
|
|
864
|
+
s2 PUSH
|
|
865
|
+
0 GTINT
|
|
866
|
+
IF:<{
|
|
867
|
+
ENDC
|
|
868
|
+
NEWC
|
|
869
|
+
s2 PUSH
|
|
870
|
+
SBITS
|
|
871
|
+
s3 s4 s(-1) PU2XC
|
|
872
|
+
SCUTFIRST
|
|
873
|
+
STSLICER
|
|
874
|
+
STREF
|
|
875
|
+
0 PUSHINT
|
|
876
|
+
s2 PUSH
|
|
877
|
+
SREFS
|
|
878
|
+
s0 s4 XCHG2
|
|
879
|
+
SUB
|
|
880
|
+
DEC
|
|
881
|
+
s1 s3 XCHG
|
|
882
|
+
SCUTLAST
|
|
883
|
+
STSLICER
|
|
884
|
+
ENDC
|
|
885
|
+
}>ELSE<{
|
|
886
|
+
2 1 BLKDROP2
|
|
887
|
+
ENDC
|
|
888
|
+
}>
|
|
889
|
+
}>
|
|
890
|
+
cl::get<uint> PROCINLINE:<{
|
|
891
|
+
s0 s2 XCHG
|
|
892
|
+
CTOS
|
|
893
|
+
SWAP
|
|
894
|
+
18 MULCONST
|
|
895
|
+
80 ADDCONST
|
|
896
|
+
2DUP
|
|
897
|
+
4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
|
|
898
|
+
2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
|
|
899
|
+
SDSUBSTR // STACK [substring]
|
|
900
|
+
2 PLDU // STACK [2BitUnsignInt]
|
|
901
|
+
s2 s1 PUXC
|
|
902
|
+
6 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
|
|
903
|
+
10 PUSHINT // STACK [_DATA_OFFSET_WIDTH, fieldInfoOffset +_FIELD_TYPE_WIDTH + _CELL_ID_WIDTH, headerSlice]
|
|
904
|
+
SDSUBSTR // STACK [substring]
|
|
905
|
+
10 PLDU // STACK [10BitUnsignInt]
|
|
906
|
+
OVER
|
|
907
|
+
0 EQINT
|
|
908
|
+
IF:<{
|
|
909
|
+
NIP
|
|
910
|
+
s2 PUSH
|
|
911
|
+
SDSUBSTR // STACK [substring]
|
|
912
|
+
s1 XCHG0
|
|
913
|
+
PLDUX // STACK [10BitUnsignInt] (CC +1 )
|
|
914
|
+
}>ELSE<{
|
|
915
|
+
-ROT
|
|
916
|
+
PLDREFVAR
|
|
917
|
+
CTOS
|
|
918
|
+
s1 s2 XCPU
|
|
919
|
+
SDSUBSTR // STACK [substring]
|
|
920
|
+
s1 XCHG0
|
|
921
|
+
PLDUX // STACK [10BitUnsignInt] (CC +1 )
|
|
922
|
+
}>
|
|
923
|
+
}>
|
|
924
|
+
cl::get<cellRef> PROCINLINE:<{
|
|
925
|
+
SWAP
|
|
926
|
+
CTOS
|
|
927
|
+
SWAP
|
|
928
|
+
18 MULCONST
|
|
929
|
+
80 ADDCONST
|
|
930
|
+
2DUP
|
|
931
|
+
4 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
|
|
932
|
+
2 PUSHINT // STACK [_CELL_ID_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH, headerSlice]
|
|
933
|
+
SDSUBSTR // STACK [substring]
|
|
934
|
+
2 PLDU // STACK [2BitUnsignInt]
|
|
935
|
+
s2 s1 PUXC
|
|
936
|
+
16 ADDCONST // STACK [fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH, headerSlice]
|
|
937
|
+
2 PUSHINT // STACK [_REF_OFFSET_WIDTH, fieldInfoOffset + _FIELD_TYPE_WIDTH + _CELL_ID_WIDTH + _DATA_OFFSET_WIDTH headerSlice]
|
|
938
|
+
SDSUBSTR // STACK [substring]
|
|
939
|
+
2 PLDU // STACK [10BitUnsignInt]
|
|
940
|
+
OVER
|
|
941
|
+
0 EQINT
|
|
942
|
+
IF:<{
|
|
943
|
+
NIP
|
|
944
|
+
PLDREFVAR
|
|
945
|
+
}>ELSE<{
|
|
946
|
+
-ROT
|
|
947
|
+
PLDREFVAR
|
|
948
|
+
CTOS
|
|
949
|
+
SWAP
|
|
950
|
+
PLDREFVAR
|
|
951
|
+
}>
|
|
952
|
+
}>
|
|
953
|
+
cl::getWithCell<cellRef> PROCINLINE:<{
|
|
954
|
+
cl::get<cellRef> INLINECALLDICT
|
|
955
|
+
}>
|
|
956
|
+
cl::get<objRef> PROCINLINE:<{
|
|
957
|
+
cl::get<cellRef> INLINECALLDICT
|
|
958
|
+
}>
|
|
959
|
+
cl::get<uint8> PROCINLINE:<{
|
|
960
|
+
8 PUSHINT
|
|
961
|
+
cl::get<uint> INLINECALLDICT
|
|
962
|
+
}>
|
|
963
|
+
cl::get<uint16> PROCINLINE:<{
|
|
964
|
+
16 PUSHINT
|
|
965
|
+
cl::get<uint> INLINECALLDICT
|
|
966
|
+
}>
|
|
967
|
+
cl::get<uint32> PROCINLINE:<{
|
|
968
|
+
32 PUSHINT
|
|
969
|
+
cl::get<uint> INLINECALLDICT
|
|
970
|
+
}>
|
|
971
|
+
cl::get<uint64> PROCINLINE:<{
|
|
972
|
+
64 PUSHINT
|
|
973
|
+
cl::get<uint> INLINECALLDICT
|
|
974
|
+
}>
|
|
975
|
+
cl::get<coins> PROCINLINE:<{
|
|
976
|
+
7 PUSHPOW2
|
|
977
|
+
cl::get<uint> INLINECALLDICT
|
|
978
|
+
}>
|
|
979
|
+
cl::get<uint256> PROCINLINE:<{
|
|
980
|
+
8 PUSHPOW2
|
|
981
|
+
cl::get<uint> INLINECALLDICT
|
|
982
|
+
}>
|
|
983
|
+
cl::get<std_address> PROCINLINE:<{
|
|
984
|
+
8 PUSHPOW2
|
|
985
|
+
cl::get<uint> INLINECALLDICT
|
|
986
|
+
hashpartToBasechainAddressStd INLINECALLDICT
|
|
987
|
+
}>
|
|
988
|
+
cl::get<bool> PROCINLINE:<{
|
|
989
|
+
1 PUSHINT
|
|
990
|
+
cl::get<uint> INLINECALLDICT
|
|
991
|
+
0 NEQINT
|
|
992
|
+
}>
|
|
993
|
+
cl::get<dict256> PROCINLINE:<{
|
|
994
|
+
cl::get<cellRef> INLINECALLDICT
|
|
995
|
+
}>
|
|
996
|
+
cl::get<address> PROCINLINE:<{
|
|
997
|
+
8 PUSHPOW2
|
|
998
|
+
cl::get<uint> INLINECALLDICT
|
|
999
|
+
}>
|
|
1000
|
+
typeofField PROCINLINE:<{
|
|
1001
|
+
SWAP
|
|
1002
|
+
CTOS
|
|
1003
|
+
SWAP
|
|
1004
|
+
18 MULCONST
|
|
1005
|
+
80 ADDCONST
|
|
1006
|
+
4 PUSHINT
|
|
1007
|
+
SDSUBSTR
|
|
1008
|
+
4 PLDU
|
|
1009
|
+
}>
|
|
1010
|
+
compareObjectFields PROCINLINE:<{
|
|
1011
|
+
CONT:<{
|
|
1012
|
+
c2 SAVE
|
|
1013
|
+
SAMEALTSAVE
|
|
1014
|
+
OVER
|
|
1015
|
+
cl::typeof INLINECALLDICT
|
|
1016
|
+
OVER
|
|
1017
|
+
cl::typeof INLINECALLDICT
|
|
1018
|
+
NEQ
|
|
1019
|
+
DUP
|
|
1020
|
+
IF:<{
|
|
1021
|
+
3 BLKDROP
|
|
1022
|
+
16 PUSHINT
|
|
1023
|
+
}>ELSE<{
|
|
1024
|
+
s2 PUSH
|
|
1025
|
+
cl::typeof INLINECALLDICT
|
|
1026
|
+
1314212940 PUSHINT
|
|
1027
|
+
EQUAL
|
|
1028
|
+
IFJMP:<{
|
|
1029
|
+
3 BLKDROP
|
|
1030
|
+
-1 PUSHINT
|
|
1031
|
+
}>
|
|
1032
|
+
0 PUSHINT
|
|
1033
|
+
WHILE:<{
|
|
1034
|
+
DUP
|
|
1035
|
+
16 LESSINT
|
|
1036
|
+
}>DO<{
|
|
1037
|
+
s3 s0 PUSH2
|
|
1038
|
+
typeofField INLINECALLDICT
|
|
1039
|
+
DUP
|
|
1040
|
+
9 EQINT
|
|
1041
|
+
IF:<{
|
|
1042
|
+
DROP
|
|
1043
|
+
NIP
|
|
1044
|
+
s2 s0 PUSH2
|
|
1045
|
+
cl::get<objRef> INLINECALLDICT
|
|
1046
|
+
cl::hash INLINECALLDICT
|
|
1047
|
+
s2 s1 PUSH2
|
|
1048
|
+
cl::get<objRef> INLINECALLDICT
|
|
1049
|
+
cl::hash INLINECALLDICT
|
|
1050
|
+
NEQ
|
|
1051
|
+
DUP
|
|
1052
|
+
IF:<{
|
|
1053
|
+
s3 s1 PUSH2
|
|
1054
|
+
cl::get<objRef> INLINECALLDICT
|
|
1055
|
+
HASHCU
|
|
1056
|
+
s0 DUMP
|
|
1057
|
+
DROP
|
|
1058
|
+
s2 s1 PUSH2
|
|
1059
|
+
cl::get<objRef> INLINECALLDICT
|
|
1060
|
+
HASHCU
|
|
1061
|
+
s0 DUMP
|
|
1062
|
+
DROP
|
|
1063
|
+
}>
|
|
1064
|
+
}>ELSE<{
|
|
1065
|
+
DUP
|
|
1066
|
+
9 LESSINT
|
|
1067
|
+
IF:<{
|
|
1068
|
+
1 2 BLKDROP2
|
|
1069
|
+
_getTypeWidth INLINECALLDICT
|
|
1070
|
+
s3 s1 s0 PUSH3
|
|
1071
|
+
cl::get<uint> INLINECALLDICT
|
|
1072
|
+
s3 s2 s1 PUSH3
|
|
1073
|
+
cl::get<uint> INLINECALLDICT
|
|
1074
|
+
NEQ
|
|
1075
|
+
DUP
|
|
1076
|
+
IF:<{
|
|
1077
|
+
x{6c68733a20} PUSHSLICE
|
|
1078
|
+
s5 s3 s2 PUSH3
|
|
1079
|
+
cl::get<uint> INLINECALLDICT
|
|
1080
|
+
str::console::log<int> CALLDICT
|
|
1081
|
+
2OVER
|
|
1082
|
+
x{7268733a20} PUSHSLICE
|
|
1083
|
+
s0 s4 XCHG
|
|
1084
|
+
cl::get<uint> INLINECALLDICT
|
|
1085
|
+
s1 s2 XCHG
|
|
1086
|
+
str::console::log<int> CALLDICT
|
|
1087
|
+
}>ELSE<{
|
|
1088
|
+
NIP
|
|
1089
|
+
}>
|
|
1090
|
+
}>ELSE<{
|
|
1091
|
+
2DROP
|
|
1092
|
+
16 PUSHINT
|
|
1093
|
+
SWAP
|
|
1094
|
+
}>
|
|
1095
|
+
}>
|
|
1096
|
+
DUP
|
|
1097
|
+
IFJMP:<{
|
|
1098
|
+
s1 s3 XCHG
|
|
1099
|
+
3 BLKDROP
|
|
1100
|
+
x{4d616c666f726d6564206669656c643a20} PUSHSLICE
|
|
1101
|
+
OVER
|
|
1102
|
+
str::console::log<int> CALLDICT
|
|
1103
|
+
RETALT
|
|
1104
|
+
}>
|
|
1105
|
+
SWAP
|
|
1106
|
+
INC
|
|
1107
|
+
}>
|
|
1108
|
+
4 BLKDROP
|
|
1109
|
+
-1 PUSHINT
|
|
1110
|
+
}>
|
|
1111
|
+
}>
|
|
1112
|
+
EXECUTE
|
|
1113
|
+
}>
|
|
1114
|
+
objectsAreEqual PROCINLINE:<{
|
|
1115
|
+
compareObjectFields INLINECALLDICT
|
|
1116
|
+
-1 EQINT
|
|
1117
|
+
}>
|
|
1118
|
+
_typeToStr PROC:<{
|
|
1119
|
+
DUP
|
|
1120
|
+
3 EQINT
|
|
1121
|
+
IFJMP:<{
|
|
1122
|
+
DROP
|
|
1123
|
+
x{75696e7438} PUSHSLICE
|
|
1124
|
+
}>
|
|
1125
|
+
DUP
|
|
1126
|
+
4 EQINT
|
|
1127
|
+
IFJMP:<{
|
|
1128
|
+
DROP
|
|
1129
|
+
x{75696e743136} PUSHSLICE
|
|
1130
|
+
}>
|
|
1131
|
+
DUP
|
|
1132
|
+
5 EQINT
|
|
1133
|
+
IFJMP:<{
|
|
1134
|
+
DROP
|
|
1135
|
+
x{75696e743332} PUSHSLICE
|
|
1136
|
+
}>
|
|
1137
|
+
DUP
|
|
1138
|
+
6 EQINT
|
|
1139
|
+
IFJMP:<{
|
|
1140
|
+
DROP
|
|
1141
|
+
x{75696e743634} PUSHSLICE
|
|
1142
|
+
}>
|
|
1143
|
+
DUP
|
|
1144
|
+
8 EQINT
|
|
1145
|
+
IFJMP:<{
|
|
1146
|
+
DROP
|
|
1147
|
+
x{75696e74323536} PUSHSLICE
|
|
1148
|
+
}>
|
|
1149
|
+
DUP
|
|
1150
|
+
7 EQINT
|
|
1151
|
+
IFJMP:<{
|
|
1152
|
+
DROP
|
|
1153
|
+
x{636f696e73} PUSHSLICE
|
|
1154
|
+
}>
|
|
1155
|
+
DUP
|
|
1156
|
+
8 EQINT
|
|
1157
|
+
IFJMP:<{
|
|
1158
|
+
DROP
|
|
1159
|
+
x{61646472657373} PUSHSLICE
|
|
1160
|
+
}>
|
|
1161
|
+
DUP
|
|
1162
|
+
9 EQINT
|
|
1163
|
+
IFJMP:<{
|
|
1164
|
+
DROP
|
|
1165
|
+
x{64696374323536} PUSHSLICE
|
|
1166
|
+
}>
|
|
1167
|
+
DUP
|
|
1168
|
+
9 EQINT
|
|
1169
|
+
IFJMP:<{
|
|
1170
|
+
DROP
|
|
1171
|
+
x{6f626a526566} PUSHSLICE
|
|
1172
|
+
}>
|
|
1173
|
+
DUP
|
|
1174
|
+
9 EQINT
|
|
1175
|
+
IFJMP:<{
|
|
1176
|
+
DROP
|
|
1177
|
+
x{63656c6c526566} PUSHSLICE
|
|
1178
|
+
}>
|
|
1179
|
+
0 EQINT
|
|
1180
|
+
IFJMP:<{
|
|
1181
|
+
x{626f6f6c} PUSHSLICE
|
|
1182
|
+
}>
|
|
1183
|
+
x{756e6b6e6f776e} PUSHSLICE
|
|
1184
|
+
}>
|
|
1185
|
+
printField PROCINLINE:<{
|
|
1186
|
+
OVER
|
|
1187
|
+
CTOS
|
|
1188
|
+
s2 s1 PUSH2
|
|
1189
|
+
typeofField INLINECALLDICT
|
|
1190
|
+
s2 PUSH
|
|
1191
|
+
18 MULCONST
|
|
1192
|
+
80 ADDCONST
|
|
1193
|
+
DUP
|
|
1194
|
+
4 ADDCONST
|
|
1195
|
+
s3 s(-1) PUXC
|
|
1196
|
+
2 PUSHINT
|
|
1197
|
+
SDSUBSTR
|
|
1198
|
+
2 PLDU
|
|
1199
|
+
OVER
|
|
1200
|
+
4 ADDCONST
|
|
1201
|
+
2 ADDCONST
|
|
1202
|
+
10 ADDCONST
|
|
1203
|
+
s4 s(-1) PUXC
|
|
1204
|
+
2 PUSHINT
|
|
1205
|
+
SDSUBSTR
|
|
1206
|
+
2 PLDU
|
|
1207
|
+
s3 PUSH
|
|
1208
|
+
_getTypeWidth INLINECALLDICT
|
|
1209
|
+
s0 s3 XCHG
|
|
1210
|
+
4 ADDCONST
|
|
1211
|
+
2 ADDCONST
|
|
1212
|
+
s1 s5 XCHG
|
|
1213
|
+
10 PUSHINT
|
|
1214
|
+
SDSUBSTR
|
|
1215
|
+
10 PLDU
|
|
1216
|
+
s3 PUSH
|
|
1217
|
+
_typeToStr CALLDICT
|
|
1218
|
+
x{20} PUSHSLICE
|
|
1219
|
+
str::concat CALLDICT
|
|
1220
|
+
s6 PUSH
|
|
1221
|
+
str::concatInt CALLDICT
|
|
1222
|
+
x{2061742063} PUSHSLICE
|
|
1223
|
+
str::concat CALLDICT
|
|
1224
|
+
ROT
|
|
1225
|
+
str::concatInt CALLDICT
|
|
1226
|
+
s2 PUSH
|
|
1227
|
+
0 GTINT
|
|
1228
|
+
IF:<{
|
|
1229
|
+
s4 POP
|
|
1230
|
+
s0 s3 XCHG
|
|
1231
|
+
x{2e62} PUSHSLICE
|
|
1232
|
+
str::concat CALLDICT
|
|
1233
|
+
s0 s3 XCHG2
|
|
1234
|
+
str::concatInt CALLDICT
|
|
1235
|
+
}>ELSE<{
|
|
1236
|
+
NIP
|
|
1237
|
+
x{2e72} PUSHSLICE
|
|
1238
|
+
str::concat CALLDICT
|
|
1239
|
+
s0 s3 XCHG2
|
|
1240
|
+
str::concatInt CALLDICT
|
|
1241
|
+
}>
|
|
1242
|
+
OVER
|
|
1243
|
+
9 LESSINT
|
|
1244
|
+
IF:<{
|
|
1245
|
+
NIP
|
|
1246
|
+
x{203d20} PUSHSLICE
|
|
1247
|
+
str::concat CALLDICT
|
|
1248
|
+
3 -ROLL
|
|
1249
|
+
cl::get<uint> INLINECALLDICT
|
|
1250
|
+
str::concatInt CALLDICT
|
|
1251
|
+
STRDUMP
|
|
1252
|
+
DROP
|
|
1253
|
+
}>ELSE<{
|
|
1254
|
+
s2 POP
|
|
1255
|
+
9 EQINT
|
|
1256
|
+
IF:<{
|
|
1257
|
+
x{2068617368203d20} PUSHSLICE
|
|
1258
|
+
str::concat CALLDICT
|
|
1259
|
+
-ROT
|
|
1260
|
+
cl::get<objRef> INLINECALLDICT
|
|
1261
|
+
cl::hash INLINECALLDICT
|
|
1262
|
+
str::concatInt CALLDICT
|
|
1263
|
+
STRDUMP
|
|
1264
|
+
DROP
|
|
1265
|
+
}>ELSE<{
|
|
1266
|
+
x{2068617368203d20} PUSHSLICE
|
|
1267
|
+
str::concat CALLDICT
|
|
1268
|
+
-ROT
|
|
1269
|
+
cl::get<cellRef> INLINECALLDICT
|
|
1270
|
+
HASHCU
|
|
1271
|
+
str::concatInt CALLDICT
|
|
1272
|
+
STRDUMP
|
|
1273
|
+
DROP
|
|
1274
|
+
}>
|
|
1275
|
+
}>
|
|
1276
|
+
}>
|
|
1277
|
+
uint256ToSlice PROCINLINE:<{
|
|
1278
|
+
NEWC
|
|
1279
|
+
256 STU
|
|
1280
|
+
ENDC CTOS
|
|
1281
|
+
}>
|
|
1282
|
+
sliceToUint256 PROCINLINE:<{
|
|
1283
|
+
256 PLDU
|
|
1284
|
+
}>
|
|
1285
|
+
cl::dict256::New PROCINLINE:<{
|
|
1286
|
+
<b b> PUSHREF
|
|
1287
|
+
}>
|
|
1288
|
+
cl::dict256::get PROCINLINE:<{
|
|
1289
|
+
OVER
|
|
1290
|
+
cell_is_empty INLINECALLDICT
|
|
1291
|
+
IF:<{
|
|
1292
|
+
NIP
|
|
1293
|
+
NEWDICT
|
|
1294
|
+
8 PUSHPOW2
|
|
1295
|
+
DICTUGET
|
|
1296
|
+
NULLSWAPIFNOT
|
|
1297
|
+
}>ELSE<{
|
|
1298
|
+
SWAP
|
|
1299
|
+
8 PUSHPOW2
|
|
1300
|
+
DICTUGET
|
|
1301
|
+
NULLSWAPIFNOT
|
|
1302
|
+
}>
|
|
1303
|
+
}>
|
|
1304
|
+
cl::dict256::get<uint256> PROCINLINE:<{
|
|
1305
|
+
cl::dict256::get INLINECALLDICT
|
|
1306
|
+
IF:<{
|
|
1307
|
+
sliceToUint256 INLINECALLDICT
|
|
1308
|
+
TRUE
|
|
1309
|
+
}>ELSE<{
|
|
1310
|
+
DROP
|
|
1311
|
+
0 PUSHINT
|
|
1312
|
+
FALSE
|
|
1313
|
+
}>
|
|
1314
|
+
}>
|
|
1315
|
+
cl::dict256::get<cellRef> PROCINLINE:<{
|
|
1316
|
+
OVER
|
|
1317
|
+
cell_is_empty INLINECALLDICT
|
|
1318
|
+
IF:<{
|
|
1319
|
+
2DROP
|
|
1320
|
+
<b b> PUSHREF
|
|
1321
|
+
FALSE
|
|
1322
|
+
}>ELSE<{
|
|
1323
|
+
SWAP
|
|
1324
|
+
8 PUSHPOW2
|
|
1325
|
+
DICTUGETREF
|
|
1326
|
+
NULLSWAPIFNOT
|
|
1327
|
+
}>
|
|
1328
|
+
}>
|
|
1329
|
+
cl::dict256::setRef PROCINLINE:<{
|
|
1330
|
+
s2 PUSH
|
|
1331
|
+
cell_is_empty INLINECALLDICT
|
|
1332
|
+
IF:<{
|
|
1333
|
+
1 2 BLKDROP2
|
|
1334
|
+
NEWDICT
|
|
1335
|
+
s1 s2 XCHG
|
|
1336
|
+
8 PUSHPOW2
|
|
1337
|
+
DICTUSETREF
|
|
1338
|
+
}>ELSE<{
|
|
1339
|
+
s0 s2 XCHG
|
|
1340
|
+
8 PUSHPOW2
|
|
1341
|
+
DICTUSETREF
|
|
1342
|
+
}>
|
|
1343
|
+
}>
|
|
1344
|
+
cl::dict256::set PROCINLINE:<{
|
|
1345
|
+
DUP
|
|
1346
|
+
<{ TRY:<{ SBITS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
|
|
1347
|
+
IF:<{
|
|
1348
|
+
}>ELSE<{
|
|
1349
|
+
uint256ToSlice INLINECALLDICT
|
|
1350
|
+
}>
|
|
1351
|
+
s2 PUSH
|
|
1352
|
+
cell_is_empty INLINECALLDICT
|
|
1353
|
+
IF:<{
|
|
1354
|
+
s2 POP
|
|
1355
|
+
NEWDICT
|
|
1356
|
+
8 PUSHPOW2
|
|
1357
|
+
DICTUSET
|
|
1358
|
+
}>ELSE<{
|
|
1359
|
+
s0 s2 XCHG
|
|
1360
|
+
8 PUSHPOW2
|
|
1361
|
+
DICTUSET
|
|
1362
|
+
}>
|
|
1363
|
+
}>
|
|
1364
|
+
cl::dict256::delete PROC:<{
|
|
1365
|
+
OVER
|
|
1366
|
+
cell_is_empty INLINECALLDICT
|
|
1367
|
+
IFJMP:<{
|
|
1368
|
+
DROP
|
|
1369
|
+
}>
|
|
1370
|
+
SWAP
|
|
1371
|
+
8 PUSHPOW2
|
|
1372
|
+
DICTUDEL
|
|
1373
|
+
DROP
|
|
1374
|
+
DUP
|
|
1375
|
+
<{ TRY:<{ CTOS DROP -1 PUSHINT }>CATCH<{ 2DROP 0 PUSHINT }> }>CONT 1 1 CALLXARGS
|
|
1376
|
+
IF:<{
|
|
1377
|
+
}>ELSE<{
|
|
1378
|
+
DROP
|
|
1379
|
+
cl::dict256::New INLINECALLDICT
|
|
1380
|
+
}>
|
|
1381
|
+
}>
|
|
1382
|
+
cl::dict256::getMin<slice> PROC:<{
|
|
1383
|
+
DUP
|
|
1384
|
+
cell_is_empty INLINECALLDICT
|
|
1385
|
+
IFJMP:<{
|
|
1386
|
+
DROP
|
|
1387
|
+
-1 PUSHINT
|
|
1388
|
+
PUSHNULL
|
|
1389
|
+
}>
|
|
1390
|
+
8 PUSHPOW2
|
|
1391
|
+
DICTUMIN
|
|
1392
|
+
NULLSWAPIFNOT2
|
|
1393
|
+
IFJMP:<{
|
|
1394
|
+
SWAP
|
|
1395
|
+
}>
|
|
1396
|
+
2DROP
|
|
1397
|
+
-1 PUSHINT
|
|
1398
|
+
PUSHNULL
|
|
1399
|
+
}>
|
|
1400
|
+
cl::dict256::getMin<uint256> PROC:<{
|
|
1401
|
+
DUP
|
|
1402
|
+
cell_is_empty INLINECALLDICT
|
|
1403
|
+
IFJMP:<{
|
|
1404
|
+
DROP
|
|
1405
|
+
-1 PUSHINT
|
|
1406
|
+
PUSHNULL
|
|
1407
|
+
}>
|
|
1408
|
+
8 PUSHPOW2
|
|
1409
|
+
DICTUMIN
|
|
1410
|
+
NULLSWAPIFNOT2
|
|
1411
|
+
IFJMP:<{
|
|
1412
|
+
SWAP
|
|
1413
|
+
256 PLDU
|
|
1414
|
+
}>
|
|
1415
|
+
2DROP
|
|
1416
|
+
-1 PUSHINT
|
|
1417
|
+
PUSHNULL
|
|
1418
|
+
}>
|
|
1419
|
+
cl::dict256::getMin<cellRef> PROC:<{
|
|
1420
|
+
DUP
|
|
1421
|
+
cell_is_empty INLINECALLDICT
|
|
1422
|
+
IFJMP:<{
|
|
1423
|
+
DROP
|
|
1424
|
+
-1 PUSHINT
|
|
1425
|
+
PUSHNULL
|
|
1426
|
+
}>
|
|
1427
|
+
8 PUSHPOW2
|
|
1428
|
+
DICTUMINREF
|
|
1429
|
+
NULLSWAPIFNOT2
|
|
1430
|
+
IFJMP:<{
|
|
1431
|
+
SWAP
|
|
1432
|
+
}>
|
|
1433
|
+
2DROP
|
|
1434
|
+
-1 PUSHINT
|
|
1435
|
+
PUSHNULL
|
|
1436
|
+
}>
|
|
1437
|
+
cl::dict256::getNext<slice> PROC:<{
|
|
1438
|
+
OVER
|
|
1439
|
+
cell_is_empty INLINECALLDICT
|
|
1440
|
+
IFJMP:<{
|
|
1441
|
+
2DROP
|
|
1442
|
+
-1 PUSHINT
|
|
1443
|
+
PUSHNULL
|
|
1444
|
+
}>
|
|
1445
|
+
SWAP
|
|
1446
|
+
8 PUSHPOW2
|
|
1447
|
+
DICTUGETNEXT
|
|
1448
|
+
NULLSWAPIFNOT2
|
|
1449
|
+
IFJMP:<{
|
|
1450
|
+
SWAP
|
|
1451
|
+
}>
|
|
1452
|
+
2DROP
|
|
1453
|
+
-1 PUSHINT
|
|
1454
|
+
PUSHNULL
|
|
1455
|
+
}>
|
|
1456
|
+
cl::dict256::getNext<uint256> PROC:<{
|
|
1457
|
+
OVER
|
|
1458
|
+
cell_is_empty INLINECALLDICT
|
|
1459
|
+
IFJMP:<{
|
|
1460
|
+
2DROP
|
|
1461
|
+
-1 PUSHINT
|
|
1462
|
+
PUSHNULL
|
|
1463
|
+
}>
|
|
1464
|
+
SWAP
|
|
1465
|
+
8 PUSHPOW2
|
|
1466
|
+
DICTUGETNEXT
|
|
1467
|
+
NULLSWAPIFNOT2
|
|
1468
|
+
IFJMP:<{
|
|
1469
|
+
SWAP
|
|
1470
|
+
256 PLDU
|
|
1471
|
+
}>
|
|
1472
|
+
2DROP
|
|
1473
|
+
-1 PUSHINT
|
|
1474
|
+
PUSHNULL
|
|
1475
|
+
}>
|
|
1476
|
+
cl::dict256::getNext<cellRef> PROC:<{
|
|
1477
|
+
OVER
|
|
1478
|
+
cell_is_empty INLINECALLDICT
|
|
1479
|
+
IFJMP:<{
|
|
1480
|
+
2DROP
|
|
1481
|
+
-1 PUSHINT
|
|
1482
|
+
PUSHNULL
|
|
1483
|
+
}>
|
|
1484
|
+
SWAP
|
|
1485
|
+
8 PUSHPOW2
|
|
1486
|
+
DICTUGETNEXT
|
|
1487
|
+
NULLSWAPIFNOT2
|
|
1488
|
+
IFJMP:<{
|
|
1489
|
+
SWAP
|
|
1490
|
+
0 PLDREFIDX
|
|
1491
|
+
}>
|
|
1492
|
+
2DROP
|
|
1493
|
+
-1 PUSHINT
|
|
1494
|
+
PUSHNULL
|
|
1495
|
+
}>
|
|
1496
|
+
cl::dict256::size PROCINLINE:<{
|
|
1497
|
+
0 PUSHINT
|
|
1498
|
+
OVER
|
|
1499
|
+
cl::dict256::getMin<slice> CALLDICT
|
|
1500
|
+
DROP
|
|
1501
|
+
WHILE:<{
|
|
1502
|
+
DUP
|
|
1503
|
+
-1 GTINT
|
|
1504
|
+
}>DO<{
|
|
1505
|
+
s2 s(-1) PUXC
|
|
1506
|
+
cl::dict256::getNext<slice> CALLDICT
|
|
1507
|
+
DROP
|
|
1508
|
+
SWAP
|
|
1509
|
+
INC
|
|
1510
|
+
SWAP
|
|
1511
|
+
}>
|
|
1512
|
+
DROP
|
|
1513
|
+
NIP
|
|
1514
|
+
}>
|
|
1515
|
+
cl::nestedDict256::set PROCINLINE:<{
|
|
1516
|
+
2OVER
|
|
1517
|
+
cl::get<dict256> INLINECALLDICT
|
|
1518
|
+
-ROT
|
|
1519
|
+
cl::dict256::set INLINECALLDICT
|
|
1520
|
+
cl::set INLINECALLDICT
|
|
1521
|
+
}>
|
|
1522
|
+
cl::nestedDict256::setRef PROCINLINE:<{
|
|
1523
|
+
2OVER
|
|
1524
|
+
cl::get<dict256> INLINECALLDICT
|
|
1525
|
+
-ROT
|
|
1526
|
+
cl::dict256::setRef INLINECALLDICT
|
|
1527
|
+
cl::set INLINECALLDICT
|
|
1528
|
+
}>
|
|
1529
|
+
cl::nestedDict256::delete PROCINLINE:<{
|
|
1530
|
+
s2 s1 PUSH2
|
|
1531
|
+
cl::get<dict256> INLINECALLDICT
|
|
1532
|
+
SWAP
|
|
1533
|
+
cl::dict256::delete CALLDICT
|
|
1534
|
+
cl::set INLINECALLDICT
|
|
1535
|
+
}>
|
|
1536
|
+
cl::nestedDict256::get<uint256> PROCINLINE:<{
|
|
1537
|
+
-ROT
|
|
1538
|
+
cl::get<dict256> INLINECALLDICT
|
|
1539
|
+
SWAP
|
|
1540
|
+
cl::dict256::get<uint256> INLINECALLDICT
|
|
1541
|
+
}>
|
|
1542
|
+
cl::nestedDict256::get<slice> PROCINLINE:<{
|
|
1543
|
+
-ROT
|
|
1544
|
+
cl::get<dict256> INLINECALLDICT
|
|
1545
|
+
SWAP
|
|
1546
|
+
cl::dict256::get INLINECALLDICT
|
|
1547
|
+
}>
|
|
1548
|
+
cl::nestedDict256::get<cellRef> PROCINLINE:<{
|
|
1549
|
+
-ROT
|
|
1550
|
+
cl::get<dict256> INLINECALLDICT
|
|
1551
|
+
SWAP
|
|
1552
|
+
cl::dict256::get INLINECALLDICT
|
|
1553
|
+
DUP
|
|
1554
|
+
IF:<{
|
|
1555
|
+
SWAP
|
|
1556
|
+
0 PLDREFIDX
|
|
1557
|
+
SWAP
|
|
1558
|
+
}>ELSE<{
|
|
1559
|
+
NIP
|
|
1560
|
+
<b b> PUSHREF
|
|
1561
|
+
SWAP
|
|
1562
|
+
}>
|
|
1563
|
+
}>
|
|
1564
|
+
getMsgValue PROCINLINE:<{
|
|
1565
|
+
txnContext GETGLOB
|
|
1566
|
+
6 INDEX
|
|
1567
|
+
}>
|
|
1568
|
+
getOpcode PROCINLINE:<{
|
|
1569
|
+
txnContext GETGLOB
|
|
1570
|
+
3 INDEX
|
|
1571
|
+
}>
|
|
1572
|
+
txnIsBounced PROCINLINE:<{
|
|
1573
|
+
txnContext GETGLOB
|
|
1574
|
+
0 INDEX
|
|
1575
|
+
}>
|
|
1576
|
+
getContractBalance PROCINLINE:<{
|
|
1577
|
+
txnContext GETGLOB
|
|
1578
|
+
5 INDEX
|
|
1579
|
+
}>
|
|
1580
|
+
getInitialContractBalance PROCINLINE:<{
|
|
1581
|
+
getContractBalance INLINECALLDICT
|
|
1582
|
+
getMsgValue INLINECALLDICT
|
|
1583
|
+
SUB
|
|
1584
|
+
}>
|
|
1585
|
+
getCaller PROCINLINE:<{
|
|
1586
|
+
txnContext GETGLOB
|
|
1587
|
+
1 INDEX
|
|
1588
|
+
}>
|
|
1589
|
+
getOrigin PROCINLINE:<{
|
|
1590
|
+
txnContext GETGLOB
|
|
1591
|
+
9 INDEX
|
|
1592
|
+
}>
|
|
1593
|
+
getOriginStd PROCINLINE:<{
|
|
1594
|
+
getOrigin INLINECALLDICT
|
|
1595
|
+
hashpartToBasechainAddressStd INLINECALLDICT
|
|
1596
|
+
}>
|
|
1597
|
+
getDonationNanos PROCINLINE:<{
|
|
1598
|
+
txnContext GETGLOB
|
|
1599
|
+
10 INDEX
|
|
1600
|
+
}>
|
|
1601
|
+
setDonationNanos PROCINLINE:<{
|
|
1602
|
+
txnContext GETGLOB
|
|
1603
|
+
SWAP
|
|
1604
|
+
10 PUSHINT
|
|
1605
|
+
SETINDEXVAR
|
|
1606
|
+
txnContext SETGLOB
|
|
1607
|
+
}>
|
|
1608
|
+
getMsgData PROCINLINE:<{
|
|
1609
|
+
txnContext GETGLOB
|
|
1610
|
+
11 INDEX
|
|
1611
|
+
}>
|
|
1612
|
+
setOrigin PROCINLINE:<{
|
|
1613
|
+
txnContext GETGLOB
|
|
1614
|
+
SWAP
|
|
1615
|
+
9 PUSHINT
|
|
1616
|
+
SETINDEXVAR
|
|
1617
|
+
txnContext SETGLOB
|
|
1618
|
+
}>
|
|
1619
|
+
initTxnContext PROCINLINE:<{
|
|
1620
|
+
OVER
|
|
1621
|
+
CTOS
|
|
1622
|
+
4 PUSHINT
|
|
1623
|
+
LDUX
|
|
1624
|
+
FALSE
|
|
1625
|
+
s0 s2 XCHG
|
|
1626
|
+
1 PUSHINT
|
|
1627
|
+
AND
|
|
1628
|
+
IF:<{
|
|
1629
|
+
NIP
|
|
1630
|
+
TRUE
|
|
1631
|
+
s0 s2 XCHG
|
|
1632
|
+
32 PUSHINT
|
|
1633
|
+
SDSKIPFIRST
|
|
1634
|
+
-ROT
|
|
1635
|
+
}>
|
|
1636
|
+
-1 PUSHINT
|
|
1637
|
+
DUP
|
|
1638
|
+
0 PUSHINT
|
|
1639
|
+
PUSHNULL
|
|
1640
|
+
s0 s4 XCHG
|
|
1641
|
+
LDMSGADDR
|
|
1642
|
+
LDMSGADDR
|
|
1643
|
+
NIP
|
|
1644
|
+
LDGRAMS
|
|
1645
|
+
NIP
|
|
1646
|
+
1 PUSHINT
|
|
1647
|
+
SDSKIPFIRST
|
|
1648
|
+
LDGRAMS
|
|
1649
|
+
NIP
|
|
1650
|
+
SWAP
|
|
1651
|
+
basechainAddressStdToHashpart INLINECALLDICT
|
|
1652
|
+
s0 s7 PUSH2
|
|
1653
|
+
SEMPTY
|
|
1654
|
+
IFNOT:<{
|
|
1655
|
+
3 3 BLKDROP2
|
|
1656
|
+
s0 s5 XCHG
|
|
1657
|
+
32 PUSHINT
|
|
1658
|
+
LDUX
|
|
1659
|
+
64 PUSHINT
|
|
1660
|
+
LDUX
|
|
1661
|
+
LDGRAMS
|
|
1662
|
+
DUP
|
|
1663
|
+
SBITS
|
|
1664
|
+
267 PUSHINT
|
|
1665
|
+
GEQ
|
|
1666
|
+
IF:<{
|
|
1667
|
+
s8 POP
|
|
1668
|
+
s7 PUSH
|
|
1669
|
+
11 PUSHINT
|
|
1670
|
+
8 PUSHPOW2
|
|
1671
|
+
SDSUBSTR
|
|
1672
|
+
256 PLDU
|
|
1673
|
+
s0 s8 XCHG
|
|
1674
|
+
}>
|
|
1675
|
+
DUP
|
|
1676
|
+
SREMPTY
|
|
1677
|
+
IFNOT:<{
|
|
1678
|
+
s6 POP
|
|
1679
|
+
s5 PUSH
|
|
1680
|
+
PLDREF
|
|
1681
|
+
s0 s6 XCHG
|
|
1682
|
+
}>
|
|
1683
|
+
s0 s8 XCHG
|
|
1684
|
+
s3 s5 XCHG
|
|
1685
|
+
s4 s3 s0 XCHG3
|
|
1686
|
+
s1 s2 XCHG
|
|
1687
|
+
}>
|
|
1688
|
+
s0 s2 XCHG
|
|
1689
|
+
LDGRAMS
|
|
1690
|
+
DROP
|
|
1691
|
+
3 PUSHINT
|
|
1692
|
+
1 MULRSHIFT#
|
|
1693
|
+
s7 s11 XCHG
|
|
1694
|
+
s10 s9 XCHG2
|
|
1695
|
+
s5 s8 XCHG
|
|
1696
|
+
s4 s7 XCHG
|
|
1697
|
+
s4 s6 XCHG
|
|
1698
|
+
s3 s3 XCHG2
|
|
1699
|
+
s0 s5 XCHG
|
|
1700
|
+
s0 s4 XCHG
|
|
1701
|
+
12 TUPLE
|
|
1702
|
+
txnContext SETGLOB
|
|
1703
|
+
}>
|
|
1704
|
+
_testName PROC:<{
|
|
1705
|
+
x{504f4f4f} PUSHSLICE
|
|
1706
|
+
}>
|
|
1707
|
+
baseTest::getTests PROC:<{
|
|
1708
|
+
NIL
|
|
1709
|
+
CONT:<{
|
|
1710
|
+
POOO::setBitOne CALLDICT
|
|
1711
|
+
}>
|
|
1712
|
+
x{504f4f4f3a3a7365744269744f6e65} PUSHSLICE
|
|
1713
|
+
PAIR
|
|
1714
|
+
TPUSH
|
|
1715
|
+
CONT:<{
|
|
1716
|
+
POOO::setBitTwo CALLDICT
|
|
1717
|
+
}>
|
|
1718
|
+
x{504f4f4f3a3a73657442697454776f} PUSHSLICE
|
|
1719
|
+
PAIR
|
|
1720
|
+
TPUSH
|
|
1721
|
+
CONT:<{
|
|
1722
|
+
POOO::8bitOrdered CALLDICT
|
|
1723
|
+
}>
|
|
1724
|
+
x{504f4f4f3a3a386269744f726465726564} PUSHSLICE
|
|
1725
|
+
PAIR
|
|
1726
|
+
TPUSH
|
|
1727
|
+
CONT:<{
|
|
1728
|
+
POOO::8bitUnordered CALLDICT
|
|
1729
|
+
}>
|
|
1730
|
+
x{504f4f4f3a3a38626974556e6f726465726564} PUSHSLICE
|
|
1731
|
+
PAIR
|
|
1732
|
+
TPUSH
|
|
1733
|
+
CONT:<{
|
|
1734
|
+
POOO::lastBit CALLDICT
|
|
1735
|
+
}>
|
|
1736
|
+
x{504f4f4f3a3a6c617374426974} PUSHSLICE
|
|
1737
|
+
PAIR
|
|
1738
|
+
TPUSH
|
|
1739
|
+
CONT:<{
|
|
1740
|
+
POOO::revert::pastLastBit CALLDICT
|
|
1741
|
+
}>
|
|
1742
|
+
x{504f4f4f3a3a7265766572743a3a706173744c617374426974} PUSHSLICE
|
|
1743
|
+
PAIR
|
|
1744
|
+
TPUSH
|
|
1745
|
+
CONT:<{
|
|
1746
|
+
POOO::indexZero CALLDICT
|
|
1747
|
+
}>
|
|
1748
|
+
x{504f4f4f3a3a696e6465785a65726f} PUSHSLICE
|
|
1749
|
+
PAIR
|
|
1750
|
+
TPUSH
|
|
1751
|
+
CONT:<{
|
|
1752
|
+
POOO::wrapsAtEnd CALLDICT
|
|
1753
|
+
}>
|
|
1754
|
+
x{504f4f4f3a3a77726170734174456e64} PUSHSLICE
|
|
1755
|
+
PAIR
|
|
1756
|
+
TPUSH
|
|
1757
|
+
CONT:<{
|
|
1758
|
+
POOO::negativeInput CALLDICT
|
|
1759
|
+
}>
|
|
1760
|
+
x{504f4f4f3a3a6e65676174697665496e707574} PUSHSLICE
|
|
1761
|
+
PAIR
|
|
1762
|
+
TPUSH
|
|
1763
|
+
}>
|
|
1764
|
+
baseTest::prepare PROCINLINE:<{
|
|
1765
|
+
DROP
|
|
1766
|
+
cl::nullObject INLINECALLDICT
|
|
1767
|
+
}>
|
|
1768
|
+
emitDone PROCINLINE:<{
|
|
1769
|
+
0 PUSHINT
|
|
1770
|
+
1 PUSHINT
|
|
1771
|
+
8 PUSHPOW2
|
|
1772
|
+
OVER
|
|
1773
|
+
12 PUSHINT
|
|
1774
|
+
NEWC
|
|
1775
|
+
4 STU
|
|
1776
|
+
2 STU
|
|
1777
|
+
9 STU
|
|
1778
|
+
256 STU
|
|
1779
|
+
98 STU
|
|
1780
|
+
ENDC
|
|
1781
|
+
0 PUSHINT
|
|
1782
|
+
SENDRAWMSG
|
|
1783
|
+
}>
|
|
1784
|
+
test::throwError PROC:<{
|
|
1785
|
+
_testName CALLDICT
|
|
1786
|
+
x{3a20} PUSHSLICE
|
|
1787
|
+
str::concat CALLDICT
|
|
1788
|
+
base_error_msg GETGLOB
|
|
1789
|
+
str::concat CALLDICT
|
|
1790
|
+
x{3a20} PUSHSLICE
|
|
1791
|
+
str::concat CALLDICT
|
|
1792
|
+
OVER
|
|
1793
|
+
str::concat CALLDICT
|
|
1794
|
+
STRDUMP
|
|
1795
|
+
DROP
|
|
1796
|
+
_testName CALLDICT
|
|
1797
|
+
x{3a20} PUSHSLICE
|
|
1798
|
+
str::concat CALLDICT
|
|
1799
|
+
base_error_msg GETGLOB
|
|
1800
|
+
str::concat CALLDICT
|
|
1801
|
+
x{3a20} PUSHSLICE
|
|
1802
|
+
str::concat CALLDICT
|
|
1803
|
+
SWAP
|
|
1804
|
+
str::concat CALLDICT
|
|
1805
|
+
throwError INLINECALLDICT
|
|
1806
|
+
}>
|
|
1807
|
+
test::throwErrorUnless PROC:<{
|
|
1808
|
+
SWAP
|
|
1809
|
+
IFNOT:<{
|
|
1810
|
+
test::throwError CALLDICT
|
|
1811
|
+
}>ELSE<{
|
|
1812
|
+
DROP
|
|
1813
|
+
}>
|
|
1814
|
+
}>
|
|
1815
|
+
get_test_name PROC:<{
|
|
1816
|
+
baseTest::getTests CALLDICT
|
|
1817
|
+
SWAP
|
|
1818
|
+
INDEXVAR
|
|
1819
|
+
1 INDEX
|
|
1820
|
+
}>
|
|
1821
|
+
setCaller PROCINLINE:<{
|
|
1822
|
+
txnContext GETGLOB
|
|
1823
|
+
SWAP
|
|
1824
|
+
1 PUSHINT
|
|
1825
|
+
SETINDEXVAR
|
|
1826
|
+
txnContext SETGLOB
|
|
1827
|
+
}>
|
|
1828
|
+
setContractBalance PROCINLINE:<{
|
|
1829
|
+
txnContext GETGLOB
|
|
1830
|
+
SWAP
|
|
1831
|
+
5 PUSHINT
|
|
1832
|
+
SETINDEXVAR
|
|
1833
|
+
txnContext SETGLOB
|
|
1834
|
+
}>
|
|
1835
|
+
setNewTime PROC:<{
|
|
1836
|
+
c7 PUSH
|
|
1837
|
+
DUP
|
|
1838
|
+
0 INDEX
|
|
1839
|
+
ROT
|
|
1840
|
+
3 PUSHINT
|
|
1841
|
+
SETINDEXVAR
|
|
1842
|
+
0 PUSHINT
|
|
1843
|
+
SETINDEXVAR
|
|
1844
|
+
c7 POP
|
|
1845
|
+
}>
|
|
1846
|
+
main PROC:<{
|
|
1847
|
+
DUP
|
|
1848
|
+
SEMPTY
|
|
1849
|
+
IFJMP:<{
|
|
1850
|
+
4 BLKDROP
|
|
1851
|
+
}>
|
|
1852
|
+
initTxnContext INLINECALLDICT
|
|
1853
|
+
x{626173655f6572726f725f6d7367204e4f54207365742e2e2e20} PUSHSLICE
|
|
1854
|
+
base_error_msg SETGLOB
|
|
1855
|
+
getOpcode INLINECALLDICT
|
|
1856
|
+
getOrigin INLINECALLDICT
|
|
1857
|
+
setCaller INLINECALLDICT
|
|
1858
|
+
baseTest::getTests CALLDICT
|
|
1859
|
+
DUP
|
|
1860
|
+
TLEN
|
|
1861
|
+
s2 s(-1) PUXC
|
|
1862
|
+
GEQ
|
|
1863
|
+
IF:<{
|
|
1864
|
+
2DROP
|
|
1865
|
+
emitDone INLINECALLDICT
|
|
1866
|
+
}>ELSE<{
|
|
1867
|
+
SWAP
|
|
1868
|
+
INDEXVAR
|
|
1869
|
+
DUP
|
|
1870
|
+
0 INDEX
|
|
1871
|
+
OVER
|
|
1872
|
+
1 INDEX
|
|
1873
|
+
base_error_msg SETGLOB
|
|
1874
|
+
SWAP
|
|
1875
|
+
baseTest::prepare INLINECALLDICT
|
|
1876
|
+
getContractStorage INLINECALLDICT
|
|
1877
|
+
s0 s2 XCHG
|
|
1878
|
+
1 2 CALLXARGS
|
|
1879
|
+
s0 s2 XCHG
|
|
1880
|
+
setContractStorage INLINECALLDICT
|
|
1881
|
+
-1 EQINT
|
|
1882
|
+
SWAP
|
|
1883
|
+
test::throwErrorUnless CALLDICT
|
|
1884
|
+
}>
|
|
1885
|
+
}>
|
|
1886
|
+
test::shouldBeTrue PROC:<{
|
|
1887
|
+
IFJMP:<{
|
|
1888
|
+
-1 PUSHINT
|
|
1889
|
+
x{} PUSHSLICE
|
|
1890
|
+
}>
|
|
1891
|
+
0 PUSHINT
|
|
1892
|
+
x{746573743a3a73686f756c64426554727565} PUSHSLICE
|
|
1893
|
+
}>
|
|
1894
|
+
test::shouldBeFalse PROC:<{
|
|
1895
|
+
0 EQINT
|
|
1896
|
+
test::shouldBeTrue CALLDICT
|
|
1897
|
+
}>
|
|
1898
|
+
POOO::set PROCINLINE:<{
|
|
1899
|
+
DUP
|
|
1900
|
+
0 LESSINT
|
|
1901
|
+
1587 THROWIF
|
|
1902
|
+
OVER
|
|
1903
|
+
1 PUSHINT
|
|
1904
|
+
cl::get<cellRef> INLINECALLDICT
|
|
1905
|
+
CTOS
|
|
1906
|
+
s2 PUSH
|
|
1907
|
+
0 PUSHINT
|
|
1908
|
+
cl::get<uint64> INLINECALLDICT
|
|
1909
|
+
s2 s0 PUSH2
|
|
1910
|
+
LESS
|
|
1911
|
+
IF:<{
|
|
1912
|
+
3 BLKDROP
|
|
1913
|
+
}>ELSE<{
|
|
1914
|
+
s2 s2 XCPU
|
|
1915
|
+
SUB
|
|
1916
|
+
1 PUSHINT
|
|
1917
|
+
NEWC
|
|
1918
|
+
2OVER
|
|
1919
|
+
0 PUSHINT
|
|
1920
|
+
SCUTFIRST
|
|
1921
|
+
STSLICER
|
|
1922
|
+
1 STU
|
|
1923
|
+
10 PUSHPOW2DEC
|
|
1924
|
+
ROT
|
|
1925
|
+
SUB
|
|
1926
|
+
DEC
|
|
1927
|
+
s1 s2 XCHG
|
|
1928
|
+
0 PUSHINT
|
|
1929
|
+
SCUTLAST
|
|
1930
|
+
STSLICER
|
|
1931
|
+
ENDC CTOS
|
|
1932
|
+
LDONES
|
|
1933
|
+
1 PUSHINT
|
|
1934
|
+
NEWC
|
|
1935
|
+
ROT
|
|
1936
|
+
STSLICER
|
|
1937
|
+
s2 PUSH
|
|
1938
|
+
STZEROES
|
|
1939
|
+
ENDC
|
|
1940
|
+
s2 s4 XCHG
|
|
1941
|
+
cl::set INLINECALLDICT
|
|
1942
|
+
SWAP
|
|
1943
|
+
0 PUSHINT
|
|
1944
|
+
s0 s3 XCHG
|
|
1945
|
+
ADD
|
|
1946
|
+
s1 s2 XCHG
|
|
1947
|
+
cl::set INLINECALLDICT
|
|
1948
|
+
}>
|
|
1949
|
+
}>
|
|
1950
|
+
POOO::New PROCINLINE:<{
|
|
1951
|
+
1347374927 PUSHINT
|
|
1952
|
+
6 PUSHINT
|
|
1953
|
+
1 PUSHINT
|
|
1954
|
+
PAIR
|
|
1955
|
+
9 PUSHINT
|
|
1956
|
+
NEWC
|
|
1957
|
+
10 PUSHPOW2DEC
|
|
1958
|
+
STZEROES
|
|
1959
|
+
ENDC
|
|
1960
|
+
PAIR
|
|
1961
|
+
PAIR
|
|
1962
|
+
cl::declare INLINECALLDICT
|
|
1963
|
+
}>
|
|
1964
|
+
POOO::NewWithBitsSets PROC:<{
|
|
1965
|
+
1347374927 PUSHINT
|
|
1966
|
+
6 PUSHINT
|
|
1967
|
+
1 PUSHINT
|
|
1968
|
+
PAIR
|
|
1969
|
+
9 PUSHINT
|
|
1970
|
+
NEWC
|
|
1971
|
+
1 PUSHINT
|
|
1972
|
+
STZEROES
|
|
1973
|
+
s4 s5 PUXC
|
|
1974
|
+
SUB
|
|
1975
|
+
s1 s5 XCHG
|
|
1976
|
+
STONES
|
|
1977
|
+
10 PUSHPOW2DEC
|
|
1978
|
+
s0 s4 XCHG2
|
|
1979
|
+
SUB
|
|
1980
|
+
s1 s3 XCHG
|
|
1981
|
+
STZEROES
|
|
1982
|
+
ENDC
|
|
1983
|
+
s1 s3 XCHG
|
|
1984
|
+
PAIR
|
|
1985
|
+
PAIR
|
|
1986
|
+
cl::declare INLINECALLDICT
|
|
1987
|
+
}>
|
|
1988
|
+
POOO::isBitSet PROCINLINE:<{
|
|
1989
|
+
OVER
|
|
1990
|
+
0 PUSHINT
|
|
1991
|
+
cl::get<uint64> INLINECALLDICT
|
|
1992
|
+
SUB
|
|
1993
|
+
SWAP
|
|
1994
|
+
1 PUSHINT
|
|
1995
|
+
cl::get<cellRef> INLINECALLDICT
|
|
1996
|
+
CTOS
|
|
1997
|
+
SWAP
|
|
1998
|
+
1 PUSHINT
|
|
1999
|
+
SDSUBSTR
|
|
2000
|
+
1 PLDU
|
|
2001
|
+
1 EQINT
|
|
2002
|
+
}>
|
|
2003
|
+
POOO::maxSettableBit PROCINLINE:<{
|
|
2004
|
+
0 PUSHINT
|
|
2005
|
+
cl::get<uint64> INLINECALLDICT
|
|
2006
|
+
1022 PUSHINT
|
|
2007
|
+
ADD
|
|
2008
|
+
}>
|
|
2009
|
+
POOO::setBitOne PROC:<{
|
|
2010
|
+
DROP
|
|
2011
|
+
POOO::New INLINECALLDICT
|
|
2012
|
+
1 PUSHINT
|
|
2013
|
+
POOO::set INLINECALLDICT
|
|
2014
|
+
0 PUSHINT
|
|
2015
|
+
cl::get<uint64> INLINECALLDICT
|
|
2016
|
+
2 EQINT
|
|
2017
|
+
test::shouldBeTrue CALLDICT
|
|
2018
|
+
}>
|
|
2019
|
+
POOO::setBitTwo PROC:<{
|
|
2020
|
+
DROP
|
|
2021
|
+
POOO::New INLINECALLDICT
|
|
2022
|
+
2 PUSHINT
|
|
2023
|
+
POOO::set INLINECALLDICT
|
|
2024
|
+
DUP
|
|
2025
|
+
0 PUSHINT
|
|
2026
|
+
cl::get<uint64> INLINECALLDICT
|
|
2027
|
+
1 EQINT
|
|
2028
|
+
SWAP
|
|
2029
|
+
2 PUSHINT
|
|
2030
|
+
POOO::isBitSet INLINECALLDICT
|
|
2031
|
+
AND
|
|
2032
|
+
test::shouldBeTrue CALLDICT
|
|
2033
|
+
}>
|
|
2034
|
+
POOO::8bitOrdered PROC:<{
|
|
2035
|
+
DROP
|
|
2036
|
+
POOO::New INLINECALLDICT
|
|
2037
|
+
1 PUSHINT
|
|
2038
|
+
POOO::set INLINECALLDICT
|
|
2039
|
+
2 PUSHINT
|
|
2040
|
+
POOO::set INLINECALLDICT
|
|
2041
|
+
3 PUSHINT
|
|
2042
|
+
POOO::set INLINECALLDICT
|
|
2043
|
+
4 PUSHINT
|
|
2044
|
+
POOO::set INLINECALLDICT
|
|
2045
|
+
5 PUSHINT
|
|
2046
|
+
POOO::set INLINECALLDICT
|
|
2047
|
+
6 PUSHINT
|
|
2048
|
+
POOO::set INLINECALLDICT
|
|
2049
|
+
7 PUSHINT
|
|
2050
|
+
POOO::set INLINECALLDICT
|
|
2051
|
+
8 PUSHINT
|
|
2052
|
+
POOO::set INLINECALLDICT
|
|
2053
|
+
0 PUSHINT
|
|
2054
|
+
cl::get<uint64> INLINECALLDICT
|
|
2055
|
+
9 EQINT
|
|
2056
|
+
test::shouldBeTrue CALLDICT
|
|
2057
|
+
}>
|
|
2058
|
+
POOO::8bitUnordered PROC:<{
|
|
2059
|
+
DROP
|
|
2060
|
+
POOO::New INLINECALLDICT
|
|
2061
|
+
6 PUSHINT
|
|
2062
|
+
POOO::set INLINECALLDICT
|
|
2063
|
+
2 PUSHINT
|
|
2064
|
+
POOO::set INLINECALLDICT
|
|
2065
|
+
7 PUSHINT
|
|
2066
|
+
POOO::set INLINECALLDICT
|
|
2067
|
+
4 PUSHINT
|
|
2068
|
+
POOO::set INLINECALLDICT
|
|
2069
|
+
8 PUSHINT
|
|
2070
|
+
POOO::set INLINECALLDICT
|
|
2071
|
+
3 PUSHINT
|
|
2072
|
+
POOO::set INLINECALLDICT
|
|
2073
|
+
1 PUSHINT
|
|
2074
|
+
POOO::set INLINECALLDICT
|
|
2075
|
+
5 PUSHINT
|
|
2076
|
+
POOO::set INLINECALLDICT
|
|
2077
|
+
0 PUSHINT
|
|
2078
|
+
cl::get<uint64> INLINECALLDICT
|
|
2079
|
+
9 EQINT
|
|
2080
|
+
test::shouldBeTrue CALLDICT
|
|
2081
|
+
}>
|
|
2082
|
+
POOO::lastBit PROC:<{
|
|
2083
|
+
DROP
|
|
2084
|
+
POOO::New INLINECALLDICT
|
|
2085
|
+
10 PUSHPOW2DEC
|
|
2086
|
+
POOO::set INLINECALLDICT
|
|
2087
|
+
10 PUSHPOW2DEC
|
|
2088
|
+
POOO::isBitSet INLINECALLDICT
|
|
2089
|
+
test::shouldBeTrue CALLDICT
|
|
2090
|
+
}>
|
|
2091
|
+
POOO::revert::pastLastBit PROC:<{
|
|
2092
|
+
DROP
|
|
2093
|
+
FALSE
|
|
2094
|
+
c4 PUSH
|
|
2095
|
+
c5 PUSH
|
|
2096
|
+
c7 PUSH
|
|
2097
|
+
<{
|
|
2098
|
+
2DROP
|
|
2099
|
+
TRUE
|
|
2100
|
+
}>CONT
|
|
2101
|
+
c7 SETCONT
|
|
2102
|
+
c5 SETCONT
|
|
2103
|
+
c4 SETCONT
|
|
2104
|
+
<{
|
|
2105
|
+
POOO::New INLINECALLDICT
|
|
2106
|
+
10 PUSHPOW2
|
|
2107
|
+
POOO::set INLINECALLDICT
|
|
2108
|
+
DROP
|
|
2109
|
+
}>CONT
|
|
2110
|
+
c1 PUSH
|
|
2111
|
+
COMPOSALT
|
|
2112
|
+
SWAP
|
|
2113
|
+
TRY
|
|
2114
|
+
IFJMP:<{
|
|
2115
|
+
-1 PUSHINT
|
|
2116
|
+
x{} PUSHSLICE
|
|
2117
|
+
}>
|
|
2118
|
+
0 PUSHINT
|
|
2119
|
+
x{53686f756c642068617665207468726f776e20616e20657863657074696f6e} PUSHSLICE
|
|
2120
|
+
}>
|
|
2121
|
+
POOO::indexZero PROC:<{
|
|
2122
|
+
DROP
|
|
2123
|
+
POOO::New INLINECALLDICT
|
|
2124
|
+
0 PUSHINT
|
|
2125
|
+
POOO::set INLINECALLDICT
|
|
2126
|
+
0 PUSHINT
|
|
2127
|
+
cl::get<uint64> INLINECALLDICT
|
|
2128
|
+
1 EQINT
|
|
2129
|
+
test::shouldBeTrue CALLDICT
|
|
2130
|
+
}>
|
|
2131
|
+
POOO::wrapsAtEnd PROC:<{
|
|
2132
|
+
DROP
|
|
2133
|
+
1 PUSHINT
|
|
2134
|
+
10 PUSHPOW2DEC
|
|
2135
|
+
POOO::NewWithBitsSets CALLDICT
|
|
2136
|
+
1 PUSHINT
|
|
2137
|
+
POOO::set INLINECALLDICT
|
|
2138
|
+
10 PUSHPOW2
|
|
2139
|
+
POOO::set INLINECALLDICT
|
|
2140
|
+
1547 PUSHINT
|
|
2141
|
+
POOO::set INLINECALLDICT
|
|
2142
|
+
0 PUSHINT
|
|
2143
|
+
cl::get<uint64> INLINECALLDICT
|
|
2144
|
+
1025 PUSHINT
|
|
2145
|
+
EQUAL
|
|
2146
|
+
test::shouldBeTrue CALLDICT
|
|
2147
|
+
}>
|
|
2148
|
+
POOO::negativeInput PROC:<{
|
|
2149
|
+
DROP
|
|
2150
|
+
FALSE
|
|
2151
|
+
DUP
|
|
2152
|
+
c4 PUSH
|
|
2153
|
+
c5 PUSH
|
|
2154
|
+
c7 PUSH
|
|
2155
|
+
<{
|
|
2156
|
+
NIP
|
|
2157
|
+
1587 PUSHINT
|
|
2158
|
+
EQUAL
|
|
2159
|
+
IF:<{
|
|
2160
|
+
DROP
|
|
2161
|
+
TRUE
|
|
2162
|
+
}>
|
|
2163
|
+
}>CONT
|
|
2164
|
+
c7 SETCONT
|
|
2165
|
+
c5 SETCONT
|
|
2166
|
+
c4 SETCONT
|
|
2167
|
+
1 PUSHINT
|
|
2168
|
+
-1 PUSHINT
|
|
2169
|
+
SETCONTVARARGS
|
|
2170
|
+
<{
|
|
2171
|
+
POOO::New INLINECALLDICT
|
|
2172
|
+
-69 PUSHINT
|
|
2173
|
+
POOO::set INLINECALLDICT
|
|
2174
|
+
DROP
|
|
2175
|
+
}>CONT
|
|
2176
|
+
c1 PUSH
|
|
2177
|
+
COMPOSALT
|
|
2178
|
+
SWAP
|
|
2179
|
+
TRY
|
|
2180
|
+
IFJMP:<{
|
|
2181
|
+
-1 PUSHINT
|
|
2182
|
+
x{} PUSHSLICE
|
|
2183
|
+
}>
|
|
2184
|
+
0 PUSHINT
|
|
2185
|
+
x{53686f756c642068617665207468726f776e20616e20657863657074696f6e} PUSHSLICE
|
|
2186
|
+
}>
|
|
2187
|
+
}END>c
|
|
2188
|
+
2 boc+>B "build/PipelinedOutOfOrder.test.boc" B>file
|