tx · 2ZafZ1DXb1sVZsqEi9C6NZ3i7PsdJ9Fox1PtRjTU4ik3 3P5SbGi5tH4DwWJJiBxzM61JQ1hY2EBgZE2: -0.01000000 Waves 2023.01.01 01:37 [3450546] smart account 3P5SbGi5tH4DwWJJiBxzM61JQ1hY2EBgZE2 > SELF 0.00000000 Waves
{ "type": 13, "id": "2ZafZ1DXb1sVZsqEi9C6NZ3i7PsdJ9Fox1PtRjTU4ik3", "fee": 1000000, "feeAssetId": null, "timestamp": 1672526235450, "version": 2, "chainId": 87, "sender": "3P5SbGi5tH4DwWJJiBxzM61JQ1hY2EBgZE2", "senderPublicKey": "2PiJubyjPG4mfEa83Xj5fnaB816mCicBaahAZ6EmfkwD", "proofs": [ "2XUzQzkHFXGke9n7SvokQgvcZwysdwBscmcNLNzgCmVi1BagqGkGFysFCg684D3hqwbG1tkmYJnXM6DsoDtF1Xeo" ], "script": "base64:BgIGCAISABIABgAMZGVzdFJlY2VpdmVyCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUE1uMWc0b0VkNnE2RngyekV6czhFQmJzUkhhQ1RVU3dUZAAFYWRkcjEJAQdBZGRyZXNzAQEaAVedDBk7phxo7iNeb7THtJyrc05SzSS6FDkABWFkZHIyCQEHQWRkcmVzcwEBGgFX+rpr8an0bCgp0ejaK3vm3XmfW4EgSTK1AAVhZGRyMwkBB0FkZHJlc3MBARoBV962eq3L5xdQ9VTerzKjw5fNzTAIjD/ANAAFYWRkcjQJAQdBZGRyZXNzAQEaAVfZtJHOfy+QKeB7IgkejgMdmeiAOCxa47gABFVTRE4BILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRAgFpARV3eXBsYXRhX3Zlc3RpbmdfY2xhaW0ABARpbnYxCQD8BwQFBWFkZHIxAhB3aXRoZHJhd0FuZENsYWltBQNuaWwFA25pbAMJAAACBQRpbnYxBQRpbnYxBARpbnYyCQD8BwQFBWFkZHIyAhB3aXRoZHJhd0FuZENsYWltBQNuaWwFA25pbAMJAAACBQRpbnYyBQRpbnYyBARpbnYzCQD8BwQFBWFkZHIzAhB3aXRoZHJhd0FuZENsYWltBQNuaWwFA25pbAMJAAACBQRpbnYzBQRpbnYzBARpbnY0CQD8BwQFBWFkZHI0AhB3aXRoZHJhd0FuZENsYWltBQNuaWwFA25pbAMJAAACBQRpbnY0BQRpbnY0CQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFDGRlc3RSZWNlaXZlcgkA8AcCBQR0aGlzBQRVU0ROBQRVU0ROBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQENY2xhaW1fbmFncm9keQAEBGludjEJAPwHBAUFYWRkcjECDGNsYWltUmV3YXJkcwUDbmlsBQNuaWwDCQAAAgUEaW52MQUEaW52MQQEaW52MgkA/AcEBQVhZGRyMgIMY2xhaW1SZXdhcmRzBQNuaWwFA25pbAMJAAACBQRpbnYyBQRpbnYyBARpbnYzCQD8BwQFBWFkZHIzAgxjbGFpbVJld2FyZHMFA25pbAUDbmlsAwkAAAIFBGludjMFBGludjMEBGludjQJAPwHBAUFYWRkcjQCDGNsYWltUmV3YXJkcwUDbmlsBQNuaWwDCQAAAgUEaW52NAUEaW52NAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQxkZXN0UmVjZWl2ZXIJAPAHAgUEdGhpcwUEVVNETgUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAQHJG1hdGNoMAUCdHgDCQABAgUHJG1hdGNoMAIXSW52b2tlU2NyaXB0VHJhbnNhY3Rpb24EA2ludgUHJG1hdGNoMAMDCQAAAgkApAgBCAUDaW52BGRBcHAFBHRoaXMJAGcCAMG6mQYIBQNpbnYDZmVlBwYJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXksyWTk", "height": 3450546, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4hh76z69RnyaZaiYGizb71BoNWodKU88NXJiSd9xucLk Next: HxqM3VTPZ886c5ACaHjtyDxbHNdYRrUtCnquQ4i5mTnS Diff:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let destReceiver = addressFromStringValue("3PMn1g4oEd6q6Fx2zEzs8EBbsRHaCTUSwTd") | |
5 | + | ||
4 | 6 | let addr1 = Address(base58'3PGFHJzBtVjFBdzUDtaZRdykEbwzjy1ZtEU') | |
5 | 7 | ||
6 | 8 | let addr2 = Address(base58'3PQncz1Q2oJ1Wbkw3kthFFhhEWC8jq6UoHN') | |
24 | 26 | then { | |
25 | 27 | let inv4 = invoke(addr4, "withdrawAndClaim", nil, nil) | |
26 | 28 | if ((inv4 == inv4)) | |
27 | - | then | |
29 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
28 | 30 | else throw("Strict value is not equal to itself.") | |
29 | 31 | } | |
30 | 32 | else throw("Strict value is not equal to itself.") | |
49 | 51 | then { | |
50 | 52 | let inv4 = invoke(addr4, "claimRewards", nil, nil) | |
51 | 53 | if ((inv4 == inv4)) | |
52 | - | then | |
54 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
53 | 55 | else throw("Strict value is not equal to itself.") | |
54 | 56 | } | |
55 | 57 | else throw("Strict value is not equal to itself.") | |
60 | 62 | } | |
61 | 63 | ||
62 | 64 | ||
65 | + | @Verifier(tx) | |
66 | + | func verify () = match tx { | |
67 | + | case inv: InvokeScriptTransaction => | |
68 | + | if (if ((addressFromRecipient(inv.dApp) == this)) | |
69 | + | then (13000001 >= inv.fee) | |
70 | + | else false) | |
71 | + | then true | |
72 | + | else sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
73 | + | case _ => | |
74 | + | sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
75 | + | } | |
76 | + |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let destReceiver = addressFromStringValue("3PMn1g4oEd6q6Fx2zEzs8EBbsRHaCTUSwTd") | |
5 | + | ||
4 | 6 | let addr1 = Address(base58'3PGFHJzBtVjFBdzUDtaZRdykEbwzjy1ZtEU') | |
5 | 7 | ||
6 | 8 | let addr2 = Address(base58'3PQncz1Q2oJ1Wbkw3kthFFhhEWC8jq6UoHN') | |
7 | 9 | ||
8 | 10 | let addr3 = Address(base58'3PNEVLiBDia7cLJYZFqYvevAQTEWKxCBiNF') | |
9 | 11 | ||
10 | 12 | let addr4 = Address(base58'3PMn1g4oEd6q6Fx2zEzs8EBbsRHaCTUSwTd') | |
11 | 13 | ||
12 | 14 | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
13 | 15 | ||
14 | 16 | @Callable(i) | |
15 | 17 | func wyplata_vesting_claim () = { | |
16 | 18 | let inv1 = invoke(addr1, "withdrawAndClaim", nil, nil) | |
17 | 19 | if ((inv1 == inv1)) | |
18 | 20 | then { | |
19 | 21 | let inv2 = invoke(addr2, "withdrawAndClaim", nil, nil) | |
20 | 22 | if ((inv2 == inv2)) | |
21 | 23 | then { | |
22 | 24 | let inv3 = invoke(addr3, "withdrawAndClaim", nil, nil) | |
23 | 25 | if ((inv3 == inv3)) | |
24 | 26 | then { | |
25 | 27 | let inv4 = invoke(addr4, "withdrawAndClaim", nil, nil) | |
26 | 28 | if ((inv4 == inv4)) | |
27 | - | then | |
29 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
28 | 30 | else throw("Strict value is not equal to itself.") | |
29 | 31 | } | |
30 | 32 | else throw("Strict value is not equal to itself.") | |
31 | 33 | } | |
32 | 34 | else throw("Strict value is not equal to itself.") | |
33 | 35 | } | |
34 | 36 | else throw("Strict value is not equal to itself.") | |
35 | 37 | } | |
36 | 38 | ||
37 | 39 | ||
38 | 40 | ||
39 | 41 | @Callable(i) | |
40 | 42 | func claim_nagrody () = { | |
41 | 43 | let inv1 = invoke(addr1, "claimRewards", nil, nil) | |
42 | 44 | if ((inv1 == inv1)) | |
43 | 45 | then { | |
44 | 46 | let inv2 = invoke(addr2, "claimRewards", nil, nil) | |
45 | 47 | if ((inv2 == inv2)) | |
46 | 48 | then { | |
47 | 49 | let inv3 = invoke(addr3, "claimRewards", nil, nil) | |
48 | 50 | if ((inv3 == inv3)) | |
49 | 51 | then { | |
50 | 52 | let inv4 = invoke(addr4, "claimRewards", nil, nil) | |
51 | 53 | if ((inv4 == inv4)) | |
52 | - | then | |
54 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
53 | 55 | else throw("Strict value is not equal to itself.") | |
54 | 56 | } | |
55 | 57 | else throw("Strict value is not equal to itself.") | |
56 | 58 | } | |
57 | 59 | else throw("Strict value is not equal to itself.") | |
58 | 60 | } | |
59 | 61 | else throw("Strict value is not equal to itself.") | |
60 | 62 | } | |
61 | 63 | ||
62 | 64 | ||
65 | + | @Verifier(tx) | |
66 | + | func verify () = match tx { | |
67 | + | case inv: InvokeScriptTransaction => | |
68 | + | if (if ((addressFromRecipient(inv.dApp) == this)) | |
69 | + | then (13000001 >= inv.fee) | |
70 | + | else false) | |
71 | + | then true | |
72 | + | else sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
73 | + | case _ => | |
74 | + | sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
75 | + | } | |
76 | + |
github/deemru/w8io/6500d08 40.63 ms ◑