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