tx · 3J6wnzqh1oy2RvppZ7kfzw6hFAy1dZA3JNxvdPCThgpy

3PPrfNMnk8z8QhZcqMyJk69mF65s2Rbz3B6:  -0.05000000 Waves

2022.09.09 18:26 [3287265] smart account 3PPrfNMnk8z8QhZcqMyJk69mF65s2Rbz3B6 > SELF 0.00000000 Waves

{ "type": 13, "id": "3J6wnzqh1oy2RvppZ7kfzw6hFAy1dZA3JNxvdPCThgpy", "fee": 5000000, "feeAssetId": null, "timestamp": 1662737260629, "version": 2, "chainId": 87, "sender": "3PPrfNMnk8z8QhZcqMyJk69mF65s2Rbz3B6", "senderPublicKey": "B4i4ZwaBsuGDVZsPTgZK6PeupVp2cfDy3PCug1QUxrZC", "proofs": [ "4x8k6q2VSKSbGrav1BZmBusWBtiBCvc2AKYRhxhBfE7s2aPXKwXdorM4ei4MNuZxW5ys14k8hwuFcJYsesPXTWWu" ], "script": "base64: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AAAAB19zdGF0dXMEAAAAC29yZGVyQXNzZXQwCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQiAAAAAQkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAAHX3Rva2VuMAIAAAASQ2Fubm90IGZpbmQgdG9rZW4wBAAAAAxvcmRlckFtb3VudDAJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB8AAAABCQABLAAAAAIJAAEsAAAAAgIAAAAGb3JkZXJfBQAAAAdvcmRlcklkAgAAAAhfYW1vdW50MAIAAAATQ2Fubm90IGZpbmQgYW1vdW50MAQAAAAPb3JkZXJGdWxmaWxsZWQwCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQfAAAAAQkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAALX2Z1bGZpbGxlZDACAAAAFkNhbm5vdCBmaW5kIGZ1bGZpbGxlZDAEAAAAEG9yZGVyQW1vdW50MExlZnQJAABlAAAAAgUAAAAMb3JkZXJBbW91bnQwBQAAAA9vcmRlckZ1bGZpbGxlZDAEAAAAC29yZGVyQXNzZXQxCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQiAAAAAQkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAAHX3Rva2VuMQIAAAASQ2Fubm90IGZpbmQgdG9rZW4xBAAAAAxvcmRlckFtb3VudDEJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB8AAAABCQABLAAAAAIJAAEsAAAAAgIAAAAGb3JkZXJfBQAAAAdvcmRlcklkAgAAAAhfYW1vdW50MQIAAAATQ2Fubm90IGZpbmQgYW1vdW50MQQAAAAPb3JkZXJGdWxmaWxsZWQxCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQfAAAAAQkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAALX2Z1bGZpbGxlZDECAAAAFkNhbm5vdCBmaW5kIGZ1bGZpbGxlZDEEAAAAEG9yZGVyQW1vdW50MUxlZnQJAABlAAAAAgUAAAAMb3JkZXJBbW91bnQxBQAAAA9vcmRlckZ1bGZpbGxlZDEDCQEAAAACIT0AAAACBQAAAAtvcmRlclN0YXR1cwIAAAAGYWN0aXZlCQAAAgAAAAECAAAAIE9yZGVyIGFscmVhZHkgY2xvc2VkIG9yIGNhbmNlbGVkAwkBAAAAAiE9AAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAAIAAAABAgAAAB1Zb3Ugc2hvdWxkIHRvIHByb3ZpZGUgcGF5bWVudAQAAAANY2FsbGVyQWRkcmVzcwgFAAAAAWkAAAAGY2FsbGVyBAAAAAxvd25lckFkZHJlc3MJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAACm9yZGVyT3duZXIEAAAADXBheW1lbnRBc3NldDEJAQAAAA5nZXRBc3NldFN0cmluZwAAAAEICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAAB2Fzc2V0SWQEAAAADnBheW1lbnRBbW91bnQxCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQDCQEAAAACIT0AAAACBQAAAA1wYXltZW50QXNzZXQxBQAAAAtvcmRlckFzc2V0MQkAAAIAAAABAgAAABNXcm9uZyBwYXltZW50IGFzc2V0AwkAAGcAAAACBQAAAA5wYXltZW50QW1vdW50MQUAAAAQb3JkZXJBbW91bnQxTGVmdAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAA1jYWxsZXJBZGRyZXNzCQAAZQAAAAIFAAAADnBheW1lbnRBbW91bnQxBQAAABBvcmRlckFtb3VudDFMZWZ0CQEAAAANZ2V0QXNzZXRCeXRlcwAAAAEFAAAAC29yZGVyQXNzZXQxCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAADWNhbGxlckFkZHJlc3MFAAAAEG9yZGVyQW1vdW50MExlZnQJAQAAAA1nZXRBc3NldEJ5dGVzAAAAAQUAAAALb3JkZXJBc3NldDAJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAMb3duZXJBZGRyZXNzBQAAABBvcmRlckFtb3VudDFMZWZ0CQEAAAANZ2V0QXNzZXRCeXRlcwAAAAEFAAAADXBheW1lbnRBc3NldDEJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAZvcmRlcl8FAAAAB29yZGVySWQCAAAAC19mdWxmaWxsZWQwCQAAZAAAAAIFAAAAD29yZGVyRnVsZmlsbGVkMAUAAAAQb3JkZXJBbW91bnQwTGVmdAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAALX2Z1bGZpbGxlZDEJAABkAAAAAgUAAAAPb3JkZXJGdWxmaWxsZWQxBQAAABBvcmRlckFtb3VudDFMZWZ0CQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAZvcmRlcl8FAAAAB29yZGVySWQCAAAAB19zdGF0dXMCAAAABmNsb3NlZAUAAAADbmlsBAAAAAdhbW91bnQwCQEAAAAIZnJhY3Rpb24AAAAEBQAAAAxvcmRlckFtb3VudDAFAAAADnBheW1lbnRBbW91bnQxBQAAAAxvcmRlckFtb3VudDEFAAAABUZMT09SCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMFAAAADG93bmVyQWRkcmVzcwUAAAAOcGF5bWVudEFtb3VudDEJAQAAAA1nZXRBc3NldEJ5dGVzAAAAAQUAAAANcGF5bWVudEFzc2V0MQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAA1jYWxsZXJBZGRyZXNzBQAAAAdhbW91bnQwCQEAAAANZ2V0QXNzZXRCeXRlcwAAAAEFAAAAC29yZGVyQXNzZXQwCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAGb3JkZXJfBQAAAAdvcmRlcklkAgAAAAtfZnVsZmlsbGVkMAkAAGQAAAACBQAAAA9vcmRlckZ1bGZpbGxlZDAFAAAAB2Ftb3VudDAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACAgAAAAZvcmRlcl8FAAAAB29yZGVySWQCAAAAC19mdWxmaWxsZWQxCQAAZAAAAAIFAAAAD29yZGVyRnVsZmlsbGVkMQUAAAAOcGF5bWVudEFtb3VudDEFAAAAA25pbAAAAAFpAQAAAAtjYW5jZWxPcmRlcgAAAAIAAAAHb3JkZXJJZAAAAAtwcm94eUNhbGxlcgQAAAAKb3JkZXJPd25lcgkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEIgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAZvcmRlcl8FAAAAB29yZGVySWQCAAAABl9vd25lcgIAAAAXQ2Fubm90IGZpbmQgb3JkZXIgb3duZXIEAAAAC29yZGVyU3RhdHVzCQAEIgAAAAEJAAEsAAAAAgkAASwAAAACAgAAAAZvcmRlcl8FAAAAB29yZGVySWQCAAAAB19zdGF0dXMEAAAAC29yZGVyQXNzZXQwCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQiAAAAAQkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAAHX3Rva2VuMAIAAAASQ2Fubm90IGZpbmQgdG9rZW4wBAAAAAxvcmRlckFtb3VudDAJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB8AAAABCQABLAAAAAIJAAEsAAAAAgIAAAAGb3JkZXJfBQAAAAdvcmRlcklkAgAAAAhfYW1vdW50MAIAAAATQ2Fubm90IGZpbmQgYW1vdW50MAQAAAAPb3JkZXJGdWxmaWxsZWQwCQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQfAAAAAQkAASwAAAACCQABLAAAAAICAAAABm9yZGVyXwUAAAAHb3JkZXJJZAIAAAALX2Z1bGZpbGxlZDACAAAAFkNhbm5vdCBmaW5kIGZ1bGZpbGxlZDAEAAAAEG9yZGVyQW1vdW50MExlZnQJAABlAAAAAgUAAAAMb3JkZXJBbW91bnQwBQAAAA9vcmRlckZ1bGZpbGxlZDADAwkBAAAAAiE9AAAAAgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBQAAAApvcmRlck93bmVyCQEAAAACIT0AAAACCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMFAAAAD3Byb3h5QWRkcmVzc1N0cgcJAAACAAAAAQIAAAAXWW91IGNhbm5vdCBjYW5jZWwgb3JkZXIDAwkAAAAAAAACCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMFAAAAD3Byb3h5QWRkcmVzc1N0cgkBAAAAAiE9AAAAAgUAAAALcHJveHlDYWxsZXIFAAAACm9yZGVyT3duZXIHCQAAAgAAAAECAAAAF1lvdSBjYW5ub3QgY2FuY2VsIG9yZGVyAwkBAAAAAiE9AAAAAgUAAAALb3JkZXJTdGF0dXMCAAAABmFjdGl2ZQkAAAIAAAABAgAAABtvcmRlciBpcyBjbG9zZWQgb3IgY2FuY2VsZWQJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQUAAAAKb3JkZXJPd25lcgUAAAAQb3JkZXJBbW91bnQwTGVmdAkBAAAADWdldEFzc2V0Qnl0ZXMAAAABBQAAAAtvcmRlckFzc2V0MAkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAGb3JkZXJfBQAAAAdvcmRlcklkAgAAAAdfc3RhdHVzAgAAAAhjYW5jZWxlZAUAAAADbmlsAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkgFwN6", "height": 3287265, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3t7nDq9EYdzz1JPK9Ys6THQLWGFQo9HsBSq1S49ktFjZ Next: A4MYU7zpDNWjFSvNg4KmHmq4o78tC5w58ptoCSEdTCxf Diff:
OldNewDifferences
5959 then o
6060 else ((r + ",") + o)
6161 }
62-[IntegerEntry("global_ordersAmount", n), StringEntry((("order_" + o) + "_token0"), p), IntegerEntry((("order_" + o) + "_amount0"), q), IntegerEntry((("order_" + o) + "_amount1"), m), StringEntry((("order_" + o) + "_token1"), l), IntegerEntry((("order_" + o) + "_fulfilled0"), 0), IntegerEntry((("order_" + o) + "_fulfilled1"), 0), StringEntry((("order_" + o) + "_owner"), toString(k.caller)), StringEntry((("order_" + o) + "_status"), "active"), IntegerEntry((("order_" + o) + "_timestamp"), lastBlock.timestamp), StringEntry((("user_" + toString(k.caller)) + "_orders"), s)]
62+[IntegerEntry("global_ordersAmount", n), StringEntry((("order_" + o) + "_token0"), p), IntegerEntry((("order_" + o) + "_amount0"), q), IntegerEntry((("order_" + o) + "_amount1"), m), StringEntry((("order_" + o) + "_token1"), l), IntegerEntry((("order_" + o) + "_fulfilled0"), 0), IntegerEntry((("order_" + o) + "_fulfilled1"), 0), StringEntry((("order_" + o) + "_owner"), toString(k.caller)), StringEntry((("order_" + o) + "_status"), "active"), IntegerEntry((("order_" + o) + "_timestamp"), lastBlock.timestamp), StringEntry((("order_" + o) + "_txId"), toBase58String(k.transactionId)), StringEntry((("user_" + toString(k.caller)) + "_orders"), s)]
6363 }
6464 }
6565
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "3PM4Mn2iwQnUkeMxTJJAuriiVEGAcQwDU5H"
55
66 func b (c) = {
77 let d = getString(this, c)
88 if ($isInstanceOf(d, "String"))
99 then {
1010 let e = d
1111 e
1212 }
1313 else ""
1414 }
1515
1616
1717 func f (c) = {
1818 let d = getInteger(this, c)
1919 if ($isInstanceOf(d, "Int"))
2020 then {
2121 let e = d
2222 e
2323 }
2424 else 0
2525 }
2626
2727
2828 func g (h) = {
2929 let d = h
3030 if ($isInstanceOf(d, "ByteVector"))
3131 then {
3232 let e = d
3333 toBase58String(e)
3434 }
3535 else "WAVES"
3636 }
3737
3838
3939 func i (j) = if ((j == "WAVES"))
4040 then unit
4141 else fromBase58String(j)
4242
4343
4444 @Callable(k)
4545 func createOrder (l,m) = {
4646 let n = (f("global_ordersAmount") + 1)
4747 let o = toString(n)
4848 if ((size(k.payments) != 1))
4949 then throw("You should to provide payment")
5050 else if ((0 >= m))
5151 then throw("Amount1 cannot be less or equals 0")
5252 else {
5353 let p = g(k.payments[0].assetId)
5454 let q = k.payments[0].amount
5555 let r = b((("user_" + toString(k.caller)) + "_orders"))
5656 let s = {
5757 let d = r
5858 if (("" == d))
5959 then o
6060 else ((r + ",") + o)
6161 }
62-[IntegerEntry("global_ordersAmount", n), StringEntry((("order_" + o) + "_token0"), p), IntegerEntry((("order_" + o) + "_amount0"), q), IntegerEntry((("order_" + o) + "_amount1"), m), StringEntry((("order_" + o) + "_token1"), l), IntegerEntry((("order_" + o) + "_fulfilled0"), 0), IntegerEntry((("order_" + o) + "_fulfilled1"), 0), StringEntry((("order_" + o) + "_owner"), toString(k.caller)), StringEntry((("order_" + o) + "_status"), "active"), IntegerEntry((("order_" + o) + "_timestamp"), lastBlock.timestamp), StringEntry((("user_" + toString(k.caller)) + "_orders"), s)]
62+[IntegerEntry("global_ordersAmount", n), StringEntry((("order_" + o) + "_token0"), p), IntegerEntry((("order_" + o) + "_amount0"), q), IntegerEntry((("order_" + o) + "_amount1"), m), StringEntry((("order_" + o) + "_token1"), l), IntegerEntry((("order_" + o) + "_fulfilled0"), 0), IntegerEntry((("order_" + o) + "_fulfilled1"), 0), StringEntry((("order_" + o) + "_owner"), toString(k.caller)), StringEntry((("order_" + o) + "_status"), "active"), IntegerEntry((("order_" + o) + "_timestamp"), lastBlock.timestamp), StringEntry((("order_" + o) + "_txId"), toBase58String(k.transactionId)), StringEntry((("user_" + toString(k.caller)) + "_orders"), s)]
6363 }
6464 }
6565
6666
6767
6868 @Callable(k)
6969 func fulfillOrder (o) = {
7070 let t = valueOrErrorMessage(getString((("order_" + o) + "_owner")), "Cannot find order owner")
7171 let u = getString((("order_" + o) + "_status"))
7272 let v = valueOrErrorMessage(getString((("order_" + o) + "_token0")), "Cannot find token0")
7373 let w = valueOrErrorMessage(getInteger((("order_" + o) + "_amount0")), "Cannot find amount0")
7474 let x = valueOrErrorMessage(getInteger((("order_" + o) + "_fulfilled0")), "Cannot find fulfilled0")
7575 let y = (w - x)
7676 let z = valueOrErrorMessage(getString((("order_" + o) + "_token1")), "Cannot find token1")
7777 let A = valueOrErrorMessage(getInteger((("order_" + o) + "_amount1")), "Cannot find amount1")
7878 let B = valueOrErrorMessage(getInteger((("order_" + o) + "_fulfilled1")), "Cannot find fulfilled1")
7979 let C = (A - B)
8080 if ((u != "active"))
8181 then throw("Order already closed or canceled")
8282 else if ((size(k.payments) != 1))
8383 then throw("You should to provide payment")
8484 else {
8585 let D = k.caller
8686 let E = addressFromStringValue(t)
8787 let F = g(k.payments[0].assetId)
8888 let G = k.payments[0].amount
8989 if ((F != z))
9090 then throw("Wrong payment asset")
9191 else if ((G >= C))
9292 then [ScriptTransfer(D, (G - C), i(z)), ScriptTransfer(D, y, i(v)), ScriptTransfer(E, C, i(F)), IntegerEntry((("order_" + o) + "_fulfilled0"), (x + y)), IntegerEntry((("order_" + o) + "_fulfilled1"), (B + C)), StringEntry((("order_" + o) + "_status"), "closed")]
9393 else {
9494 let q = fraction(w, G, A, FLOOR)
9595 [ScriptTransfer(E, G, i(F)), ScriptTransfer(D, q, i(v)), IntegerEntry((("order_" + o) + "_fulfilled0"), (x + q)), IntegerEntry((("order_" + o) + "_fulfilled1"), (B + G))]
9696 }
9797 }
9898 }
9999
100100
101101
102102 @Callable(k)
103103 func cancelOrder (o,H) = {
104104 let t = valueOrErrorMessage(getString((("order_" + o) + "_owner")), "Cannot find order owner")
105105 let u = getString((("order_" + o) + "_status"))
106106 let v = valueOrErrorMessage(getString((("order_" + o) + "_token0")), "Cannot find token0")
107107 let w = valueOrErrorMessage(getInteger((("order_" + o) + "_amount0")), "Cannot find amount0")
108108 let x = valueOrErrorMessage(getInteger((("order_" + o) + "_fulfilled0")), "Cannot find fulfilled0")
109109 let y = (w - x)
110110 if (if ((toBase58String(k.caller.bytes) != t))
111111 then (toBase58String(k.caller.bytes) != a)
112112 else false)
113113 then throw("You cannot cancel order")
114114 else if (if ((toBase58String(k.caller.bytes) == a))
115115 then (H != t)
116116 else false)
117117 then throw("You cannot cancel order")
118118 else if ((u != "active"))
119119 then throw("order is closed or canceled")
120120 else [ScriptTransfer(addressFromStringValue(t), y, i(v)), StringEntry((("order_" + o) + "_status"), "canceled")]
121121 }
122122
123123
124124 @Verifier(I)
125125 func J () = sigVerify(I.bodyBytes, I.proofs[0], I.senderPublicKey)
126126

github/deemru/w8io/6500d08 
36.38 ms