tx · 8WkdyTnnCcFtXPLHSa4gKP5UKuwpkp2otiZL5o7z9Ghb

3MxbD7vwyGjwsRxT8fmMB9fngo59VfHcrea:  -0.00800000 Waves

2022.08.18 03:29 [2189199] smart account 3MxbD7vwyGjwsRxT8fmMB9fngo59VfHcrea > SELF 0.00000000 Waves

{ "type": 13, "id": "8WkdyTnnCcFtXPLHSa4gKP5UKuwpkp2otiZL5o7z9Ghb", "fee": 800000, "feeAssetId": null, "timestamp": 1660782605940, "version": 2, "chainId": 84, "sender": "3MxbD7vwyGjwsRxT8fmMB9fngo59VfHcrea", "senderPublicKey": "7kBiESqWjiW6nNeStcbrVX9XRQkWmUM51MZFRZNQEVfR", "proofs": [ "61bw1fzBUZV9TteVrAhM2jNTw4SEJBV994fyVVmdQhhxE7eSLeBcApUEkKz41iLuyGD1EPzzT5eXCfrqXYPtW61P" ], "script": "base64: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", "height": 2189199, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5t1ZsHUpihAeFQBjG7BSDwL5RfKK6EFwRnGDDXJXPEF4 Next: FM2NRA8cimTT2KL2Qwus9YYvd8uFkrE8geU3Utx4CN3y Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = base58'4MhpjsP1MPpC49v6zBr7eAAEPZdmHWcrSqcSv8tZcpjo'
4+let a = base58'3MxZPzVdHQYNjp99N7VRuR4RLmJUqnDg9ok'
55
6-func b (c) = {
7- let d = getInteger(this, c)
8- if ($isInstanceOf(d, "Int"))
6+let b = base58'4MhpjsP1MPpC49v6zBr7eAAEPZdmHWcrSqcSv8tZcpjo'
7+
8+func c (d) = {
9+ let e = getInteger(this, d)
10+ if ($isInstanceOf(e, "Int"))
911 then {
10- let e = d
11- e
12+ let f = e
13+ f
1214 }
1315 else 0
1416 }
1517
1618
17-func f (c) = {
18- let d = getBoolean(this, c)
19- if ($isInstanceOf(d, "Boolean"))
19+func g (d) = {
20+ let e = getBoolean(this, d)
21+ if ($isInstanceOf(e, "Boolean"))
2022 then {
21- let e = d
22- e
23+ let f = e
24+ f
2325 }
2426 else false
2527 }
2628
2729
28-func g (h) = {
29- let d = h
30- if ($isInstanceOf(d, "ByteVector"))
30+func h (i) = {
31+ let e = i
32+ if ($isInstanceOf(e, "ByteVector"))
3133 then {
32- let e = d
33- toBase58String(e)
34+ let f = e
35+ toBase58String(f)
3436 }
3537 else "WAVES"
3638 }
3739
3840
39-func i (c) = {
40- let d = getString(this, c)
41- if ($isInstanceOf(d, "String"))
41+func j (d) = {
42+ let e = getString(this, d)
43+ if ($isInstanceOf(e, "String"))
4244 then {
43- let e = d
44- e
45+ let f = e
46+ f
4547 }
4648 else ""
4749 }
4850
4951
50-func j (c) = {
51- let d = getBinary(this, c)
52- if ($isInstanceOf(d, "ByteVector"))
52+func k (d) = {
53+ let e = getBinary(this, d)
54+ if ($isInstanceOf(e, "ByteVector"))
5355 then {
54- let e = d
55- e
56+ let f = e
57+ f
5658 }
5759 else base58''
5860 }
5961
6062
61-func k (l) = if ((l == "WAVES"))
63+func l (m) = if ((m == "WAVES"))
6264 then unit
63- else fromBase58String(l)
65+ else fromBase58String(m)
6466
6567
66-@Callable(m)
67-func createFurnace (n) = if ((size(m.payments) != 1))
68- then throw("You should to provide reward")
69- else {
70- let o = m.payments[0].amount
71- let p = m.payments[0].assetId
72- let q = (b("global_furnacesAmount") + 1)
73- let r = toString(q)
74-[IntegerEntry("global_furnacesAmount", q), IntegerEntry((("furnace_" + r) + "_lifetime"), n), IntegerEntry((("furnace_" + r) + "_rewardAmount"), o), StringEntry((("furnace_" + r) + "_rewardAssetId"), g(p))]
75- }
68+@Callable(n)
69+func createFurnace (o) = if ((toBase58String(n.caller.bytes) != toBase58String(a)))
70+ then throw("You cannot create furnace")
71+ else if ((size(n.payments) != 1))
72+ then throw("You should to provide reward")
73+ else {
74+ let p = n.payments[0].amount
75+ let q = n.payments[0].assetId
76+ let r = (c("global_furnacesAmount") + 1)
77+ let s = toString(r)
78+[IntegerEntry("global_furnacesAmount", r), IntegerEntry((("furnace_" + s) + "_lifetime"), o), IntegerEntry((("furnace_" + s) + "_rewardAmount"), p), StringEntry((("furnace_" + s) + "_rewardAssetId"), h(q))]
79+ }
7680
7781
7882
79-@Callable(m)
80-func burn (r) = {
81- let s = f((("furnace_" + r) + "_finished"))
82- if (s)
83+@Callable(n)
84+func burn (s) = {
85+ let t = g((("furnace_" + s) + "_finished"))
86+ if (t)
8387 then throw("Already finished")
84- else if ((size(m.payments) != 1))
88+ else if ((size(n.payments) != 1))
8589 then throw("You should to provide payment")
86- else if ((m.payments[0].assetId != a))
90+ else if ((n.payments[0].assetId != b))
8791 then throw("Invalid coal")
88- else if ((m.payments[0].amount != 1))
92+ else if ((n.payments[0].amount != 1))
8993 then throw("You can burn only 1 coal")
9094 else {
91- let t = toBase58String(m.caller.bytes)
92-[Burn(a, m.payments[0].amount), IntegerEntry((("furnace_" + r) + "_lastBurn"), height), StringEntry((("furnace_" + r) + "_lastStoker"), t)]
95+ let u = toBase58String(n.caller.bytes)
96+[Burn(b, n.payments[0].amount), IntegerEntry((("furnace_" + s) + "_lastBurn"), height), StringEntry((("furnace_" + s) + "_lastStoker"), u)]
9397 }
9498 }
9599
96100
97101
98-@Callable(m)
99-func claim (r) = {
100- let s = f((("furnace_" + r) + "_finished"))
101- let n = b((("furnace_" + r) + "_lifetime"))
102- let u = b((("furnace_" + r) + "_lastBurn"))
103- let v = i((("furnace_" + r) + "_rewardAssetId"))
104- let w = i((("furnace_" + r) + "_lastStoker"))
105- let o = b((("furnace_" + r) + "_rewardAmount"))
106- let x = (u + n)
107- if (s)
102+@Callable(n)
103+func claim (s) = {
104+ let t = g((("furnace_" + s) + "_finished"))
105+ let o = c((("furnace_" + s) + "_lifetime"))
106+ let v = c((("furnace_" + s) + "_lastBurn"))
107+ let w = j((("furnace_" + s) + "_rewardAssetId"))
108+ let x = j((("furnace_" + s) + "_lastStoker"))
109+ let p = c((("furnace_" + s) + "_rewardAmount"))
110+ let y = (v + o)
111+ if (t)
108112 then throw("Already finished")
109- else if ((n == 0))
113+ else if ((o == 0))
110114 then throw("Cannot find furnace")
111- else if ((u == 0))
115+ else if ((v == 0))
112116 then throw("Furnace not found")
113- else if ((x > height))
117+ else if ((y > height))
114118 then throw("Time has not run out")
115- else if ((v == ""))
119+ else if ((w == ""))
116120 then throw("Cannot find reward asset")
117- else if ((w == ""))
121+ else if ((x == ""))
118122 then throw("Cannot find last stoker")
119- else if ((o == 0))
123+ else if ((p == 0))
120124 then throw("Reward already sent to winner")
121- else [BooleanEntry((("furnace_" + r) + "_finished"), true), ScriptTransfer(Address(fromBase58String(w)), o, k(v))]
125+ else [BooleanEntry((("furnace_" + s) + "_finished"), true), ScriptTransfer(Address(fromBase58String(x)), p, l(w))]
122126 }
123127
124128
125-@Verifier(y)
126-func z () = sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey)
129+@Verifier(z)
130+func A () = sigVerify(z.bodyBytes, z.proofs[0], z.senderPublicKey)
127131

github/deemru/w8io/c3f4982 
45.96 ms