tx · BWoKgf7FostUEHJCjgnj9Sqie6x8tbekYLUhcS7MBiRr

3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc:  -0.01400000 Waves

2023.03.01 16:44 [2471076] smart account 3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc > SELF 0.00000000 Waves

{ "type": 13, "id": "BWoKgf7FostUEHJCjgnj9Sqie6x8tbekYLUhcS7MBiRr", "fee": 1400000, "feeAssetId": null, "timestamp": 1677678264330, "version": 2, "chainId": 84, "sender": "3MyBtJnMg6n7m1sDczbrijVyosLnRh4FFbc", "senderPublicKey": "H3EzJ6fSm7jHKo92xYdNTXaaQYKj9z5q2DJFovRDLJpf", "proofs": [ "5BkfYgmnHtYjJpP9WmSjwWcB9QCD42vVF6D97zaB9rjZDTTe4grxm1KkVRcF4dJnNWnxqgb2UZ9sw1MKAMAfqyWK" ], "script": "base64:AAIFAAAAAAAAACQIAhIECgIICBIECgIIARIDCgEIEgUKAwgBCBIDCgEIEgMKAQgAAAAZAAAAAANTRVACAAAAAl9fAAAAABlJZHhDb250cm9sQ2ZnTmV1dHJpbm9EYXBwAAAAAAAAAAABAAAAABhJZHhDb250cm9sQ2ZnQXVjdGlvbkRhcHAAAAAAAAAAAAIAAAAAFElkeENvbnRyb2xDZmdScGREYXBwAAAAAAAAAAADAAAAABVJZHhDb250cm9sQ2ZnTWF0aERhcHAAAAAAAAAAAAQAAAAAHElkeENvbnRyb2xDZmdMaXF1aWRhdGlvbkRhcHAAAAAAAAAAAAUAAAAAFUlkeENvbnRyb2xDZmdSZXN0RGFwcAAAAAAAAAAABgAAAAAdSWR4Q29udHJvbENmZ05vZGVSZWdpc3RyeURhcHAAAAAAAAAAAAcAAAAAHElkeENvbnRyb2xDZmdOc2J0U3Rha2luZ0RhcHAAAAAAAAAAAAgAAAAAGUlkeENvbnRyb2xDZmdNZWRpYXRvckRhcHAAAAAAAAAAAAkBAAAAD2dldFN0cmluZ09yRmFpbAAAAAIAAAAHYWRkcmVzcwAAAANrZXkJAQAAABN2YWx1ZU9yRXJyb3JNZXNzYWdlAAAAAgkABB0AAAACBQAAAAdhZGRyZXNzBQAAAANrZXkJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAKbWFuZGF0b3J5IAkABCUAAAABBQAAAAdhZGRyZXNzAgAAAAEuBQAAAANrZXkCAAAADyBpcyBub3QgZGVmaW5lZAEAAAARa2V5Q29udHJvbEFkZHJlc3MAAAAAAgAAABwlcyVzX19jb25maWdfX2NvbnRyb2xBZGRyZXNzAQAAAA1rZXlDb250cm9sQ2ZnAAAAAAIAAAARJXNfX2NvbnRyb2xDb25maWcBAAAAFHJlYWRDb250cm9sQ2ZnT3JGYWlsAAAAAQAAAAdjb250cm9sCQAEtQAAAAIJAQAAAA9nZXRTdHJpbmdPckZhaWwAAAACBQAAAAdjb250cm9sCQEAAAANa2V5Q29udHJvbENmZwAAAAAFAAAAA1NFUAEAAAAYZ2V0Q29udHJhY3RBZGRyZXNzT3JGYWlsAAAAAgAAAApjb250cm9sQ2ZnAAAAA2lkeAkBAAAAE3ZhbHVlT3JFcnJvck1lc3NhZ2UAAAACCQAEJgAAAAEJAAGRAAAAAgUAAAAKY29udHJvbENmZwUAAAADaWR4CQABLAAAAAICAAAALUNvbnRyb2wgY2ZnIGRvZXNuJ3QgY29udGFpbiBhZGRyZXNzIGF0IGluZGV4IAkAAaQAAAABBQAAAANpZHgAAAAAD2NvbnRyb2xDb250cmFjdAkBAAAAEUBleHRyTmF0aXZlKDEwNjIpAAAAAQkBAAAAC3ZhbHVlT3JFbHNlAAAAAgkABB0AAAACBQAAAAR0aGlzCQEAAAARa2V5Q29udHJvbEFkZHJlc3MAAAAAAgAAACMzTjROUzdkNEpvOWE2RjE0TGlGVUtLWVZkVWtrZjJlUDRaeAAAAAAKY29udHJvbENmZwkBAAAAFHJlYWRDb250cm9sQ2ZnT3JGYWlsAAAAAQUAAAAPY29udHJvbENvbnRyYWN0AAAAAAdyZXN0QWNjCQEAAAAYZ2V0Q29udHJhY3RBZGRyZXNzT3JGYWlsAAAAAgUAAAAKY29udHJvbENmZwUAAAAVSWR4Q29udHJvbENmZ1Jlc3REYXBwAQAAAA5rZXlSZXN0QWRkcmVzcwAAAAACAAAAGSVzJXNfX2NvbmZpZ19fcmVzdEFkZHJlc3MBAAAADGdldFN0ck9yRmFpbAAAAAEAAAADa2V5CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQdAAAAAgUAAAAEdGhpcwUAAAADa2V5CQABLAAAAAIJAAEsAAAAAgIAAAAPTWFuZGF0b3J5IHRoaXMuBQAAAANrZXkCAAAADyBpcyBub3QgZGVmaW5lZAEAAAAQZ2V0QWRkcmVzc09yRmFpbAAAAAEAAAADa2V5CQEAAAATdmFsdWVPckVycm9yTWVzc2FnZQAAAAIJAAQmAAAAAQkBAAAADGdldFN0ck9yRmFpbAAAAAEFAAAAA2tleQkAASwAAAACAgAAAB9mYWlsIHRvIHBhcnNlIGFkZHJlc3MgZm9yIHRoaXMuBQAAAANrZXkBAAAACGFzU3RyaW5nAAAAAQAAAAN2YWwEAAAAByRtYXRjaDAFAAAAA3ZhbAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAZ2YWxTdHIFAAAAByRtYXRjaDAFAAAABnZhbFN0cgkAAAIAAAAB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", "height": 2471076, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FT2Zz43nTz1ycsjvmUA8unJmmMYCZQ3Ya9Pcy52TAaig Next: 62EEMX3KWwimPW6KbAxp2ak2CgmAGGFtSJJCndPKcypQ Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let SEP = "__"
55
66 let IdxControlCfgNeutrinoDapp = 1
77
88 let IdxControlCfgAuctionDapp = 2
99
1010 let IdxControlCfgRpdDapp = 3
1111
1212 let IdxControlCfgMathDapp = 4
1313
1414 let IdxControlCfgLiquidationDapp = 5
1515
1616 let IdxControlCfgRestDapp = 6
1717
1818 let IdxControlCfgNodeRegistryDapp = 7
1919
2020 let IdxControlCfgNsbtStakingDapp = 8
2121
2222 let IdxControlCfgMediatorDapp = 9
2323
2424 func getStringOrFail (address,key) = valueOrErrorMessage(getString(address, key), (((("mandatory " + toString(address)) + ".") + key) + " is not defined"))
2525
2626
2727 func keyControlAddress () = "%s%s__config__controlAddress"
2828
2929
3030 func keyControlCfg () = "%s__controlConfig"
3131
3232
3333 func readControlCfgOrFail (control) = split(getStringOrFail(control, keyControlCfg()), SEP)
3434
3535
3636 func getContractAddressOrFail (controlCfg,idx) = valueOrErrorMessage(addressFromString(controlCfg[idx]), ("Control cfg doesn't contain address at index " + toString(idx)))
3737
3838
3939 let controlContract = addressFromStringValue(valueOrElse(getString(this, keyControlAddress()), "3N4NS7d4Jo9a6F14LiFUKKYVdUkkf2eP4Zx"))
4040
4141 let controlCfg = readControlCfgOrFail(controlContract)
4242
4343 let restAcc = getContractAddressOrFail(controlCfg, IdxControlCfgRestDapp)
4444
4545 func keyRestAddress () = "%s%s__config__restAddress"
4646
4747
4848 func getStrOrFail (key) = valueOrErrorMessage(getString(this, key), (("Mandatory this." + key) + " is not defined"))
4949
5050
5151 func getAddressOrFail (key) = valueOrErrorMessage(addressFromString(getStrOrFail(key)), ("fail to parse address for this." + key))
5252
5353
5454 func asString (val) = match val {
5555 case valStr: String =>
5656 valStr
5757 case _ =>
5858 throw("fail to cast into String")
5959 }
6060
6161
6262 func produceJson (strMap) = {
6363 let indexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
6464 let length = size(strMap)
6565 if (((length % 2) != 0))
6666 then throw("only even args size is accepeted")
6767 else if ((length > size(indexes)))
6868 then throw(("strMap length is greater then " + toString(size(indexes))))
6969 else {
7070 func produceJson (jsonAccum,nextIdx) = if (if (((nextIdx % 2) == 0))
7171 then (length >= (nextIdx + 1))
7272 else false)
7373 then (((((jsonAccum + "
7474 \"") + strMap[nextIdx]) + "\": \"") + strMap[(nextIdx + 1)]) + "\",")
7575 else jsonAccum
7676
7777 let preJsonResult = {
7878 let $l = indexes
7979 let $s = size($l)
8080 let $acc0 = ""
8181 func $f0_1 ($a,$i) = if (($i >= $s))
8282 then $a
8383 else produceJson($a, $l[$i])
8484
8585 func $f0_2 ($a,$i) = if (($i >= $s))
8686 then $a
8787 else throw("List size exceeds 20")
8888
8989 $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)
9090 }
9191 (("{" + dropRight(preJsonResult, 1)) + "}")
9292 }
9393 }
9494
9595
9696 func genericV2READONLY (x) = {
9797 func call (a,e) = (a :+ invoke(Address(fromBase58String(e._1)), e._2, e._3, nil))
9898
9999 let $l = x
100100 let $s = size($l)
101101 let $acc0 = nil
102102 func $f0_1 ($a,$i) = if (($i >= $s))
103103 then $a
104104 else call($a, $l[$i])
105105
106106 func $f0_2 ($a,$i) = if (($i >= $s))
107107 then $a
108108 else throw("List size exceeds 10")
109109
110110 $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)
111111 }
112112
113113
114114 func genericV3READONLY (params) = {
115115 func call (foldResult,foldParams) = {
116116 let dApp = Address(fromBase58String(foldParams._1))
117117 let operationType = foldParams._2
118118 let funcOrKeyName = foldParams._3
119119 let funcParams = foldParams._4
120120 let operationResult = if ((operationType == "invoke"))
121121 then invoke(dApp, funcOrKeyName, funcParams, nil)
122122 else if ((operationType == "binKey"))
123123 then getBinary(dApp, funcOrKeyName)
124124 else if ((operationType == "boolKey"))
125125 then getBoolean(dApp, funcOrKeyName)
126126 else if ((operationType == "intKey"))
127127 then getInteger(dApp, funcOrKeyName)
128128 else if ((operationType == "strKey"))
129129 then getString(dApp, funcOrKeyName)
130130 else throw(("not supported operation type: " + operationType))
131131 (foldResult :+ operationResult)
132132 }
133133
134134 let $l = params
135135 let $s = size($l)
136136 let $acc0 = nil
137137 func $f0_1 ($a,$i) = if (($i >= $s))
138138 then $a
139139 else call($a, $l[$i])
140140
141141 func $f0_2 ($a,$i) = if (($i >= $s))
142142 then $a
143143 else throw("List size exceeds 10")
144144
145145 $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)
146146 }
147147
148148
149149 @Callable(i)
150150 func constructor (controlAddress58,restAddress58) = if ((i.caller != this))
151151 then throw("not authorized")
152152 else [StringEntry(keyControlAddress(), controlAddress58), StringEntry(keyRestAddress(), restAddress58)]
153153
154154
155155
156156 @Callable(i)
157157 func stakeNsbtPageREADONLY (userAddressStrOpt,nsbtAmtDiff) = {
158158 let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, nsbtAmtDiff], nil))
159159 let swapInfo = asString(invoke(restAcc, "swapInfoREADONLY", [userAddressStrOpt], nil))
160160 $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "swapInfoREADONLY", swapInfo]))
161161 }
162162
163163
164164
165165 @Callable(i)
166166 func buyNsbtPageREADONLY (userAddressStrOpt) = {
167167 let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, 0], nil))
168168 let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
169169 $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "neutrinoStatsREADONLY", neutrinoStats]))
170170 }
171171
172172
173173
174174 @Callable(i)
175175 func buySurfPageREADONLY (userAddressStrOpt,amount,assetIdStr) = {
176176 let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil))
177177 let surfBuy = asString(invoke(restAcc, "buySurfREADONLY", [userAddressStrOpt, amount, assetIdStr], nil))
178178 let neutrinoCfg = asString(invoke(restAcc, "neutrinoConfigREADONLY", nil, nil))
179179 $Tuple2(nil, produceJson(["neutrinoStatsREADONLY", neutrinoStats, "buySurfREADONLY", surfBuy, "neutrinoConfigREADONLY", neutrinoCfg]))
180180 }
181181
182182
183183
184184 @Callable(i)
185185 func walletPageREADONLY (userAddressStr) = {
186186 let walletInfo = asString(invoke(restAcc, "walletInfoREADONLY", [userAddressStr], nil))
187187 $Tuple2(nil, produceJson(["walletInfoREADONLY", walletInfo]))
188188 }
189189
190190
191191
192192 @Callable(i)
193193 func genericREADONLY (payload) = {
194194 let funcsIndexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
195195 let paramIndexes = [1, 3, 5, 7, 9, 11]
196196 let payloadArr = split(payload, SEP)
197197 let payloadSize = size(payloadArr)
198198 func invokesAgregator (accum,funcIdx) = if ((funcIdx >= payloadSize))
199199 then accum
200200 else {
201201 let call = payloadArr[funcIdx]
202202 let callArr = split(call, "+")
203203 let address = addressFromStringValue(callArr[0])
204204 let funcName = callArr[1]
205205 let paramsArr = split(callArr[2], ":")
206206 let paramsSize = size(paramsArr)
207207 func paramsAgregator (paramsAcc,paramIdx) = if ((paramIdx >= paramsSize))
208208 then paramsAcc
209209 else {
210210 let p = if ((paramsArr[(paramIdx - 1)] == "s"))
211211 then paramsArr[paramIdx]
212212 else parseIntValue(paramsArr[paramIdx])
213213 (paramsAcc :+ p)
214214 }
215215
216216 let params = {
217217 let $l = paramIndexes
218218 let $s = size($l)
219219 let $acc0 = nil
220220 func $f0_1 ($a,$i) = if (($i >= $s))
221221 then $a
222222 else paramsAgregator($a, $l[$i])
223223
224224 func $f0_2 ($a,$i) = if (($i >= $s))
225225 then $a
226226 else throw("List size exceeds 6")
227227
228228 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6)
229229 }
230230 let result = asString(invoke(address, funcName, params, nil))
231231 (accum ++ [funcName, result])
232232 }
233233
234234 let invokesResults = {
235235 let $l = funcsIndexes
236236 let $s = size($l)
237237 let $acc0 = nil
238238 func $f0_1 ($a,$i) = if (($i >= $s))
239239 then $a
240240 else invokesAgregator($a, $l[$i])
241241
242242 func $f0_2 ($a,$i) = if (($i >= $s))
243243 then $a
244244 else throw("List size exceeds 10")
245245
246246 $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)
247247 }
248248 $Tuple2(nil, produceJson(invokesResults))
249249 }
250250
251251

github/deemru/w8io/026f985 
31.98 ms