tx · 5MV4P83BuhnrM2PGAZ4nqZJN8UEBoeMTqo6CmSsUQUnG

3N4Cinou7W65jPtxbCQfkWvoufpE7EtDxEi:  -0.01000000 Waves

2022.03.02 09:33 [1946001] smart account 3N4Cinou7W65jPtxbCQfkWvoufpE7EtDxEi > SELF 0.00000000 Waves

{ "type": 13, "id": "5MV4P83BuhnrM2PGAZ4nqZJN8UEBoeMTqo6CmSsUQUnG", "fee": 1000000, "feeAssetId": null, "timestamp": 1646202835889, "version": 2, "chainId": 84, "sender": "3N4Cinou7W65jPtxbCQfkWvoufpE7EtDxEi", "senderPublicKey": "9LwVd54LSaLqmYkBabSayYmCmRWHb32zKseLNJeKhaLD", "proofs": [ "2mMaYQHUETJsudqG2xxkGaEQBsDPf1vwQd5MNbs6rrBMuX4xypY3Hcw1sgPoBdRFKXA6kjKszRGTXLVqZ2FoimES" ], "script": "base64:AAIEAAAAAAAAAAYIAhIAEgAAAAAAAAAAAgAAAAFpAQAAAAdhZGRQb29sAAAAAAUAAAADbmlsAAAAAWkBAAAAC2FkZFBvb2xUZXN0AAAAAAUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAF0ludm9rZVNjcmlwdFRyYW5zYWN0aW9uBAAAAAZpbnZva2UFAAAAByRtYXRjaDAEAAAADGlzU2VsZkludm9rZQMJAAAAAAAAAggFAAAABmludm9rZQAAAARkQXBwBQAAAAR0aGlzCQEAAAAPY29udGFpbnNFbGVtZW50AAAAAgkABEwAAAACAgAAAAdhZGRQb29sCQAETAAAAAICAAAACnJlbmFtZVBvb2wFAAAAA25pbAgFAAAABmludm9rZQAAAAhmdW5jdGlvbgcDCQAAAAAAAAIJAAGQAAAAAQgFAAAABmludm9rZQAAAAhwYXltZW50cwAAAAAAAAAAAAUAAAAMaXNTZWxmSW52b2tlBwMDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABU9yZGVyBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAPRGF0YVRyYW5zYWN0aW9uBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAVU3BvbnNvckZlZVRyYW5zYWN0aW9uBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAUU2V0U2NyaXB0VHJhbnNhY3Rpb24GAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABZDcmVhdGVBbGlhc1RyYW5zYWN0aW9uBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAWTGVhc2VDYW5jZWxUcmFuc2FjdGlvbgYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAEExlYXNlVHJhbnNhY3Rpb24GAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABBJc3N1ZVRyYW5zYWN0aW9uBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAaVXBkYXRlQXNzZXRJbmZvVHJhbnNhY3Rpb24GAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABdJbnZva2VTY3JpcHRUcmFuc2FjdGlvbgYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAGVNldEFzc2V0U2NyaXB0VHJhbnNhY3Rpb24GAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNUcmFuc2ZlclRyYW5zYWN0aW9uBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAATRXhjaGFuZ2VUcmFuc2FjdGlvbgYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAF01hc3NUcmFuc2ZlclRyYW5zYWN0aW9uBgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAPQnVyblRyYW5zYWN0aW9uBgkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABJSZWlzc3VlVHJhbnNhY3Rpb24EAAAAA3R0eAUAAAAHJG1hdGNoMAkAAfQAAAADCAUAAAADdHR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAADdHR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAA3R0eAAAAA9zZW5kZXJQdWJsaWNLZXkJAAACAAAAAQIAAAALTWF0Y2ggZXJyb3LThTI7", "height": 1946001, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6uBys4rvihK3X8h8YPUEAVKdF37Fnd67RtH5NgmhCieW Next: Fu3PkFrfwFbBqNhzma4aSAi5M2ggJn6Rbx9xEUoRRJyx Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let a = "pools"
5-
6-let b = "pool_"
7-
8-let c = "index_"
9-
10-let d = {
11- let e = getString(this, a)
12- if ($isInstanceOf(e, "String"))
13- then {
14- let f = e
15- split(f, ",")
16- }
17- else {
18- let g = e
19- nil
20- }
21- }
22-
23-func h (i) = if ((i.caller == this))
24- then unit
25- else unit
264
275
28-func j (k) = {
29- let l = valueOrElse(indexOf(k, "_"), -1)
30- let m = valueOrElse(lastIndexOf(k, "_"), -1)
31- let n = if (if ((l == m))
32- then (l > 0)
33- else false)
34- then (l != (size(k) - 1))
35- else false
36- if (n)
37- then k
38- else throw("Pool name must consist of two asset names separated by an underscore character")
39- }
6+@Callable(a)
7+func addPool () = nil
408
419
42-func o (p) = toString(valueOrErrorMessage(addressFromString(p), (("Can't parse \"" + p) + "\" as address")))
10+
11+@Callable(a)
12+func addPoolTest () = nil
4313
4414
45-@Callable(i)
46-func addPool (q,k) = valueOrElse(h(i), {
47- let r = o(q)
48- let s = (b + r)
49- let t = (c + r)
50- let u = getString(this, s)
51- if (isDefined(u))
52- then throw((((("Pool with address \"" + r) + "\" is already defined with name \"") + value(u)) + "\""))
53- else [IntegerEntry(t, size(d)), StringEntry(s, j(k)), StringEntry(a, makeString((d :+ r), ","))]
54- })
55-
15+@Verifier(b)
16+func c () = {
17+ let d = b
18+ if ($isInstanceOf(d, "InvokeScriptTransaction"))
19+ then {
20+ let e = d
21+ let f = if ((e.dApp == this))
22+ then containsElement(["addPool", "renamePool"], e.function)
23+ else false
24+ if ((size(e.payments) == 0))
25+ then f
26+ else false
27+ }
28+ else if (if ($isInstanceOf(d, "Order"))
29+ then true
30+ else if ($isInstanceOf(d, "DataTransaction"))
31+ then true
32+ else if ($isInstanceOf(d, "SponsorFeeTransaction"))
33+ then true
34+ else if ($isInstanceOf(d, "SetScriptTransaction"))
35+ then true
36+ else if ($isInstanceOf(d, "CreateAliasTransaction"))
37+ then true
38+ else if ($isInstanceOf(d, "LeaseCancelTransaction"))
39+ then true
40+ else if ($isInstanceOf(d, "LeaseTransaction"))
41+ then true
42+ else if ($isInstanceOf(d, "IssueTransaction"))
43+ then true
44+ else if ($isInstanceOf(d, "UpdateAssetInfoTransaction"))
45+ then true
46+ else if ($isInstanceOf(d, "InvokeScriptTransaction"))
47+ then true
48+ else if ($isInstanceOf(d, "SetAssetScriptTransaction"))
49+ then true
50+ else if ($isInstanceOf(d, "TransferTransaction"))
51+ then true
52+ else if ($isInstanceOf(d, "ExchangeTransaction"))
53+ then true
54+ else if ($isInstanceOf(d, "MassTransferTransaction"))
55+ then true
56+ else if ($isInstanceOf(d, "BurnTransaction"))
57+ then true
58+ else $isInstanceOf(d, "ReissueTransaction"))
59+ then {
60+ let g = d
61+ sigVerify(g.bodyBytes, g.proofs[0], g.senderPublicKey)
62+ }
63+ else throw("Match error")
64+ }
5665

github/deemru/w8io/c3f4982 
20.14 ms