2021.12.05 04:34 [2885274] smart account 3P984CrEYKGfoBLdwRFiNE2j3gFoYA1cvYp > SELF 0.00000000 Waves
{ "type": 13, "id": "FSbQSNyLsZMGwR7jo3HaJcHSScARtMg5jNks4M6eEbYL", "fee": 1000000, "feeAssetId": null, "timestamp": 1638668125784, "version": 2, "chainId": 87, "sender": "3P984CrEYKGfoBLdwRFiNE2j3gFoYA1cvYp", "senderPublicKey": "9mKotRjaeDuiRhrXqMg55Uh1V1WzwG4kDaAcE7HGzh43", "proofs": [ "3Yk1mu1u8Ud7Wu5vpbWQEBfrdhFsAG3yZJVESW8KU3fr5HHGuB2r5tRZs978rnn8uo8ZX3aJcHiHxoeKcVyomKN6" ], "script": "base64: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", "height": 2885274, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 7LsSdBYMSmEeBeqKqjYwGFfYNz3XozPyXAMikdnsQtnR Next: DGFCi85zj2FUaMN9wqJJS9roF6st7ZrZbhJ7XTXxX6bV Diff:
Old | New | Differences | |
---|---|---|---|
4 | 4 | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
5 | 5 | ||
6 | 6 | let NEUTRINO = base58'3PNikM6yp4NqcSU8guxQtmR5onr2D4e8yTJ' | |
7 | + | ||
8 | + | @Callable(i) | |
9 | + | func dele () = $Tuple2([DeleteEntry("staked_usdn_amount")], unit) | |
10 | + | ||
11 | + | ||
7 | 12 | ||
8 | 13 | @Callable(i) | |
9 | 14 | func stakeUSDN (amount) = { |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
5 | 5 | ||
6 | 6 | let NEUTRINO = base58'3PNikM6yp4NqcSU8guxQtmR5onr2D4e8yTJ' | |
7 | + | ||
8 | + | @Callable(i) | |
9 | + | func dele () = $Tuple2([DeleteEntry("staked_usdn_amount")], unit) | |
10 | + | ||
11 | + | ||
7 | 12 | ||
8 | 13 | @Callable(i) | |
9 | 14 | func stakeUSDN (amount) = { | |
10 | 15 | let USDNBalance = assetBalance(this, USDN) | |
11 | 16 | if (!((USDNBalance > amount))) | |
12 | 17 | then throw("exceeds the available amount") | |
13 | 18 | else { | |
14 | 19 | let result = invoke(Address(NEUTRINO), "lockNeutrino", nil, [AttachedPayment(USDN, amount)]) | |
15 | 20 | if ((result == result)) | |
16 | 21 | then { | |
17 | 22 | let stakedUSDN = valueOrElse(getInteger(this, "staked_usdn_amount"), 0) | |
18 | 23 | let totalStakedUSDN = (stakedUSDN + amount) | |
19 | 24 | $Tuple2([IntegerEntry("staked_usdn_amount", totalStakedUSDN)], unit) | |
20 | 25 | } | |
21 | 26 | else throw("Strict value is not equal to itself.") | |
22 | 27 | } | |
23 | 28 | } | |
24 | 29 | ||
25 | 30 | ||
26 | 31 | ||
27 | 32 | @Callable(i) | |
28 | 33 | func unstakeUSDN () = { | |
29 | 34 | let totalStakedUSDN = getIntegerValue(this, "staked_usdn_amount") | |
30 | 35 | let totalStakedUSDNNeutrino = getIntegerValue(Address(NEUTRINO), ("rpd_balance_DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p_" + toString(this))) | |
31 | 36 | if (!((totalStakedUSDN == totalStakedUSDNNeutrino))) | |
32 | 37 | then throw("amounts are not matching, check it!!!") | |
33 | 38 | else { | |
34 | 39 | let result = invoke(Address(NEUTRINO), "unlockNeutrino", [totalStakedUSDN, "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"], nil) | |
35 | 40 | if ((result == result)) | |
36 | 41 | then $Tuple2([BooleanEntry("unstaked_usdn", true), IntegerEntry("unstaked_usdn_amount", totalStakedUSDN), IntegerEntry("staked_usdn_amount", 0)], unit) | |
37 | 42 | else throw("Strict value is not equal to itself.") | |
38 | 43 | } | |
39 | 44 | } | |
40 | 45 | ||
41 | 46 |
github/deemru/w8io/786bc32 31.03 ms ◑