tx · CwCgumSXBE7t81STNz3AkmUP9KkdnuX1Er5fZr4L6yzG

3NBCBtA1F4m6tBir7JX2dUtDNt4ujmHH5NA:  -0.02000000 Waves

2020.05.15 20:16 [999617] smart account 3NBCBtA1F4m6tBir7JX2dUtDNt4ujmHH5NA > SELF 0.00000000 Waves

{ "type": 13, "id": "CwCgumSXBE7t81STNz3AkmUP9KkdnuX1Er5fZr4L6yzG", "fee": 2000000, "feeAssetId": null, "timestamp": 1589563002794, "version": 1, "sender": "3NBCBtA1F4m6tBir7JX2dUtDNt4ujmHH5NA", "senderPublicKey": "Aj2RvtYHTSnDfcwYBCD5ZEwG3V483xJe2L1n13KPsi3a", "proofs": [ "oxCJgscbgG5zqCttbHii8KXKdtQzE9s2UeCnGA3FTznMpvqNjSmZzUziSCZw7V9edkhSWfYvnAXTnAs7FvsfKpj" ], "script": "base64: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", "chainId": 84, "height": 999617, "spentComplexity": 0 } View: original | compacted Prev: 8pGvySPFrRDnGvUE8piBrQjMqsRCm5DXKobsMV8vqeav Next: DuHXkGuL2sWWi9sp4MFRdcRfGhFuUMcXYELAo2qCm6S3 Diff:
OldNewDifferences
128128 else if ((getIntegerValue(this, "latestRequestId") >= requestId))
129129 then throw("requestId is not new")
130130 else {
131- let result = getBinaryValue(bridge, (toString(requestId) + "/calldata"))
131+ let result = getBinaryValue(bridge, (toString(requestId) + "/result"))
132132 let price = decodeInt64(result, 0)[0]
133133 WriteSet([DataEntry("latestWavesPrice", price), DataEntry("latestRequestId", requestId)])
134134 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func decodeInt8 (data,offset) = if ((1 > size(data)))
55 then throw("decode u8 error, data must be at least 1 byte")
66 else if ((offset > size(data)))
77 then throw("decode u8 error, decoding is finish")
88 else {
99 let x0 = take(drop(data, offset), 1)
1010 let x1 = toInt((base58'1111111' + x0), 0)
1111 if ((128 > x1))
1212 then [x1, (offset + 1)]
1313 else [toInt((base58'Ahg1opVcGW' + x0), 0), (offset + 1)]
1414 }
1515
1616
1717 func decodeInt16 (data,offset) = if ((2 > size(data)))
1818 then throw("decode u16 error, data must be at least 2 bytes")
1919 else if ((offset > size(data)))
2020 then throw("decode u16 error, decoding is finish")
2121 else {
2222 let x0 = drop(data, offset)
2323 let x1 = take(x0, 1)
2424 let x2 = take(drop(x0, 1), 1)
2525 if ((decodeInt8(x2, 0)[0] >= 0))
2626 then [toInt(((base58'111111' + x2) + x1), 0), (offset + 2)]
2727 else [toInt(((base58'3CUsUpv9t' + x2) + x1), 0), (offset + 2)]
2828 }
2929
3030
3131 func decodeInt32 (data,offset) = if ((4 > size(data)))
3232 then throw("decode u32 error, data must be at least 4 bytes")
3333 else if ((offset > size(data)))
3434 then throw("decode u32 error, decoding is finish")
3535 else {
3636 let x0 = drop(data, offset)
3737 let x1 = take(x0, 1)
3838 let x2 = take(drop(x0, 1), 1)
3939 let x3 = take(drop(x0, 2), 1)
4040 let x4 = take(drop(x0, 3), 1)
4141 if ((decodeInt8(x4, 0)[0] >= 0))
4242 then [toInt(((((base58'1111' + x4) + x3) + x2) + x1), 0), (offset + 4)]
4343 else [toInt(((((base58'7YXq9G' + x4) + x3) + x2) + x1), 0), (offset + 4)]
4444 }
4545
4646
4747 func decodeInt64 (data,offset) = if ((8 > size(data)))
4848 then throw("decode u32 error, data must be at least 8 bytes")
4949 else if ((offset > size(data)))
5050 then throw("decode u32 error, decoding is finish")
5151 else {
5252 let x0 = drop(data, offset)
5353 let x1 = take(x0, 1)
5454 let x2 = take(drop(x0, 1), 1)
5555 let x3 = take(drop(x0, 2), 1)
5656 let x4 = take(drop(x0, 3), 1)
5757 let x5 = take(drop(x0, 4), 1)
5858 let x6 = take(drop(x0, 5), 1)
5959 let x7 = take(drop(x0, 6), 1)
6060 let x8 = take(drop(x0, 7), 1)
6161 [toInt((((((((x8 + x7) + x6) + x5) + x4) + x3) + x2) + x1), 0), (offset + 8)]
6262 }
6363
6464
6565 func decodeString (data,offset) = {
6666 let decoded1 = decodeInt32(data, offset)
6767 let bytesSize = decoded1[0]
6868 let nextOffset = decoded1[1]
6969 [DataEntry("string", toUtf8String(take(drop(data, nextOffset), bytesSize))), DataEntry("int", (nextOffset + bytesSize))]
7070 }
7171
7272
7373 func getAsString (tuple) = match tuple[0].value {
7474 case s: String =>
7575 s
7676 case _ =>
7777 throw("not a String")
7878 }
7979
8080
8181 func getOffset (tuple) = match tuple[1].value {
8282 case i: Int =>
8383 i
8484 case _ =>
8585 throw("not a Int")
8686 }
8787
8888
8989 @Callable(contextObj)
9090 func init (bridgeAddress) = if ((contextObj.caller != this))
9191 then throw("permission denied")
9292 else match getInteger(this, "latestRequestId") {
9393 case latestRequestId: Int =>
9494 throw("already init")
9595 case _ =>
9696 match getInteger(this, "latestWavesPrice") {
9797 case latestWavesPrice: Int =>
9898 throw("already init")
9999 case _ =>
100100 WriteSet([DataEntry("oracleScriptId", 1), DataEntry("symbol", "WAVES"), DataEntry("multiplier", 100), DataEntry("latestRequestId", 0), DataEntry("latestWavesPrice", 0)])
101101 }
102102 }
103103
104104
105105
106106 @Callable(contextObj)
107107 func setBridge (bridgeAddress) = if ((contextObj.caller != this))
108108 then throw("permission denied")
109109 else WriteSet([DataEntry("bridge", bridgeAddress)])
110110
111111
112112
113113 @Callable(contextObj)
114114 func setLatestWavesPrice (requestId) = {
115115 let bridge = Address(getBinaryValue(this, "bridge"))
116116 if ((getIntegerValue(bridge, (toString(requestId) + "/oracleScriptId")) != getIntegerValue(this, "oracleScriptId")))
117117 then throw("incorrect oracleScriptId")
118118 else {
119119 let calldata = getBinaryValue(bridge, (toString(requestId) + "/calldata"))
120120 let tuple1 = decodeString(calldata, 0)
121121 let tuple2 = decodeInt64(calldata, getOffset(tuple1))
122122 let symbol = getAsString(tuple1)
123123 let multiplier = tuple2[0]
124124 if ((symbol != getStringValue(this, "symbol")))
125125 then throw("wrong symbol")
126126 else if ((multiplier != getIntegerValue(this, "multiplier")))
127127 then throw("wrong multiplier")
128128 else if ((getIntegerValue(this, "latestRequestId") >= requestId))
129129 then throw("requestId is not new")
130130 else {
131- let result = getBinaryValue(bridge, (toString(requestId) + "/calldata"))
131+ let result = getBinaryValue(bridge, (toString(requestId) + "/result"))
132132 let price = decodeInt64(result, 0)[0]
133133 WriteSet([DataEntry("latestWavesPrice", price), DataEntry("latestRequestId", requestId)])
134134 }
135135 }
136136 }
137137
138138

github/deemru/w8io/3ef1775 
68.60 ms