tx · 5AQYjvxkfWKg5HkUtgMLgvFMD3cc3Ef7tm3GNYUmQ789

3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc:  -0.04000000 Waves

2022.07.01 23:38 [2121074] smart account 3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc > SELF 0.00000000 Waves

{ "type": 13, "id": "5AQYjvxkfWKg5HkUtgMLgvFMD3cc3Ef7tm3GNYUmQ789", "fee": 4000000, "feeAssetId": null, "timestamp": 1656707909442, "version": 1, "sender": "3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc", "senderPublicKey": "H3EzJ6fSm7jHKo92xYdNTXaaQYKj9z5q2DJFovRDLJpf", "proofs": [ "4cF2RaECR8Uw4oMXvcTJdCedDCyHZcTENBPrYobnCJcDY6XSFNPMDwp6MnLQFcWYZbMuw3DAPA6TdaNatXThbm6c" ], "script": "base64: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dHJpbmdFbnRyeQAAAAIJAQAAABFrZXlDb250cm9sQWRkcmVzcwAAAAAFAAAAEGNvbnRyb2xBZGRyZXNzNTgJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkBAAAADmtleVJlc3RBZGRyZXNzAAAAAAUAAAANcmVzdEFkZHJlc3M1OAUAAAADbmlsAAAAAWkBAAAAFXN0YWtlTnNidFBhZ2VSRUFET05MWQAAAAIAAAARdXNlckFkZHJlc3NTdHJPcHQAAAALbnNidEFtdERpZmYEAAAACWduc2J0SW5mbwkBAAAACGFzU3RyaW5nAAAAAQkAA/wAAAAEBQAAAAdyZXN0QWNjAgAAABFnbnNidEluZm9SRUFET05MWQkABEwAAAACBQAAABF1c2VyQWRkcmVzc1N0ck9wdAkABEwAAAACBQAAAAtuc2J0QW10RGlmZgUAAAADbmlsBQAAAANuaWwEAAAACHN3YXBJbmZvCQEAAAAIYXNTdHJpbmcAAAABCQAD/AAAAAQFAAAAB3Jlc3RBY2MCAAAAEHN3YXBJbmZvUkVBRE9OTFkJAARMAAAAAgUAAAARdXNlckFkZHJlc3NTdHJPcHQFAAAAA25pbAUAAAADbmlsCQAFFAAAAAIFAAAAA25pbAkBAAAAC3Byb2R1Y2VKc29uAAAAAQkABEwAAAACAgAAABFnbnNidEluZm9SRUFET05MWQkABEwAAAACBQAAAAlnbnNidEluZm8JAARMAAAAAgIAAAAQc3dhcEluZm9SRUFET05MWQkABEwAAAACBQAAAAhzd2FwSW5mbwUAAAADbmlsAAAAAWkBAAAAE2J1eU5zYnRQYWdlUkVBRE9OTFkAAAABAAAAEXVzZXJBZGRyZXNzU3RyT3B0BAAAAAlnbnNidEluZm8JAQAAAAhhc1N0cmluZwAAAAEJAAP8AAAABAUAAAAHcmVzdEFjYwIAAAARZ25zYnRJbmZvUkVBRE9OTFkJAARMAAAAAgUAAAARdXNlckFkZHJlc3NTdHJPcHQJAARMAAAAAgAAAAAAAAAAAAUAAAADbmlsBQAAAANuaWwEAAAADW5ldXRyaW5vU3RhdHMJAQAAAAhhc1N0cmluZwAAAAEJAAP8AAAABAUAAAAHcmVzdEFjYwIAAAAVbmV1dHJpbm9TdGF0c1JFQURPTkxZBQAAAANu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", "chainId": 84, "height": 2121074, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: D1sBqEz4jSZqNar2sbrEN6Q5orehz8TFVYsYP9nHYJjt Next: CUptLKkkBKjEJMyZYNh8yrcDhYQbp1hRD9HvzX8Lq3pD Diff:
OldNewDifferences
8787
8888
8989 @Callable(i)
90+func buySurfPageREADONLY (userAddressStrOpt) = {
91+ let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, 0], nil))
92+ let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
93+ $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "neutrinoStatsREADONLY", neutrinoStats]))
94+ }
95+
96+
97+
98+@Callable(i)
9099 func genericREADONLY (payload) = {
91100 let funcsIndexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
92101 let paramIndexes = [1, 3, 5, 7, 9, 11]
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let SEP = "__"
55
66 func keyControlAddress () = "%s%s__config__controlAddress"
77
88
99 func keyRestAddress () = "%s%s__config__restAddress"
1010
1111
1212 func getStrOrFail (key) = valueOrErrorMessage(getString(this, key), (("Mandatory this." + key) + " is not defined"))
1313
1414
1515 func getAddressOrFail (key) = valueOrErrorMessage(addressFromString(getStrOrFail(key)), ("fail to parse address for this." + key))
1616
1717
1818 func asString (val) = match val {
1919 case valStr: String =>
2020 valStr
2121 case _ =>
2222 throw("fail to cast into String")
2323 }
2424
2525
2626 func produceJson (strMap) = {
2727 let indexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
2828 let length = size(strMap)
2929 if (((length % 2) != 0))
3030 then throw("only even args size is accepeted")
3131 else if ((length > size(indexes)))
3232 then throw(("strMap length is greater then " + toString(size(indexes))))
3333 else {
3434 func produceJson (jsonAccum,nextIdx) = if (if (((nextIdx % 2) == 0))
3535 then (length >= (nextIdx + 1))
3636 else false)
3737 then (((((jsonAccum + "
3838 \"") + strMap[nextIdx]) + "\": \"") + strMap[(nextIdx + 1)]) + "\",")
3939 else jsonAccum
4040
4141 let preJsonResult = {
4242 let $l = indexes
4343 let $s = size($l)
4444 let $acc0 = ""
4545 func $f0_1 ($a,$i) = if (($i >= $s))
4646 then $a
4747 else produceJson($a, $l[$i])
4848
4949 func $f0_2 ($a,$i) = if (($i >= $s))
5050 then $a
5151 else throw("List size exceeds 20")
5252
5353 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20)
5454 }
5555 (("{" + dropRight(preJsonResult, 1)) + "}")
5656 }
5757 }
5858
5959
6060 let controlAcc = getAddressOrFail(keyControlAddress())
6161
6262 let restAcc = getAddressOrFail(keyRestAddress())
6363
6464 @Callable(i)
6565 func constructor (controlAddress58,restAddress58) = if ((i.caller != this))
6666 then throw("not authorized")
6767 else [StringEntry(keyControlAddress(), controlAddress58), StringEntry(keyRestAddress(), restAddress58)]
6868
6969
7070
7171 @Callable(i)
7272 func stakeNsbtPageREADONLY (userAddressStrOpt,nsbtAmtDiff) = {
7373 let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, nsbtAmtDiff], nil))
7474 let swapInfo = asString(invoke(restAcc, "swapInfoREADONLY", [userAddressStrOpt], nil))
7575 $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "swapInfoREADONLY", swapInfo]))
7676 }
7777
7878
7979
8080 @Callable(i)
8181 func buyNsbtPageREADONLY (userAddressStrOpt) = {
8282 let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, 0], nil))
8383 let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
8484 $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "neutrinoStatsREADONLY", neutrinoStats]))
8585 }
8686
8787
8888
8989 @Callable(i)
90+func buySurfPageREADONLY (userAddressStrOpt) = {
91+ let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, 0], nil))
92+ let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
93+ $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "neutrinoStatsREADONLY", neutrinoStats]))
94+ }
95+
96+
97+
98+@Callable(i)
9099 func genericREADONLY (payload) = {
91100 let funcsIndexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
92101 let paramIndexes = [1, 3, 5, 7, 9, 11]
93102 let payloadArr = split(payload, SEP)
94103 let payloadSize = size(payloadArr)
95104 func invokesAgregator (accum,funcIdx) = if ((funcIdx >= payloadSize))
96105 then accum
97106 else {
98107 let call = payloadArr[funcIdx]
99108 let callArr = split(call, "+")
100109 let address = addressFromStringValue(callArr[0])
101110 let funcName = callArr[1]
102111 let paramsArr = split(callArr[2], ":")
103112 let paramsSize = size(paramsArr)
104113 func paramsAgregator (paramsAcc,paramIdx) = if ((paramIdx >= paramsSize))
105114 then paramsAcc
106115 else {
107116 let p = if ((paramsArr[(paramIdx - 1)] == "s"))
108117 then paramsArr[paramIdx]
109118 else parseIntValue(paramsArr[paramIdx])
110119 (paramsAcc :+ p)
111120 }
112121
113122 let params = {
114123 let $l = paramIndexes
115124 let $s = size($l)
116125 let $acc0 = nil
117126 func $f0_1 ($a,$i) = if (($i >= $s))
118127 then $a
119128 else paramsAgregator($a, $l[$i])
120129
121130 func $f0_2 ($a,$i) = if (($i >= $s))
122131 then $a
123132 else throw("List size exceeds 6")
124133
125134 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6)
126135 }
127136 let result = asString(invoke(address, funcName, params, nil))
128137 (accum ++ [funcName, result])
129138 }
130139
131140 let invokesResults = {
132141 let $l = funcsIndexes
133142 let $s = size($l)
134143 let $acc0 = nil
135144 func $f0_1 ($a,$i) = if (($i >= $s))
136145 then $a
137146 else invokesAgregator($a, $l[$i])
138147
139148 func $f0_2 ($a,$i) = if (($i >= $s))
140149 then $a
141150 else throw("List size exceeds 10")
142151
143152 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10)
144153 }
145154 $Tuple2(nil, produceJson(invokesResults))
146155 }
147156
148157

github/deemru/w8io/169f3d6 
51.69 ms