tx · Hxv3s35dPuYmcjBKrT3JtnHZ9phhoPfEtggfbAzr5zYi

3N13KQpdY3UU7JkWUBD9kN7t7xuUgeyYMTT:  -0.00200000 Waves

2023.07.04 17:30 [2651279] smart account 3N13KQpdY3UU7JkWUBD9kN7t7xuUgeyYMTT > SELF 0.00000000 Waves

{ "type": 13, "id": "Hxv3s35dPuYmcjBKrT3JtnHZ9phhoPfEtggfbAzr5zYi", "fee": 200000, "feeAssetId": null, "timestamp": 1688481083034, "version": 1, "sender": "3N13KQpdY3UU7JkWUBD9kN7t7xuUgeyYMTT", "senderPublicKey": "HmygqMrDfZtwU85YLdzAEnJ2Gv1qZ1z37iRQDFn873kv", "proofs": [ "4WVnohoMinSSyBJTQ9KB6qPwZT1qE1q2BDnqLpmhwH3Kzxv4RWgSnptQUFX8RpCVP1gr18q8GKUTtBH9PwXHA7a9" ], "script": "base64:BgIICAISBAoCAgELAANTRVACAl9fABBjb250cmFjdEZpbGVuYW1lAhNwcm94eV90cmVhc3VyeS5yaWRlAQd3cmFwRXJyAQFzCQCsAgIJAKwCAgUQY29udHJhY3RGaWxlbmFtZQICOiAFAXMBCHRocm93RXJyAQFzCQACAQkBB3dyYXBFcnIBBQFzARFrZXlGYWN0b3J5QWRkcmVzcwAJALkJAgkAzAgCAgIlcwkAzAgCAgdmYWN0b3J5BQNuaWwFA1NFUAETa2V5TWFuYWdlclB1YmxpY0tleQAJALkJAgkAzAgCAgIlcwkAzAgCAhBtYW5hZ2VyUHVibGljS2V5BQNuaWwFA1NFUAAUZmFjdG9yeUFkZHJlc3NPcHRpb24EByRtYXRjaDAJAJ0IAgUEdGhpcwkBEWtleUZhY3RvcnlBZGRyZXNzAAMJAAECBQckbWF0Y2gwAgZTdHJpbmcEAXMFByRtYXRjaDAJAKYIAQUBcwMJAAECBQckbWF0Y2gwAgRVbml0BQR1bml0CQACAQILTWF0Y2ggZXJyb3IAFGZhY3RvcnlBZGRyZXNzT3JGYWlsCQETdmFsdWVPckVycm9yTWVzc2FnZQIFFGZhY3RvcnlBZGRyZXNzT3B0aW9uCQEHd3JhcEVycgECF2ludmFsaWQgZmFjdG9yeSBhZGRyZXNzAQtvbmx5QWRkcmVzcwIBaQdhZGRyZXNzAwkAAAIIBQFpBmNhbGxlcgUHYWRkcmVzcwYJAQh0aHJvd0VycgECEXBlcm1pc3Npb24gZGVuaWVkAQtvbmx5RmFjdG9yeQEBaQkBC29ubHlBZGRyZXNzAgUBaQUUZmFjdG9yeUFkZHJlc3NPckZhaWwBGWdldE1hbmFnZXJQdWJsaWNLZXlPclVuaXQABAckbWF0Y2gwBRRmYWN0b3J5QWRkcmVzc09wdGlvbgMJAAECBQckbWF0Y2gwAgdBZGRyZXNzBAJmYQUHJG1hdGNoMAQHJG1hdGNoMQkAnQgCBQJmYQkBE2tleU1hbmFnZXJQdWJsaWNLZXkAAwkAAQIFByRtYXRjaDECBlN0cmluZwQDcHViBQckbWF0Y2gxCQDZBAEFA3B1YgUEdW5pdAUEdW5pdAEBaQENdHJhbnNmZXJXYXZlcwIOcmVjaXBpZW50Qnl0ZXMGYW1vdW50BAtjaGVja0NhbGxlcgkBC29ubHlGYWN0b3J5AQUBaQMJAAACBQtjaGVja0NhbGxlcgULY2hlY2tDYWxsZXIJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBBQ5yZWNpcGllbnRCeXRlcwUGYW1vdW50BQR1bml0BQNuaWwJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4BAnR4AQZ2ZXJpZnkABAlwdWJsaWNLZXkEByRtYXRjaDAJARlnZXRNYW5hZ2VyUHVibGljS2V5T3JVbml0AAMJAAECBQckbWF0Y2gwAgpCeXRlVmVjdG9yBANwdWIFByRtYXRjaDAFA3B1YggFAnR4D3NlbmRlclB1YmxpY0tleQkA9AMDCAUCdHgJYm9keUJ5dGVzCQCRAwIIBQJ0eAZwcm9vZnMAAAUJcHVibGljS2V5FfN7tg==", "chainId": 84, "height": 2651279, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3aL4sNQtRDQm5cYR4wgada7tYxwLWQ97aXGFP2qoo9H8 Next: none Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
6-let b = "treasury.ride"
6+let b = "proxy_treasury.ride"
77
8-let c = 5
9-
10-let d = 3
11-
12-let e = 32
13-
14-func f (g) = ((b + ": ") + g)
8+func c (d) = ((b + ": ") + d)
159
1610
17-func h (g) = throw(f(g))
11+func e (d) = throw(c(d))
1812
1913
20-func i (j) = makeString(["%s%s%s", "allowTxId", j], a)
14+func f () = makeString(["%s", "factory"], a)
2115
2216
23-func k (l,m) = makeString([l, m], a)
17+func g () = makeString(["%s", "managerPublicKey"], a)
2418
2519
26-func n () = makeString(["%s", "adminAddressList"], a)
27-
28-
29-func o () = makeString(["%s", "factory"], a)
30-
31-
32-func p () = makeString(["%s", "txId"], a)
33-
34-
35-func q () = "%s__config"
36-
37-
38-func r () = "contract_voting_result"
39-
40-
41-func s (t,j) = ((("proposal_allow_broadcast_" + toString(t)) + "_") + toBase58String(j))
42-
43-
44-let u = {
45- let v = getString(this, q())
46- if ($isInstanceOf(v, "String"))
20+let h = {
21+ let i = getString(this, f())
22+ if ($isInstanceOf(i, "String"))
4723 then {
48- let g = v
49- addressFromString(g)
24+ let d = i
25+ addressFromString(d)
5026 }
51- else if ($isInstanceOf(v, "Unit"))
27+ else if ($isInstanceOf(i, "Unit"))
5228 then unit
5329 else throw("Match error")
5430 }
5531
56-let w = valueOrErrorMessage(u, f("invalid config address"))
32+let j = valueOrErrorMessage(h, c("invalid factory address"))
5733
58-let x = {
59- let v = getString(this, o())
60- if ($isInstanceOf(v, "String"))
61- then {
62- let g = v
63- addressFromString(g)
64- }
65- else if ($isInstanceOf(v, "Unit"))
66- then unit
67- else throw("Match error")
68- }
69-
70-let y = valueOrErrorMessage(x, f("invalid factory address"))
71-
72-let z = {
73- let v = u
74- if ($isInstanceOf(v, "Address"))
75- then {
76- let A = v
77- let B = getString(A, r())
78- if ($isInstanceOf(B, "String"))
79- then {
80- let g = B
81- addressFromString(g)
82- }
83- else if ($isInstanceOf(B, "Unit"))
84- then unit
85- else throw("Match error")
86- }
87- else if ($isInstanceOf(v, "Unit"))
88- then unit
89- else throw("Match error")
90- }
91-
92-let C = valueOrErrorMessage(z, f("invalid voting result address"))
93-
94-func D (E,t) = if ((E.caller == t))
34+func k (l,m) = if ((l.caller == m))
9535 then true
96- else h("permission denied")
36+ else e("permission denied")
9737
9838
99-func F (E) = D(E, y)
39+func n (l) = k(l, j)
10040
10141
102-func G (l,H) = {
103- let I = k(l, H)
104- valueOrElse(getInteger(I), 0)
42+func o () = {
43+ let i = h
44+ if ($isInstanceOf(i, "Address"))
45+ then {
46+ let p = i
47+ let q = getString(p, g())
48+ if ($isInstanceOf(q, "String"))
49+ then {
50+ let r = q
51+ fromBase58String(r)
52+ }
53+ else unit
54+ }
55+ else unit
10556 }
10657
10758
108-func J () = {
109- let v = getString(this, n())
110- if ($isInstanceOf(v, "String"))
111- then {
112- let g = v
113- split(g, a)
114- }
115- else nil
116- }
117-
118-
119-func K (t) = containsElement(J(), t)
120-
121-
122-func L (A,m) = {
123- let M = A
124- let N = M._1
125- let l = M._2
126- $Tuple2((N :+ k(l, m)), l)
127- }
128-
129-
130-func O (P) = {
131- let Q = n()
132- let R = {
133- let S = J()
134- let T = size(S)
135- let U = $Tuple2(nil, P)
136- func V (W,X) = if ((X >= T))
137- then W
138- else L(W, S[X])
139-
140- func Y (W,X) = if ((X >= T))
141- then W
142- else throw("List size exceeds 5")
143-
144- Y(V(V(V(V(V(U, 0), 1), 2), 3), 4), 5)
145- }
146- let N = R._1
147- let l = R._2
148- N
149- }
150-
151-
152-func Z (N,I) = (N + valueOrElse(getInteger(I), 0))
153-
154-
155-func aa (l) = {
156- let ab = O(l)
157- let S = ab
158- let T = size(S)
159- let U = 0
160- func V (W,X) = if ((X >= T))
161- then W
162- else Z(W, S[X])
163-
164- func Y (W,X) = if ((X >= T))
165- then W
166- else throw("List size exceeds 5")
167-
168- Y(V(V(V(V(V(U, 0), 1), 2), 3), 4), 5)
169- }
170-
171-
172-func ac (N,ad) = (N :+ DeleteEntry(ad))
173-
174-
175-func ae (l) = {
176- let ab = O(l)
177- let S = ab
178- let T = size(S)
179- let U = nil
180- func V (W,X) = if ((X >= T))
181- then W
182- else ac(W, S[X])
183-
184- func Y (W,X) = if ((X >= T))
185- then W
186- else throw("List size exceeds 5")
187-
188- Y(V(V(V(V(V(U, 0), 1), 2), 3), 4), 5)
189- }
190-
191-
192-func af (ag,P,ah,ai) = {
193- let I = k(P, ag)
194- let aj = G(P, ag)
195- let ak = if (!(K(ag)))
196- then h((("Address: " + ag) + " not in Admin list"))
197- else if ((aj == 1))
198- then h((I + " you already voted"))
199- else unit
200- if ((ak == ak))
201- then {
202- let ab = aa(P)
203- if (((ab + 1) >= ah))
204- then {
205- let al = ae(P)
206- (al ++ ai)
207- }
208- else [IntegerEntry(I, 1)]
209- }
59+@Callable(l)
60+func transferWaves (s,t) = {
61+ let u = n(l)
62+ if ((u == u))
63+ then [ScriptTransfer(Address(s), t, unit)]
21064 else throw("Strict value is not equal to itself.")
21165 }
21266
21367
214-@Callable(E)
215-func transferWaves (am,an) = {
216- let ao = F(E)
217- if ((ao == ao))
218- then [ScriptTransfer(Address(am), an, unit)]
219- else throw("Strict value is not equal to itself.")
68+@Verifier(v)
69+func w () = {
70+ let x = {
71+ let i = o()
72+ if ($isInstanceOf(i, "ByteVector"))
73+ then {
74+ let r = i
75+ r
76+ }
77+ else v.senderPublicKey
78+ }
79+ sigVerify(v.bodyBytes, v.proofs[0], x)
22080 }
221-
222-
223-
224-@Callable(E)
225-func voteForTxId (j) = {
226- let ag = toBase58String(E.caller.bytes)
227- let P = i(j)
228- let N = [StringEntry(p(), j)]
229- let ap = getString(this, p())
230- let ak = [if ((size(fromBase58String(j)) == e))
231- then true
232- else h((j + " is not valid txId")), if (if ((ap == unit))
233- then true
234- else (value(ap) != j))
235- then true
236- else h((j + " is already allowed"))]
237- if ((ak == ak))
238- then af(ag, P, d, N)
239- else throw("Strict value is not equal to itself.")
240- }
241-
24281
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "__"
55
6-let b = "treasury.ride"
6+let b = "proxy_treasury.ride"
77
8-let c = 5
9-
10-let d = 3
11-
12-let e = 32
13-
14-func f (g) = ((b + ": ") + g)
8+func c (d) = ((b + ": ") + d)
159
1610
17-func h (g) = throw(f(g))
11+func e (d) = throw(c(d))
1812
1913
20-func i (j) = makeString(["%s%s%s", "allowTxId", j], a)
14+func f () = makeString(["%s", "factory"], a)
2115
2216
23-func k (l,m) = makeString([l, m], a)
17+func g () = makeString(["%s", "managerPublicKey"], a)
2418
2519
26-func n () = makeString(["%s", "adminAddressList"], a)
27-
28-
29-func o () = makeString(["%s", "factory"], a)
30-
31-
32-func p () = makeString(["%s", "txId"], a)
33-
34-
35-func q () = "%s__config"
36-
37-
38-func r () = "contract_voting_result"
39-
40-
41-func s (t,j) = ((("proposal_allow_broadcast_" + toString(t)) + "_") + toBase58String(j))
42-
43-
44-let u = {
45- let v = getString(this, q())
46- if ($isInstanceOf(v, "String"))
20+let h = {
21+ let i = getString(this, f())
22+ if ($isInstanceOf(i, "String"))
4723 then {
48- let g = v
49- addressFromString(g)
24+ let d = i
25+ addressFromString(d)
5026 }
51- else if ($isInstanceOf(v, "Unit"))
27+ else if ($isInstanceOf(i, "Unit"))
5228 then unit
5329 else throw("Match error")
5430 }
5531
56-let w = valueOrErrorMessage(u, f("invalid config address"))
32+let j = valueOrErrorMessage(h, c("invalid factory address"))
5733
58-let x = {
59- let v = getString(this, o())
60- if ($isInstanceOf(v, "String"))
61- then {
62- let g = v
63- addressFromString(g)
64- }
65- else if ($isInstanceOf(v, "Unit"))
66- then unit
67- else throw("Match error")
68- }
69-
70-let y = valueOrErrorMessage(x, f("invalid factory address"))
71-
72-let z = {
73- let v = u
74- if ($isInstanceOf(v, "Address"))
75- then {
76- let A = v
77- let B = getString(A, r())
78- if ($isInstanceOf(B, "String"))
79- then {
80- let g = B
81- addressFromString(g)
82- }
83- else if ($isInstanceOf(B, "Unit"))
84- then unit
85- else throw("Match error")
86- }
87- else if ($isInstanceOf(v, "Unit"))
88- then unit
89- else throw("Match error")
90- }
91-
92-let C = valueOrErrorMessage(z, f("invalid voting result address"))
93-
94-func D (E,t) = if ((E.caller == t))
34+func k (l,m) = if ((l.caller == m))
9535 then true
96- else h("permission denied")
36+ else e("permission denied")
9737
9838
99-func F (E) = D(E, y)
39+func n (l) = k(l, j)
10040
10141
102-func G (l,H) = {
103- let I = k(l, H)
104- valueOrElse(getInteger(I), 0)
42+func o () = {
43+ let i = h
44+ if ($isInstanceOf(i, "Address"))
45+ then {
46+ let p = i
47+ let q = getString(p, g())
48+ if ($isInstanceOf(q, "String"))
49+ then {
50+ let r = q
51+ fromBase58String(r)
52+ }
53+ else unit
54+ }
55+ else unit
10556 }
10657
10758
108-func J () = {
109- let v = getString(this, n())
110- if ($isInstanceOf(v, "String"))
111- then {
112- let g = v
113- split(g, a)
114- }
115- else nil
116- }
117-
118-
119-func K (t) = containsElement(J(), t)
120-
121-
122-func L (A,m) = {
123- let M = A
124- let N = M._1
125- let l = M._2
126- $Tuple2((N :+ k(l, m)), l)
127- }
128-
129-
130-func O (P) = {
131- let Q = n()
132- let R = {
133- let S = J()
134- let T = size(S)
135- let U = $Tuple2(nil, P)
136- func V (W,X) = if ((X >= T))
137- then W
138- else L(W, S[X])
139-
140- func Y (W,X) = if ((X >= T))
141- then W
142- else throw("List size exceeds 5")
143-
144- Y(V(V(V(V(V(U, 0), 1), 2), 3), 4), 5)
145- }
146- let N = R._1
147- let l = R._2
148- N
149- }
150-
151-
152-func Z (N,I) = (N + valueOrElse(getInteger(I), 0))
153-
154-
155-func aa (l) = {
156- let ab = O(l)
157- let S = ab
158- let T = size(S)
159- let U = 0
160- func V (W,X) = if ((X >= T))
161- then W
162- else Z(W, S[X])
163-
164- func Y (W,X) = if ((X >= T))
165- then W
166- else throw("List size exceeds 5")
167-
168- Y(V(V(V(V(V(U, 0), 1), 2), 3), 4), 5)
169- }
170-
171-
172-func ac (N,ad) = (N :+ DeleteEntry(ad))
173-
174-
175-func ae (l) = {
176- let ab = O(l)
177- let S = ab
178- let T = size(S)
179- let U = nil
180- func V (W,X) = if ((X >= T))
181- then W
182- else ac(W, S[X])
183-
184- func Y (W,X) = if ((X >= T))
185- then W
186- else throw("List size exceeds 5")
187-
188- Y(V(V(V(V(V(U, 0), 1), 2), 3), 4), 5)
189- }
190-
191-
192-func af (ag,P,ah,ai) = {
193- let I = k(P, ag)
194- let aj = G(P, ag)
195- let ak = if (!(K(ag)))
196- then h((("Address: " + ag) + " not in Admin list"))
197- else if ((aj == 1))
198- then h((I + " you already voted"))
199- else unit
200- if ((ak == ak))
201- then {
202- let ab = aa(P)
203- if (((ab + 1) >= ah))
204- then {
205- let al = ae(P)
206- (al ++ ai)
207- }
208- else [IntegerEntry(I, 1)]
209- }
59+@Callable(l)
60+func transferWaves (s,t) = {
61+ let u = n(l)
62+ if ((u == u))
63+ then [ScriptTransfer(Address(s), t, unit)]
21064 else throw("Strict value is not equal to itself.")
21165 }
21266
21367
214-@Callable(E)
215-func transferWaves (am,an) = {
216- let ao = F(E)
217- if ((ao == ao))
218- then [ScriptTransfer(Address(am), an, unit)]
219- else throw("Strict value is not equal to itself.")
68+@Verifier(v)
69+func w () = {
70+ let x = {
71+ let i = o()
72+ if ($isInstanceOf(i, "ByteVector"))
73+ then {
74+ let r = i
75+ r
76+ }
77+ else v.senderPublicKey
78+ }
79+ sigVerify(v.bodyBytes, v.proofs[0], x)
22080 }
221-
222-
223-
224-@Callable(E)
225-func voteForTxId (j) = {
226- let ag = toBase58String(E.caller.bytes)
227- let P = i(j)
228- let N = [StringEntry(p(), j)]
229- let ap = getString(this, p())
230- let ak = [if ((size(fromBase58String(j)) == e))
231- then true
232- else h((j + " is not valid txId")), if (if ((ap == unit))
233- then true
234- else (value(ap) != j))
235- then true
236- else h((j + " is already allowed"))]
237- if ((ak == ak))
238- then af(ag, P, d, N)
239- else throw("Strict value is not equal to itself.")
240- }
241-
24281

github/deemru/w8io/169f3d6 
33.47 ms