tx · Eq3cjaSrZ8dGipmGjKWAqPCdp6zhKHeXvBrG9sSecYWt

3MtVYGt1cJJB8g21cvSzJScK3hxUi9JHdcN:  -0.01400000 Waves

2021.12.23 14:15 [1846832] smart account 3MtVYGt1cJJB8g21cvSzJScK3hxUi9JHdcN > SELF 0.00000000 Waves

{ "type": 13, "id": "Eq3cjaSrZ8dGipmGjKWAqPCdp6zhKHeXvBrG9sSecYWt", "fee": 1400000, "feeAssetId": null, "timestamp": 1640258200116, "version": 2, "chainId": 84, "sender": "3MtVYGt1cJJB8g21cvSzJScK3hxUi9JHdcN", "senderPublicKey": "65qdY9G3EVQgF1GhvrT6rw2zPmUsFirt9Kjm5q5fdJvu", "proofs": [ "7Wvjrd9JicqdcMaH4wDXdhr7gq2wn6nKkmivTwXdcVHAXSTvEJgBZZptE5nPa44eioVdfC4WMGVaHTavLnzCThp" ], "script": "base64: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", "height": 1846832, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FTEkwSbc8XAmWnCF4EFZgraG1amBjypGcxDuTJRiAdgE Next: HhQdsLCqEXJzjkMrS3NU4BBDob1vAYhxwWvJgjcC3UEa Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = base58'3PEktVux2RhchSN63DsDo4b4mz4QqzKSeDv'
4+let a = base58'3N992tjd7EWM6dSHrdVjjjuJrLD4koNztZ9'
55
6-let b = base58'3PDVuU45H7Eh5dmtNbnRNRStGwULA7NY6Hb'
6+let b = base58'2cf6jyVG19oHU79R8iHfqFEesjstr3e7nSYEUhb2WagB'
77
8-let c = base58'3P5E9xamcWoymiqLx8ZdmR7o4fJSRMGp1WR'
8+let c = base58'3MpADDQFqadaCADNH9JDMQAGw9WEaMcymVU'
99
10-let d = base58'3P6AobNbcQ3ZjcRY37mJPKN8PP9Giz8kgeY'
10+let d = 5
1111
12-let e = base58'C1iWsKGqLwjHUndiQ7iXpdmPum9PeCDFfyXBdJJosDRS'
12+let e = 20
1313
14-let f = "GLOBAL_COUNTER"
15-
16-let g = 5
17-
18-let h = 20
19-
20-func i (j) = {
21- let k = {
22- let l = getInteger(this, j)
23- if ($isInstanceOf(l, "Int"))
14+func f (g) = {
15+ let h = {
16+ let i = getInteger(this, g)
17+ if ($isInstanceOf(i, "Int"))
2418 then {
25- let m = l
26- m
19+ let j = i
20+ j
2721 }
2822 else 0
2923 }
30- k
24+ h
3125 }
3226
3327
34-func n (j) = {
35- let k = {
36- let l = getString(this, j)
37- if ($isInstanceOf(l, "String"))
28+func k (g) = {
29+ let h = {
30+ let i = getString(this, g)
31+ if ($isInstanceOf(i, "String"))
3832 then {
39- let m = l
40- m
33+ let j = i
34+ j
4135 }
4236 else ""
4337 }
44- k
38+ h
4539 }
4640
4741
48-func o (j) = {
49- let l = getBoolean(this, j)
50- if ($isInstanceOf(l, "Boolean"))
42+func l (g) = {
43+ let i = getBoolean(this, g)
44+ if ($isInstanceOf(i, "Boolean"))
5145 then {
52- let m = l
53- m
46+ let j = i
47+ j
5448 }
5549 else false
5650 }
5751
5852
59-func p () = i(f)
60-
61-
62-func q (r) = if ((value(assetInfo(r)).issuer == Address(c)))
63- then "ART"
64- else {
65- let s = {
66- let l = getString(Address(a), toBase58String(r))
67- if ($isInstanceOf(l, "String"))
68- then {
69- let m = l
70- m
71- }
72- else ""
73- }
74- if ((s != ""))
75- then s
76- else {
77- let t = {
78- let l = getString(Address(b), toBase58String(r))
79- if ($isInstanceOf(l, "String"))
80- then {
81- let u = l
82- u
83- }
84- else ""
85- }
86- if ((t != ""))
87- then t
88- else ""
89- }
90- }
91-
92-
93-func v (w,x) = {
94- let y = o((("auction_" + w) + "_eggSell"))
95- let z = if ((y == true))
96- then e
53+func m (n,o) = {
54+ let p = l((("auction_" + n) + "_eggSell"))
55+ let q = if ((p == true))
56+ then b
9757 else unit
98- let r = getStringValue(this, (("auction_" + w) + "_assetId"))
99- let A = n((((("auction_" + w) + "_bid_") + x) + "_author"))
100- let B = i((((("auction_" + w) + "_bid_") + x) + "_amount"))
101-[StringEntry((((("assetId_" + r) + "_bid_") + x) + "_data"), (((((("{\"auctionId\": \"" + w) + "\", \"author\": \"") + A) + "\", \"amount\": \"") + toString(B)) + "\", \"status\": \"cancelled\"}")), StringEntry((((("auction_" + w) + "_bid_") + x) + "_status"), "cancelled"), DeleteEntry(((((("address_" + A) + "_auction_") + w) + "_bid_") + x)), ScriptTransfer(Address(fromBase58String(A)), B, z)]
58+ let r = getStringValue(this, (("auction_" + n) + "_assetId"))
59+ let s = k((((("auction_" + n) + "_bid_") + o) + "_author"))
60+ let t = f((((("auction_" + n) + "_bid_") + o) + "_amount"))
61+[StringEntry((((("assetId_" + r) + "_bid_") + o) + "_data"), (((((("{\"auctionId\": \"" + n) + "\", \"author\": \"") + s) + "\", \"amount\": \"") + toString(t)) + "\", \"status\": \"cancelled\"}")), StringEntry((((("auction_" + n) + "_bid_") + o) + "_status"), "cancelled"), DeleteEntry(((((("address_" + s) + "_auction_") + n) + "_bid_") + o)), ScriptTransfer(Address(fromBase58String(s)), t, q)]
10262 }
10363
10464
105-@Callable(C)
106-func initAuction (D,E,F,G) = {
107- let H = p()
108- let w = (toBase58String(C.transactionId) + toString(H))
109- let I = value(C.payments[0])
110- let r = value(I.assetId)
111- let J = q(r)
112- if ((J == ""))
65+func u (r) = if ((value(assetInfo(r)).issuer == Address(a)))
66+ then "ART"
67+ else ""
68+
69+
70+@Callable(v)
71+func initAuction (w,x,y,z) = {
72+ let n = toBase58String(v.transactionId)
73+ let A = value(v.payments[0])
74+ let r = value(A.assetId)
75+ let B = u(r)
76+ if ((B == ""))
11377 then throw("You can only sell an NFT-duck created in incubator or breeder")
114- else [StringEntry((("auction_" + w) + "_status"), "open"), BooleanEntry((("auction_" + w) + "_eggSell"), (G == "true")), IntegerEntry(f, (H + 1)), StringEntry((("auction_" + toBase58String(r)) + "_last"), w), StringEntry((("auction_" + w) + "_assetGen"), J), StringEntry((("auction_" + w) + "_assetId"), toBase58String(r)), IntegerEntry((("auction_" + w) + "_startedAt"), lastBlock.timestamp), StringEntry((("auction_" + w) + "_owner"), toString(C.originCaller)), StringEntry((("auction_" + w) + "_description"), F), IntegerEntry((("auction_" + w) + "_startPrice"), D), BooleanEntry((("auction_" + w) + "_isArtefact"), (value(assetInfo(r)).issuer == Address(c))), IntegerEntry((("auction_" + w) + "_instantPrice"), E), StringEntry((((("address_" + toString(C.originCaller)) + "_auction_") + w) + "_lockedNFT"), toBase58String(r))]
78+ else [StringEntry((("auction_" + n) + "_status"), "open"), BooleanEntry((("auction_" + n) + "_eggSell"), (z == "true")), StringEntry((("auction_" + toBase58String(r)) + "_last"), n), StringEntry((("auction_" + n) + "_assetGen"), B), StringEntry((("auction_" + n) + "_assetId"), toBase58String(r)), IntegerEntry((("auction_" + n) + "_startedAt"), lastBlock.timestamp), StringEntry((("auction_" + n) + "_owner"), toString(v.originCaller)), StringEntry((("auction_" + n) + "_description"), y), IntegerEntry((("auction_" + n) + "_startPrice"), w), BooleanEntry((("auction_" + n) + "_isArtefact"), (value(assetInfo(r)).issuer == Address(a))), IntegerEntry((("auction_" + n) + "_instantPrice"), x), StringEntry((((("address_" + toString(v.originCaller)) + "_auction_") + n) + "_lockedNFT"), toBase58String(r))]
11579 }
11680
11781
11882
119-@Callable(C)
120-func cancelAuction (w) = {
121- let K = n((("auction_" + w) + "_owner"))
122- if ((toString(C.originCaller) != K))
123- then throw("Only allowed to auction owner")
124- else if ((n((("auction_" + w) + "_status")) != "open"))
125- then throw("auction is close")
126- else [StringEntry((("auction_" + w) + "_status"), "cancelled"), DeleteEntry((((("address_" + K) + "_auction_") + w) + "_lockedNFT")), ScriptTransfer(C.originCaller, 1, fromBase58String(getStringValue(this, (("auction_" + w) + "_assetId"))))]
83+@Callable(v)
84+func placeBid (n) = {
85+ let p = l((("auction_" + n) + "_eggSell"))
86+ let q = if ((p == true))
87+ then b
88+ else unit
89+ let C = if ((p == true))
90+ then "EGG"
91+ else "WAVES"
92+ let A = value(v.payments[0])
93+ let D = A.amount
94+ let o = toBase58String(v.transactionId)
95+ let r = getStringValue(this, (("auction_" + n) + "_assetId"))
96+ if ((A.assetId != q))
97+ then throw((("Auction does only support " + C) + " payments."))
98+ else {
99+ let E = f((("auction_" + n) + "_startPrice"))
100+ if ((E > D))
101+ then throw(("The minimal initial price is set as " + toString(E)))
102+ else [StringEntry((((("auction_" + n) + "_bid_") + o) + "_author"), toString(v.originCaller)), StringEntry((((("assetId_" + r) + "_bid_") + o) + "_data"), (((((("{\"auctionId\": \"" + n) + "\", \"author\": \"") + toString(v.originCaller)) + "\", \"amount\": \"") + toString(D)) + "\", \"status\": \"open\"}")), IntegerEntry((((("auction_" + n) + "_bid_") + o) + "_amount"), D), StringEntry(((((("address_" + toString(v.originCaller)) + "_auction_") + n) + "_bid_") + o), r), StringEntry((((("auction_" + n) + "_bid_") + o) + "_status"), "open")]
103+ }
127104 }
128105
129106
130107
131-@Callable(C)
132-func instantBuy (w) = {
133- let y = o((("auction_" + w) + "_eggSell"))
134- let z = if ((y == true))
108+@Callable(v)
109+func acceptBid (n,o) = {
110+ let p = l((("auction_" + n) + "_eggSell"))
111+ let q = if ((p == true))
112+ then b
113+ else unit
114+ let F = k((("auction_" + n) + "_owner"))
115+ let s = k((((("auction_" + n) + "_bid_") + o) + "_author"))
116+ let t = f((((("auction_" + n) + "_bid_") + o) + "_amount"))
117+ let G = k((((("auction_" + n) + "_bid_") + o) + "_status"))
118+ let r = k((("auction_" + n) + "_assetId"))
119+ let H = if ((l((("auction_" + n) + "_isArtefact")) == true))
135120 then e
121+ else d
122+ if ((toString(v.originCaller) != F))
123+ then throw("Only allowed to auction owner")
124+ else if ((G != "open"))
125+ then throw("Bid was cancelled and cannot be accepted")
126+ else if ((k((("auction_" + n) + "_status")) != "open"))
127+ then throw("Auction was closed")
128+ else {
129+ let I = f((r + "_recordPrice"))
130+ let J = max([I, t])
131+[StringEntry((((("auction_" + n) + "_bid_") + o) + "_status"), "finished"), StringEntry((("auction_" + n) + "_status"), "finished"), StringEntry((((("assetId_" + r) + "_bid_") + o) + "_data"), (((((("{\"auctionId\": \"" + n) + "\", \"author\": \"") + toString(v.originCaller)) + "\", \"amount\": \"") + toString(t)) + "\", \"status\": \"finished\"}")), IntegerEntry((("auction_" + n) + "_finalPrice"), t), IntegerEntry((r + "_recordPrice"), J), DeleteEntry(((((("address_" + s) + "_auction_") + n) + "_bid_") + o)), DeleteEntry((((("address_" + F) + "_auction_") + n) + "_lockedNFT")), ScriptTransfer(v.caller, fraction(t, (100 - H), 100), q), ScriptTransfer(Address(c), fraction(t, H, 100), q), ScriptTransfer(addressFromStringValue(s), 1, fromBase58String(r))]
132+ }
133+ }
134+
135+
136+
137+@Callable(v)
138+func cancelBid (n,o) = {
139+ let r = getStringValue(this, (("auction_" + n) + "_assetId"))
140+ let s = k((((("auction_" + n) + "_bid_") + o) + "_author"))
141+ let t = f((((("auction_" + n) + "_bid_") + o) + "_amount"))
142+ if ((toString(v.originCaller) != s))
143+ then throw("Only allowed to the bid author")
144+ else if ((k((((("auction_" + n) + "_bid_") + o) + "_status")) != "open"))
145+ then throw("bid is not open")
146+ else m(n, o)
147+ }
148+
149+
150+
151+@Callable(v)
152+func cancelAuction (n) = {
153+ let F = k((("auction_" + n) + "_owner"))
154+ if ((toString(v.originCaller) != F))
155+ then throw("Only allowed to auction owner")
156+ else if ((k((("auction_" + n) + "_status")) != "open"))
157+ then throw("auction is close")
158+ else [StringEntry((("auction_" + n) + "_status"), "cancelled"), DeleteEntry((((("address_" + F) + "_auction_") + n) + "_lockedNFT")), ScriptTransfer(v.originCaller, 1, fromBase58String(getStringValue(this, (("auction_" + n) + "_assetId"))))]
159+ }
160+
161+
162+
163+@Callable(v)
164+func instantBuy (n) = {
165+ let p = l((("auction_" + n) + "_eggSell"))
166+ let q = if ((p == true))
167+ then b
136168 else unit
137- let L = if ((y == true))
169+ let C = if ((p == true))
138170 then "EGG"
139171 else "WAVES"
140- let I = value(C.payments[0])
141- let M = I.amount
142- let r = n((("auction_" + w) + "_assetId"))
143- let x = toBase58String(C.transactionId)
144- let N = n((("auction_" + w) + "_status"))
145- let O = if ((o((("auction_" + w) + "_isArtefact")) == true))
146- then h
147- else g
148- if ((I.assetId != z))
149- then throw((("Auction does only support " + L) + " payments."))
150- else if ((N != "open"))
172+ let A = value(v.payments[0])
173+ let D = A.amount
174+ let r = k((("auction_" + n) + "_assetId"))
175+ let o = toBase58String(v.transactionId)
176+ let K = k((("auction_" + n) + "_status"))
177+ let H = if ((l((("auction_" + n) + "_isArtefact")) == true))
178+ then e
179+ else d
180+ if ((A.assetId != q))
181+ then throw((("Auction does only support " + C) + " payments."))
182+ else if ((K != "open"))
151183 then throw("Auction is closed. You cannot place a bid.")
152184 else {
153- let E = i((("auction_" + w) + "_instantPrice"))
154- if ((E > M))
155- then throw(("For instant purchase you need to pay at least " + toString(E)))
185+ let x = f((("auction_" + n) + "_instantPrice"))
186+ if ((x > D))
187+ then throw(("For instant purchase you need to pay at least " + toString(x)))
156188 else {
157- let K = n((("auction_" + w) + "_owner"))
158- let P = i((r + "_recordPrice"))
159- let Q = max([P, M])
160-[StringEntry((("auction_" + w) + "_status"), "finished"), IntegerEntry((("auction_" + w) + "_finalPrice"), M), IntegerEntry((r + "_recordPrice"), Q), StringEntry((((("assetId_" + r) + "_bid_") + x) + "_data"), (((((("{\"auctionId\": \"" + w) + "\", \"author\": \"") + toString(C.originCaller)) + "\", \"amount\": \"") + toString(M)) + "\", \"status\": \"finished\"}")), DeleteEntry((((("address_" + K) + "_auction_") + w) + "_lockedNFT")), ScriptTransfer(C.originCaller, 1, fromBase58String(getStringValue(this, (("auction_" + w) + "_assetId")))), ScriptTransfer(addressFromStringValue(K), fraction(M, (100 - O), 100), z), ScriptTransfer(Address(d), fraction(M, O, 100), z)]
189+ let F = k((("auction_" + n) + "_owner"))
190+ let I = f((r + "_recordPrice"))
191+ let J = max([I, D])
192+[StringEntry((("auction_" + n) + "_status"), "finished"), IntegerEntry((("auction_" + n) + "_finalPrice"), D), IntegerEntry((r + "_recordPrice"), J), StringEntry((((("assetId_" + r) + "_bid_") + o) + "_data"), (((((("{\"auctionId\": \"" + n) + "\", \"author\": \"") + toString(v.originCaller)) + "\", \"amount\": \"") + toString(D)) + "\", \"status\": \"finished\"}")), DeleteEntry((((("address_" + F) + "_auction_") + n) + "_lockedNFT")), ScriptTransfer(v.originCaller, 1, fromBase58String(getStringValue(this, (("auction_" + n) + "_assetId")))), ScriptTransfer(addressFromStringValue(F), fraction(D, (100 - H), 100), q), ScriptTransfer(Address(c), fraction(D, H, 100), q)]
161193 }
162194 }
163195 }
164196
165197
166-
167-@Callable(C)
168-func placeBid (w) = {
169- let y = o((("auction_" + w) + "_eggSell"))
170- let z = if ((y == true))
171- then e
172- else unit
173- let L = if ((y == true))
174- then "EGG"
175- else "WAVES"
176- let I = value(C.payments[0])
177- let M = I.amount
178- let x = toBase58String(C.transactionId)
179- let r = getStringValue(this, (("auction_" + w) + "_assetId"))
180- if ((I.assetId != z))
181- then throw((("Auction does only support " + L) + " payments."))
182- else if ((n((("auction_" + w) + "_status")) != "open"))
183- then throw("Auction was closed")
184- else {
185- let R = i((("auction_" + w) + "_startPrice"))
186- if ((R > M))
187- then throw(("The minimal initial price is set as " + toString(R)))
188- else [StringEntry((((("auction_" + w) + "_bid_") + x) + "_author"), toString(C.originCaller)), StringEntry((((("assetId_" + r) + "_bid_") + x) + "_data"), (((((("{\"auctionId\": \"" + w) + "\", \"author\": \"") + toString(C.originCaller)) + "\", \"amount\": \"") + toString(M)) + "\", \"status\": \"open\"}")), IntegerEntry((((("auction_" + w) + "_bid_") + x) + "_amount"), M), StringEntry(((((("address_" + toString(C.originCaller)) + "_auction_") + w) + "_bid_") + x), r), StringEntry((((("auction_" + w) + "_bid_") + x) + "_status"), "open")]
189- }
190- }
191-
192-
193-
194-@Callable(C)
195-func cancelBid (w,x) = {
196- let r = getStringValue(this, (("auction_" + w) + "_assetId"))
197- let A = n((((("auction_" + w) + "_bid_") + x) + "_author"))
198- let B = i((((("auction_" + w) + "_bid_") + x) + "_amount"))
199- if ((toString(C.originCaller) != A))
200- then throw("Only allowed to the bid author")
201- else if ((n((((("auction_" + w) + "_bid_") + x) + "_status")) != "open"))
202- then throw("bid is not open")
203- else v(w, x)
204- }
205-
206-
207-
208-@Callable(C)
209-func cancelOutdatedBid (w,x) = throw("to be released")
210-
211-
212-
213-@Callable(C)
214-func acceptBid (w,x) = {
215- let y = o((("auction_" + w) + "_eggSell"))
216- let z = if ((y == true))
217- then e
218- else unit
219- let K = n((("auction_" + w) + "_owner"))
220- let A = n((((("auction_" + w) + "_bid_") + x) + "_author"))
221- let B = i((((("auction_" + w) + "_bid_") + x) + "_amount"))
222- let S = n((((("auction_" + w) + "_bid_") + x) + "_status"))
223- let r = n((("auction_" + w) + "_assetId"))
224- let O = if ((o((("auction_" + w) + "_isArtefact")) == true))
225- then h
226- else g
227- if ((toString(C.originCaller) != K))
228- then throw("Only allowed to auction owner")
229- else if ((S != "open"))
230- then throw("Bid was cancelled and cannot be accepted")
231- else if ((n((("auction_" + w) + "_status")) != "open"))
232- then throw("Auction was closed")
233- else {
234- let P = i((r + "_recordPrice"))
235- let Q = max([P, B])
236-[StringEntry((((("auction_" + w) + "_bid_") + x) + "_status"), "finished"), StringEntry((("auction_" + w) + "_status"), "finished"), StringEntry((((("assetId_" + r) + "_bid_") + x) + "_data"), (((((("{\"auctionId\": \"" + w) + "\", \"author\": \"") + toString(C.originCaller)) + "\", \"amount\": \"") + toString(B)) + "\", \"status\": \"finished\"}")), IntegerEntry((("auction_" + w) + "_finalPrice"), B), IntegerEntry((r + "_recordPrice"), Q), DeleteEntry(((((("address_" + A) + "_auction_") + w) + "_bid_") + x)), DeleteEntry((((("address_" + K) + "_auction_") + w) + "_lockedNFT")), ScriptTransfer(C.caller, fraction(B, (100 - O), 100), z), ScriptTransfer(Address(d), fraction(B, O, 100), z), ScriptTransfer(addressFromStringValue(A), 1, fromBase58String(r))]
237- }
238- }
239-
240-
241-@Verifier(T)
242-func U () = sigVerify(T.bodyBytes, T.proofs[0], T.senderPublicKey)
198+@Verifier(L)
199+func M () = sigVerify(L.bodyBytes, L.proofs[0], L.senderPublicKey)
243200

github/deemru/w8io/03bedc9 
82.35 ms