tx · Bxejpz2ERUJqoifkWjJgDeXUpHG6LjseePdV2EfP7PnP

3NCUSxFG35TxkPL9zvrVuLdzE7fgAJZBYnT:  -0.00700000 Waves

2022.09.05 18:46 [2216004] smart account 3NCUSxFG35TxkPL9zvrVuLdzE7fgAJZBYnT > SELF 0.00000000 Waves

{ "type": 13, "id": "Bxejpz2ERUJqoifkWjJgDeXUpHG6LjseePdV2EfP7PnP", "fee": 700000, "feeAssetId": null, "timestamp": 1662392789397, "version": 2, "chainId": 84, "sender": "3NCUSxFG35TxkPL9zvrVuLdzE7fgAJZBYnT", "senderPublicKey": "AarQtnrvNTQaxY7KcUxui6hKMhgpdiScPuExhx692hzY", "proofs": [ "3uUnbaYgewW5qP4r6Ws35SGCz29bxYvxpEUvKFkpsqLeqCtuLwvDPBsGtdDuckKw567fFexkiGLgXzhK81kkwj85" ], "script": "base64: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", "height": 2216004, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: F8smwrfBjweZTuo3wumPzJWT5Ek99jaWNyhJhMNWnRBj Next: sHX2wpp4pU1qcVWFGaaQ827HcyJ9JQxz3yd5FoQ1ig9 Diff:
OldNewDifferences
44
55
66 @Callable(a)
7-func call () = {
8- let b = Issue("Asset", "", 1, 0, true, unit, 0)
9- let c = calculateAssetId(b)
10-[BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), b, Reissue(c, 1, false), Burn(c, 1), ScriptTransfer(a.caller, 1, c)]
7+func deposit () = {
8+ let b = if ((size(a.payments) > 0))
9+ then a.payments[0]
10+ else throw("At least one payment expected")
11+ let c = if (isDefined(b.assetId))
12+ then value(b.assetId)
13+ else throw("Only WAVES payment accepted")
14+[IntegerEntry(toString(a.caller), b.amount)]
1115 }
1216
1317
14-@Verifier(d)
15-func e () = sigVerify(d.bodyBytes, d.proofs[0], d.senderPublicKey)
18+
19+@Callable(a)
20+func withdraw (d) = {
21+ let e = toString(a.caller)
22+ let f = valueOrErrorMessage(getInteger(this, e), "You don't have a deposit")
23+ let g = if (if ((d > 0))
24+ then true
25+ else (d > f))
26+ then d
27+ else throw("Amount to withdraw must be more than 0 and less than current deposit")
28+ if ((d == f))
29+ then [DeleteEntry(e)]
30+ else [IntegerEntry(e, (f - d)), ScriptTransfer(a.caller, d, unit)]
31+ }
32+
33+
34+
35+@Callable(a)
36+func allArgTypes (h,i,j,k,l) = {
37+ let m = [1, 2, 3, 4, 5]
38+ func n (o,p) = if ((p >= size(l)))
39+ then o
40+ else {
41+ let q = toString(p)
42+ (o :+ {
43+ let r = l[p]
44+ if ($isInstanceOf(r, "Boolean"))
45+ then {
46+ let s = r
47+ BooleanEntry((q + "-bool"), s)
48+ }
49+ else if ($isInstanceOf(r, "ByteVector"))
50+ then {
51+ let s = r
52+ BinaryEntry((q + "-bin"), s)
53+ }
54+ else if ($isInstanceOf(r, "Int"))
55+ then {
56+ let t = r
57+ IntegerEntry((q + "-int"), t)
58+ }
59+ else if ($isInstanceOf(r, "String"))
60+ then {
61+ let u = r
62+ StringEntry((q + "-str"), u)
63+ }
64+ else throw("Match error")
65+ })
66+ }
67+
68+ ([BooleanEntry("bool", h), BinaryEntry("bin", i), IntegerEntry("int", j), StringEntry("str", k)] ++ {
69+ let v = m
70+ let w = size(v)
71+ let x = nil
72+ func y (z,A) = if ((A >= w))
73+ then z
74+ else n(z, v[A])
75+
76+ func B (z,A) = if ((A >= w))
77+ then z
78+ else throw("List size exceeds 5")
79+
80+ B(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5)
81+ })
82+ }
83+
1684
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(a)
7-func call () = {
8- let b = Issue("Asset", "", 1, 0, true, unit, 0)
9- let c = calculateAssetId(b)
10-[BinaryEntry("bin", base58''), BooleanEntry("bool", true), IntegerEntry("int", 1), StringEntry("str", ""), DeleteEntry("str"), b, Reissue(c, 1, false), Burn(c, 1), ScriptTransfer(a.caller, 1, c)]
7+func deposit () = {
8+ let b = if ((size(a.payments) > 0))
9+ then a.payments[0]
10+ else throw("At least one payment expected")
11+ let c = if (isDefined(b.assetId))
12+ then value(b.assetId)
13+ else throw("Only WAVES payment accepted")
14+[IntegerEntry(toString(a.caller), b.amount)]
1115 }
1216
1317
14-@Verifier(d)
15-func e () = sigVerify(d.bodyBytes, d.proofs[0], d.senderPublicKey)
18+
19+@Callable(a)
20+func withdraw (d) = {
21+ let e = toString(a.caller)
22+ let f = valueOrErrorMessage(getInteger(this, e), "You don't have a deposit")
23+ let g = if (if ((d > 0))
24+ then true
25+ else (d > f))
26+ then d
27+ else throw("Amount to withdraw must be more than 0 and less than current deposit")
28+ if ((d == f))
29+ then [DeleteEntry(e)]
30+ else [IntegerEntry(e, (f - d)), ScriptTransfer(a.caller, d, unit)]
31+ }
32+
33+
34+
35+@Callable(a)
36+func allArgTypes (h,i,j,k,l) = {
37+ let m = [1, 2, 3, 4, 5]
38+ func n (o,p) = if ((p >= size(l)))
39+ then o
40+ else {
41+ let q = toString(p)
42+ (o :+ {
43+ let r = l[p]
44+ if ($isInstanceOf(r, "Boolean"))
45+ then {
46+ let s = r
47+ BooleanEntry((q + "-bool"), s)
48+ }
49+ else if ($isInstanceOf(r, "ByteVector"))
50+ then {
51+ let s = r
52+ BinaryEntry((q + "-bin"), s)
53+ }
54+ else if ($isInstanceOf(r, "Int"))
55+ then {
56+ let t = r
57+ IntegerEntry((q + "-int"), t)
58+ }
59+ else if ($isInstanceOf(r, "String"))
60+ then {
61+ let u = r
62+ StringEntry((q + "-str"), u)
63+ }
64+ else throw("Match error")
65+ })
66+ }
67+
68+ ([BooleanEntry("bool", h), BinaryEntry("bin", i), IntegerEntry("int", j), StringEntry("str", k)] ++ {
69+ let v = m
70+ let w = size(v)
71+ let x = nil
72+ func y (z,A) = if ((A >= w))
73+ then z
74+ else n(z, v[A])
75+
76+ func B (z,A) = if ((A >= w))
77+ then z
78+ else throw("List size exceeds 5")
79+
80+ B(y(y(y(y(y(x, 0), 1), 2), 3), 4), 5)
81+ })
82+ }
83+
1684

github/deemru/w8io/169f3d6 
43.49 ms