tx · 5WFLP45pRRKXhTJ51By8cW9kHxYPtuXL7RamCBvs7JSc 3PDNDN5TEpuEtuyr42KhLK6yETJGbCqHrad: -0.00600000 Waves 2022.12.07 18:02 [3415537] smart account 3PDNDN5TEpuEtuyr42KhLK6yETJGbCqHrad > SELF 0.00000000 Waves
{ "type": 13, "id": "5WFLP45pRRKXhTJ51By8cW9kHxYPtuXL7RamCBvs7JSc", "fee": 600000, "feeAssetId": null, "timestamp": 1670425372254, "version": 1, "sender": "3PDNDN5TEpuEtuyr42KhLK6yETJGbCqHrad", "senderPublicKey": "G6M6v6gudSJnouyzajDGPJBiBNe5792bdRnKjEjh9zHc", "proofs": [ "2DrsEdaTZr4XEDzv5UDDb8Ps7DTBRigB425HspGgunyouUeFRjWS96nZR2gAFn81tkWbwx11pe1S1H5vucLaop3K" ], "script": "base64:BgIHCAISAwoBCAYADGFkbWluQWRkcmVzcwkBB0FkZHJlc3MBARoBVzQU33FERt8wVNH3uJxzRQyrOiubTY4mYQAFYWRkcjEJAQdBZGRyZXNzAQEaAVeF1/BTmc1tqXvs1OvwVq6iYumbiKK85OEABWFkZHIyCQEHQWRkcmVzcwEBGgFX8d6LMZHDM7Cc+zTD0M7n87pB5IqpqMkPAAVhZGRyMwkBB0FkZHJlc3MBARoBV3QenFqbMpW7eZZfUcrriYpef7vXF8iZ+wAFYWRkcjQJAQdBZGRyZXNzAQEaAVfKpL1JlihY2W6DrcoXfWlH7WEbuxbgtO0ABWFkZHI1CQEHQWRkcmVzcwEBGgFXRbRt47Ecc7Tx6HpzE2rNZY3mjr1tEPbhAQFpAQdkZWZhdWx0AQRhZGRyAwkBAiE9AggFAWkMb3JpZ2luQ2FsbGVyBQxhZG1pbkFkZHJlc3MJAAIBAhFvbmx5IGFkbWluIGNhbiBkbwQBaAUGaGVpZ2h0BAVlcG9jaAkAaAIJAGkCBQFoAKALAKALBANrZXkJAKwCAgkArAICAjN0b3RhbF9ERzJ4RmtQZER3S1VvQmt6R0FoUXRMcFNHemZYTGlDWVBFemVLSDJBZDI0cF8JAKQDAQUFZXBvY2gCF193aXRoZHJhd25fd2l0aGluX2Vwb2NoBAl3aXRoZHJhd24JAQt2YWx1ZU9yRWxzZQIJAJoIAgkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BLWms1VGRQQ0xQMkdadmlpcExGZks0NkV4VG53a1JDQmQFA2tleQAABAttYXhXaXRoZHJhdwkBC3ZhbHVlT3JFbHNlAgkAmggCBQR0aGlzAgNtYXgAgMivoCUDCQBmAgULbWF4V2l0aGRyYXcJAGQCBQl3aXRoZHJhd24AgOHrFwQEaW52MQkA/AcEBQVhZGRyMQIIdXNkbl8xMDAJAMwIAgABBQNuaWwFA25pbAMJAAACBQRpbnYxBQRpbnYxBARpbnYyCQD8BwQFBWFkZHIyAgh1c2RuXzEwMAkAzAgCAAIFA25pbAUDbmlsAwkAAAIFBGludjIFBGludjIEBGludjMJAPwHBAUFYWRkcjMCCHVzZG5fMTAwCQDMCAIAAwUDbmlsBQNuaWwDCQAAAgUEaW52MwUEaW52MwQEaW52NAkA/AcEBQVhZGRyNAIIdXNkbl8xMDAJAMwIAgAEBQNuaWwFA25pbAMJAAACBQRpbnY0BQRpbnY0BARpbnY1CQD8BwQFBWFkZHI1Agh1c2RuXzEwMAkAzAgCAAUFA25pbAUDbmlsAwkAAAIFBGludjUFBGludjUFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgEJAKwCAgILd2l0aGRyYXduOiAJAKQDAQUJd2l0aGRyYXduAP6kQnI=", "chainId": 87, "height": 3415537, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: RgWL5VU31AJ4r5o4wMp2hdPkXNDmg9PNfnbHSMXpWk4 Next: 6cXaKtivGKt6Y8bwjUcZM5mzxs2qEeKXu1Fpa1S9Lfpq 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'3PE8bHSzQCC34GkqEpwxTqWAtAVCGwWfAXJ') | |
9 | 7 | ||
10 | - | let | |
8 | + | let addr2 = Address(base58'3PPynB5yMWoyhJwbYUTV5Ut5Jav7djghrAr') | |
11 | 9 | ||
12 | - | let | |
10 | + | let addr3 = Address(base58'3PCWsnNVV9AbeEYpGLXcjNk8x798kjyqeUi') | |
13 | 11 | ||
14 | - | ||
12 | + | let addr4 = Address(base58'3PLQNaHoY4Rc5atPp8nctWC2gpiesJBjHSt') | |
15 | 13 | ||
14 | + | let addr5 = Address(base58'3P8HTVvisgArBhtpFNq9y9HxDzxLWzfHuBE') | |
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 33.88 ms ◑