tx · FtNWsyFPm6F3TjJaA5VcMpooc82jm41DFgYcAd6YL5h8

3MrWNTqFcHBqb58Za1A5crQrMV5KJ5DYhtA:  -0.01000000 Waves

2021.08.22 12:26 [1669360] smart account 3MrWNTqFcHBqb58Za1A5crQrMV5KJ5DYhtA > SELF 0.00000000 Waves

{ "type": 13, "id": "FtNWsyFPm6F3TjJaA5VcMpooc82jm41DFgYcAd6YL5h8", "fee": 1000000, "feeAssetId": null, "timestamp": 1629624493388, "version": 2, "chainId": 84, "sender": "3MrWNTqFcHBqb58Za1A5crQrMV5KJ5DYhtA", "senderPublicKey": "9abKuN1XmLjjire2feZH26PmcEWhEXxiHToWSmii3Gn2", "proofs": [ "2si6W87oFqk6vy8zsK9KhYUCVSodZdrXX8uFsuzSk8yrxfaXDNaxPB5PyDpXqaJC1UER5s6kR1orPeJCczbBGbwL" ], "script": "base64:AAIFAAAAAAAAC+oIAhIICgYICAgICAgSCQoHCAEBCAgBARIECgIICBIDCgEIEgQKAggIEgYKBAgICAgSBQoDCAgIGg4KAmExEgh1bml0VGVzdBoPCgJhMhIJb3JhY2xlRmVlGhEKAmEzEgtmZWVSZWNlaXZlchoOCgJhNBIIdXNlckRhcHAaEwoCYTUSDXdoaXRlbGlzdERhcHAaEwoCYTYSDXNjb25leEFzc2V0SWQaCwoCYTcSBW93bmVyGhgKAmE4EhJzY29uZXhGaXJzdFNlbGxDdXQaEQoCYTkSC2RhcHBSdW5uaW5nGhQKAmIxEg5tYWludGVuYW5jZU1TRxoTCgJiMhINdXNlclN1c3BlbmRlZBoRCgJiMxILdXNlclJlbW92ZWQaFgoCYjQSEHVzZXJVbnJlZ2lzdGVyZWQaEQoCYjUSC3VzZXJBbGxvd2VkGhIKAmI2EgxhdWN0aW9uVHlwZTEaEgoCYjcSDGF1Y3Rpb25UeXBlMhoUCgJiOBIOZ2V0U3RyaW5nQnlLZXkaCQoCYjkSA2tleRofCgJjMRIZZ2V0SW50ZWdlckJ5S2V5RnJvbU9yYWNsZRoVCgJjMhIPZ2V0SW50ZWdlckJ5S2V5GhQKAmMzEg5jaGVja1doaXRlbGlzdBoVCgJjNBIPZ2V0Qm9vbGVhbkJ5S2V5GhMKAmM1Eg1rZXlVc2VyU3RhdHVzGgwKAmM2EgZjYWxsZXIaDQoCYzcSB2tleURhdGUaCwoCYzgSBWFydElkGg0KAmM5EgdrZXlOYW1lGg0KAmQxEgdrZXlEZXNjGhMKAmQyEg1rZXlEaXNwbGF5Q2lkGhAKAmQzEgprZXlNYXhNaW50GhEKAmQ0EgtrZXlNaW5QcmljZRoTCgJkNRINa2V5SGlnaGVzdEJpZBoOCgJkNhIIa2V5QmlkSWQaCwoCZDcSBWJpZElkGhEKAmQ4EgtrZXlEdXJhdGlvbhoSCgJkORIMa2V5RW5kSGVpZ2h0GhQKAmUxEg5rZXlBdWN0aW9uVHlwZRoPCgJlMhIJa2V5SXNzdWVkGhIKAmUzEgxLZXlOZnRJc3N1ZXIaCwoCZTQSBW5mdElkGg8KAmU1EglrZXlPblNhbGUaDQoCZTYSB2tleVRhZ3MaDQoCZTcSB2tleVR5cGUaDgoCZTgSCGtleVByaWNlGhgKAmU5EhJrZXlBc3NldElkQWNjZXB0ZWQaFwoCZjESEWtleUhhc2hCeVR4aWRBZGRyGgoKAmYyEgR0eGlkGhQKAmYzEg5rZXlPd25lckJ5SGFzaBoQCgJmNBIKc2hhMjU2SGFzaBoYCgJmNRISa2V5VHhpZEJ5SGFzaE93bmVyGh8KAmY2EhljdXJyZW50Q2VydGlmaWNhdGlvblByaWNlGhQKAmY3Eg52YWxpZGF0ZVN0cmluZxoJCgJmOBIDc3RyGgkKAmY5EgNtYXgaEgoCZzESDHZhbGlkYXRlVXNlchoQCgJnMhIKdXNlclN0YXR1cxoZCgJnMxITdmFsaWRhdGVBcnR3b3JrRGF0YRoQCgJnNBIKY2lkRGlzcGxheRoKCgJnNRIEbmFtZRoRCgJnNhILZGVzY3JpcHRpb24aCgoCZzcSBHRhZ3MaDwoCZzgSCWNoZWNrVXNlchoPCgJnORIJaXNQYXltZW50GgcKAmgxEgFpGg0KAmgyEgdwYXltZW50GgwKAmgzEgZhbW91bnQaFQoCaDQSD3ZhbGlkYXRlUGF5bWVudBoQCgJoNRIKdDA4OTgyOTAxOBoNCgJoNhIHYXNzZXRJZBoaCgJoNxIUdmFsaWRhdGVQcmljZUFzc2V0SWQaEgoCaDgSDHByaWNlQXNzZXRJZBoSCgJoORIMYXJ0d29ya1ByaWNlGhAKAmkxEgp0MDk2MTE5NjQ3GhYKAmkyEhBhY2NlcHRlZEFzc2V0SWRzGhUKAmkzEg92YWxpZGF0ZU1pblNlbGwaCwoCaTQSBXByaWNlGhMKAmk1Eg1taW5TZWxsU2NvbmV4GhMKAmk2Eg1nZXRCaWRBc3NldElkGhwKAmk3EhZnZXRQcmljZUFzc2V0SWRGcm9tQmlkGhAKAmk4EgpiaWREYXRhS2V5Gg0KAmk5EgdiaWREYXRhGhAKAmoxEgpiaWREYXRhQXJyGg8KAmoyEgliaWRBbW91bnQaEAoCajMSCmJpZEFzc2V0SWQaEgoCajQSDGlkQ2FsbGVyRGF0ZRoQCgJqNRIKaXNCaWRDaGVjaxoMCgJqNhIGaXNzdWVyGg4KAmo3EghiaWRPd25lchoQCgJqOBIKZ2V0QXJ0RGF0YRoLCgJqORIFaXNCaWQaFAoCazESDmNhbGxlcklzSXNzdWVyGg4KAmsyEgh0b3RhbE5GVBoRCgJrMxILYXJ0d29ya05hbWUaDgoCazQSCGlzT25TYWxlGhAKAms1EgphbW91bnRTb2xkGhAKAms2EgptYXhDYW5TZWxsGhAKAms3EgpnZXRCaWREYXRhGhIKAms4Egx0MDEzNTE5MTM2NDgaFwoCazkSEWdldENvbW1pc3Npb25EYXRhGhMKAmwxEg1pc1doaXRlbGlzdGVkGgkKAmwyEgNjdXQaFQoCbDMSD2Ftb3VudEZvclNjb25leBoWCgJsNBIQYW1vdW50Rm9yQ3JlYXRvchoTCgJsNRINbmV3QW1vdW50U29sZBoSCgJsNhIMZ2V0SXNzdWVEYXRhGg8KAmw3Eglpc3N1ZU1ldGEaDgoCbDgSCGlzc3VlTkZUGgsKAmw5EgVpZE5GVBoQCgJtMRIKc2VsbFN0YXR1cxoQCgJtMhIKcmVjZWl2ZU5GVBoSCgJtMxIMZ2V0QmlkS2V5VmFsGgoKAm00EgRkYXRlGhAKAm01Egphc3NldElkQmlkGg8KAm02EgliaWREZWxPbGQaDwoCbTcSCWJpZFVwZGF0ZRoNCgJtOBIHYnV5TWludBoSCgJtORIMdDAxNTUxNjE1NTY2GggKAm4xEgJpZBoSCgJuMhIMdDAxNTY0NjE1Nzk3GhIKAm4zEgx0MDE1ODAyMTU5NDgaEgoCbjQSDHQwMTU5NTMxNjA5NRoSCgJuNRIMdDAxNjEwMDE2MjkwGhIKAm42Egx0MDE2Mjk1MTYzOTQaDQoCbjcSB3NvbGRLZXkaDwoCbjgSCXNvbGRWYWx1ZRoOCgJuORIIc29sZERhdGEaDAoCbzESBmJ1eVJlcxoaCgJvMhIUc2V0QmlkTm9uVHJhZGl0aW9uYWwaEgoCbzMSDHQwMjc3MDkyNzc0NxoSCgJvNBIMdDAyNzc1MjI3Nzg4GgwKAm81EgZiaWROYnIaFwoCbzYSEXNldEJpZFRyYWRpdGlvbmFsGg8KAm83EgllbmRIZWlnaHQaEAoCbzgSCmhpZ2hlc3RCaWQaEQoCbzkSC2NhbGxkZXJEYXRhGhIKAnAxEgxpc1BheW1lbnRWYXIaHQoCcDISF2FjY2VwdEJpZE5vblRyYWRpdGlvbmFsGhQKAnAzEg5yZXN0YXJ0QXVjdGlvbhoSCgJwNBIMb2xkRW5kSGVpZ2h0Gg4KAnA1EghkdXJhdGlvbhoaCgJwNhIUYWNjZXB0QmlkVHJhZGl0aW9uYWwaEwoCcDcSDWFtb3VudEJ5QmlkSWQaEQoCcDgSC2J1eU1pbnREYXRhGhgKAnA5EhJyZXN0YXJ0QXVjdGlvbkRhdGEaEwoCcTESDWNhbmNlbEJpZEltcGwaEgoCcTISDHQwMjg5NDIyOTA5NBoPCgJxMxIJYmlkU3RhdHVzGh4KAnE0EhhjYW5jZWxCaWRJbXBsVHJhZGl0aW9uYWwaCgoCcTUSBHR5cGUaEgoCcTYSDHQwMTc3NDAxNzc4MRoVCgJxNxIPdmFsaWRhdGVBcnR3b3JrGhIKAnE4Egx0MDE4MTcwMTgyMTIaEAoCcTkSCmVudHJ5RXhpc3QaDwoCcjESCWhhc2hFeGlzdBoNCgJyMhIHbWF4TWludBoRCgJyMxILYXVjdGlvblR5cGUaDAoCcjQSBm1pbkJpZBoSCgJyNRIMdDAyNTcxNDI1NzQ3GgsKAnI2EgVlbnRyeQAAAEUAAAAAAmExBwAAAAACYTIJAQAAAAV2YWx1ZQAAAAEJAAQmAAAAAQIAAAAjM01wWlFqekdvZ21pZmNFS2U4bURkNnJpYkw3bnhUOUFDeWUAAAAAAmEzAgAAACMzTjY1eExxOEpjQ2VhRWlSMVRKUTdkQnFYQnZFeTZFNDhXegAAAAACYTQJAQAAAAV2YWx1ZQAAAAEJAAQmAAAAAQIAAAAjM045Y1FnWkZQSEhWdTh3cXNuMkRrUUZlaGczaDhDTmlvb0EAAAAAAmE1CQEAAAAFdmFsdWUAAAABCQAEJgAAAAECAAAAIzNOOXhaWUdwek1GRFh2WHVjdG1VNnpWOHFTem0yWmZGMzFmAAAAAAJhNgEAAAAguobtEHSno8B/SPo/hvAGB5K2lpZqO0oRcOvqVeCS0zMAAAAAAmE3AgAAACMzTjFEaHE1Wlp5b29qUWlzdVRMdXNZam5HaXNxcnhEd0dMeQAAAAACYTgAAAAAAAAAAJYAAAAAAmE5CQEAAAALdmFsdWVPckVsc2UAAAACCQAEGwAAAAIFAAAAAmE0AgAAABRjb25mX2RhcHBfaXNfcnVubmluZwYAAAAAAmIxCQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAAAmE0AgAAABRjb25mX21haW50ZW5hbmNlX21zZwIAAAAAAAAAAAJiMgIAAAAJU1VTUEVOREVE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", "height": 1669360, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: JB4AmsFwcfmU7GvMLf3T4yZoxy18jEnmL3gLKmGaW2Ni Next: HiBU8ifrs6QPM9cJkLhPwfLTNZ7EYWqvatii9Dqx4tEr Diff:
OldNewDifferences
7878 func I (x,z) = ((("art_duration_" + z) + "_") + x)
7979
8080
81-func J (x,z) = ((("art_auctiontype_" + z) + "_") + x)
81+func J (x,z) = ((("art_endheight_" + z) + "_") + x)
8282
8383
84-func K (x,z) = ((("art_issued_" + z) + "_") + x)
84+func K (x,z) = ((("art_auctiontype_" + z) + "_") + x)
8585
8686
87-func L (M) = ("nft_issued_" + M)
87+func L (x,z) = ((("art_issued_" + z) + "_") + x)
8888
8989
90-func N (x,z) = ((("art_onsale_" + z) + "_") + x)
90+func M (N) = ("nft_issued_" + N)
9191
9292
93-func O (x,z) = ((("art_tags_" + z) + "_") + x)
93+func O (x,z) = ((("art_onsale_" + z) + "_") + x)
9494
9595
96-func P (x,z) = ((("art_type_" + z) + "_") + x)
96+func P (x,z) = ((("art_tags_" + z) + "_") + x)
9797
9898
99-func Q (x,z) = ((("art_price_" + z) + "_") + x)
99+func Q (x,z) = ((("art_type_" + z) + "_") + x)
100100
101101
102-func R (x,z) = ((("art_assetAccepted_" + z) + "_") + x)
102+func R (x,z) = ((("art_price_" + z) + "_") + x)
103103
104104
105-func S (x,T) = ((("get_hashbytxidaddr_" + T) + "_") + x)
105+func S (x,z) = ((("art_assetAccepted_" + z) + "_") + x)
106106
107107
108-func U (V) = ("get_owner_by_hash_" + V)
108+func T (x,U) = ((("get_hashbytxidaddr_" + U) + "_") + x)
109109
110110
111-func W (V,x) = ("get_txid_by_hash_owner_" + toBase58String(sha256_16Kb(toBytes((V + x)))))
111+func V (W) = ("get_owner_by_hash_" + W)
112112
113113
114-let X = s(("certification_fee_" + toBase58String(f)))
114+func X (W,x) = ("get_txid_by_hash_owner_" + toBase58String(sha256_16Kb(toBytes((W + x)))))
115115
116-func Y (Z,aa) = if ((size(Z) == 0))
116+
117+let Y = s(("certification_fee_" + toBase58String(f)))
118+
119+func Z (aa,ab) = if ((size(aa) == 0))
117120 then throw("Field cannot be is empty")
118- else if ((size(Z) > aa))
119- then throw((Z + " is too long"))
121+ else if ((size(aa) > ab))
122+ then throw((aa + " is too long"))
120123 else true
121124
122125
123-func ab (x) = {
124- let ac = valueOrElse(getString(d, w(x)), m)
125- if (if ((ac == m))
126+func ac (x) = {
127+ let ad = valueOrElse(getString(d, w(x)), m)
128+ if (if ((ad == m))
126129 then true
127- else (ac == n))
130+ else (ad == n))
128131 then "Register this account first with 'Account' tab"
129- else if ((ac == k))
132+ else if ((ad == k))
130133 then "Account suspended"
131- else if ((ac == l))
134+ else if ((ad == l))
132135 then "Account removed"
133136 else ""
134137 }
135138
136139
137-func ad (x,ae,af,ag,ah) = {
138- let ai = ab(x)
139- if ((ai != ""))
140- then throw(ai)
141- else if ((size(ae) == 0))
140+func ae (x,af,ag,ah,ai) = {
141+ let aj = ac(x)
142+ if ((aj != ""))
143+ then throw(aj)
144+ else if ((size(af) == 0))
142145 then throw("Display CID cannot be empty")
143- else if (!(Y(af, 100)))
146+ else if (!(Z(ag, 100)))
144147 then throw("100 Char. max name")
145- else if (!(Y(ag, 1000)))
148+ else if (!(Z(ah, 1000)))
146149 then throw("1000 Char. max description")
147- else if ((size(split(ah, ",")) > 5))
150+ else if ((size(split(ai, ",")) > 5))
148151 then throw("5 tags max.")
149152 else ""
150153 }
151154
152155
153-func aj (ak) = if ((size(ak.payments) == 0))
156+func ak (al) = if ((size(al.payments) == 0))
154157 then throw("No payment attached")
155158 else {
156- let al = value(ak.payments[0])
157- let am = value(al.amount)
158- $Tuple2(al, am)
159+ let am = value(al.payments[0])
160+ let an = value(am.amount)
161+ $Tuple2(am, an)
159162 }
160163
161164
162-func an (ak) = {
163- let ao = aj(ak)
164- let al = ao._1
165- let am = ao._2
166- let ap = if (if (isDefined(al.assetId))
167- then (al.assetId == f)
165+func ao (al) = {
166+ let ap = ak(al)
167+ let am = ap._1
168+ let an = ap._2
169+ let aq = if (if (isDefined(am.assetId))
170+ then (am.assetId == f)
168171 else false)
169- then al.assetId
172+ then am.assetId
170173 else throw("Only Sconex token accepted as transaction fee")
171- if ((am != X))
172- then throw(("Payment amount should be " + toString(X)))
173- else $Tuple2(am, ap)
174+ if ((an != Y))
175+ then throw(("Payment amount should be " + toString(Y)))
176+ else $Tuple2(an, aq)
174177 }
175178
176179
177-func aq (ak,ar,as) = {
178- let at = aj(ak)
179- let al = at._1
180- let am = at._2
181- let ap = if (!(isDefined(al.assetId)))
180+func ar (al,as,at) = {
181+ let au = ak(al)
182+ let am = au._1
183+ let an = au._2
184+ let aq = if (!(isDefined(am.assetId)))
182185 then throw("Wrong asset id")
183- else if (if ((size(ar) > 0))
184- then (toBase58String(value(al.assetId)) == ar)
186+ else if (if ((size(as) > 0))
187+ then (toBase58String(value(am.assetId)) == as)
185188 else false)
186- then al.assetId
189+ then am.assetId
187190 else throw("Wrong asset id")
188- if (if ((ap == unit))
189- then (ar != "")
191+ if (if ((aq == unit))
192+ then (as != "")
190193 else false)
191194 then throw("Wrong asset id")
192- else if ((as != am))
195+ else if ((at != an))
193196 then throw("Payment don't match")
194- else $Tuple2(am, ap)
197+ else $Tuple2(an, aq)
195198 }
196199
197200
198-func au (ap) = if ((ap != toBase58String(f)))
201+func av (aq) = if ((aq != toBase58String(f)))
199202 then throw("Only Sconex accepted")
200203 else true
201204
202205
203-func av (ap,aw) = {
204- let ax = if (a)
206+func aw (aq,ax) = {
207+ let ay = if (a)
205208 then 1
206- else (X * 2)
207- if (if (if ((ap == toBase58String(f)))
208- then (ax > aw)
209+ else (Y * 2)
210+ if (if (if ((aq == toBase58String(f)))
211+ then (ay > ax)
209212 else false)
210- then (aw != 0)
213+ then (ax != 0)
211214 else false)
212- then throw(("Wrong minimum sell price " + toString(ax)))
215+ then throw(("Wrong minimum sell price " + toString(ay)))
213216 else true
214217 }
215218
216219
217-func ay (ap) = if ((ap == "WAVES"))
220+func az (aq) = if ((aq == "WAVES"))
218221 then throw("Only sconex is accepted!")
219- else fromBase58String(ap)
222+ else fromBase58String(aq)
220223
221224
222-func az (aA) = {
223- let aB = q((aA + "_OPEN"))
224- if ((aB == ""))
225+func aA (aB) = {
226+ let aC = q((aB + "_OPEN"))
227+ if ((aC == ""))
225228 then throw("Bid not found")
226229 else {
227- let aC = split(aB, "_")
228- let aD = parseIntValue(aC[1])
229- let aE = ay(aC[0])
230- if ((0 >= aD))
230+ let aD = split(aC, "_")
231+ let aE = parseIntValue(aD[1])
232+ let aF = az(aD[0])
233+ if ((0 >= aE))
231234 then throw("Wrong amount")
232- else $Tuple2(aD, aE)
235+ else $Tuple2(aE, aF)
233236 }
234237 }
235238
236239
237-func aF (ak) = if (!(i))
240+func aG (al) = if (!(i))
238241 then throw(j)
239- else $Tuple3(toBase58String(ak.transactionId), toBase58String(ak.caller.bytes), lastBlock.timestamp)
242+ else $Tuple3(toBase58String(al.transactionId), toBase58String(al.caller.bytes), lastBlock.timestamp)
240243
241244
242-func aG (ak,aH,aI,H) = if (if (if ((toBase58String(ak.caller.bytes) == aH))
243- then (aI != "")
245+func aH (al,aI,aJ,H) = if (if (if ((toBase58String(al.caller.bytes) == aI))
246+ then (aJ != "")
244247 else false)
245248 then (H != "")
246249 else false)
248251 else false
249252
250253
251-func aJ (ak,aH,z,aK) = {
252- let aL = (toBase58String(ak.caller.bytes) == aH)
253- let aM = t("total_nft_issued")
254- let aN = q(A(aH, z))
255- if ((aN == ""))
254+func aK (al,aI,z,aL) = {
255+ let aM = (toBase58String(al.caller.bytes) == aI)
256+ let aN = t("total_nft_issued")
257+ let aO = q(A(aI, z))
258+ if ((aO == ""))
256259 then throw("Art doesn't exist")
257260 else {
258- let aO = v(N(aH, z))
259- let aP = t(K(aH, z))
260- let as = if (aL)
261- then (X * 2)
262- else t(Q(aH, z))
263- let ar = if (aL)
261+ let aP = v(O(aI, z))
262+ let aQ = t(L(aI, z))
263+ let at = if (aM)
264+ then (Y * 2)
265+ else t(R(aI, z))
266+ let as = if (aM)
264267 then toBase58String(f)
265- else q(R(aH, z))
266- let aQ = t(D(aH, z))
267- if (if (if (!(aK))
268- then !(aL)
268+ else q(S(aI, z))
269+ let aR = t(D(aI, z))
270+ if (if (if (!(aL))
271+ then !(aM)
269272 else false)
270- then if (if ((0 >= as))
273+ then if (if ((0 >= at))
271274 then true
272- else !(aO))
275+ else !(aP))
273276 then true
274- else (0 >= aQ)
277+ else (0 >= aR)
275278 else false)
276279 then throw("Art not for sale")
277- else if (if (if (!(aK))
278- then aL
280+ else if (if (if (!(aL))
281+ then aM
279282 else false)
280- then (0 >= aQ)
283+ then (0 >= aR)
281284 else false)
282285 then throw("Max issuable not set")
283- else $Tuple7(aM, aN, aP, as, ar, aQ, aO)
286+ else $Tuple7(aN, aO, aQ, at, as, aR, aP)
284287 }
285288 }
286289
287290
288-func aR (ak,x,aH,z,aI,H,ar,as,aK) = {
289- let ai = ab(aH)
290- if (if (aK)
291- then (ai != "")
291+func aS (al,x,aI,z,aJ,H,as,at,aL) = {
292+ let aj = ac(aI)
293+ if (if (aL)
294+ then (aj != "")
292295 else false)
293- then throw(ai)
296+ then throw(aj)
294297 else {
295- let aA = ((((((("bid_" + z) + "_") + aH) + "_") + aI) + "_") + H)
296- let aS = if (aK)
297- then az(aA)
298- else aq(ak, ar, as)
299- let am = aS._1
300- let ap = aS._2
301- $Tuple3(aA, am, ap)
298+ let aB = ((((((("bid_" + z) + "_") + aI) + "_") + aJ) + "_") + H)
299+ let aT = if (aL)
300+ then aA(aB)
301+ else ar(al, as, at)
302+ let an = aT._1
303+ let aq = aT._2
304+ $Tuple3(aB, an, aq)
302305 }
303306 }
304307
305308
306-func aT (aH,ap,am,aP,aQ) = {
307- let aU = u(aH)
308- let aV = if ((aU > height))
309+func aU (aI,aq,an,aQ,aR) = {
310+ let aV = u(aI)
311+ let aW = if ((aV > height))
309312 then 0
310- else if ((ap == f))
313+ else if ((aq == f))
311314 then h
312315 else throw("Only Sconex is accepted!")
313- let aW = fraction(am, aV, 1000)
314- let aX = (am - aW)
315- if ((aP == aQ))
316+ let aX = fraction(an, aW, 1000)
317+ let aY = (an - aX)
318+ if ((aQ == aR))
316319 then throw("Art sold out")
317320 else {
318- let aY = (aP + 1)
319- $Tuple3(aW, aX, aY)
321+ let aZ = (aQ + 1)
322+ $Tuple3(aX, aY, aZ)
320323 }
321324 }
322325
323326
324-func aZ (aH,z,aN,aY,aQ,aM,x,aI,H,ak,aO) = {
325- let ba = ((((((((("Creator: " + aH) + ",ArtID: ") + z) + ",Artwork name: ") + aN) + ",Issue: ") + toString(aY)) + "/") + toString(aQ))
326- let bb = Issue(("SCONEX_" + toString((aM + 1))), ba, 1, 0, false)
327- let bc = calculateAssetId(bb)
328- let bd = if (if ((aY == aQ))
327+func ba (aI,z,aO,aZ,aR,aN,x,aJ,H,al,aP) = {
328+ let bb = ((((((((("Creator: " + aI) + ",ArtID: ") + z) + ",Artwork name: ") + aO) + ",Issue: ") + toString(aZ)) + "/") + toString(aR))
329+ let bc = Issue(("SCONEX_" + toString((aN + 1))), bb, 1, 0, false)
330+ let bd = calculateAssetId(bc)
331+ let be = if (if ((aZ == aR))
329332 then true
330- else !(aO))
333+ else !(aP))
331334 then false
332335 else true
333- let be = if (if (if ((x == aH))
334- then (aI != "")
336+ let bf = if (if (if ((x == aI))
337+ then (aJ != "")
335338 else false)
336339 then (H != "")
337340 else false)
338- then addressFromStringValue(aI)
339- else ak.caller
340- $Tuple4(bb, bc, bd, be)
341+ then addressFromStringValue(aJ)
342+ else al.caller
343+ $Tuple4(bc, bd, be, bf)
341344 }
342345
343346
344-func bf (ap,aA,bg) = {
345- let bh = if (!(isDefined(ap)))
347+func bg (aq,aB,bh) = {
348+ let bi = if (!(isDefined(aq)))
346349 then throw("Only sconex is accepted")
347- else toBase58String(value(ap))
348- let aB = q((aA + "_OPEN"))
349- let bi = DeleteEntry((aA + "_OPEN"))
350- let bj = StringEntry((aA + "_CLOSED"), ((aB + "_") + toString(bg)))
351- $Tuple3(bh, bi, bj)
350+ else toBase58String(value(aq))
351+ let aC = q((aB + "_OPEN"))
352+ let bj = DeleteEntry((aB + "_OPEN"))
353+ let bk = StringEntry((aB + "_CLOSED"), ((aC + "_") + toString(bh)))
354+ $Tuple3(bi, bj, bk)
352355 }
353356
354357
355-func bk (ak,z,aH,H,aI) = {
356- let bl = aF(ak)
357- let bm = bl._1
358- let x = bl._2
359- let bg = bl._3
360- let aK = aG(ak, aH, aI, H)
361- let bn = aJ(ak, aH, z, aK)
362- let aM = bn._1
363- let aN = bn._2
364- let aP = bn._3
365- let as = bn._4
366- let ar = bn._5
367- let aQ = bn._6
368- let aO = bn._7
369- let bo = aR(ak, x, aH, z, aI, H, ar, as, aK)
370- let aA = bo._1
371- let am = bo._2
372- let ap = bo._3
373- let bp = aT(aH, value(ap), am, aP, aQ)
374- let aW = bp._1
375- let aX = bp._2
376- let aY = bp._3
377- let bq = aZ(aH, z, aN, aY, aQ, aM, x, aI, H, ak, aO)
378- let bb = bq._1
379- let bc = bq._2
380- let bd = bq._3
381- let be = bq._4
382- let br = bf(ap, aA, bg)
383- let bh = br._1
384- let bi = br._2
385- let bj = br._3
386- let bs = ((((((("art_sold_" + toString(aY)) + "_of_") + toString(aQ)) + "_") + z) + "_") + aH)
387- let bt = if (!(aK))
388- then ((((((((((x + "_") + toString(bg)) + "_") + bm) + "_") + toString(as)) + "_") + ar) + "_") + toBase58String(bc))
389- else ((((((((((toString(be) + "_") + toString(bg)) + "_") + bm) + "_") + toString(am)) + "_") + bh) + "_") + toBase58String(bc))
390- let bu = StringEntry(bs, bt)
391- let bv = [IntegerEntry(K(aH, z), aY), StringEntry(("nft_" + toBase58String(bc)), bs), IntegerEntry("total_nft_issued", (aM + 1)), BooleanEntry(N(aH, z), bd), bb, ScriptTransfer(Address(fromBase58String(aH)), aX, ap), ScriptTransfer(Address(fromBase58String(c)), aW, ap), ScriptTransfer(be, 1, bc), StringEntry(L(toBase58String(bc)), aH)]
392- if (aK)
393- then (((bv :+ bu) :+ bj) :+ bi)
394- else bu :: bv
358+func bl (al,z,aI,H,aJ) = {
359+ let bm = aG(al)
360+ let bn = bm._1
361+ let x = bm._2
362+ let bh = bm._3
363+ let aL = aH(al, aI, aJ, H)
364+ let bo = aK(al, aI, z, aL)
365+ let aN = bo._1
366+ let aO = bo._2
367+ let aQ = bo._3
368+ let at = bo._4
369+ let as = bo._5
370+ let aR = bo._6
371+ let aP = bo._7
372+ let bp = aS(al, x, aI, z, aJ, H, as, at, aL)
373+ let aB = bp._1
374+ let an = bp._2
375+ let aq = bp._3
376+ let bq = aU(aI, value(aq), an, aQ, aR)
377+ let aX = bq._1
378+ let aY = bq._2
379+ let aZ = bq._3
380+ let br = ba(aI, z, aO, aZ, aR, aN, x, aJ, H, al, aP)
381+ let bc = br._1
382+ let bd = br._2
383+ let be = br._3
384+ let bf = br._4
385+ let bs = bg(aq, aB, bh)
386+ let bi = bs._1
387+ let bj = bs._2
388+ let bk = bs._3
389+ let bt = ((((((("art_sold_" + toString(aZ)) + "_of_") + toString(aR)) + "_") + z) + "_") + aI)
390+ let bu = if (!(aL))
391+ then ((((((((((x + "_") + toString(bh)) + "_") + bn) + "_") + toString(at)) + "_") + as) + "_") + toBase58String(bd))
392+ else ((((((((((toString(bf) + "_") + toString(bh)) + "_") + bn) + "_") + toString(an)) + "_") + bi) + "_") + toBase58String(bd))
393+ let bv = StringEntry(bt, bu)
394+ let bw = [IntegerEntry(L(aI, z), aZ), StringEntry(("nft_" + toBase58String(bd)), bt), IntegerEntry("total_nft_issued", (aN + 1)), BooleanEntry(O(aI, z), be), bc, ScriptTransfer(Address(fromBase58String(aI)), aY, aq), ScriptTransfer(Address(fromBase58String(c)), aX, aq), ScriptTransfer(bf, 1, bd), StringEntry(M(toBase58String(bd)), aI)]
395+ if (aL)
396+ then (((bw :+ bv) :+ bk) :+ bj)
397+ else bv :: bw
395398 }
396399
397400
398-func bw (ak,z,aH) = {
399- let bx = aF(ak)
400- let bm = bx._1
401- let x = bx._2
402- let bg = bx._3
403- let by = aj(ak)
404- let al = by._1
405- let am = by._2
406- let ap = if (!(isDefined(al.assetId)))
401+func bx (al,z,aI) = {
402+ let by = aG(al)
403+ let bn = by._1
404+ let x = by._2
405+ let bh = by._3
406+ let bz = ak(al)
407+ let am = bz._1
408+ let an = bz._2
409+ let aq = if (!(isDefined(am.assetId)))
407410 then throw("Only sconex is accepted!")
408- else toBase58String(value(al.assetId))
409- let bz = t(("current_bidamount_" + z))
410- if (!(au(ap)))
411+ else toBase58String(value(am.assetId))
412+ let bA = t(("current_bidamount_" + z))
413+ if (!(av(aq)))
411414 then throw("asset not accepted")
412- else if (!(av(ap, am)))
415+ else if (!(aw(aq, an)))
413416 then throw("Wrong min sell")
414417 else {
415- let aP = t(K(aH, z))
416- let aQ = t(D(aH, z))
417- if ((0 >= aQ))
418+ let aQ = t(L(aI, z))
419+ let aR = t(D(aI, z))
420+ if ((0 >= aR))
418421 then throw("No max edition set for this artwork")
419- else if ((aP >= aQ))
422+ else if ((aQ >= aR))
420423 then throw("Sold out, you cannot bid")
421- else [StringEntry((((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + bm) + "_OPEN"), ((((ap + "_") + toString(am)) + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz + 1))]
424+ else [StringEntry((((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + bn) + "_OPEN"), ((((aq + "_") + toString(an)) + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA + 1))]
422425 }
423426 }
424427
425428
426-func bA (ak,z,aH) = {
427- let bB = t(I(aH, z))
428- let bC = t(F(z))
429- if ((height > bB))
429+func bB (al,z,aI) = {
430+ let bC = t(J(aI, z))
431+ let bD = t(F(z))
432+ if ((height > bC))
430433 then throw("This auction is finished already!")
431434 else {
432- let bD = aF(ak)
433- let bm = bD._1
434- let x = bD._2
435- let bg = bD._3
436- let bE = aj(ak)
437- let al = bE._1
438- let am = bE._2
439- if ((bC >= am))
440- then throw(("Please place a bid higher then: " + toString(bC)))
435+ let bE = aG(al)
436+ let bn = bE._1
437+ let x = bE._2
438+ let bh = bE._3
439+ let bF = ak(al)
440+ let am = bF._1
441+ let an = bF._2
442+ if ((bD >= an))
443+ then throw(("Please place a bid higher then: " + toString(bD)))
441444 else {
442- let ap = if (!(isDefined(al.assetId)))
445+ let aq = if (!(isDefined(am.assetId)))
443446 then throw("Only sconex is accepted!")
444- else toBase58String(value(al.assetId))
445- let bz = t(("current_bidamount_" + z))
446- if (!(au(ap)))
447+ else toBase58String(value(am.assetId))
448+ let bA = t(("current_bidamount_" + z))
449+ if (!(av(aq)))
447450 then throw("asset not accepted")
448- else if (!(av(ap, am)))
451+ else if (!(aw(aq, an)))
449452 then throw("Wrong min sell")
450453 else {
451- let aP = t(K(aH, z))
452- let aQ = t(D(aH, z))
453- if ((0 >= aQ))
454+ let aQ = t(L(aI, z))
455+ let aR = t(D(aI, z))
456+ if ((0 >= aR))
454457 then throw("No max edition set for this artwork")
455- else if ((aP >= aQ))
458+ else if ((aQ >= aR))
456459 then throw("Sold out, you cannot bid")
457- else [StringEntry((((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + bm) + "_OPEN"), ((((ap + "_") + toString(am)) + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz + 1)), IntegerEntry(F(z), am), IntegerEntry(G(toBase58String(ak.transactionId)), am)]
460+ else [StringEntry((((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + bn) + "_OPEN"), ((((aq + "_") + toString(an)) + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA + 1)), IntegerEntry(F(z), an), IntegerEntry(G(toBase58String(al.transactionId)), an)]
458461 }
459462 }
460463 }
461464 }
462465
463466
464-func bF (ak,z,aH,H,aI) = {
465- let x = toBase58String(ak.caller.bytes)
466- if ((x != aH))
467+func bG (al,z,aI,H,aJ) = {
468+ let x = toBase58String(al.caller.bytes)
469+ if ((x != aI))
467470 then throw("You cannot do this action")
468- else bk(ak, z, aH, H, aI)
471+ else bl(al, z, aI, H, aJ)
469472 }
470473
471474
472-func bG (ak,z,aH,H,aI) = {
473- let bB = t(I(aH, z))
474- let bC = t(F(z))
475- let bH = t(G(H))
476- if ((height > bB))
477- then if ((bH == bC))
478- then bk(ak, z, aH, H, aI)
475+func bH (z,aI) = {
476+ let aQ = t(L(aI, z))
477+ let aR = t(D(aI, z))
478+ let bI = t(J(aI, z))
479+ let bJ = t(I(aI, z))
480+ let bC = (bJ + height)
481+ if ((height > bI))
482+ then if ((aQ == aR))
483+ then throw("Can't restart auction, max amount sold")
484+ else [IntegerEntry(F(z), 0), IntegerEntry(I(aI, z), bJ), IntegerEntry(J(aI, z), bC)]
485+ else throw("Previous auction isn't completed yet")
486+ }
487+
488+
489+func bK (al,z,aI,H,aJ) = {
490+ let bC = t(J(aI, z))
491+ let bD = t(F(z))
492+ let bL = t(G(H))
493+ if ((height > bC))
494+ then if ((bL == bD))
495+ then {
496+ let bM = bl(al, z, aI, H, aJ)
497+ let bN = bH(z, aI)
498+ (bN ++ bM)
499+ }
479500 else throw("This is not the winning bid!")
480501 else throw("This auction is not yet finished!")
481502 }
482503
483504
484-func bI (ak,z,aH,H) = {
485- let bJ = aF(ak)
486- let bm = bJ._1
487- let x = bJ._2
488- let bg = bJ._3
489- let bz = t(("current_bidamount_" + z))
490- let aA = ((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + H)
491- let aB = q((aA + "_OPEN"))
492- if ((aB == ""))
505+func bO (al,z,aI,H) = {
506+ let bP = aG(al)
507+ let bn = bP._1
508+ let x = bP._2
509+ let bh = bP._3
510+ let bA = t(("current_bidamount_" + z))
511+ let aB = ((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + H)
512+ let aC = q((aB + "_OPEN"))
513+ if ((aC == ""))
493514 then throw("Bid not found")
494515 else {
495- let aC = split(aB, "_")
496- let ap = ay(aC[0])
497- let bK = "CANCELED"
498-[DeleteEntry((aA + "_OPEN")), StringEntry(((aA + "_") + bK), ((aB + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz - 1)), ScriptTransfer(Address(fromBase58String(x)), parseIntValue(aC[1]), ap)]
516+ let aD = split(aC, "_")
517+ let aq = az(aD[0])
518+ let bQ = "CANCELED"
519+[DeleteEntry((aB + "_OPEN")), StringEntry(((aB + "_") + bQ), ((aC + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA - 1)), ScriptTransfer(Address(fromBase58String(x)), parseIntValue(aD[1]), aq)]
499520 }
500521 }
501522
502523
503-func bL (ak,z,aH,H) = {
504- let bJ = aF(ak)
505- let bm = bJ._1
506- let x = bJ._2
507- let bg = bJ._3
508- let bz = t(("current_bidamount_" + z))
509- let aA = ((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + H)
510- let aB = q((aA + "_OPEN"))
511- if ((aB == ""))
524+func bR (al,z,aI,H) = {
525+ let bP = aG(al)
526+ let bn = bP._1
527+ let x = bP._2
528+ let bh = bP._3
529+ let bA = t(("current_bidamount_" + z))
530+ let aB = ((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + H)
531+ let aC = q((aB + "_OPEN"))
532+ if ((aC == ""))
512533 then throw("Bid not found")
513534 else {
514- let aC = split(aB, "_")
515- let ap = ay(aC[0])
516- let bK = "CANCELED"
517- let aD = parseIntValue(aC[1])
518- let bC = t(F(z))
519- if ((aD == bC))
535+ let aD = split(aC, "_")
536+ let aq = az(aD[0])
537+ let bQ = "CANCELED"
538+ let aE = parseIntValue(aD[1])
539+ let bD = t(F(z))
540+ if ((aE == bD))
520541 then throw("You can't cancel the highest bid!")
521- else [DeleteEntry((aA + "_OPEN")), StringEntry(((aA + "_") + bK), ((aB + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz - 1)), ScriptTransfer(Address(fromBase58String(x)), aD, ap)]
542+ else [DeleteEntry((aB + "_OPEN")), StringEntry(((aB + "_") + bQ), ((aC + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA - 1)), ScriptTransfer(Address(fromBase58String(x)), aE, aq)]
522543 }
523544 }
524545
525546
526-@Callable(ak)
527-func addArtwork (V,af,ag,ah,bM,ae) = {
528- let bN = aF(ak)
529- let z = bN._1
530- let x = bN._2
531- let bg = bN._3
532- let bO = ad(x, ae, af, ag, ah)
533- if ((bO != ""))
547+@Callable(al)
548+func addArtwork (W,ag,ah,ai,bS,af) = {
549+ let bT = aG(al)
550+ let z = bT._1
551+ let x = bT._2
552+ let bh = bT._3
553+ let bU = ae(x, af, ag, ah, ai)
554+ if ((bU != ""))
534555 then throw("Something went wrong!")
535556 else {
536- let bP = an(ak)
537- let am = bP._1
538- let ap = bP._2
539- if (!(isDefined(am)))
557+ let bV = ao(al)
558+ let an = bV._1
559+ let aq = bV._2
560+ if (!(isDefined(an)))
540561 then throw("Something went wrong")
541562 else {
542- let bQ = q(W(V, x))
543- if ((bQ != ""))
563+ let bW = q(X(W, x))
564+ if ((bW != ""))
544565 then throw("You already added it")
545566 else {
546- let bR = q(U(V))
547- if ((bR != ""))
567+ let bX = q(V(W))
568+ if ((bX != ""))
548569 then throw("Hash already registered")
549- else [StringEntry(U(V), x), StringEntry(W(V, x), z), IntegerEntry(y(x, z), bg), StringEntry(A(x, z), af), StringEntry(B(x, z), ag), StringEntry(C(x, z), ae), StringEntry(P(x, z), bM), StringEntry(O(x, z), ah), IntegerEntry(D(x, z), 0), IntegerEntry(K(x, z), 0), BooleanEntry(N(x, z), false), StringEntry(S(x, z), V), ScriptTransfer(Address(fromBase58String(c)), am, ap)]
570+ else [StringEntry(V(W), x), StringEntry(X(W, x), z), IntegerEntry(y(x, z), bh), StringEntry(A(x, z), ag), StringEntry(B(x, z), ah), StringEntry(C(x, z), af), StringEntry(Q(x, z), bS), StringEntry(P(x, z), ai), IntegerEntry(D(x, z), 0), IntegerEntry(L(x, z), 0), BooleanEntry(O(x, z), false), StringEntry(T(x, z), W), ScriptTransfer(Address(fromBase58String(c)), an, aq)]
550571 }
551572 }
552573 }
554575
555576
556577
557-@Callable(ak)
558-func sellArtwork (z,aw,bS,ap,bT,bU,bV) = {
559- let bW = aF(ak)
560- let bm = bW._1
561- let x = bW._2
562- let aN = q(A(x, z))
563- if (!(containsElement([o, p], bT)))
578+@Callable(al)
579+func sellArtwork (z,ax,bY,aq,bZ,ca,bJ) = {
580+ let cb = aG(al)
581+ let bn = cb._1
582+ let x = cb._2
583+ let aO = q(A(x, z))
584+ if (!(containsElement([o, p], bZ)))
564585 then throw("We dont know this auction type")
565- else if ((aN == ""))
586+ else if ((aO == ""))
566587 then throw("This art doesn't match your account")
567588 else {
568- let bz = t(("current_bidamount_" + z))
569- if (!(au(ap)))
589+ let bA = t(("current_bidamount_" + z))
590+ if (!(av(aq)))
570591 then throw("Something went wrong!")
571- else if (!(av(ap, aw)))
592+ else if (!(aw(aq, ax)))
572593 then throw("Something went wrong!")
573594 else {
574- let ai = ab(x)
575- if ((ai != ""))
576- then throw(ai)
595+ let aj = ac(x)
596+ if ((aj != ""))
597+ then throw(aj)
577598 else {
578- let aP = t(K(x, z))
579- let aQ = t(D(x, z))
580- if ((bS > 10))
599+ let aQ = t(L(x, z))
600+ let aR = t(D(x, z))
601+ if ((bY > 10))
581602 then throw("10 editions max per artwork")
582- else if (if ((aP != 0))
583- then (aP == aQ)
603+ else if (if ((aQ != 0))
604+ then (aQ == aR)
584605 else false)
585606 then throw("Max edition reached.")
586- else if (if ((aP > 0))
587- then (aQ != bS)
607+ else if (if ((aQ > 0))
608+ then (aR != bY)
588609 else false)
589610 then throw("Cannot change maximum issuable anymore")
590- else if (if ((bz > 0))
591- then (aQ != bS)
611+ else if (if ((bA > 0))
612+ then (aR != bY)
592613 else false)
593614 then throw("Cannot change maximum issuable with active orders")
594615 else {
595- let bd = if (if ((aw > 0))
596- then (bS > 0)
616+ let be = if (if ((ax > 0))
617+ then (bY > 0)
597618 else false)
598619 then true
599620 else false
600- let bB = (bV + height)
601-[BooleanEntry(N(x, z), bd), IntegerEntry(Q(x, z), aw), IntegerEntry(D(x, z), bS), IntegerEntry(E(x, z), bU), IntegerEntry(I(x, z), bB), StringEntry(R(x, z), ap), StringEntry(J(x, z), bT), IntegerEntry(F(z), 0)]
621+ let bC = (bJ + height)
622+[BooleanEntry(O(x, z), be), IntegerEntry(R(x, z), ax), IntegerEntry(D(x, z), bY), IntegerEntry(E(x, z), ca), IntegerEntry(I(x, z), bJ), IntegerEntry(J(x, z), bC), StringEntry(S(x, z), aq), StringEntry(K(x, z), bZ), IntegerEntry(F(z), 0)]
602623 }
603624 }
604625 }
607628
608629
609630
610-@Callable(ak)
611-func buyArtwork (z,aH) = bk(ak, z, aH, "", "")
631+@Callable(al)
632+func buyArtwork (z,aI) = bl(al, z, aI, "", "")
612633
613634
614635
615-@Callable(ak)
616-func deleteEntry (bX) = {
617- let x = toString(addressFromPublicKey(ak.callerPublicKey))
636+@Callable(al)
637+func deleteEntry (cc) = {
638+ let x = toString(addressFromPublicKey(al.callerPublicKey))
618639 if ((x == g))
619- then [DeleteEntry(bX)]
640+ then [DeleteEntry(cc)]
620641 else throw("no")
621642 }
622643
623644
624645
625-@Callable(ak)
626-func setBid (z,aH) = {
627- let bT = q(J(aH, z))
628- if ((bT == o))
629- then bw(ak, z, aH)
630- else if ((bT == p))
631- then bA(ak, z, aH)
632- else throw((("Unknown auction type :" + bT) + ", please contact the admins"))
646+@Callable(al)
647+func setBid (z,aI) = {
648+ let bZ = q(K(aI, z))
649+ if ((bZ == o))
650+ then bx(al, z, aI)
651+ else if ((bZ == p))
652+ then bB(al, z, aI)
653+ else throw((("Unknown auction type :" + bZ) + ", please contact the admins"))
633654 }
634655
635656
636657
637-@Callable(ak)
638-func acceptBid (z,aH,H,aI) = {
639- let bT = q(J(aH, z))
640- if ((bT == o))
641- then bF(ak, z, aH, H, aI)
642- else if ((bT == p))
643- then bG(ak, z, aH, H, aI)
644- else throw((("Unknown auction type :" + bT) + ", please contact the admins"))
658+@Callable(al)
659+func acceptBid (z,aI,H,aJ) = {
660+ let bZ = q(K(aI, z))
661+ if ((bZ == o))
662+ then bG(al, z, aI, H, aJ)
663+ else if ((bZ == p))
664+ then bK(al, z, aI, H, aJ)
665+ else throw((("Unknown auction type :" + bZ) + ", please contact the admins"))
645666 }
646667
647668
648669
649-@Callable(ak)
650-func cancelBid (z,aH,H) = {
651- let bT = q(J(aH, z))
652- if ((bT == o))
653- then bI(ak, z, aH, H)
654- else bL(ak, z, aH, H)
670+@Callable(al)
671+func cancelBid (z,aI,H) = {
672+ let bZ = q(K(aI, z))
673+ if ((bZ == o))
674+ then bO(al, z, aI, H)
675+ else bR(al, z, aI, H)
655676 }
656677
657678
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = false
55
66 let b = value(addressFromString("3MpZQjzGogmifcEKe8mDd6ribL7nxT9ACye"))
77
88 let c = "3N65xLq8JcCeaEiR1TJQ7dBqXBvEy6E48Wz"
99
1010 let d = value(addressFromString("3N9cQgZFPHHVu8wqsn2DkQFehg3h8CNiooA"))
1111
1212 let e = value(addressFromString("3N9xZYGpzMFDXvXuctmU6zV8qSzm2ZfF31f"))
1313
1414 let f = base58'DZ8ALmuLeSZ2ocsYLAcL9MiXBFDbMNQG9LtitREyU5ZC'
1515
1616 let g = "3N1Dhq5ZZyoojQisuTLusYjnGisqrxDwGLy"
1717
1818 let h = 150
1919
2020 let i = valueOrElse(getBoolean(d, "conf_dapp_is_running"), true)
2121
2222 let j = valueOrElse(getString(d, "conf_maintenance_msg"), "")
2323
2424 let k = "SUSPENDED"
2525
2626 let l = "REMOVED"
2727
2828 let m = "UNREGISTERED"
2929
3030 let n = "ALLOWED"
3131
3232 let o = "BIDTYPE"
3333
3434 let p = "TRADITIONAL"
3535
3636 func q (r) = valueOrElse(getString(this, r), "")
3737
3838
3939 func s (r) = valueOrErrorMessage(getInteger(b, r), "Integer undefine or 0 in oracle")
4040
4141
4242 func t (r) = valueOrElse(getInteger(this, r), 0)
4343
4444
4545 func u (r) = valueOrElse(getInteger(e, r), 0)
4646
4747
4848 func v (r) = valueOrElse(getBoolean(this, r), false)
4949
5050
5151 func w (x) = ("user_status_" + x)
5252
5353
5454 func y (x,z) = ((("art_date_" + z) + "_") + x)
5555
5656
5757 func A (x,z) = ((("art_name_" + z) + "_") + x)
5858
5959
6060 func B (x,z) = ((("art_desc_" + z) + "_") + x)
6161
6262
6363 func C (x,z) = ((("art_display_cid_" + z) + "_") + x)
6464
6565
6666 func D (x,z) = ((("art_maxmint_" + z) + "_") + x)
6767
6868
6969 func E (x,z) = ((("art_minprice_" + z) + "_") + x)
7070
7171
7272 func F (z) = ("art_highestBid_" + z)
7373
7474
7575 func G (H) = ("bid_" + H)
7676
7777
7878 func I (x,z) = ((("art_duration_" + z) + "_") + x)
7979
8080
81-func J (x,z) = ((("art_auctiontype_" + z) + "_") + x)
81+func J (x,z) = ((("art_endheight_" + z) + "_") + x)
8282
8383
84-func K (x,z) = ((("art_issued_" + z) + "_") + x)
84+func K (x,z) = ((("art_auctiontype_" + z) + "_") + x)
8585
8686
87-func L (M) = ("nft_issued_" + M)
87+func L (x,z) = ((("art_issued_" + z) + "_") + x)
8888
8989
90-func N (x,z) = ((("art_onsale_" + z) + "_") + x)
90+func M (N) = ("nft_issued_" + N)
9191
9292
93-func O (x,z) = ((("art_tags_" + z) + "_") + x)
93+func O (x,z) = ((("art_onsale_" + z) + "_") + x)
9494
9595
96-func P (x,z) = ((("art_type_" + z) + "_") + x)
96+func P (x,z) = ((("art_tags_" + z) + "_") + x)
9797
9898
99-func Q (x,z) = ((("art_price_" + z) + "_") + x)
99+func Q (x,z) = ((("art_type_" + z) + "_") + x)
100100
101101
102-func R (x,z) = ((("art_assetAccepted_" + z) + "_") + x)
102+func R (x,z) = ((("art_price_" + z) + "_") + x)
103103
104104
105-func S (x,T) = ((("get_hashbytxidaddr_" + T) + "_") + x)
105+func S (x,z) = ((("art_assetAccepted_" + z) + "_") + x)
106106
107107
108-func U (V) = ("get_owner_by_hash_" + V)
108+func T (x,U) = ((("get_hashbytxidaddr_" + U) + "_") + x)
109109
110110
111-func W (V,x) = ("get_txid_by_hash_owner_" + toBase58String(sha256_16Kb(toBytes((V + x)))))
111+func V (W) = ("get_owner_by_hash_" + W)
112112
113113
114-let X = s(("certification_fee_" + toBase58String(f)))
114+func X (W,x) = ("get_txid_by_hash_owner_" + toBase58String(sha256_16Kb(toBytes((W + x)))))
115115
116-func Y (Z,aa) = if ((size(Z) == 0))
116+
117+let Y = s(("certification_fee_" + toBase58String(f)))
118+
119+func Z (aa,ab) = if ((size(aa) == 0))
117120 then throw("Field cannot be is empty")
118- else if ((size(Z) > aa))
119- then throw((Z + " is too long"))
121+ else if ((size(aa) > ab))
122+ then throw((aa + " is too long"))
120123 else true
121124
122125
123-func ab (x) = {
124- let ac = valueOrElse(getString(d, w(x)), m)
125- if (if ((ac == m))
126+func ac (x) = {
127+ let ad = valueOrElse(getString(d, w(x)), m)
128+ if (if ((ad == m))
126129 then true
127- else (ac == n))
130+ else (ad == n))
128131 then "Register this account first with 'Account' tab"
129- else if ((ac == k))
132+ else if ((ad == k))
130133 then "Account suspended"
131- else if ((ac == l))
134+ else if ((ad == l))
132135 then "Account removed"
133136 else ""
134137 }
135138
136139
137-func ad (x,ae,af,ag,ah) = {
138- let ai = ab(x)
139- if ((ai != ""))
140- then throw(ai)
141- else if ((size(ae) == 0))
140+func ae (x,af,ag,ah,ai) = {
141+ let aj = ac(x)
142+ if ((aj != ""))
143+ then throw(aj)
144+ else if ((size(af) == 0))
142145 then throw("Display CID cannot be empty")
143- else if (!(Y(af, 100)))
146+ else if (!(Z(ag, 100)))
144147 then throw("100 Char. max name")
145- else if (!(Y(ag, 1000)))
148+ else if (!(Z(ah, 1000)))
146149 then throw("1000 Char. max description")
147- else if ((size(split(ah, ",")) > 5))
150+ else if ((size(split(ai, ",")) > 5))
148151 then throw("5 tags max.")
149152 else ""
150153 }
151154
152155
153-func aj (ak) = if ((size(ak.payments) == 0))
156+func ak (al) = if ((size(al.payments) == 0))
154157 then throw("No payment attached")
155158 else {
156- let al = value(ak.payments[0])
157- let am = value(al.amount)
158- $Tuple2(al, am)
159+ let am = value(al.payments[0])
160+ let an = value(am.amount)
161+ $Tuple2(am, an)
159162 }
160163
161164
162-func an (ak) = {
163- let ao = aj(ak)
164- let al = ao._1
165- let am = ao._2
166- let ap = if (if (isDefined(al.assetId))
167- then (al.assetId == f)
165+func ao (al) = {
166+ let ap = ak(al)
167+ let am = ap._1
168+ let an = ap._2
169+ let aq = if (if (isDefined(am.assetId))
170+ then (am.assetId == f)
168171 else false)
169- then al.assetId
172+ then am.assetId
170173 else throw("Only Sconex token accepted as transaction fee")
171- if ((am != X))
172- then throw(("Payment amount should be " + toString(X)))
173- else $Tuple2(am, ap)
174+ if ((an != Y))
175+ then throw(("Payment amount should be " + toString(Y)))
176+ else $Tuple2(an, aq)
174177 }
175178
176179
177-func aq (ak,ar,as) = {
178- let at = aj(ak)
179- let al = at._1
180- let am = at._2
181- let ap = if (!(isDefined(al.assetId)))
180+func ar (al,as,at) = {
181+ let au = ak(al)
182+ let am = au._1
183+ let an = au._2
184+ let aq = if (!(isDefined(am.assetId)))
182185 then throw("Wrong asset id")
183- else if (if ((size(ar) > 0))
184- then (toBase58String(value(al.assetId)) == ar)
186+ else if (if ((size(as) > 0))
187+ then (toBase58String(value(am.assetId)) == as)
185188 else false)
186- then al.assetId
189+ then am.assetId
187190 else throw("Wrong asset id")
188- if (if ((ap == unit))
189- then (ar != "")
191+ if (if ((aq == unit))
192+ then (as != "")
190193 else false)
191194 then throw("Wrong asset id")
192- else if ((as != am))
195+ else if ((at != an))
193196 then throw("Payment don't match")
194- else $Tuple2(am, ap)
197+ else $Tuple2(an, aq)
195198 }
196199
197200
198-func au (ap) = if ((ap != toBase58String(f)))
201+func av (aq) = if ((aq != toBase58String(f)))
199202 then throw("Only Sconex accepted")
200203 else true
201204
202205
203-func av (ap,aw) = {
204- let ax = if (a)
206+func aw (aq,ax) = {
207+ let ay = if (a)
205208 then 1
206- else (X * 2)
207- if (if (if ((ap == toBase58String(f)))
208- then (ax > aw)
209+ else (Y * 2)
210+ if (if (if ((aq == toBase58String(f)))
211+ then (ay > ax)
209212 else false)
210- then (aw != 0)
213+ then (ax != 0)
211214 else false)
212- then throw(("Wrong minimum sell price " + toString(ax)))
215+ then throw(("Wrong minimum sell price " + toString(ay)))
213216 else true
214217 }
215218
216219
217-func ay (ap) = if ((ap == "WAVES"))
220+func az (aq) = if ((aq == "WAVES"))
218221 then throw("Only sconex is accepted!")
219- else fromBase58String(ap)
222+ else fromBase58String(aq)
220223
221224
222-func az (aA) = {
223- let aB = q((aA + "_OPEN"))
224- if ((aB == ""))
225+func aA (aB) = {
226+ let aC = q((aB + "_OPEN"))
227+ if ((aC == ""))
225228 then throw("Bid not found")
226229 else {
227- let aC = split(aB, "_")
228- let aD = parseIntValue(aC[1])
229- let aE = ay(aC[0])
230- if ((0 >= aD))
230+ let aD = split(aC, "_")
231+ let aE = parseIntValue(aD[1])
232+ let aF = az(aD[0])
233+ if ((0 >= aE))
231234 then throw("Wrong amount")
232- else $Tuple2(aD, aE)
235+ else $Tuple2(aE, aF)
233236 }
234237 }
235238
236239
237-func aF (ak) = if (!(i))
240+func aG (al) = if (!(i))
238241 then throw(j)
239- else $Tuple3(toBase58String(ak.transactionId), toBase58String(ak.caller.bytes), lastBlock.timestamp)
242+ else $Tuple3(toBase58String(al.transactionId), toBase58String(al.caller.bytes), lastBlock.timestamp)
240243
241244
242-func aG (ak,aH,aI,H) = if (if (if ((toBase58String(ak.caller.bytes) == aH))
243- then (aI != "")
245+func aH (al,aI,aJ,H) = if (if (if ((toBase58String(al.caller.bytes) == aI))
246+ then (aJ != "")
244247 else false)
245248 then (H != "")
246249 else false)
247250 then true
248251 else false
249252
250253
251-func aJ (ak,aH,z,aK) = {
252- let aL = (toBase58String(ak.caller.bytes) == aH)
253- let aM = t("total_nft_issued")
254- let aN = q(A(aH, z))
255- if ((aN == ""))
254+func aK (al,aI,z,aL) = {
255+ let aM = (toBase58String(al.caller.bytes) == aI)
256+ let aN = t("total_nft_issued")
257+ let aO = q(A(aI, z))
258+ if ((aO == ""))
256259 then throw("Art doesn't exist")
257260 else {
258- let aO = v(N(aH, z))
259- let aP = t(K(aH, z))
260- let as = if (aL)
261- then (X * 2)
262- else t(Q(aH, z))
263- let ar = if (aL)
261+ let aP = v(O(aI, z))
262+ let aQ = t(L(aI, z))
263+ let at = if (aM)
264+ then (Y * 2)
265+ else t(R(aI, z))
266+ let as = if (aM)
264267 then toBase58String(f)
265- else q(R(aH, z))
266- let aQ = t(D(aH, z))
267- if (if (if (!(aK))
268- then !(aL)
268+ else q(S(aI, z))
269+ let aR = t(D(aI, z))
270+ if (if (if (!(aL))
271+ then !(aM)
269272 else false)
270- then if (if ((0 >= as))
273+ then if (if ((0 >= at))
271274 then true
272- else !(aO))
275+ else !(aP))
273276 then true
274- else (0 >= aQ)
277+ else (0 >= aR)
275278 else false)
276279 then throw("Art not for sale")
277- else if (if (if (!(aK))
278- then aL
280+ else if (if (if (!(aL))
281+ then aM
279282 else false)
280- then (0 >= aQ)
283+ then (0 >= aR)
281284 else false)
282285 then throw("Max issuable not set")
283- else $Tuple7(aM, aN, aP, as, ar, aQ, aO)
286+ else $Tuple7(aN, aO, aQ, at, as, aR, aP)
284287 }
285288 }
286289
287290
288-func aR (ak,x,aH,z,aI,H,ar,as,aK) = {
289- let ai = ab(aH)
290- if (if (aK)
291- then (ai != "")
291+func aS (al,x,aI,z,aJ,H,as,at,aL) = {
292+ let aj = ac(aI)
293+ if (if (aL)
294+ then (aj != "")
292295 else false)
293- then throw(ai)
296+ then throw(aj)
294297 else {
295- let aA = ((((((("bid_" + z) + "_") + aH) + "_") + aI) + "_") + H)
296- let aS = if (aK)
297- then az(aA)
298- else aq(ak, ar, as)
299- let am = aS._1
300- let ap = aS._2
301- $Tuple3(aA, am, ap)
298+ let aB = ((((((("bid_" + z) + "_") + aI) + "_") + aJ) + "_") + H)
299+ let aT = if (aL)
300+ then aA(aB)
301+ else ar(al, as, at)
302+ let an = aT._1
303+ let aq = aT._2
304+ $Tuple3(aB, an, aq)
302305 }
303306 }
304307
305308
306-func aT (aH,ap,am,aP,aQ) = {
307- let aU = u(aH)
308- let aV = if ((aU > height))
309+func aU (aI,aq,an,aQ,aR) = {
310+ let aV = u(aI)
311+ let aW = if ((aV > height))
309312 then 0
310- else if ((ap == f))
313+ else if ((aq == f))
311314 then h
312315 else throw("Only Sconex is accepted!")
313- let aW = fraction(am, aV, 1000)
314- let aX = (am - aW)
315- if ((aP == aQ))
316+ let aX = fraction(an, aW, 1000)
317+ let aY = (an - aX)
318+ if ((aQ == aR))
316319 then throw("Art sold out")
317320 else {
318- let aY = (aP + 1)
319- $Tuple3(aW, aX, aY)
321+ let aZ = (aQ + 1)
322+ $Tuple3(aX, aY, aZ)
320323 }
321324 }
322325
323326
324-func aZ (aH,z,aN,aY,aQ,aM,x,aI,H,ak,aO) = {
325- let ba = ((((((((("Creator: " + aH) + ",ArtID: ") + z) + ",Artwork name: ") + aN) + ",Issue: ") + toString(aY)) + "/") + toString(aQ))
326- let bb = Issue(("SCONEX_" + toString((aM + 1))), ba, 1, 0, false)
327- let bc = calculateAssetId(bb)
328- let bd = if (if ((aY == aQ))
327+func ba (aI,z,aO,aZ,aR,aN,x,aJ,H,al,aP) = {
328+ let bb = ((((((((("Creator: " + aI) + ",ArtID: ") + z) + ",Artwork name: ") + aO) + ",Issue: ") + toString(aZ)) + "/") + toString(aR))
329+ let bc = Issue(("SCONEX_" + toString((aN + 1))), bb, 1, 0, false)
330+ let bd = calculateAssetId(bc)
331+ let be = if (if ((aZ == aR))
329332 then true
330- else !(aO))
333+ else !(aP))
331334 then false
332335 else true
333- let be = if (if (if ((x == aH))
334- then (aI != "")
336+ let bf = if (if (if ((x == aI))
337+ then (aJ != "")
335338 else false)
336339 then (H != "")
337340 else false)
338- then addressFromStringValue(aI)
339- else ak.caller
340- $Tuple4(bb, bc, bd, be)
341+ then addressFromStringValue(aJ)
342+ else al.caller
343+ $Tuple4(bc, bd, be, bf)
341344 }
342345
343346
344-func bf (ap,aA,bg) = {
345- let bh = if (!(isDefined(ap)))
347+func bg (aq,aB,bh) = {
348+ let bi = if (!(isDefined(aq)))
346349 then throw("Only sconex is accepted")
347- else toBase58String(value(ap))
348- let aB = q((aA + "_OPEN"))
349- let bi = DeleteEntry((aA + "_OPEN"))
350- let bj = StringEntry((aA + "_CLOSED"), ((aB + "_") + toString(bg)))
351- $Tuple3(bh, bi, bj)
350+ else toBase58String(value(aq))
351+ let aC = q((aB + "_OPEN"))
352+ let bj = DeleteEntry((aB + "_OPEN"))
353+ let bk = StringEntry((aB + "_CLOSED"), ((aC + "_") + toString(bh)))
354+ $Tuple3(bi, bj, bk)
352355 }
353356
354357
355-func bk (ak,z,aH,H,aI) = {
356- let bl = aF(ak)
357- let bm = bl._1
358- let x = bl._2
359- let bg = bl._3
360- let aK = aG(ak, aH, aI, H)
361- let bn = aJ(ak, aH, z, aK)
362- let aM = bn._1
363- let aN = bn._2
364- let aP = bn._3
365- let as = bn._4
366- let ar = bn._5
367- let aQ = bn._6
368- let aO = bn._7
369- let bo = aR(ak, x, aH, z, aI, H, ar, as, aK)
370- let aA = bo._1
371- let am = bo._2
372- let ap = bo._3
373- let bp = aT(aH, value(ap), am, aP, aQ)
374- let aW = bp._1
375- let aX = bp._2
376- let aY = bp._3
377- let bq = aZ(aH, z, aN, aY, aQ, aM, x, aI, H, ak, aO)
378- let bb = bq._1
379- let bc = bq._2
380- let bd = bq._3
381- let be = bq._4
382- let br = bf(ap, aA, bg)
383- let bh = br._1
384- let bi = br._2
385- let bj = br._3
386- let bs = ((((((("art_sold_" + toString(aY)) + "_of_") + toString(aQ)) + "_") + z) + "_") + aH)
387- let bt = if (!(aK))
388- then ((((((((((x + "_") + toString(bg)) + "_") + bm) + "_") + toString(as)) + "_") + ar) + "_") + toBase58String(bc))
389- else ((((((((((toString(be) + "_") + toString(bg)) + "_") + bm) + "_") + toString(am)) + "_") + bh) + "_") + toBase58String(bc))
390- let bu = StringEntry(bs, bt)
391- let bv = [IntegerEntry(K(aH, z), aY), StringEntry(("nft_" + toBase58String(bc)), bs), IntegerEntry("total_nft_issued", (aM + 1)), BooleanEntry(N(aH, z), bd), bb, ScriptTransfer(Address(fromBase58String(aH)), aX, ap), ScriptTransfer(Address(fromBase58String(c)), aW, ap), ScriptTransfer(be, 1, bc), StringEntry(L(toBase58String(bc)), aH)]
392- if (aK)
393- then (((bv :+ bu) :+ bj) :+ bi)
394- else bu :: bv
358+func bl (al,z,aI,H,aJ) = {
359+ let bm = aG(al)
360+ let bn = bm._1
361+ let x = bm._2
362+ let bh = bm._3
363+ let aL = aH(al, aI, aJ, H)
364+ let bo = aK(al, aI, z, aL)
365+ let aN = bo._1
366+ let aO = bo._2
367+ let aQ = bo._3
368+ let at = bo._4
369+ let as = bo._5
370+ let aR = bo._6
371+ let aP = bo._7
372+ let bp = aS(al, x, aI, z, aJ, H, as, at, aL)
373+ let aB = bp._1
374+ let an = bp._2
375+ let aq = bp._3
376+ let bq = aU(aI, value(aq), an, aQ, aR)
377+ let aX = bq._1
378+ let aY = bq._2
379+ let aZ = bq._3
380+ let br = ba(aI, z, aO, aZ, aR, aN, x, aJ, H, al, aP)
381+ let bc = br._1
382+ let bd = br._2
383+ let be = br._3
384+ let bf = br._4
385+ let bs = bg(aq, aB, bh)
386+ let bi = bs._1
387+ let bj = bs._2
388+ let bk = bs._3
389+ let bt = ((((((("art_sold_" + toString(aZ)) + "_of_") + toString(aR)) + "_") + z) + "_") + aI)
390+ let bu = if (!(aL))
391+ then ((((((((((x + "_") + toString(bh)) + "_") + bn) + "_") + toString(at)) + "_") + as) + "_") + toBase58String(bd))
392+ else ((((((((((toString(bf) + "_") + toString(bh)) + "_") + bn) + "_") + toString(an)) + "_") + bi) + "_") + toBase58String(bd))
393+ let bv = StringEntry(bt, bu)
394+ let bw = [IntegerEntry(L(aI, z), aZ), StringEntry(("nft_" + toBase58String(bd)), bt), IntegerEntry("total_nft_issued", (aN + 1)), BooleanEntry(O(aI, z), be), bc, ScriptTransfer(Address(fromBase58String(aI)), aY, aq), ScriptTransfer(Address(fromBase58String(c)), aX, aq), ScriptTransfer(bf, 1, bd), StringEntry(M(toBase58String(bd)), aI)]
395+ if (aL)
396+ then (((bw :+ bv) :+ bk) :+ bj)
397+ else bv :: bw
395398 }
396399
397400
398-func bw (ak,z,aH) = {
399- let bx = aF(ak)
400- let bm = bx._1
401- let x = bx._2
402- let bg = bx._3
403- let by = aj(ak)
404- let al = by._1
405- let am = by._2
406- let ap = if (!(isDefined(al.assetId)))
401+func bx (al,z,aI) = {
402+ let by = aG(al)
403+ let bn = by._1
404+ let x = by._2
405+ let bh = by._3
406+ let bz = ak(al)
407+ let am = bz._1
408+ let an = bz._2
409+ let aq = if (!(isDefined(am.assetId)))
407410 then throw("Only sconex is accepted!")
408- else toBase58String(value(al.assetId))
409- let bz = t(("current_bidamount_" + z))
410- if (!(au(ap)))
411+ else toBase58String(value(am.assetId))
412+ let bA = t(("current_bidamount_" + z))
413+ if (!(av(aq)))
411414 then throw("asset not accepted")
412- else if (!(av(ap, am)))
415+ else if (!(aw(aq, an)))
413416 then throw("Wrong min sell")
414417 else {
415- let aP = t(K(aH, z))
416- let aQ = t(D(aH, z))
417- if ((0 >= aQ))
418+ let aQ = t(L(aI, z))
419+ let aR = t(D(aI, z))
420+ if ((0 >= aR))
418421 then throw("No max edition set for this artwork")
419- else if ((aP >= aQ))
422+ else if ((aQ >= aR))
420423 then throw("Sold out, you cannot bid")
421- else [StringEntry((((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + bm) + "_OPEN"), ((((ap + "_") + toString(am)) + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz + 1))]
424+ else [StringEntry((((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + bn) + "_OPEN"), ((((aq + "_") + toString(an)) + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA + 1))]
422425 }
423426 }
424427
425428
426-func bA (ak,z,aH) = {
427- let bB = t(I(aH, z))
428- let bC = t(F(z))
429- if ((height > bB))
429+func bB (al,z,aI) = {
430+ let bC = t(J(aI, z))
431+ let bD = t(F(z))
432+ if ((height > bC))
430433 then throw("This auction is finished already!")
431434 else {
432- let bD = aF(ak)
433- let bm = bD._1
434- let x = bD._2
435- let bg = bD._3
436- let bE = aj(ak)
437- let al = bE._1
438- let am = bE._2
439- if ((bC >= am))
440- then throw(("Please place a bid higher then: " + toString(bC)))
435+ let bE = aG(al)
436+ let bn = bE._1
437+ let x = bE._2
438+ let bh = bE._3
439+ let bF = ak(al)
440+ let am = bF._1
441+ let an = bF._2
442+ if ((bD >= an))
443+ then throw(("Please place a bid higher then: " + toString(bD)))
441444 else {
442- let ap = if (!(isDefined(al.assetId)))
445+ let aq = if (!(isDefined(am.assetId)))
443446 then throw("Only sconex is accepted!")
444- else toBase58String(value(al.assetId))
445- let bz = t(("current_bidamount_" + z))
446- if (!(au(ap)))
447+ else toBase58String(value(am.assetId))
448+ let bA = t(("current_bidamount_" + z))
449+ if (!(av(aq)))
447450 then throw("asset not accepted")
448- else if (!(av(ap, am)))
451+ else if (!(aw(aq, an)))
449452 then throw("Wrong min sell")
450453 else {
451- let aP = t(K(aH, z))
452- let aQ = t(D(aH, z))
453- if ((0 >= aQ))
454+ let aQ = t(L(aI, z))
455+ let aR = t(D(aI, z))
456+ if ((0 >= aR))
454457 then throw("No max edition set for this artwork")
455- else if ((aP >= aQ))
458+ else if ((aQ >= aR))
456459 then throw("Sold out, you cannot bid")
457- else [StringEntry((((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + bm) + "_OPEN"), ((((ap + "_") + toString(am)) + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz + 1)), IntegerEntry(F(z), am), IntegerEntry(G(toBase58String(ak.transactionId)), am)]
460+ else [StringEntry((((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + bn) + "_OPEN"), ((((aq + "_") + toString(an)) + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA + 1)), IntegerEntry(F(z), an), IntegerEntry(G(toBase58String(al.transactionId)), an)]
458461 }
459462 }
460463 }
461464 }
462465
463466
464-func bF (ak,z,aH,H,aI) = {
465- let x = toBase58String(ak.caller.bytes)
466- if ((x != aH))
467+func bG (al,z,aI,H,aJ) = {
468+ let x = toBase58String(al.caller.bytes)
469+ if ((x != aI))
467470 then throw("You cannot do this action")
468- else bk(ak, z, aH, H, aI)
471+ else bl(al, z, aI, H, aJ)
469472 }
470473
471474
472-func bG (ak,z,aH,H,aI) = {
473- let bB = t(I(aH, z))
474- let bC = t(F(z))
475- let bH = t(G(H))
476- if ((height > bB))
477- then if ((bH == bC))
478- then bk(ak, z, aH, H, aI)
475+func bH (z,aI) = {
476+ let aQ = t(L(aI, z))
477+ let aR = t(D(aI, z))
478+ let bI = t(J(aI, z))
479+ let bJ = t(I(aI, z))
480+ let bC = (bJ + height)
481+ if ((height > bI))
482+ then if ((aQ == aR))
483+ then throw("Can't restart auction, max amount sold")
484+ else [IntegerEntry(F(z), 0), IntegerEntry(I(aI, z), bJ), IntegerEntry(J(aI, z), bC)]
485+ else throw("Previous auction isn't completed yet")
486+ }
487+
488+
489+func bK (al,z,aI,H,aJ) = {
490+ let bC = t(J(aI, z))
491+ let bD = t(F(z))
492+ let bL = t(G(H))
493+ if ((height > bC))
494+ then if ((bL == bD))
495+ then {
496+ let bM = bl(al, z, aI, H, aJ)
497+ let bN = bH(z, aI)
498+ (bN ++ bM)
499+ }
479500 else throw("This is not the winning bid!")
480501 else throw("This auction is not yet finished!")
481502 }
482503
483504
484-func bI (ak,z,aH,H) = {
485- let bJ = aF(ak)
486- let bm = bJ._1
487- let x = bJ._2
488- let bg = bJ._3
489- let bz = t(("current_bidamount_" + z))
490- let aA = ((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + H)
491- let aB = q((aA + "_OPEN"))
492- if ((aB == ""))
505+func bO (al,z,aI,H) = {
506+ let bP = aG(al)
507+ let bn = bP._1
508+ let x = bP._2
509+ let bh = bP._3
510+ let bA = t(("current_bidamount_" + z))
511+ let aB = ((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + H)
512+ let aC = q((aB + "_OPEN"))
513+ if ((aC == ""))
493514 then throw("Bid not found")
494515 else {
495- let aC = split(aB, "_")
496- let ap = ay(aC[0])
497- let bK = "CANCELED"
498-[DeleteEntry((aA + "_OPEN")), StringEntry(((aA + "_") + bK), ((aB + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz - 1)), ScriptTransfer(Address(fromBase58String(x)), parseIntValue(aC[1]), ap)]
516+ let aD = split(aC, "_")
517+ let aq = az(aD[0])
518+ let bQ = "CANCELED"
519+[DeleteEntry((aB + "_OPEN")), StringEntry(((aB + "_") + bQ), ((aC + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA - 1)), ScriptTransfer(Address(fromBase58String(x)), parseIntValue(aD[1]), aq)]
499520 }
500521 }
501522
502523
503-func bL (ak,z,aH,H) = {
504- let bJ = aF(ak)
505- let bm = bJ._1
506- let x = bJ._2
507- let bg = bJ._3
508- let bz = t(("current_bidamount_" + z))
509- let aA = ((((((("bid_" + z) + "_") + aH) + "_") + x) + "_") + H)
510- let aB = q((aA + "_OPEN"))
511- if ((aB == ""))
524+func bR (al,z,aI,H) = {
525+ let bP = aG(al)
526+ let bn = bP._1
527+ let x = bP._2
528+ let bh = bP._3
529+ let bA = t(("current_bidamount_" + z))
530+ let aB = ((((((("bid_" + z) + "_") + aI) + "_") + x) + "_") + H)
531+ let aC = q((aB + "_OPEN"))
532+ if ((aC == ""))
512533 then throw("Bid not found")
513534 else {
514- let aC = split(aB, "_")
515- let ap = ay(aC[0])
516- let bK = "CANCELED"
517- let aD = parseIntValue(aC[1])
518- let bC = t(F(z))
519- if ((aD == bC))
535+ let aD = split(aC, "_")
536+ let aq = az(aD[0])
537+ let bQ = "CANCELED"
538+ let aE = parseIntValue(aD[1])
539+ let bD = t(F(z))
540+ if ((aE == bD))
520541 then throw("You can't cancel the highest bid!")
521- else [DeleteEntry((aA + "_OPEN")), StringEntry(((aA + "_") + bK), ((aB + "_") + toString(bg))), IntegerEntry(("current_bidamount_" + z), (bz - 1)), ScriptTransfer(Address(fromBase58String(x)), aD, ap)]
542+ else [DeleteEntry((aB + "_OPEN")), StringEntry(((aB + "_") + bQ), ((aC + "_") + toString(bh))), IntegerEntry(("current_bidamount_" + z), (bA - 1)), ScriptTransfer(Address(fromBase58String(x)), aE, aq)]
522543 }
523544 }
524545
525546
526-@Callable(ak)
527-func addArtwork (V,af,ag,ah,bM,ae) = {
528- let bN = aF(ak)
529- let z = bN._1
530- let x = bN._2
531- let bg = bN._3
532- let bO = ad(x, ae, af, ag, ah)
533- if ((bO != ""))
547+@Callable(al)
548+func addArtwork (W,ag,ah,ai,bS,af) = {
549+ let bT = aG(al)
550+ let z = bT._1
551+ let x = bT._2
552+ let bh = bT._3
553+ let bU = ae(x, af, ag, ah, ai)
554+ if ((bU != ""))
534555 then throw("Something went wrong!")
535556 else {
536- let bP = an(ak)
537- let am = bP._1
538- let ap = bP._2
539- if (!(isDefined(am)))
557+ let bV = ao(al)
558+ let an = bV._1
559+ let aq = bV._2
560+ if (!(isDefined(an)))
540561 then throw("Something went wrong")
541562 else {
542- let bQ = q(W(V, x))
543- if ((bQ != ""))
563+ let bW = q(X(W, x))
564+ if ((bW != ""))
544565 then throw("You already added it")
545566 else {
546- let bR = q(U(V))
547- if ((bR != ""))
567+ let bX = q(V(W))
568+ if ((bX != ""))
548569 then throw("Hash already registered")
549- else [StringEntry(U(V), x), StringEntry(W(V, x), z), IntegerEntry(y(x, z), bg), StringEntry(A(x, z), af), StringEntry(B(x, z), ag), StringEntry(C(x, z), ae), StringEntry(P(x, z), bM), StringEntry(O(x, z), ah), IntegerEntry(D(x, z), 0), IntegerEntry(K(x, z), 0), BooleanEntry(N(x, z), false), StringEntry(S(x, z), V), ScriptTransfer(Address(fromBase58String(c)), am, ap)]
570+ else [StringEntry(V(W), x), StringEntry(X(W, x), z), IntegerEntry(y(x, z), bh), StringEntry(A(x, z), ag), StringEntry(B(x, z), ah), StringEntry(C(x, z), af), StringEntry(Q(x, z), bS), StringEntry(P(x, z), ai), IntegerEntry(D(x, z), 0), IntegerEntry(L(x, z), 0), BooleanEntry(O(x, z), false), StringEntry(T(x, z), W), ScriptTransfer(Address(fromBase58String(c)), an, aq)]
550571 }
551572 }
552573 }
553574 }
554575
555576
556577
557-@Callable(ak)
558-func sellArtwork (z,aw,bS,ap,bT,bU,bV) = {
559- let bW = aF(ak)
560- let bm = bW._1
561- let x = bW._2
562- let aN = q(A(x, z))
563- if (!(containsElement([o, p], bT)))
578+@Callable(al)
579+func sellArtwork (z,ax,bY,aq,bZ,ca,bJ) = {
580+ let cb = aG(al)
581+ let bn = cb._1
582+ let x = cb._2
583+ let aO = q(A(x, z))
584+ if (!(containsElement([o, p], bZ)))
564585 then throw("We dont know this auction type")
565- else if ((aN == ""))
586+ else if ((aO == ""))
566587 then throw("This art doesn't match your account")
567588 else {
568- let bz = t(("current_bidamount_" + z))
569- if (!(au(ap)))
589+ let bA = t(("current_bidamount_" + z))
590+ if (!(av(aq)))
570591 then throw("Something went wrong!")
571- else if (!(av(ap, aw)))
592+ else if (!(aw(aq, ax)))
572593 then throw("Something went wrong!")
573594 else {
574- let ai = ab(x)
575- if ((ai != ""))
576- then throw(ai)
595+ let aj = ac(x)
596+ if ((aj != ""))
597+ then throw(aj)
577598 else {
578- let aP = t(K(x, z))
579- let aQ = t(D(x, z))
580- if ((bS > 10))
599+ let aQ = t(L(x, z))
600+ let aR = t(D(x, z))
601+ if ((bY > 10))
581602 then throw("10 editions max per artwork")
582- else if (if ((aP != 0))
583- then (aP == aQ)
603+ else if (if ((aQ != 0))
604+ then (aQ == aR)
584605 else false)
585606 then throw("Max edition reached.")
586- else if (if ((aP > 0))
587- then (aQ != bS)
607+ else if (if ((aQ > 0))
608+ then (aR != bY)
588609 else false)
589610 then throw("Cannot change maximum issuable anymore")
590- else if (if ((bz > 0))
591- then (aQ != bS)
611+ else if (if ((bA > 0))
612+ then (aR != bY)
592613 else false)
593614 then throw("Cannot change maximum issuable with active orders")
594615 else {
595- let bd = if (if ((aw > 0))
596- then (bS > 0)
616+ let be = if (if ((ax > 0))
617+ then (bY > 0)
597618 else false)
598619 then true
599620 else false
600- let bB = (bV + height)
601-[BooleanEntry(N(x, z), bd), IntegerEntry(Q(x, z), aw), IntegerEntry(D(x, z), bS), IntegerEntry(E(x, z), bU), IntegerEntry(I(x, z), bB), StringEntry(R(x, z), ap), StringEntry(J(x, z), bT), IntegerEntry(F(z), 0)]
621+ let bC = (bJ + height)
622+[BooleanEntry(O(x, z), be), IntegerEntry(R(x, z), ax), IntegerEntry(D(x, z), bY), IntegerEntry(E(x, z), ca), IntegerEntry(I(x, z), bJ), IntegerEntry(J(x, z), bC), StringEntry(S(x, z), aq), StringEntry(K(x, z), bZ), IntegerEntry(F(z), 0)]
602623 }
603624 }
604625 }
605626 }
606627 }
607628
608629
609630
610-@Callable(ak)
611-func buyArtwork (z,aH) = bk(ak, z, aH, "", "")
631+@Callable(al)
632+func buyArtwork (z,aI) = bl(al, z, aI, "", "")
612633
613634
614635
615-@Callable(ak)
616-func deleteEntry (bX) = {
617- let x = toString(addressFromPublicKey(ak.callerPublicKey))
636+@Callable(al)
637+func deleteEntry (cc) = {
638+ let x = toString(addressFromPublicKey(al.callerPublicKey))
618639 if ((x == g))
619- then [DeleteEntry(bX)]
640+ then [DeleteEntry(cc)]
620641 else throw("no")
621642 }
622643
623644
624645
625-@Callable(ak)
626-func setBid (z,aH) = {
627- let bT = q(J(aH, z))
628- if ((bT == o))
629- then bw(ak, z, aH)
630- else if ((bT == p))
631- then bA(ak, z, aH)
632- else throw((("Unknown auction type :" + bT) + ", please contact the admins"))
646+@Callable(al)
647+func setBid (z,aI) = {
648+ let bZ = q(K(aI, z))
649+ if ((bZ == o))
650+ then bx(al, z, aI)
651+ else if ((bZ == p))
652+ then bB(al, z, aI)
653+ else throw((("Unknown auction type :" + bZ) + ", please contact the admins"))
633654 }
634655
635656
636657
637-@Callable(ak)
638-func acceptBid (z,aH,H,aI) = {
639- let bT = q(J(aH, z))
640- if ((bT == o))
641- then bF(ak, z, aH, H, aI)
642- else if ((bT == p))
643- then bG(ak, z, aH, H, aI)
644- else throw((("Unknown auction type :" + bT) + ", please contact the admins"))
658+@Callable(al)
659+func acceptBid (z,aI,H,aJ) = {
660+ let bZ = q(K(aI, z))
661+ if ((bZ == o))
662+ then bG(al, z, aI, H, aJ)
663+ else if ((bZ == p))
664+ then bK(al, z, aI, H, aJ)
665+ else throw((("Unknown auction type :" + bZ) + ", please contact the admins"))
645666 }
646667
647668
648669
649-@Callable(ak)
650-func cancelBid (z,aH,H) = {
651- let bT = q(J(aH, z))
652- if ((bT == o))
653- then bI(ak, z, aH, H)
654- else bL(ak, z, aH, H)
670+@Callable(al)
671+func cancelBid (z,aI,H) = {
672+ let bZ = q(K(aI, z))
673+ if ((bZ == o))
674+ then bO(al, z, aI, H)
675+ else bR(al, z, aI, H)
655676 }
656677
657678

github/deemru/w8io/169f3d6 
249.67 ms