tx · FsX2Xb3eLrgVj4zcXk9RhdiugM7QUs737F5LhgsSvcc4

3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx:  -0.01000000 Waves

2023.03.24 13:01 [2503940] smart account 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx > SELF 0.00000000 Waves

{ "type": 13, "id": "FsX2Xb3eLrgVj4zcXk9RhdiugM7QUs737F5LhgsSvcc4", "fee": 1000000, "feeAssetId": null, "timestamp": 1679652230708, "version": 2, "chainId": 84, "sender": "3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx", "senderPublicKey": "DyeDJ3fgwVVux2WRkxpLU9BbVjTM96AyV58b7bRFzCBx", "proofs": [ "6uGZvdJhYoqsfsT2MWUFBHPV49c2KHAoDmmtRmARSQ1CxwrbfWKTiCTh6RpptLwufmptwmx1f431niDS63KVUMm" ], "script": "base64:BgIJCAISBQoDGBgRAAEBaQEGYnV5TmZ0AwZzZWxsZXIEbmZ0cwVwcmljZQQFYnV5ZXIIBQFpBmNhbGxlcgQDbmZ0CQCQAwEFBG5mdHMEDGJ1eWVyQmFsYW5jZQkA8AcCBQVidXllcgEghWOVo/OIjrDeDBeOCE6/mj+SuybbOuh2jhbcFCIqSH4EBmFtb3VudAkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQEBmxlbmd0aAkAsQIBAgVuZnRJZAoBA3N1bQIFYWNjdW0EbmV4dAkAZAIFBWFjY3VtBQRuZXh0BANhcnIFBXByaWNlBAl0b3RhbENvc3QKAAIkbAUDYXJyCgACJHMJAJADAQUCJGwKAAUkYWNjMAAACgEFJGYwXzECAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAQNzdW0CBQIkYQkAkQMCBQIkbAUCJGkKAQUkZjBfMgICJGECJGkDCQBnAgUCJGkFAiRzBQIkYQkAAgECE0xpc3Qgc2l6ZSBleGNlZWRzIDUJAQUkZjBfMgIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIJAQUkZjBfMQIFBSRhY2MwAAAAAQACAAMABAAFBAZvbmVQcm8JANkEAQkAkQMCBQRuZnRzAAAEBnR3b1BybwkA2QQBCQCRAwIFBG5mdHMAAQMJAGYCBQl0b3RhbENvc3QFBmFtb3VudAkAAgECHXlvdXIgcGF5aW5nIGFtbW91bnQgaXMgd3JvbmcgAwMJAQIhPQIJAJADAQUEbmZ0cwkAkAMBBQZzZWxsZXIGCQECIT0CCQCQAwEFBnNlbGxlcgkAkAMBBQVwcmljZQkAAgECTEludmFsaWQgaW5wdXQ6IE51bWJlciBvZiBORlRzLCBzZWxsZXIgYWRkcmVzc2VzLCBhbmQgY29zdHMgbXVzdCBiZSB0aGUgc2FtZS4DCQBmAgUGYW1vdW50BQxidXllckJhbGFuY2UJAAIBAjpCdXllciBkb2VzIG5vdCBoYXZlIGVub3VnaCBmdW5kcyB0byBjb21wbGV0ZSB0aGUgcHVyY2hhc2UuCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKUIAQgFAWkGY2FsbGVyCQCkAwEFBmFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABBQZvbmVQcm8JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUFYnV5ZXIAAQUGdHdvUHJvBQNuaWwAmOdIEQ==", "height": 2503940, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9GQCDoXgThMGC7DbsnRw88ZDQr4Evgk6LgfueY1Dvva Next: 6QSHtqxxB8NjQn8BJeNa35D7g9HTNMUbcK2TxdPkcWDM Diff:
OldNewDifferences
2727
2828 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
2929 }
30- func map (accum,next) = (accum :+ next)
31-
32- let brr = nfts
33- let total = {
34- let $l = brr
35- let $s = size($l)
36- let $acc0 = nil
37- func $f1_1 ($a,$i) = if (($i >= $s))
38- then $a
39- else map($a, $l[$i])
40-
41- func $f1_2 ($a,$i) = if (($i >= $s))
42- then $a
43- else throw("List size exceeds 5")
44-
45- $f1_2($f1_1($f1_1($f1_1($f1_1($f1_1($acc0, 0), 1), 2), 3), 4), 5)
46- }
47- let onePro = fromBase58String(total[0])
48- let twoPro = fromBase58String(total[1])
49-[StringEntry(toString(i.caller), toString(amount)), ScriptTransfer(buyer, 1, onePro), ScriptTransfer(buyer, 1, twoPro)]
30+ let onePro = fromBase58String(nfts[0])
31+ let twoPro = fromBase58String(nfts[1])
32+ if ((totalCost > amount))
33+ then throw("your paying ammount is wrong ")
34+ else if (if ((size(nfts) != size(seller)))
35+ then true
36+ else (size(seller) != size(price)))
37+ then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.")
38+ else if ((amount > buyerBalance))
39+ then throw("Buyer does not have enough funds to complete the purchase.")
40+ else [StringEntry(toString(i.caller), toString(amount)), ScriptTransfer(buyer, 1, onePro), ScriptTransfer(buyer, 1, twoPro)]
5041 }
5142
5243
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
77 func buyNft (seller,nfts,price) = {
88 let buyer = i.caller
99 let nft = size(nfts)
1010 let buyerBalance = assetBalance(buyer, base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq')
1111 let amount = value(i.payments[0].amount)
1212 let length = size("nftId")
1313 func sum (accum,next) = (accum + next)
1414
1515 let arr = price
1616 let totalCost = {
1717 let $l = arr
1818 let $s = size($l)
1919 let $acc0 = 0
2020 func $f0_1 ($a,$i) = if (($i >= $s))
2121 then $a
2222 else sum($a, $l[$i])
2323
2424 func $f0_2 ($a,$i) = if (($i >= $s))
2525 then $a
2626 else throw("List size exceeds 5")
2727
2828 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
2929 }
30- func map (accum,next) = (accum :+ next)
31-
32- let brr = nfts
33- let total = {
34- let $l = brr
35- let $s = size($l)
36- let $acc0 = nil
37- func $f1_1 ($a,$i) = if (($i >= $s))
38- then $a
39- else map($a, $l[$i])
40-
41- func $f1_2 ($a,$i) = if (($i >= $s))
42- then $a
43- else throw("List size exceeds 5")
44-
45- $f1_2($f1_1($f1_1($f1_1($f1_1($f1_1($acc0, 0), 1), 2), 3), 4), 5)
46- }
47- let onePro = fromBase58String(total[0])
48- let twoPro = fromBase58String(total[1])
49-[StringEntry(toString(i.caller), toString(amount)), ScriptTransfer(buyer, 1, onePro), ScriptTransfer(buyer, 1, twoPro)]
30+ let onePro = fromBase58String(nfts[0])
31+ let twoPro = fromBase58String(nfts[1])
32+ if ((totalCost > amount))
33+ then throw("your paying ammount is wrong ")
34+ else if (if ((size(nfts) != size(seller)))
35+ then true
36+ else (size(seller) != size(price)))
37+ then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.")
38+ else if ((amount > buyerBalance))
39+ then throw("Buyer does not have enough funds to complete the purchase.")
40+ else [StringEntry(toString(i.caller), toString(amount)), ScriptTransfer(buyer, 1, onePro), ScriptTransfer(buyer, 1, twoPro)]
5041 }
5142
5243

github/deemru/w8io/169f3d6 
68.57 ms