tx · 3A5wrTjG7USLDpspS3R512JZuvLNiA8cgRRWttNFbdGn

3P4x6kpsu63wHbqAVxB6DWN5CzSqNSrtQaK:  -0.01400000 Waves

2022.04.11 12:24 [3069039] smart account 3P4x6kpsu63wHbqAVxB6DWN5CzSqNSrtQaK > SELF 0.00000000 Waves

{ "type": 13, "id": "3A5wrTjG7USLDpspS3R512JZuvLNiA8cgRRWttNFbdGn", "fee": 1400000, "feeAssetId": null, "timestamp": 1649669047615, "version": 2, "chainId": 87, "sender": "3P4x6kpsu63wHbqAVxB6DWN5CzSqNSrtQaK", "senderPublicKey": "ibrKsGF9M8wvjvpmNGtwTNkoC1jk26QJQSzJr8pd2ZW", "proofs": [ "53tYBfQvxhDmj6xUnubtbrcbaU97oFVtnneACmCroxrAm3Mp6uUJ1JJwep5kAxkDhzCqEjZFSZM5tngM3Cjdsbp9" ], "script": "base64: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", "height": 3069039, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: D1Zo3r2d6i7rfdCXWpUqXouyAUUeKSptnNgJ85Pz6Ch7 Next: 5FUmPa8M3Jdw7ovWsqM8mUB6izAmoaPREyQGFoLjoVjw Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-func getIntOrZero (key) = valueOrElse(getInteger(this, key), 0)
4+let nsbtAssetId = base58'6nSpVyNH7yM69eg446wrQR94ipbbcmZMU1ENPwanC97g'
55
6+let usdnAssetId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
67
7-let userHealthAddress = base58'3PAZv9tgK1PX7dKR7b4kchq5qdpUS3G5sYT'
8+let bdmsSC = base58'3PG2vMhK5CPqsCDodvLGzQ84QkoHXCJ3oNP'
89
9-let viresWavesAddress = base58'3P8G747fnB1DTQ4d5uD114vjAaeezCW4FaM'
10+let swopFiNsbtUsdn = base58'3P2V63Xd6BviDkeMzxhUw2SJyojByRz8a8m'
1011
11-let viresUsdnAddress = base58'3PCwFXSq8vj8iKitA5zrrLRbuqehfmimpce'
12+let swopFiUsdnWaves = base58'3PHaNgomBkrvEL2QnuJarQVJa71wjw9qiqG'
1213
13-let viresUsdtAddress = base58'3PEiD1zJWTMZNWSCyzhvBw9pxxAWeEwaghR'
14+let wavesAmount = 1000000000
1415
15-let viresUsdcAddress = base58'3PGCkrHBxFMi7tz1xqnxgBpeNvn5E4M4g8S'
16-
17-let viresBtcAddress = base58'3PA7QMFyHMtHeP66SUQnwCgwKQHKpCyXWwd'
18-
19-let viresEthAddress = base58'3PPdeWwrzaxqgr6BuReoF3sWfxW8SYv743D'
20-
21-let viresEurnAddress = base58'3PBjqiMwwag72VWUtHNnVrxTBrNK8D7bVcN'
22-
23-func getSupply (wallet,vires) = {
24- let key = (wallet + "_aTokenBalance")
25- valueOrElse(getInteger(vires, key), 0)
16+@Callable(i)
17+func bdsm () = {
18+ let startWavesAmount = wavesBalance(this).regular
19+ if ((startWavesAmount == startWavesAmount))
20+ then {
21+ let startUsdnAmount = assetBalance(this, usdnAssetId)
22+ if ((startUsdnAmount == startUsdnAmount))
23+ then {
24+ let startNsbtAmount = assetBalance(this, nsbtAssetId)
25+ if ((startNsbtAmount == startNsbtAmount))
26+ then {
27+ let r = invoke(Address(bdmsSC), "buyNsbt", nil, [AttachedPayment(unit, wavesAmount)])
28+ if ((r == r))
29+ then {
30+ let swopNsbtAmount = (assetBalance(this, nsbtAssetId) - startNsbtAmount)
31+ if ((swopNsbtAmount == swopNsbtAmount))
32+ then {
33+ let sbu = invoke(Address(swopFiNsbtUsdn), "exchange", [1000000], [AttachedPayment(nsbtAssetId, swopNsbtAmount)])
34+ if ((sbu == sbu))
35+ then {
36+ let swopUsdnAmount = (assetBalance(this, usdnAssetId) - startUsdnAmount)
37+ if ((swopUsdnAmount == swopUsdnAmount))
38+ then {
39+ let suw = invoke(Address(swopFiUsdnWaves), "exchange", [(wavesAmount + 10000000)], [AttachedPayment(usdnAssetId, swopUsdnAmount)])
40+ if ((suw == suw))
41+ then nil
42+ else throw("swap usdn to waves error")
43+ }
44+ else throw("Strict value is not equal to itself.")
45+ }
46+ else throw("swap nsbt to usdn error")
47+ }
48+ else throw("Strict value is not equal to itself.")
49+ }
50+ else throw("bad req")
51+ }
52+ else throw("Strict value is not equal to itself.")
53+ }
54+ else throw("Strict value is not equal to itself.")
55+ }
56+ else throw("Strict value is not equal to itself.")
2657 }
27-
28-
29-func getBorrow (wallet,vires) = {
30- let key = (wallet + "_debt")
31- valueOrElse(getInteger(vires, key), 0)
32- }
33-
34-
35-func getViresInfo (wallet) = {
36- let supplyWaves = getSupply(wallet, Address(viresWavesAddress))
37- let supplyUsdn = getSupply(wallet, Address(viresUsdnAddress))
38- let supplyUsdt = getSupply(wallet, Address(viresUsdtAddress))
39- let supplyUsdc = getSupply(wallet, Address(viresUsdcAddress))
40- let supplyBtc = getSupply(wallet, Address(viresBtcAddress))
41- let supplyEth = getSupply(wallet, Address(viresEthAddress))
42- let supplyEurn = getSupply(wallet, Address(viresEurnAddress))
43- let borrowWaves = getBorrow(wallet, Address(viresWavesAddress))
44- let borrowUsdn = getBorrow(wallet, Address(viresUsdnAddress))
45- let borrowUsdt = getBorrow(wallet, Address(viresUsdtAddress))
46- let borrowUsdc = getBorrow(wallet, Address(viresUsdcAddress))
47- let borrowBtc = getBorrow(wallet, Address(viresBtcAddress))
48- let borrowEth = getBorrow(wallet, Address(viresEthAddress))
49- let borrowEurn = getBorrow(wallet, Address(viresEurnAddress))
50-[supplyWaves, supplyUsdn, supplyUsdt, supplyUsdc, supplyBtc, supplyEth, supplyEurn, borrowWaves, borrowUsdn, borrowUsdt, borrowUsdc, borrowBtc, borrowEth, borrowEurn]
51- }
52-
5358
5459

github/deemru/w8io/6500d08 
40.32 ms