tx · Ci8oHMMnRnqVkqBpXtrJKAYnD5DEzEzURQsy6qjXdMp2

3N9j84jA8n5YhSY4MbqP8cB1nZuxjZxMXmm:  -0.01001000 Waves

2021.02.02 15:13 [1380523] smart account 3N9j84jA8n5YhSY4MbqP8cB1nZuxjZxMXmm > SELF 0.00000000 Waves

{ "type": 13, "id": "Ci8oHMMnRnqVkqBpXtrJKAYnD5DEzEzURQsy6qjXdMp2", "fee": 1001000, "feeAssetId": null, "timestamp": 1612268027003, "version": 2, "chainId": 84, "sender": "3N9j84jA8n5YhSY4MbqP8cB1nZuxjZxMXmm", "senderPublicKey": "6VmvRNSSafWsdNYddeAf3MgEa4RSgGvHe97sxZznf5mE", "proofs": [ "4MfSfRA65baNCPiKfXmQjba9aSA6WPezkB5hcgzxgp3sUu8h53MX4PQtnArNaVzx5bPsPaAkKCvTXFxwd66NHVkq" ], "script": "base64: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", "height": 1380523, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: AwCPbB64c5T9VNgovWbxZ4DqU3FifNCUorityhH9zKJN Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+
5+
6+@Callable(a)
7+func deposit () = {
8+ let b = extract(a.payment)
9+ if (isDefined(b.assetId))
10+ then throw("can hodl waves only at the moment")
11+ else {
12+ let c = toBase58String(a.caller.bytes)
13+ let d = ((c + "_") + "ib")
14+ let e = {
15+ let f = getInteger(this, d)
16+ if ($isInstanceOf(f, "Int"))
17+ then {
18+ let g = f
19+ g
20+ }
21+ else 0
22+ }
23+ let h = (e + b.amount)
24+ WriteSet([DataEntry(d, h)])
25+ }
26+ }
27+
28+
29+
30+@Callable(a)
31+func withdraw (i) = {
32+ let c = toBase58String(a.caller.bytes)
33+ let d = ((c + "_") + "ib")
34+ let e = {
35+ let f = getInteger(this, d)
36+ if ($isInstanceOf(f, "Int"))
37+ then {
38+ let g = f
39+ g
40+ }
41+ else 0
42+ }
43+ let h = (e - i)
44+ if ((0 > i))
45+ then throw("Can't withdraw negative amount")
46+ else if ((0 > h))
47+ then throw("Not enough balance")
48+ else ScriptResult(WriteSet([DataEntry(d, h)]), TransferSet([ScriptTransfer(a.caller, i, unit)]))
49+ }
50+
51+
52+
53+@Callable(a)
54+func getFunds (i) = {
55+ let j = 2
56+ let c = toBase58String(a.caller.bytes)
57+ let k = ((c + "_") + "sf")
58+ let l = ((c + "_") + "sv")
59+ let e = {
60+ let f = getInteger(this, k)
61+ if ($isInstanceOf(f, "Int"))
62+ then {
63+ let g = f
64+ g
65+ }
66+ else 0
67+ }
68+ let m = {
69+ let f = getInteger(this, l)
70+ if ($isInstanceOf(f, "Int"))
71+ then {
72+ let g = f
73+ g
74+ }
75+ else 0
76+ }
77+ let h = (e - i)
78+ if ((0 > i))
79+ then throw("Can't withdraw negative amount")
80+ else if ((0 > h))
81+ then throw("Not enough balance")
82+ else if ((j > m))
83+ then throw("Not enough votes. At least 2 votes required!")
84+ else ScriptResult(WriteSet([DataEntry(k, h)]), TransferSet([ScriptTransfer(a.caller, i, unit)]))
85+ }
86+
87+
88+
89+@Callable(a)
90+func vote (i,n) = {
91+ let c = toBase58String(a.caller.bytes)
92+ let d = ((c + "_") + "ib")
93+ let k = ((n + "_") + "sf")
94+ let l = ((n + "_") + "sv")
95+ let o = ((n + "_") + c)
96+ let p = {
97+ let f = getInteger(this, o)
98+ if ($isInstanceOf(f, "Int"))
99+ then {
100+ let g = f
101+ g
102+ }
103+ else 0
104+ }
105+ let e = {
106+ let f = getInteger(this, d)
107+ if ($isInstanceOf(f, "Int"))
108+ then {
109+ let g = f
110+ g
111+ }
112+ else 0
113+ }
114+ let q = {
115+ let f = getInteger(this, l)
116+ if ($isInstanceOf(f, "Int"))
117+ then {
118+ let g = f
119+ g
120+ }
121+ else 0
122+ }
123+ let r = {
124+ let f = getInteger(this, k)
125+ if ($isInstanceOf(f, "Int"))
126+ then {
127+ let g = f
128+ g
129+ }
130+ else 0
131+ }
132+ if ((0 >= i))
133+ then throw("Can't withdraw negative amount")
134+ else if ((i > e))
135+ then throw("Not enough balance!")
136+ else if ((p > 0))
137+ then throw("Only one vote per project is possible!")
138+ else WriteSet([DataEntry(d, (e - i)), DataEntry(l, (q + 1)), DataEntry(o, 1), DataEntry(k, (r + i))])
139+ }
140+
141+
142+@Verifier(s)
143+func t () = {
144+ let f = s
145+ if ($isInstanceOf(f, "SetScriptTransaction"))
146+ then {
147+ let u = f
148+ sigVerify(s.bodyBytes, s.proofs[0], base58'6VmvRNSSafWsdNYddeAf3MgEa4RSgGvHe97sxZznf5mE')
149+ }
150+ else false
151+ }
152+

github/deemru/w8io/873ac7e 
16.59 ms