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