tx · 93EduBALqwsG1dxk2MxQxB1ybmw1VBvBrYBJJrHRQdBj 3P9MzF4fsoiwibnAp8fWwEJhTRX2ufftq7r: -0.01000000 Waves 2022.11.01 19:19 [3363641] smart account 3P9MzF4fsoiwibnAp8fWwEJhTRX2ufftq7r > SELF 0.00000000 Waves
{ "type": 13, "id": "93EduBALqwsG1dxk2MxQxB1ybmw1VBvBrYBJJrHRQdBj", "fee": 1000000, "feeAssetId": null, "timestamp": 1667319653216, "version": 2, "chainId": 87, "sender": "3P9MzF4fsoiwibnAp8fWwEJhTRX2ufftq7r", "senderPublicKey": "6YGMf7XTKRgtbTpV9L78KmLDhnhYdQEuEvJGCtTJby7L", "proofs": [ "3Aabk1YGu8PbE2XvphanKVjFoMb487v11X2SxMomrd59RnhAqvhvFVnRgdocC28bM5J2yWb7wrskJUA9zoGBztVW" ], "script": "base64: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", "height": 3363641, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 38YyaCm4Nbux9TerU8wCS19A6FnGr3UoMMoogMjukNQn Next: EYqtBJTx2a2nrsLrRDoRueKUrdDZUJUbpHRWn5vSWfzC Diff:
Old | New | Differences | |
---|---|---|---|
5 | 5 | ||
6 | 6 | let VIRES_USDT_LP = base58'2tVLdi5fQXk2JcuDAojhctnDp5B5PZhNMyj5GUpeC3tZ' | |
7 | 7 | ||
8 | + | let VIRES_USDC_LP = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr' | |
9 | + | ||
8 | 10 | let VIRES = base58'DSbbhLsSTeDg5Lsiufk2Aneh3DjVqJuPr2M9uU1gwy5p' | |
9 | 11 | ||
10 | 12 | let usdnVesting = addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk") | |
13 | + | ||
14 | + | let usdnRewards = addressFromStringValue("3PKZk5TdPCLP2GZviipLFfK46ExTnwkRCBd") | |
11 | 15 | ||
12 | 16 | let viresMain = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT") | |
13 | 17 | ||
70 | 74 | } | |
71 | 75 | ||
72 | 76 | ||
77 | + | ||
78 | + | @Callable(i) | |
79 | + | func importATokenUSDC (amount) = if ((i.caller != adminAddress)) | |
80 | + | then throw("only admin can do") | |
81 | + | else { | |
82 | + | let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(VIRES_USDC_LP, amount)]) | |
83 | + | if ((inv == inv)) | |
84 | + | then nil | |
85 | + | else throw("Strict value is not equal to itself.") | |
86 | + | } | |
87 | + | ||
88 | + | ||
89 | + | ||
90 | + | @Callable(i) | |
91 | + | func convertUsdn () = if ((i.caller != adminAddress)) | |
92 | + | then throw("only admin can do") | |
93 | + | else { | |
94 | + | let inv = invoke(usdnVesting, "convertToUSDN", nil, nil) | |
95 | + | if ((inv == inv)) | |
96 | + | then nil | |
97 | + | else throw("Strict value is not equal to itself.") | |
98 | + | } | |
99 | + | ||
100 | + | ||
101 | + | ||
102 | + | @Callable(i) | |
103 | + | func claimRewards () = if ((i.caller != adminAddress)) | |
104 | + | then throw("only admin can do") | |
105 | + | else { | |
106 | + | let usdnInitial = assetBalance(this, USDN) | |
107 | + | if ((usdnInitial == usdnInitial)) | |
108 | + | then { | |
109 | + | let inv = invoke(usdnRewards, "claimRewards", nil, nil) | |
110 | + | if ((inv == inv)) | |
111 | + | then { | |
112 | + | let usdnFinal = assetBalance(this, USDN) | |
113 | + | if ((usdnFinal == usdnFinal)) | |
114 | + | then [ScriptTransfer(delegateAddress, (usdnFinal - usdnInitial), USDN)] | |
115 | + | else throw("Strict value is not equal to itself.") | |
116 | + | } | |
117 | + | else throw("Strict value is not equal to itself.") | |
118 | + | } | |
119 | + | else throw("Strict value is not equal to itself.") | |
120 | + | } | |
121 | + | ||
122 | + |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
5 | 5 | ||
6 | 6 | let VIRES_USDT_LP = base58'2tVLdi5fQXk2JcuDAojhctnDp5B5PZhNMyj5GUpeC3tZ' | |
7 | 7 | ||
8 | + | let VIRES_USDC_LP = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr' | |
9 | + | ||
8 | 10 | let VIRES = base58'DSbbhLsSTeDg5Lsiufk2Aneh3DjVqJuPr2M9uU1gwy5p' | |
9 | 11 | ||
10 | 12 | let usdnVesting = addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk") | |
13 | + | ||
14 | + | let usdnRewards = addressFromStringValue("3PKZk5TdPCLP2GZviipLFfK46ExTnwkRCBd") | |
11 | 15 | ||
12 | 16 | let viresMain = addressFromStringValue("3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT") | |
13 | 17 | ||
14 | 18 | let delegateAddress = Address(base58'3PNqUcNQEMEQCLq5zTUEWtS1kzug1u5oM4G') | |
15 | 19 | ||
16 | 20 | let adminAddress = Address(base58'3PF2VrpMvdEZNx8iyXtfgNqLE9Na7X7uzNf') | |
17 | 21 | ||
18 | 22 | @Callable(i) | |
19 | 23 | func withdrawViresUsdn (amount) = if ((i.caller != adminAddress)) | |
20 | 24 | then throw("only admin can do") | |
21 | 25 | else { | |
22 | 26 | let usdnInitial = assetBalance(this, USDN) | |
23 | 27 | if ((usdnInitial == usdnInitial)) | |
24 | 28 | then { | |
25 | 29 | let inv = invoke(usdnVesting, "withdrawVestedAllUSDN", [false, true], nil) | |
26 | 30 | if ((inv == inv)) | |
27 | 31 | then { | |
28 | 32 | let usdnFinal = assetBalance(this, USDN) | |
29 | 33 | if ((usdnFinal == usdnFinal)) | |
30 | 34 | then [ScriptTransfer(delegateAddress, (usdnFinal - usdnInitial), USDN)] | |
31 | 35 | else throw("Strict value is not equal to itself.") | |
32 | 36 | } | |
33 | 37 | else throw("Strict value is not equal to itself.") | |
34 | 38 | } | |
35 | 39 | else throw("Strict value is not equal to itself.") | |
36 | 40 | } | |
37 | 41 | ||
38 | 42 | ||
39 | 43 | ||
40 | 44 | @Callable(i) | |
41 | 45 | func withdrawViresEb () = if ((i.caller != adminAddress)) | |
42 | 46 | then throw("only admin can do") | |
43 | 47 | else { | |
44 | 48 | let viresInitial = assetBalance(this, VIRES) | |
45 | 49 | if ((viresInitial == viresInitial)) | |
46 | 50 | then { | |
47 | 51 | let inv = invoke(viresMain, "claimAllRewardsAndAllEbAvailable2", [false, false], nil) | |
48 | 52 | if ((inv == inv)) | |
49 | 53 | then { | |
50 | 54 | let viresFinal = assetBalance(this, VIRES) | |
51 | 55 | if ((viresFinal == viresFinal)) | |
52 | 56 | then [ScriptTransfer(delegateAddress, (viresFinal - viresInitial), VIRES)] | |
53 | 57 | else throw("Strict value is not equal to itself.") | |
54 | 58 | } | |
55 | 59 | else throw("Strict value is not equal to itself.") | |
56 | 60 | } | |
57 | 61 | else throw("Strict value is not equal to itself.") | |
58 | 62 | } | |
59 | 63 | ||
60 | 64 | ||
61 | 65 | ||
62 | 66 | @Callable(i) | |
63 | 67 | func importATokenUSDT (amount) = if ((i.caller != adminAddress)) | |
64 | 68 | then throw("only admin can do") | |
65 | 69 | else { | |
66 | 70 | let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(VIRES_USDT_LP, amount)]) | |
67 | 71 | if ((inv == inv)) | |
68 | 72 | then nil | |
69 | 73 | else throw("Strict value is not equal to itself.") | |
70 | 74 | } | |
71 | 75 | ||
72 | 76 | ||
77 | + | ||
78 | + | @Callable(i) | |
79 | + | func importATokenUSDC (amount) = if ((i.caller != adminAddress)) | |
80 | + | then throw("only admin can do") | |
81 | + | else { | |
82 | + | let inv = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(VIRES_USDC_LP, amount)]) | |
83 | + | if ((inv == inv)) | |
84 | + | then nil | |
85 | + | else throw("Strict value is not equal to itself.") | |
86 | + | } | |
87 | + | ||
88 | + | ||
89 | + | ||
90 | + | @Callable(i) | |
91 | + | func convertUsdn () = if ((i.caller != adminAddress)) | |
92 | + | then throw("only admin can do") | |
93 | + | else { | |
94 | + | let inv = invoke(usdnVesting, "convertToUSDN", nil, nil) | |
95 | + | if ((inv == inv)) | |
96 | + | then nil | |
97 | + | else throw("Strict value is not equal to itself.") | |
98 | + | } | |
99 | + | ||
100 | + | ||
101 | + | ||
102 | + | @Callable(i) | |
103 | + | func claimRewards () = if ((i.caller != adminAddress)) | |
104 | + | then throw("only admin can do") | |
105 | + | else { | |
106 | + | let usdnInitial = assetBalance(this, USDN) | |
107 | + | if ((usdnInitial == usdnInitial)) | |
108 | + | then { | |
109 | + | let inv = invoke(usdnRewards, "claimRewards", nil, nil) | |
110 | + | if ((inv == inv)) | |
111 | + | then { | |
112 | + | let usdnFinal = assetBalance(this, USDN) | |
113 | + | if ((usdnFinal == usdnFinal)) | |
114 | + | then [ScriptTransfer(delegateAddress, (usdnFinal - usdnInitial), USDN)] | |
115 | + | else throw("Strict value is not equal to itself.") | |
116 | + | } | |
117 | + | else throw("Strict value is not equal to itself.") | |
118 | + | } | |
119 | + | else throw("Strict value is not equal to itself.") | |
120 | + | } | |
121 | + | ||
122 | + |
github/deemru/w8io/0e76f2f 34.97 ms ◑