tx · DC2cjdnqAh2f81TVL5KuNJuoH6oRceSoUfF7hBJm7Bgx

3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy:  -0.01000000 Waves

2023.01.08 20:49 [3461801] smart account 3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy > SELF 0.00000000 Waves

{ "type": 13, "id": "DC2cjdnqAh2f81TVL5KuNJuoH6oRceSoUfF7hBJm7Bgx", "fee": 1000000, "feeAssetId": null, "timestamp": 1673200207661, "version": 2, "chainId": 87, "sender": "3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy", "senderPublicKey": "9KXfR1iJDN9MLTf7rgrygpRA3HG53KCgWyxzqk4m25Qd", "proofs": [ "XomBVgFE6mSGqAksu1t8ikHkRdTBcwVtd7LvJ3VFdJ4z8U7ar2s8Td7QgsijYB25xEaHynFoibQ8zs1Dzk9VRWR" ], "script": "base64:BgIGCAISABIACAAZV1hfTFBfV0FWRVNfVVNETl9BU1NFVF9JRAEgXedtbkamxzmxtK4hQ1NqaJeqmQ+fWxX6vGpRDRxJGSAAF1dYX1BPT0xfV0FWRVNfVVNETl9EQVBQCQEHQWRkcmVzcwEBGgFX7UefzUI8k75LIc37An4fyC37loB6w699ABtORVVUUklOT19SRVNUX1JFQURPTkxZX0RBUFAJAQdBZGRyZXNzAQEaAVc2mMwFV8eubgPH9X8mVUOITa4f15p3UlEAFU5FVVRSSU5PX01FVFJJQ1NfREFQUAkBB0FkZHJlc3MBARoBVzjkpo76YXsJPSIs33Rbs+CIsp0VDzoUtgANVVNETl9BU1NFVF9JRAEgtiYpwwT1zlORpA5LdSQvZIxRsfrfr1QpvUjSHSqyqtEBCWFzQW55TGlzdAEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAglMaXN0W0FueV0EAWwFByRtYXRjaDAFAWwJAAIBAgQjZXJyAQVhc0ludAEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgNJbnQEAXgFByRtYXRjaDAFAXgEAXQFByRtYXRjaDAJAAIBAgQjZXJyAQVhc1N0cgEBdgQHJG1hdGNoMAUBdgMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXgFByRtYXRjaDAFAXgEAXQFByRtYXRjaDAJAAIBAgQjZXJyAgFpAQdkZWZhdWx0AAMJAQIhPQIIBQFpBmNhbGxlcgUEdGhpcwkAAgECC05vdCBhbGxvd2VkAwMJAQEhAQkBCWlzRGVmaW5lZAEICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAYJAQIhPQIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAUNVVNETl9BU1NFVF9JRAkAAgECCVVTRE4gT25seQQGYW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQPbmV1dHJpbm9NZXRyaWNzCQEJYXNBbnlMaXN0AQkA/AcEBRVORVVUUklOT19NRVRSSUNTX0RBUFACGmNhbGNOZXV0aW5vTWV0cmljc1JFQURPTkxZBQNuaWwFA25pbAMJAAACBQ9uZXV0cmlub01ldHJpY3MFD25ldXRyaW5vTWV0cmljcwQCQlIJAQVhc0ludAEJAJEDAgUPbmV1dHJpbm9NZXRyaWNzAAgDCQBmAgUCQlIAlJEGBARjYWxsCQEFYXNTdHIBCQD8BwQFG05FVVRSSU5PX1JFU1RfUkVBRE9OTFlfREFQUAIQc3dhcEluZm9SRUFET05MWQkAzAgCAiMzUEc3Q0h2QmF0SHBDaHdtOHJlSDc0d2ZFd2sxUEhjOFJxeQUDbmlsBQNuaWwDCQAAAgUEY2FsbAUEY2FsbAQRbmV1dHJpbm9fZGF0YV9hcnIJALUJAgUEY2FsbAICX18EGGFscmVhZHlTd2FwcGVkVW5kZXJMaW1pdAkBBWFzSW50AQkAkQMCBRFuZXV0cmlub19kYXRhX2FycgALBBVtYXhBdmFpbGFibGVUb1N3YXBOb3cJAQVhc0ludAEJAJEDAgURbmV1dHJpbm9fZGF0YV9hcnIACgMJAQIhPQIFGGFscmVhZHlTd2FwcGVkVW5kZXJMaW1pdAAACQACAQIOQ2FuJ3Qgc3dhcCB5ZXQEEWFtb3VuT2ZVc2RuVG9Td2FwAwkAZgIFBmFtb3VudAUVbWF4QXZhaWxhYmxlVG9Td2FwTm93BRVtYXhBdmFpbGFibGVUb1N3YXBOb3cFBmFtb3VudAQSc3dhcFVzZG5Ub1dhdmVzX1NDCQD8BwQJAQdBZGRyZXNzAQEaAVcgwotmdqzDwOOe8T/DRVkao2I+pdqXdIoCE3N3YXBOZXV0cmlub1RvV2F2ZXMFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUNVVNETl9BU1NFVF9JRAURYW1vdW5PZlVzZG5Ub1N3YXAFA25pbAMJAAACBRJzd2FwVXNkblRvV2F2ZXNfU0MFEnN3YXBVc2RuVG9XYXZlc19TQwUDbmlsCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQIkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQACAQILQnIgdW5kZXIgMTAJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BaQEKd2F2ZXNUb1VkbgADCQECIT0CCAUBaQZjYWxsZXIFBHRoaXMJAAIBAgtOb3QgYWxsb3dlZAMJAQlpc0RlZmluZWQBCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQJAAIBAgpXQVZFUyBPbmx5BAZhbW91bnQICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAVjYWxsMQkA/AcEBRdXWF9QT09MX1dBVkVTX1VTRE5fREFQUAIJcHV0T25lVGtuCQDMCAIAAQkAzAgCBwUDbmlsCQDMCAIJAQ9BdHRhY2hlZFBheW1lbnQCBQR1bml0BQZhbW91bnQFA25pbAMJAAACBQVjYWxsMQUFY2FsbDEEDmxwVG9rZW5CYWxhbmNlCQDwBwIFBHRoaXMFGVdYX0xQX1dBVkVTX1VTRE5fQVNTRVRfSUQEBWNhbGwyCQD8BwQFF1dYX1BPT0xfV0FWRVNfVVNETl9EQVBQAglnZXRPbmVUa24JAMwIAgUNVVNETl9BU1NFVF9JRAkAzAgCAAEFA25pbAkAzAgCCQEPQXR0YWNoZWRQYXltZW50AgUZV1hfTFBfV0FWRVNfVVNETl9BU1NFVF9JRAUObHBUb2tlbkJhbGFuY2UFA25pbAMJAAACBQVjYWxsMgUFY2FsbDIFA25pbAkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAgECJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgECdHgBBnZlcmlmeQAJAMgTAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkkhe+4", "height": 3461801, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: ezhxnfv5qdMTYJ3WiTprnNM4U7fz54wETFXJ5gN2kZs Next: DKASUrPNX31fMuEGvmbPYGiLnT3FLn7QwcCwLgLDr3Mh Diff:
OldNewDifferences
5050 let BR = asInt(neutrinoMetrics[8])
5151 if ((BR > 100500))
5252 then {
53- let call = asStr(invoke(NEUTRINO_REST_READONLY_DAPP, "swapInfoREADONLY", [toBase58String(i.caller.bytes)], nil))
53+ let call = asStr(invoke(NEUTRINO_REST_READONLY_DAPP, "swapInfoREADONLY", ["3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy"], nil))
5454 if ((call == call))
5555 then {
5656 let neutrino_data_arr = split(call, "__")
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
3333 case t =>
3434 throw("#err")
3535 }
3636
3737
3838 @Callable(i)
3939 func default () = if ((i.caller != this))
4040 then throw("Not allowed")
4141 else if (if (!(isDefined(i.payments[0].assetId)))
4242 then true
4343 else (i.payments[0].assetId != USDN_ASSET_ID))
4444 then throw("USDN Only")
4545 else {
4646 let amount = i.payments[0].amount
4747 let neutrinoMetrics = asAnyList(invoke(NEUTRINO_METRICS_DAPP, "calcNeutinoMetricsREADONLY", nil, nil))
4848 if ((neutrinoMetrics == neutrinoMetrics))
4949 then {
5050 let BR = asInt(neutrinoMetrics[8])
5151 if ((BR > 100500))
5252 then {
53- let call = asStr(invoke(NEUTRINO_REST_READONLY_DAPP, "swapInfoREADONLY", [toBase58String(i.caller.bytes)], nil))
53+ let call = asStr(invoke(NEUTRINO_REST_READONLY_DAPP, "swapInfoREADONLY", ["3PG7CHvBatHpChwm8reH74wfEwk1PHc8Rqy"], nil))
5454 if ((call == call))
5555 then {
5656 let neutrino_data_arr = split(call, "__")
5757 let alreadySwappedUnderLimit = asInt(neutrino_data_arr[11])
5858 let maxAvailableToSwapNow = asInt(neutrino_data_arr[10])
5959 if ((alreadySwappedUnderLimit != 0))
6060 then throw("Can't swap yet")
6161 else {
6262 let amounOfUsdnToSwap = if ((amount > maxAvailableToSwapNow))
6363 then maxAvailableToSwapNow
6464 else amount
6565 let swapUsdnToWaves_SC = invoke(Address(base58'3P4v7QaMk6us7PdxSuoR5LmZmemv5ruD6oj'), "swapNeutrinoToWaves", nil, [AttachedPayment(USDN_ASSET_ID, amounOfUsdnToSwap)])
6666 if ((swapUsdnToWaves_SC == swapUsdnToWaves_SC))
6767 then nil
6868 else throw("Strict value is not equal to itself.")
6969 }
7070 }
7171 else throw("Strict value is not equal to itself.")
7272 }
7373 else throw("Br under 10")
7474 }
7575 else throw("Strict value is not equal to itself.")
7676 }
7777
7878
7979
8080 @Callable(i)
8181 func wavesToUdn () = if ((i.caller != this))
8282 then throw("Not allowed")
8383 else if (isDefined(i.payments[0].assetId))
8484 then throw("WAVES Only")
8585 else {
8686 let amount = i.payments[0].amount
8787 let call1 = invoke(WX_POOL_WAVES_USDN_DAPP, "putOneTkn", [1, false], [AttachedPayment(unit, amount)])
8888 if ((call1 == call1))
8989 then {
9090 let lpTokenBalance = assetBalance(this, WX_LP_WAVES_USDN_ASSET_ID)
9191 let call2 = invoke(WX_POOL_WAVES_USDN_DAPP, "getOneTkn", [USDN_ASSET_ID, 1], [AttachedPayment(WX_LP_WAVES_USDN_ASSET_ID, lpTokenBalance)])
9292 if ((call2 == call2))
9393 then nil
9494 else throw("Strict value is not equal to itself.")
9595 }
9696 else throw("Strict value is not equal to itself.")
9797 }
9898
9999
100100 @Verifier(tx)
101101 func verify () = sigVerify_128Kb(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
102102

github/deemru/w8io/3ef1775 
36.38 ms