tx · BMuy4SZfAaEdxDzzQnzV9AwmtjxmLEmVAjrqQM4NmxMN 3MvebeGZYw4DzztAuqcdxyT22s6rB3yMNj7: -0.01000000 Waves 2022.03.17 03:00 [1967202] smart account 3MvebeGZYw4DzztAuqcdxyT22s6rB3yMNj7 > SELF 0.00000000 Waves
{ "type": 13, "id": "BMuy4SZfAaEdxDzzQnzV9AwmtjxmLEmVAjrqQM4NmxMN", "fee": 1000000, "feeAssetId": null, "timestamp": 1647475070602, "version": 2, "chainId": 84, "sender": "3MvebeGZYw4DzztAuqcdxyT22s6rB3yMNj7", "senderPublicKey": "J283pC8bzRfJ3j1oxPrgDH8hjUVhFZS2CiRcPTmzQukz", "proofs": [ "4zwNhtSP99LpLUXHQ3qyHgsg1VhQbeKDLT7qEHjUzvtpa6Pa4A7hnWKyaQDDAAZQG87xswzL76kGWUCycEHHRvmb" ], "script": "base64:AAIFAAAAAAAAABAIAhIECgIIARIGCgQIAQEIAAAAHAAAAAAKZGVsYXlCbG9jawAAAAAAAAAAAQAAAAAKbWluUGF5bWVudAAAAAAAAAAACgAAAAARYWNjZXB0YWJsZUFzc2V0SWQBAAAAIOT6RnVqPSdR234gmuyFI/LTbOebUSkrj4D2gqClrfbKAAAAAAxtc2dQYWdhbWVudG8JAAEsAAAAAgkAASwAAAACCQABLAAAAAICAAAAIERldmkgZWZmZXR0dWFyZSB1biBwYWdhbWVudG8gaW4gCQACWAAAAAEFAAAAEWFjY2VwdGFibGVBc3NldElkAgAAAAsgZGkgYWxtZW5vIAkAAaQAAAABBQAAAAptaW5QYXltZW50AAAAABJmaWVsZE5hbWVSaXN1bHRhdG8CAAAADXNlbWVfZXN0cmF0dG8AAAAADWZpZWxkTmFtZVNlZWQCAAAABHNlZWQAAAAAEGZpZWxkTmFtZVNlZWRCMTYCAAAACHNlZWRfYjE2AAAAABlmaWVsZE5hbWVIZWlnaHRFeHRyYWN0aW9uAgAAABFoZWlnaHRfZXh0cmFjdGlvbgAAAAANZmllbGROYW1lSnNvbgIAAAAEanNvbgAAAAAUZmllbGROYW1lQ2FyZGluYWxpdGECAAAAC2NhcmRpbmFsaXRhAAAAABZmaWVsZE5hbWVEYXRhUmljaGllc3RhAgAAAA5kYXRhX3JpY2hpZXN0YQAAAAATZmllbGROYW1lRXN0cmF6aW9uaQIAAAAKZXN0cmF6aW9uaQAAAAASZmllbGROYW1lUmljaGllc3RhAgAAAAlyaWNoaWVzdGEAAAAAE2ZpZWxkTmFtZUVzY2x1c2lvbmkCAAAACmVzY2x1c2lvbmkAAAAAEGZpZWxkTmFtZUNvdW50ZXICAAAAB2NvdW50ZXIAAAAAEmZpZWxkTmFtZUlkQ291bnRlcgIAAAAMaWRfcmljaGllc3RhAAAAABFmaWVsZE5hbWVQcm92aWRlcgIAAAAIcHJvdmlkZXIBAAAAC2lzUGF5bWVudE9rAAAAAQAAAAFpAwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAEFAAAADG1zZ1BhZ2FtZW50bwQAAAABcAkAAZEAAAACCAUAAAABaQAAAAhwYXlt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CmtleUNvdW50ZXIJAAEsAAAAAgUAAAAJa2V5UHJlZml4BQAAABBmaWVsZE5hbWVDb3VudGVyBAAAAAxtYXhSaWNoaWVzdGEJAQAAAAhteUdldEludAAAAAIFAAAACmtleUNvdW50ZXICAAAAMUxhIHJpY2hpZXN0YSBmYXR0YSBub24gw6ggc3RhdGEgYW5jb3JhIHJlZ2lzdHJhdGEEAAAAD251bWVyb1JpY2hpZXN0YQMJAABnAAAAAgAAAAAAAAAAAAUAAAAGbnVtZXJvBQAAAAxtYXhSaWNoaWVzdGEDCQAAZwAAAAIFAAAADG1heFJpY2hpZXN0YQUAAAAGbnVtZXJvBQAAAAZudW1lcm8JAAACAAAAAQIAAAAqTm9uIGVzaXN0ZSB1bmEgcmljaGllc3RhIGNvbiBxdWVzdG8gbnVtZXJvBAAAAAprZXlQcmVmaXhOCQABLAAAAAIJAAEsAAAAAgUAAAAJa2V5UHJlZml4CQABpAAAAAEFAAAAD251bWVyb1JpY2hpZXN0YQIAAAABXwQAAAAMa2V5UmlzdWx0YXRvCQABLAAAAAIFAAAACmtleVByZWZpeE4FAAAAEmZpZWxkTmFtZVJpc3VsdGF0bwQAAAAKaXNFc3RyYXR0bwQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAAxrZXlSaXN1bHRhdG8DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABdAUAAAAHJG1hdGNoMAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAACdSaXN1bHRhdG8gZ2nDoCBwcmVzZW50ZSBpbiBibG9ja2NoYWluOiAFAAAADGtleVJpc3VsdGF0bwIAAAACOiAFAAAAAXQHAwkBAAAAASEAAAABBQAAAAppc0VzdHJhdHRvBAAAABVoZWlnaHRCbG9jY29DYW5kaWRhdG8JAQAAAAhteUdldEludAAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAAZZmllbGROYW1lSGVpZ2h0RXh0cmFjdGlvbgIAAAAnRXJyb3JlIGdlbmVyaWNvIHN1IGRhdGkgZGVsbGEgcmljaGllc3RhAwkAAGYAAAACBQAAABVoZWlnaHRCbG9jY29DYW5kaWRhdG8FAAAABmhlaWdodAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACAgAAABlEZXZpIGFzcGV0dGFyZSBpbCBibG9jY28gCQABpAAAAAEFAAAAFWhlaWdodEJsb2Njb0NhbmRpZGF0bwIAAAASLiBzaWFtbyBhbCBibG9jY28gCQABpAAAAAEFAAAABmhlaWdodAQAAAAHa2V5U2VtZQkAASwAAAACBQAAAAprZXlQcmVmaXhOBQAAAA1maWVsZE5hbWVTZWVkBAAAAARzZWVkBAAAAAckbWF0Y2gwCQAEHAAAAAIFAAAABHRoaXMFAAAAB2tleVNlbWUDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACkJ5dGVWZWN0b3IEAAAAAXQFAAAAByRtYXRjaDAFAAAAAXQJAAACAAAAAQIAAAAsU2VtZSBub24gdHJvdmF0by4gUXVhbGNvc2Egw6ggYW5kYXRhIHN0b3J0YSEEAAAAD2Jsb2Njb0NhbmRpZGF0bwQAAAAHJG1hdGNoMAkAA+0AAAABBQAAABVoZWlnaHRCbG9jY29DYW5kaWRhdG8DCQAAAQAAAAIFAAAAByRtYXRjaDACAAAACUJsb2NrSW5mbwQAAAAFYmxvY2sFAAAAByRtYXRjaDAFAAAABWJsb2NrCQAAAgAAAAECAAAAKkVycm9yZTogSWwgYmxvY2NvIGRpIGVzdHJhemlvbmUgbm9uIGVzaXN0ZQQAAAAIdnJmVmFsdWUEAAAAByRtYXRjaDAIBQAAAA9ibG9jY29DYW5kaWRhdG8AAAADdnJmAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAF0BQAAAAckbWF0Y2gwBQAAAAF0CQAAAgAAAAECAAAAIUJsb2NjbyBub24gaW4gdmVyc2lvbmUgNSByaXRlbnRhLgQAAAAEcmFuZAkAAMsAAAACCQAAywAAAAIJAADLAAAAAgUAAAAEc2VlZAgFAAAAD2Jsb2Njb0NhbmRpZGF0bwAAABNnZW5lcmF0aW9uU2lnbmF0dXJlCAUAAAAPYmxvY2NvQ2FuZGlkYXRvAAAAEmdlbmVyYXRvclB1YmxpY0tleQkBAAAABmdldFZyZgAAAAEFAAAAD2Jsb2Njb0NhbmRpZGF0bwQAAAADc2hhCQACXAAAAAEJAAtUAAAAAQkAC1QAAAABBQAAAARyYW5kBAAAAA5zdHJDYXJkaW5hbGl0YQkAAaQAAAABCQEAAAAIbXlHZXRJbnQAAAACCQABLAAAAAIFAAAACmtleVByZWZpeE4FAAAAFGZpZWxkTmFtZUNhcmRpbmFsaXRhAgAAABtFcnJvcmUgbGV0dHVyYSBjYXJkaW5hbGl0w6AEAAAAEHN0ckRhdGFSaWNoaWVzdGEJAAGkAAAAAQkBAAAACG15R2V0SW50AAAAAgkAASwAAAACBQAAAAprZXlQcmVmaXhOBQAAABZmaWVsZE5hbWVEYXRhUmljaGllc3RhAgAAABxFcnJvcmUgbGV0dHVyYSBEYXRhUmljaGllc3RhBAAAAA1zdHJFc3RyYXppb25pCQABpAAAAAEJAQAAAAhteUdldEludAAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAATZmllbGROYW1lRXN0cmF6aW9uaQIAAAAZRXJyb3JlIGxldHR1cmEgRXN0cmF6aW9uaQQAAAAKZXNjbHVzaW9uaQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIFAAAACmtleVByZWZpeE4FAAAAE2ZpZWxkTmFtZUVzY2x1c2lvbmkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABdAUAAAAHJG1hdGNoMAUAAAABdAkAAAIAAAABAgAAACZFcnJvcmU6IGVsZW5jbyBlc2NsdXNpb25pIG5vbiBwcmVzZW50ZQQAAAAEanNvbgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQEAAAAIb3Blbkpzb24AAAACBQAAABJmaWVsZE5hbWVJZENvdW50ZXIJAAGkAAAAAQUAAAAPbnVtZXJvUmljaGllc3RhCQEAAAAHYWRkSnNvbgAAAAIFAAAAEGZpZWxkTmFtZUNvdW50ZXIJAAGkAAAAAQUAAAAMbWF4UmljaGllc3RhCQEAAAAHYWRkSnNvbgAAAAIFAAAAEWZpZWxkTmFtZVByb3ZpZGVyBQAAAA9zdHJPd25lckFkZHJlc3MJAQAAAAdhZGRKc29uAAAAAgUAAAASZmllbGROYW1lUmljaGllc3RhBQAAAAlyaWNoaWVzdGEJAQAAAAdhZGRKc29uAAAAAgUAAAAUZmllbGROYW1lQ2FyZGluYWxpdGEFAAAADnN0ckNhcmRpbmFsaXRhCQEAAAAHYWRkSnNvbgAAAAIFAAAAE2ZpZWxkTmFtZUVzdHJhemlvbmkFAAAADXN0ckVzdHJhemlvbmkJAQAAAAdhZGRKc29uAAAAAgUAAAATZmllbGROYW1lRXNjbHVzaW9uaQUAAAAKZXNjbHVzaW9uaQkBAAAAB2FkZEpzb24AAAACBQAAABZmaWVsZE5hbWVEYXRhUmljaGllc3RhBQAAABBzdHJEYXRhUmljaGllc3RhCQEAAAAHYWRkSnNvbgAAAAIFAAAAEGZpZWxkTmFtZVNlZWRCMTYJAAJcAAAAAQUAAAAEc2VlZAkBAAAAB2FkZEpzb24AAAACBQAAABlmaWVsZE5hbWVIZWlnaHRFeHRyYWN0aW9uCQABpAAAAAEFAAAAFWhlaWdodEJsb2Njb0NhbmRpZGF0bwkBAAAACWNsb3NlSnNvbgAAAAIFAAAAEmZpZWxkTmFtZVJpc3VsdGF0bwUAAAADc2hhCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAANZmllbGROYW1lSnNvbgUAAAAEanNvbgkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACBQAAAAxrZXlSaXN1bHRhdG8FAAAAA3NoYQUAAAADbmlsCQAAAgAAAAECAAAAJEVycm9yZTogbm9uIGRvdnJlc3RpIHBhc3NhcmUgZGEgcXXDrAEAAAAJcmVnaXN0cmExAAAABQAAAAlyaWNoaWVzdGEAAAALY2FyZGluYWxpdGEAAAAKZXN0cmF6aW9uaQAAAAplc2NsdXNpb25pAAAAAWkEAAAACWtleVByZWZpeAkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkABCUAAAABCAUAAAABaQAAAAZjYWxsZXICAAAAAV8FAAAACXJpY2hpZXN0YQIAAAABXwQAAAAKa2V5Q291bnRlcgkAASwAAAACBQAAAAlrZXlQcmVmaXgFAAAAEGZpZWxkTmFtZUNvdW50ZXIEAAAACm5SaWNoaWVzdGEEAAAAByRtYXRjaDAJAAQaAAAAAgUAAAAEdGhpcwUAAAAKa2V5Q291bnRlcgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFjBQAAAAckbWF0Y2gwCQAAZAAAAAIFAAAAAWMAAAAAAAAAAAEAAAAAAAAAAAEEAAAACmtleVByZWZpeE4JAAEsAAAAAgkAASwAAAACBQAAAAlrZXlQcmVmaXgJAAGkAAAAAQUAAAAKblJpY2hpZXN0YQIAAAABXwQAAAAEc2VlZAkBAAAACnJhbmRvbWl6ZXIAAAABBQAAAAFpBAAAAAhjdXJyRGF0ZQkBAAAADGdldFRpbWVzdGFtcAAAAAAEAAAAEGhlaWdodEV4dHJhY3Rpb24JAABkAAAAAgUAAAAGaGVpZ2h0BQAAAApkZWxheUJsb2NrCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACBQAAAAprZXlDb3VudGVyBQAAAApuUmljaGllc3RhCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAACmtleVByZWZpeE4FAAAAGWZpZWxkTmFtZUhlaWdodEV4dHJhY3Rpb24FAAAAEGhlaWdodEV4dHJhY3Rpb24JAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAAUZmllbGROYW1lQ2FyZGluYWxpdGEFAAAAC2NhcmRpbmFsaXRhCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAIFAAAACmtleVByZWZpeE4FAAAAE2ZpZWxkTmFtZUVzdHJhemlvbmkFAAAACmVzdHJhemlvbmkJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAAWZmllbGROYW1lRGF0YVJpY2hpZXN0YQUAAAAIY3VyckRhdGUJAARMAAAAAgkBAAAAC0JpbmFyeUVudHJ5AAAAAgkAASwAAAACBQAAAAprZXlQcmVmaXhOBQAAAA1maWVsZE5hbWVTZWVkBQAAAARzZWVkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAAQZmllbGROYW1lU2VlZEIxNgkAAlwAAAABBQAAAARzZWVkCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgUAAAAKa2V5UHJlZml4TgUAAAATZmllbGROYW1lRXNjbHVzaW9uaQUAAAAKZXNjbHVzaW9uaQkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAIFAAAACmtleVByZWZpeE4FAAAAEmZpZWxkTmFtZVJpY2hpZXN0YQUAAAAJcmljaGllc3RhBQAAAANuaWwAAAACAAAAAWkBAAAABmVzdHJhaQAAAAIAAAAJcmljaGllc3RhAAAABm51bWVybwMJAQAAAAtpc1BheW1lbnRPawAAAAEFAAAAAWkJAQAAAAdlc3RyYWkxAAAAAwUAAAAJcmljaGllc3RhBQAAAAZudW1lcm8FAAAAAWkJAAACAAAAAQUAAAAMbXNnUGFnYW1lbnRvAAAAAWkBAAAACHJlZ2lzdHJhAAAABAAAAAlyaWNoaWVzdGEAAAALY2FyZGluYWxpdGEAAAAKZXN0cmF6aW9uaQAAAAplc2NsdXNpb25pAwkBAAAAC2lzUGF5bWVudE9rAAAAAQUAAAABaQkBAAAACXJlZ2lzdHJhMQAAAAUFAAAACXJpY2hpZXN0YQUAAAALY2FyZGluYWxpdGEFAAAACmVzdHJhemlvbmkFAAAACmVzY2x1c2lvbmkFAAAAAWkJAAACAAAAAQUAAAAMbXNnUGFnYW1lbnRvAAAAAEmG8VA=", "height": 1967202, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Dvf51PW6mkNaHTtXSpRgUTmqLE2HYQy9zyakZXzpTntz Next: 48gAxAAvWgTpPDpZyLzaWA8ygiNnuh17zYVRQpdU77js Diff:
Old | New | Differences | |
---|---|---|---|
51 | 51 | } | |
52 | 52 | ||
53 | 53 | ||
54 | - | func w (x,y) = ((("{\"" + x) + "\":\"") + y) | |
54 | + | func w (x,y) = ((("{\"" + x) + "\": \"") + y) | |
55 | 55 | ||
56 | 56 | ||
57 | - | func z (x,y) = ((("\", \"" + x) + "\":\" | |
57 | + | func z (x,y) = ((("\", \"" + x) + "\": \"") + y) | |
58 | 58 | ||
59 | 59 | ||
60 | - | func A (x,y) = (((("\", \"" + x) + "\":\" | |
60 | + | func A (x,y) = (((("\", \"" + x) + "\": \"") + y) + "\"}") | |
61 | 61 | ||
62 | 62 | ||
63 | 63 | func B (x,C) = { |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let a = 1 | |
5 | 5 | ||
6 | 6 | let b = 10 | |
7 | 7 | ||
8 | 8 | let c = base58'GQqJPRuXvxoyz22DeLqquGcx3cdbYpWi6QdqfQUMbLuf' | |
9 | 9 | ||
10 | 10 | let d = ((("Devi effettuare un pagamento in " + toBase58String(c)) + " di almeno ") + toString(b)) | |
11 | 11 | ||
12 | 12 | let e = "seme_estratto" | |
13 | 13 | ||
14 | 14 | let f = "seed" | |
15 | 15 | ||
16 | 16 | let g = "seed_b16" | |
17 | 17 | ||
18 | 18 | let h = "height_extraction" | |
19 | 19 | ||
20 | 20 | let i = "json" | |
21 | 21 | ||
22 | 22 | let j = "cardinalita" | |
23 | 23 | ||
24 | 24 | let k = "data_richiesta" | |
25 | 25 | ||
26 | 26 | let l = "estrazioni" | |
27 | 27 | ||
28 | 28 | let m = "richiesta" | |
29 | 29 | ||
30 | 30 | let n = "esclusioni" | |
31 | 31 | ||
32 | 32 | let o = "counter" | |
33 | 33 | ||
34 | 34 | let p = "id_richiesta" | |
35 | 35 | ||
36 | 36 | let q = "provider" | |
37 | 37 | ||
38 | 38 | func r (s) = if ((size(s.payments) == 0)) | |
39 | 39 | then throw(d) | |
40 | 40 | else { | |
41 | 41 | let t = s.payments[0] | |
42 | 42 | let u = t.assetId | |
43 | 43 | if ($isInstanceOf(u, "ByteVector")) | |
44 | 44 | then { | |
45 | 45 | let v = u | |
46 | 46 | if ((v == c)) | |
47 | 47 | then (t.amount >= (b * 1000000)) | |
48 | 48 | else false | |
49 | 49 | } | |
50 | 50 | else false | |
51 | 51 | } | |
52 | 52 | ||
53 | 53 | ||
54 | - | func w (x,y) = ((("{\"" + x) + "\":\"") + y) | |
54 | + | func w (x,y) = ((("{\"" + x) + "\": \"") + y) | |
55 | 55 | ||
56 | 56 | ||
57 | - | func z (x,y) = ((("\", \"" + x) + "\":\" | |
57 | + | func z (x,y) = ((("\", \"" + x) + "\": \"") + y) | |
58 | 58 | ||
59 | 59 | ||
60 | - | func A (x,y) = (((("\", \"" + x) + "\":\" | |
60 | + | func A (x,y) = (((("\", \"" + x) + "\": \"") + y) + "\"}") | |
61 | 61 | ||
62 | 62 | ||
63 | 63 | func B (x,C) = { | |
64 | 64 | let D = { | |
65 | 65 | let u = getInteger(this, x) | |
66 | 66 | if ($isInstanceOf(u, "Int")) | |
67 | 67 | then { | |
68 | 68 | let E = u | |
69 | 69 | E | |
70 | 70 | } | |
71 | 71 | else throw(C) | |
72 | 72 | } | |
73 | 73 | D | |
74 | 74 | } | |
75 | 75 | ||
76 | 76 | ||
77 | 77 | func F () = { | |
78 | 78 | let G = { | |
79 | 79 | let u = blockInfoByHeight(height) | |
80 | 80 | if ($isInstanceOf(u, "BlockInfo")) | |
81 | 81 | then { | |
82 | 82 | let H = u | |
83 | 83 | H | |
84 | 84 | } | |
85 | 85 | else throw("Alla ricerca del blocco corrente: Blocco non trovato!") | |
86 | 86 | } | |
87 | 87 | G | |
88 | 88 | } | |
89 | 89 | ||
90 | 90 | ||
91 | 91 | func I () = { | |
92 | 92 | let G = { | |
93 | 93 | let u = blockInfoByHeight(height) | |
94 | 94 | if ($isInstanceOf(u, "BlockInfo")) | |
95 | 95 | then { | |
96 | 96 | let H = u | |
97 | 97 | H.timestamp | |
98 | 98 | } | |
99 | 99 | else throw("Alla ricerca del `timestamp`: Blocco non trovato!") | |
100 | 100 | } | |
101 | 101 | G | |
102 | 102 | } | |
103 | 103 | ||
104 | 104 | ||
105 | 105 | func J (K) = { | |
106 | 106 | let L = { | |
107 | 107 | let u = K.vrf | |
108 | 108 | if ($isInstanceOf(u, "ByteVector")) | |
109 | 109 | then { | |
110 | 110 | let E = u | |
111 | 111 | E | |
112 | 112 | } | |
113 | 113 | else throw("Alla ricerca del `vrf`: Blocco non trovato o blocco non in versione 5 ritenta.") | |
114 | 114 | } | |
115 | 115 | L | |
116 | 116 | } | |
117 | 117 | ||
118 | 118 | ||
119 | 119 | func M (N) = { | |
120 | 120 | let O = F() | |
121 | 121 | let P = (((((N.transactionId + N.callerPublicKey) + J(O)) + O.generationSignature) + toBytes(O.timestamp)) + toBytes(O.height)) | |
122 | 122 | sha256_16Kb(sha256_16Kb(P)) | |
123 | 123 | } | |
124 | 124 | ||
125 | 125 | ||
126 | 126 | func Q (R,S,s) = { | |
127 | 127 | let T = toString(s.caller) | |
128 | 128 | let U = (((T + "_") + R) + "_") | |
129 | 129 | let V = (U + o) | |
130 | 130 | let W = B(V, "La richiesta fatta non è stata ancora registrata") | |
131 | 131 | let X = if ((0 >= S)) | |
132 | 132 | then W | |
133 | 133 | else if ((W >= S)) | |
134 | 134 | then S | |
135 | 135 | else throw("Non esiste una richiesta con questo numero") | |
136 | 136 | let Y = ((U + toString(X)) + "_") | |
137 | 137 | let Z = (Y + e) | |
138 | 138 | let aa = { | |
139 | 139 | let u = getString(this, Z) | |
140 | 140 | if ($isInstanceOf(u, "String")) | |
141 | 141 | then { | |
142 | 142 | let E = u | |
143 | 143 | throw(((("Risultato già presente in blockchain: " + Z) + ": ") + E)) | |
144 | 144 | } | |
145 | 145 | else false | |
146 | 146 | } | |
147 | 147 | if (!(aa)) | |
148 | 148 | then { | |
149 | 149 | let ab = B((Y + h), "Errore generico su dati della richiesta") | |
150 | 150 | if ((ab > height)) | |
151 | 151 | then throw(((("Devi aspettare il blocco " + toString(ab)) + ". siamo al blocco ") + toString(height))) | |
152 | 152 | else { | |
153 | 153 | let ac = (Y + f) | |
154 | 154 | let ad = { | |
155 | 155 | let u = getBinary(this, ac) | |
156 | 156 | if ($isInstanceOf(u, "ByteVector")) | |
157 | 157 | then { | |
158 | 158 | let E = u | |
159 | 159 | E | |
160 | 160 | } | |
161 | 161 | else throw("Seme non trovato. Qualcosa è andata storta!") | |
162 | 162 | } | |
163 | 163 | let ae = { | |
164 | 164 | let u = blockInfoByHeight(ab) | |
165 | 165 | if ($isInstanceOf(u, "BlockInfo")) | |
166 | 166 | then { | |
167 | 167 | let G = u | |
168 | 168 | G | |
169 | 169 | } | |
170 | 170 | else throw("Errore: Il blocco di estrazione non esiste") | |
171 | 171 | } | |
172 | 172 | let af = { | |
173 | 173 | let u = ae.vrf | |
174 | 174 | if ($isInstanceOf(u, "ByteVector")) | |
175 | 175 | then { | |
176 | 176 | let E = u | |
177 | 177 | E | |
178 | 178 | } | |
179 | 179 | else throw("Blocco non in versione 5 ritenta.") | |
180 | 180 | } | |
181 | 181 | let P = (((ad + ae.generationSignature) + ae.generatorPublicKey) + J(ae)) | |
182 | 182 | let ag = toBase16String(sha256_16Kb(sha256_16Kb(P))) | |
183 | 183 | let ah = toString(B((Y + j), "Errore lettura cardinalità")) | |
184 | 184 | let ai = toString(B((Y + k), "Errore lettura DataRichiesta")) | |
185 | 185 | let aj = toString(B((Y + l), "Errore lettura Estrazioni")) | |
186 | 186 | let ak = { | |
187 | 187 | let u = getString(this, (Y + n)) | |
188 | 188 | if ($isInstanceOf(u, "String")) | |
189 | 189 | then { | |
190 | 190 | let E = u | |
191 | 191 | E | |
192 | 192 | } | |
193 | 193 | else throw("Errore: elenco esclusioni non presente") | |
194 | 194 | } | |
195 | 195 | let al = ((((((((((w(p, toString(X)) + z(o, toString(W))) + z(q, T)) + z(m, R)) + z(j, ah)) + z(l, aj)) + z(n, ak)) + z(k, ai)) + z(g, toBase16String(ad))) + z(h, toString(ab))) + A(e, ag)) | |
196 | 196 | [StringEntry((Y + i), al), StringEntry(Z, ag)] | |
197 | 197 | } | |
198 | 198 | } | |
199 | 199 | else throw("Errore: non dovresti passare da quì") | |
200 | 200 | } | |
201 | 201 | ||
202 | 202 | ||
203 | 203 | func am (R,an,ao,ak,s) = { | |
204 | 204 | let U = (((toString(s.caller) + "_") + R) + "_") | |
205 | 205 | let V = (U + o) | |
206 | 206 | let ap = { | |
207 | 207 | let u = getInteger(this, V) | |
208 | 208 | if ($isInstanceOf(u, "Int")) | |
209 | 209 | then { | |
210 | 210 | let aq = u | |
211 | 211 | (aq + 1) | |
212 | 212 | } | |
213 | 213 | else 1 | |
214 | 214 | } | |
215 | 215 | let Y = ((U + toString(ap)) + "_") | |
216 | 216 | let ad = M(s) | |
217 | 217 | let ar = I() | |
218 | 218 | let as = (height + a) | |
219 | 219 | [IntegerEntry(V, ap), IntegerEntry((Y + h), as), IntegerEntry((Y + j), an), IntegerEntry((Y + l), ao), IntegerEntry((Y + k), ar), BinaryEntry((Y + f), ad), StringEntry((Y + g), toBase16String(ad)), StringEntry((Y + n), ak), StringEntry((Y + m), R)] | |
220 | 220 | } | |
221 | 221 | ||
222 | 222 | ||
223 | 223 | @Callable(s) | |
224 | 224 | func estrai (R,S) = if (r(s)) | |
225 | 225 | then Q(R, S, s) | |
226 | 226 | else throw(d) | |
227 | 227 | ||
228 | 228 | ||
229 | 229 | ||
230 | 230 | @Callable(s) | |
231 | 231 | func registra (R,an,ao,ak) = if (r(s)) | |
232 | 232 | then am(R, an, ao, ak, s) | |
233 | 233 | else throw(d) | |
234 | 234 | ||
235 | 235 |
github/deemru/w8io/169f3d6 48.43 ms ◑![]()