tx · 9WV1MisXfnE3DJefCfK7RUJ7LaCzbd8YaqqUM167WEbB 3PH472nrAuJ2uAJ15NbTeBjg9yg8RMvekHo: -0.00300000 Waves 2022.08.02 10:08 [3232066] smart account 3PH472nrAuJ2uAJ15NbTeBjg9yg8RMvekHo > SELF 0.00000000 Waves
{ "type": 13, "id": "9WV1MisXfnE3DJefCfK7RUJ7LaCzbd8YaqqUM167WEbB", "fee": 300000, "feeAssetId": null, "timestamp": 1659424159738, "version": 2, "chainId": 87, "sender": "3PH472nrAuJ2uAJ15NbTeBjg9yg8RMvekHo", "senderPublicKey": "7VzqBmVAG13627ftxb1zVwUzorUojtA7Zv7Uq6Avtopr", "proofs": [ "4GVJFvtVsMEwJQb7tjhQkun1rUciqP8641L94drcezJzDF9KXKwbzQi1X1HQGJRvFwGEfAy59Pvf8Z3o83WDvf7h" ], "script": "base64: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", "height": 3232066, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GjJ2UHqr9u5iJJie326GvxATUKUQJRvZG4MSKRv7t6Th Next: none Diff:
Old | New | Differences | |
---|---|---|---|
26 | 26 | let deserved = (20 * share) | |
27 | 27 | let ENNObalance = assetBalance(sender, ENNO) | |
28 | 28 | let WXbalance = assetBalance(sender, WX) | |
29 | - | | |
29 | + | if (if (if (if ((amount > 0)) | |
30 | 30 | then (totalAmount > 0) | |
31 | 31 | else false) | |
32 | 32 | then !(check) | |
33 | 33 | else false) | |
34 | 34 | then (ENNObalance > 0) | |
35 | - | else false) | |
36 | - | then (WXbalance > 0) | |
37 | 35 | else false) | |
38 | 36 | then throw(("deservedENNO" + toString(deserved))) | |
39 | 37 | else throw("you are not able to claim") |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let oracle = Address(base58'3PCZbz9o5YfWtK36j3tFcM8E1DUa9d7MyXS') | |
5 | 5 | ||
6 | 6 | let ENNO = base58'7LMV3s1J4dKpMQZqge5sKYoFkZRLojnnU49aerqos4yg' | |
7 | 7 | ||
8 | 8 | let WX = base58'Atqv59EYzjFGuitKVnMRk6H8FukjoV3ktPorbEys25on' | |
9 | 9 | ||
10 | 10 | let sender = Address(base58'3P27h7vAWPyP3Stzpeff1feg1YHqRjUShkj') | |
11 | 11 | ||
12 | 12 | let session = 1 | |
13 | 13 | ||
14 | 14 | @Callable(i) | |
15 | 15 | func claim () = { | |
16 | 16 | let enno_prize = 200000000000 | |
17 | 17 | let wx_prize = 200000000000 | |
18 | 18 | let currentKey = toBase58String(i.caller.bytes) | |
19 | 19 | let voteKey = ((("%s%s%s%s%d__vote__7LMV3s1J4dKpMQZqge5sKYoFkZRLojnnU49aerqos4yg__DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p__" + currentKey) + "__") + toString(session)) | |
20 | 20 | let totalVote = ("%s%s%s%d__votingResult__7LMV3s1J4dKpMQZqge5sKYoFkZRLojnnU49aerqos4yg__DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p__" + toString(session)) | |
21 | 21 | let amount = valueOrElse(getInteger(oracle, voteKey), 0) | |
22 | 22 | let totalAmount = valueOrElse(getInteger(oracle, totalVote), 0) | |
23 | 23 | let checkKey = ((currentKey + "_claimed_") + toString(session)) | |
24 | 24 | let check = valueOrElse(getBoolean(this, checkKey), false) | |
25 | 25 | let share = fraction(amount, 10000000000, totalAmount) | |
26 | 26 | let deserved = (20 * share) | |
27 | 27 | let ENNObalance = assetBalance(sender, ENNO) | |
28 | 28 | let WXbalance = assetBalance(sender, WX) | |
29 | - | | |
29 | + | if (if (if (if ((amount > 0)) | |
30 | 30 | then (totalAmount > 0) | |
31 | 31 | else false) | |
32 | 32 | then !(check) | |
33 | 33 | else false) | |
34 | 34 | then (ENNObalance > 0) | |
35 | - | else false) | |
36 | - | then (WXbalance > 0) | |
37 | 35 | else false) | |
38 | 36 | then throw(("deservedENNO" + toString(deserved))) | |
39 | 37 | else throw("you are not able to claim") | |
40 | 38 | } | |
41 | 39 | ||
42 | 40 | ||
43 | 41 | ||
44 | 42 | @Callable(i) | |
45 | 43 | func claimArchive (session) = { | |
46 | 44 | let currentKey = toBase58String(i.caller.bytes) | |
47 | 45 | let voteKey = ((("%s%s%s%s%d__vote__7LMV3s1J4dKpMQZqge5sKYoFkZRLojnnU49aerqos4yg__DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p__" + currentKey) + "__") + toString(session)) | |
48 | 46 | let totalVote = ("%s%s%s%d__votingResult__7LMV3s1J4dKpMQZqge5sKYoFkZRLojnnU49aerqos4yg__DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p__" + toString(session)) | |
49 | 47 | let amount = valueOrElse(getInteger(oracle, voteKey), 0) | |
50 | 48 | let totalAmount = valueOrElse(getInteger(oracle, totalVote), 0) | |
51 | 49 | let checkKey = ((currentKey + "_claimed_") + toString(session)) | |
52 | 50 | let check = valueOrElse(getBoolean(this, checkKey), false) | |
53 | 51 | if ((session == 0)) | |
54 | 52 | then if (if (if ((amount > 0)) | |
55 | 53 | then (totalAmount > 0) | |
56 | 54 | else false) | |
57 | 55 | then !(check) | |
58 | 56 | else false) | |
59 | 57 | then { | |
60 | 58 | let share = fraction(amount, 10000000000, totalAmount) | |
61 | 59 | let deserved = (20 * share) | |
62 | 60 | [BooleanEntry(checkKey, true), ScriptTransfer(i.caller, deserved, ENNO)] | |
63 | 61 | } | |
64 | 62 | else throw("you are not able to claim") | |
65 | 63 | else throw("invalid session") | |
66 | 64 | } | |
67 | 65 | ||
68 | 66 |
github/deemru/w8io/6500d08 29.44 ms ◑