2024.01.02 16:01 [3979722] smart account 3PPhMb1VSqi7PATdZMDhrJv9ftXnPSdqWhU > SELF 0.00000000 Waves
{ "type": 13, "id": "96e3qX48FFiA5aUtvR4RTXvSHdk322ryN54ySq1VeQXq", "fee": 200000, "feeAssetId": null, "timestamp": 1704200537430, "version": 1, "sender": "3PPhMb1VSqi7PATdZMDhrJv9ftXnPSdqWhU", "senderPublicKey": "6v2NhNmRMvL6VFUo9SaCjLWdmZV2s343Usu783QAWZVR", "proofs": [ "5rjKza6pHoZ5aaaMdjxtWixK7oYUhVdxv2uRmrXJ3PK8CFRJcagfDrG5krsdKoK6D1SjXoj148HjMdPuBsBfLT2D" ], "script": "base64:BgIECAISAAcABWR1Y2tzCQDMCAICK1ppcEc3V1Y2ak1pMVd4eHo0ZkY5TFJtVVRFNEoyNXZ6dVRQWVh6WDJRMksJAMwIAgIsOGdndE1ZZk0xZUQ0cThZUVZBTkZUUWpZa1d1OVhpREFEeWREenpQZU1oWlkJAMwIAgIsQVl0UG96Q0w5TTNSZGN5VUNSS1BGazVEbndDc3BmR3ZiZU5Rdm00NURuNUMFA25pbAAKZWdnQXNzZXRJZAEgo59/TyNyUdEs4iGSYohNDAvz6iJugdWv/AuTF85tsckAA3JlZgkApwgBASD+Myg5MzYIhgLtSkrAeEwpVBFfUwWZnLxVIKso1sA5AAEFY2xhaW0BBGR1Y2sEBGRBcHACIzNQQUVUVHR1VzdhU2l5S3RuOUd1TUwzUmd0VjF4ZHExbVFXCQD8BwQJAQdBZGRyZXNzAQkA2QQBBQRkQXBwAgtjbGFpbVJld2FyZAkAzAgCBQRkdWNrBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBHVuaXQAwIQ9BQNuaWwBBWNoZWNrAQNwYmsEBnBia19zdAkA2AQBBQNwYmsEBnBvaW50cwkBEUBleHRyTmF0aXZlKDEwNTgpAQIGcG9pbnRzCQEIY29udGFpbnMCBQZwb2ludHMFBnBia19zdAEJaXRlckNsYWltAgNhY2MEZHVjawQDcmV6CQEFY2xhaW0BBQRkdWNrBAckbWF0Y2gwBQNyZXoDCQABAgUHJG1hdGNoMAIOU2NyaXB0VHJhbnNmZXIEAXQFByRtYXRjaDAJAM4IAgUDYWNjCQDMCAIFA3JlegUDbmlsBQNhY2MBCmdldEJhbGFuY2UBB2Fzc2V0SWQEByRtYXRjaDAFB2Fzc2V0SWQDCQABAgUHJG1hdGNoMAIEVW5pdAQBeAUHJG1hdGNoMAgJAO8HAQUEdGhpcwlhdmFpbGFibGUJAPAHAgUEdGhpcwkBBXZhbHVlAQUHYXNzZXRJZAEBaQELRXh0cmFjdEVHR1MAAwkBBWNoZWNrAQgFAWkPY2FsbGVyUHVibGljS2V5BAdiYWxhbmNlCQEKZ2V0QmFsYW5jZQEFCmVnZ0Fzc2V0SWQJAM4IAgoAAiRsBQVkdWNrcwoAAiRzCQCQAwEFAiRsCgAFJGFjYzAFA25pbAoBBSRmMF8xAgIkYQIkaQMJAGcCBQIkaQUCJHMFAiRhCQEJaXRlckNsYWltAgUCJGEJAJEDAgUCJGwFAiRpCgEFJGYwXzICAiRhAiRpAwkAZwIFAiRpBQIkcwUCJGEJAAIBAhNMaXN0IHNpemUgZXhjZWVkcyAzCQEFJGYwXzICCQEFJGYwXzECCQEFJGYwXzECCQEFJGYwXzECBQUkYWNjMAAAAAEAAgADCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFA3JlZgUHYmFsYW5jZQUKZWdnQXNzZXRJZAUDbmlsCQACAQIgUHJpdmF0ZSBGYXJtLiBBY2Nlc3MgcHJvaGliaXRlZCEBAnR4AQZ2ZXJpZnkACQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V591Ag5Q==", "chainId": 87, "height": 3979722, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 6 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let ducks = ["ZipG7WV6jMi1Wxxz4fF9LRmUTE4J25vzuTPYXzX2Q2K", "8ggtMYfM1eD4q8YQVANFTQjYkWu9XiDADydDzzPeMhZY", "AYtPozCL9M3RdcyUCRKPFk5DnwCspfGvbeNQvm45Dn5C"] | |
5 | + | ||
6 | + | let eggAssetId = base58'C1iWsKGqLwjHUndiQ7iXpdmPum9PeCDFfyXBdJJosDRS' | |
7 | + | ||
8 | + | let ref = addressFromPublicKey(base58'J7HoLLExGYaDAzvcuELhjosVcLXBTfCwrYgpPB9VwSDM') | |
9 | + | ||
10 | + | func claim (duck) = { | |
11 | + | let dApp = "3PAETTtuW7aSiyKtn9GuML3RgtV1xdq1mQW" | |
12 | + | invoke(Address(fromBase58String(dApp)), "claimReward", [duck], [AttachedPayment(unit, 1000000)]) | |
13 | + | } | |
14 | + | ||
15 | + | ||
16 | + | func check (pbk) = { | |
17 | + | let pbk_st = toBase58String(pbk) | |
18 | + | let points = getStringValue("points") | |
19 | + | contains(points, pbk_st) | |
20 | + | } | |
21 | + | ||
22 | + | ||
23 | + | func iterClaim (acc,duck) = { | |
24 | + | let rez = claim(duck) | |
25 | + | match rez { | |
26 | + | case t: ScriptTransfer => | |
27 | + | (acc ++ [rez]) | |
28 | + | case _ => | |
29 | + | acc | |
30 | + | } | |
31 | + | } | |
32 | + | ||
33 | + | ||
34 | + | func getBalance (assetId) = match assetId { | |
35 | + | case x: Unit => | |
36 | + | wavesBalance(this).available | |
37 | + | case _ => | |
38 | + | assetBalance(this, value(assetId)) | |
39 | + | } | |
40 | + | ||
41 | + | ||
42 | + | @Callable(i) | |
43 | + | func ExtractEGGS () = if (check(i.callerPublicKey)) | |
44 | + | then { | |
45 | + | let balance = getBalance(eggAssetId) | |
46 | + | ({ | |
47 | + | let $l = ducks | |
48 | + | let $s = size($l) | |
49 | + | let $acc0 = nil | |
50 | + | func $f0_1 ($a,$i) = if (($i >= $s)) | |
51 | + | then $a | |
52 | + | else iterClaim($a, $l[$i]) | |
53 | + | ||
54 | + | func $f0_2 ($a,$i) = if (($i >= $s)) | |
55 | + | then $a | |
56 | + | else throw("List size exceeds 3") | |
57 | + | ||
58 | + | $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3) | |
59 | + | } ++ [ScriptTransfer(ref, balance, eggAssetId)]) | |
60 | + | } | |
61 | + | else throw("Private Farm. Access prohibited!") | |
62 | + | ||
63 | + | ||
64 | + | @Verifier(tx) | |
65 | + | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
66 | + |
github/deemru/w8io/786bc32 14.88 ms ◑