tx · eqbcHuimumrFQy33VSYmh2ENB5VF31jmJac5miPvo4Y

3N19jxhEYkphA6vga9hXTPsU5YfRMR27YoE:  -0.04000000 Waves

2022.05.04 22:24 [2037362] smart account 3N19jxhEYkphA6vga9hXTPsU5YfRMR27YoE > SELF 0.00000000 Waves

{ "type": 13, "id": "eqbcHuimumrFQy33VSYmh2ENB5VF31jmJac5miPvo4Y", "fee": 4000000, "feeAssetId": null, "timestamp": 1651692319503, "version": 2, "chainId": 84, "sender": "3N19jxhEYkphA6vga9hXTPsU5YfRMR27YoE", "senderPublicKey": "B3JNxLE1zmVDjs6MqSA1d3N7V6dS5Rq2wvxZqqVHo1fK", "proofs": [ "wPhXqXVchBdp5Uyp3TRtQFmWePKANzi4QGnthcm4pWEr1Z9MezqbJCBxKTx2uZP2hg3x1WfKT2YTXhF3qtxKuYR" ], "script": "base64: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", "height": 2037362, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: FojiDjck3sVZ4wKiy9Fef5RrU23FVGP6javx8ahypcai Next: 85iKRZVSPmoyb4Z1JMrvgD8HC6xeHk3Bf1gkbiaiimtf Diff:
OldNewDifferences
3636 func q (r) = toString(valueOrErrorMessage(addressFromString(r), (("Can't parse " + r) + " as address")))
3737
3838
39-@Callable(s)
40-func addMainAsset (t) = if ((s.caller == this))
41- then [StringEntry(a, t)]
39+func s (t) = toBase58String(valueOrErrorMessage(value(assetInfo(fromBase58String(t))).id, (("Asset Id: " + t) + " is invalid.")))
40+
41+
42+@Callable(u)
43+func addMainAsset (v) = if ((u.caller == this))
44+ then [StringEntry(a, v)]
4245 else throw("Only the Admin itself can invoke this function")
4346
4447
4548
46-@Callable(s)
47-func addPool (u,v,w,x,y,z) = {
48- let r = q(u)
49- let A = q(x)
50- let B = getString(this, r)
51- if ((s.caller == this))
52- then if (isDefined(B))
49+@Callable(u)
50+func addPool (w,x,y,z,A,B) = {
51+ let r = q(w)
52+ let C = q(z)
53+ let D = s(y)
54+ let E = s(A)
55+ let F = s(B)
56+ let G = getString(this, r)
57+ if ((u.caller == this))
58+ then if (isDefined(G))
5359 then throw("The pool has been previously added.")
54- else if ((u == A))
60+ else if ((w == C))
5561 then throw("Pool address cannot be the same as staker")
56- else [StringEntry(r, v), StringEntry(("POOL_" + v), A), StringEntry((b + v), w), StringEntry((h + r), y), StringEntry((i + r), z), StringEntry((k + r), "pools")]
62+ else [StringEntry(r, x), StringEntry(("POOL_" + x), C), StringEntry((b + x), D), StringEntry((h + r), E), StringEntry((i + r), F), StringEntry((k + r), "pools")]
5763 else throw("Only the Admin itself can invoke this function")
5864 }
5965
6066
6167
62-@Callable(s)
63-func activate (C) = if ((s.caller == this))
64- then [BooleanEntry("activate", C)]
68+@Callable(u)
69+func activate (H) = if ((u.caller == this))
70+ then [BooleanEntry("activate", H)]
6571 else throw("Only the Admin itself can invoke this function")
6672
6773
6874
69-@Callable(s)
70-func addSwap (u,x,v,y,z) = {
71- let r = q(u)
72- let A = q(x)
73- let B = getString(this, r)
74- if ((s.caller == this))
75- then if (isDefined(B))
75+@Callable(u)
76+func addSwap (w,z,x,E,F) = {
77+ let r = q(w)
78+ let C = q(z)
79+ let G = getString(this, r)
80+ if ((u.caller == this))
81+ then if (isDefined(G))
7682 then throw("The address for this swap has been previously added.")
77- else if ((u == A))
83+ else if ((w == C))
7884 then throw("Swap address cannot be the same as staker")
79- else [StringEntry(("swap_" + v), A), StringEntry(r, v), StringEntry((c + r), y), StringEntry((g + r), z), StringEntry((k + r), "swap")]
85+ else [StringEntry(("swap_" + x), C), StringEntry(r, x), StringEntry((c + r), E), StringEntry((g + r), F), StringEntry((k + r), "swap")]
8086 else throw("Only the Admin itself can invoke this function")
8187 }
8288
8389
8490
85-@Callable(s)
91+@Callable(u)
8692 func removeSwapOrPool (r) = {
87- let D = getStringValue(this, (k + r))
88- let B = getStringValue(this, r)
89- if ((s.caller == this))
90- then if ((D == "swap"))
93+ let I = getStringValue(this, (k + r))
94+ let G = getStringValue(this, r)
95+ if ((u.caller == this))
96+ then if ((I == "swap"))
9197 then {
92- let E = [DeleteEntry(("swap_" + B)), DeleteEntry(r), DeleteEntry((k + r)), DeleteEntry((c + r)), DeleteEntry((g + r))]
93- E
98+ let J = [DeleteEntry(("swap_" + G)), DeleteEntry(r), DeleteEntry((k + r)), DeleteEntry((c + r)), DeleteEntry((g + r))]
99+ J
94100 }
95101 else {
96- let F = [DeleteEntry(r), DeleteEntry(("POOL_" + B)), DeleteEntry(("lp_asset_" + B)), DeleteEntry((h + r)), DeleteEntry((i + r)), DeleteEntry((k + r))]
97- F
102+ let K = [DeleteEntry(r), DeleteEntry(("POOL_" + G)), DeleteEntry(("lp_asset_" + G)), DeleteEntry((h + r)), DeleteEntry((i + r)), DeleteEntry((k + r))]
103+ K
98104 }
99105 else throw("Only the Admin itself can invoke this function")
100106 }
101107
102108
103-@Verifier(G)
104-func H () = {
105- let I = G
106- sigVerify(G.bodyBytes, G.proofs[0], G.senderPublicKey)
109+@Verifier(L)
110+func M () = {
111+ let N = L
112+ sigVerify(L.bodyBytes, L.proofs[0], L.senderPublicKey)
107113 }
108114
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "main_asset"
55
66 let b = "lp_asset_"
77
88 let c = "swap_asset1_"
99
1010 let d = "address_staker_"
1111
1212 let e = "address_pool_"
1313
1414 let f = "address_swap_"
1515
1616 let g = "swap_asset2_"
1717
1818 let h = "pool_1_"
1919
2020 let i = "pool_2_"
2121
2222 let j = "staker_address"
2323
2424 let k = "type_"
2525
2626 let l = Address(this.bytes)
2727
2828 let m = "STAKING_AMOUNT_"
2929
3030 let n = "LEASE_AMOUNT_"
3131
3232 let o = "ID_"
3333
3434 let p = 5
3535
3636 func q (r) = toString(valueOrErrorMessage(addressFromString(r), (("Can't parse " + r) + " as address")))
3737
3838
39-@Callable(s)
40-func addMainAsset (t) = if ((s.caller == this))
41- then [StringEntry(a, t)]
39+func s (t) = toBase58String(valueOrErrorMessage(value(assetInfo(fromBase58String(t))).id, (("Asset Id: " + t) + " is invalid.")))
40+
41+
42+@Callable(u)
43+func addMainAsset (v) = if ((u.caller == this))
44+ then [StringEntry(a, v)]
4245 else throw("Only the Admin itself can invoke this function")
4346
4447
4548
46-@Callable(s)
47-func addPool (u,v,w,x,y,z) = {
48- let r = q(u)
49- let A = q(x)
50- let B = getString(this, r)
51- if ((s.caller == this))
52- then if (isDefined(B))
49+@Callable(u)
50+func addPool (w,x,y,z,A,B) = {
51+ let r = q(w)
52+ let C = q(z)
53+ let D = s(y)
54+ let E = s(A)
55+ let F = s(B)
56+ let G = getString(this, r)
57+ if ((u.caller == this))
58+ then if (isDefined(G))
5359 then throw("The pool has been previously added.")
54- else if ((u == A))
60+ else if ((w == C))
5561 then throw("Pool address cannot be the same as staker")
56- else [StringEntry(r, v), StringEntry(("POOL_" + v), A), StringEntry((b + v), w), StringEntry((h + r), y), StringEntry((i + r), z), StringEntry((k + r), "pools")]
62+ else [StringEntry(r, x), StringEntry(("POOL_" + x), C), StringEntry((b + x), D), StringEntry((h + r), E), StringEntry((i + r), F), StringEntry((k + r), "pools")]
5763 else throw("Only the Admin itself can invoke this function")
5864 }
5965
6066
6167
62-@Callable(s)
63-func activate (C) = if ((s.caller == this))
64- then [BooleanEntry("activate", C)]
68+@Callable(u)
69+func activate (H) = if ((u.caller == this))
70+ then [BooleanEntry("activate", H)]
6571 else throw("Only the Admin itself can invoke this function")
6672
6773
6874
69-@Callable(s)
70-func addSwap (u,x,v,y,z) = {
71- let r = q(u)
72- let A = q(x)
73- let B = getString(this, r)
74- if ((s.caller == this))
75- then if (isDefined(B))
75+@Callable(u)
76+func addSwap (w,z,x,E,F) = {
77+ let r = q(w)
78+ let C = q(z)
79+ let G = getString(this, r)
80+ if ((u.caller == this))
81+ then if (isDefined(G))
7682 then throw("The address for this swap has been previously added.")
77- else if ((u == A))
83+ else if ((w == C))
7884 then throw("Swap address cannot be the same as staker")
79- else [StringEntry(("swap_" + v), A), StringEntry(r, v), StringEntry((c + r), y), StringEntry((g + r), z), StringEntry((k + r), "swap")]
85+ else [StringEntry(("swap_" + x), C), StringEntry(r, x), StringEntry((c + r), E), StringEntry((g + r), F), StringEntry((k + r), "swap")]
8086 else throw("Only the Admin itself can invoke this function")
8187 }
8288
8389
8490
85-@Callable(s)
91+@Callable(u)
8692 func removeSwapOrPool (r) = {
87- let D = getStringValue(this, (k + r))
88- let B = getStringValue(this, r)
89- if ((s.caller == this))
90- then if ((D == "swap"))
93+ let I = getStringValue(this, (k + r))
94+ let G = getStringValue(this, r)
95+ if ((u.caller == this))
96+ then if ((I == "swap"))
9197 then {
92- let E = [DeleteEntry(("swap_" + B)), DeleteEntry(r), DeleteEntry((k + r)), DeleteEntry((c + r)), DeleteEntry((g + r))]
93- E
98+ let J = [DeleteEntry(("swap_" + G)), DeleteEntry(r), DeleteEntry((k + r)), DeleteEntry((c + r)), DeleteEntry((g + r))]
99+ J
94100 }
95101 else {
96- let F = [DeleteEntry(r), DeleteEntry(("POOL_" + B)), DeleteEntry(("lp_asset_" + B)), DeleteEntry((h + r)), DeleteEntry((i + r)), DeleteEntry((k + r))]
97- F
102+ let K = [DeleteEntry(r), DeleteEntry(("POOL_" + G)), DeleteEntry(("lp_asset_" + G)), DeleteEntry((h + r)), DeleteEntry((i + r)), DeleteEntry((k + r))]
103+ K
98104 }
99105 else throw("Only the Admin itself can invoke this function")
100106 }
101107
102108
103-@Verifier(G)
104-func H () = {
105- let I = G
106- sigVerify(G.bodyBytes, G.proofs[0], G.senderPublicKey)
109+@Verifier(L)
110+func M () = {
111+ let N = L
112+ sigVerify(L.bodyBytes, L.proofs[0], L.senderPublicKey)
107113 }
108114

github/deemru/w8io/169f3d6 
53.27 ms