tx · 4qV9EVJ5ZQ2mwaVux3ysFBJV5aJUu8Mo82tqbkPRN1Mt
3MpKvUfNxrgF7QotPjFwi8thMagSveNScKe: -0.01400000 Waves
2020.11.30 20:46 [1288475] smart account 3MpKvUfNxrgF7QotPjFwi8thMagSveNScKe > SELF 0.00000000 Waves
{
"type": 13,
"id": "4qV9EVJ5ZQ2mwaVux3ysFBJV5aJUu8Mo82tqbkPRN1Mt",
"fee": 1400000,
"feeAssetId": null,
"timestamp": 1606758394634,
"version": 2,
"chainId": 84,
"sender": "3MpKvUfNxrgF7QotPjFwi8thMagSveNScKe",
"senderPublicKey": "9GE2xN4fms9YNDxR1hGg52RynqDd8125TA42g4X29ZV7",
"proofs": [
"4bMoZo2o62S9Doe7tj3wM9QYb1sTNasYL3nUgGDRh6SGiShoSX8A8kbBVL1eUDANyd2LysLs7AvAaAd5MErkj2fo"
],
"script": "base64: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",
"height": 1288475,
"applicationStatus": "succeeded",
"spentComplexity": 0
}
View: original | compacted
Prev: EfWQ7CUKSC7EEC7YT23JzPyqyJyBNPkzTj1EEnJmjp1B
Next: 9Lf9kbCkyTXnRoDw11CoS6vmYE5cZxusnbwuPP1sDLaw
Diff:
Old | New | | Differences |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | 4 | | let a = addressFromPublicKey(fromBase58String("J7vyoUA8Gd5QMq4YVtedpv19dwCYroZEYrN8bKgLzqV8")) |
---|
5 | 5 | | |
---|
6 | | - | let b = base58'HMov2457acf5MEJr85fvXYL3vrTEevFpsEQkHh1yfdUT' |
---|
| 6 | + | let b = addressFromPublicKey(fromBase58String("C8jRoXECFheT6JPcAkcyWPadYbxBA6tSyAqXqjq5dicS")) |
---|
7 | 7 | | |
---|
8 | | - | func c (d) = { |
---|
9 | | - | let e = { |
---|
10 | | - | let f = getString(this, d) |
---|
11 | | - | if ($isInstanceOf(f, "String")) |
---|
| 8 | + | let c = base58'BN6ta4Sfmmh8tfmJE4pqJrSxLNJReAqnerPePYqkjcjG' |
---|
| 9 | + | |
---|
| 10 | + | func d (e) = { |
---|
| 11 | + | let f = { |
---|
| 12 | + | let g = getString(this, e) |
---|
| 13 | + | if ($isInstanceOf(g, "String")) |
---|
12 | 14 | | then { |
---|
13 | | - | let g = f |
---|
14 | | - | g |
---|
| 15 | + | let h = g |
---|
| 16 | + | h |
---|
15 | 17 | | } |
---|
16 | 18 | | else false |
---|
17 | 19 | | } |
---|
18 | | - | e |
---|
| 20 | + | f |
---|
19 | 21 | | } |
---|
20 | 22 | | |
---|
21 | 23 | | |
---|
22 | | - | func h (i,j) = { |
---|
23 | | - | let k = toBytes(toBase58String(keccak256(blake2b256(toBytes(i))))) |
---|
24 | | - | sigVerify(k, fromBase58String(j), base58'C8jRoXECFheT6JPcAkcyWPadYbxBA6tSyAqXqjq5dicS') |
---|
| 24 | + | func i (j,k) = { |
---|
| 25 | + | let l = toBytes(toBase58String(keccak256(blake2b256(toBytes(j))))) |
---|
| 26 | + | sigVerify(l, fromBase58String(k), base58'C8jRoXECFheT6JPcAkcyWPadYbxBA6tSyAqXqjq5dicS') |
---|
25 | 27 | | } |
---|
26 | 28 | | |
---|
27 | 29 | | |
---|
28 | | - | @Callable(l) |
---|
29 | | - | func opbrTest (d,m,n) = { |
---|
30 | | - | let o = l.payments |
---|
31 | | - | if ((d == "kjflkdsjf")) |
---|
32 | | - | then throw("nada") |
---|
33 | | - | else throw((d + toString((m + o[0].amount)))) |
---|
34 | | - | } |
---|
35 | | - | |
---|
36 | | - | |
---|
37 | | - | |
---|
38 | | - | @Callable(l) |
---|
39 | | - | func opbrBuy (d,m,n) = { |
---|
40 | | - | let p = toBase58String(l.caller.bytes) |
---|
41 | | - | let o = l.payments |
---|
42 | | - | let q = c(d) |
---|
43 | | - | if ((size(o) == 0)) |
---|
| 30 | + | @Callable(m) |
---|
| 31 | + | func opbrBuy (e,n,o) = { |
---|
| 32 | + | let p = toBase58String(m.caller.bytes) |
---|
| 33 | + | let q = m.payments |
---|
| 34 | + | let r = d(e) |
---|
| 35 | + | if ((size(q) == 0)) |
---|
44 | 36 | | then throw("Payment for exchange is mandatory") |
---|
45 | | - | else if ((size(o) == 2)) |
---|
| 37 | + | else if ((size(q) == 2)) |
---|
46 | 38 | | then throw("Only one payment per transaction is allowed") |
---|
47 | | - | else if (!(h((d + toString((m + o[0].amount))), n))) |
---|
| 39 | + | else if (!(i((e + toString((n + q[0].amount))), o))) |
---|
48 | 40 | | then throw("Stop hacking me!") |
---|
49 | | - | else if (if (isDefined(o[0].assetId)) |
---|
50 | | - | then (q == false) |
---|
| 41 | + | else if (if (isDefined(q[0].assetId)) |
---|
| 42 | + | then (r == false) |
---|
51 | 43 | | else false) |
---|
52 | 44 | | then throw("The used token is not accepted") |
---|
53 | | - | else if (if (isDefined(o[0].assetId)) |
---|
54 | | - | then (fromBase58String(d) != o[0].assetId) |
---|
| 45 | + | else if (if (isDefined(q[0].assetId)) |
---|
| 46 | + | then (fromBase58String(e) != q[0].assetId) |
---|
55 | 47 | | else false) |
---|
56 | 48 | | then throw("declared token is different from submitted token") |
---|
57 | 49 | | else { |
---|
58 | | - | let r = fraction(1, o[0].amount, 100) |
---|
59 | | - | [ScriptTransfer(l.caller, m, b), ScriptTransfer(a, r, o[0].assetId)] |
---|
| 50 | + | let s = fraction(1, q[0].amount, 100) |
---|
| 51 | + | [ScriptTransfer(m.caller, n, c), ScriptTransfer(a, s, q[0].assetId)] |
---|
60 | 52 | | } |
---|
61 | 53 | | } |
---|
62 | 54 | | |
---|
63 | 55 | | |
---|
64 | 56 | | |
---|
65 | | - | @Callable(l) |
---|
66 | | - | func tokenList (d,s) = { |
---|
67 | | - | let t = toBase58String(l.caller.bytes) |
---|
68 | | - | if (if ((t != toString(this))) |
---|
69 | | - | then (t != toString(a)) |
---|
70 | | - | else false) |
---|
71 | | - | then throw("The address is not authorized to list tokens") |
---|
72 | | - | else [StringEntry(d, s), ScriptTransfer(a, 1000000, unit)] |
---|
| 57 | + | @Callable(m) |
---|
| 58 | + | func bygtw (t,u,v) = { |
---|
| 59 | + | let w = toBase58String(m.caller.bytes) |
---|
| 60 | + | if ((w != toString(b))) |
---|
| 61 | + | then throw("Your account is not authorized for gateway execution") |
---|
| 62 | + | else [ScriptTransfer(m.caller, 1000000, unit), ScriptTransfer(addressFromStringValue(u), v, c)] |
---|
73 | 63 | | } |
---|
74 | 64 | | |
---|
75 | 65 | | |
---|
76 | 66 | | |
---|
77 | | - | @Callable(l) |
---|
78 | | - | func tokenDelist (d) = { |
---|
79 | | - | let t = toBase58String(l.caller.bytes) |
---|
80 | | - | if (if ((t != toString(this))) |
---|
81 | | - | then (t != toString(a)) |
---|
| 67 | + | @Callable(m) |
---|
| 68 | + | func tokenList (e,x) = { |
---|
| 69 | + | let y = toBase58String(m.caller.bytes) |
---|
| 70 | + | if (if ((y != toString(this))) |
---|
| 71 | + | then (y != toString(a)) |
---|
82 | 72 | | else false) |
---|
83 | | - | then throw("The address is not authorized to delist tokens") |
---|
84 | | - | else [DeleteEntry(d), ScriptTransfer(a, 10000000, unit)] |
---|
| 73 | + | then throw("The address is not authorized to list tokens") |
---|
| 74 | + | else [StringEntry(e, x), ScriptTransfer(a, 1000000, unit)] |
---|
85 | 75 | | } |
---|
86 | 76 | | |
---|
87 | 77 | | |
---|
88 | | - | @Verifier(u) |
---|
89 | | - | func v () = sigVerify(u.bodyBytes, u.proofs[0], u.senderPublicKey) |
---|
| 78 | + | |
---|
| 79 | + | @Callable(m) |
---|
| 80 | + | func tokenDelist (e) = { |
---|
| 81 | + | let y = toBase58String(m.caller.bytes) |
---|
| 82 | + | if (if ((y != toString(this))) |
---|
| 83 | + | then (y != toString(a)) |
---|
| 84 | + | else false) |
---|
| 85 | + | then throw("The address is not authorized to delist tokens") |
---|
| 86 | + | else [DeleteEntry(e), ScriptTransfer(a, 10000000, unit)] |
---|
| 87 | + | } |
---|
| 88 | + | |
---|
| 89 | + | |
---|
| 90 | + | @Verifier(z) |
---|
| 91 | + | func A () = sigVerify(z.bodyBytes, z.proofs[0], z.senderPublicKey) |
---|
90 | 92 | | |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 4 #-} |
---|
2 | 2 | | {-# SCRIPT_TYPE ACCOUNT #-} |
---|
3 | 3 | | {-# CONTENT_TYPE DAPP #-} |
---|
4 | 4 | | let a = addressFromPublicKey(fromBase58String("J7vyoUA8Gd5QMq4YVtedpv19dwCYroZEYrN8bKgLzqV8")) |
---|
5 | 5 | | |
---|
6 | | - | let b = base58'HMov2457acf5MEJr85fvXYL3vrTEevFpsEQkHh1yfdUT' |
---|
| 6 | + | let b = addressFromPublicKey(fromBase58String("C8jRoXECFheT6JPcAkcyWPadYbxBA6tSyAqXqjq5dicS")) |
---|
7 | 7 | | |
---|
8 | | - | func c (d) = { |
---|
9 | | - | let e = { |
---|
10 | | - | let f = getString(this, d) |
---|
11 | | - | if ($isInstanceOf(f, "String")) |
---|
| 8 | + | let c = base58'BN6ta4Sfmmh8tfmJE4pqJrSxLNJReAqnerPePYqkjcjG' |
---|
| 9 | + | |
---|
| 10 | + | func d (e) = { |
---|
| 11 | + | let f = { |
---|
| 12 | + | let g = getString(this, e) |
---|
| 13 | + | if ($isInstanceOf(g, "String")) |
---|
12 | 14 | | then { |
---|
13 | | - | let g = f |
---|
14 | | - | g |
---|
| 15 | + | let h = g |
---|
| 16 | + | h |
---|
15 | 17 | | } |
---|
16 | 18 | | else false |
---|
17 | 19 | | } |
---|
18 | | - | e |
---|
| 20 | + | f |
---|
19 | 21 | | } |
---|
20 | 22 | | |
---|
21 | 23 | | |
---|
22 | | - | func h (i,j) = { |
---|
23 | | - | let k = toBytes(toBase58String(keccak256(blake2b256(toBytes(i))))) |
---|
24 | | - | sigVerify(k, fromBase58String(j), base58'C8jRoXECFheT6JPcAkcyWPadYbxBA6tSyAqXqjq5dicS') |
---|
| 24 | + | func i (j,k) = { |
---|
| 25 | + | let l = toBytes(toBase58String(keccak256(blake2b256(toBytes(j))))) |
---|
| 26 | + | sigVerify(l, fromBase58String(k), base58'C8jRoXECFheT6JPcAkcyWPadYbxBA6tSyAqXqjq5dicS') |
---|
25 | 27 | | } |
---|
26 | 28 | | |
---|
27 | 29 | | |
---|
28 | | - | @Callable(l) |
---|
29 | | - | func opbrTest (d,m,n) = { |
---|
30 | | - | let o = l.payments |
---|
31 | | - | if ((d == "kjflkdsjf")) |
---|
32 | | - | then throw("nada") |
---|
33 | | - | else throw((d + toString((m + o[0].amount)))) |
---|
34 | | - | } |
---|
35 | | - | |
---|
36 | | - | |
---|
37 | | - | |
---|
38 | | - | @Callable(l) |
---|
39 | | - | func opbrBuy (d,m,n) = { |
---|
40 | | - | let p = toBase58String(l.caller.bytes) |
---|
41 | | - | let o = l.payments |
---|
42 | | - | let q = c(d) |
---|
43 | | - | if ((size(o) == 0)) |
---|
| 30 | + | @Callable(m) |
---|
| 31 | + | func opbrBuy (e,n,o) = { |
---|
| 32 | + | let p = toBase58String(m.caller.bytes) |
---|
| 33 | + | let q = m.payments |
---|
| 34 | + | let r = d(e) |
---|
| 35 | + | if ((size(q) == 0)) |
---|
44 | 36 | | then throw("Payment for exchange is mandatory") |
---|
45 | | - | else if ((size(o) == 2)) |
---|
| 37 | + | else if ((size(q) == 2)) |
---|
46 | 38 | | then throw("Only one payment per transaction is allowed") |
---|
47 | | - | else if (!(h((d + toString((m + o[0].amount))), n))) |
---|
| 39 | + | else if (!(i((e + toString((n + q[0].amount))), o))) |
---|
48 | 40 | | then throw("Stop hacking me!") |
---|
49 | | - | else if (if (isDefined(o[0].assetId)) |
---|
50 | | - | then (q == false) |
---|
| 41 | + | else if (if (isDefined(q[0].assetId)) |
---|
| 42 | + | then (r == false) |
---|
51 | 43 | | else false) |
---|
52 | 44 | | then throw("The used token is not accepted") |
---|
53 | | - | else if (if (isDefined(o[0].assetId)) |
---|
54 | | - | then (fromBase58String(d) != o[0].assetId) |
---|
| 45 | + | else if (if (isDefined(q[0].assetId)) |
---|
| 46 | + | then (fromBase58String(e) != q[0].assetId) |
---|
55 | 47 | | else false) |
---|
56 | 48 | | then throw("declared token is different from submitted token") |
---|
57 | 49 | | else { |
---|
58 | | - | let r = fraction(1, o[0].amount, 100) |
---|
59 | | - | [ScriptTransfer(l.caller, m, b), ScriptTransfer(a, r, o[0].assetId)] |
---|
| 50 | + | let s = fraction(1, q[0].amount, 100) |
---|
| 51 | + | [ScriptTransfer(m.caller, n, c), ScriptTransfer(a, s, q[0].assetId)] |
---|
60 | 52 | | } |
---|
61 | 53 | | } |
---|
62 | 54 | | |
---|
63 | 55 | | |
---|
64 | 56 | | |
---|
65 | | - | @Callable(l) |
---|
66 | | - | func tokenList (d,s) = { |
---|
67 | | - | let t = toBase58String(l.caller.bytes) |
---|
68 | | - | if (if ((t != toString(this))) |
---|
69 | | - | then (t != toString(a)) |
---|
70 | | - | else false) |
---|
71 | | - | then throw("The address is not authorized to list tokens") |
---|
72 | | - | else [StringEntry(d, s), ScriptTransfer(a, 1000000, unit)] |
---|
| 57 | + | @Callable(m) |
---|
| 58 | + | func bygtw (t,u,v) = { |
---|
| 59 | + | let w = toBase58String(m.caller.bytes) |
---|
| 60 | + | if ((w != toString(b))) |
---|
| 61 | + | then throw("Your account is not authorized for gateway execution") |
---|
| 62 | + | else [ScriptTransfer(m.caller, 1000000, unit), ScriptTransfer(addressFromStringValue(u), v, c)] |
---|
73 | 63 | | } |
---|
74 | 64 | | |
---|
75 | 65 | | |
---|
76 | 66 | | |
---|
77 | | - | @Callable(l) |
---|
78 | | - | func tokenDelist (d) = { |
---|
79 | | - | let t = toBase58String(l.caller.bytes) |
---|
80 | | - | if (if ((t != toString(this))) |
---|
81 | | - | then (t != toString(a)) |
---|
| 67 | + | @Callable(m) |
---|
| 68 | + | func tokenList (e,x) = { |
---|
| 69 | + | let y = toBase58String(m.caller.bytes) |
---|
| 70 | + | if (if ((y != toString(this))) |
---|
| 71 | + | then (y != toString(a)) |
---|
82 | 72 | | else false) |
---|
83 | | - | then throw("The address is not authorized to delist tokens") |
---|
84 | | - | else [DeleteEntry(d), ScriptTransfer(a, 10000000, unit)] |
---|
| 73 | + | then throw("The address is not authorized to list tokens") |
---|
| 74 | + | else [StringEntry(e, x), ScriptTransfer(a, 1000000, unit)] |
---|
85 | 75 | | } |
---|
86 | 76 | | |
---|
87 | 77 | | |
---|
88 | | - | @Verifier(u) |
---|
89 | | - | func v () = sigVerify(u.bodyBytes, u.proofs[0], u.senderPublicKey) |
---|
| 78 | + | |
---|
| 79 | + | @Callable(m) |
---|
| 80 | + | func tokenDelist (e) = { |
---|
| 81 | + | let y = toBase58String(m.caller.bytes) |
---|
| 82 | + | if (if ((y != toString(this))) |
---|
| 83 | + | then (y != toString(a)) |
---|
| 84 | + | else false) |
---|
| 85 | + | then throw("The address is not authorized to delist tokens") |
---|
| 86 | + | else [DeleteEntry(e), ScriptTransfer(a, 10000000, unit)] |
---|
| 87 | + | } |
---|
| 88 | + | |
---|
| 89 | + | |
---|
| 90 | + | @Verifier(z) |
---|
| 91 | + | func A () = sigVerify(z.bodyBytes, z.proofs[0], z.senderPublicKey) |
---|
90 | 92 | | |
---|