tx · 4QBjnabMMRK5ByDyDBaqTiQ8ZviGqyUuCGNyC22E3dGE
3P3w8SjUV4HcMCQ72QgkXZEaKNoSs32NxEJ: -0.00600000 Waves
2022.11.04 18:49 [3367946] smart account 3P3w8SjUV4HcMCQ72QgkXZEaKNoSs32NxEJ > SELF 0.00000000 Waves
{
"type": 13,
"id": "4QBjnabMMRK5ByDyDBaqTiQ8ZviGqyUuCGNyC22E3dGE",
"fee": 600000,
"feeAssetId": null,
"timestamp": 1667577023929,
"version": 1,
"sender": "3P3w8SjUV4HcMCQ72QgkXZEaKNoSs32NxEJ",
"senderPublicKey": "F7gbnNrXsxWs7snUJxivnUPNE8ze2zBEAC9N84yTY9w4",
"proofs": [
"4wmgzQVs4pfXC7MkgEMURB24qvozG1nzD3zJPxpWHNgC5bU8pA1gWut4THDyKqnxQxRqT8yTNoerj2PMZU2DEFyx"
],
"script": "base64:BgIECAISAAQABFVTRE4BILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRAAxhZG1pbkFkZHJlc3MJAQdBZGRyZXNzAQEaAVc0FN9xREbfMFTR97icc0UMqzorm02OJmEAEHZpcmVzTWFpbkFkZHJlc3MJAQdBZGRyZXNzAQEaAVdewZYZMMmiQ3hGadYm1vHmuEPQvfZMHrgABnVzZGNMcAEg1oaacWthwTdC30x+4yrVGXT/80n5kiC/TDA74pgCkbEBAWkBAWkAAwkBAiE9AggFAWkMb3JpZ2luQ2FsbGVyBQxhZG1pbkFkZHJlc3MJAAIBAhFvbmx5IGFkbWluIGNhbiBkbwQGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQEaW52MQkA/AcEBRB2aXJlc01haW5BZGRyZXNzAhNyZXBsZW5pc2hXaXRoQXRva2VuBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBnVzZGNMcAUGYW1vdW50BQNuaWwDCQAAAgUEaW52MQUEaW52MQQEaW52MgkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUENidlBWUWZTdlZ1ODhpcDhGbTVZandKaGpFWWsxVHhoawINY29udmVydFRvVVNETgUDbmlsBQNuaWwDCQAAAgUEaW52MgUEaW52MgQEaW52MwkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUENidlBWUWZTdlZ1ODhpcDhGbTVZandKaGpFWWsxVHhoawIVd2l0aGRyYXdWZXN0ZWRBbGxVU0ROCQDMCAIHCQDMCAIGBQNuaWwFA25pbAMJAAACBQRpbnYzBQRpbnYzBAp1c2RuQW1vdW50CQDwBwIFBHRoaXMFBFVTRE4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyBQp1c2RuQW1vdW50BQRVU0ROBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4AuS/qcw==",
"chainId": 87,
"height": 3367946,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: Hic5rm8xXBAbZPxi12veoogL24kb3KL3sFE7Q2QFcMfE
Next: DKdihw6aSJAHEoLdpNPoynmATXZHpBLT1PH4NtUE6tL1
Diff:
Old | New | | Differences |
---|
1 | | - | {-# STDLIB_VERSION 5 #-} |
---|
| 1 | + | {-# STDLIB_VERSION 6 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | | - | let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT' |
---|
5 | | - | |
---|
6 | | - | let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ' |
---|
7 | | - | |
---|
8 | | - | let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ' |
---|
9 | | - | |
---|
10 | 4 | | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' |
---|
11 | | - | |
---|
12 | | - | let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S' |
---|
13 | | - | |
---|
14 | | - | let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR' |
---|
15 | | - | |
---|
16 | | - | let meAddress = Address(base58'3P5T88oGg47FEsJcpC2o43BSF34Bs5dcFpP') |
---|
17 | 5 | | |
---|
18 | 6 | | let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC') |
---|
19 | 7 | | |
---|
20 | | - | func getAmountFromUserBalance (v) = match v { |
---|
21 | | - | case x: (Int, Int, Int, Int, Int, Boolean) => |
---|
22 | | - | x._2 |
---|
23 | | - | case t => |
---|
24 | | - | throw("#err") |
---|
25 | | - | } |
---|
| 8 | + | let viresMainAddress = Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT') |
---|
26 | 9 | | |
---|
| 10 | + | let usdcLp = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr' |
---|
27 | 11 | | |
---|
28 | 12 | | @Callable(i) |
---|
29 | | - | func usdn_100 (amount) = if ((i.caller != adminAddress)) |
---|
| 13 | + | func i () = if ((i.originCaller != adminAddress)) |
---|
30 | 14 | | then throw("only admin can do") |
---|
31 | 15 | | else { |
---|
32 | | - | let usdnAmountOnStart = assetBalance(this, USDN) |
---|
33 | | - | if ((usdnAmountOnStart == usdnAmountOnStart)) |
---|
| 16 | + | let amount = i.payments[0].amount |
---|
| 17 | + | let inv1 = invoke(viresMainAddress, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, amount)]) |
---|
| 18 | + | if ((inv1 == inv1)) |
---|
34 | 19 | | then { |
---|
35 | | - | let invokeToVesting = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil) |
---|
36 | | - | if ((invokeToVesting == invokeToVesting)) |
---|
| 20 | + | let inv2 = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil) |
---|
| 21 | + | if ((inv2 == inv2)) |
---|
37 | 22 | | then { |
---|
38 | | - | let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil) |
---|
39 | | - | if ((inv == inv)) |
---|
| 23 | + | let inv3 = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil) |
---|
| 24 | + | if ((inv3 == inv3)) |
---|
40 | 25 | | then { |
---|
41 | | - | let usdnAmountAfterWithdraw = assetBalance(this, USDN) |
---|
42 | | - | if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw)) |
---|
43 | | - | then [ScriptTransfer(meAddress, usdnAmountAfterWithdraw, USDN)] |
---|
44 | | - | else throw("Strict value is not equal to itself.") |
---|
| 26 | + | let usdnAmount = assetBalance(this, USDN) |
---|
| 27 | + | [ScriptTransfer(i.caller, usdnAmount, USDN)] |
---|
45 | 28 | | } |
---|
46 | 29 | | else throw("Strict value is not equal to itself.") |
---|
47 | 30 | | } |
---|
Full:
Old | New | | Differences |
---|
1 | | - | {-# STDLIB_VERSION 5 #-} |
---|
| 1 | + | {-# STDLIB_VERSION 6 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | | - | let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT' |
---|
5 | | - | |
---|
6 | | - | let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ' |
---|
7 | | - | |
---|
8 | | - | let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ' |
---|
9 | | - | |
---|
10 | 4 | | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' |
---|
11 | | - | |
---|
12 | | - | let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S' |
---|
13 | | - | |
---|
14 | | - | let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR' |
---|
15 | | - | |
---|
16 | | - | let meAddress = Address(base58'3P5T88oGg47FEsJcpC2o43BSF34Bs5dcFpP') |
---|
17 | 5 | | |
---|
18 | 6 | | let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC') |
---|
19 | 7 | | |
---|
20 | | - | func getAmountFromUserBalance (v) = match v { |
---|
21 | | - | case x: (Int, Int, Int, Int, Int, Boolean) => |
---|
22 | | - | x._2 |
---|
23 | | - | case t => |
---|
24 | | - | throw("#err") |
---|
25 | | - | } |
---|
| 8 | + | let viresMainAddress = Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT') |
---|
26 | 9 | | |
---|
| 10 | + | let usdcLp = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr' |
---|
27 | 11 | | |
---|
28 | 12 | | @Callable(i) |
---|
29 | | - | func usdn_100 (amount) = if ((i.caller != adminAddress)) |
---|
| 13 | + | func i () = if ((i.originCaller != adminAddress)) |
---|
30 | 14 | | then throw("only admin can do") |
---|
31 | 15 | | else { |
---|
32 | | - | let usdnAmountOnStart = assetBalance(this, USDN) |
---|
33 | | - | if ((usdnAmountOnStart == usdnAmountOnStart)) |
---|
| 16 | + | let amount = i.payments[0].amount |
---|
| 17 | + | let inv1 = invoke(viresMainAddress, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, amount)]) |
---|
| 18 | + | if ((inv1 == inv1)) |
---|
34 | 19 | | then { |
---|
35 | | - | let invokeToVesting = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil) |
---|
36 | | - | if ((invokeToVesting == invokeToVesting)) |
---|
| 20 | + | let inv2 = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil) |
---|
| 21 | + | if ((inv2 == inv2)) |
---|
37 | 22 | | then { |
---|
38 | | - | let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil) |
---|
39 | | - | if ((inv == inv)) |
---|
| 23 | + | let inv3 = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil) |
---|
| 24 | + | if ((inv3 == inv3)) |
---|
40 | 25 | | then { |
---|
41 | | - | let usdnAmountAfterWithdraw = assetBalance(this, USDN) |
---|
42 | | - | if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw)) |
---|
43 | | - | then [ScriptTransfer(meAddress, usdnAmountAfterWithdraw, USDN)] |
---|
44 | | - | else throw("Strict value is not equal to itself.") |
---|
| 26 | + | let usdnAmount = assetBalance(this, USDN) |
---|
| 27 | + | [ScriptTransfer(i.caller, usdnAmount, USDN)] |
---|
45 | 28 | | } |
---|
46 | 29 | | else throw("Strict value is not equal to itself.") |
---|
47 | 30 | | } |
---|
48 | 31 | | else throw("Strict value is not equal to itself.") |
---|
49 | 32 | | } |
---|
50 | 33 | | else throw("Strict value is not equal to itself.") |
---|
51 | 34 | | } |
---|
52 | 35 | | |
---|
53 | 36 | | |
---|