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