tx · 9J1PRDwiwFxCZAJzNCP6yooRCEcoCfCB7heZrDXQJ1T7

3Mz3XPi4hQnfVK9ZaA27YwFfiPApPgFnCts:  -0.01400000 Waves

2020.01.15 13:22 [855078] smart account 3Mz3XPi4hQnfVK9ZaA27YwFfiPApPgFnCts > SELF 0.00000000 Waves

{ "type": 13, "id": "9J1PRDwiwFxCZAJzNCP6yooRCEcoCfCB7heZrDXQJ1T7", "fee": 1400000, "feeAssetId": null, "timestamp": 1579083933940, "version": 1, "sender": "3Mz3XPi4hQnfVK9ZaA27YwFfiPApPgFnCts", "senderPublicKey": "PuRPu7vRxThZUjyn7EuGuZyy6f77Sj87fnAzQC9Af4V", "proofs": [ "5JQVXY58C3PCiBdeumgSEXVPQMkchvNWJscUc1Zegb6R7Siub36Zown2uDkvT3H2g4jgz7rE2co6Bm693ruEEDre" ], "script": "base64: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", "chainId": 84, "height": 855078, "spentComplexity": 0 } View: original | compacted Prev: AgS8AWpktHw72xv4ArueY4nZeTMYTfAH9DMUNJSoLuWQ Next: CqbL9jaTi6FNgM3qed1KAS5U3FEFWuVTSmvzBZnrPezK Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = {
55 let b = getBinary(this, "tokenPortInOtherChain")
66 if ($isInstanceOf(b, "ByteVector"))
77 then {
88 let c = b
99 c
1010 }
1111 else throw("tokenPortInOtherChain is not defined")
1212 }
1313
1414 let d = {
1515 let b = getBinary(this, "chainCollector")
1616 if ($isInstanceOf(b, "ByteVector"))
1717 then {
1818 let c = b
1919 Address(c)
2020 }
2121 else throw("chainCollector is not defined")
2222 }
2323
2424 func e (f) = {
2525 let b = getBinary(d, toString(f))
2626 if ($isInstanceOf(b, "ByteVector"))
2727 then {
2828 let c = b
2929 c
3030 }
3131 else throw("Block info not found")
3232 }
3333
3434
3535 func g (h) = {
3636 let b = h
3737 if ($isInstanceOf(b, "ByteVector"))
3838 then {
3939 let h = b
4040 toBase58String(h)
4141 }
4242 else "WAVES"
4343 }
4444
4545
4646 func i (j) = if ((j == "WAVES"))
4747 then unit
4848 else fromBase58String(j)
4949
5050
5151 func k (l) = {
5252 let m = takeRightBytes(take(l, (((1 + 1) + 32) + 1)), 1)
5353 if ((m == base58'1'))
5454 then unit
5555 else takeRightBytes(take(l, ((((1 + 1) + 32) + 1) + 32)), 32)
5656 }
5757
5858
5959 func n (l) = blake2b256(l)
6060
6161
6262 func o (l) = {
6363 let m = takeRightBytes(take(l, (((1 + 1) + 32) + 1)), 1)
6464 let p = if ((m == base58'1'))
6565 then 0
6666 else 32
6767 let q = takeRightBytes(take(l, (((((1 + 1) + 32) + 1) + p) + 1)), 1)
6868 let r = if ((q == base58'1'))
6969 then 0
7070 else 32
7171 takeRightBytes(take(l, ((((((((((1 + 1) + 32) + 1) + p) + 1) + r) + 8) + 8) + 8) + 26)), 26)
7272 }
7373
7474
7575 func s (l) = {
7676 let m = takeRightBytes(take(l, (((1 + 1) + 32) + 1)), 1)
7777 let p = if ((m == base58'1'))
7878 then 0
7979 else 32
8080 let q = takeRightBytes(take(l, (((((1 + 1) + 32) + 1) + p) + 1)), 1)
8181 let r = if ((q == base58'1'))
8282 then 0
8383 else 32
8484 toInt(takeRightBytes(take(l, ((((((((1 + 1) + 32) + 1) + p) + 1) + r) + 8) + 8)), 8))
8585 }
8686
8787
8888 func t (l) = {
8989 let m = takeRightBytes(take(l, (((1 + 1) + 32) + 1)), 1)
9090 let p = if ((m == base58'1'))
9191 then 0
9292 else 32
9393 let q = takeRightBytes(take(l, (((((1 + 1) + 32) + 1) + p) + 1)), 1)
9494 let r = if ((q == base58'1'))
9595 then 0
9696 else 32
9797 let u = toInt(takeRightBytes(take(l, (((((((((((1 + 1) + 32) + 1) + p) + 1) + r) + 8) + 8) + 8) + 26) + 2)), 2))
9898 takeRightBytes(take(l, ((((((((((((1 + 1) + 32) + 1) + p) + 1) + r) + 8) + 8) + 8) + 26) + 2) + u)), u)
9999 }
100100
101101
102102 func v (l) = take(l, 1)
103103
104104
105105 @Callable(w)
106106 func withdraw (x,y,z) = {
107107 let A = e(y)
108108 let B = n(x)
109109 let C = o(x)
110110 let D = t(x)
111111 let E = s(x)
112112 let F = k(x)
113113 let G = v(x)
114114 let H = (toBase58String(B) + "_tx")
115115 let I = (g(F) + "_asset")
116116 let J = {
117117 let b = getString(this, I)
118118 if ($isInstanceOf(b, "String"))
119119 then {
120120 let K = b
121121 i(K)
122122 }
123123 else throw("incorrect asset")
124124 }
125125 if ((G != base58'5'))
126126 then throw("incorrect transaction type")
127127 else if ((C != a))
128128 then throw("incorrect tx recipient")
129129 else {
130130 let L = Address(D)
131131 if (isDefined(getBoolean(this, H)))
132132 then throw("this tx has already been withdrawn")
133133 else if (!(checkMerkleProof(A, B, z)))
134134 then throw("incorrect Merkle proof")
135135 else ScriptResult(WriteSet([DataEntry(H, true)]), TransferSet([ScriptTransfer(L, E, J)]))
136136 }
137137 }
138138
139139
140140 @Verifier(M)
141141 func N () = sigVerify(M.bodyBytes, M.proofs[0], M.senderPublicKey)
142142

github/deemru/w8io/026f985 
37.89 ms