tx · 8c8TSCcd1kxT4EAq8xNxcy8ZmS1QA4a1krkSo7G67AGx 3P6u19kQkRWE7RHvWkHRNmT5Jndn9ghnR6G: -0.01000000 Waves 2022.11.06 21:16 [3370992] smart account 3P6u19kQkRWE7RHvWkHRNmT5Jndn9ghnR6G > SELF 0.00000000 Waves
{ "type": 13, "id": "8c8TSCcd1kxT4EAq8xNxcy8ZmS1QA4a1krkSo7G67AGx", "fee": 1000000, "feeAssetId": null, "timestamp": 1667758594326, "version": 1, "sender": "3P6u19kQkRWE7RHvWkHRNmT5Jndn9ghnR6G", "senderPublicKey": "UHT2eBGiNPw8JSim6HKHAU3TPuDqpoJAYRACKYjXvNx", "proofs": [ "t8jfkT3UHnZMd7ycE8Va9MkKM37DDgjJdWLnHpoKhRPs7BATpicHMEeEX4W9myMAEVLU14nAji3x8q1a6WzZyKd" ], "script": "base64:AAIFAAAAAAAAAAkIAhIAEgMKAQEAAAALAAAAABB2aXJlc01haW5BZGRyZXNzAQAAABoBV17BlhkwyaJDeEZp1ibW8ea4Q9C99kweuAAAAAAEVVNEQwEAAAAgUjPZ4ZeIJuXiH8L96og0uId2o4yxg+/IYBx+ChJUJiUAAAAABFVTRFQBAAAAIB6UBxNSdqEllf3IYaiCXxB/3zpPKbv8mkY/Wv02T5+RAAAAAARVU0ROAQAAACC2JinDBPXOU5GkDkt1JC9kjFGx+t+vVCm9SNIdKrKq0QAAAAAQdmlyZXNVc2RjQWRkcmVzcwEAAAAaAVeckdbrVt9jsb9/5I0zJOQcqOP4QOc77QMAAAAAEHZpcmVzVXNkdEFkZHJlc3MBAAAAGgFXjDN+if/+lNod/uw63psEJhLzwV/EbQ4MAAAAAAZ1c2RjTHABAAAAINaGmnFrYcE3Qt9MfuMq1Rl0//NJ+ZIgv0wwO+KYApGxAAAAAAltZUFkZHJlc3MJAQAAAAdBZGRyZXNzAAAAAQEAAAAaAVcqtEPUTmyvLFFV4lqI+eYvapwE6evRiZ8AAAAADGFkbWluQWRkcmVzcwkBAAAAB0FkZHJlc3MAAAABAQAAABoBV7ZLVSUZ5Jzp494r8F+CGCQn6MhEmssxzwAAAAAJdmlyZXNNYWluCQEAAAAHQWRkcmVzcwAAAAEBAAAAGgFXXsGWGTDJokN4RmnWJtbx5rhD0L32TB64AQAAABhnZXRBbW91bnRGcm9tVXNlckJhbGFuY2UAAAABAAAAAXYEAAAAByRtYXRjaDAFAAAAAXYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAIihJbnQsIEludCwgSW50LCBJbnQsIEludCwgQm9vbGVhbikEAAAAAXgFAAAAByRtYXRjaDAIBQAAAAF4AAAAAl8yBAAAAAF0BQAAAAckbWF0Y2gwCQAAAgAAAAECAAAABCNlcnIAAAACAAAAAWkBAAAAAWEAAAAAAwkBAAAAAiE9AAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzCQAAAgAAAAECAAAADUFjY2VzcyBEZW5pZWQEAAAACWxwQmFsYW5jZQkAA/AAAAACBQAAAAR0aGlzBQAAAAZ1c2RjTHAEAAAAEnRydW5jYXRlZExwQmFsYW5jZQMJAABmAAAAAgAAAAAABfXhAAUAAAAJbHBCYWxhbmNlBQAAAAlscEJhbGFuY2UAAAAAAAX14QAEAAAABGNhbGwJAAP8AAAABAUAAAAJdmlyZXNNYWluAgAAABNyZXBsZW5pc2hXaXRoQXRva2VuBQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAABnVzZGNMcAUAAAASdHJ1bmNhdGVkTHBCYWxhbmNlBQAAAANuaWwDCQAAAAAAAAIFAAAABGNhbGwFAAAABGNhbGwFAAAAA25pbAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4AAAABaQEAAAAIdXNkbl8xMDAAAAABAAAABmFtb3VudAMJAQAAAAIhPQAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAMYWRtaW5BZGRyZXNzCQAAAgAAAAECAAAAEW9ubHkgYWRtaW4gY2FuIGRvBAAAABF1c2RuQW1vdW50T25TdGFydAkAA/AAAAACBQAAAAR0aGlzBQAAAARVU0ROAwkAAAAAAAACBQAAABF1c2RuQW1vdW50T25TdGFydAUAAAARdXNkbkFtb3VudE9uU3RhcnQEAAAAD2ludm9rZVRvVmVzdGluZwkAA/wAAAAECQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABAgAAACMzUENidlBWUWZTdlZ1ODhpcDhGbTVZandKaGpFWWsxVHhoawIAAAANY29udmVydFRvVVNETgUAAAADbmlsBQAAAANuaWwDCQAAAAAAAAIFAAAAD2ludm9rZVRvVmVzdGluZwUAAAAPaW52b2tlVG9WZXN0aW5nBAAAAANpbnYJAAP8AAAABAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQIAAAAjM1BDYnZQVlFmU3ZWdTg4aXA4Rm01WWp3SmhqRVlrMVR4aGsCAAAAFXdpdGhkcmF3VmVzdGVkQWxsVVNETgkABEwAAAACBwkABEwAAAACBgUAAAADbmlsBQAAAANuaWwDCQAAAAAAAAIFAAAAA2ludgUAAAADaW52BAAAABd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwkAA/AAAAACBQAAAAR0aGlzBQAAAARVU0ROAwkAAAAAAAACBQAAABd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwUAAAAXdXNkbkFtb3VudEFmdGVyV2l0aGRyYXcJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwUAAAAJbWVBZGRyZXNzBQAAABd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwUAAAAEVVNETgUAAAADbmlsCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgAAAADdXXzb", "chainId": 87, "height": 3370992, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: H69rxr55njUrbtnsqtStZHm7H7WFadoXNZnBwvY32YYJ Next: 5XcFXi8QjaAnaV1xjeSpNRjL6K8XRzmz4EmNTiPQ71Aa Diff:
Old | New | Differences | |
---|---|---|---|
13 | 13 | ||
14 | 14 | let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR' | |
15 | 15 | ||
16 | + | let usdcLp = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr' | |
17 | + | ||
16 | 18 | let meAddress = Address(base58'3P5ph4LDJwXouaZPjnqGTNtogbm4Z1dy7dY') | |
17 | 19 | ||
18 | 20 | let adminAddress = Address(base58'3PJYmxMqX78zTwNyBZwwqPQGWYCmSZ1tcMc') | |
21 | + | ||
22 | + | let viresMain = Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT') | |
19 | 23 | ||
20 | 24 | func getAmountFromUserBalance (v) = match v { | |
21 | 25 | case x: (Int, Int, Int, Int, Int, Boolean) => | |
26 | 30 | ||
27 | 31 | ||
28 | 32 | @Callable(i) | |
29 | - | func usdn_100 () = if ((i.caller != adminAddress)) | |
33 | + | func a () = if ((i.caller != this)) | |
34 | + | then throw("Access Denied") | |
35 | + | else { | |
36 | + | let lpBalance = assetBalance(this, usdcLp) | |
37 | + | let truncatedLpBalance = if ((100000000 > lpBalance)) | |
38 | + | then lpBalance | |
39 | + | else 100000000 | |
40 | + | let call = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, truncatedLpBalance)]) | |
41 | + | if ((call == call)) | |
42 | + | then nil | |
43 | + | else throw("Strict value is not equal to itself.") | |
44 | + | } | |
45 | + | ||
46 | + | ||
47 | + | ||
48 | + | @Callable(i) | |
49 | + | func usdn_100 (amount) = if ((i.caller != adminAddress)) | |
30 | 50 | then throw("only admin can do") | |
31 | 51 | else { | |
32 | 52 | let usdnAmountOnStart = assetBalance(this, USDN) |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let viresMainAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT' | |
5 | 5 | ||
6 | 6 | let USDC = base58'6XtHjpXbs9RRJP2Sr9GUyVqzACcby9TkThHXnjVC5CDJ' | |
7 | 7 | ||
8 | 8 | let USDT = base58'34N9YcEETLWn93qYQ64EsP1x89tSruJU44RrEMSXXEPJ' | |
9 | 9 | ||
10 | 10 | let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p' | |
11 | 11 | ||
12 | 12 | let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S' | |
13 | 13 | ||
14 | 14 | let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR' | |
15 | 15 | ||
16 | + | let usdcLp = base58'FSRHtSyXRXQjzQLRtmaqFpBDDCNjY8PU8KNtwoGXVBmr' | |
17 | + | ||
16 | 18 | let meAddress = Address(base58'3P5ph4LDJwXouaZPjnqGTNtogbm4Z1dy7dY') | |
17 | 19 | ||
18 | 20 | let adminAddress = Address(base58'3PJYmxMqX78zTwNyBZwwqPQGWYCmSZ1tcMc') | |
21 | + | ||
22 | + | let viresMain = Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT') | |
19 | 23 | ||
20 | 24 | func getAmountFromUserBalance (v) = match v { | |
21 | 25 | case x: (Int, Int, Int, Int, Int, Boolean) => | |
22 | 26 | x._2 | |
23 | 27 | case t => | |
24 | 28 | throw("#err") | |
25 | 29 | } | |
26 | 30 | ||
27 | 31 | ||
28 | 32 | @Callable(i) | |
29 | - | func usdn_100 () = if ((i.caller != adminAddress)) | |
33 | + | func a () = if ((i.caller != this)) | |
34 | + | then throw("Access Denied") | |
35 | + | else { | |
36 | + | let lpBalance = assetBalance(this, usdcLp) | |
37 | + | let truncatedLpBalance = if ((100000000 > lpBalance)) | |
38 | + | then lpBalance | |
39 | + | else 100000000 | |
40 | + | let call = invoke(viresMain, "replenishWithAtoken", nil, [AttachedPayment(usdcLp, truncatedLpBalance)]) | |
41 | + | if ((call == call)) | |
42 | + | then nil | |
43 | + | else throw("Strict value is not equal to itself.") | |
44 | + | } | |
45 | + | ||
46 | + | ||
47 | + | ||
48 | + | @Callable(i) | |
49 | + | func usdn_100 (amount) = if ((i.caller != adminAddress)) | |
30 | 50 | then throw("only admin can do") | |
31 | 51 | else { | |
32 | 52 | let usdnAmountOnStart = assetBalance(this, USDN) | |
33 | 53 | if ((usdnAmountOnStart == usdnAmountOnStart)) | |
34 | 54 | then { | |
35 | 55 | let invokeToVesting = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "convertToUSDN", nil, nil) | |
36 | 56 | if ((invokeToVesting == invokeToVesting)) | |
37 | 57 | then { | |
38 | 58 | let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil) | |
39 | 59 | if ((inv == inv)) | |
40 | 60 | then { | |
41 | 61 | let usdnAmountAfterWithdraw = assetBalance(this, USDN) | |
42 | 62 | if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw)) | |
43 | 63 | then [ScriptTransfer(meAddress, usdnAmountAfterWithdraw, USDN)] | |
44 | 64 | else throw("Strict value is not equal to itself.") | |
45 | 65 | } | |
46 | 66 | else throw("Strict value is not equal to itself.") | |
47 | 67 | } | |
48 | 68 | else throw("Strict value is not equal to itself.") | |
49 | 69 | } | |
50 | 70 | else throw("Strict value is not equal to itself.") | |
51 | 71 | } | |
52 | 72 | ||
53 | 73 |
github/deemru/w8io/0e76f2f 27.64 ms ◑