tx · 5iw8SMTCS7mDfZNxabEkDm95vNJjaqf6WYoqDBV7bfrw

3N9CHPgP4cjToRcdiwyvfBhmS1rJp1JXZ6M:  -0.01000000 Waves

2022.09.28 19:52 [2249230] smart account 3N9CHPgP4cjToRcdiwyvfBhmS1rJp1JXZ6M > SELF 0.00000000 Waves

{ "type": 13, "id": "5iw8SMTCS7mDfZNxabEkDm95vNJjaqf6WYoqDBV7bfrw", "fee": 1000000, "feeAssetId": null, "timestamp": 1664383991875, "version": 2, "chainId": 84, "sender": "3N9CHPgP4cjToRcdiwyvfBhmS1rJp1JXZ6M", "senderPublicKey": "4qiLjTGUgpDVJ7UanWeBgnbjZ4PN1FR2cTKZJz3mDcyN", "proofs": [ "5G77azoAPVdxjZvNxfAwBts5bqEBXuMbzRavLgocL5TzgEW1EHWuYZKwYqfSyEs6vsDVh1E4Vg8UpZMJ7W9oYqDS" ], "script": "base64:AAIFAAAAAAAAAAgIAhIECgIICAAAAAsAAAAABFdOUzMCAAAALDNLV1FLcHFmUGd6eHZBWlUyQzlWcGlhTHh3ZjJrbmFoUDNWaUtTZ0p2ckZDAAAAAARXTlMyAgAAACwzb3RQcVFTRjFCdnI3WXBIY0JqN2Q1aEhQbm1VRWZxakZaVFFKeEdFSnNjTAAAAAAEV05TMQIAAAAsR3BWc2pVN1lhdUZGM2VaVnJRa3ZrZXNuakpBVnI3a1pvZ212aXh4Yjdock0AAAAABFdOUzACAAAALDRaUkdnVnROQUpNRWJOSzlFc2JCU0NKcEM0SGZBamlDUkg5aXJGaUUyTWtFAAAAABJuZnRDcmVhdGlvbkFkZHJlc3MJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVeT3cTSF+cgCv33IRJO8PB2ZyaDA3jUXEwAAAAAC2Rlc2NyaXB0aW9uAgAAAKBDcmVhdGVkIGJ5IDNQR0tFZTR5NTlWM1dMbkh3UEVVYU1XZGJ6eThzYjk4MmZHLiBORlQgbmFtZXNwYWNlIMKrLndhdmVzwrsuIEVhcmx5IGFkb3B0ZXIncyBORlQgdXNlZCBmb3IgTUVFRFVTLiBDcmVhdGVkIGJ5IEBtZWVkdXNfbmZ0LCBsYXVuY2hlZCBieSBAcHV6emxlX3N3YXAuAAAAAApjb2xsZWN0aW9uAgAAAAYud2F2ZXMBAAAADmdldEFzc2V0U3RyaW5nAAAAAQAAAAdhc3NldElkBAAAAAckbWF0Y2gwBQAAAAdhc3NldElkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAFiBQAAAAckbWF0Y2gwCQACWAAAAAEFAAAAAWICAAAABVdBVkVTAQAAAAx0cnlHZXRTdHJpbmcAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgIAAAAAAQAAAA9jYWxjUHJpY2VCeU5hbWUAAAABAAAABG5hbWUEAAAAA2xlbgkAATEAAAABBQAAAARuYW1lAwkAAGcAAAACBQAAAANsZW4AAAAAAAAAAAgJAABoAAAAAgAAAAAAAAAADwAAAAAA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", "height": 2249230, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: GQFR5a65QZLaoEy39DNFNWhsLrQrdZ8iHNGq75GVs9tL Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let WNS3 = "3KWQKpqfPgzxvAZU2C9VpiaLxwf2knahP3ViKSgJvrFC"
5+
6+let WNS2 = "3otPqQSF1Bvr7YpHcBj7d5hHPnmUEfqjFZTQJxGEJscL"
7+
8+let WNS1 = "GpVsjU7YauFF3eZVrQkvkesnjJAVr7kZogmvixxb7hrM"
9+
10+let WNS0 = "4ZRGgVtNAJMEbNK9EsbBSCJpC4HfAjiCRH9irFiE2MkE"
11+
12+let nftCreationAddress = Address(base58'3PFQjjDMiZKQZdu5JqTHD7HwgSXyp9Rw9By')
13+
14+let description = "Created by 3PGKEe4y59V3WLnHwPEUaMWdbzy8sb982fG. NFT namespace «.waves». Early adopter's NFT used for MEEDUS. Created by @meedus_nft, launched by @puzzle_swap."
15+
16+let collection = ".waves"
17+
18+func getAssetString (assetId) = match assetId {
19+ case b: ByteVector =>
20+ toBase58String(b)
21+ case _ =>
22+ "WAVES"
23+}
24+
25+
26+func tryGetString (key) = match getString(this, key) {
27+ case b: String =>
28+ b
29+ case _ =>
30+ ""
31+}
32+
33+
34+func calcPriceByName (name) = {
35+ let len = size(name)
36+ if ((len >= 8))
37+ then (15 * 100000000)
38+ else if (if ((8 > len))
39+ then (len >= 6)
40+ else false)
41+ then (20 * 100000000)
42+ else if (if ((6 > len))
43+ then (len >= 4)
44+ else false)
45+ then (25 * 100000000)
46+ else throw("You cannot buy VIP name here")
47+ }
48+
49+
50+func isWNSPaymentOk (name,assetId) = {
51+ let len = size(name)
52+ if ((len >= 8))
53+ then if (if (if ((assetId == WNS3))
54+ then true
55+ else (assetId == WNS2))
56+ then true
57+ else (assetId == WNS1))
58+ then true
59+ else (assetId == WNS0)
60+ else if ((len >= 6))
61+ then if (if ((assetId == WNS2))
62+ then true
63+ else (assetId == WNS1))
64+ then true
65+ else (assetId == WNS0)
66+ else if ((len >= 4))
67+ then if ((assetId == WNS1))
68+ then true
69+ else (assetId == WNS0)
70+ else if ((len >= 1))
71+ then (assetId == WNS0)
72+ else false
73+ }
74+
75+
76+@Callable(i)
77+func mint (name,link) = {
78+ let price = calcPriceByName(name)
79+ let nft = tryGetString(name)
80+ let assetId = getAssetString(i.payments[0].assetId)
81+ if ((nft != ""))
82+ then throw((name + ".waves nft namespace already exists"))
83+ else if ((size(i.payments) != 1))
84+ then throw("You should to provide payment")
85+ else if (if (if (if (if ((assetId != "WAVES"))
86+ then true
87+ else (assetId != WNS3))
88+ then true
89+ else (assetId != WNS2))
90+ then true
91+ else (assetId != WNS1))
92+ then true
93+ else (assetId != WNS0))
94+ then throw("You should to use WAVES or WNS tokens")
95+ else if (if ((assetId == "WAVES"))
96+ then (i.payments[0].amount != price)
97+ else false)
98+ then throw("Invalid WAVES payment amount")
99+ else if (!(isWNSPaymentOk(name, assetId)))
100+ then throw("Invalid WNS3 payment amount")
101+ else [StringEntry(name, "NFT ID")]
102+ }
103+
104+
105+@Verifier(tx)
106+func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
107+

github/deemru/w8io/169f3d6 
42.29 ms