tx · 4s9GUbBA94MyytSu9qzUye5UUa3H9rNa3EBsU9JFjgvj 3P63onbRW4R2To8TLWjSjGCioQsn3CQ3su3: -0.00600000 Waves 2022.12.07 18:02 [3415537] smart account 3P63onbRW4R2To8TLWjSjGCioQsn3CQ3su3 > SELF 0.00000000 Waves
{ "type": 13, "id": "4s9GUbBA94MyytSu9qzUye5UUa3H9rNa3EBsU9JFjgvj", "fee": 600000, "feeAssetId": null, "timestamp": 1670425372831, "version": 1, "sender": "3P63onbRW4R2To8TLWjSjGCioQsn3CQ3su3", "senderPublicKey": "Gdin228Zqpd4ej536tzXQEVCDzJ7ZVkdPzDDXvtFaoVb", "proofs": [ "4z7wGo5Xx2EDta3Kw7okgQaCCGVNpqcpfcXm1BNU4PArSYoCMkmn8bLBsqZWykNqP8ntZCcwaVEPVKKbYCJwDbEf" ], "script": "base64:BgIHCAISAwoBCAYADGFkbWluQWRkcmVzcwkBB0FkZHJlc3MBARoBVzQU33FERt8wVNH3uJxzRQyrOiubTY4mYQAFYWRkcjEJAQdBZGRyZXNzAQEaAVcPiUwnubhfVnP13wpFhqD2FD5SQj7AqvMABWFkZHIyCQEHQWRkcmVzcwEBGgFXhwdCqg2agk0H2f8dwXae+8DHKKPMm92wAAVhZGRyMwkBB0FkZHJlc3MBARoBV2q+g5VoE1cBi6trApfFU8gY8vUuOGIcNwAFYWRkcjQJAQdBZGRyZXNzAQEaAVdn3BU83ejyubjCqO4Kjy1ae5msJj65GLMABWFkZHI1CQEHQWRkcmVzcwEBGgFXd0oaePpWnyC9rqslSYbDdcFT6X2LWiq6AQFpAQdkZWZhdWx0AQRhZGRyAwkBAiE9AggFAWkMb3JpZ2luQ2FsbGVyBQxhZG1pbkFkZHJlc3MJAAIBAhFvbmx5IGFkbWluIGNhbiBkbwQBaAUGaGVpZ2h0BAVlcG9jaAkAaAIJAGkCBQFoAKALAKALBANrZXkJAKwCAgkArAICAjN0b3RhbF9ERzJ4RmtQZER3S1VvQmt6R0FoUXRMcFNHemZYTGlDWVBFemVLSDJBZDI0cF8JAKQDAQUFZXBvY2gCF193aXRoZHJhd25fd2l0aGluX2Vwb2NoBAl3aXRoZHJhd24JAQt2YWx1ZU9yRWxzZQIJAJoIAgkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BLWms1VGRQQ0xQMkdadmlpcExGZks0NkV4VG53a1JDQmQFA2tleQAABAttYXhXaXRoZHJhdwkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzAgNtYXgAgMivoCUDCQBmAgULbWF4V2l0aGRyYXcJAGQCBQl3aXRoZHJhd24AgOHrFwQEaW52MQkA/AcEBQVhZGRyMQIIdXNkbl8xMDAJAMwIAgABBQNuaWwFA25pbAMJAAACBQRpbnYxBQRpbnYxBARpbnYyCQD8BwQFBWFkZHIyAgh1c2RuXzEwMAkAzAgCAAIFA25pbAUDbmlsAwkAAAIFBGludjIFBGludjIEBGludjMJAPwHBAUFYWRkcjMCCHVzZG5fMTAwCQDMCAIAAwUDbmlsBQNuaWwDCQAAAgUEaW52MwUEaW52MwQEaW52NAkA/AcEBQVhZGRyNAIIdXNkbl8xMDAJAMwIAgAEBQNuaWwFA25pbAMJAAACBQRpbnY0BQRpbnY0BARpbnY1CQD8BwQFBWFkZHI1Agh1c2RuXzEwMAkAzAgCAAUFA25pbAUDbmlsAwkAAAIFBGludjUFBGludjUFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgEJAKwCAgILd2l0aGRyYXduOiAJAKQDAQUJd2l0aGRyYXduAIxPQAY=", "chainId": 87, "height": 3415537, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 2zczieHnakaQx1rV2SLvNXEc2JorEygYn6sWUa42jbPC Next: 7P7uKnBPw5pNGxGTD5cyfjVra6TpVpu1Gsvj6grt55uE Full:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | - | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
5 | - | ||
6 | 4 | let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC') | |
7 | 5 | ||
8 | - | let | |
6 | + | let addr1 = Address(base58'3P3M3LiiJiG2E41UjGJgrA2K3Yfx3aJm3cn') | |
9 | 7 | ||
10 | - | let | |
8 | + | let addr2 = Address(base58'3PEErec4fVufcMqz13HeTRKXg6LFKhPxv8o') | |
11 | 9 | ||
12 | - | let | |
10 | + | let addr3 = Address(base58'3PBfJaj1BQcBseVjGeUWTRKNigZmfbG8tUe') | |
13 | 11 | ||
14 | - | ||
12 | + | let addr4 = Address(base58'3PBQ3ydu3qpDkrfai3TCE8DyY7osbdqnALS') | |
15 | 13 | ||
14 | + | let addr5 = Address(base58'3PCodusNGq7ssKfRMWjLJf9fWawGfq9TpGh') | |
16 | 15 | ||
17 | 16 | @Callable(i) | |
18 | - | func | |
17 | + | func default (addr) = if ((i.originCaller != adminAddress)) | |
19 | 18 | then throw("only admin can do") | |
20 | 19 | else { | |
21 | - | let amount = i.payments[0].amount | |
22 | - | let inv1 = invoke(viresMainAddress, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, amount)]) | |
23 | - | if ((inv1 == inv1)) | |
24 | - | then nil | |
25 | - | else throw("Strict value is not equal to itself.") | |
26 | - | } | |
27 | - | ||
28 | - | ||
29 | - | ||
30 | - | @Callable(i) | |
31 | - | func usdn_100 (amount) = if ((i.originCaller != adminAddress)) | |
32 | - | then throw("only admin can do") | |
33 | - | else { | |
34 | - | let usdnAmountOnStart = assetBalance(this, USDN) | |
35 | - | if ((usdnAmountOnStart == usdnAmountOnStart)) | |
20 | + | let h = height | |
21 | + | let epoch = ((h / 1440) * 1440) | |
22 | + | let key = (("total_DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p_" + toString(epoch)) + "_withdrawn_within_epoch") | |
23 | + | let withdrawn = valueOrElse(getInteger(addressFromStringValue("3PKZk5TdPCLP2GZviipLFfK46ExTnwkRCBd"), key), 0) | |
24 | + | let maxWithdraw = valueOrElse(getInteger(this, "max"), 10000000000) | |
25 | + | if ((maxWithdraw > (withdrawn + 50000000))) | |
36 | 26 | then { | |
37 | - | let | |
38 | - | if (( | |
27 | + | let inv1 = invoke(addr1, "usdn_100", [1], nil) | |
28 | + | if ((inv1 == inv1)) | |
39 | 29 | then { | |
40 | - | let | |
41 | - | if (( | |
30 | + | let inv2 = invoke(addr2, "usdn_100", [2], nil) | |
31 | + | if ((inv2 == inv2)) | |
42 | 32 | then { | |
43 | - | let usdnAmountAfterWithdraw = assetBalance(this, USDN) | |
44 | - | if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw)) | |
45 | - | then [ScriptTransfer(meAddress, usdnAmountAfterWithdraw, USDN)] | |
33 | + | let inv3 = invoke(addr3, "usdn_100", [3], nil) | |
34 | + | if ((inv3 == inv3)) | |
35 | + | then { | |
36 | + | let inv4 = invoke(addr4, "usdn_100", [4], nil) | |
37 | + | if ((inv4 == inv4)) | |
38 | + | then { | |
39 | + | let inv5 = invoke(addr5, "usdn_100", [5], nil) | |
40 | + | if ((inv5 == inv5)) | |
41 | + | then nil | |
42 | + | else throw("Strict value is not equal to itself.") | |
43 | + | } | |
44 | + | else throw("Strict value is not equal to itself.") | |
45 | + | } | |
46 | 46 | else throw("Strict value is not equal to itself.") | |
47 | 47 | } | |
48 | 48 | else throw("Strict value is not equal to itself.") | |
49 | 49 | } | |
50 | 50 | else throw("Strict value is not equal to itself.") | |
51 | 51 | } | |
52 | - | else throw(" | |
52 | + | else throw(("withdrawn: " + toString(withdrawn))) | |
53 | 53 | } | |
54 | 54 | ||
55 | - | ||
56 | - | @Verifier(tx) | |
57 | - | func verify () = if (getSign()) | |
58 | - | then true | |
59 | - | else sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
60 | 55 |
github/deemru/w8io/3ef1775 25.80 ms ◑