tx · A7Kkgzo13fnA9Dy5P1TihXmQfDqbYQYUHh5ZFQBr1vo 3PGcRy2VFKYhusWo4j6dR8sK8Hi8gZcTopS: -0.01400000 Waves 2022.09.26 13:30 [3311436] smart account 3PGcRy2VFKYhusWo4j6dR8sK8Hi8gZcTopS > SELF 0.00000000 Waves
{ "type": 13, "id": "A7Kkgzo13fnA9Dy5P1TihXmQfDqbYQYUHh5ZFQBr1vo", "fee": 1400000, "feeAssetId": null, "timestamp": 1664188216750, "version": 2, "chainId": 87, "sender": "3PGcRy2VFKYhusWo4j6dR8sK8Hi8gZcTopS", "senderPublicKey": "6vs9orALhZsXKNcKtzPwfM18kgyVRj7qiXM4EdQSgAaZ", "proofs": [ "XMtCSiBcewvrR9bQmr3u2Db7Xka3v66ymhekF7gJ5ufZzTrnVpyoMGdjHTdjCNZG7VMoqVScHYcYdeud1uN5crC" ], "script": "base64:AAIFAAAAAAAAAAYIAhIAEgAAAAAAAAAAAgAAAAFpAQAAABBCdXlXYXZlc1dpdGhVU0ROAAAAAAQAAAAOU3BlbmRVU0ROVmFsdWUAAAAAAABMS0AEAAAAC0FNTV9BZGRyZXNzCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABAgAAACMzUEhhTmdvbUJrcnZFTDJRbnVKYXJRVkphNzF3anc5cWlxRwQAAAAEVVNETgEAAAAgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEEAAAACWtCYWxhbmNlQQIAAAAPQV9hc3NldF9iYWxhbmNlBAAAAA9BX2Fzc2V0X2JhbGFuY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAAC0FNTV9BZGRyZXNzBQAAAAlrQmFsYW5jZUEEAAAACWtCYWxhbmNlQgIAAAAPQl9hc3NldF9iYWxhbmNlBAAAAA9CX2Fzc2V0X2JhbGFuY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAAC0FNTV9BZGRyZXNzBQAAAAlrQmFsYW5jZUIEAAAAEW5ld2JhbGFuY2VvZldBVkVTCQAAawAAAAMFAAAAD0JfYXNzZXRfYmFsYW5jZQUAAAAPQV9hc3NldF9iYWxhbmNlCQAAZAAAAAIFAAAAD0JfYXNzZXRfYmFsYW5jZQUAAAAOU3BlbmRVU0ROVmFsdWUEAAAAEm1pbkFtb3VudFRvUmVjZWl2ZQkAAGUAAAACBQAAAA9BX2Fzc2V0X2JhbGFuY2UFAAAAEW5ld2JhbGFuY2VvZldBVkVTBAAAAAtkZXB0aGZhY3RvcgkAAGsAAAADBQAAABJtaW5BbW91bnRUb1JlY2VpdmUAAAAAAAAAAAEAAAAAAAAAAGQEAAAAGGFjdHVhbG1pbkFtb3VudFRvUmVjZWl2ZQkAAGUAAAACBQAAABJtaW5BbW91bnRUb1JlY2VpdmUFAAAAC2RlcHRoZmFjdG9yBAAAAAdwYXltZW50CQEAAAAPQXR0YWNoZWRQYXltZW50AAAAAgUAAAAEVVNETgUAAAAOU3BlbmRVU0ROVmFsdWUEAAAAEGludm9rZVRvQnV5V0FWRVMJAAP8AAAABAUAAAALQU1NX0FkZHJlc3MCAAAACGV4Y2hhbmdlCQAETAAAAAIFAAAAGGFjdHVhbG1pbkFtb3VudFRvUmVjZWl2ZQUAAAADbmlsCQAETAAAAAIFAAAAB3BheW1lbnQFAAAAA25pbAMJAAAAAAAAAgUAAAAQaW52b2tlVG9CdXlXQVZFUwUAAAAQaW52b2tlVG9CdXlXQVZFUwMJAABmAAAAAgAAAAAAAExLQAkAA/AAAAACBQAAAAR0aGlzBQAAAARVU0ROCQAAAgAAAAEJAAEsAAAAAgIAAAA1WW91IEFjY291bnQgaXMgU2hvcnQgaW4gNSBVU0ROIEJhbGFuY2UuIFlvdSBoYXZlIG9ubHkJAAGkAAAAAQkAA/AAAAACBQAAAAR0aGlzBQAAAARVU0ROCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAICAAAAB21lc3NhZ2UCAAAAHFRva2VucyBTd2FwcGVkIFN1Y2Nlc3NmdWxseS4JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAAFkNvbGxlY3RlZF9XYXZlc19BbW91bnQFAAAAGGFjdHVhbG1pbkFtb3VudFRvUmVjZWl2ZQUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAFpAQAAABJTZWxsV2F2ZXN0b0dldFVTRE4AAAAABAAAAA9TcGVuZFdBVkVTVmFsdWUJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAFkNvbGxlY3RlZF9XYXZlc19BbW91bnQEAAAAC0FNTV9BZGRyZXNzCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABAgAAACMzUEhhTmdvbUJrcnZFTDJRbnVKYXJRVkphNzF3anc5cWlxRwQAAAAFV0FWRVMBAAAAAAQAAAAJa0JhbGFuY2VBAgAAAA9BX2Fzc2V0X2JhbGFuY2UEAAAAD0FfYXNzZXRfYmFsYW5jZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAALQU1NX0FkZHJlc3MFAAAACWtCYWxhbmNlQQQAAAAJa0JhbGFuY2VCAgAAAA9CX2Fzc2V0X2JhbGFuY2UEAAAAD0JfYXNzZXRfYmFsYW5jZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAALQU1NX0FkZHJlc3MFAAAACWtCYWxhbmNlQgQAAAAQbmV3YmFsYW5jZW9mVVNETgkAAGsAAAADBQAAAA9CX2Fzc2V0X2JhbGFuY2UFAAAAD0FfYXNzZXRfYmFsYW5jZQkAAGQAAAACBQAAAA9BX2Fzc2V0X2JhbGFuY2UFAAAAD1NwZW5kV0FWRVNWYWx1ZQQAAAASbWluQW1vdW50VG9SZWNlaXZlCQAAZQAAAAIFAAAAD0JfYXNzZXRfYmFsYW5jZQUAAAAQbmV3YmFsYW5jZW9mVVNETgQAAAALZGVwdGhmYWN0b3IJAABrAAAAAwUAAAASbWluQW1vdW50VG9SZWNlaXZlAAAAAAAAAAABAAAAAAAAAABkBAAAABhhY3R1YWxtaW5BbW91bnRUb1JlY2VpdmUJAABlAAAAAgUAAAASbWluQW1vdW50VG9SZWNlaXZlBQAAAAtkZXB0aGZhY3RvcgQAAAAHcGF5bWVudAkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAABVdBVkVTBQAAAA9TcGVuZFdBVkVTVmFsdWUEAAAAEWludm9rZVRvU2VsbFdBVkVTCQAD/AAAAAQFAAAAC0FNTV9BZGRyZXNzAgAAAAhleGNoYW5nZQkABEwAAAACBQAAABhhY3R1YWxtaW5BbW91bnRUb1JlY2VpdmUFAAAAA25pbAkABEwAAAACBQAAAAdwYXltZW50BQAAAANuaWwDCQAAAAAAAAIFAAAAEWludm9rZVRvU2VsbFdBVkVTBQAAABFpbnZva2VUb1NlbGxXQVZFUwMJAABmAAAAAgUAAAAPU3BlbmRXQVZFU1ZhbHVlCQAD8AAAAAIFAAAABHRoaXMFAAAABVdBVkVTCQAAAgAAAAEJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAA0WW91IEFjY291bnQgaXMgU2hvcnQgaW4gV0FWRVMgQmFsYW5jZS4gWW91IGhhdmUgb25seQkAAaQAAAABCQAD8AAAAAIFAAAABHRoaXMFAAAABVdBVkVTAgAAAAtpbnN0ZWFkIG9mIAkAAaQAAAABBQAAAA9TcGVuZFdBVkVTVmFsdWUCAAAABiBXQVZFUwkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACAgAAAAdtZXNzYWdlAgAAABxUb2tlbnMgU3dhcHBlZCBTdWNjZXNzZnVsbHkuCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACAgAAABVDb2xsZWN0ZWRfVVNETl9BbW91bnQFAAAAGGFjdHVhbG1pbkFtb3VudFRvUmVjZWl2ZQUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAAACAUAAAACdHgAAAAPc2VuZGVyUHVibGljS2V5By5tUg==", "height": 3311436, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: E5fZvZ5QPY1XgKjijn4DkBsKjcGnZw5jTXUqsMtKqpXq Next: 5D3vgv9z8KkBuXxCU256FG7MZnsto1qMzzajCRBhoFqS Diff:
Old | New | Differences | |
---|---|---|---|
12 | 12 | let f = getIntegerValue(c, e) | |
13 | 13 | let g = "B_asset_balance" | |
14 | 14 | let h = getIntegerValue(c, g) | |
15 | - | let i = fraction(h, f, (h + | |
15 | + | let i = fraction(h, f, (h + b)) | |
16 | 16 | let j = (f - i) | |
17 | 17 | let k = fraction(j, 1, 100) | |
18 | - | let l = AttachedPayment(d, b) | |
19 | - | let m = invoke(c, "exchange", [(j - k)], [l]) | |
20 | - | if ((m == m)) | |
18 | + | let l = (j - k) | |
19 | + | let m = AttachedPayment(d, b) | |
20 | + | let n = invoke(c, "exchange", [l], [m]) | |
21 | + | if ((n == n)) | |
21 | 22 | then if ((5000000 > assetBalance(this, d))) | |
22 | - | then throw(("You Account is Short in USDN Balance. You have only" + toString(assetBalance(this, d)))) | |
23 | - | else [StringEntry("message", "Tokens Swapped Successfully."), IntegerEntry(" | |
23 | + | then throw(("You Account is Short in 5 USDN Balance. You have only" + toString(assetBalance(this, d)))) | |
24 | + | else [StringEntry("message", "Tokens Swapped Successfully."), IntegerEntry("Collected_Waves_Amount", l)] | |
24 | 25 | else throw("Strict value is not equal to itself.") | |
25 | 26 | } | |
26 | 27 | ||
27 | 28 | ||
28 | - | @Verifier(n) | |
29 | - | func o () = sigVerify(n.bodyBytes, n.proofs[0], n.senderPublicKey) | |
29 | + | ||
30 | + | @Callable(a) | |
31 | + | func SellWavestoGetUSDN () = { | |
32 | + | let o = getIntegerValue(this, "Collected_Waves_Amount") | |
33 | + | let c = addressFromStringValue("3PHaNgomBkrvEL2QnuJarQVJa71wjw9qiqG") | |
34 | + | let p = base58'' | |
35 | + | let e = "A_asset_balance" | |
36 | + | let f = getIntegerValue(c, e) | |
37 | + | let g = "B_asset_balance" | |
38 | + | let h = getIntegerValue(c, g) | |
39 | + | let q = fraction(h, f, (f + o)) | |
40 | + | let j = (h - q) | |
41 | + | let k = fraction(j, 1, 100) | |
42 | + | let l = (j - k) | |
43 | + | let m = AttachedPayment(p, o) | |
44 | + | let r = invoke(c, "exchange", [l], [m]) | |
45 | + | if ((r == r)) | |
46 | + | then if ((o > assetBalance(this, p))) | |
47 | + | then throw((((("You Account is Short in WAVES Balance. You have only" + toString(assetBalance(this, p))) + "instead of ") + toString(o)) + " WAVES")) | |
48 | + | else [StringEntry("message", "Tokens Swapped Successfully."), IntegerEntry("Collected_USDN_Amount", l)] | |
49 | + | else throw("Strict value is not equal to itself.") | |
50 | + | } | |
51 | + | ||
52 | + | ||
53 | + | @Verifier(s) | |
54 | + | func t () = sigVerify(s.bodyBytes, s.proofs[0], s.senderPublicKey) | |
30 | 55 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(a) | |
7 | 7 | func BuyWavesWithUSDN () = { | |
8 | 8 | let b = 5000000 | |
9 | 9 | let c = addressFromStringValue("3PHaNgomBkrvEL2QnuJarQVJa71wjw9qiqG") | |
10 | 10 | let d = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
11 | 11 | let e = "A_asset_balance" | |
12 | 12 | let f = getIntegerValue(c, e) | |
13 | 13 | let g = "B_asset_balance" | |
14 | 14 | let h = getIntegerValue(c, g) | |
15 | - | let i = fraction(h, f, (h + | |
15 | + | let i = fraction(h, f, (h + b)) | |
16 | 16 | let j = (f - i) | |
17 | 17 | let k = fraction(j, 1, 100) | |
18 | - | let l = AttachedPayment(d, b) | |
19 | - | let m = invoke(c, "exchange", [(j - k)], [l]) | |
20 | - | if ((m == m)) | |
18 | + | let l = (j - k) | |
19 | + | let m = AttachedPayment(d, b) | |
20 | + | let n = invoke(c, "exchange", [l], [m]) | |
21 | + | if ((n == n)) | |
21 | 22 | then if ((5000000 > assetBalance(this, d))) | |
22 | - | then throw(("You Account is Short in USDN Balance. You have only" + toString(assetBalance(this, d)))) | |
23 | - | else [StringEntry("message", "Tokens Swapped Successfully."), IntegerEntry(" | |
23 | + | then throw(("You Account is Short in 5 USDN Balance. You have only" + toString(assetBalance(this, d)))) | |
24 | + | else [StringEntry("message", "Tokens Swapped Successfully."), IntegerEntry("Collected_Waves_Amount", l)] | |
24 | 25 | else throw("Strict value is not equal to itself.") | |
25 | 26 | } | |
26 | 27 | ||
27 | 28 | ||
28 | - | @Verifier(n) | |
29 | - | func o () = sigVerify(n.bodyBytes, n.proofs[0], n.senderPublicKey) | |
29 | + | ||
30 | + | @Callable(a) | |
31 | + | func SellWavestoGetUSDN () = { | |
32 | + | let o = getIntegerValue(this, "Collected_Waves_Amount") | |
33 | + | let c = addressFromStringValue("3PHaNgomBkrvEL2QnuJarQVJa71wjw9qiqG") | |
34 | + | let p = base58'' | |
35 | + | let e = "A_asset_balance" | |
36 | + | let f = getIntegerValue(c, e) | |
37 | + | let g = "B_asset_balance" | |
38 | + | let h = getIntegerValue(c, g) | |
39 | + | let q = fraction(h, f, (f + o)) | |
40 | + | let j = (h - q) | |
41 | + | let k = fraction(j, 1, 100) | |
42 | + | let l = (j - k) | |
43 | + | let m = AttachedPayment(p, o) | |
44 | + | let r = invoke(c, "exchange", [l], [m]) | |
45 | + | if ((r == r)) | |
46 | + | then if ((o > assetBalance(this, p))) | |
47 | + | then throw((((("You Account is Short in WAVES Balance. You have only" + toString(assetBalance(this, p))) + "instead of ") + toString(o)) + " WAVES")) | |
48 | + | else [StringEntry("message", "Tokens Swapped Successfully."), IntegerEntry("Collected_USDN_Amount", l)] | |
49 | + | else throw("Strict value is not equal to itself.") | |
50 | + | } | |
51 | + | ||
52 | + | ||
53 | + | @Verifier(s) | |
54 | + | func t () = sigVerify(s.bodyBytes, s.proofs[0], s.senderPublicKey) | |
30 | 55 |
github/deemru/w8io/0e76f2f 53.45 ms ◑