tx · 8acu9fTn6oLddU213nkGpMaxrrMw1CD2ruev9frZEBWZ

3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV:  -0.01000000 Waves

2021.12.11 20:54 [1829902] smart account 3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV > SELF 0.00000000 Waves

{ "type": 13, "id": "8acu9fTn6oLddU213nkGpMaxrrMw1CD2ruev9frZEBWZ", "fee": 1000000, "feeAssetId": null, "timestamp": 1639245364146, "version": 2, "chainId": 84, "sender": "3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV", "senderPublicKey": "5amLtMwixiEesBDKPy9dkFWntG2fNxhTs5n69JbQE9F7", "proofs": [ "4t3aP7XmLgBrTzz5SYkdDtuPoeNeeRrze4JkCTMasqGQrW4TSxufvWvWez5jkU9g71VeAEwaZVF7FYxQjAhjkBLu" ], "script": "base64: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", "height": 1829902, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CLjMd9tz5CyXzsaQfYCdFeBE5Job8UrBqTtQ4rfkzxEU Next: 4yKUCEDhXTrgnyNCrHCc4gU2f2ahsfcE2sNLEr7R3z4p Diff:
OldNewDifferences
55
66 let b = Address(base58'3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV')
77
8-@Callable(c)
9-func reset () = [DeleteEntry(toBase58String(c.caller.bytes)), DeleteEntry((toBase58String(c.caller.bytes) + "_result")), IntegerEntry("burningstage", 0)]
8+let c = Address(base58'3MovsLjXpJr9HD2vBqmAf7Gze6jwuRxX1fX')
9+
10+@Callable(d)
11+func reset () = [DeleteEntry(toBase58String(d.caller.bytes)), IntegerEntry("burnt", 0), IntegerEntry("dropped", 0), IntegerEntry("teamgift", 0), IntegerEntry("burningstage", 0)]
1012
1113
1214
13-@Callable(c)
14-func call (d) = {
15- let e = {
16- let f = blockInfoByHeight(height)
17- if ($isInstanceOf(f, "BlockInfo"))
15+@Callable(d)
16+func call (e) = {
17+ let f = {
18+ let g = blockInfoByHeight(height)
19+ if ($isInstanceOf(g, "BlockInfo"))
1820 then {
19- let g = f
20- g.timestamp
21+ let h = g
22+ h.timestamp
2123 }
2224 else throw("Can't find block")
2325 }
24- let h = assetBalance(b, a)
25- let i = {
26- let f = getInteger("burningstage")
27- if ($isInstanceOf(f, "Int"))
26+ let i = assetBalance(b, a)
27+ let j = {
28+ let g = getInteger("burningstage")
29+ if ($isInstanceOf(g, "Int"))
2830 then {
29- let j = f
31+ let k = g
3032 if (if ((getIntegerValue("burningstage") == 0))
31- then (e > 1639131654752)
33+ then (f > 1639131654752)
3234 else false)
33- then fraction(h, 10, 100)
35+ then fraction(i, 10, 100)
3436 else 0
3537 }
3638 else throw("no burningstage")
3739 }
38- let k = 1000
39- let l = if ((h > k))
40+ let l = 1000
41+ let m = 10
42+ let n = fromBase58String(e)
43+ let o = Address(d.caller.bytes)
44+ let p = 1639230864311
45+ let q = if ((i > l))
4046 then true
4147 else throw("not enough")
42- if ((l == l))
48+ if ((q == q))
4349 then {
44- let m = fromBase58String(d)
45- let n = Address(c.caller.bytes)
46- let o = 1639230864311
47- let p = {
48- let f = transferTransactionById(m)
49- if ($isInstanceOf(f, "TransferTransaction"))
50+ let r = {
51+ let g = transferTransactionById(n)
52+ if ($isInstanceOf(g, "TransferTransaction"))
5053 then {
51- let q = f
54+ let s = g
5255 true
5356 }
5457 else false
5558 }
56- let r = {
57- let f = transferTransactionById(m)
58- if ($isInstanceOf(f, "TransferTransaction"))
59+ let t = {
60+ let g = transferTransactionById(n)
61+ if ($isInstanceOf(g, "TransferTransaction"))
5962 then {
60- let q = f
61- q.timestamp
63+ let s = g
64+ s.timestamp
6265 }
6366 else 9999999999999
6467 }
65- let s = {
66- let f = transferTransactionById(m)
67- if ($isInstanceOf(f, "TransferTransaction"))
68+ let u = {
69+ let g = transferTransactionById(n)
70+ if ($isInstanceOf(g, "TransferTransaction"))
6871 then {
69- let q = f
70- q.sender
72+ let s = g
73+ s.sender
7174 }
7275 else b
7376 }
74- let t = if ((take(valueOrElse(getString(toBase58String(c.caller.bytes)), ""), 8) == "received"))
77+ let v = if ((take(valueOrElse(getString(toBase58String(d.caller.bytes)), ""), 8) == "received"))
7578 then true
7679 else false
77- let u = if (if (if ((r > o))
80+ let w = if (if (if ((t > p))
7881 then true
79- else (n != s))
82+ else (o != u))
8083 then true
81- else t)
84+ else v)
8285 then false
8386 else true
84- let v = if (p)
85- then if ((r > o))
86- then ("transaction is out of time range: " + toString(r))
87- else ("" + (if ((n != s))
88- then ((("it is incorrect sender: " + toString(n)) + " / ") + toString(s))
89- else ("" + (if (t)
90- then getStringValue(toBase58String(c.caller.bytes))
91- else ("" + (if (u)
92- then ("received in " + toString(e))
87+ let x = if (r)
88+ then if ((t > p))
89+ then ("transaction is out of time range: " + toString(t))
90+ else ("" + (if ((o != u))
91+ then ((("it is incorrect sender: " + toString(o)) + " / ") + toString(u))
92+ else ("" + (if (v)
93+ then getStringValue(toBase58String(d.caller.bytes))
94+ else ("" + (if (w)
95+ then ("received in " + toString(f))
9396 else ""))))))
9497 else "cant find transaction"
95- if (u)
96- then if ((i > 0))
97- then [ScriptTransfer(n, k, a), StringEntry(toBase58String(c.caller.bytes), v)]
98- else [StringEntry(toBase58String(c.caller.bytes), v), ScriptTransfer(n, k, a)]
99- else [StringEntry(toBase58String(c.caller.bytes), v)]
98+ if (w)
99+ then if ((j > 0))
100+ then [ScriptTransfer(o, l, a), ScriptTransfer(c, m, a), StringEntry(toBase58String(d.caller.bytes), x), IntegerEntry("dropped", (getIntegerValue("dropped") + l)), IntegerEntry("teamgift", (getIntegerValue("teamgift") + m))]
101+ else [ScriptTransfer(o, l, a), ScriptTransfer(c, m, a), StringEntry(toBase58String(d.caller.bytes), x), IntegerEntry("dropped", (getIntegerValue("dropped") + l)), IntegerEntry("teamgift", (getIntegerValue("teamgift") + m))]
102+ else [StringEntry(toBase58String(d.caller.bytes), x)]
100103 }
101104 else throw("Strict value is not equal to itself.")
105+ }
106+
107+
108+
109+@Callable(d)
110+func buy () = {
111+ let f = {
112+ let g = blockInfoByHeight(height)
113+ if ($isInstanceOf(g, "BlockInfo"))
114+ then {
115+ let h = g
116+ h.timestamp
117+ }
118+ else throw("Can't find block")
119+ }
120+ let i = assetBalance(b, a)
121+ let y = 1000
122+ let z = 1
123+ let A = 10
124+ let o = Address(d.caller.bytes)
125+ let B = if ((i >= y))
126+ then true
127+ else false
128+ let C = valueOrElse(getString(toBase58String(d.caller.bytes)), "")
129+ let D = if ((take(C, 8) == "received"))
130+ then true
131+ else false
132+ let E = if (if (D)
133+ then (size(split(C, "|")) == 1)
134+ else false)
135+ then 0
136+ else if (if (D)
137+ then (size(split(C, "|")) == 2)
138+ else false)
139+ then 1
140+ else 2
141+ let F = if ((E == 0))
142+ then z
143+ else if ((E == 1))
144+ then A
145+ else 0
146+ let G = if ((size(d.payments) == 1))
147+ then if (if (!(isDefined(d.payments[0].assetId)))
148+ then (d.payments[0].amount >= F)
149+ else false)
150+ then true
151+ else false
152+ else false
153+ let H = if (!(D))
154+ then ("not prooved for buy" + (if (!(G))
155+ then "not enough payment"
156+ else ""))
157+ else ""
158+ let I = split(C, "|")
159+ let J = if (D)
160+ then I[0]
161+ else ("" + (if ((E == 0))
162+ then "|bought1"
163+ else ("" + (if ((E == 1))
164+ then "|bought1|bought2"
165+ else ""))))
166+ let K = if (if (if (B)
167+ then D
168+ else false)
169+ then G
170+ else false)
171+ then true
172+ else false
173+ if (K)
174+ then [StringEntry(toBase58String(d.caller.bytes), J), ScriptTransfer(c, F, unit), ScriptTransfer(o, y, a)]
175+ else [StringEntry(toBase58String(d.caller.bytes), C)]
102176 }
103177
104178
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'GZc7eKnq2KJwqetRmUzSqr2ZaCGseDZufSocz83sUNoo'
55
66 let b = Address(base58'3N7Gg64FJ3ESaqn41qu1ete7zmzbmoP1AAV')
77
8-@Callable(c)
9-func reset () = [DeleteEntry(toBase58String(c.caller.bytes)), DeleteEntry((toBase58String(c.caller.bytes) + "_result")), IntegerEntry("burningstage", 0)]
8+let c = Address(base58'3MovsLjXpJr9HD2vBqmAf7Gze6jwuRxX1fX')
9+
10+@Callable(d)
11+func reset () = [DeleteEntry(toBase58String(d.caller.bytes)), IntegerEntry("burnt", 0), IntegerEntry("dropped", 0), IntegerEntry("teamgift", 0), IntegerEntry("burningstage", 0)]
1012
1113
1214
13-@Callable(c)
14-func call (d) = {
15- let e = {
16- let f = blockInfoByHeight(height)
17- if ($isInstanceOf(f, "BlockInfo"))
15+@Callable(d)
16+func call (e) = {
17+ let f = {
18+ let g = blockInfoByHeight(height)
19+ if ($isInstanceOf(g, "BlockInfo"))
1820 then {
19- let g = f
20- g.timestamp
21+ let h = g
22+ h.timestamp
2123 }
2224 else throw("Can't find block")
2325 }
24- let h = assetBalance(b, a)
25- let i = {
26- let f = getInteger("burningstage")
27- if ($isInstanceOf(f, "Int"))
26+ let i = assetBalance(b, a)
27+ let j = {
28+ let g = getInteger("burningstage")
29+ if ($isInstanceOf(g, "Int"))
2830 then {
29- let j = f
31+ let k = g
3032 if (if ((getIntegerValue("burningstage") == 0))
31- then (e > 1639131654752)
33+ then (f > 1639131654752)
3234 else false)
33- then fraction(h, 10, 100)
35+ then fraction(i, 10, 100)
3436 else 0
3537 }
3638 else throw("no burningstage")
3739 }
38- let k = 1000
39- let l = if ((h > k))
40+ let l = 1000
41+ let m = 10
42+ let n = fromBase58String(e)
43+ let o = Address(d.caller.bytes)
44+ let p = 1639230864311
45+ let q = if ((i > l))
4046 then true
4147 else throw("not enough")
42- if ((l == l))
48+ if ((q == q))
4349 then {
44- let m = fromBase58String(d)
45- let n = Address(c.caller.bytes)
46- let o = 1639230864311
47- let p = {
48- let f = transferTransactionById(m)
49- if ($isInstanceOf(f, "TransferTransaction"))
50+ let r = {
51+ let g = transferTransactionById(n)
52+ if ($isInstanceOf(g, "TransferTransaction"))
5053 then {
51- let q = f
54+ let s = g
5255 true
5356 }
5457 else false
5558 }
56- let r = {
57- let f = transferTransactionById(m)
58- if ($isInstanceOf(f, "TransferTransaction"))
59+ let t = {
60+ let g = transferTransactionById(n)
61+ if ($isInstanceOf(g, "TransferTransaction"))
5962 then {
60- let q = f
61- q.timestamp
63+ let s = g
64+ s.timestamp
6265 }
6366 else 9999999999999
6467 }
65- let s = {
66- let f = transferTransactionById(m)
67- if ($isInstanceOf(f, "TransferTransaction"))
68+ let u = {
69+ let g = transferTransactionById(n)
70+ if ($isInstanceOf(g, "TransferTransaction"))
6871 then {
69- let q = f
70- q.sender
72+ let s = g
73+ s.sender
7174 }
7275 else b
7376 }
74- let t = if ((take(valueOrElse(getString(toBase58String(c.caller.bytes)), ""), 8) == "received"))
77+ let v = if ((take(valueOrElse(getString(toBase58String(d.caller.bytes)), ""), 8) == "received"))
7578 then true
7679 else false
77- let u = if (if (if ((r > o))
80+ let w = if (if (if ((t > p))
7881 then true
79- else (n != s))
82+ else (o != u))
8083 then true
81- else t)
84+ else v)
8285 then false
8386 else true
84- let v = if (p)
85- then if ((r > o))
86- then ("transaction is out of time range: " + toString(r))
87- else ("" + (if ((n != s))
88- then ((("it is incorrect sender: " + toString(n)) + " / ") + toString(s))
89- else ("" + (if (t)
90- then getStringValue(toBase58String(c.caller.bytes))
91- else ("" + (if (u)
92- then ("received in " + toString(e))
87+ let x = if (r)
88+ then if ((t > p))
89+ then ("transaction is out of time range: " + toString(t))
90+ else ("" + (if ((o != u))
91+ then ((("it is incorrect sender: " + toString(o)) + " / ") + toString(u))
92+ else ("" + (if (v)
93+ then getStringValue(toBase58String(d.caller.bytes))
94+ else ("" + (if (w)
95+ then ("received in " + toString(f))
9396 else ""))))))
9497 else "cant find transaction"
95- if (u)
96- then if ((i > 0))
97- then [ScriptTransfer(n, k, a), StringEntry(toBase58String(c.caller.bytes), v)]
98- else [StringEntry(toBase58String(c.caller.bytes), v), ScriptTransfer(n, k, a)]
99- else [StringEntry(toBase58String(c.caller.bytes), v)]
98+ if (w)
99+ then if ((j > 0))
100+ then [ScriptTransfer(o, l, a), ScriptTransfer(c, m, a), StringEntry(toBase58String(d.caller.bytes), x), IntegerEntry("dropped", (getIntegerValue("dropped") + l)), IntegerEntry("teamgift", (getIntegerValue("teamgift") + m))]
101+ else [ScriptTransfer(o, l, a), ScriptTransfer(c, m, a), StringEntry(toBase58String(d.caller.bytes), x), IntegerEntry("dropped", (getIntegerValue("dropped") + l)), IntegerEntry("teamgift", (getIntegerValue("teamgift") + m))]
102+ else [StringEntry(toBase58String(d.caller.bytes), x)]
100103 }
101104 else throw("Strict value is not equal to itself.")
105+ }
106+
107+
108+
109+@Callable(d)
110+func buy () = {
111+ let f = {
112+ let g = blockInfoByHeight(height)
113+ if ($isInstanceOf(g, "BlockInfo"))
114+ then {
115+ let h = g
116+ h.timestamp
117+ }
118+ else throw("Can't find block")
119+ }
120+ let i = assetBalance(b, a)
121+ let y = 1000
122+ let z = 1
123+ let A = 10
124+ let o = Address(d.caller.bytes)
125+ let B = if ((i >= y))
126+ then true
127+ else false
128+ let C = valueOrElse(getString(toBase58String(d.caller.bytes)), "")
129+ let D = if ((take(C, 8) == "received"))
130+ then true
131+ else false
132+ let E = if (if (D)
133+ then (size(split(C, "|")) == 1)
134+ else false)
135+ then 0
136+ else if (if (D)
137+ then (size(split(C, "|")) == 2)
138+ else false)
139+ then 1
140+ else 2
141+ let F = if ((E == 0))
142+ then z
143+ else if ((E == 1))
144+ then A
145+ else 0
146+ let G = if ((size(d.payments) == 1))
147+ then if (if (!(isDefined(d.payments[0].assetId)))
148+ then (d.payments[0].amount >= F)
149+ else false)
150+ then true
151+ else false
152+ else false
153+ let H = if (!(D))
154+ then ("not prooved for buy" + (if (!(G))
155+ then "not enough payment"
156+ else ""))
157+ else ""
158+ let I = split(C, "|")
159+ let J = if (D)
160+ then I[0]
161+ else ("" + (if ((E == 0))
162+ then "|bought1"
163+ else ("" + (if ((E == 1))
164+ then "|bought1|bought2"
165+ else ""))))
166+ let K = if (if (if (B)
167+ then D
168+ else false)
169+ then G
170+ else false)
171+ then true
172+ else false
173+ if (K)
174+ then [StringEntry(toBase58String(d.caller.bytes), J), ScriptTransfer(c, F, unit), ScriptTransfer(o, y, a)]
175+ else [StringEntry(toBase58String(d.caller.bytes), C)]
102176 }
103177
104178

github/deemru/w8io/169f3d6 
47.10 ms