tx · F4iUoyskWsQTPCVaVaTatGU6uZ3ekW7tf49pgo6LRnZr

3NBCBtA1F4m6tBir7JX2dUtDNt4ujmHH5NA:  -0.02000000 Waves

2020.04.28 11:53 [974366] smart account 3NBCBtA1F4m6tBir7JX2dUtDNt4ujmHH5NA > SELF 0.00000000 Waves

{ "type": 13, "id": "F4iUoyskWsQTPCVaVaTatGU6uZ3ekW7tf49pgo6LRnZr", "fee": 2000000, "feeAssetId": null, "timestamp": 1588064056268, "version": 1, "sender": "3NBCBtA1F4m6tBir7JX2dUtDNt4ujmHH5NA", "senderPublicKey": "Aj2RvtYHTSnDfcwYBCD5ZEwG3V483xJe2L1n13KPsi3a", "proofs": [ "3jKLwSDJ99hMr46sywtCPRE167CmQyN2ttRCcz7tVgcszBKHAFJkouztKEV8CxRbXsVcUc2Kpa9m7MTYBEkCMhx9" ], "script": "base64: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", "chainId": 84, "height": 974366, "spentComplexity": 0 } View: original | compacted Prev: 6nuyt12D2Kt7CTDjFkEToM3Dr8648WEvmGfL81KTsvhE Next: AZkWe6jvy66d4fFeyZYJ9tSkgTJkyZUZCvDw6Z1VXa2m Diff:
OldNewDifferences
1515 }
1616
1717
18+func decodeU32 (data,offset) = {
19+ let decoded1 = decodeU16(data, offset)
20+ let decoded2 = decodeU16(data, decoded1[1])
21+[(decoded1[0] + ((decoded2[0] * 256) * 256)), decoded2[1]]
22+ }
23+
24+
1825 @Callable(contextObj)
1926 func testWriteIntFromBytes (data) = WriteSet([DataEntry("bytesToInt", toInt(data, 0))])
2027
2128
2229
2330 @Callable(contextObj)
24-func testDecodeU8 (data) = {
31+func testDecodeU32 (data) = {
2532 let offset = 0
26- let decoded = decodeU8(data, offset)
27- WriteSet([DataEntry("u8", decoded[0])])
28- }
29-
30-
31-
32-@Callable(contextObj)
33-func testDecodeU16 (data) = {
34- let offset = 0
35- let decoded = decodeU16(data, offset)
36- WriteSet([DataEntry("u16", decoded[0])])
33+ let decoded = decodeU32(data, offset)
34+ WriteSet([DataEntry("u32", decoded[0])])
3735 }
3836
3937
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func decodeU8 (data,offset) = if ((size(data) == 0))
55 then throw("decode u8 error, data is an empty bytes")
66 else if ((offset > size(data)))
77 then throw("decode u8 error, decoding is finish")
88 else [toInt((base58'1111111' + take(drop(data, offset), 1)), 0), (offset + 1)]
99
1010
1111 func decodeU16 (data,offset) = {
1212 let decoded1 = decodeU8(data, offset)
1313 let decoded2 = decodeU8(data, decoded1[1])
1414 [(decoded1[0] + (decoded2[0] * 256)), decoded2[1]]
1515 }
1616
1717
18+func decodeU32 (data,offset) = {
19+ let decoded1 = decodeU16(data, offset)
20+ let decoded2 = decodeU16(data, decoded1[1])
21+[(decoded1[0] + ((decoded2[0] * 256) * 256)), decoded2[1]]
22+ }
23+
24+
1825 @Callable(contextObj)
1926 func testWriteIntFromBytes (data) = WriteSet([DataEntry("bytesToInt", toInt(data, 0))])
2027
2128
2229
2330 @Callable(contextObj)
24-func testDecodeU8 (data) = {
31+func testDecodeU32 (data) = {
2532 let offset = 0
26- let decoded = decodeU8(data, offset)
27- WriteSet([DataEntry("u8", decoded[0])])
28- }
29-
30-
31-
32-@Callable(contextObj)
33-func testDecodeU16 (data) = {
34- let offset = 0
35- let decoded = decodeU16(data, offset)
36- WriteSet([DataEntry("u16", decoded[0])])
33+ let decoded = decodeU32(data, offset)
34+ WriteSet([DataEntry("u32", decoded[0])])
3735 }
3836
3937
4038
4139 @Callable(contextObj)
4240 func setValidator (validator) = if ((contextObj.caller == this))
4341 then WriteSet([DataEntry("validator", validator)])
4442 else throw("Only owner can use this function.")
4543
4644
4745
4846 @Callable(contextObj)
4947 func reportData (data) = {
5048 let validator = getBinary(this, "validator")
5149 if ((contextObj.caller.bytes == validator))
5250 then WriteSet([DataEntry("data_reported", data)])
5351 else throw("Only validator can use this function.")
5452 }
5553
5654

github/deemru/w8io/873ac7e 
368.41 ms