tx · DEonvdKosUy1HhJtiFoKTnBWdqAC5YAEk4nfz226qJb8

3PEB47VdzyGv5C4RTK8xG6ZDErSqqJdzsc7:  -0.00600000 Waves

2022.12.20 12:19 [3433891] smart account 3PEB47VdzyGv5C4RTK8xG6ZDErSqqJdzsc7 > SELF 0.00000000 Waves

{ "type": 13, "id": "DEonvdKosUy1HhJtiFoKTnBWdqAC5YAEk4nfz226qJb8", "fee": 600000, "feeAssetId": null, "timestamp": 1671527977156, "version": 1, "sender": "3PEB47VdzyGv5C4RTK8xG6ZDErSqqJdzsc7", "senderPublicKey": "71xL744Ac1K9CF1rHr6MPkaDcH1DneGQzsjtnGBLRZ7J", "proofs": [ "2tfMf8TvbFZmof58Me9fEEHMYCyeFsbdQLB1LrwRe75KAaUoT7nrfmfpwB8t8azhHHU6M3165fUaKASyKP1aKnLE" ], "script": "base64:BgIRCAISAwoBARIDCgEBEgMKAQgHAARVU0ROASC2JinDBPXOU5GkDkt1JC9kjFGx+t+vVCm9SNIdKrKq0QAEU1VSRgEgktH0SuIRASv0fureIY49xfvJ8n3Oh7LtUhnwOk4kWPUADGFkbWluQWRkcmVzcwkBB0FkZHJlc3MBARoBVzQU33FERt8wVNH3uJxzRQyrOiubTY4mYQALYWdnckFkZHJlc3MJAQdBZGRyZXNzAQEaAVcmoAwKRk40ZcKF6sgTyCpEYAtLwsvxm2wAD3VzZG5BZ2dyQWRkcmVzcwkBB0FkZHJlc3MBARoBVweM4VWhvZh89gDrWb9OOevERaVec2TfbAEJYXNBbnlMaXN0AQF2BAckbWF0Y2gwBQF2AwkAAQIFByRtYXRjaDACCUxpc3RbQW55XQQBbAUHJG1hdGNoMAUBbAkAAgECBCNlcnIBBWFzSW50AQF2BAckbWF0Y2gwBQF2AwkAAQIFByRtYXRjaDACA0ludAQBeAUHJG1hdGNoMAUBeAQBdAUHJG1hdGNoMAkAAgECBCNlcnIDAWkBCHVzZG5fMTAwAQZhbW91bnQDCQECIT0CCAUBaQxvcmlnaW5DYWxsZXIFDGFkbWluQWRkcmVzcwkAAgECEW9ubHkgYWRtaW4gY2FuIGRvBBF1c2RuQW1vdW50T25TdGFydAkA8AcCBQR0aGlzBQRVU0ROAwkAAAIFEXVzZG5BbW91bnRPblN0YXJ0BRF1c2RuQW1vdW50T25TdGFydAQDaW52CQD8BwQJARFAZXh0ck5hdGl2ZSgxMDYyKQECIzNQQ2J2UFZRZlN2VnU4OGlwOEZtNVlqd0poakVZazFUeGhrAhV3aXRoZHJhd1Zlc3RlZEFsbFVTRE4JAMwIAgcJAMwIAgYFA25pbAUDbmlsAwkAAAIFA2ludgUDaW52BBd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwkA8AcCBQR0aGlzBQRVU0ROAwkAAAIFF3VzZG5BbW91bnRBZnRlcldpdGhkcmF3BRd1c2RuQW1vdW50QWZ0ZXJXaXRoZHJhdwkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQthZ2dyQWRkcmVzcwkAZQIFF3VzZG5BbW91bnRBZnRlcldpdGhkcmF3BRF1c2RuQW1vdW50T25TdGFydAUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAWkBBHN1cmYBAXcDAwkBAiE9AggFAWkGY2FsbGVyBQxhZG1pbkFkZHJlc3MJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwcJAAIBAhFvbmx5IGFkbWluIGNhbiBkbwQPbmV1dHJpbm9NZXRyaWNzCQEJYXNBbnlMaXN0AQkA/AcECQERQGV4dHJOYXRpdmUoMTA2MikBAiMzUDc3aVV1c053TU16V0ZkQzhmN2JmdHdwSHlHMVBCczFncQIaY2FsY05ldXRpbm9NZXRyaWNzUkVBRE9OTFkFA25pbAUDbmlsBAJCUgkBBWFzSW50AQkAkQMCBQ9uZXV0cmlub01ldHJpY3MACAMJAGYCBQF3BQJCUgQDaW52CQD8BwQJAQdBZGRyZXNzAQEaAVd1Et2Tgg9b3iV2FTnLSdUfUygJxOhxXicCFXdpdGhkcmF3VmVzdGVkQWxsU1VSRgkAzAgCBwkAzAgCBgUDbmlsBQNuaWwDCQAAAgUDaW52BQNpbnYEB2FBbW91bnQJAPAHAgUEdGhpcwUEU1VSRgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQthZ2dyQWRkcmVzcwUHYUFtb3VudAUEU1VSRgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQkArAICAgticiBpcyBiYWQuIAkApAMBBQJCUgFpAQl0b1Zlc3RpbmcBAWIDAwMJAQIhPQIIBQFpDG9yaWdpbkNhbGxlcgUMYWRtaW5BZGRyZXNzCQECIT0CCAUBaQxvcmlnaW5DYWxsZXIFBHRoaXMHCQECIT0CCAUBaQxvcmlnaW5DYWxsZXIFC2FnZ3JBZGRyZXNzBwkAAgECEW9ubHkgYWRtaW4gY2FuIGRvAwkBAiE9AgkAkAMBCAUBaQhwYXltZW50cwABCQACAQILYmFkIHBheW1lbnQEC3JlcGF5QW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQKcmVwYXlBc3NldAgJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBARpbnYxCQD8BwQJAQdBZGRyZXNzAQEaAVdewZYZMMmiQ3hGadYm1vHmuEPQvfZMHrgCBXJlcGF5CQDMCAIFAWIFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUKcmVwYXlBc3NldAULcmVwYXlBbW91bnQFA25pbAMJAAACBQRpbnYxBQRpbnYxBARpbnYyCQD8BwQJAQdBZGRyZXNzAQEaAVd1Et2Tgg9b3iV2FTnLSdUfUygJxOhxXicCDWNvbnZlcnRUb1VTRE4FA25pbAUDbmlsAwkAAAIFBGludjIFBGludjIEBGludjMJAPwHBAkBB0FkZHJlc3MBARoBV17BlhkwyaJDeEZp1ibW8ea4Q9C99kweuAIId2l0aGRyYXcJAMwIAgIsREcyeEZrUGREd0tVb0JrekdBaFF0THBTR3pmWExpQ1lQRXplS0gyQWQyNHAJAMwIAgD///////////8BBQNuaWwFA25pbAMJAAACBQRpbnYzBQRpbnYzBAdiYWxhbmNlCQDwBwIFBHRoaXMJAQV2YWx1ZQEFCnJlcGF5QXNzZXQDCQAAAgUHYmFsYW5jZQUHYmFsYW5jZQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQthZ2dyQWRkcmVzcwUHYmFsYW5jZQUKcmVwYXlBc3NldAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDBQ91c2RuQWdnckFkZHJlc3MJAPAHAgUEdGhpcwUEVVNETgUEVVNETgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuADILk7E=", "chainId": 87, "height": 3433891, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4sv9NAt8j3qYKgL9er8UKNzpxGtVwxHdgY1pnzwSycf9 Next: A32PG5ZDe28gc19RqhEno65K3kZ5EN2VMhAWmvwDDXus Diff:
OldNewDifferences
88 let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC')
99
1010 let aggrAddress = Address(base58'3P5T88oGg47FEsJcpC2o43BSF34Bs5dcFpP')
11+
12+let usdnAggrAddress = Address(base58'3P2cpE7nusQRRFt3Tg22WtKfdi6bUKwmqVM')
1113
1214 func asAnyList (v) = match v {
1315 case l: List[Any] =>
8890 let inv2 = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "convertToUSDN", nil, nil)
8991 if ((inv2 == inv2))
9092 then {
91- let balance = assetBalance(this, value(repayAsset))
92- if ((balance == balance))
93- then [ScriptTransfer(aggrAddress, balance, repayAsset)]
93+ let inv3 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "withdraw", ["DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p", -1], nil)
94+ if ((inv3 == inv3))
95+ then {
96+ let balance = assetBalance(this, value(repayAsset))
97+ if ((balance == balance))
98+ then [ScriptTransfer(aggrAddress, balance, repayAsset), ScriptTransfer(usdnAggrAddress, assetBalance(this, USDN), USDN)]
99+ else throw("Strict value is not equal to itself.")
100+ }
94101 else throw("Strict value is not equal to itself.")
95102 }
96103 else throw("Strict value is not equal to itself.")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let USDN = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
55
66 let SURF = base58'At8D6NFFpheCbvKVnjVoeLL84Eo8NZn6ovManxfLaFWL'
77
88 let adminAddress = Address(base58'3P6gGsVQbD2xgmaNxN7Rj3arohPsBxvo5GC')
99
1010 let aggrAddress = Address(base58'3P5T88oGg47FEsJcpC2o43BSF34Bs5dcFpP')
11+
12+let usdnAggrAddress = Address(base58'3P2cpE7nusQRRFt3Tg22WtKfdi6bUKwmqVM')
1113
1214 func asAnyList (v) = match v {
1315 case l: List[Any] =>
1416 l
1517 case _ =>
1618 throw("#err")
1719 }
1820
1921
2022 func asInt (v) = match v {
2123 case x: Int =>
2224 x
2325 case t =>
2426 throw("#err")
2527 }
2628
2729
2830 @Callable(i)
2931 func usdn_100 (amount) = if ((i.originCaller != adminAddress))
3032 then throw("only admin can do")
3133 else {
3234 let usdnAmountOnStart = assetBalance(this, USDN)
3335 if ((usdnAmountOnStart == usdnAmountOnStart))
3436 then {
3537 let inv = invoke(addressFromStringValue("3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk"), "withdrawVestedAllUSDN", [false, true], nil)
3638 if ((inv == inv))
3739 then {
3840 let usdnAmountAfterWithdraw = assetBalance(this, USDN)
3941 if ((usdnAmountAfterWithdraw == usdnAmountAfterWithdraw))
4042 then [ScriptTransfer(aggrAddress, (usdnAmountAfterWithdraw - usdnAmountOnStart), USDN)]
4143 else throw("Strict value is not equal to itself.")
4244 }
4345 else throw("Strict value is not equal to itself.")
4446 }
4547 else throw("Strict value is not equal to itself.")
4648 }
4749
4850
4951
5052 @Callable(i)
5153 func surf (w) = if (if ((i.caller != adminAddress))
5254 then (i.caller != this)
5355 else false)
5456 then throw("only admin can do")
5557 else {
5658 let neutrinoMetrics = asAnyList(invoke(addressFromStringValue("3P77iUusNwMMzWFdC8f7bftwpHyG1PBs1gq"), "calcNeutinoMetricsREADONLY", nil, nil))
5759 let BR = asInt(neutrinoMetrics[8])
5860 if ((w > BR))
5961 then {
6062 let inv = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "withdrawVestedAllSURF", [false, true], nil)
6163 if ((inv == inv))
6264 then {
6365 let aAmount = assetBalance(this, SURF)
6466 [ScriptTransfer(aggrAddress, aAmount, SURF)]
6567 }
6668 else throw("Strict value is not equal to itself.")
6769 }
6870 else throw(("br is bad. " + toString(BR)))
6971 }
7072
7173
7274
7375 @Callable(i)
7476 func toVesting (b) = if (if (if ((i.originCaller != adminAddress))
7577 then (i.originCaller != this)
7678 else false)
7779 then (i.originCaller != aggrAddress)
7880 else false)
7981 then throw("only admin can do")
8082 else if ((size(i.payments) != 1))
8183 then throw("bad payment")
8284 else {
8385 let repayAmount = i.payments[0].amount
8486 let repayAsset = i.payments[0].assetId
8587 let inv1 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "repay", [b], [AttachedPayment(repayAsset, repayAmount)])
8688 if ((inv1 == inv1))
8789 then {
8890 let inv2 = invoke(Address(base58'3PCbvPVQfSvVu88ip8Fm5YjwJhjEYk1Txhk'), "convertToUSDN", nil, nil)
8991 if ((inv2 == inv2))
9092 then {
91- let balance = assetBalance(this, value(repayAsset))
92- if ((balance == balance))
93- then [ScriptTransfer(aggrAddress, balance, repayAsset)]
93+ let inv3 = invoke(Address(base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'), "withdraw", ["DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p", -1], nil)
94+ if ((inv3 == inv3))
95+ then {
96+ let balance = assetBalance(this, value(repayAsset))
97+ if ((balance == balance))
98+ then [ScriptTransfer(aggrAddress, balance, repayAsset), ScriptTransfer(usdnAggrAddress, assetBalance(this, USDN), USDN)]
99+ else throw("Strict value is not equal to itself.")
100+ }
94101 else throw("Strict value is not equal to itself.")
95102 }
96103 else throw("Strict value is not equal to itself.")
97104 }
98105 else throw("Strict value is not equal to itself.")
99106 }
100107
101108

github/deemru/w8io/6500d08 
35.56 ms