tx · 8CpaQCAme6hnohpxa8WakW6bb8FtYJCx2GvJrBJ7AQpX

3N666c9jMPp2LgthP7QpdaHbfcyCXp6pfk2:  -0.01400000 Waves

2020.07.15 09:20 [1088059] smart account 3N666c9jMPp2LgthP7QpdaHbfcyCXp6pfk2 > SELF 0.00000000 Waves

{ "type": 13, "id": "8CpaQCAme6hnohpxa8WakW6bb8FtYJCx2GvJrBJ7AQpX", "fee": 1400000, "feeAssetId": null, "timestamp": 1594794081050, "version": 1, "sender": "3N666c9jMPp2LgthP7QpdaHbfcyCXp6pfk2", "senderPublicKey": "2K3zsM6XaqxaedbuC6dRB8cVX8TcnGRAXSkRyUmXiSAj", "proofs": [ "yih1u3Znu8hp7wJ13b3vGR5GMvz4yYYSTESow4QVGvdJPTRxEacJPTN7cQqgSRiVk4i6VnK28vQT8D6QpWPTsMZ" ], "script": "base64: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", "chainId": 84, "height": 1088059, "spentComplexity": 0 } View: original | compacted Prev: xFw7bKdZ1FREz1vDSaK9RqPBue9sf61ZphBRZEDsUsE Next: FCdpLwjPTJggzk2kV7cacvM5f3tfLBNewUD2gS8HvzGX Diff:
OldNewDifferences
1515
1616
1717 func f (c) = {
18+ let d = getBinary(this, c)
19+ if ($isInstanceOf(d, "ByteVector"))
20+ then {
21+ let e = d
22+ e
23+ }
24+ else base58'2CsAf'
25+ }
26+
27+
28+func g (c) = {
1829 let d = getString(this, c)
1930 if ($isInstanceOf(d, "String"))
2031 then {
2536 }
2637
2738
28-func g (h,c) = {
29- let d = getString(h, c)
39+func h (i,c) = {
40+ let d = getString(i, c)
3041 if ($isInstanceOf(d, "String"))
3142 then {
3243 let e = d
3647 }
3748
3849
39-let i = "oracles"
50+let j = "oracles"
4051
41-let j = "consuls"
52+let k = "consuls"
4253
43-let k = "subscriber_address"
54+let l = "subscriber_address"
4455
45-let l = "gravity_contract"
56+let m = "gravity_contract"
4657
47-let m = "bft_coefficient"
58+let n = "bft_coefficient"
4859
49-let n = "last_round"
60+let o = "last_round"
5061
51-let o = split(f(i), ",")
62+let p = split(g(j), ",")
5263
53-let p = b(m)
64+let q = b(n)
5465
55-let q = addressFromStringValue(f(l))
66+let r = addressFromStringValue(g(m))
5667
57-let r = split(g(q, j), ",")
68+let s = split(h(r, k), ",")
5869
59-let s = f(k)
70+let t = g(l)
6071
61-func t (u,v,w) = if ((v != "nil"))
62- then if (sigVerify(u, fromBase58String(v), fromBase58String(w)))
72+func u (v,w,x) = if ((w != "nil"))
73+ then if (sigVerify(v, fromBase58String(w), fromBase58String(x)))
6374 then 1
6475 else 0
6576 else 0
6677
6778
68-@Callable(x)
69-func confirmData (u,y) = {
70- let z = split(y, ",")
71- let A = ((((t(u, z[0], o[0]) + t(u, z[1], o[1])) + t(u, z[2], o[2])) + t(u, z[3], o[3])) + t(u, z[4], o[4]))
72- if ((A > p))
79+@Callable(y)
80+func confirmData (v,z) = {
81+ let A = split(z, ",")
82+ let B = ((((u(v, A[0], p[0]) + u(v, A[1], p[1])) + u(v, A[2], p[2])) + u(v, A[3], p[3])) + u(v, A[4], p[4]))
83+ if ((B > q))
7384 then throw("invalid bft count")
74- else if ((f(toString(height)) != ""))
85+ else if ((f(toString(height)) != base58'2CsAf'))
7586 then throw("data is exist")
76- else WriteSet([DataEntry(toString(height), u)])
87+ else WriteSet([DataEntry(toString(height), v)])
7788 }
7889
7990
8091
81-@Callable(x)
82-func setSortedOracles (B,C,D) = {
83- let y = split(C, ",")
84- let A = ((((t(toBytes(B), y[0], r[0]) + t(toBytes(B), y[1], r[1])) + t(toBytes(B), y[2], r[2])) + t(toBytes(B), y[3], r[3])) + t(toBytes(B), y[4], r[4]))
85- if ((A > p))
92+@Callable(y)
93+func setSortedOracles (C,D,E) = {
94+ let z = split(D, ",")
95+ let B = ((((u(toBytes(C), z[0], s[0]) + u(toBytes(C), z[1], s[1])) + u(toBytes(C), z[2], s[2])) + u(toBytes(C), z[3], s[3])) + u(toBytes(C), z[4], s[4]))
96+ if ((B > q))
8697 then throw("invalid bft count")
87- else WriteSet([DataEntry(i, B), DataEntry(((n + "_") + toString(D)), D)])
98+ else WriteSet([DataEntry(j, C), DataEntry(((o + "_") + toString(E)), E)])
8899 }
89100
90101
91-@Verifier(x)
92-func E () = {
93- let d = x
102+@Verifier(y)
103+func F () = {
104+ let d = y
94105 if ($isInstanceOf(d, "InvokeScriptTransaction"))
95106 then {
96- let F = d
107+ let G = d
97108 let e = {
98- let G = F.args[0]
99- if ($isInstanceOf(G, "Int"))
109+ let H = G.args[0]
110+ if ($isInstanceOf(H, "Int"))
100111 then {
101- let e = G
112+ let e = H
102113 e
103114 }
104115 else throw("invalid args[0] type")
105116 }
106- let H = {
107- let G = F.args[1]
108- if ($isInstanceOf(G, "Int"))
117+ let I = {
118+ let H = G.args[1]
119+ if ($isInstanceOf(H, "Int"))
109120 then {
110- let H = G
111- H
121+ let I = H
122+ I
112123 }
113124 else throw("invalid args[1] type")
114125 }
115- if ((F.dApp != addressFromStringValue(s)))
126+ if ((G.dApp != addressFromStringValue(t)))
116127 then throw("invalid dapp address")
117- else if ((f(toString(H)) == ""))
128+ else if ((g(toString(I)) == ""))
118129 then throw("invalid height")
119- else if ((keccak256(toBytes(e)) != fromBase58String(f(toString(H)))))
130+ else if ((keccak256(toBytes(e)) != fromBase58String(g(toString(I)))))
120131 then throw(("invalid keccak256(value) " + toString(e)))
121132 else true
122133 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "WAVES"
55
66 func b (c) = {
77 let d = getInteger(this, c)
88 if ($isInstanceOf(d, "Int"))
99 then {
1010 let e = d
1111 e
1212 }
1313 else 0
1414 }
1515
1616
1717 func f (c) = {
18+ let d = getBinary(this, c)
19+ if ($isInstanceOf(d, "ByteVector"))
20+ then {
21+ let e = d
22+ e
23+ }
24+ else base58'2CsAf'
25+ }
26+
27+
28+func g (c) = {
1829 let d = getString(this, c)
1930 if ($isInstanceOf(d, "String"))
2031 then {
2132 let e = d
2233 e
2334 }
2435 else ""
2536 }
2637
2738
28-func g (h,c) = {
29- let d = getString(h, c)
39+func h (i,c) = {
40+ let d = getString(i, c)
3041 if ($isInstanceOf(d, "String"))
3142 then {
3243 let e = d
3344 e
3445 }
3546 else ""
3647 }
3748
3849
39-let i = "oracles"
50+let j = "oracles"
4051
41-let j = "consuls"
52+let k = "consuls"
4253
43-let k = "subscriber_address"
54+let l = "subscriber_address"
4455
45-let l = "gravity_contract"
56+let m = "gravity_contract"
4657
47-let m = "bft_coefficient"
58+let n = "bft_coefficient"
4859
49-let n = "last_round"
60+let o = "last_round"
5061
51-let o = split(f(i), ",")
62+let p = split(g(j), ",")
5263
53-let p = b(m)
64+let q = b(n)
5465
55-let q = addressFromStringValue(f(l))
66+let r = addressFromStringValue(g(m))
5667
57-let r = split(g(q, j), ",")
68+let s = split(h(r, k), ",")
5869
59-let s = f(k)
70+let t = g(l)
6071
61-func t (u,v,w) = if ((v != "nil"))
62- then if (sigVerify(u, fromBase58String(v), fromBase58String(w)))
72+func u (v,w,x) = if ((w != "nil"))
73+ then if (sigVerify(v, fromBase58String(w), fromBase58String(x)))
6374 then 1
6475 else 0
6576 else 0
6677
6778
68-@Callable(x)
69-func confirmData (u,y) = {
70- let z = split(y, ",")
71- let A = ((((t(u, z[0], o[0]) + t(u, z[1], o[1])) + t(u, z[2], o[2])) + t(u, z[3], o[3])) + t(u, z[4], o[4]))
72- if ((A > p))
79+@Callable(y)
80+func confirmData (v,z) = {
81+ let A = split(z, ",")
82+ let B = ((((u(v, A[0], p[0]) + u(v, A[1], p[1])) + u(v, A[2], p[2])) + u(v, A[3], p[3])) + u(v, A[4], p[4]))
83+ if ((B > q))
7384 then throw("invalid bft count")
74- else if ((f(toString(height)) != ""))
85+ else if ((f(toString(height)) != base58'2CsAf'))
7586 then throw("data is exist")
76- else WriteSet([DataEntry(toString(height), u)])
87+ else WriteSet([DataEntry(toString(height), v)])
7788 }
7889
7990
8091
81-@Callable(x)
82-func setSortedOracles (B,C,D) = {
83- let y = split(C, ",")
84- let A = ((((t(toBytes(B), y[0], r[0]) + t(toBytes(B), y[1], r[1])) + t(toBytes(B), y[2], r[2])) + t(toBytes(B), y[3], r[3])) + t(toBytes(B), y[4], r[4]))
85- if ((A > p))
92+@Callable(y)
93+func setSortedOracles (C,D,E) = {
94+ let z = split(D, ",")
95+ let B = ((((u(toBytes(C), z[0], s[0]) + u(toBytes(C), z[1], s[1])) + u(toBytes(C), z[2], s[2])) + u(toBytes(C), z[3], s[3])) + u(toBytes(C), z[4], s[4]))
96+ if ((B > q))
8697 then throw("invalid bft count")
87- else WriteSet([DataEntry(i, B), DataEntry(((n + "_") + toString(D)), D)])
98+ else WriteSet([DataEntry(j, C), DataEntry(((o + "_") + toString(E)), E)])
8899 }
89100
90101
91-@Verifier(x)
92-func E () = {
93- let d = x
102+@Verifier(y)
103+func F () = {
104+ let d = y
94105 if ($isInstanceOf(d, "InvokeScriptTransaction"))
95106 then {
96- let F = d
107+ let G = d
97108 let e = {
98- let G = F.args[0]
99- if ($isInstanceOf(G, "Int"))
109+ let H = G.args[0]
110+ if ($isInstanceOf(H, "Int"))
100111 then {
101- let e = G
112+ let e = H
102113 e
103114 }
104115 else throw("invalid args[0] type")
105116 }
106- let H = {
107- let G = F.args[1]
108- if ($isInstanceOf(G, "Int"))
117+ let I = {
118+ let H = G.args[1]
119+ if ($isInstanceOf(H, "Int"))
109120 then {
110- let H = G
111- H
121+ let I = H
122+ I
112123 }
113124 else throw("invalid args[1] type")
114125 }
115- if ((F.dApp != addressFromStringValue(s)))
126+ if ((G.dApp != addressFromStringValue(t)))
116127 then throw("invalid dapp address")
117- else if ((f(toString(H)) == ""))
128+ else if ((g(toString(I)) == ""))
118129 then throw("invalid height")
119- else if ((keccak256(toBytes(e)) != fromBase58String(f(toString(H)))))
130+ else if ((keccak256(toBytes(e)) != fromBase58String(g(toString(I)))))
120131 then throw(("invalid keccak256(value) " + toString(e)))
121132 else true
122133 }
123134 else true
124135 }
125136

github/deemru/w8io/169f3d6 
75.08 ms