tx · 2EnK74QLX2B6iq8na5BauRTGoYdq9hz7aUjHFLKneYBf

3PBQ3ydu3qpDkrfai3TCE8DyY7osbdqnALS:  -0.00300000 Waves

2022.12.22 23:27 [3437430] smart account 3PBQ3ydu3qpDkrfai3TCE8DyY7osbdqnALS > SELF 0.00000000 Waves

{ "type": 13, "id": "2EnK74QLX2B6iq8na5BauRTGoYdq9hz7aUjHFLKneYBf", "fee": 300000, "feeAssetId": null, "timestamp": 1671740851098, "version": 1, "sender": "3PBQ3ydu3qpDkrfai3TCE8DyY7osbdqnALS", "senderPublicKey": "FSxHyvGqeznq8NhUNknfkp6kjkXYtgRxpHL3mzxGHyFs", "proofs": [ "5ufZzZRfXxbFfR5HbtcTE27erU6Mg6GQRr2wUMJh5LWph127YFtX1mx1KnNXaspsezSQw5E7f5ByoCk4dHEw3CHB" ], "script": "base64:BgIHCAISAwoBAQIABFVTRE4BILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRAAthZ2dyQWRkcmVzcwkBB0FkZHJlc3MBARoBV286hXxRfBxCZ0u4+m5f0vPEmd1h5yhYCwEBaQEIdXNkbl8xMDABBmFtb3VudAQRdXNkbkFtb3VudE9uU3RhcnQJAPAHAgUEdGhpcwUEVVNETgMJAAACBRF1c2RuQW1vdW50T25TdGFydAURdXNkbkFtb3VudE9uU3RhcnQEA2ludgkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUENidlBWUWZTdlZ1ODhpcDhGbTVZandKaGpFWWsxVHhoawIVd2l0aGRyYXdWZXN0ZWRBbGxVU0ROCQDMCAIHCQDMCAIGBQNuaWwFA25pbAMJAAACBQNpbnYFA2ludgQXdXNkbkFtb3VudEFmdGVyV2l0aGRyYXcJAPAHAgUEdGhpcwUEVVNETgMJAAACBRd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwUXdXNkbkFtb3VudEFmdGVyV2l0aGRyYXcJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwULYWdnckFkZHJlc3MJAGUCBRd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwURdXNkbkFtb3VudE9uU3RhcnQFBFVTRE4FA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgD4YcA4", "chainId": 87, "height": 3437430, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: G3XEAbPSNdiRXDy6FeY6eadMiL4onNSNPeZMDeZ7wQe4 Next: AraT3ru4NHoGJE14KvWzr5SMJ5jrpG3odQh9GvgRqPQ Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
55
6-let SURF = base58'At8D6NFFpheCbvKVnjVoeLL84Eo8NZn6ovManxfLaFWL'
7-
8-let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC')
9-
10-let aggrAddress = Address(base58'3P5T88oGg47FEsJcpC2o43BSF34Bs5dcFpP')
11-
12-let usdnAggrAddress = Address(base58'3P2cpE7nusQRRFt3Tg22WtKfdi6bUKwmqVM')
13-
14-func asAnyList (v) = match v {
15- case l: List[Any] =>
16- l
17- case _ =>
18- throw("#err")
19-}
20-
21-
22-func asInt (v) = match v {
23- case x: Int =>
24- x
25- case t =>
26- throw("#err")
27-}
28-
6+let aggrAddress = Address(base58'3PC51qgNQz4xx7m1DhLdCDYESaeNKT6zeFt')
297
308 @Callable(i)
319 func usdn_100 (amount) = {
4624 }
4725
4826
49-
50-@Callable(i)
51-func surf (w) = if (if ((i.caller != adminAddress))
52- then (i.caller != this)
53- else false)
54- then throw("only admin can do")
55- else {
56- let neutrinoMetrics = asAnyList(invoke(addressFromStringValue("3P77iUusNwMMzWFdC8f7bftwpHyG1PBs1gq"), "calcNeutinoMetricsREADONLY", nil, nil))
57- let BR = asInt(neutrinoMetrics[8])
58- if ((w > BR))
59- then {
60- let inv = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "withdrawVestedAllSURF", [false, true], nil)
61- if ((inv == inv))
62- then {
63- let aAmount = assetBalance(this, SURF)
64-[ScriptTransfer(aggrAddress, aAmount, SURF)]
65- }
66- else throw("Strict value is not equal to itself.")
67- }
68- else throw(("br is bad. " + toString(BR)))
69- }
70-
71-
72-
73-@Callable(i)
74-func toVesting (b) = if (if (if ((i.originCaller != adminAddress))
75- then (i.originCaller != this)
76- else false)
77- then (i.originCaller != aggrAddress)
78- else false)
79- then throw("only admin can do")
80- else if ((size(i.payments) != 1))
81- then throw("bad payment")
82- else {
83- let repayAmount = i.payments[0].amount
84- let repayAsset = i.payments[0].assetId
85- let inv1 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "repay", [b], [AttachedPayment(repayAsset, repayAmount)])
86- if ((inv1 == inv1))
87- then {
88- let inv2 = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "convertToUSDN", nil, nil)
89- if ((inv2 == inv2))
90- then {
91- let inv3 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "withdraw", ["DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p", -1], nil)
92- if ((inv3 == inv3))
93- then {
94- let balance = assetBalance(this, value(repayAsset))
95- if ((balance == balance))
96- then [ScriptTransfer(aggrAddress, balance, repayAsset), ScriptTransfer(usdnAggrAddress, assetBalance(this, USDN), USDN)]
97- else throw("Strict value is not equal to itself.")
98- }
99- else throw("Strict value is not equal to itself.")
100- }
101- else throw("Strict value is not equal to itself.")
102- }
103- else throw("Strict value is not equal to itself.")
104- }
105-
106-
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
55
6-let SURF = base58'At8D6NFFpheCbvKVnjVoeLL84Eo8NZn6ovManxfLaFWL'
7-
8-let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC')
9-
10-let aggrAddress = Address(base58'3P5T88oGg47FEsJcpC2o43BSF34Bs5dcFpP')
11-
12-let usdnAggrAddress = Address(base58'3P2cpE7nusQRRFt3Tg22WtKfdi6bUKwmqVM')
13-
14-func asAnyList (v) = match v {
15- case l: List[Any] =>
16- l
17- case _ =>
18- throw("#err")
19-}
20-
21-
22-func asInt (v) = match v {
23- case x: Int =>
24- x
25- case t =>
26- throw("#err")
27-}
28-
6+let aggrAddress = Address(base58'3PC51qgNQz4xx7m1DhLdCDYESaeNKT6zeFt')
297
308 @Callable(i)
319 func usdn_100 (amount) = {
3210 let usdnAmountOnStart = assetBalance(this, USDN)
3311 if ((usdnAmountOnStart == usdnAmountOnStart))
3412 then {
3513 let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil)
3614 if ((inv == inv))
3715 then {
3816 let usdnAmountAfterWithdraw = assetBalance(this, USDN)
3917 if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw))
4018 then [ScriptTransfer(aggrAddress, (usdnAmountAfterWithdraw - usdnAmountOnStart), USDN)]
4119 else throw("Strict value is not equal to itself.")
4220 }
4321 else throw("Strict value is not equal to itself.")
4422 }
4523 else throw("Strict value is not equal to itself.")
4624 }
4725
4826
49-
50-@Callable(i)
51-func surf (w) = if (if ((i.caller != adminAddress))
52- then (i.caller != this)
53- else false)
54- then throw("only admin can do")
55- else {
56- let neutrinoMetrics = asAnyList(invoke(addressFromStringValue("3P77iUusNwMMzWFdC8f7bftwpHyG1PBs1gq"), "calcNeutinoMetricsREADONLY", nil, nil))
57- let BR = asInt(neutrinoMetrics[8])
58- if ((w > BR))
59- then {
60- let inv = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "withdrawVestedAllSURF", [false, true], nil)
61- if ((inv == inv))
62- then {
63- let aAmount = assetBalance(this, SURF)
64-[ScriptTransfer(aggrAddress, aAmount, SURF)]
65- }
66- else throw("Strict value is not equal to itself.")
67- }
68- else throw(("br is bad. " + toString(BR)))
69- }
70-
71-
72-
73-@Callable(i)
74-func toVesting (b) = if (if (if ((i.originCaller != adminAddress))
75- then (i.originCaller != this)
76- else false)
77- then (i.originCaller != aggrAddress)
78- else false)
79- then throw("only admin can do")
80- else if ((size(i.payments) != 1))
81- then throw("bad payment")
82- else {
83- let repayAmount = i.payments[0].amount
84- let repayAsset = i.payments[0].assetId
85- let inv1 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "repay", [b], [AttachedPayment(repayAsset, repayAmount)])
86- if ((inv1 == inv1))
87- then {
88- let inv2 = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "convertToUSDN", nil, nil)
89- if ((inv2 == inv2))
90- then {
91- let inv3 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "withdraw", ["DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p", -1], nil)
92- if ((inv3 == inv3))
93- then {
94- let balance = assetBalance(this, value(repayAsset))
95- if ((balance == balance))
96- then [ScriptTransfer(aggrAddress, balance, repayAsset), ScriptTransfer(usdnAggrAddress, assetBalance(this, USDN), USDN)]
97- else throw("Strict value is not equal to itself.")
98- }
99- else throw("Strict value is not equal to itself.")
100- }
101- else throw("Strict value is not equal to itself.")
102- }
103- else throw("Strict value is not equal to itself.")
104- }
105-
106-

github/deemru/w8io/6500d08 
28.09 ms