tx · BU8m5aufV8a8PKnbSgKDdbSEeSXhq34APAaeK4mSg4D5 3P6Z5U1CKEtdTxtihHT4KKGFpXLoa6y5j9N: -0.01000000 Waves 2022.11.24 17:05 [3396737] smart account 3P6Z5U1CKEtdTxtihHT4KKGFpXLoa6y5j9N > SELF 0.00000000 Waves
{ "type": 13, "id": "BU8m5aufV8a8PKnbSgKDdbSEeSXhq34APAaeK4mSg4D5", "fee": 1000000, "feeAssetId": null, "timestamp": 1669298795529, "version": 2, "chainId": 87, "sender": "3P6Z5U1CKEtdTxtihHT4KKGFpXLoa6y5j9N", "senderPublicKey": "3CFXXBUVYzUtCVMNQ8DrRZJpg1bUQXThEwzkX3iW9sNA", "proofs": [ "3vuW5zbba2a8Cqb7UK8GpHLtFsfvF2dGAtuLMo8GjfeR1WJA66UUYBDQwg7K5wnCsgVodX8XxJFCjUQcz3LABRd5" ], "script": "base64:BgIICAISABIAEgAEAAxkZXN0UmVjZWl2ZXIJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQTjJhSzVlWGlSOUZlOUtRTXdrWlB6OVdTVTJRSFR4Z1dVAAd2ZXN0aW5nCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUENidlBWUWZTdlZ1ODhpcDhGbTVZandKaGpFWWsxVHhoawAHcmV3YXJkcwkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BLWms1VGRQQ0xQMkdadmlpcExGZks0NkV4VG53a1JDQmQABFVTRE4BILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRAwFpARV3aXRoZHJhd1Zlc3RlZEFsbFVTRE4ABAFyCQD8BwQFB3Zlc3RpbmcCFXdpdGhkcmF3VmVzdGVkQWxsVVNETgkAzAgCBwkAzAgCBgUDbmlsBQNuaWwDCQAAAgUBcgUBcgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQxkZXN0UmVjZWl2ZXIJAPAHAgUEdGhpcwUEVVNETgUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBDGNsYWltUmV3YXJkcwAEAXIJAPwHBAUHcmV3YXJkcwIMY2xhaW1SZXdhcmRzBQNuaWwFA25pbAMJAAACBQFyBQFyCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFDGRlc3RSZWNlaXZlcgkA8AcCBQR0aGlzBQRVU0ROBQRVU0ROBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEQd2l0aGRyYXdBbmRDbGFpbQAEAnIxCQD8BwQFB3Zlc3RpbmcCFXdpdGhkcmF3VmVzdGVkQWxsVVNETgkAzAgCBwkAzAgCBgUDbmlsBQNuaWwDCQAAAgUCcjEFAnIxBAJyMgkA/AcEBQdyZXdhcmRzAgxjbGFpbVJld2FyZHMFA25pbAUDbmlsAwkAAAIFAnIyBQJyMgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQxkZXN0UmVjZWl2ZXIJAPAHAgUEdGhpcwUEVVNETgUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAFtg4xw=", "height": 3396737, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CDtQRhMAKALKmzG3vGsxtq7n1j2yZ7RoewkypzwnUc9c Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | {-# STDLIB_VERSION | |
1 | + | {-# STDLIB_VERSION 6 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | - | let | |
4 | + | let destReceiver = addressFromStringValue("3PN2aK5eXiR9Fe9KQMwkZPz9WSU2QHTxgWU") | |
5 | 5 | ||
6 | - | let | |
6 | + | let vesting = addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk") | |
7 | 7 | ||
8 | - | let | |
8 | + | let rewards = addressFromStringValue("3PKZk5TdPCLP2GZviipLFfK46ExTnwkRCBd") | |
9 | 9 | ||
10 | - | let assetStringUSDC = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ" | |
11 | - | ||
12 | - | let reserveUSDC = addressFromStringValue("3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S") | |
13 | - | ||
14 | - | let devWallet = addressFromStringValue("3PHyLKCgrgGJFKhrMhH2RxFK9gVtjh8nqjY") | |
10 | + | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
15 | 11 | ||
16 | 12 | @Callable(i) | |
17 | - | func withdrawUSDC (minAmount,maxAmount) = { | |
18 | - | let reserveBalance = assetBalance(reserveUSDC, fromBase58String(assetStringUSDC)) | |
19 | - | if ((reserveBalance >= minAmount)) | |
20 | - | then { | |
21 | - | let withdrawAmount = if ((reserveBalance > maxAmount)) | |
22 | - | then maxAmount | |
23 | - | else reserveBalance | |
24 | - | let withdrawnAmount = { | |
25 | - | let @ = invoke(main, "withdraw", [assetStringUSDC, withdrawAmount], nil) | |
26 | - | if ($isInstanceOf(@, "Int")) | |
27 | - | then @ | |
28 | - | else throw("Couldn't cast Any to Int") | |
29 | - | } | |
30 | - | if ((withdrawnAmount == withdrawnAmount)) | |
31 | - | then { | |
32 | - | let r = ScriptTransfer(devWallet, (withdrawnAmount / 25), fromBase58String(assetStringUSDC)) | |
33 | - | if ((r == r)) | |
34 | - | then [r] | |
35 | - | else throw("Strict value is not equal to itself.") | |
36 | - | } | |
37 | - | else throw("Strict value is not equal to itself.") | |
38 | - | } | |
39 | - | else throw("Reserve balance too low") | |
13 | + | func withdrawVestedAllUSDN () = { | |
14 | + | let r = invoke(vesting, "withdrawVestedAllUSDN", [false, true], nil) | |
15 | + | if ((r == r)) | |
16 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
17 | + | else throw("Strict value is not equal to itself.") | |
40 | 18 | } | |
41 | 19 | ||
42 | 20 | ||
43 | 21 | ||
44 | 22 | @Callable(i) | |
45 | - | func withdrawUSDT (minAmount,maxAmount) = { | |
46 | - | let reserveBalance = assetBalance(reserveUSDT, fromBase58String(assetStringUSDT)) | |
47 | - | if ((reserveBalance >= minAmount)) | |
23 | + | func claimRewards () = { | |
24 | + | let r = invoke(rewards, "claimRewards", nil, nil) | |
25 | + | if ((r == r)) | |
26 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
27 | + | else throw("Strict value is not equal to itself.") | |
28 | + | } | |
29 | + | ||
30 | + | ||
31 | + | ||
32 | + | @Callable(i) | |
33 | + | func withdrawAndClaim () = { | |
34 | + | let r1 = invoke(vesting, "withdrawVestedAllUSDN", [false, true], nil) | |
35 | + | if ((r1 == r1)) | |
48 | 36 | then { | |
49 | - | let withdrawAmount = if ((reserveBalance > maxAmount)) | |
50 | - | then maxAmount | |
51 | - | else reserveBalance | |
52 | - | let withdrawnAmount = { | |
53 | - | let @ = invoke(main, "withdraw", [assetStringUSDT, withdrawAmount], nil) | |
54 | - | if ($isInstanceOf(@, "Int")) | |
55 | - | then @ | |
56 | - | else throw("Couldn't cast Any to Int") | |
57 | - | } | |
58 | - | if ((withdrawnAmount == withdrawnAmount)) | |
59 | - | then { | |
60 | - | let r = ScriptTransfer(devWallet, (withdrawnAmount / 25), fromBase58String(assetStringUSDT)) | |
61 | - | if ((r == r)) | |
62 | - | then [r] | |
63 | - | else throw("Strict value is not equal to itself.") | |
64 | - | } | |
37 | + | let r2 = invoke(rewards, "claimRewards", nil, nil) | |
38 | + | if ((r2 == r2)) | |
39 | + | then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)] | |
65 | 40 | else throw("Strict value is not equal to itself.") | |
66 | 41 | } | |
67 | - | else throw(" | |
42 | + | else throw("Strict value is not equal to itself.") | |
68 | 43 | } | |
69 | 44 | ||
70 | 45 |
github/deemru/w8io/3ef1775 28.88 ms ◑