tx · 7F9Sgwj9XH5WWYviHVsfPJNme6QFUbJgAdcYfc67PdqH 3Mx8raFsQfjh2JBeT8MN1Jv5sTvGkx5PDDS: -0.01000000 Waves 2023.08.28 15:44 [2730534] smart account 3Mx8raFsQfjh2JBeT8MN1Jv5sTvGkx5PDDS > SELF 0.00000000 Waves
{ "type": 13, "id": "7F9Sgwj9XH5WWYviHVsfPJNme6QFUbJgAdcYfc67PdqH", "fee": 1000000, "feeAssetId": null, "timestamp": 1693226626545, "version": 2, "chainId": 84, "sender": "3Mx8raFsQfjh2JBeT8MN1Jv5sTvGkx5PDDS", "senderPublicKey": "HmWR8GbhBF4LAodJ9xNgR7PpWF79RuCrhPWJWxqdB1KL", "proofs": [ "41KJzJFUSSiNotN6pCx67gEUtHyQxPv9zKukudP8XVEhhDea5BA8MPrrmACs1TLMqGW6Btf9Mtfh48gbvprFFEKp" ], "script": "base64:AAIFAAAAAAAAAAkIAhIAEgMKAQEAAAAEAAAAABFscF9hZGRyZXNzX3B1YmtleQEAAAAg+SHOoR+6ay5qXj57vjRzml+/6VMYqCQMV4ukn2GjgTcAAAAAIG1hc3N0cmFuc2Zlcl93aGl0ZWxpc3RlZF9hZGRyZXNzCQEAAAAUYWRkcmVzc0Zyb21QdWJsaWNLZXkAAAABBQAAABFscF9hZGRyZXNzX3B1YmtleQAAAAAUbHBfZGVwb3NpdG9yX2FkZHJlc3MBAAAAIOOt17LUijbWojwDE5tgFkw1Y8cwIr3jselcewpp7rwjAAAAABRscF93aGl0ZWxpc3RfYWRkcmVzcwkBAAAAFGFkZHJlc3NGcm9tUHVibGljS2V5AAAAAQUAAAAUbHBfZGVwb3NpdG9yX2FkZHJlc3MAAAACAAAAAWkBAAAAEEFkZFBvb2xMaXF1aWRpdHkAAAAABAAAAA1jYWxsZXJhZGRyZXNzCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMEAAAAA3BtdAMJAAAAAAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAkAAAIAAAABAgAAAElObyBwYXltZW50IGF0dGFjaGVkLCBQbGVhc2UgQXR0YWNoIG9ubHkgV2hpdGVsaXN0ZWQgVG9rZW5zIGluIHBheW1lbnRbMV0uBAAAACFQcmV2aW91c0Z1bmRzQWRkZWRUb1Bvb2xieUNvbXBhbnkEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAOVG90YWxfTFBfQWRkZWQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAeVG90YWxGdW5kc0FkZGVkVG9Qb29sYnlDb21wYW55CQAAZAAAAAIFAAAAIVByZXZpb3VzRnVuZHNBZGRlZFRvUG9vbGJ5Q29tcGFueQgFAAAAA3BtdAAAAAZhbW91bnQEAAAAFVByZXZpb3VzUG9vbExpcXVpZGl0eQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAABRUb3RhbF9Qb29sX0xpcXVpZGl0eQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABJUb3RhbFBvb2xMaXF1aWRpdHkJAABkAAAAAgUAAAAVUHJldmlvdXNQb29sTGlxdWlkaXR5CAUAAAADcG10AAAABmFtb3VudAQAAAAYUHJldmlvdXNMUERlcG9zaXRDb3VudGVyBAAAAAckbWF0Y2gwCQAEGgAAAAIFAAAABHRoaXMCAAAAEkxQX0RlcG9zaXRfQ291bnRlcgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAABVUb3RhbExQRGVwb3NpdENvdW50ZXIJAABkAAAAAgUAAAAYUHJldmlvdXNMUERlcG9zaXRDb3VudGVyAAAAAAAAAAABAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAABRscF93aGl0ZWxpc3RfYWRkcmVzcwkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAlVGhpcyBBZGRyZXNzIGlzIG5vdCBBdXRob3JpemVkLiBPbmx5IAkABCUAAAABBQAAABRscF93aGl0ZWxpc3RfYWRkcmVzcwIAAAAiIGlzIEF1dGhvcml6ZWQgQWRkcmVzcyB0byBTaWduIGl0LgMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAADcG10AAAAB2Fzc2V0SWQJAAACAAAAAQIAAAAuT25seSBXQVZFUyBpcyBhbGxvd2VkIHRvIGRlcG9zaXQgYXQgdGhlIG1vbWVudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAUVG90YWxfUG9vbF9MaXF1aWRpdHkFAAAAElRvdGFsUG9vbExpcXVpZGl0eQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAASTFBfRGVwb3NpdF9Db3VudGVyBQAAABVUb3RhbExQRGVwb3NpdENvdW50ZXIJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADlRvdGFsX0xQX0FkZGVkBQAAAB5Ub3RhbEZ1bmRzQWRkZWRUb1Bvb2xieUNvbXBhbnkFAAAAA25pbAAAAAFpAQAAAA9VcGRhdGVMUEJhbGFuY2UAAAABAAAAFlBhaWRNYXNzVHJhbnNmZXJBbW91bnQEAAAAFHJlYWRfYWNjb3VudF9iYWxhbmNlCAkAA+8AAAABBQAAAAR0aGlzAAAAB3JlZ3VsYXIEAAAAGXJlYWRfdG90YWxfcG9vbF9saXF1aWRpdHkJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABBoAAAACBQAAAAR0aGlzAgAAABRUb3RhbF9Qb29sX0xpcXVpZGl0eQIAAAAkTm8gSW5pdGlhbCBQb29sIExpcXVpZGl0eSB3YXMgRm91bmQuBAAAABVyZWNlaXZlZF9vcmRlcl9hbW91bnQJAABlAAAAAgUAAAAUcmVhZF9hY2NvdW50X2JhbGFuY2UFAAAAGXJlYWRfdG90YWxfcG9vbF9saXF1aWRpdHkEAAAAFHVwZGF0ZWRfcG9vbF9iYWxhbmNlCQAAZAAAAAIJAABlAAAAAgUAAAAZcmVhZF90b3RhbF9wb29sX2xpcXVpZGl0eQUAAAAWUGFpZE1hc3NUcmFuc2ZlckFtb3VudAUAAAAVcmVjZWl2ZWRfb3JkZXJfYW1vdW50BAAAABtQcmV2aW91c01hc3NUcmFuc2ZlckNvdW50ZXIEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwIAAAAVTWFzc19UcmFuc2Zlcl9Db3VudGVyAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEAAAAAAAAAAAAEAAAAGFRvdGFsTWFzc1RyYW5zZmVyQ291bnRlcgkAAGQAAAACBQAAABtQcmV2aW91c01hc3NUcmFuc2ZlckNvdW50ZXIAAAAAAAAAAAEEAAAAGFByZXZpb3VzTWFzc1RyYW5zZmVyU2VuZAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzAgAAABhUb3RhbF9NYXNzX1RyYW5zZmVyX1NlbmQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQAAAAAAAAAAAAQAAAAVVG90YWxNYXNzVHJhbnNmZXJTZW5kCQAAZAAAAAIFAAAAGFByZXZpb3VzTWFzc1RyYW5zZmVyU2VuZAUAAAAWUGFpZE1hc3NUcmFuc2ZlckFtb3VudAMJAQAAAAIhPQAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAgbWFzc3RyYW5zZmVyX3doaXRlbGlzdGVkX2FkZHJlc3MJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAJVRoaXMgQWRkcmVzcyBpcyBub3QgQXV0aG9yaXplZC4gT25seSAJAAQlAAAAAQUAAAAgbWFzc3RyYW5zZmVyX3doaXRlbGlzdGVkX2FkZHJlc3MCAAAAIiBpcyBBdXRob3JpemVkIEFkZHJlc3MgdG8gU2lnbiBpdC4JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAFFRvdGFsX1Bvb2xfTGlxdWlkaXR5BQAAABR1cGRhdGVkX3Bvb2xfYmFsYW5jZQkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgIAAAAYVG90YWxfTWFzc19UcmFuc2Zlcl9TZW5kBQAAABVUb3RhbE1hc3NUcmFuc2ZlclNlbmQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAAaQAAAABBQAAABhUb3RhbE1hc3NUcmFuc2ZlckNvdW50ZXICAAAAE19NYXNzX1RyYW5zZmVyX1NlbmQFAAAAFlBhaWRNYXNzVHJhbnNmZXJBbW91bnQFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4AwMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAFT3JkZXIGAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNFeGNoYW5nZVRyYW5zYWN0aW9uBgkAAAEAAAACBQAAAAckbWF0Y2gwAgAAABNUcmFuc2ZlclRyYW5zYWN0aW9uBAAAAAF0BQAAAAckbWF0Y2gwBwkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAIBQAAAAJ0eAAAAA9zZW5kZXJQdWJsaWNLZXkkWuw5", "height": 2730534, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: DQXGBkeZ6AAPVNei6XKABde14saaAGJ3Tz55YxsWw4LT Next: F4zqxUGZ554ec6aZMQhghSuG9q1qRrUzqSdpXn1HdY13 Diff:
Old | New | Differences | |
---|---|---|---|
56 | 56 | ||
57 | 57 | @Callable(e) | |
58 | 58 | func UpdateLPBalance (p) = { | |
59 | - | let q = valueOrErrorMessage(getInteger(this, "Total_Pool_Liquidity"), "No Initial Pool Liquidity was Found.") | |
60 | - | let r = (q - p) | |
61 | - | let s = { | |
59 | + | let q = wavesBalance(this).regular | |
60 | + | let r = valueOrErrorMessage(getInteger(this, "Total_Pool_Liquidity"), "No Initial Pool Liquidity was Found.") | |
61 | + | let s = (q - r) | |
62 | + | let t = ((r - p) + s) | |
63 | + | let u = { | |
62 | 64 | let i = getInteger(this, "Mass_Transfer_Counter") | |
63 | 65 | if ($isInstanceOf(i, "Int")) | |
64 | 66 | then { | |
67 | 69 | } | |
68 | 70 | else 0 | |
69 | 71 | } | |
70 | - | let | |
71 | - | let | |
72 | + | let v = (u + 1) | |
73 | + | let w = { | |
72 | 74 | let i = getInteger(this, "Total_Mass_Transfer_Send") | |
73 | 75 | if ($isInstanceOf(i, "Int")) | |
74 | 76 | then { | |
77 | 79 | } | |
78 | 80 | else 0 | |
79 | 81 | } | |
80 | - | let | |
82 | + | let x = (w + p) | |
81 | 83 | if ((e.caller != b)) | |
82 | 84 | then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it.")) | |
83 | - | else [IntegerEntry("Total_Pool_Liquidity", | |
85 | + | else [IntegerEntry("Total_Pool_Liquidity", t), IntegerEntry("Total_Mass_Transfer_Send", x), IntegerEntry((toString(v) + "_Mass_Transfer_Send"), p)] | |
84 | 86 | } | |
85 | 87 | ||
86 | 88 | ||
87 | - | @Verifier( | |
88 | - | func | |
89 | - | let i = | |
89 | + | @Verifier(y) | |
90 | + | func z () = { | |
91 | + | let i = y | |
90 | 92 | if (if ($isInstanceOf(i, "Order")) | |
91 | 93 | then true | |
92 | 94 | else if ($isInstanceOf(i, "ExchangeTransaction")) | |
93 | 95 | then true | |
94 | 96 | else $isInstanceOf(i, "TransferTransaction")) | |
95 | 97 | then { | |
96 | - | let | |
98 | + | let A = i | |
97 | 99 | false | |
98 | 100 | } | |
99 | - | else sigVerify( | |
101 | + | else sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey) | |
100 | 102 | } | |
101 | 103 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = base58'HmWR8GbhBF4LAodJ9xNgR7PpWF79RuCrhPWJWxqdB1KL' | |
5 | 5 | ||
6 | 6 | let b = addressFromPublicKey(a) | |
7 | 7 | ||
8 | 8 | let c = base58'GKmJ6BchUgQfwKp4mp5eX8Y9xLioYRm6e1gDfFgdAcCr' | |
9 | 9 | ||
10 | 10 | let d = addressFromPublicKey(c) | |
11 | 11 | ||
12 | 12 | @Callable(e) | |
13 | 13 | func AddPoolLiquidity () = { | |
14 | 14 | let f = toBase58String(e.caller.bytes) | |
15 | 15 | let g = if ((size(e.payments) == 1)) | |
16 | 16 | then e.payments[0] | |
17 | 17 | else throw("No payment attached, Please Attach only Whitelisted Tokens in payment[1].") | |
18 | 18 | let h = { | |
19 | 19 | let i = getInteger(this, "Total_LP_Added") | |
20 | 20 | if ($isInstanceOf(i, "Int")) | |
21 | 21 | then { | |
22 | 22 | let j = i | |
23 | 23 | j | |
24 | 24 | } | |
25 | 25 | else 0 | |
26 | 26 | } | |
27 | 27 | let k = (h + g.amount) | |
28 | 28 | let l = { | |
29 | 29 | let i = getInteger(this, "Total_Pool_Liquidity") | |
30 | 30 | if ($isInstanceOf(i, "Int")) | |
31 | 31 | then { | |
32 | 32 | let j = i | |
33 | 33 | j | |
34 | 34 | } | |
35 | 35 | else 0 | |
36 | 36 | } | |
37 | 37 | let m = (l + g.amount) | |
38 | 38 | let n = { | |
39 | 39 | let i = getInteger(this, "LP_Deposit_Counter") | |
40 | 40 | if ($isInstanceOf(i, "Int")) | |
41 | 41 | then { | |
42 | 42 | let j = i | |
43 | 43 | j | |
44 | 44 | } | |
45 | 45 | else 0 | |
46 | 46 | } | |
47 | 47 | let o = (n + 1) | |
48 | 48 | if ((e.caller != d)) | |
49 | 49 | then throw((("This Address is not Authorized. Only " + toString(d)) + " is Authorized Address to Sign it.")) | |
50 | 50 | else if (isDefined(g.assetId)) | |
51 | 51 | then throw("Only WAVES is allowed to deposit at the moment") | |
52 | 52 | else [IntegerEntry("Total_Pool_Liquidity", m), IntegerEntry("LP_Deposit_Counter", o), IntegerEntry("Total_LP_Added", k)] | |
53 | 53 | } | |
54 | 54 | ||
55 | 55 | ||
56 | 56 | ||
57 | 57 | @Callable(e) | |
58 | 58 | func UpdateLPBalance (p) = { | |
59 | - | let q = valueOrErrorMessage(getInteger(this, "Total_Pool_Liquidity"), "No Initial Pool Liquidity was Found.") | |
60 | - | let r = (q - p) | |
61 | - | let s = { | |
59 | + | let q = wavesBalance(this).regular | |
60 | + | let r = valueOrErrorMessage(getInteger(this, "Total_Pool_Liquidity"), "No Initial Pool Liquidity was Found.") | |
61 | + | let s = (q - r) | |
62 | + | let t = ((r - p) + s) | |
63 | + | let u = { | |
62 | 64 | let i = getInteger(this, "Mass_Transfer_Counter") | |
63 | 65 | if ($isInstanceOf(i, "Int")) | |
64 | 66 | then { | |
65 | 67 | let j = i | |
66 | 68 | j | |
67 | 69 | } | |
68 | 70 | else 0 | |
69 | 71 | } | |
70 | - | let | |
71 | - | let | |
72 | + | let v = (u + 1) | |
73 | + | let w = { | |
72 | 74 | let i = getInteger(this, "Total_Mass_Transfer_Send") | |
73 | 75 | if ($isInstanceOf(i, "Int")) | |
74 | 76 | then { | |
75 | 77 | let j = i | |
76 | 78 | j | |
77 | 79 | } | |
78 | 80 | else 0 | |
79 | 81 | } | |
80 | - | let | |
82 | + | let x = (w + p) | |
81 | 83 | if ((e.caller != b)) | |
82 | 84 | then throw((("This Address is not Authorized. Only " + toString(b)) + " is Authorized Address to Sign it.")) | |
83 | - | else [IntegerEntry("Total_Pool_Liquidity", | |
85 | + | else [IntegerEntry("Total_Pool_Liquidity", t), IntegerEntry("Total_Mass_Transfer_Send", x), IntegerEntry((toString(v) + "_Mass_Transfer_Send"), p)] | |
84 | 86 | } | |
85 | 87 | ||
86 | 88 | ||
87 | - | @Verifier( | |
88 | - | func | |
89 | - | let i = | |
89 | + | @Verifier(y) | |
90 | + | func z () = { | |
91 | + | let i = y | |
90 | 92 | if (if ($isInstanceOf(i, "Order")) | |
91 | 93 | then true | |
92 | 94 | else if ($isInstanceOf(i, "ExchangeTransaction")) | |
93 | 95 | then true | |
94 | 96 | else $isInstanceOf(i, "TransferTransaction")) | |
95 | 97 | then { | |
96 | - | let | |
98 | + | let A = i | |
97 | 99 | false | |
98 | 100 | } | |
99 | - | else sigVerify( | |
101 | + | else sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey) | |
100 | 102 | } | |
101 | 103 |
github/deemru/w8io/026f985 28.82 ms ◑