tx · 9qXYNkAdQtZQhJVHcmJrkYijkRo2H8RivtRTzEm2enE8 3MtsQpwSQr7knQgF1Mzdc3nd7ms3JEKo7B8: -0.01000000 Waves 2023.02.05 01:38 [2435496] smart account 3MtsQpwSQr7knQgF1Mzdc3nd7ms3JEKo7B8 > SELF 0.00000000 Waves
{ "type": 13, "id": "9qXYNkAdQtZQhJVHcmJrkYijkRo2H8RivtRTzEm2enE8", "fee": 1000000, "feeAssetId": null, "timestamp": 1675550372749, "version": 2, "chainId": 84, "sender": "3MtsQpwSQr7knQgF1Mzdc3nd7ms3JEKo7B8", "senderPublicKey": "DBrgC8MVcZdynxH3pXpNcQcSP3CSPx1oeHWTjdWKatxF", "proofs": [ "MEuEwxfEmkEjtv2tmfcCHWj8VJUVTTp8C1gurmPtYv53To2ZSpBcfBrTCFNn6kRNeQ4ucfGwFJkv42SK71rs3V4" ], "script": "base64:AAIFAAAAAAAAAAgIAhIECgIYGAAAAAIBAAAAB2dldERhdGEAAAACAAAAA2FkcgAAAANrZXkEAAAABGRhdGEEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAADYWRyBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAB0Jvb2xlYW4EAAAAAWEFAAAAByRtYXRjaDAFAAAAAWEHBQAAAARkYXRhAQAAAAhhdXRoVXNlcgAAAAEAAAABaQQAAAASZWdnZXJQdWJsaWNLZXlIYXNoCQAB9wAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQQAAAAjZWdnZXJQdWJsaWNLZXlIYXNoT25TdXBwbGllckFjY291bnQJAQAAABFAZXh0ck5hdGl2ZSgxMDUyKQAAAAIFAAAABHRoaXMCAAAAFGNvbm5lY3Rpb24uRWdnZXIucmVmAwkAAAAAAAACBQAAACNlZ2dlclB1YmxpY0tleUhhc2hPblN1cHBsaWVyQWNjb3VudAUAAAASZWdnZXJQdWJsaWNLZXlIYXNoBgkAAAIAAAABAgAAAD1BY2NvdW50IGhhdCBuaWNodCBkaWUgbsO2dGlnZSBCZXJlY2h0aWd1bmcgZsO8ciBkaWVzZSBBa3Rpb24uAAAAAQAAAAFpAQAAABlzYXZlTGlzdE9uU3VwcGxpZXJBY2NvdW50AAAAAgAAAARrZXlzAAAABnZhbHVlcwQAAAANYXV0aGVudGljYXRlZAkBAAAACGF1dGhVc2VyAAAAAQUAAAABaQoBAAAADmFkZFN0cmluZ0VudHJ5AAAAAgAAAAVhY2N1bQAAAAluZXh0VmFsdWUEAAAACiR0MDk3NzEwMDAFAAAABWFjY3VtBAAAAAZyZXN1bHQIBQAAAAokdDA5NzcxMDAwAAAAAl8xBAAAAAFqCAUAAAAKJHQwOTc3MTAwMAAAAAJfMgkABRQAAAACCQAETQAAAAIFAAAABnJlc3VsdAkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAAZEAAAACBQAAAARrZXlzBQAAAAFqBQAAAAluZXh0VmFsdWUJAABkAAAAAgUAAAABagAAAAAAAAAAAQQAAAABcgoAAAAAAiRsBQAAAAZ2YWx1ZXMKAAAAAAIkcwkAAZAAAAABBQAAAAIkbAoAAAAABSRhY2MwCQAFFAAAAAIFAAAAA25pbAAAAAAAAAAAAAoBAAAABSRmMF8xAAAAAgAAAAIkYQAAAAIkaQMJAABnAAAAAgUAAAACJGkFAAAAAiRzBQAAAAIkYQkBAAAADmFkZFN0cmluZ0VudHJ5AAAAAgUAAAACJGEJAAGRAAAAAgUAAAACJGwFAAAAAiRpCgEAAAAFJGYwXzIAAAACAAAAAiRhAAAAAiRpAwkAAGcAAAACBQAAAAIkaQUAAAACJHMFAAAAAiRhCQAAAgAAAAECAAAAFExpc3Qgc2l6ZSBleGNlZWRzIDEwCQEAAAAFJGYwXzIAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACCQEAAAAFJGYwXzEAAAACBQAAAAUkYWNjMAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAgAAAAAAAAAAAwAAAAAAAAAABAAAAAAAAAAABQAAAAAAAAAABgAAAAAAAAAABwAAAAAAAAAACAAAAAAAAAAACQAAAAAAAAAACggFAAAAAXIAAAACXzEAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAACQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tleSHM4JU=", "height": 2435496, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9tpUKcQVGhuycuVzhSEuKhsdpGLa8VYP4J1mAMzdsVkc Next: Dx2W2axuJzX9PE9vCoiLigzwqaFQ7UrMxqCfTpqxXqj Diff:
Old | New | Differences | |
---|---|---|---|
15 | 15 | } | |
16 | 16 | ||
17 | 17 | ||
18 | - | @Callable(g) | |
19 | - | func saveListOnSupplierAccount (h,i) = { | |
20 | - | func j (k,l) = { | |
21 | - | let m = k | |
22 | - | let n = m._1 | |
23 | - | let o = m._2 | |
24 | - | $Tuple2((n :+ StringEntry(h[o], l)), (o + 1)) | |
25 | - | } | |
26 | - | ||
27 | - | let p = { | |
28 | - | let q = i | |
29 | - | let r = size(q) | |
30 | - | let s = $Tuple2(nil, 0) | |
31 | - | func t (u,v) = if ((v >= r)) | |
32 | - | then u | |
33 | - | else j(u, q[v]) | |
34 | - | ||
35 | - | func w (u,v) = if ((v >= r)) | |
36 | - | then u | |
37 | - | else throw("List size exceeds 10") | |
38 | - | ||
39 | - | w(t(t(t(t(t(t(t(t(t(t(s, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10) | |
40 | - | } | |
41 | - | p._1 | |
18 | + | func g (h) = { | |
19 | + | let i = sha256(h.callerPublicKey) | |
20 | + | let j = getBinaryValue(this, "connection.Egger.ref") | |
21 | + | if ((j == i)) | |
22 | + | then true | |
23 | + | else throw("Account hat nicht die nötige Berechtigung für diese Aktion.") | |
42 | 24 | } | |
43 | 25 | ||
44 | 26 | ||
45 | - | @Verifier(x) | |
46 | - | func y () = sigVerify(x.bodyBytes, x.proofs[0], x.senderPublicKey) | |
27 | + | @Callable(h) | |
28 | + | func saveListOnSupplierAccount (k,l) = { | |
29 | + | let m = g(h) | |
30 | + | func n (o,p) = { | |
31 | + | let q = o | |
32 | + | let r = q._1 | |
33 | + | let s = q._2 | |
34 | + | $Tuple2((r :+ StringEntry(k[s], p)), (s + 1)) | |
35 | + | } | |
36 | + | ||
37 | + | let t = { | |
38 | + | let u = l | |
39 | + | let v = size(u) | |
40 | + | let w = $Tuple2(nil, 0) | |
41 | + | func x (y,z) = if ((z >= v)) | |
42 | + | then y | |
43 | + | else n(y, u[z]) | |
44 | + | ||
45 | + | func A (y,z) = if ((z >= v)) | |
46 | + | then y | |
47 | + | else throw("List size exceeds 10") | |
48 | + | ||
49 | + | A(x(x(x(x(x(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10) | |
50 | + | } | |
51 | + | t._1 | |
52 | + | } | |
53 | + | ||
54 | + | ||
55 | + | @Verifier(B) | |
56 | + | func C () = sigVerify(B.bodyBytes, B.proofs[0], B.senderPublicKey) | |
47 | 57 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | func a (b,c) = { | |
5 | 5 | let d = { | |
6 | 6 | let e = getBoolean(b, c) | |
7 | 7 | if ($isInstanceOf(e, "Boolean")) | |
8 | 8 | then { | |
9 | 9 | let f = e | |
10 | 10 | f | |
11 | 11 | } | |
12 | 12 | else false | |
13 | 13 | } | |
14 | 14 | d | |
15 | 15 | } | |
16 | 16 | ||
17 | 17 | ||
18 | - | @Callable(g) | |
19 | - | func saveListOnSupplierAccount (h,i) = { | |
20 | - | func j (k,l) = { | |
21 | - | let m = k | |
22 | - | let n = m._1 | |
23 | - | let o = m._2 | |
24 | - | $Tuple2((n :+ StringEntry(h[o], l)), (o + 1)) | |
25 | - | } | |
26 | - | ||
27 | - | let p = { | |
28 | - | let q = i | |
29 | - | let r = size(q) | |
30 | - | let s = $Tuple2(nil, 0) | |
31 | - | func t (u,v) = if ((v >= r)) | |
32 | - | then u | |
33 | - | else j(u, q[v]) | |
34 | - | ||
35 | - | func w (u,v) = if ((v >= r)) | |
36 | - | then u | |
37 | - | else throw("List size exceeds 10") | |
38 | - | ||
39 | - | w(t(t(t(t(t(t(t(t(t(t(s, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10) | |
40 | - | } | |
41 | - | p._1 | |
18 | + | func g (h) = { | |
19 | + | let i = sha256(h.callerPublicKey) | |
20 | + | let j = getBinaryValue(this, "connection.Egger.ref") | |
21 | + | if ((j == i)) | |
22 | + | then true | |
23 | + | else throw("Account hat nicht die nötige Berechtigung für diese Aktion.") | |
42 | 24 | } | |
43 | 25 | ||
44 | 26 | ||
45 | - | @Verifier(x) | |
46 | - | func y () = sigVerify(x.bodyBytes, x.proofs[0], x.senderPublicKey) | |
27 | + | @Callable(h) | |
28 | + | func saveListOnSupplierAccount (k,l) = { | |
29 | + | let m = g(h) | |
30 | + | func n (o,p) = { | |
31 | + | let q = o | |
32 | + | let r = q._1 | |
33 | + | let s = q._2 | |
34 | + | $Tuple2((r :+ StringEntry(k[s], p)), (s + 1)) | |
35 | + | } | |
36 | + | ||
37 | + | let t = { | |
38 | + | let u = l | |
39 | + | let v = size(u) | |
40 | + | let w = $Tuple2(nil, 0) | |
41 | + | func x (y,z) = if ((z >= v)) | |
42 | + | then y | |
43 | + | else n(y, u[z]) | |
44 | + | ||
45 | + | func A (y,z) = if ((z >= v)) | |
46 | + | then y | |
47 | + | else throw("List size exceeds 10") | |
48 | + | ||
49 | + | A(x(x(x(x(x(x(x(x(x(x(w, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10) | |
50 | + | } | |
51 | + | t._1 | |
52 | + | } | |
53 | + | ||
54 | + | ||
55 | + | @Verifier(B) | |
56 | + | func C () = sigVerify(B.bodyBytes, B.proofs[0], B.senderPublicKey) | |
47 | 57 |
github/deemru/w8io/169f3d6 24.28 ms ◑