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:
Old | New | Differences | |
---|---|---|---|
87 | 87 | ||
88 | 88 | ||
89 | 89 | @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) | |
90 | 99 | func genericREADONLY (payload) = { | |
91 | 100 | let funcsIndexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | |
92 | 101 | let paramIndexes = [1, 3, 5, 7, 9, 11] |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let SEP = "__" | |
5 | 5 | ||
6 | 6 | func keyControlAddress () = "%s%s__config__controlAddress" | |
7 | 7 | ||
8 | 8 | ||
9 | 9 | func keyRestAddress () = "%s%s__config__restAddress" | |
10 | 10 | ||
11 | 11 | ||
12 | 12 | func getStrOrFail (key) = valueOrErrorMessage(getString(this, key), (("Mandatory this." + key) + " is not defined")) | |
13 | 13 | ||
14 | 14 | ||
15 | 15 | func getAddressOrFail (key) = valueOrErrorMessage(addressFromString(getStrOrFail(key)), ("fail to parse address for this." + key)) | |
16 | 16 | ||
17 | 17 | ||
18 | 18 | func asString (val) = match val { | |
19 | 19 | case valStr: String => | |
20 | 20 | valStr | |
21 | 21 | case _ => | |
22 | 22 | throw("fail to cast into String") | |
23 | 23 | } | |
24 | 24 | ||
25 | 25 | ||
26 | 26 | func produceJson (strMap) = { | |
27 | 27 | let indexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19] | |
28 | 28 | let length = size(strMap) | |
29 | 29 | if (((length % 2) != 0)) | |
30 | 30 | then throw("only even args size is accepeted") | |
31 | 31 | else if ((length > size(indexes))) | |
32 | 32 | then throw(("strMap length is greater then " + toString(size(indexes)))) | |
33 | 33 | else { | |
34 | 34 | func produceJson (jsonAccum,nextIdx) = if (if (((nextIdx % 2) == 0)) | |
35 | 35 | then (length >= (nextIdx + 1)) | |
36 | 36 | else false) | |
37 | 37 | then (((((jsonAccum + " | |
38 | 38 | \"") + strMap[nextIdx]) + "\": \"") + strMap[(nextIdx + 1)]) + "\",") | |
39 | 39 | else jsonAccum | |
40 | 40 | ||
41 | 41 | let preJsonResult = { | |
42 | 42 | let $l = indexes | |
43 | 43 | let $s = size($l) | |
44 | 44 | let $acc0 = "" | |
45 | 45 | func $f0_1 ($a,$i) = if (($i >= $s)) | |
46 | 46 | then $a | |
47 | 47 | else produceJson($a, $l[$i]) | |
48 | 48 | ||
49 | 49 | func $f0_2 ($a,$i) = if (($i >= $s)) | |
50 | 50 | then $a | |
51 | 51 | else throw("List size exceeds 20") | |
52 | 52 | ||
53 | 53 | $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) | |
54 | 54 | } | |
55 | 55 | (("{" + dropRight(preJsonResult, 1)) + "}") | |
56 | 56 | } | |
57 | 57 | } | |
58 | 58 | ||
59 | 59 | ||
60 | 60 | let controlAcc = getAddressOrFail(keyControlAddress()) | |
61 | 61 | ||
62 | 62 | let restAcc = getAddressOrFail(keyRestAddress()) | |
63 | 63 | ||
64 | 64 | @Callable(i) | |
65 | 65 | func constructor (controlAddress58,restAddress58) = if ((i.caller != this)) | |
66 | 66 | then throw("not authorized") | |
67 | 67 | else [StringEntry(keyControlAddress(), controlAddress58), StringEntry(keyRestAddress(), restAddress58)] | |
68 | 68 | ||
69 | 69 | ||
70 | 70 | ||
71 | 71 | @Callable(i) | |
72 | 72 | func stakeNsbtPageREADONLY (userAddressStrOpt,nsbtAmtDiff) = { | |
73 | 73 | let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, nsbtAmtDiff], nil)) | |
74 | 74 | let swapInfo = asString(invoke(restAcc, "swapInfoREADONLY", [userAddressStrOpt], nil)) | |
75 | 75 | $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "swapInfoREADONLY", swapInfo])) | |
76 | 76 | } | |
77 | 77 | ||
78 | 78 | ||
79 | 79 | ||
80 | 80 | @Callable(i) | |
81 | 81 | func buyNsbtPageREADONLY (userAddressStrOpt) = { | |
82 | 82 | let gnsbtInfo = asString(invoke(restAcc, "gnsbtInfoREADONLY", [userAddressStrOpt, 0], nil)) | |
83 | 83 | let neutrinoStats = asString(invoke(restAcc, "neutrinoStatsREADONLY", nil, nil)) | |
84 | 84 | $Tuple2(nil, produceJson(["gnsbtInfoREADONLY", gnsbtInfo, "neutrinoStatsREADONLY", neutrinoStats])) | |
85 | 85 | } | |
86 | 86 | ||
87 | 87 | ||
88 | 88 | ||
89 | 89 | @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) | |
90 | 99 | func genericREADONLY (payload) = { | |
91 | 100 | let funcsIndexes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] | |
92 | 101 | let paramIndexes = [1, 3, 5, 7, 9, 11] | |
93 | 102 | let payloadArr = split(payload, SEP) | |
94 | 103 | let payloadSize = size(payloadArr) | |
95 | 104 | func invokesAgregator (accum,funcIdx) = if ((funcIdx >= payloadSize)) | |
96 | 105 | then accum | |
97 | 106 | else { | |
98 | 107 | let call = payloadArr[funcIdx] | |
99 | 108 | let callArr = split(call, "+") | |
100 | 109 | let address = addressFromStringValue(callArr[0]) | |
101 | 110 | let funcName = callArr[1] | |
102 | 111 | let paramsArr = split(callArr[2], ":") | |
103 | 112 | let paramsSize = size(paramsArr) | |
104 | 113 | func paramsAgregator (paramsAcc,paramIdx) = if ((paramIdx >= paramsSize)) | |
105 | 114 | then paramsAcc | |
106 | 115 | else { | |
107 | 116 | let p = if ((paramsArr[(paramIdx - 1)] == "s")) | |
108 | 117 | then paramsArr[paramIdx] | |
109 | 118 | else parseIntValue(paramsArr[paramIdx]) | |
110 | 119 | (paramsAcc :+ p) | |
111 | 120 | } | |
112 | 121 | ||
113 | 122 | let params = { | |
114 | 123 | let $l = paramIndexes | |
115 | 124 | let $s = size($l) | |
116 | 125 | let $acc0 = nil | |
117 | 126 | func $f0_1 ($a,$i) = if (($i >= $s)) | |
118 | 127 | then $a | |
119 | 128 | else paramsAgregator($a, $l[$i]) | |
120 | 129 | ||
121 | 130 | func $f0_2 ($a,$i) = if (($i >= $s)) | |
122 | 131 | then $a | |
123 | 132 | else throw("List size exceeds 6") | |
124 | 133 | ||
125 | 134 | $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6) | |
126 | 135 | } | |
127 | 136 | let result = asString(invoke(address, funcName, params, nil)) | |
128 | 137 | (accum ++ [funcName, result]) | |
129 | 138 | } | |
130 | 139 | ||
131 | 140 | let invokesResults = { | |
132 | 141 | let $l = funcsIndexes | |
133 | 142 | let $s = size($l) | |
134 | 143 | let $acc0 = nil | |
135 | 144 | func $f0_1 ($a,$i) = if (($i >= $s)) | |
136 | 145 | then $a | |
137 | 146 | else invokesAgregator($a, $l[$i]) | |
138 | 147 | ||
139 | 148 | func $f0_2 ($a,$i) = if (($i >= $s)) | |
140 | 149 | then $a | |
141 | 150 | else throw("List size exceeds 10") | |
142 | 151 | ||
143 | 152 | $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) | |
144 | 153 | } | |
145 | 154 | $Tuple2(nil, produceJson(invokesResults)) | |
146 | 155 | } | |
147 | 156 | ||
148 | 157 |
github/deemru/w8io/169f3d6 51.69 ms ◑![]()