tx · C5CyWGtCbzdvzRGT9q9rjRkXN5fpP7fGNWhou3oYbwd5 3P6QCup9ZgsBg8LLzk7dCa8MnCZBCLYQoXP: -0.01000000 Waves 2023.05.23 17:40 [3656251] smart account 3P6QCup9ZgsBg8LLzk7dCa8MnCZBCLYQoXP > SELF 0.00000000 Waves
{ "type": 13, "id": "C5CyWGtCbzdvzRGT9q9rjRkXN5fpP7fGNWhou3oYbwd5", "fee": 1000000, "feeAssetId": null, "timestamp": 1684852911476, "version": 2, "chainId": 87, "sender": "3P6QCup9ZgsBg8LLzk7dCa8MnCZBCLYQoXP", "senderPublicKey": "Gz4W9Y9UMEEZzMBu6GHyXY7BRsLXdbzFDwRPak18TW7u", "proofs": [ "64h3kZvPdkSyyybz6nHhHNnco8Y6LcsxbXps5zFcWBSn8aH5TMQUVZgxnMXAbxbFHwfeqjsXyesv73qhTkUyGZcT" ], "script": "base64:BgIGCAISABIABwAIeHRuYXB5SWQBIFo7IE7afJx8sjIhsNqLuRLbzygBZVEzKYrJUwgG7dMSAAV4dG5JZAEgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEAC3h0bklkQmlnSW50CQCeAwEFBXh0bklkAAl4dG5TdHJpbmcJAKYDAQULeHRuSWRCaWdJbnQACVBSRUNJU0lPTgCAwtcvAAF4CQBlAgUGaGVpZ2h0AJ/7vgEABHJhdGUJAGQCCQBrAwUBeAUJUFJFQ0lTSU9OAIDNgQUFCVBSRUNJU0lPTgIBaQEPc3dhcFhUTnRvWFROQVBZAAQDcG10CQEFdmFsdWUBCQCRAwIIBQFpCHBheW1lbnRzAAAEBmFtb3VudAkAawMIBQNwbXQGYW1vdW50BQlQUkVDSVNJT04FBHJhdGUDCQECIT0CCAUDcG10B2Fzc2V0SWQFBXh0bklkCQACAQIVYXR0YWNoIFhUTiB0b2tlbiBvbmx5BAlzdXBwbHlJbnYJAPwHBAkBB0FkZHJlc3MBARoBVyCUXEqtz/RIOTuIQLO/2+6MUKCnas/a6AIGc3VwcGx5BQNuaWwJAMwIAgUDcG10BQNuaWwDCQAAAgUJc3VwcGx5SW52BQlzdXBwbHlJbnYEC3h0bmFweUlzc3VlCQEHUmVpc3N1ZQMFCHh0bmFweUlkBQZhbW91bnQGCQDMCAIFC3h0bmFweUlzc3VlCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMIBQFpBmNhbGxlcgUGYW1vdW50BQh4dG5hcHlJZAUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBD3N3YXBYVE5BUFl0b1hUTgAEA3BtdAkBBXZhbHVlAQkAkQMCCAUBaQhwYXltZW50cwAABAZhbW91bnQJAGsDCAUDcG10BmFtb3VudAUEcmF0ZQUJUFJFQ0lTSU9OAwkBAiE9AggFA3BtdAdhc3NldElkBQh4dG5hcHlJZAkAAgECGGF0dGFjaCBYVE5BUFkgdG9rZW4gb25seQQLd2l0aGRyYXdJbnYJAPwHBAkBB0FkZHJlc3MBARoBVyCUXEqtz/RIOTuIQLO/2+6MUKCnas/a6AIId2l0aGRyYXcJAMwIAgUJeHRuU3RyaW5nCQDMCAIAwIQ9BQNuaWwFA25pbAMJAAACBQt3aXRoZHJhd0ludgULd2l0aGRyYXdJbnYECnh0bmFweUJ1cm4JAQRCdXJuAgUIeHRuYXB5SWQIBQNwbXQGYW1vdW50CQDMCAIFCnh0bmFweUJ1cm4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQZhbW91bnQFBXh0bklkBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4Ajr5B6Q==", "height": 3656251, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: E3aucHXetUWXmt1siV7xuKRqwtDNyzRJvBF6gyA2R5id Next: 2u9Zaky4LViyAjKP1Zu292nqKi43tCd7S2cRb17Yvteu Diff:
Old | New | Differences | |
---|---|---|---|
41 | 41 | if ((pmt.assetId != xtnapyId)) | |
42 | 42 | then throw("attach XTNAPY token only") | |
43 | 43 | else { | |
44 | - | let xtnapyBurn = Burn(xtnapyId, pmt.amount) | |
44 | + | let withdrawInv = invoke(Address(base58'3P4uA5etnZi4AmBabKinq2bMiWU8KcnHZdH'), "withdraw", [xtnString, 1000000], nil) | |
45 | + | if ((withdrawInv == withdrawInv)) | |
46 | + | then { | |
47 | + | let xtnapyBurn = Burn(xtnapyId, pmt.amount) | |
45 | 48 | [xtnapyBurn, ScriptTransfer(i.caller, amount, xtnId)] | |
49 | + | } | |
50 | + | else throw("Strict value is not equal to itself.") | |
46 | 51 | } | |
47 | 52 | } | |
48 | 53 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let xtnapyId = base58'75Dz6E9vHi3gcmLvA4DesPRC7QmWaGK1ZR2uAGEXmrPK' | |
5 | 5 | ||
6 | 6 | let xtnId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
7 | 7 | ||
8 | 8 | let xtnIdBigInt = toBigInt(xtnId) | |
9 | 9 | ||
10 | 10 | let xtnString = toString(xtnIdBigInt) | |
11 | 11 | ||
12 | 12 | let PRECISION = 100000000 | |
13 | 13 | ||
14 | 14 | let x = (height - 3128735) | |
15 | 15 | ||
16 | 16 | let rate = (fraction(x, PRECISION, 10512000) + PRECISION) | |
17 | 17 | ||
18 | 18 | @Callable(i) | |
19 | 19 | func swapXTNtoXTNAPY () = { | |
20 | 20 | let pmt = value(i.payments[0]) | |
21 | 21 | let amount = fraction(pmt.amount, PRECISION, rate) | |
22 | 22 | if ((pmt.assetId != xtnId)) | |
23 | 23 | then throw("attach XTN token only") | |
24 | 24 | else { | |
25 | 25 | let supplyInv = invoke(Address(base58'3P4uA5etnZi4AmBabKinq2bMiWU8KcnHZdH'), "supply", nil, [pmt]) | |
26 | 26 | if ((supplyInv == supplyInv)) | |
27 | 27 | then { | |
28 | 28 | let xtnapyIssue = Reissue(xtnapyId, amount, true) | |
29 | 29 | [xtnapyIssue, ScriptTransfer(i.caller, amount, xtnapyId)] | |
30 | 30 | } | |
31 | 31 | else throw("Strict value is not equal to itself.") | |
32 | 32 | } | |
33 | 33 | } | |
34 | 34 | ||
35 | 35 | ||
36 | 36 | ||
37 | 37 | @Callable(i) | |
38 | 38 | func swapXTNAPYtoXTN () = { | |
39 | 39 | let pmt = value(i.payments[0]) | |
40 | 40 | let amount = fraction(pmt.amount, rate, PRECISION) | |
41 | 41 | if ((pmt.assetId != xtnapyId)) | |
42 | 42 | then throw("attach XTNAPY token only") | |
43 | 43 | else { | |
44 | - | let xtnapyBurn = Burn(xtnapyId, pmt.amount) | |
44 | + | let withdrawInv = invoke(Address(base58'3P4uA5etnZi4AmBabKinq2bMiWU8KcnHZdH'), "withdraw", [xtnString, 1000000], nil) | |
45 | + | if ((withdrawInv == withdrawInv)) | |
46 | + | then { | |
47 | + | let xtnapyBurn = Burn(xtnapyId, pmt.amount) | |
45 | 48 | [xtnapyBurn, ScriptTransfer(i.caller, amount, xtnId)] | |
49 | + | } | |
50 | + | else throw("Strict value is not equal to itself.") | |
46 | 51 | } | |
47 | 52 | } | |
48 | 53 | ||
49 | 54 |
github/deemru/w8io/3ef1775 56.48 ms ◑