tx · DCujGG8XkELWk45tzZvPEXb6WPJzW7wSvdoRVRfQGN5V

3N2eA4yzXa4wTj7pP8r6G144RRxZW7cmq4p:  -0.01400000 Waves

2021.06.28 12:43 [1590068] smart account 3N2eA4yzXa4wTj7pP8r6G144RRxZW7cmq4p > SELF 0.00000000 Waves

{ "type": 13, "id": "DCujGG8XkELWk45tzZvPEXb6WPJzW7wSvdoRVRfQGN5V", "fee": 1400000, "feeAssetId": null, "timestamp": 1624873455609, "version": 2, "chainId": 84, "sender": "3N2eA4yzXa4wTj7pP8r6G144RRxZW7cmq4p", "senderPublicKey": "Hh3eFP2XFetZSfTxQiM1Ps96f68zi8Zh5ghhCZdjgdFs", "proofs": [ "3FERpsJhdW8z11sHcysYG7tTJXLehxZZvmF3MQX6knbx5xx3bDmdRauxn2HeGb4H1nyFmW8Qbkc6oDJ2AGvtAy8V" ], "script": "base64:AAIEAAAAAAAAAB8IAhIECgIECBIECgIBCBIFCgMIAQgSAwoBCBIDCgEIAAAAMgAAAAAIdW5pdFRlc3QHAAAAAAlvcmFjbGVGZWUJAQAAAAV2YWx1ZQAAAAEJAAQmAAAAAQIAAAAjM04yczVSdGFIUEJlbkNzeDJFQ2NvRlJiWUh4M25vWmhYVzEAAAAACHNpZ25EYXBwCQEAAAAFdmFsdWUAAAABCQAEJgAAAAECAAAAIzNOQzI4aFNpdnJtc1RVWGFZRDF4NkwzNjJKNFpwVW5vVGRCAAAAAAxhcnR3b3Jrc0RhcHAJAQAAAAV2YWx1ZQAAAAEJAAQmAAAAAQIAAAAjM05CeW5mYlhDMkthc3RVeGh1a2NNVWFFNThLOWNCZEI5VVkAAAAAC2ZlZVJlY2VpdmVyAgAAACMzTjFFNnRYZGRSb1ZhUmZROWRRM3ZnNUxhVzJmc2Q4SEt1YgAAAAAIdXNlckRhcHADBQAAAAh1bml0VGVzdAkBAAAABXZhbHVlAAAAAQkABCYAAAABAgAAACMzTXQ0UkdNRXlqU1dZQW9jVFBxZDU1d2RIUVFCM1BVMlVDbQkBAAAABXZhbHVlAAAAAQkABCYAAAABAgAAACMzTjh4WGFZakUyN0FhNzlkNWhIcmhIdTlIYUZvVEJtaERFagAAAAANd2hpdGVsaXN0RGFwcAkBAAAABXZhbHVlAAAAAQkABCYAAAABAgAAACMzTjZCYVYxZENCNHpnNDNnb05OSGFDdHZSMTNCY3lKNUdzcQAAAAALc2lnbkFzc2V0SWQBAAAAIOilarzKd0LycGEyNUpPRYO5uR7lmWcXw3Hq2QuhBK3rAAAAAAt1c2RuQXNzZXRJZAEAAAAgD/IcEqzkxDya7EYaqyWosOy6BytGzG2IcvC14pJJAbQAAAAADHdhdmVzQXNzZXRJZAEAAAAAAAAAAAVjaHJpcwIAAAAjM01zRzZqUE5DclZKVXRZQjdYSkJ4Uzd1dFdzWEFmNG45VnAAAAAAB3NpZ25DdXQAAAAAAAAAAAMAAAAACmNyZWF0b3JDdXQAAAAAAAAAAAoAAAAADXVzZXJTdXNwZW5kZWQCAAAACVNVU1BFTkRFRAAAAAALdXNlclJlbW92ZWQCAAAAB1JFTU9WRUQAAAAACmFydElsbGVnYWwCAAAAB0lMTEVHQUwAAAAADGFydFN1c3BlbmRlZAIAAAAJU1VTUEVOREVEAAAAAA5kYXBwUnVubmluZ0tleQIAAAAUY29uZl9kYXBwX2lzX3J1bm5pbmcAAAAAEW1haW50ZW5hbmNlTVNHS2V5AgAAABRjb25mX21haW50ZW5hbmNlX21zZwAAAAALZGFwcFJ1bm5pbmcJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQbAAAAAgUAAAAEdGhpcwUAAAAOZGFwcFJ1bm5pbmdLZXkGAAAAAA5tYWludGVuYW5jZU1TRwkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAABFtYWludGVuYW5jZU1TR0tleQIAAAAAAAAAAAludW1TYWxlc0sCAAAACW51bV9zYWxlcwEAAAANZ2V0VXNlclN0ckJ5SwAAAAEAAAADa2V5CQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAACHVzZXJEYXBwBQAAAANrZXkCAAAABUVycm9yAQAAAAxnZXRBcnRTdHJCeUsAAAABAAAAA2tleQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABB0AAAACBQAAAAxhcnR3b3Jrc0RhcHAFAAAAA2tleQIAAAAAAQAAAAlnZXRTdHJCeUsAAAABAAAAA2tleQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkCAAAAAAEAAAAJZ2V0SW50QnlLAAAAAQAAAANrZXkJAQAAAAt2YWx1ZU9yRWxzZQAAAAIJAAQaAAAAAgUAAAAEdGhpcwUAAAADa2V5AAAAAAAAAAAAAQAAAA1rZXlVc2VyU3RhdHVzAAAAAQAAAARhZGRyCQABLAAAAAICAAAADHVzZXJfc3RhdHVzXwUAAAAEYWRkcgEAAAAJa2V5U2lnbklEAAAAAgAAAAphcnRpc3RBZGRyAAAABWFydElkCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAthcnRfc2lnbmlkXwUAAAAFYXJ0SWQCAAAAAV8FAAAACmFydGlzdEFkZHIBAAAAB2tleUZsYWcAAAACAAAACmFydGlzdEFkZHIAAAAFYXJ0SWQJAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAACWFydF9mbGFnXwUAAAAFYXJ0SWQCAAAAAV8FAAAACmFydGlzdEFkZHIBAAAACmtleU5GVERhdGEAAAABAAAAAmlkCQABLAAAAAICAAAABG5mdF8FAAAAAmlkAQAAAApnZXRTYWxlS2V5AAAABAAAAAZjYWxsZXIAAAAFbmZ0SWQAAAAFYXJ0SWQAAAALY3JlYXRvckFkZHIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAANc2FsZTJuZF9pbmZvXwUAAAAGY2FsbGVyAgAAAAFfBQAAAAVuZnRJZAIAAAABXwUAAAAFYXJ0SWQCAAAAAV8FAAAAC2NyZWF0b3JBZGRyAQAAABNnZXRJbnRCeUtGcm9tT3JhY2xlAAAAAQAAAANrZXkJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAlvcmFjbGVGZWUFAAAAA2tleQIAAAAfSW50ZWdlciB1bmRlZmluZSBvciAwIGluIG9yYWNsZQAAAAAZY3VycmVudENlcnRpZmljYXRpb25QcmljZQkBAAAAE2dldEludEJ5S0Zyb21PcmFjbGUAAAABCQABLAAAAAICAAAAEmNlcnRpZmljYXRpb25fZmVlXwkAAlgAAAABBQAAAAtzaWduQXNzZXRJZAEAAAAMaWRDYWxsZXJEYXRlAAAAAQAAAAFpAwkBAAAAASEAAAABBQAAAAtkYXBwUnVubmluZwkAAAIAAAABBQAAAA5tYWludGVuYW5jZU1TRwkABRUAAAADCQACWAAAAAEIBQAAAAFpAAAADXRyYW5zYWN0aW9uSWQJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwgFAAAACWxhc3RCbG9jawAAAAl0aW1lc3RhbXABAAAACWlzUGF5bWVudAAAAAEAAAABaQMJAAAAAAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAkAAAIAAAABAgAAABNObyBwYXltZW50IGF0dGFjaGVkBAAAAAdwYXltZW50CQEAAAAFdmFsdWUAAAABCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAAZhbW91bnQJAQAAAAV2YWx1ZQAAAAEIBQAAAAdwYXltZW50AAAABmFtb3VudAkABRQAAAACBQAAAAdwYXltZW50BQAAAAZhbW91bnQBAAAADGFzc2V0SXNWYWxpZAAAAAEAAAAMYXNzZXREZXRhaWxzAwMDCQAAAAAAAAIIBQAAAAxhc3NldERldGFpbHMAAAAIcXVhbnRpdHkAAAAAAAAAAAEJAAAAAAAAAggFAAAADGFzc2V0RGV0YWlscwAAAAhkZWNpbWFscwAAAAAAAAAAAAcJAAAAAAAAAggFAAAADGFzc2V0RGV0YWlscwAAAApyZWlzc3VhYmxlBwcJAAAAAAAAAggFAAAADGFzc2V0RGV0YWlscwAAAAZpc3N1ZXIFAAAADGFydHdvcmtzRGFwcAcBAAAADGlzU2lnbkFydE5GVAAAAAEAAAACaWQEAAAADGFzc2V0RGV0YWlscwkBAAAABXZhbHVlAAAAAQkAA+wAAAABBQAAAAJpZAkBAAAADGFzc2V0SXNWYWxpZAAAAAEFAAAADGFzc2V0RGV0YWlscwEAAAAQYWNjZXB0ZWRBc3NldElkcwAAAAEAAAAHYXNzZXRJZAMDAwMJAQAAAAIhPQAAAAIFAAAAB2Fzc2V0SWQJAAJYAAAAAQUAAAALc2lnbkFzc2V0SWQJAQAAAAIhPQAAAAIFAAAAB2Fzc2V0SWQJAAJYAAAAAQUAAAAMd2F2ZXNBc3NldElkBwkBAAAAAiE9AAAAAgUAAAAHYXNzZXRJZAIAAAAFV0FWRVMHCQEAAAACIT0AAAACBQAAAAdhc3NldElkCQACWAAAAAEFAAAAC3VzZG5Bc3NldElkBwcGAQAAAA1nZXRCaWRBc3NldElkAAAAAQAAAAdhc3NldElkAwkAAAAAAAACBQAAAAdhc3NldElkAgAAAAVXQVZFUwUAAAAEdW5pdAkAAlkAAAABBQAAAAdhc3NldElkAQAAABVnZXRTYWxlT3duZXJBbmRTdGF0dXMAAAABAAAABW5mdGlkBAAAAAlzYWxlT3duZXIJAQAAAAlnZXRTdHJCeUsAAAABCQABLAAAAAICAAAAFmN1cnJlbnRfb3duZXJfb25fZGFwcF8FAAAABW5mdGlkAwkAAAAAAAACCQABMQAAAAEFAAAACXNhbGVPd25lcgAAAAAAAAAAAAkAAAIAAAABAgAAAA1ORlQgbm90IGZvdW5kBAAAAApzYWxlU3RhdHVzCQEAAAAJZ2V0U3RyQnlLAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAPc2FsZTJuZF9zdGF0dXNfBQAAAAlzYWxlT3duZXICAAAAAV8FAAAABW5mdGlkAwkBAAAAAiE9AAAAAgUAAAAKc2FsZVN0YXR1cwIAAAAET1BFTgkAAAIAAAABAgAAABBORlQgbm90IGZvciBzYWxlBQAAAAlzYWxlT3duZXIBAAAACmdldEJpZERhdGEAAAABAAAAA2tleQQAAAAHYmlkRGF0YQkBAAAACWdldFN0ckJ5SwAAAAEJAAEsAAAAAgUAAAADa2V5AgAAAAVfT1BFTgMJAAAAAAAAAgUAAAAHYmlkRGF0YQIAAAAACQAAAgAAAAECAAAAD09mZmVyIG5vdCBmb3VuZAQAAAAKYmlkRGF0YUFycgkABLUAAAACBQAAAAdiaWREYXRhAgAAAAFfBAAAAAdhc3NldElkCQEAAAANZ2V0QmlkQXNzZXRJZAAAAAEJAAGRAAAAAgUAAAAKYmlkRGF0YUFycgAAAAAAAAAAAgkABRUAAAADBQAAAApiaWREYXRhQXJyBQAAAAdhc3NldElkBQAAAAdiaWREYXRhAQAAAAphcnRJc1ZhbGlkAAAAAQAAAAlhcnRTdGF0dXMDCQEAAAACIT0AAAACBQAAAAlhcnRTdGF0dXMFAAAACmFydElsbGVnYWwJAQAAAAIhPQAAAAIFAAAACWFydFN0YXR1cwUAAAAMYXJ0U3VzcGVuZGVkBwEAAAAOY2hlY2tBcnRTdGF0dXMAAAACAAAABGFkZHIAAAACaWQEAAAACWFydFN0YXR1cwkBAAAADGdldEFydFN0ckJ5SwAAAAEJAQAAAAdrZXlGbGFnAAAAAgUAAAAEYWRkcgUAAAACaWQDCQEAAAAKYXJ0SXNWYWxpZAAAAAEFAAAACWFydFN0YXR1cwYJAAACAAAAAQkAASwAAAACAgAAABxPcmlnaW5hbCBBcnR3b3JrIGZsYWdnZWQgYXMgBQAAAAlhcnRTdGF0dXMBAAAAEWNoZWNrQXJ0aXN0U3RhdHVzAAAAAQAAAARhZGRyBAAAAAxhcnRpc3RTdGF0dXMJAQAAAA1nZXRVc2VyU3RyQnlLAAAAAQkBAAAADWtleVVzZXJTdGF0dXMAAAABBQAAAARhZGRyAwkBAAAAD2NvbnRhaW5zRWxlbWVudAAAAAIJAARMAAAAAgUAAAANdXNlclN1c3BlbmRlZAkABEwAAAACBQAAAAt1c2VyUmVtb3ZlZAUAAAADbmlsBQAAAAxhcnRpc3RTdGF0dXMJAAACAAAAAQkAASwAAAACAgAAABBPcmlnaW5hbCBBcnRpc3QgBQAAAAxhcnRpc3RTdGF0dXMGAQAAAAxjaGVja05GVEluZm8AAAABAAAAB2Fzc2V0SWQEAAAAB25mdERhdGEJAAS1AAAAAgkBAAAADGdldEFydFN0ckJ5SwAAAAEJAQAAAAprZXlORlREYXRhAAAAAQUAAAAHYXNzZXRJZAIAAAABXwQAAAAJYXJ0U2lnbklECQEAAAAMZ2V0QXJ0U3RyQnlLAAAAAQkBAAAACWtleVNpZ25JRAAAAAIJAAGRAAAAAgUAAAAHbmZ0RGF0YQAAAAAAAAAABgkAAZEAAAACBQAAAAduZnREYXRhAAAAAAAAAAAFAwMJAQAAAAEhAAAAAQkBAAAADmNoZWNrQXJ0U3RhdHVzAAAAAgkAAZEAAAACBQAAAAduZnREYXRhAAAAAAAAAAAGCQABkQAAAAIFAAAAB25mdERhdGEAAAAAAAAAAAUJAQAAAAEhAAAAAQkBAAAAEWNoZWNrQXJ0aXN0U3RhdHVzAAAAAQkAAZEAAAACBQAAAAduZnREYXRhAAAAAAAAAAAGBwkABRYAAAAEBwkAAZEAAAACBQAAAAduZnREYXRhAAAAAAAAAAAFCQABkQAAAAIFAAAAB25mdERhdGEAAAAAAAAAAAYFAAAACWFydFNpZ25JRAkABRYAAAAEBgkAAZEAAAACBQAAAAduZnREYXRhAAAAAAAAAAAFCQABkQAAAAIFAAAAB25mdERhdGEAAAAAAAAAAAYFAAAACWFydFNpZ25JRAEAAAANY2hlY2tBUlRFeGlzdAAAAAIAAAAFYXJ0SWQAAAALY3JlYXRvckFkZHIEAAAACWFydFNpZ25JRAkBAAAADGdldEFydFN0ckJ5SwAAAAEJAQAAAAlrZXlTaWduSUQAAAACBQAAAAtjcmVhdG9yQWRkcgUAAAAFYXJ0SWQDCQAAAAAAAAIJAAExAAAAAQUAAAAJYXJ0U2lnbklEAAAAAAAAAAAACQAAAgAAAAECAAAAHUFydHdvcmsgbm90IGZvdW5kIG9uIFNJR04gQXJ0AwMJAQAAAAEhAAAAAQkBAAAADmNoZWNrQXJ0U3RhdHVzAAAAAgUAAAALY3JlYXRvckFkZHIFAAAABWFydElkCQEAAAABIQAAAAEJAQAAABFjaGVja0FydGlzdFN0YXR1cwAAAAEFAAAAC2NyZWF0b3JBZGRyBwcGAQAAAAxzZXRUcmFuc2ZlcnMAAAAGAAAABmFtb3VudAAAAAdhc3NldElkAAAABW5mdGlkAAAAC2NyZWF0b3JBZGRyAAAACXNhbGVPd25lcgAAAAZjYWxsZXIEAAAADWFtb3VudEZvclNpZ24JAABrAAAAAwUAAAAGYW1vdW50BQAAAAdzaWduQ3V0AAAAAAAAAABkBAAAABBhbW91bnRGb3JDcmVhdG9yCQAAawAAAAMFAAAABmFtb3VudAUAAAAKY3JlYXRvckN1dAAAAAAAAAAAZAQAAAAOYW1vdW50Rm9yT3duZXIJAABlAAAAAgUAAAAGYW1vdW50CQAAZAAAAAIFAAAADWFtb3VudEZvclNpZ24FAAAAEGFtb3VudEZvckNyZWF0b3IEAAAAB3NpZ25GZWUJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABBQAAAAtmZWVSZWNlaXZlcgUAAAANYW1vdW50Rm9yU2lnbgUAAAAHYXNzZXRJZAQAAAAKY3JlYXRvckZlZQkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEFAAAAC2NyZWF0b3JBZGRyBQAAABBhbW91bnRGb3JDcmVhdG9yBQAAAAdhc3NldElkBAAAAAhvd25lckZlZQkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEFAAAACXNhbGVPd25lcgUAAAAOYW1vdW50Rm9yT3duZXIFAAAAB2Fzc2V0SWQEAAAADGNvbGxlY3Rvck5GVAkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEFAAAABmNhbGxlcgAAAAAAAAAAAQkAAlkAAAABBQAAAAVuZnRpZAkABRYAAAAEBQAAAAdzaWduRmVlBQAAAApjcmVhdG9yRmVlBQAAAAhvd25lckZl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", "height": 1590068, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CNJgPTSDRkBuNZPkNSPHFKyqoXD3MAtcXetXpeurLSfm Next: BYfHbe3ZnUDTCmJvdv1kjEf2dB7skXZi4q3KRrm9kBMV Diff:
OldNewDifferences
2929
3030 let m = 10
3131
32-let n = valueOrElse(getBoolean(f, "conf_dapp_is_running"), true)
32+let n = "SUSPENDED"
3333
34-let o = valueOrElse(getString(f, "conf_maintenance_msg"), "")
34+let o = "REMOVED"
3535
36-let p = "SUSPENDED"
36+let p = "ILLEGAL"
3737
38-let q = "REMOVED"
38+let q = "SUSPENDED"
3939
40-let r = "ILLEGAL"
40+let r = "conf_dapp_is_running"
4141
42-let s = "SUSPENDED"
42+let s = "conf_maintenance_msg"
4343
44-func t (u) = valueOrElse(getString(f, u), "Error")
44+let t = valueOrElse(getBoolean(this, r), true)
45+
46+let u = valueOrElse(getString(this, s), "")
47+
48+let v = "num_sales"
49+
50+func w (x) = valueOrElse(getString(f, x), "Error")
4551
4652
47-func v (u) = valueOrElse(getString(d, u), "")
53+func y (x) = valueOrElse(getString(d, x), "")
4854
4955
50-func w (u) = valueOrElse(getString(this, u), "")
56+func z (x) = valueOrElse(getString(this, x), "")
5157
5258
53-func x (u) = valueOrElse(getInteger(this, u), 0)
59+func A (x) = valueOrElse(getInteger(this, x), 0)
5460
5561
56-func y (z) = ("user_status_" + z)
62+func B (C) = ("user_status_" + C)
5763
5864
59-func A (B,C) = ((("art_signid_" + C) + "_") + B)
65+func D (E,F) = ((("art_signid_" + F) + "_") + E)
6066
6167
62-func D (B,C) = ((("art_flag_" + C) + "_") + B)
68+func G (E,F) = ((("art_flag_" + F) + "_") + E)
6369
6470
65-func E (F) = ("nft_" + F)
71+func H (I) = ("nft_" + I)
6672
6773
68-func G (H,I,C,J) = ((((((("sale2nd_info_" + H) + "_") + I) + "_") + C) + "_") + J)
74+func J (K,L,F,M) = ((((((("sale2nd_info_" + K) + "_") + L) + "_") + F) + "_") + M)
6975
7076
71-func K (u) = valueOrErrorMessage(getInteger(b, u), "Integer undefine or 0 in oracle")
77+func N (x) = valueOrErrorMessage(getInteger(b, x), "Integer undefine or 0 in oracle")
7278
7379
74-let L = K(("certification_fee_" + toBase58String(h)))
80+let O = N(("certification_fee_" + toBase58String(h)))
7581
76-func M (N) = if (!(n))
77- then throw(o)
78- else $Tuple3(toBase58String(N.transactionId), toBase58String(N.caller.bytes), lastBlock.timestamp)
82+func P (Q) = if (!(t))
83+ then throw(u)
84+ else $Tuple3(toBase58String(Q.transactionId), toBase58String(Q.caller.bytes), lastBlock.timestamp)
7985
8086
81-func O (N) = if ((size(N.payments) == 0))
87+func R (Q) = if ((size(Q.payments) == 0))
8288 then throw("No payment attached")
8389 else {
84- let P = value(N.payments[0])
85- let Q = value(P.amount)
86- $Tuple2(P, Q)
90+ let S = value(Q.payments[0])
91+ let T = value(S.amount)
92+ $Tuple2(S, T)
8793 }
8894
8995
90-func R (F) = {
91- let S = value(assetInfo(F))
92- if (if (if (if ((S.quantity != 1))
93- then true
94- else (S.decimals != 0))
95- then true
96- else (S.reissuable != false))
97- then true
98- else (S.issuer != d))
99- then false
100- else true
96+func U (V) = if (if (if ((V.quantity == 1))
97+ then (V.decimals == 0)
98+ else false)
99+ then (V.reissuable == false)
100+ else false)
101+ then (V.issuer == d)
102+ else false
103+
104+
105+func W (I) = {
106+ let V = value(assetInfo(I))
107+ U(V)
101108 }
102109
103110
104-func T (U) = if (if (if (if ((U != toBase58String(h)))
105- then (U != toBase58String(j))
111+func X (Y) = if (if (if (if ((Y != toBase58String(h)))
112+ then (Y != toBase58String(j))
106113 else false)
107- then (U != "WAVES")
114+ then (Y != "WAVES")
108115 else false)
109- then (U != toBase58String(i))
116+ then (Y != toBase58String(i))
110117 else false)
111118 then false
112119 else true
113120
114121
115-func V (W) = {
116- let X = w(("current_owner_on_dapp_" + W))
117- if ((size(X) == 0))
122+func Z (Y) = if ((Y == "WAVES"))
123+ then unit
124+ else fromBase58String(Y)
125+
126+
127+func aa (ab) = {
128+ let ac = z(("current_owner_on_dapp_" + ab))
129+ if ((size(ac) == 0))
118130 then throw("NFT not found")
119131 else {
120- let Y = w(((("sale2nd_status_" + X) + "_") + W))
121- if ((Y != "OPEN"))
132+ let ad = z(((("sale2nd_status_" + ac) + "_") + ab))
133+ if ((ad != "OPEN"))
122134 then throw("NFT not for sale")
123- else X
135+ else ac
124136 }
125137 }
126138
127139
128-func Z (z,F) = {
129- let aa = v(D(z, F))
130- if (if ((aa == r))
140+func ae (x) = {
141+ let af = z((x + "_OPEN"))
142+ if ((af == ""))
143+ then throw("Offer not found")
144+ else {
145+ let ag = split(af, "_")
146+ let Y = Z(ag[2])
147+ $Tuple3(ag, Y, af)
148+ }
149+ }
150+
151+
152+func ah (ai) = if ((ai != p))
153+ then (ai != q)
154+ else false
155+
156+
157+func aj (C,I) = {
158+ let ai = y(G(C, I))
159+ if (ah(ai))
131160 then true
132- else (aa == s))
133- then throw(("Original Artwork flagged as " + aa))
161+ else throw(("Original Artwork flagged as " + ai))
162+ }
163+
164+
165+func ak (C) = {
166+ let al = w(B(C))
167+ if (containsElement([n, o], al))
168+ then throw(("Original Artist " + al))
134169 else true
135170 }
136171
137172
138-func ab (z) = {
139- let ac = t(y(z))
140- if (containsElement([p, q], ac))
141- then throw(("Original Artist " + ac))
142- else true
173+func am (Y) = {
174+ let an = split(y(H(Y)), "_")
175+ let ao = y(D(an[6], an[5]))
176+ if (if (!(aj(an[6], an[5])))
177+ then !(ak(an[6]))
178+ else false)
179+ then $Tuple4(false, an[5], an[6], ao)
180+ else $Tuple4(true, an[5], an[6], ao)
143181 }
144182
145183
146-func ad (U) = {
147- let ae = split(v(E(U)), "_")
148- let af = v(A(ae[6], ae[5]))
149- if (if (!(Z(ae[6], ae[5])))
150- then !(ab(ae[6]))
151- else false)
152- then $Tuple4(false, ae[5], ae[6], af)
153- else $Tuple4(true, ae[5], ae[6], af)
154- }
155-
156-
157-func ag (C,J) = {
158- let af = v(A(J, C))
159- if ((size(af) == 0))
184+func ap (F,M) = {
185+ let ao = y(D(M, F))
186+ if ((size(ao) == 0))
160187 then throw("Artwork not found on SIGN Art")
161- else if (if (!(Z(J, C)))
162- then !(ab(J))
188+ else if (if (!(aj(M, F)))
189+ then !(ak(M))
163190 else false)
164191 then false
165192 else true
166193 }
167194
168195
169-func ah (Q,U,W,J,X,H) = {
170- let ai = fraction(Q, l, 100)
171- let aj = fraction(Q, m, 100)
172- let ak = (Q - (ai + aj))
173- let al = ScriptTransfer(Address(fromBase58String(e)), ai, U)
174- let am = ScriptTransfer(Address(fromBase58String(J)), aj, U)
175- let an = ScriptTransfer(Address(fromBase58String(X)), ak, U)
176- let ao = ScriptTransfer(Address(fromBase58String(H)), 1, fromBase58String(W))
177- $Tuple4(al, am, an, ao)
196+func aq (T,Y,ab,M,ac,K) = {
197+ let ar = fraction(T, l, 100)
198+ let as = fraction(T, m, 100)
199+ let at = (T - (ar + as))
200+ let au = ScriptTransfer(Address(fromBase58String(e)), ar, Y)
201+ let av = ScriptTransfer(Address(fromBase58String(M)), as, Y)
202+ let aw = ScriptTransfer(Address(fromBase58String(ac)), at, Y)
203+ let ax = ScriptTransfer(Address(fromBase58String(K)), 1, fromBase58String(ab))
204+ $Tuple4(au, av, aw, ax)
178205 }
179206
180207
181-func ap (U,aq) = {
182- let ar = if (a)
208+func ay (Y,az) = {
209+ let aA = if (a)
183210 then 10
184- else K("waves_min_sell")
185- let as = 1000000
186- let at = if (a)
211+ else N("waves_min_sell")
212+ let aB = 1000000
213+ let aC = if (a)
187214 then 1
188- else (L * 2)
189- if (if (if (if (if ((U == toBase58String(i)))
190- then (as > aq)
215+ else (O * 2)
216+ if (if (if (if (if ((Y == toBase58String(i)))
217+ then (aB > az)
191218 else false)
192- then (aq != 0)
219+ then (az != 0)
193220 else false)
194221 then true
195- else if (if ((U == toBase58String(h)))
196- then (at > aq)
222+ else if (if ((Y == toBase58String(h)))
223+ then (aC > az)
197224 else false)
198- then (aq != 0)
225+ then (az != 0)
199226 else false)
200227 then true
201- else if (if (if ((U == toBase58String(j)))
228+ else if (if (if ((Y == toBase58String(j)))
202229 then true
203- else (U == "WAVES"))
204- then (ar > aq)
230+ else (Y == "WAVES"))
231+ then (aA > az)
205232 else false)
206- then (aq != 0)
233+ then (az != 0)
207234 else false)
208235 then false
209236 else true
210237 }
211238
212239
213-@Callable(N)
214-func sellNFT (aq,au) = {
215- let av = M(N)
216- let F = av._1
217- let H = av._2
218- let aw = av._3
219- let ax = O(N)
220- let P = ax._1
221- let Q = ax._2
222- let I = if (if (isDefined(P.assetId))
223- then R(value(P.assetId))
224- else false)
225- then toBase58String(value(P.assetId))
226- else throw("Only SIGN Art NFT accepted.")
227- let ay = ad(I)
228- let az = ay._1
229- let C = ay._2
230- let J = ay._3
231- let af = ay._4
232- if ((size(af) == 0))
233- then throw("Artwork not found on SIGN Art")
234- else if (!(az))
235- then throw("Something went wrong")
236- else if (!(T(au)))
237- then throw("Only SIGN, USDN or WAVES accepted")
238- else if ((aq == 0))
239- then throw("Wrong minimum sell price")
240- else if (!(ap(au, aq)))
241- then throw("Wrong minimum sell price")
242- else [StringEntry((G(H, I, C, J) + "_OPEN"), ((((((((((((toString(aw) + "_") + toString(aq)) + "_") + au) + "_") + I) + "_") + C) + "_") + J) + "_") + F)), StringEntry(((("sale2nd_status_" + H) + "_") + I), "OPEN"), StringEntry(("current_owner_on_dapp_" + I), H)]
240+func aD (Q,L) = {
241+ let aE = P(Q)
242+ let I = aE._1
243+ let K = aE._2
244+ let aF = aE._3
245+ let aG = am(L)
246+ let aH = aG._1
247+ let F = aG._2
248+ let M = aG._3
249+ let ao = aG._4
250+ $Tuple7(I, K, aF, aH, F, M, ao)
251+ }
252+
253+
254+func aI () = {
255+ let aJ = A(v)
256+ IntegerEntry(v, (aJ + 1))
257+ }
258+
259+
260+@Callable(aK)
261+func appRunning (aL,aM) = {
262+ let K = toString(addressFromPublicKey(aK.callerPublicKey))
263+ let I = toBase58String(aK.transactionId)
264+ if (containsElement([k, toString(this)], K))
265+ then [BooleanEntry(r, aL), StringEntry(s, aM)]
266+ else throw("You are not allowed to change this")
243267 }
244268
245269
246270
247-@Callable(N)
248-func updateSalePrice (I,aq,au) = {
249- let aA = M(N)
250- let F = aA._1
251- let H = aA._2
252- let aw = aA._3
253- let aB = ad(I)
254- let az = aB._1
255- let C = aB._2
256- let J = aB._3
257- let af = aB._4
258- if ((size(af) == 0))
271+@Callable(Q)
272+func sellNFT (az,aN) = {
273+ let aO = R(Q)
274+ let S = aO._1
275+ let T = aO._2
276+ let L = if (if (isDefined(S.assetId))
277+ then W(value(S.assetId))
278+ else false)
279+ then toBase58String(value(S.assetId))
280+ else throw("Only SIGN Art NFT accepted.")
281+ let aP = aD(Q, L)
282+ let I = aP._1
283+ let K = aP._2
284+ let aF = aP._3
285+ let aH = aP._4
286+ let F = aP._5
287+ let M = aP._6
288+ let ao = aP._7
289+ if ((size(ao) == 0))
290+ then throw("Artwork not found on SIGN Art")
291+ else if (!(aH))
292+ then throw("Not a valid nft")
293+ else if (!(X(aN)))
294+ then throw("Only SIGN, USDN or WAVES accepted")
295+ else if ((az == 0))
296+ then throw("Wrong minimum sell price")
297+ else if (!(ay(aN, az)))
298+ then throw("Wrong minimum sell price")
299+ else [StringEntry((J(K, L, F, M) + "_OPEN"), ((((((((((((toString(aF) + "_") + toString(az)) + "_") + aN) + "_") + L) + "_") + F) + "_") + M) + "_") + I)), StringEntry(((("sale2nd_status_" + K) + "_") + L), "OPEN"), StringEntry(("current_owner_on_dapp_" + L), K)]
300+ }
301+
302+
303+
304+@Callable(Q)
305+func updateSalePrice (L,az,aN) = {
306+ let aQ = aD(Q, L)
307+ let I = aQ._1
308+ let K = aQ._2
309+ let aF = aQ._3
310+ let aH = aQ._4
311+ let F = aQ._5
312+ let M = aQ._6
313+ let ao = aQ._7
314+ if ((size(ao) == 0))
259315 then throw("Artwork not found on SIGN Art, cancel your sale.")
260- else if (!(az))
261- then throw("Something went wrong")
316+ else if (!(aH))
317+ then throw("Not a valid nft")
262318 else {
263- let X = w(("current_owner_on_dapp_" + I))
264- if ((X != H))
319+ let ac = z(("current_owner_on_dapp_" + L))
320+ if ((ac != K))
265321 then throw("You don't own this NFT")
266322 else {
267- let Y = w(((("sale2nd_status_" + H) + "_") + I))
268- if ((Y != "OPEN"))
323+ let ad = z(((("sale2nd_status_" + K) + "_") + L))
324+ if ((ad != "OPEN"))
269325 then throw("Sale not active")
270- else if (!(T(au)))
326+ else if (!(X(aN)))
271327 then throw("Only SIGN, USDN or WAVES accepted")
272- else if ((aq == 0))
328+ else if ((az == 0))
273329 then throw("Wrong minimum sell price")
274- else if (!(ap(au, aq)))
330+ else if (!(ay(aN, az)))
275331 then throw("Wrong minimum sell price")
276332 else {
277- let aC = G(H, I, C, J)
278- let aD = split(w((aC + "_OPEN")), "_")
279-[StringEntry((aC + "_OPEN"), ((((((((((((aD[0] + "_") + toString(aq)) + "_") + au) + "_") + aD[3]) + "_") + aD[4]) + "_") + aD[5]) + "_") + aD[6]))]
333+ let aR = J(K, L, F, M)
334+ let aS = split(z((aR + "_OPEN")), "_")
335+[StringEntry((aR + "_OPEN"), ((((((((((((aS[0] + "_") + toString(az)) + "_") + aN) + "_") + aS[3]) + "_") + aS[4]) + "_") + aS[5]) + "_") + aS[6]))]
280336 }
281337 }
282338 }
284340
285341
286342
287-@Callable(N)
288-func cancelSale (I) = {
289- let aE = M(N)
290- let F = aE._1
291- let H = aE._2
292- let aw = aE._3
293- let aF = ad(I)
294- let az = aF._1
295- let C = aF._2
296- let J = aF._3
297- let af = aF._4
298- let X = w(("current_owner_on_dapp_" + I))
299- if ((X != H))
343+@Callable(Q)
344+func cancelSale (L) = {
345+ let aT = aD(Q, L)
346+ let I = aT._1
347+ let K = aT._2
348+ let aF = aT._3
349+ let aH = aT._4
350+ let F = aT._5
351+ let M = aT._6
352+ let ao = aT._7
353+ let ac = z(("current_owner_on_dapp_" + L))
354+ if ((ac != K))
300355 then throw("You don't own this NFT")
301356 else {
302- let Y = w(((("sale2nd_status_" + H) + "_") + I))
303- if ((Y != "OPEN"))
357+ let ad = z(((("sale2nd_status_" + K) + "_") + L))
358+ if ((ad != "OPEN"))
304359 then throw("Sale not active")
305360 else {
306- let aC = G(H, I, C, J)
307- let aD = w((aC + "_OPEN"))
308-[DeleteEntry((aC + "_OPEN")), DeleteEntry(((("sale2nd_status_" + H) + "_") + I)), DeleteEntry(("current_owner_on_dapp_" + I)), StringEntry((((aC + "_") + F) + "_CANCELLED"), ((((aD + "_CANCELLED_") + toString(aw)) + "_") + F)), ScriptTransfer(Address(fromBase58String(H)), 1, fromBase58String(I))]
361+ let aR = J(K, L, F, M)
362+ let aS = z((aR + "_OPEN"))
363+[DeleteEntry((aR + "_OPEN")), DeleteEntry(((("sale2nd_status_" + K) + "_") + L)), DeleteEntry(("current_owner_on_dapp_" + L)), StringEntry((((aR + "_") + I) + "_CANCELLED"), ((((aS + "_CANCELLED_") + toString(aF)) + "_") + I)), ScriptTransfer(Address(fromBase58String(K)), 1, fromBase58String(L))]
309364 }
310365 }
311366 }
312367
313368
314369
315-@Callable(N)
316-func buyNFT (I) = {
317- let aG = M(N)
318- let F = aG._1
319- let H = aG._2
320- let aw = aG._3
321- let X = V(I)
322- let aH = ad(I)
323- let az = aH._1
324- let C = aH._2
325- let J = aH._3
326- let af = aH._4
327- if ((size(af) == 0))
370+@Callable(Q)
371+func buyNFT (L) = {
372+ let aU = aD(Q, L)
373+ let I = aU._1
374+ let K = aU._2
375+ let aF = aU._3
376+ let aH = aU._4
377+ let F = aU._5
378+ let M = aU._6
379+ let ao = aU._7
380+ if ((size(ao) == 0))
328381 then throw("Artwork not found on SIGN Art, cancel your sale.")
329- else if (!(az))
330- then throw("Something went wrong")
382+ else if (!(aH))
383+ then throw("Not a valid nft")
331384 else {
332- let aC = G(X, I, C, J)
333- let aD = w((aC + "_OPEN"))
334- if ((size(aD) == 0))
385+ let ac = aa(L)
386+ let aR = J(ac, L, F, M)
387+ let aS = z((aR + "_OPEN"))
388+ if ((size(aS) == 0))
335389 then throw("Sale Not found!")
336390 else {
337- let aI = split(aD, "_")
338- if ((parseInt(aI[1]) == 0))
391+ let aV = split(aS, "_")
392+ if ((parseInt(aV[1]) == 0))
339393 then throw("Offer only")
340394 else {
341- let aJ = O(N)
342- let P = aJ._1
343- let Q = aJ._2
344- let aK = if (isDefined(P.assetId))
345- then toBase58String(value(P.assetId))
395+ let aW = R(Q)
396+ let S = aW._1
397+ let T = aW._2
398+ let aX = if (isDefined(S.assetId))
399+ then toBase58String(value(S.assetId))
346400 else ""
347- if (if ((aI[1] != toString(Q)))
401+ if (if ((aV[1] != toString(T)))
348402 then true
349- else (aI[2] != aK))
403+ else (aV[2] != aX))
350404 then throw("Payment infos don't match.")
351405 else {
352- let ai = fraction(Q, l, 100)
353- let aj = fraction(Q, m, 100)
354- let ak = (Q - (ai + aj))
355- let aL = ah(Q, P.assetId, I, J, X, H)
356- let al = aL._1
357- let am = aL._2
358- let an = aL._3
359- let ao = aL._4
360-[DeleteEntry((aC + "_OPEN")), DeleteEntry(((("sale2nd_status_" + X) + "_") + I)), DeleteEntry(("current_owner_on_dapp_" + I)), StringEntry((((aC + "_") + F) + "_CLOSED"), ((((((makeString(aI, "_") + "_CLOSED_") + toString(aw)) + "_") + F) + "_") + H)), al, am, an, ao]
406+ let ar = fraction(T, l, 100)
407+ let as = fraction(T, m, 100)
408+ let at = (T - (ar + as))
409+ let aY = aq(T, S.assetId, L, M, ac, K)
410+ let au = aY._1
411+ let av = aY._2
412+ let aw = aY._3
413+ let ax = aY._4
414+[DeleteEntry((aR + "_OPEN")), DeleteEntry(((("sale2nd_status_" + ac) + "_") + L)), DeleteEntry(("current_owner_on_dapp_" + L)), StringEntry((((aR + "_") + I) + "_CLOSED"), ((((((aS + "_CLOSED_") + toString(aF)) + "_") + I) + "_") + K)), aI(), au, av, aw, ax]
361415 }
362416 }
363417 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = false
55
66 let b = value(addressFromString("3N2s5RtaHPBenCsx2ECcoFRbYHx3noZhXW1"))
77
88 let c = value(addressFromString("3NC28hSivrmsTUXaYD1x6L362J4ZpUnoTdB"))
99
1010 let d = value(addressFromString("3NBynfbXC2KastUxhukcMUaE58K9cBdB9UY"))
1111
1212 let e = "3N1E6tXddRoVaRfQ9dQ3vg5LaW2fsd8HKub"
1313
1414 let f = if (a)
1515 then value(addressFromString("3Mt4RGMEyjSWYAocTPqd55wdHQQB3PU2UCm"))
1616 else value(addressFromString("3N8xXaYjE27Aa79d5hHrhHu9HaFoTBmhDEj"))
1717
1818 let g = value(addressFromString("3N6BaV1dCB4zg43goNNHaCtvR13BcyJ5Gsq"))
1919
2020 let h = base58'Gf9t8FA4H3ssoZPCwrg3KwUFCci8zuUFP9ssRsUY3s6a'
2121
2222 let i = base58'25FEqEjRkqK6yCkiT7Lz6SAYz7gUFCtxfCChnrVFD5AT'
2323
2424 let j = base58''
2525
2626 let k = "3MsG6jPNCrVJUtYB7XJBxS7utWsXAf4n9Vp"
2727
2828 let l = 3
2929
3030 let m = 10
3131
32-let n = valueOrElse(getBoolean(f, "conf_dapp_is_running"), true)
32+let n = "SUSPENDED"
3333
34-let o = valueOrElse(getString(f, "conf_maintenance_msg"), "")
34+let o = "REMOVED"
3535
36-let p = "SUSPENDED"
36+let p = "ILLEGAL"
3737
38-let q = "REMOVED"
38+let q = "SUSPENDED"
3939
40-let r = "ILLEGAL"
40+let r = "conf_dapp_is_running"
4141
42-let s = "SUSPENDED"
42+let s = "conf_maintenance_msg"
4343
44-func t (u) = valueOrElse(getString(f, u), "Error")
44+let t = valueOrElse(getBoolean(this, r), true)
45+
46+let u = valueOrElse(getString(this, s), "")
47+
48+let v = "num_sales"
49+
50+func w (x) = valueOrElse(getString(f, x), "Error")
4551
4652
47-func v (u) = valueOrElse(getString(d, u), "")
53+func y (x) = valueOrElse(getString(d, x), "")
4854
4955
50-func w (u) = valueOrElse(getString(this, u), "")
56+func z (x) = valueOrElse(getString(this, x), "")
5157
5258
53-func x (u) = valueOrElse(getInteger(this, u), 0)
59+func A (x) = valueOrElse(getInteger(this, x), 0)
5460
5561
56-func y (z) = ("user_status_" + z)
62+func B (C) = ("user_status_" + C)
5763
5864
59-func A (B,C) = ((("art_signid_" + C) + "_") + B)
65+func D (E,F) = ((("art_signid_" + F) + "_") + E)
6066
6167
62-func D (B,C) = ((("art_flag_" + C) + "_") + B)
68+func G (E,F) = ((("art_flag_" + F) + "_") + E)
6369
6470
65-func E (F) = ("nft_" + F)
71+func H (I) = ("nft_" + I)
6672
6773
68-func G (H,I,C,J) = ((((((("sale2nd_info_" + H) + "_") + I) + "_") + C) + "_") + J)
74+func J (K,L,F,M) = ((((((("sale2nd_info_" + K) + "_") + L) + "_") + F) + "_") + M)
6975
7076
71-func K (u) = valueOrErrorMessage(getInteger(b, u), "Integer undefine or 0 in oracle")
77+func N (x) = valueOrErrorMessage(getInteger(b, x), "Integer undefine or 0 in oracle")
7278
7379
74-let L = K(("certification_fee_" + toBase58String(h)))
80+let O = N(("certification_fee_" + toBase58String(h)))
7581
76-func M (N) = if (!(n))
77- then throw(o)
78- else $Tuple3(toBase58String(N.transactionId), toBase58String(N.caller.bytes), lastBlock.timestamp)
82+func P (Q) = if (!(t))
83+ then throw(u)
84+ else $Tuple3(toBase58String(Q.transactionId), toBase58String(Q.caller.bytes), lastBlock.timestamp)
7985
8086
81-func O (N) = if ((size(N.payments) == 0))
87+func R (Q) = if ((size(Q.payments) == 0))
8288 then throw("No payment attached")
8389 else {
84- let P = value(N.payments[0])
85- let Q = value(P.amount)
86- $Tuple2(P, Q)
90+ let S = value(Q.payments[0])
91+ let T = value(S.amount)
92+ $Tuple2(S, T)
8793 }
8894
8995
90-func R (F) = {
91- let S = value(assetInfo(F))
92- if (if (if (if ((S.quantity != 1))
93- then true
94- else (S.decimals != 0))
95- then true
96- else (S.reissuable != false))
97- then true
98- else (S.issuer != d))
99- then false
100- else true
96+func U (V) = if (if (if ((V.quantity == 1))
97+ then (V.decimals == 0)
98+ else false)
99+ then (V.reissuable == false)
100+ else false)
101+ then (V.issuer == d)
102+ else false
103+
104+
105+func W (I) = {
106+ let V = value(assetInfo(I))
107+ U(V)
101108 }
102109
103110
104-func T (U) = if (if (if (if ((U != toBase58String(h)))
105- then (U != toBase58String(j))
111+func X (Y) = if (if (if (if ((Y != toBase58String(h)))
112+ then (Y != toBase58String(j))
106113 else false)
107- then (U != "WAVES")
114+ then (Y != "WAVES")
108115 else false)
109- then (U != toBase58String(i))
116+ then (Y != toBase58String(i))
110117 else false)
111118 then false
112119 else true
113120
114121
115-func V (W) = {
116- let X = w(("current_owner_on_dapp_" + W))
117- if ((size(X) == 0))
122+func Z (Y) = if ((Y == "WAVES"))
123+ then unit
124+ else fromBase58String(Y)
125+
126+
127+func aa (ab) = {
128+ let ac = z(("current_owner_on_dapp_" + ab))
129+ if ((size(ac) == 0))
118130 then throw("NFT not found")
119131 else {
120- let Y = w(((("sale2nd_status_" + X) + "_") + W))
121- if ((Y != "OPEN"))
132+ let ad = z(((("sale2nd_status_" + ac) + "_") + ab))
133+ if ((ad != "OPEN"))
122134 then throw("NFT not for sale")
123- else X
135+ else ac
124136 }
125137 }
126138
127139
128-func Z (z,F) = {
129- let aa = v(D(z, F))
130- if (if ((aa == r))
140+func ae (x) = {
141+ let af = z((x + "_OPEN"))
142+ if ((af == ""))
143+ then throw("Offer not found")
144+ else {
145+ let ag = split(af, "_")
146+ let Y = Z(ag[2])
147+ $Tuple3(ag, Y, af)
148+ }
149+ }
150+
151+
152+func ah (ai) = if ((ai != p))
153+ then (ai != q)
154+ else false
155+
156+
157+func aj (C,I) = {
158+ let ai = y(G(C, I))
159+ if (ah(ai))
131160 then true
132- else (aa == s))
133- then throw(("Original Artwork flagged as " + aa))
161+ else throw(("Original Artwork flagged as " + ai))
162+ }
163+
164+
165+func ak (C) = {
166+ let al = w(B(C))
167+ if (containsElement([n, o], al))
168+ then throw(("Original Artist " + al))
134169 else true
135170 }
136171
137172
138-func ab (z) = {
139- let ac = t(y(z))
140- if (containsElement([p, q], ac))
141- then throw(("Original Artist " + ac))
142- else true
173+func am (Y) = {
174+ let an = split(y(H(Y)), "_")
175+ let ao = y(D(an[6], an[5]))
176+ if (if (!(aj(an[6], an[5])))
177+ then !(ak(an[6]))
178+ else false)
179+ then $Tuple4(false, an[5], an[6], ao)
180+ else $Tuple4(true, an[5], an[6], ao)
143181 }
144182
145183
146-func ad (U) = {
147- let ae = split(v(E(U)), "_")
148- let af = v(A(ae[6], ae[5]))
149- if (if (!(Z(ae[6], ae[5])))
150- then !(ab(ae[6]))
151- else false)
152- then $Tuple4(false, ae[5], ae[6], af)
153- else $Tuple4(true, ae[5], ae[6], af)
154- }
155-
156-
157-func ag (C,J) = {
158- let af = v(A(J, C))
159- if ((size(af) == 0))
184+func ap (F,M) = {
185+ let ao = y(D(M, F))
186+ if ((size(ao) == 0))
160187 then throw("Artwork not found on SIGN Art")
161- else if (if (!(Z(J, C)))
162- then !(ab(J))
188+ else if (if (!(aj(M, F)))
189+ then !(ak(M))
163190 else false)
164191 then false
165192 else true
166193 }
167194
168195
169-func ah (Q,U,W,J,X,H) = {
170- let ai = fraction(Q, l, 100)
171- let aj = fraction(Q, m, 100)
172- let ak = (Q - (ai + aj))
173- let al = ScriptTransfer(Address(fromBase58String(e)), ai, U)
174- let am = ScriptTransfer(Address(fromBase58String(J)), aj, U)
175- let an = ScriptTransfer(Address(fromBase58String(X)), ak, U)
176- let ao = ScriptTransfer(Address(fromBase58String(H)), 1, fromBase58String(W))
177- $Tuple4(al, am, an, ao)
196+func aq (T,Y,ab,M,ac,K) = {
197+ let ar = fraction(T, l, 100)
198+ let as = fraction(T, m, 100)
199+ let at = (T - (ar + as))
200+ let au = ScriptTransfer(Address(fromBase58String(e)), ar, Y)
201+ let av = ScriptTransfer(Address(fromBase58String(M)), as, Y)
202+ let aw = ScriptTransfer(Address(fromBase58String(ac)), at, Y)
203+ let ax = ScriptTransfer(Address(fromBase58String(K)), 1, fromBase58String(ab))
204+ $Tuple4(au, av, aw, ax)
178205 }
179206
180207
181-func ap (U,aq) = {
182- let ar = if (a)
208+func ay (Y,az) = {
209+ let aA = if (a)
183210 then 10
184- else K("waves_min_sell")
185- let as = 1000000
186- let at = if (a)
211+ else N("waves_min_sell")
212+ let aB = 1000000
213+ let aC = if (a)
187214 then 1
188- else (L * 2)
189- if (if (if (if (if ((U == toBase58String(i)))
190- then (as > aq)
215+ else (O * 2)
216+ if (if (if (if (if ((Y == toBase58String(i)))
217+ then (aB > az)
191218 else false)
192- then (aq != 0)
219+ then (az != 0)
193220 else false)
194221 then true
195- else if (if ((U == toBase58String(h)))
196- then (at > aq)
222+ else if (if ((Y == toBase58String(h)))
223+ then (aC > az)
197224 else false)
198- then (aq != 0)
225+ then (az != 0)
199226 else false)
200227 then true
201- else if (if (if ((U == toBase58String(j)))
228+ else if (if (if ((Y == toBase58String(j)))
202229 then true
203- else (U == "WAVES"))
204- then (ar > aq)
230+ else (Y == "WAVES"))
231+ then (aA > az)
205232 else false)
206- then (aq != 0)
233+ then (az != 0)
207234 else false)
208235 then false
209236 else true
210237 }
211238
212239
213-@Callable(N)
214-func sellNFT (aq,au) = {
215- let av = M(N)
216- let F = av._1
217- let H = av._2
218- let aw = av._3
219- let ax = O(N)
220- let P = ax._1
221- let Q = ax._2
222- let I = if (if (isDefined(P.assetId))
223- then R(value(P.assetId))
224- else false)
225- then toBase58String(value(P.assetId))
226- else throw("Only SIGN Art NFT accepted.")
227- let ay = ad(I)
228- let az = ay._1
229- let C = ay._2
230- let J = ay._3
231- let af = ay._4
232- if ((size(af) == 0))
233- then throw("Artwork not found on SIGN Art")
234- else if (!(az))
235- then throw("Something went wrong")
236- else if (!(T(au)))
237- then throw("Only SIGN, USDN or WAVES accepted")
238- else if ((aq == 0))
239- then throw("Wrong minimum sell price")
240- else if (!(ap(au, aq)))
241- then throw("Wrong minimum sell price")
242- else [StringEntry((G(H, I, C, J) + "_OPEN"), ((((((((((((toString(aw) + "_") + toString(aq)) + "_") + au) + "_") + I) + "_") + C) + "_") + J) + "_") + F)), StringEntry(((("sale2nd_status_" + H) + "_") + I), "OPEN"), StringEntry(("current_owner_on_dapp_" + I), H)]
240+func aD (Q,L) = {
241+ let aE = P(Q)
242+ let I = aE._1
243+ let K = aE._2
244+ let aF = aE._3
245+ let aG = am(L)
246+ let aH = aG._1
247+ let F = aG._2
248+ let M = aG._3
249+ let ao = aG._4
250+ $Tuple7(I, K, aF, aH, F, M, ao)
251+ }
252+
253+
254+func aI () = {
255+ let aJ = A(v)
256+ IntegerEntry(v, (aJ + 1))
257+ }
258+
259+
260+@Callable(aK)
261+func appRunning (aL,aM) = {
262+ let K = toString(addressFromPublicKey(aK.callerPublicKey))
263+ let I = toBase58String(aK.transactionId)
264+ if (containsElement([k, toString(this)], K))
265+ then [BooleanEntry(r, aL), StringEntry(s, aM)]
266+ else throw("You are not allowed to change this")
243267 }
244268
245269
246270
247-@Callable(N)
248-func updateSalePrice (I,aq,au) = {
249- let aA = M(N)
250- let F = aA._1
251- let H = aA._2
252- let aw = aA._3
253- let aB = ad(I)
254- let az = aB._1
255- let C = aB._2
256- let J = aB._3
257- let af = aB._4
258- if ((size(af) == 0))
271+@Callable(Q)
272+func sellNFT (az,aN) = {
273+ let aO = R(Q)
274+ let S = aO._1
275+ let T = aO._2
276+ let L = if (if (isDefined(S.assetId))
277+ then W(value(S.assetId))
278+ else false)
279+ then toBase58String(value(S.assetId))
280+ else throw("Only SIGN Art NFT accepted.")
281+ let aP = aD(Q, L)
282+ let I = aP._1
283+ let K = aP._2
284+ let aF = aP._3
285+ let aH = aP._4
286+ let F = aP._5
287+ let M = aP._6
288+ let ao = aP._7
289+ if ((size(ao) == 0))
290+ then throw("Artwork not found on SIGN Art")
291+ else if (!(aH))
292+ then throw("Not a valid nft")
293+ else if (!(X(aN)))
294+ then throw("Only SIGN, USDN or WAVES accepted")
295+ else if ((az == 0))
296+ then throw("Wrong minimum sell price")
297+ else if (!(ay(aN, az)))
298+ then throw("Wrong minimum sell price")
299+ else [StringEntry((J(K, L, F, M) + "_OPEN"), ((((((((((((toString(aF) + "_") + toString(az)) + "_") + aN) + "_") + L) + "_") + F) + "_") + M) + "_") + I)), StringEntry(((("sale2nd_status_" + K) + "_") + L), "OPEN"), StringEntry(("current_owner_on_dapp_" + L), K)]
300+ }
301+
302+
303+
304+@Callable(Q)
305+func updateSalePrice (L,az,aN) = {
306+ let aQ = aD(Q, L)
307+ let I = aQ._1
308+ let K = aQ._2
309+ let aF = aQ._3
310+ let aH = aQ._4
311+ let F = aQ._5
312+ let M = aQ._6
313+ let ao = aQ._7
314+ if ((size(ao) == 0))
259315 then throw("Artwork not found on SIGN Art, cancel your sale.")
260- else if (!(az))
261- then throw("Something went wrong")
316+ else if (!(aH))
317+ then throw("Not a valid nft")
262318 else {
263- let X = w(("current_owner_on_dapp_" + I))
264- if ((X != H))
319+ let ac = z(("current_owner_on_dapp_" + L))
320+ if ((ac != K))
265321 then throw("You don't own this NFT")
266322 else {
267- let Y = w(((("sale2nd_status_" + H) + "_") + I))
268- if ((Y != "OPEN"))
323+ let ad = z(((("sale2nd_status_" + K) + "_") + L))
324+ if ((ad != "OPEN"))
269325 then throw("Sale not active")
270- else if (!(T(au)))
326+ else if (!(X(aN)))
271327 then throw("Only SIGN, USDN or WAVES accepted")
272- else if ((aq == 0))
328+ else if ((az == 0))
273329 then throw("Wrong minimum sell price")
274- else if (!(ap(au, aq)))
330+ else if (!(ay(aN, az)))
275331 then throw("Wrong minimum sell price")
276332 else {
277- let aC = G(H, I, C, J)
278- let aD = split(w((aC + "_OPEN")), "_")
279-[StringEntry((aC + "_OPEN"), ((((((((((((aD[0] + "_") + toString(aq)) + "_") + au) + "_") + aD[3]) + "_") + aD[4]) + "_") + aD[5]) + "_") + aD[6]))]
333+ let aR = J(K, L, F, M)
334+ let aS = split(z((aR + "_OPEN")), "_")
335+[StringEntry((aR + "_OPEN"), ((((((((((((aS[0] + "_") + toString(az)) + "_") + aN) + "_") + aS[3]) + "_") + aS[4]) + "_") + aS[5]) + "_") + aS[6]))]
280336 }
281337 }
282338 }
283339 }
284340
285341
286342
287-@Callable(N)
288-func cancelSale (I) = {
289- let aE = M(N)
290- let F = aE._1
291- let H = aE._2
292- let aw = aE._3
293- let aF = ad(I)
294- let az = aF._1
295- let C = aF._2
296- let J = aF._3
297- let af = aF._4
298- let X = w(("current_owner_on_dapp_" + I))
299- if ((X != H))
343+@Callable(Q)
344+func cancelSale (L) = {
345+ let aT = aD(Q, L)
346+ let I = aT._1
347+ let K = aT._2
348+ let aF = aT._3
349+ let aH = aT._4
350+ let F = aT._5
351+ let M = aT._6
352+ let ao = aT._7
353+ let ac = z(("current_owner_on_dapp_" + L))
354+ if ((ac != K))
300355 then throw("You don't own this NFT")
301356 else {
302- let Y = w(((("sale2nd_status_" + H) + "_") + I))
303- if ((Y != "OPEN"))
357+ let ad = z(((("sale2nd_status_" + K) + "_") + L))
358+ if ((ad != "OPEN"))
304359 then throw("Sale not active")
305360 else {
306- let aC = G(H, I, C, J)
307- let aD = w((aC + "_OPEN"))
308-[DeleteEntry((aC + "_OPEN")), DeleteEntry(((("sale2nd_status_" + H) + "_") + I)), DeleteEntry(("current_owner_on_dapp_" + I)), StringEntry((((aC + "_") + F) + "_CANCELLED"), ((((aD + "_CANCELLED_") + toString(aw)) + "_") + F)), ScriptTransfer(Address(fromBase58String(H)), 1, fromBase58String(I))]
361+ let aR = J(K, L, F, M)
362+ let aS = z((aR + "_OPEN"))
363+[DeleteEntry((aR + "_OPEN")), DeleteEntry(((("sale2nd_status_" + K) + "_") + L)), DeleteEntry(("current_owner_on_dapp_" + L)), StringEntry((((aR + "_") + I) + "_CANCELLED"), ((((aS + "_CANCELLED_") + toString(aF)) + "_") + I)), ScriptTransfer(Address(fromBase58String(K)), 1, fromBase58String(L))]
309364 }
310365 }
311366 }
312367
313368
314369
315-@Callable(N)
316-func buyNFT (I) = {
317- let aG = M(N)
318- let F = aG._1
319- let H = aG._2
320- let aw = aG._3
321- let X = V(I)
322- let aH = ad(I)
323- let az = aH._1
324- let C = aH._2
325- let J = aH._3
326- let af = aH._4
327- if ((size(af) == 0))
370+@Callable(Q)
371+func buyNFT (L) = {
372+ let aU = aD(Q, L)
373+ let I = aU._1
374+ let K = aU._2
375+ let aF = aU._3
376+ let aH = aU._4
377+ let F = aU._5
378+ let M = aU._6
379+ let ao = aU._7
380+ if ((size(ao) == 0))
328381 then throw("Artwork not found on SIGN Art, cancel your sale.")
329- else if (!(az))
330- then throw("Something went wrong")
382+ else if (!(aH))
383+ then throw("Not a valid nft")
331384 else {
332- let aC = G(X, I, C, J)
333- let aD = w((aC + "_OPEN"))
334- if ((size(aD) == 0))
385+ let ac = aa(L)
386+ let aR = J(ac, L, F, M)
387+ let aS = z((aR + "_OPEN"))
388+ if ((size(aS) == 0))
335389 then throw("Sale Not found!")
336390 else {
337- let aI = split(aD, "_")
338- if ((parseInt(aI[1]) == 0))
391+ let aV = split(aS, "_")
392+ if ((parseInt(aV[1]) == 0))
339393 then throw("Offer only")
340394 else {
341- let aJ = O(N)
342- let P = aJ._1
343- let Q = aJ._2
344- let aK = if (isDefined(P.assetId))
345- then toBase58String(value(P.assetId))
395+ let aW = R(Q)
396+ let S = aW._1
397+ let T = aW._2
398+ let aX = if (isDefined(S.assetId))
399+ then toBase58String(value(S.assetId))
346400 else ""
347- if (if ((aI[1] != toString(Q)))
401+ if (if ((aV[1] != toString(T)))
348402 then true
349- else (aI[2] != aK))
403+ else (aV[2] != aX))
350404 then throw("Payment infos don't match.")
351405 else {
352- let ai = fraction(Q, l, 100)
353- let aj = fraction(Q, m, 100)
354- let ak = (Q - (ai + aj))
355- let aL = ah(Q, P.assetId, I, J, X, H)
356- let al = aL._1
357- let am = aL._2
358- let an = aL._3
359- let ao = aL._4
360-[DeleteEntry((aC + "_OPEN")), DeleteEntry(((("sale2nd_status_" + X) + "_") + I)), DeleteEntry(("current_owner_on_dapp_" + I)), StringEntry((((aC + "_") + F) + "_CLOSED"), ((((((makeString(aI, "_") + "_CLOSED_") + toString(aw)) + "_") + F) + "_") + H)), al, am, an, ao]
406+ let ar = fraction(T, l, 100)
407+ let as = fraction(T, m, 100)
408+ let at = (T - (ar + as))
409+ let aY = aq(T, S.assetId, L, M, ac, K)
410+ let au = aY._1
411+ let av = aY._2
412+ let aw = aY._3
413+ let ax = aY._4
414+[DeleteEntry((aR + "_OPEN")), DeleteEntry(((("sale2nd_status_" + ac) + "_") + L)), DeleteEntry(("current_owner_on_dapp_" + L)), StringEntry((((aR + "_") + I) + "_CLOSED"), ((((((aS + "_CLOSED_") + toString(aF)) + "_") + I) + "_") + K)), aI(), au, av, aw, ax]
361415 }
362416 }
363417 }
364418 }
365419 }
366420
367421

github/deemru/w8io/169f3d6 
108.01 ms