tx · 4C1tZudMfRYjqsYRv1Lqqs5JWyXZoGeTqaqoQTimpikb

3PQ5smtcz4F9F3rhbj3PX6GBgM4YtPkeHCg:  -0.02300000 Waves

2023.10.27 21:25 [3883228] smart account 3PQ5smtcz4F9F3rhbj3PX6GBgM4YtPkeHCg > SELF 0.00000000 Waves

{ "type": 13, "id": "4C1tZudMfRYjqsYRv1Lqqs5JWyXZoGeTqaqoQTimpikb", "fee": 2300000, "feeAssetId": null, "timestamp": 1698431192656, "version": 2, "chainId": 87, "sender": "3PQ5smtcz4F9F3rhbj3PX6GBgM4YtPkeHCg", "senderPublicKey": "FR8teTy3vHXM8K3qgseLD8fgBc5Rw5ge9NBZQFYYUJYL", "proofs": [ "3oaR7jQPZYt8eN4CtfwjuKs2R68aA4fpAFHWE9intWQnEuspAgPJJY7E16RJ1uz4TzDUwP1ducjW7iqoi68zzUoy" ], "script": "base64:AAIFAAAAAAAAABcIAhIDCgEIEg4KDAgBAQgIBAQIAQEBCAAAACgBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgAAAAdhZGRyZXNzAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAdhZGRyZXNzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAQAAAAx0cnlHZXRTdHJpbmcAAAABAAAAA2tleQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgUAAAAEdGhpcwUAAAADa2V5AQAAAAlnZXRPcmFjbGUAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAADHRyeUdldFN0cmluZwAAAAECAAAAFHN0YXRpY19vcmFjbGVBZGRyZXNzAQAAABJnZXRDZk1hc3RlckFkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAACAAAAFnN0YXRpY19jZk1hc3RlckFkZHJlc3MBAAAAEGdldEJhY2tlbmRQdWJLZXkAAAAACQACWQAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIJAQAAAAlnZXRPcmFjbGUAAAAAAgAAABRzdGF0aWNfYmFja2VuZFB1YktleQEAAAAKZ2V0TWF4RGlmZgAAAAAJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIJAQAAAAlnZXRPcmFjbGUAAAAAAgAAABNzdGF0aWNfbWF4UHJveHlEaWZmAQAAABlnZXRUdXJ0bGVJbmN1YmF0b3JBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAAAgAAAB1zdGF0aWNfdHVydGxlSW5jdWJhdG9yQWRkcmVzcwEAAAAXZ2V0VHVydGxlQnJlZWRlckFkZHJlc3MAAAAACQEAAAAHQWRkcmVzcwAAAAEJAAJZAAAAAQkBAAAAFHRyeUdldFN0cmluZ0V4dGVybmFsAAAAAgkBAAAACWdldE9yYWNsZQAAAAACAAAAG3N0YXRpY190dXJ0bGVCcmVlZGVyQWRkcmVzcwEAAAAPZ2V0SXRlbXNBZGRyZXNzAAAAAAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEJAQAAABR0cnlHZXRTdHJpbmdFeHRlcm5hbAAAAAIJAQAAAAlnZXRPcmFjbGUAAAAAAgAAABNzdGF0aWNfaXRlbXNBZGRyZXNzAAAAAA9rVG90YWxMaXF1aWRpdHkCAAAAD3RvdGFsX2xpcXVpZGl0eQAAAAAMa0luaXRpYWxpemVkAgAAAAtJTklUSUFMSVpFRAAAAAATa0xpcXVpZGl0eVRocmVzaG9sZAIAAAATTElRVUlESVRZX1RIUkVTSE9MRAAAAAARa1RvdGFsU2hhcmVUb2tlbnMCAAAAEnRvdGFsX3NoYXJlX3Rva2VucwAAAAANa1NoYXJlQXNzZXRJZAIAAAAOU0hBUkVfQVNTRVRfSUQAAAAADmtJbmN1YmF0b3JEYXBwAgAAAA5JTkNVQkFUT1JfREFQUAAAAAAMa0JyZWVkZXJEYXBwAgAAAAxCUkVFREVSX0RBUFAAAAAADGtGYXJtaW5nRGFwcAIAAAAMRkFSTUlOR19EQVBQAAAAABBrTWFya2V0UHJveHlEYXBwAgAAABZNQVJLRVRQTEFDRV9QUk9YWV9EQVBQAAAAAAxrQXVjdGlvbkRhcHACAAAADEFVQ1RJT05fREFQUAAAAAAHa0xvY2tlZAIAAAAGTE9DS0VEAAAAABNrVG90YWxGYXJtaW5nUmV3YXJkAgAAABR0b3RhbF9mYXJtaW5nX3Jld2FyZAAAAAAQa0Nlb0NvbGxlY3RlZEZlZQIAAAARY2VvX2NvbGxlY3RlZF9mZWUAAAAAF2tDZW9Db2xsZWN0ZWRGZWVPdmVyYWxsAgAAAA9jZW9fZmVlX292ZXJhbGwAAAAACGtUb0Rpc3RyAgAAAA10b19kaXN0cmlidXRlAQAAAAZnZXRJbnQAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgAAAAAAAAAAAAEAAAAVdHJ5R2V0Qm9vbGVhbkV4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", "height": 3883228, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5iYwtoenjWwd5HFvmnoHVBQggoGTxvwe5FY7V4yP3uTp Next: none Diff:
OldNewDifferences
267267 else if ((aE == "initAuction"))
268268 then {
269269 let aK = value(aC.payments[0])
270- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, toBase58String(value(aK.assetId)))
270+ let aL = if (E(m(), (("direct_cosmetic_" + ar) + "_sale")))
271+ then H(m(), ("direct_cosmetic_" + ar))
272+ else ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, toBase58String(value(aK.assetId)))
271273 let aM = fraction(aL, j(), 100)
272274 let aN = aF
273275 let aO = aG
289291 let ak = aH
290292 let aQ = aj(ak)
291293 let aR = value(value(aC.payments[0]).amount)
292- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
293- let aM = fraction(aL, j(), 100)
294- if ((aR > aL))
295- then throw(((((("Price is too high, avg price: " + toString(aL)) + ", max. price: ") + toString(aL)) + ", your bid: ") + toString(aR)))
294+ let aS = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
295+ let aM = fraction(aS, j(), 100)
296+ if ((aR > aS))
297+ then throw(((((("Price is too high, avg price: " + toString(aS)) + ", max. price: ") + toString(aS)) + ", your bid: ") + toString(aR)))
296298 else if ((size(aC.payments) != 1))
297299 then throw("_103")
298300 else {
299- let aS = invoke(aJ, "placeBid", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
300- if ((aS == aS))
301+ let aT = invoke(aJ, "placeBid", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
302+ if ((aT == aT))
301303 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
302304 else throw("Strict value is not equal to itself.")
303305 }
310312 let an = aI
311313 let aQ = aj(ak)
312314 let aR = am(ak, an)
313- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
314- let aM = fraction(aL, j(), 100)
315- if ((aL > aR))
316- then throw(((((("Price is too low, avg price: " + toString(aL)) + ", min. price: ") + toString(aL)) + ", your bid: ") + toString(aR)))
315+ let aS = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
316+ let aM = fraction(aS, j(), 100)
317+ if ((aS > aR))
318+ then throw(((((("Price is too low, avg price: " + toString(aS)) + ", min. price: ") + toString(aS)) + ", your bid: ") + toString(aR)))
317319 else {
318- let aT = invoke(aJ, "acceptBid", [ak, an], nil)
319- if ((aT == aT))
320+ let aU = invoke(aJ, "acceptBid", [ak, an], nil)
321+ if ((aU == aU))
320322 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
321323 else throw("Strict value is not equal to itself.")
322324 }
326328 let ak = aH
327329 let aQ = aj(ak)
328330 let aR = value(value(aC.payments[0]).amount)
329- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
330- let aM = if (E(m(), (("direct_cosmetic_" + ar) + "_sale")))
331+ let aS = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
332+ let aV = if (E(m(), (("direct_cosmetic_" + ar) + "_sale")))
331333 then H(m(), ("direct_cosmetic_" + ar))
332- else (aL + fraction(aL, 15, 100))
333- if ((aR > (aL + aM)))
334- then throw(((((("Price is too high, avg price: " + toString(aL)) + ", max. price: ") + toString((aL + aM))) + ", your bid: ") + toString(aR)))
334+ else (aS + fraction(aS, 15, 100))
335+ if ((aR > aV))
336+ then throw(((((("Price is too high, calc price: " + toString(aS)) + ", max. price after item check: ") + toString(aV)) + ", your buy price: ") + toString(aR)))
335337 else if ((size(aC.payments) != 1))
336338 then throw("_103")
337339 else {
338- let aU = invoke(aJ, "instantBuy", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
339- if ((aU == aU))
340+ let aW = invoke(aJ, "instantBuy", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
341+ if ((aW == aW))
340342 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
341343 else throw("Strict value is not equal to itself.")
342344 }
345347 then {
346348 let ak = aH
347349 let an = aI
348- let aT = invoke(aJ, "cancelBid", [ak, an], nil)
349- if ((aT == aT))
350+ let aU = invoke(aJ, "cancelBid", [ak, an], nil)
351+ if ((aU == aU))
350352 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
351353 else throw("Strict value is not equal to itself.")
352354 }
353355 else if ((aE == "cancelAuction"))
354356 then {
355357 let ak = aH
356- let aT = invoke(aJ, "cancelAuction", [ak], nil)
357- if ((aT == aT))
358+ let aU = invoke(aJ, "cancelAuction", [ak], nil)
359+ if ((aU == aU))
358360 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
359361 else throw("Strict value is not equal to itself.")
360362 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b,c) = {
55 let d = getString(b, c)
66 if ($isInstanceOf(d, "String"))
77 then {
88 let e = d
99 e
1010 }
1111 else ""
1212 }
1313
1414
1515 func f (c) = a(this, c)
1616
1717
1818 func g () = Address(fromBase58String(f("static_oracleAddress")))
1919
2020
2121 func h () = Address(fromBase58String(a(g(), "static_cfMasterAddress")))
2222
2323
2424 func i () = fromBase58String(getStringValue(g(), "static_backendPubKey"))
2525
2626
2727 func j () = getIntegerValue(g(), "static_maxProxyDiff")
2828
2929
3030 func k () = Address(fromBase58String(a(g(), "static_turtleIncubatorAddress")))
3131
3232
3333 func l () = Address(fromBase58String(a(g(), "static_turtleBreederAddress")))
3434
3535
3636 func m () = Address(fromBase58String(a(g(), "static_itemsAddress")))
3737
3838
3939 let n = "total_liquidity"
4040
4141 let o = "INITIALIZED"
4242
4343 let p = "LIQUIDITY_THRESHOLD"
4444
4545 let q = "total_share_tokens"
4646
4747 let r = "SHARE_ASSET_ID"
4848
4949 let s = "INCUBATOR_DAPP"
5050
5151 let t = "BREEDER_DAPP"
5252
5353 let u = "FARMING_DAPP"
5454
5555 let v = "MARKETPLACE_PROXY_DAPP"
5656
5757 let w = "AUCTION_DAPP"
5858
5959 let x = "LOCKED"
6060
6161 let y = "total_farming_reward"
6262
6363 let z = "ceo_collected_fee"
6464
6565 let A = "ceo_fee_overall"
6666
6767 let B = "to_distribute"
6868
6969 func C (c) = {
7070 let d = getInteger(this, c)
7171 if ($isInstanceOf(d, "Int"))
7272 then {
7373 let D = d
7474 D
7575 }
7676 else 0
7777 }
7878
7979
8080 func E (b,c) = {
8181 let d = getBoolean(b, c)
8282 if ($isInstanceOf(d, "Boolean"))
8383 then {
8484 let D = d
8585 D
8686 }
8787 else false
8888 }
8989
9090
9191 func F (c) = E(this, c)
9292
9393
9494 func G (e,c) = {
9595 let d = getBoolean(e, c)
9696 if ($isInstanceOf(d, "Boolean"))
9797 then {
9898 let D = d
9999 D
100100 }
101101 else unit
102102 }
103103
104104
105105 func H (b,c) = {
106106 let d = getInteger(b, c)
107107 if ($isInstanceOf(d, "Int"))
108108 then {
109109 let D = d
110110 D
111111 }
112112 else 0
113113 }
114114
115115
116116 func I () = a(h(), w)
117117
118118
119119 func J (K) = if (contains(K, "0"))
120120 then ""
121121 else K
122122
123123
124124 func L (M) = {
125125 let N = a(h(), s)
126126 let O = a(h(), t)
127127 if ((M == "G"))
128128 then fromBase58String(N)
129129 else fromBase58String(O)
130130 }
131131
132132
133133 func P (Q,M) = {
134134 let R = getIntegerValue(Address(L(M)), (("stats_" + Q) + "_quantity"))
135135 let S = pow((10000 / R), 4, 5, 1, 2, FLOOR)
136136 if ((S > 0))
137137 then S
138138 else 2
139139 }
140140
141141
142142 func T (U) = {
143143 let d = U
144144 if ($isInstanceOf(d, "String"))
145145 then {
146146 let V = d
147147 V
148148 }
149149 else throw("wrong type, expected: String")
150150 }
151151
152152
153153 func W (X) = {
154154 let O = fromBase58String(a(h(), t))
155155 let N = fromBase58String(a(h(), s))
156156 if (if ((value(assetInfo(X)).issuer == Address(O)))
157157 then true
158158 else (value(assetInfo(X)).issuer == Address(N)))
159159 then {
160160 let Y = value(assetInfo(X)).name
161161 let M = take(takeRight(Y, 2), 1)
162162 let Z = T(invoke(Address(O), "getGenFromName", [Y], nil))
163163 if ((Z == Z))
164164 then P(Z, M)
165165 else throw("Strict value is not equal to itself.")
166166 }
167167 else throw("MGAFP: _20")
168168 }
169169
170170
171171 func aa (X) = {
172172 let O = l()
173173 let N = k()
174174 if (if ((value(assetInfo(X)).issuer == O))
175175 then true
176176 else (value(assetInfo(X)).issuer == N))
177177 then true
178178 else throw("MGTFP: _20")
179179 }
180180
181181
182182 func ab (ac) = {
183183 let ad = W(ac)
184184 let O = addressFromStringValue(a(h(), t))
185185 let ae = H(O, (("asset_" + toBase58String(ac)) + "_children"))
186186 let af = if ((ae > 0))
187187 then "0"
188188 else "1"
189189 let ag = getInteger(h(), ((("r-" + toString(ad)) + "-b-") + af))
190190 let d = ag
191191 if ($isInstanceOf(d, "Int"))
192192 then {
193193 let ah = d
194194 let ai = if ((ae > 0))
195195 then (200000000 * ad)
196196 else 18000000000
197197 if ((ai > ah))
198198 then ai
199199 else ah
200200 }
201201 else throw((((("There is no price for such duck: " + "r-") + toString(ad)) + "-b-") + af))
202202 }
203203
204204
205205 func aj (ak) = {
206206 let al = I()
207207 a(addressFromStringValue(al), (("auction_" + ak) + "_assetId"))
208208 }
209209
210210
211211 func am (ak,an) = {
212212 let al = I()
213213 H(addressFromStringValue(al), (((("auction_" + ak) + "_bid_") + an) + "_amount"))
214214 }
215215
216216
217217 func ao (ap,aq,ar,ah,ad,as,at,au) = if ((ah == 0))
218218 then throw("MCACS: No price calculated, so action not allowed! Please contact admin!")
219219 else {
220220 let av = if ((ad != "0"))
221221 then (ar != "")
222222 else false
223223 let aw = (ad != "0")
224224 let ax = if (av)
225225 then makeString([ad, aq, ap, ar, toString(ah), toString(as)], ";")
226226 else if (aw)
227227 then makeString([ad, aq, toString(ah), toString(as)], ";")
228228 else makeString([ar, toString(ah), toString(as)], ";")
229229 let ay = 3600000
230230 if (!(sigVerify_8Kb(toBytes(ax), fromBase58String(at), i())))
231231 then throw(((((("MCACS: Invalid proof from backend key" + toBase58String(i())) + " ") + ax) + " ") + toString(av)))
232232 else {
233233 let az = lastBlock.timestamp
234234 if ((az > (as + ay)))
235235 then throw("MCACS: Outdated signature!")
236236 else if (av)
237237 then {
238238 let aA = W(fromBase58String(au))
239239 let aB = (aA - parseIntValue(split(ad, ".")[0]))
240240 if (if ((-5 > aB))
241241 then true
242242 else (aB > 5))
243243 then throw(((((("MCACS: It seems not the correct price info was passed! " + toString(aA)) + " ") + ad) + " ") + toString(aB)))
244244 else ah
245245 }
246246 else if (aw)
247247 then if ((aa(fromBase58String(au)) == true))
248248 then ah
249249 else throw("MCACS: This does not seem a turtle!")
250250 else ah
251251 }
252252 }
253253
254254
255255 @Callable(aC)
256256 func configureOracle (aD) = if ((aC.caller != this))
257257 then throw("BCO: admin only")
258258 else [StringEntry("static_oracleAddress", aD)]
259259
260260
261261
262262 @Callable(aC)
263263 func callMarketplaceProxy (aE,aF,aG,aH,aI,ap,aq,ar,ah,ad,as,at) = {
264264 let aJ = addressFromStringValue(I())
265265 if ((G(h(), ("farm_" + toString(aC.caller))) != true))
266266 then throw("_301=")
267267 else if ((aE == "initAuction"))
268268 then {
269269 let aK = value(aC.payments[0])
270- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, toBase58String(value(aK.assetId)))
270+ let aL = if (E(m(), (("direct_cosmetic_" + ar) + "_sale")))
271+ then H(m(), ("direct_cosmetic_" + ar))
272+ else ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, toBase58String(value(aK.assetId)))
271273 let aM = fraction(aL, j(), 100)
272274 let aN = aF
273275 let aO = aG
274276 if (if (((aL - aM) > aN))
275277 then true
276278 else (aN > aO))
277279 then throw(((((("Price is too low, avg price: " + toString(aL)) + ", min. price: ") + toString((aL - aM))) + ", your bid: ") + toString(aN)))
278280 else if ((value(aK.amount) != 1))
279281 then throw("_103")
280282 else {
281283 let aP = invoke(aJ, "initAuction", [aN, aO, aH, aI], [AttachedPayment(value(aK.assetId), 1)])
282284 if ((aP == aP))
283285 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), toBase58String(value(aK.assetId)))]
284286 else throw("Strict value is not equal to itself.")
285287 }
286288 }
287289 else if ((aE == "placeBid"))
288290 then {
289291 let ak = aH
290292 let aQ = aj(ak)
291293 let aR = value(value(aC.payments[0]).amount)
292- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
293- let aM = fraction(aL, j(), 100)
294- if ((aR > aL))
295- then throw(((((("Price is too high, avg price: " + toString(aL)) + ", max. price: ") + toString(aL)) + ", your bid: ") + toString(aR)))
294+ let aS = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
295+ let aM = fraction(aS, j(), 100)
296+ if ((aR > aS))
297+ then throw(((((("Price is too high, avg price: " + toString(aS)) + ", max. price: ") + toString(aS)) + ", your bid: ") + toString(aR)))
296298 else if ((size(aC.payments) != 1))
297299 then throw("_103")
298300 else {
299- let aS = invoke(aJ, "placeBid", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
300- if ((aS == aS))
301+ let aT = invoke(aJ, "placeBid", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
302+ if ((aT == aT))
301303 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
302304 else throw("Strict value is not equal to itself.")
303305 }
304306 }
305307 else if ((aE == "acceptBid"))
306308 then if (true)
307309 then throw("MCACS: Accepting bids is disabled for Collective Farms!")
308310 else {
309311 let ak = aH
310312 let an = aI
311313 let aQ = aj(ak)
312314 let aR = am(ak, an)
313- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
314- let aM = fraction(aL, j(), 100)
315- if ((aL > aR))
316- then throw(((((("Price is too low, avg price: " + toString(aL)) + ", min. price: ") + toString(aL)) + ", your bid: ") + toString(aR)))
315+ let aS = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
316+ let aM = fraction(aS, j(), 100)
317+ if ((aS > aR))
318+ then throw(((((("Price is too low, avg price: " + toString(aS)) + ", min. price: ") + toString(aS)) + ", your bid: ") + toString(aR)))
317319 else {
318- let aT = invoke(aJ, "acceptBid", [ak, an], nil)
319- if ((aT == aT))
320+ let aU = invoke(aJ, "acceptBid", [ak, an], nil)
321+ if ((aU == aU))
320322 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
321323 else throw("Strict value is not equal to itself.")
322324 }
323325 }
324326 else if ((aE == "instantBuy"))
325327 then {
326328 let ak = aH
327329 let aQ = aj(ak)
328330 let aR = value(value(aC.payments[0]).amount)
329- let aL = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
330- let aM = if (E(m(), (("direct_cosmetic_" + ar) + "_sale")))
331+ let aS = ao(toString(ap), toString(aq), ar, ah, toString(ad), as, at, aQ)
332+ let aV = if (E(m(), (("direct_cosmetic_" + ar) + "_sale")))
331333 then H(m(), ("direct_cosmetic_" + ar))
332- else (aL + fraction(aL, 15, 100))
333- if ((aR > (aL + aM)))
334- then throw(((((("Price is too high, avg price: " + toString(aL)) + ", max. price: ") + toString((aL + aM))) + ", your bid: ") + toString(aR)))
334+ else (aS + fraction(aS, 15, 100))
335+ if ((aR > aV))
336+ then throw(((((("Price is too high, calc price: " + toString(aS)) + ", max. price after item check: ") + toString(aV)) + ", your buy price: ") + toString(aR)))
335337 else if ((size(aC.payments) != 1))
336338 then throw("_103")
337339 else {
338- let aU = invoke(aJ, "instantBuy", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
339- if ((aU == aU))
340+ let aW = invoke(aJ, "instantBuy", [ak], [AttachedPayment(value(aC.payments[0]).assetId, aR)])
341+ if ((aW == aW))
340342 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
341343 else throw("Strict value is not equal to itself.")
342344 }
343345 }
344346 else if ((aE == "cancelBid"))
345347 then {
346348 let ak = aH
347349 let an = aI
348- let aT = invoke(aJ, "cancelBid", [ak, an], nil)
349- if ((aT == aT))
350+ let aU = invoke(aJ, "cancelBid", [ak, an], nil)
351+ if ((aU == aU))
350352 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
351353 else throw("Strict value is not equal to itself.")
352354 }
353355 else if ((aE == "cancelAuction"))
354356 then {
355357 let ak = aH
356- let aT = invoke(aJ, "cancelAuction", [ak], nil)
357- if ((aT == aT))
358+ let aU = invoke(aJ, "cancelAuction", [ak], nil)
359+ if ((aU == aU))
358360 then [StringEntry(("tx_" + toBase58String(aC.transactionId)), ak)]
359361 else throw("Strict value is not equal to itself.")
360362 }
361363 else throw("_13")
362364 }
363365
364366

github/deemru/w8io/3ef1775 
77.14 ms