tx · 79JCZFSyNtVnuyy4wQ5EzuactLCnnwNYgdAEs5MXpnr6 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx: -0.01000000 Waves 2023.03.27 15:44 [2508391] smart account 3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx > SELF 0.00000000 Waves
{ "type": 13, "id": "79JCZFSyNtVnuyy4wQ5EzuactLCnnwNYgdAEs5MXpnr6", "fee": 1000000, "feeAssetId": null, "timestamp": 1679921180701, "version": 2, "chainId": 84, "sender": "3N5BTH4bjnXn7AAKoj4sswxytsPGmdXUuTx", "senderPublicKey": "DyeDJ3fgwVVux2WRkxpLU9BbVjTM96AyV58b7bRFzCBx", "proofs": [ "2vurrsiwSQ8TMWpahvFBZu78NSXd25FKJByZDpGTa5GcMxzZizw1g9Hh5ujLmDpWmPyxwz4VHGF7JPaRttkNPAuT" ], "script": "base64:BgIKCAISBgoEGBgRAQEABXRlYW1zASCFY5Wj84iOsN4MF44ITr+aP5K7Jts66HaOFtwUIipIfgEBaQEGYnV5TmZ0BAZzZWxsZXIEbmZ0cwVwcmljZQt0b3RhbGFtb3VudAQFYnV5ZXIIBQFpBmNhbGxlcgQDbmZ0CQCQAwEFBG5mdHMEDGJ1eWVyQmFsYW5jZQkA8AcCBQVidXllcgUFdGVhbXMEBmFtb3VudAkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQDCQBmAgULdG90YWxhbW91bnQFBmFtb3VudAkAAgECHXlvdXIgcGF5aW5nIGFtbW91bnQgaXMgd3JvbmcgAwMJAQIhPQIJAJADAQUEbmZ0cwkAkAMBBQZzZWxsZXIGCQECIT0CCQCQAwEFBnNlbGxlcgkAkAMBBQVwcmljZQkAAgECTEludmFsaWQgaW5wdXQ6IE51bWJlciBvZiBORlRzLCBzZWxsZXIgYWRkcmVzc2VzLCBhbmQgY29zdHMgbXVzdCBiZSB0aGUgc2FtZS4DCQBmAgUGYW1vdW50BQxidXllckJhbGFuY2UJAAIBAjpCdXllciBkb2VzIG5vdCBoYXZlIGVub3VnaCBmdW5kcyB0byBjb21wbGV0ZSB0aGUgcHVyY2hhc2UuAwMDCQAAAgkAkAMBBQRuZnRzAAEGCQAAAgkAkAMBBQZzZWxsZXIAAQYJAAACCQCQAwEFBXByaWNlAAEJAMwIAgkBC1N0cmluZ0VudHJ5AgkApQgBCAUBaQZjYWxsZXIJAKQDAQUGYW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAAJAJEDAgUFcHJpY2UAAAUFdGVhbXMFA25pbAMDAwkAAAIJAJADAQUEbmZ0cwACBgkAAAIJAJADAQUGc2VsbGVyAAIGCQAAAgkAkAMBBQVwcmljZQACCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKUIAQgFAWkGY2FsbGVyCQCkAwEFBmFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZ0cwAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAEJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAAJAJEDAgUFcHJpY2UAAAUFdGVhbXMJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAEJAJEDAgUFcHJpY2UAAQUFdGVhbXMFA25pbAMDAwkAAAIJAJADAQUEbmZ0cwADBgkAAAIJAJADAQUGc2VsbGVyAAMGCQAAAgkAkAMBBQVwcmljZQADCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKUIAQgFAWkGY2FsbGVyCQCkAwEFBmFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZ0cwAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAEJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUFYnV5ZXIAAQkA2QQBCQCRAwIFBG5mdHMAAgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQkAkQMCBQZzZWxsZXIAAAkAkQMCBQVwcmljZQAABQV0ZWFtcwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQkAkQMCBQZzZWxsZXIAAQkAkQMCBQVwcmljZQABBQV0ZWFtcwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQkAkQMCBQZzZWxsZXIAAgkAkQMCBQVwcmljZQACBQV0ZWFtcwUDbmlsAwMDCQAAAgkAkAMBBQRuZnRzAAQGCQAAAgkAkAMBBQZzZWxsZXIABAYJAAACCQCQAwEFBXByaWNlAAQJAMwIAgkBC1N0cmluZ0VudHJ5AgkApQgBCAUBaQZjYWxsZXIJAKQDAQUGYW1vdW50CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUFYnV5ZXIAAQkA2QQBCQCRAwIFBG5mdHMAAQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZ0cwACCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAMJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAAJAJEDAgUFcHJpY2UAAAUFdGVhbXMJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAEJAJEDAgUFcHJpY2UAAQUFdGVhbXMJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAIJAJEDAgUFcHJpY2UAAgUFdGVhbXMJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBCQDZBAEJAJEDAgUGc2VsbGVyAAMJAJEDAgUFcHJpY2UAAwUFdGVhbXMFA25pbAMDAwkAAAIJAJADAQUEbmZ0cwAFBgkAAAIJAJADAQUGc2VsbGVyAAUGCQAAAgkAkAMBBQVwcmljZQAFCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKUIAQgFAWkGY2FsbGVyCQCkAwEFBmFtb3VudAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZ0cwAACQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFBWJ1eWVyAAEJANkEAQkAkQMCBQRuZnRzAAEJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUFYnV5ZXIAAQkA2QQBCQCRAwIFBG5mdHMAAgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQVidXllcgABCQDZBAEJAJEDAgUEbmZ0cwADCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBnNlbGxlcgAACQCRAwIFBXByaWNlAAAFBXRlYW1zCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBnNlbGxlcgABCQCRAwIFBXByaWNlAAEFBXRlYW1zCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBnNlbGxlcgACCQCRAwIFBXByaWNlAAIFBXRlYW1zCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBnNlbGxlcgADCQCRAwIFBXByaWNlAAMFBXRlYW1zCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJAQdBZGRyZXNzAQkA2QQBCQCRAwIFBnNlbGxlcgAECQCRAwIFBXByaWNlAAQFBXRlYW1zBQNuaWwFA25pbADJOesd", "height": 2508391, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2vitsdrcZh8gm5uZy6Foi8P1VxAD6UNKGq7NcfyfFPeS Next: 62Tg79ihRh7qyTPbXNMaMcwXmkzAYCSzgywzf2cusKdj Diff:
Old | New | Differences | |
---|---|---|---|
17 | 17 | then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.") | |
18 | 18 | else if ((j > i)) | |
19 | 19 | then throw("Buyer does not have enough funds to complete the purchase.") | |
20 | - | else if ((b.payments[0].assetId == a)) | |
21 | - | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a)] | |
22 | - | else if ((b.payments[0].assetId == unit)) | |
23 | - | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], unit), ScriptTransfer(Address(fromBase58String(c[1])), e[1], unit), ScriptTransfer(Address(fromBase58String(c[2])), e[2], unit)] | |
24 | - | else nil | |
20 | + | else if (if (if ((size(d) == 1)) | |
21 | + | then true | |
22 | + | else (size(c) == 1)) | |
23 | + | then true | |
24 | + | else (size(e) == 1)) | |
25 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a)] | |
26 | + | else if (if (if ((size(d) == 2)) | |
27 | + | then true | |
28 | + | else (size(c) == 2)) | |
29 | + | then true | |
30 | + | else (size(e) == 2)) | |
31 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a)] | |
32 | + | else if (if (if ((size(d) == 3)) | |
33 | + | then true | |
34 | + | else (size(c) == 3)) | |
35 | + | then true | |
36 | + | else (size(e) == 3)) | |
37 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a)] | |
38 | + | else if (if (if ((size(d) == 4)) | |
39 | + | then true | |
40 | + | else (size(c) == 4)) | |
41 | + | then true | |
42 | + | else (size(e) == 4)) | |
43 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(g, 1, fromBase58String(d[3])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a), ScriptTransfer(Address(fromBase58String(c[3])), e[3], a)] | |
44 | + | else if (if (if ((size(d) == 5)) | |
45 | + | then true | |
46 | + | else (size(c) == 5)) | |
47 | + | then true | |
48 | + | else (size(e) == 5)) | |
49 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(g, 1, fromBase58String(d[3])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a), ScriptTransfer(Address(fromBase58String(c[3])), e[3], a), ScriptTransfer(Address(fromBase58String(c[4])), e[4], a)] | |
50 | + | else nil | |
25 | 51 | } | |
26 | 52 | ||
27 | 53 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq' | |
5 | 5 | ||
6 | 6 | @Callable(b) | |
7 | 7 | func buyNft (c,d,e,f) = { | |
8 | 8 | let g = b.caller | |
9 | 9 | let h = size(d) | |
10 | 10 | let i = assetBalance(g, a) | |
11 | 11 | let j = value(b.payments[0].amount) | |
12 | 12 | if ((f > j)) | |
13 | 13 | then throw("your paying ammount is wrong ") | |
14 | 14 | else if (if ((size(d) != size(c))) | |
15 | 15 | then true | |
16 | 16 | else (size(c) != size(e))) | |
17 | 17 | then throw("Invalid input: Number of NFTs, seller addresses, and costs must be the same.") | |
18 | 18 | else if ((j > i)) | |
19 | 19 | then throw("Buyer does not have enough funds to complete the purchase.") | |
20 | - | else if ((b.payments[0].assetId == a)) | |
21 | - | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a)] | |
22 | - | else if ((b.payments[0].assetId == unit)) | |
23 | - | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], unit), ScriptTransfer(Address(fromBase58String(c[1])), e[1], unit), ScriptTransfer(Address(fromBase58String(c[2])), e[2], unit)] | |
24 | - | else nil | |
20 | + | else if (if (if ((size(d) == 1)) | |
21 | + | then true | |
22 | + | else (size(c) == 1)) | |
23 | + | then true | |
24 | + | else (size(e) == 1)) | |
25 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a)] | |
26 | + | else if (if (if ((size(d) == 2)) | |
27 | + | then true | |
28 | + | else (size(c) == 2)) | |
29 | + | then true | |
30 | + | else (size(e) == 2)) | |
31 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a)] | |
32 | + | else if (if (if ((size(d) == 3)) | |
33 | + | then true | |
34 | + | else (size(c) == 3)) | |
35 | + | then true | |
36 | + | else (size(e) == 3)) | |
37 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a)] | |
38 | + | else if (if (if ((size(d) == 4)) | |
39 | + | then true | |
40 | + | else (size(c) == 4)) | |
41 | + | then true | |
42 | + | else (size(e) == 4)) | |
43 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(g, 1, fromBase58String(d[3])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a), ScriptTransfer(Address(fromBase58String(c[3])), e[3], a)] | |
44 | + | else if (if (if ((size(d) == 5)) | |
45 | + | then true | |
46 | + | else (size(c) == 5)) | |
47 | + | then true | |
48 | + | else (size(e) == 5)) | |
49 | + | then [StringEntry(toString(b.caller), toString(j)), ScriptTransfer(g, 1, fromBase58String(d[0])), ScriptTransfer(g, 1, fromBase58String(d[1])), ScriptTransfer(g, 1, fromBase58String(d[2])), ScriptTransfer(g, 1, fromBase58String(d[3])), ScriptTransfer(Address(fromBase58String(c[0])), e[0], a), ScriptTransfer(Address(fromBase58String(c[1])), e[1], a), ScriptTransfer(Address(fromBase58String(c[2])), e[2], a), ScriptTransfer(Address(fromBase58String(c[3])), e[3], a), ScriptTransfer(Address(fromBase58String(c[4])), e[4], a)] | |
50 | + | else nil | |
25 | 51 | } | |
26 | 52 | ||
27 | 53 |
github/deemru/w8io/169f3d6 31.95 ms ◑