2022.11.24 13:28 [3396505] smart account 3P28iJCof7QDW5aB6MaaASe2BkECbPvW8Ho > SELF 0.00000000 Waves

{ "type": 13, "id": "9KEjq5WPKsbYjj9oaxZ2TJ7fXF1Aaegs44V86zbJuQNN", "fee": 1000000, "feeAssetId": null, "timestamp": 1669285702531, "version": 2, "chainId": 87, "sender": "3P28iJCof7QDW5aB6MaaASe2BkECbPvW8Ho", "senderPublicKey": "ANVMXH6RRF6sNVqBrT7yYvbAXhoVRCj4fmDE3pyTzAe", "proofs": [ "3S9UyLtD8zXpovtbipVAiMhWhpQKx4AWbhAX2gSk3oden6iYfx2im2HrZaTBf9oyPRJAPSqzE1DH31kkxSBeULiF" ], "script": "base64:BgIICAISABIAEgAEAAxkZXN0UmVjZWl2ZXIJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQTjJhSzVlWGlSOUZlOUtRTXdrWlB6OVdTVTJRSFR4Z1dVAAd2ZXN0aW5nCQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUENidlBWUWZTdlZ1ODhpcDhGbTVZandKaGpFWWsxVHhoawAHcmV3YXJkcwkBEUBleHRyTmF0aXZlKDEwNjIpAQIjM1BLWms1VGRQQ0xQMkdadmlpcExGZks0NkV4VG53a1JDQmQABFVTRE4BILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRAwFpARV3aXRoZHJhd1Zlc3RlZEFsbFVTRE4ABAFyCQD8BwQFB3Zlc3RpbmcCFXdpdGhkcmF3VmVzdGVkQWxsVVNETgkAzAgCBwkAzAgCBgUDbmlsBQNuaWwDCQAAAgUBcgUBcgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQxkZXN0UmVjZWl2ZXIJAPAHAgUEdGhpcwUEVVNETgUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBDGNsYWltUmV3YXJkcwAEAXIJAPwHBAUHcmV3YXJkcwIMY2xhaW1SZXdhcmRzBQNuaWwFA25pbAMJAAACBQFyBQFyCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMFDGRlc3RSZWNlaXZlcgkA8AcCBQR0aGlzBQRVU0ROBQRVU0ROBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEQd2l0aGRyYXdBbmRDbGFpbQAEAnIxCQD8BwQFB3Zlc3RpbmcCFXdpdGhkcmF3VmVzdGVkQWxsVVNETgkAzAgCBwkAzAgCBgUDbmlsBQNuaWwDCQAAAgUCcjEFAnIxBAJyMgkA/AcEBQdyZXdhcmRzAgxjbGFpbVJld2FyZHMFA25pbAUDbmlsAwkAAAIFAnIyBQJyMgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQxkZXN0UmVjZWl2ZXIJAPAHAgUEdGhpcwUEVVNETgUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAFtg4xw=", "height": 3396505, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4egQXNSiSAVj1KYSkFc7kA1V4pyADEJLhSG7g2Wqtqoz Next: none Full:
OldNewDifferences
1-{-# STDLIB_VERSION 5 #-}
1+{-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let viresAddress = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT")
4+let destReceiver = addressFromStringValue("3PN2aK5eXiR9Fe9KQMwkZPz9WSU2QHTxgWU")
55
6-let assetStringUSDT = "34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ"
6+let vesting = addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk")
77
8-let reserveStringUSDT = "3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR"
8+let rewards = addressFromStringValue("3PKZk5TdPCLP2GZviipLFfK46ExTnwkRCBd")
99
10-let reserveUSDT = addressFromStringValue(reserveStringUSDT)
10+let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
1111
12-let assetStringUSDC = "6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ"
13-
14-let reserveStringUSDC = "3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S"
15-
16-let reserveUSDC = addressFromStringValue(reserveStringUSDC)
17-
18-let limiter = addressFromStringValue("3PRBVq52csUvTx77NYwLTULrt2e9jdsHfRB")
19-
20-func _withdrawTo (toAddressString,assetString,reserveString,amount) = {
21- let toAddress = addressFromStringValue(toAddressString)
22- if ((toAddress == this))
23- then throw("toAddress == this")
24- else {
25- let transferAmount = if ((amount > 0))
26- then amount
27- else 1000000000
28- if ((0 >= transferAmount))
29- then throw("invalid amount")
30- else {
31- let payment = AttachedPayment(fromBase58String(assetString), transferAmount)
32- let invokeDeposit = invoke(toAddress, "deposit", [reserveString], [payment])
33- if ((invokeDeposit == invokeDeposit))
34- then {
35- let invokeWithdraw = invoke(viresAddress, "withdraw", [assetString, transferAmount], nil)
36- if ((invokeWithdraw == invokeWithdraw))
37- then nil
38- else throw("Strict value is not equal to itself.")
39- }
40- else throw("Strict value is not equal to itself.")
41- }
42- }
12+@Callable(i)
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.")
4318 }
4419
4520
21+
4622 @Callable(i)
47-func withdrawTo (toAddressString,amount) = if ((i.caller != this))
48- then throw("admin")
49- else _withdrawTo(toAddressString, assetStringUSDC, reserveStringUSDC, amount)
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))
36+ then {
37+ let r2 = invoke(rewards, "claimRewards", nil, nil)
38+ if ((r2 == r2))
39+ then [ScriptTransfer(destReceiver, assetBalance(this, USDN), USDN)]
40+ else throw("Strict value is not equal to itself.")
41+ }
42+ else throw("Strict value is not equal to itself.")
43+ }
5044
5145

github/deemru/w8io/786bc32 
134.16 ms