tx · BUibRtZQGvBvai7anRndBCR1QFdJqJXWuYwTgRD2KVb5

3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy:  -0.01000000 Waves

2023.01.08 19:50 [3461748] smart account 3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy > SELF 0.00000000 Waves

{ "type": 13, "id": "BUibRtZQGvBvai7anRndBCR1QFdJqJXWuYwTgRD2KVb5", "fee": 1000000, "feeAssetId": null, "timestamp": 1673196661341, "version": 2, "chainId": 87, "sender": "3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy", "senderPublicKey": "9KXfR1iJDN9MLTf7rgrygpRA3HG53KCgWyxzqk4m25Qd", "proofs": [ "4iNyBKchjW1BAdjPBye4xAAjjHenhPKvp637Hqvyu1pwa6oxFnp34H1DCJqX5ZLMQEA1Qo2yaBGvSCNL5dNK1Lcf" ], "script": "base64:BgIGCAISABIACAAZV1hfTFBfV0FWRVNfVVNETl9BU1NFVF9JRAEgXedtbkamxzmxtK4hQ1NqaJeqmQ+fWxX6vGpRDRxJGSAAF1dYX1BPT0xfV0FWRVNfVVNETl9EQVBQCQEHQWRkcmVzcwEBGgFX7UefzUI8k75LIc37An4fyC37loB6w699ABtORVVUUklOT19SRVNUX1JFQURPTkxZX0RBUFAJAQdBZGRyZXNzAQEaAVc2mMwFV8eubgPH9X8mVUOITa4f15p3UlEAFU5FVVRSSU5PX01FVFJJQ1NfREFQUAkBB0FkZHJlc3MBARoBVzjkpo76YXsJPSIs33Rbs+CIsp0VDzoUtgANVVNETl9BU1NFVF9JRAEgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEBCWFzQW55TGlzdAEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAglMaXN0W0FueV0EAWwFByRtYXRjaDAFAWwJAAIBAgQjZXJyAQVhc0ludAEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgNJbnQEAXgFByRtYXRjaDAFAXgEAXQFByRtYXRjaDAJAAIBAgQjZXJyAQVhc1N0cgEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXgFByRtYXRjaDAFAXgDCQABAgUHJG1hdGNoMAIDSW50BAFpBQckbWF0Y2gwCQACAQkApAMBBQFpAwkAAQIFByRtYXRjaDACB0Jvb2xlYW4EAWIFByRtYXRjaDAJAAIBCQClAwEFAWIEAXQFByRtYXRjaDAJAAIBAgUjZXJyIAIBaQEHZGVmYXVsdAADCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAgtOb3QgYWxsb3dlZAMDCQEBIQEJAQlpc0RlZmluZWQBCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQGCQECIT0CCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQFDVVTRE5fQVNTRVRfSUQJAAIBAglVU0ROIE9ubHkEBmFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQED25ldXRyaW5vTWV0cmljcwkBCWFzQW55TGlzdAEJAPwHBAUVTkVVVFJJTk9fTUVUUklDU19EQVBQAhpjYWxjTmV1dGlub01ldHJpY3NSRUFET05MWQUDbmlsBQNuaWwDCQAAAgUPbmV1dHJpbm9NZXRyaWNzBQ9uZXV0cmlub01ldHJpY3MEAkJSCQEFYXNJbnQBCQCRAwIFD25ldXRyaW5vTWV0cmljcwAIAwkAZgIFAkJSAJSRBgQEY2FsbAkBBWFzU3RyAQkA/AcEBRtORVVUUklOT19SRVNUX1JFQURPTkxZX0RBUFACEHN3YXBJbmZvUkVBRE9OTFkJAMwIAgkA2AQBCAgFAWkGY2FsbGVyBWJ5dGVzBQNuaWwFA25pbAMJAAACBQRjYWxsBQRjYWxsBBFuZXV0cmlub19kYXRhX2FycgkAtQkCBQRjYWxsAgJfXwQYYWxyZWFkeVN3YXBwZWRVbmRlckxpbWl0CQEFYXNJbnQBCQCRAwIFEW5ldXRyaW5vX2RhdGFfYXJyAAsEFW1heEF2YWlsYWJsZVRvU3dhcE5vdwkBBWFzSW50AQkAkQMCBRFuZXV0cmlub19kYXRhX2FycgAKAwkBAiE9AgUYYWxyZWFkeVN3YXBwZWRVbmRlckxpbWl0AAAJAAIBAg5DYW4ndCBzd2FwIHlldAQRYW1vdW5PZlVzZG5Ub1N3YXADCQBmAgUGYW1vdW50BRVtYXhBdmFpbGFibGVUb1N3YXBOb3cFFW1heEF2YWlsYWJsZVRvU3dhcE5vdwUGYW1vdW50BBJzd2FwVXNkblRvV2F2ZXNfU0MJAPwHBAkBB0FkZHJlc3MBARoBVyDCi2Z2rMPA457xP8NFWRqjYj6l2pd0igITc3dhcE5ldXRyaW5vVG9XYXZlcwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQ1VU0ROX0FTU0VUX0lEBRFhbW91bk9mVXNkblRvU3dhcAUDbmlsAwkAAAIFEnN3YXBVc2RuVG9XYXZlc19TQwUSc3dhcFVzZG5Ub1dhdmVzX1NDBQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAIBAgtCciB1bmRlciAxMAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgFpAQp3YXZlc1RvVWRuAAMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECC05vdCBhbGxvd2VkAwkBCWlzRGVmaW5lZAEICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAkAAgECCldBVkVTIE9ubHkEBmFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQEBWNhbGwxCQD8BwQFF1dYX1BPT0xfV0FWRVNfVVNETl9EQVBQAglwdXRPbmVUa24JAMwIAgABCQDMCAIHBQNuaWwJAMwIAgkBD0F0dGFjaGVkUGF5bWVudAIFBHVuaXQFBmFtb3VudAUDbmlsAwkAAAIFBWNhbGwxBQVjYWxsMQQObHBUb2tlbkJhbGFuY2UJAPAHAgUEdGhpcwUZV1hfTFBfV0FWRVNfVVNETl9BU1NFVF9JRAQFY2FsbDIJAPwHBAUXV1hfUE9PTF9XQVZFU19VU0ROX0RBUFACCWdldE9uZVRrbgkAzAgCBQ1VU0ROX0FTU0VUX0lECQDMCAIAAQUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBRlXWF9MUF9XQVZFU19VU0ROX0FTU0VUX0lEBQ5scFRva2VuQmFsYW5jZQUDbmlsAwkAAAIFBWNhbGwyBQVjYWxsMgUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuAQJ0eAEGdmVyaWZ5AAkAyBMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAgFAnR4D3NlbmRlclB1YmxpY0tleRl22Bs=", "height": 3461748, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HSnK8Z3HMcJJso3NaUzR6nq79TR22KHvZiu1zCZLLibH Next: 9LV5MD3fnWZeQ9rQYWnQJsPa8LZDYnLgFTYeVjs71Z9B Diff:
OldNewDifferences
3030 func asStr (v) = match v {
3131 case x: String =>
3232 x
33+ case i: Int =>
34+ throw(toString(i))
35+ case b: Boolean =>
36+ throw(toString(b))
3337 case t =>
3438 throw("#err ")
3539 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let WX_LP_WAVES_USDN_ASSET_ID = base58'7KZbJrVopwJhkdwbe1eFDBbex4dkY63MxjTNjqXtrzj1'
55
66 let WX_POOL_WAVES_USDN_DAPP = Address(base58'3PPZWgFNRKHLvM51pwS934C8VZ7d2F4Z58g')
77
88 let NEUTRINO_REST_READONLY_DAPP = Address(base58'3P6uaG88jjcLYZQrvJHLWPbFFRnChnAzmcU')
99
1010 let NEUTRINO_METRICS_DAPP = Address(base58'3P77iUusNwMMzWFdC8f7bftwpHyG1PBs1gq')
1111
1212 let USDN_ASSET_ID = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
1313
1414 func asAnyList (v) = match v {
1515 case l: List[Any] =>
1616 l
1717 case _ =>
1818 throw("#err")
1919 }
2020
2121
2222 func asInt (v) = match v {
2323 case x: Int =>
2424 x
2525 case t =>
2626 throw("#err")
2727 }
2828
2929
3030 func asStr (v) = match v {
3131 case x: String =>
3232 x
33+ case i: Int =>
34+ throw(toString(i))
35+ case b: Boolean =>
36+ throw(toString(b))
3337 case t =>
3438 throw("#err ")
3539 }
3640
3741
3842 @Callable(i)
3943 func default () = if ((i.caller != this))
4044 then throw("Not allowed")
4145 else if (if (!(isDefined(i.payments[0].assetId)))
4246 then true
4347 else (i.payments[0].assetId != USDN_ASSET_ID))
4448 then throw("USDN Only")
4549 else {
4650 let amount = i.payments[0].amount
4751 let neutrinoMetrics = asAnyList(invoke(NEUTRINO_METRICS_DAPP, "calcNeutinoMetricsREADONLY", nil, nil))
4852 if ((neutrinoMetrics == neutrinoMetrics))
4953 then {
5054 let BR = asInt(neutrinoMetrics[8])
5155 if ((BR > 100500))
5256 then {
5357 let call = asStr(invoke(NEUTRINO_REST_READONLY_DAPP, "swapInfoREADONLY", [toBase58String(i.caller.bytes)], nil))
5458 if ((call == call))
5559 then {
5660 let neutrino_data_arr = split(call, "__")
5761 let alreadySwappedUnderLimit = asInt(neutrino_data_arr[11])
5862 let maxAvailableToSwapNow = asInt(neutrino_data_arr[10])
5963 if ((alreadySwappedUnderLimit != 0))
6064 then throw("Can't swap yet")
6165 else {
6266 let amounOfUsdnToSwap = if ((amount > maxAvailableToSwapNow))
6367 then maxAvailableToSwapNow
6468 else amount
6569 let swapUsdnToWaves_SC = invoke(Address(base58'3P4v7QaMk6us7PdxSuoR5LmZmemv5ruD6oj'), "swapNeutrinoToWaves", nil, [AttachedPayment(USDN_ASSET_ID, amounOfUsdnToSwap)])
6670 if ((swapUsdnToWaves_SC == swapUsdnToWaves_SC))
6771 then nil
6872 else throw("Strict value is not equal to itself.")
6973 }
7074 }
7175 else throw("Strict value is not equal to itself.")
7276 }
7377 else throw("Br under 10")
7478 }
7579 else throw("Strict value is not equal to itself.")
7680 }
7781
7882
7983
8084 @Callable(i)
8185 func wavesToUdn () = if ((i.caller != this))
8286 then throw("Not allowed")
8387 else if (isDefined(i.payments[0].assetId))
8488 then throw("WAVES Only")
8589 else {
8690 let amount = i.payments[0].amount
8791 let call1 = invoke(WX_POOL_WAVES_USDN_DAPP, "putOneTkn", [1, false], [AttachedPayment(unit, amount)])
8892 if ((call1 == call1))
8993 then {
9094 let lpTokenBalance = assetBalance(this, WX_LP_WAVES_USDN_ASSET_ID)
9195 let call2 = invoke(WX_POOL_WAVES_USDN_DAPP, "getOneTkn", [USDN_ASSET_ID, 1], [AttachedPayment(WX_LP_WAVES_USDN_ASSET_ID, lpTokenBalance)])
9296 if ((call2 == call2))
9397 then nil
9498 else throw("Strict value is not equal to itself.")
9599 }
96100 else throw("Strict value is not equal to itself.")
97101 }
98102
99103
100104 @Verifier(tx)
101105 func verify () = sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
102106

github/deemru/w8io/3ef1775 
39.92 ms