tx · GSr54MwU9EAHAPcM1KmrL55ru6cGc5WwZVxudhBMtApH

3Msughfkwji8uccY4RAxuKWvNpnEscWyhHK:  -0.01400000 Waves

2019.06.27 20:19 [560828] smart account 3Msughfkwji8uccY4RAxuKWvNpnEscWyhHK > SELF 0.00000000 Waves

{ "type": 13, "id": "GSr54MwU9EAHAPcM1KmrL55ru6cGc5WwZVxudhBMtApH", "fee": 1400000, "feeAssetId": null, "timestamp": 1561655990394, "version": 1, "sender": "3Msughfkwji8uccY4RAxuKWvNpnEscWyhHK", "senderPublicKey": "AzyC6W7iD5HYehj2xef6xWKogmxDC6RaX9N1ST8P39bn", "proofs": [ "45VHgdDKZ1F3eds1EJYEwcFLBzCRoBqfzbxiWX4e4epUCfaL9nH1j2RjNxUXfPjJC3NMvniJazvZREeKD7j8TYLZ" ], "script": "base64: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", "chainId": 84, "height": 560828, "spentComplexity": 0 } View: original | compacted Prev: 6fatmETngZbm9wQqjWPJbsSUnJVv5mmxa5etyoMyhD3Y Next: 4uzsj57QVs3MQ5VuPmaN2NDvN43kRX7j3Qjvx6uertB4 Diff:
OldNewDifferences
99
1010 let d = 5
1111
12-func e (f,g) = {
13- let h = (f + "_balance")
14- DataEntry(h, (g + {
15- let i = getInteger(this, h)
16- if ($isInstanceOf(i, "Int"))
12+let e = "AD2vbzpR3ZMXiY1ZhBdq4iH1wz5w6tUCHPz1vvNfyCqE"
13+
14+func f (g,h) = {
15+ let i = (g + "_balance")
16+ DataEntry(i, (h + {
17+ let j = getInteger(this, i)
18+ if ($isInstanceOf(j, "Int"))
1719 then {
18- let j = i
19- j
20+ let k = j
21+ k
2022 }
2123 else 0
2224 }))
2325 }
2426
2527
26-func k (f,l,g,m) = {
27- let n = (f + m)
28- let o = (l + toString(g))
29- let i = getString(this, n)
30- if ($isInstanceOf(i, "String"))
28+func l (g,m,h,n) = {
29+ let o = (g + n)
30+ let p = (m + toString(h))
31+ let j = getString(this, o)
32+ if ($isInstanceOf(j, "String"))
3133 then {
32- let p = i
33- DataEntry(n, ((p + ",") + o))
34+ let q = j
35+ DataEntry(o, ((q + ",") + p))
3436 }
35- else DataEntry(n, o)
37+ else DataEntry(o, p)
3638 }
3739
3840
39-func q (r) = getString(this, (r + "_referer"))
41+func r (s) = getString(this, (s + "_referer"))
4042
4143
42-@Callable(s)
44+@Callable(t)
4345 func fund () = {
44- let l = toBase58String(s.callerPublicKey)
45- let t = extract(blockInfoByHeight(height))
46- let u = (((l + ":") + toString(t.timestamp)) + ":")
47- let v = extract(s.payment).amount
46+ let m = toBase58String(t.callerPublicKey)
47+ let u = extract(blockInfoByHeight(height))
48+ let v = (((m + ":") + toString(u.timestamp)) + ":")
49+ let w = extract(t.payment).amount
4850 WriteSet({
49- let i = getString(this, (l + "_refstructure"))
50- if ($isInstanceOf(i, "String"))
51+ let j = getString(this, (m + "_refstructure"))
52+ if ($isInstanceOf(j, "String"))
5153 then {
52- let w = i
53- let x = split(w, ",")
54- let y = size(x)
55- let z = ((v * a) / 1000)
56- let A = ((v * d) / 1000)
57-[e(l, A), k(l, u, A, "_txs_cashback"), e(x[0], z), k(x[0], u, z, "_txs_l1"), if ((y >= 2))
54+ let x = j
55+ let y = split(x, ",")
56+ let z = size(y)
57+ let A = ((w * a) / 1000)
58+ let B = ((w * d) / 1000)
59+[f(m, B), l(m, v, B, "_txs_cashback"), f(y[0], A), l(y[0], v, A, "_txs_l1"), if ((z >= 2))
5860 then {
59- let B = ((v * b) / 1000)
60-[e(x[1], B), k(x[1], u, B, "_txs_l2"), if ((y >= 3))
61+ let C = ((w * b) / 1000)
62+[f(y[1], C), l(y[1], v, C, "_txs_l2"), if ((z >= 3))
6163 then {
62- let C = ((v * c) / 1000)
63-[e(x[2], C), k(x[2], u, C, "_txs_l3")]
64+ let D = ((w * c) / 1000)
65+[f(y[2], D), l(y[2], v, D, "_txs_l3"), f(e, (((w - A) - C) - D)), l(e, v, (((w - A) - C) - D), "_txs_change")]
6466 }
65- else nil]
67+ else [f(e, ((w - A) - C)), l(e, v, ((w - A) - C), "_txs_change")]]
6668 }
67- else nil]
69+ else [f(e, (w - A)), l(e, v, (w - A), "_txs_change")]]
6870 }
69- else nil
71+ else [f(e, w), l(e, v, w, "_txs_change")]
7072 })
7173 }
7274
7375
7476
75-@Callable(s)
76-func withdraw (v) = if ((0 >= v))
77+@Callable(t)
78+func withdraw (w) = if ((0 >= w))
7779 then throw("invalid amount")
7880 else {
79- let l = toBase58String(s.callerPublicKey)
80- let D = ({
81- let i = getInteger(this, (l + "_balance"))
82- if ($isInstanceOf(i, "Int"))
81+ let m = toBase58String(t.callerPublicKey)
82+ let E = ({
83+ let j = getInteger(this, (m + "_balance"))
84+ if ($isInstanceOf(j, "Int"))
8385 then {
84- let j = i
85- j
86+ let k = j
87+ k
8688 }
8789 else 0
88- } - v)
89- if ((0 > D))
90+ } - w)
91+ if ((0 > E))
9092 then throw("transaction leads to negative account balance")
91- else ScriptResult(WriteSet([DataEntry((l + "_balance"), D)]), TransferSet([ScriptTransfer(s.caller, v, unit)]))
93+ else ScriptResult(WriteSet([DataEntry((m + "_balance"), E)]), TransferSet([ScriptTransfer(t.caller, w, unit)]))
9294 }
9395
9496
9597
96-@Callable(s)
97-func register (E) = {
98- let l = toBase58String(s.callerPublicKey)
99- if (isDefined(q(l)))
98+@Callable(t)
99+func register (F) = {
100+ let m = toBase58String(t.callerPublicKey)
101+ if (isDefined(r(m)))
100102 then throw("Already registered")
101103 else {
102- let F = (E + "_referrals")
103- let G = {
104- let i = getString(this, F)
105- if ($isInstanceOf(i, "String"))
104+ let G = (F + "_referrals")
105+ let H = {
106+ let j = getString(this, G)
107+ if ($isInstanceOf(j, "String"))
106108 then {
107- let H = i
108- ((H + ",") + l)
109+ let I = j
110+ ((I + ",") + m)
109111 }
110- else l
112+ else m
111113 }
112- let I = (E + {
113- let i = q(E)
114- if ($isInstanceOf(i, "String"))
114+ let J = (F + {
115+ let j = r(F)
116+ if ($isInstanceOf(j, "String"))
115117 then {
116- let J = i
117- (("," + J) + {
118- let K = q(J)
119- if ($isInstanceOf(K, "String"))
118+ let K = j
119+ (("," + K) + {
120+ let L = r(K)
121+ if ($isInstanceOf(L, "String"))
120122 then {
121- let L = K
122- ("," + L)
123+ let M = L
124+ ("," + M)
123125 }
124126 else ""
125127 })
126128 }
127129 else ""
128130 })
129- WriteSet([DataEntry((l + "_referer"), E), DataEntry(F, G), DataEntry((l + "_refstructure"), I)])
131+ WriteSet([DataEntry((m + "_referer"), F), DataEntry(G, H), DataEntry((m + "_refstructure"), J)])
130132 }
131133 }
132134
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 5
55
66 let b = 5
77
88 let c = 5
99
1010 let d = 5
1111
12-func e (f,g) = {
13- let h = (f + "_balance")
14- DataEntry(h, (g + {
15- let i = getInteger(this, h)
16- if ($isInstanceOf(i, "Int"))
12+let e = "AD2vbzpR3ZMXiY1ZhBdq4iH1wz5w6tUCHPz1vvNfyCqE"
13+
14+func f (g,h) = {
15+ let i = (g + "_balance")
16+ DataEntry(i, (h + {
17+ let j = getInteger(this, i)
18+ if ($isInstanceOf(j, "Int"))
1719 then {
18- let j = i
19- j
20+ let k = j
21+ k
2022 }
2123 else 0
2224 }))
2325 }
2426
2527
26-func k (f,l,g,m) = {
27- let n = (f + m)
28- let o = (l + toString(g))
29- let i = getString(this, n)
30- if ($isInstanceOf(i, "String"))
28+func l (g,m,h,n) = {
29+ let o = (g + n)
30+ let p = (m + toString(h))
31+ let j = getString(this, o)
32+ if ($isInstanceOf(j, "String"))
3133 then {
32- let p = i
33- DataEntry(n, ((p + ",") + o))
34+ let q = j
35+ DataEntry(o, ((q + ",") + p))
3436 }
35- else DataEntry(n, o)
37+ else DataEntry(o, p)
3638 }
3739
3840
39-func q (r) = getString(this, (r + "_referer"))
41+func r (s) = getString(this, (s + "_referer"))
4042
4143
42-@Callable(s)
44+@Callable(t)
4345 func fund () = {
44- let l = toBase58String(s.callerPublicKey)
45- let t = extract(blockInfoByHeight(height))
46- let u = (((l + ":") + toString(t.timestamp)) + ":")
47- let v = extract(s.payment).amount
46+ let m = toBase58String(t.callerPublicKey)
47+ let u = extract(blockInfoByHeight(height))
48+ let v = (((m + ":") + toString(u.timestamp)) + ":")
49+ let w = extract(t.payment).amount
4850 WriteSet({
49- let i = getString(this, (l + "_refstructure"))
50- if ($isInstanceOf(i, "String"))
51+ let j = getString(this, (m + "_refstructure"))
52+ if ($isInstanceOf(j, "String"))
5153 then {
52- let w = i
53- let x = split(w, ",")
54- let y = size(x)
55- let z = ((v * a) / 1000)
56- let A = ((v * d) / 1000)
57-[e(l, A), k(l, u, A, "_txs_cashback"), e(x[0], z), k(x[0], u, z, "_txs_l1"), if ((y >= 2))
54+ let x = j
55+ let y = split(x, ",")
56+ let z = size(y)
57+ let A = ((w * a) / 1000)
58+ let B = ((w * d) / 1000)
59+[f(m, B), l(m, v, B, "_txs_cashback"), f(y[0], A), l(y[0], v, A, "_txs_l1"), if ((z >= 2))
5860 then {
59- let B = ((v * b) / 1000)
60-[e(x[1], B), k(x[1], u, B, "_txs_l2"), if ((y >= 3))
61+ let C = ((w * b) / 1000)
62+[f(y[1], C), l(y[1], v, C, "_txs_l2"), if ((z >= 3))
6163 then {
62- let C = ((v * c) / 1000)
63-[e(x[2], C), k(x[2], u, C, "_txs_l3")]
64+ let D = ((w * c) / 1000)
65+[f(y[2], D), l(y[2], v, D, "_txs_l3"), f(e, (((w - A) - C) - D)), l(e, v, (((w - A) - C) - D), "_txs_change")]
6466 }
65- else nil]
67+ else [f(e, ((w - A) - C)), l(e, v, ((w - A) - C), "_txs_change")]]
6668 }
67- else nil]
69+ else [f(e, (w - A)), l(e, v, (w - A), "_txs_change")]]
6870 }
69- else nil
71+ else [f(e, w), l(e, v, w, "_txs_change")]
7072 })
7173 }
7274
7375
7476
75-@Callable(s)
76-func withdraw (v) = if ((0 >= v))
77+@Callable(t)
78+func withdraw (w) = if ((0 >= w))
7779 then throw("invalid amount")
7880 else {
79- let l = toBase58String(s.callerPublicKey)
80- let D = ({
81- let i = getInteger(this, (l + "_balance"))
82- if ($isInstanceOf(i, "Int"))
81+ let m = toBase58String(t.callerPublicKey)
82+ let E = ({
83+ let j = getInteger(this, (m + "_balance"))
84+ if ($isInstanceOf(j, "Int"))
8385 then {
84- let j = i
85- j
86+ let k = j
87+ k
8688 }
8789 else 0
88- } - v)
89- if ((0 > D))
90+ } - w)
91+ if ((0 > E))
9092 then throw("transaction leads to negative account balance")
91- else ScriptResult(WriteSet([DataEntry((l + "_balance"), D)]), TransferSet([ScriptTransfer(s.caller, v, unit)]))
93+ else ScriptResult(WriteSet([DataEntry((m + "_balance"), E)]), TransferSet([ScriptTransfer(t.caller, w, unit)]))
9294 }
9395
9496
9597
96-@Callable(s)
97-func register (E) = {
98- let l = toBase58String(s.callerPublicKey)
99- if (isDefined(q(l)))
98+@Callable(t)
99+func register (F) = {
100+ let m = toBase58String(t.callerPublicKey)
101+ if (isDefined(r(m)))
100102 then throw("Already registered")
101103 else {
102- let F = (E + "_referrals")
103- let G = {
104- let i = getString(this, F)
105- if ($isInstanceOf(i, "String"))
104+ let G = (F + "_referrals")
105+ let H = {
106+ let j = getString(this, G)
107+ if ($isInstanceOf(j, "String"))
106108 then {
107- let H = i
108- ((H + ",") + l)
109+ let I = j
110+ ((I + ",") + m)
109111 }
110- else l
112+ else m
111113 }
112- let I = (E + {
113- let i = q(E)
114- if ($isInstanceOf(i, "String"))
114+ let J = (F + {
115+ let j = r(F)
116+ if ($isInstanceOf(j, "String"))
115117 then {
116- let J = i
117- (("," + J) + {
118- let K = q(J)
119- if ($isInstanceOf(K, "String"))
118+ let K = j
119+ (("," + K) + {
120+ let L = r(K)
121+ if ($isInstanceOf(L, "String"))
120122 then {
121- let L = K
122- ("," + L)
123+ let M = L
124+ ("," + M)
123125 }
124126 else ""
125127 })
126128 }
127129 else ""
128130 })
129- WriteSet([DataEntry((l + "_referer"), E), DataEntry(F, G), DataEntry((l + "_refstructure"), I)])
131+ WriteSet([DataEntry((m + "_referer"), F), DataEntry(G, H), DataEntry((m + "_refstructure"), J)])
130132 }
131133 }
132134
133135

github/deemru/w8io/03bedc9 
88.45 ms