tx · HmU4v35aw1xQKrN28EczbjnRQKfajb5SrZaVbc3LGFK6 3MvTsZLYhU4bGijfdULLDAUEiZVryxJVQPJ: -0.01400000 Waves 2023.01.15 16:08 [2406103] smart account 3MvTsZLYhU4bGijfdULLDAUEiZVryxJVQPJ > SELF 0.00000000 Waves
{ "type": 13, "id": "HmU4v35aw1xQKrN28EczbjnRQKfajb5SrZaVbc3LGFK6", "fee": 1400000, "feeAssetId": null, "timestamp": 1673788235903, "version": 2, "chainId": 84, "sender": "3MvTsZLYhU4bGijfdULLDAUEiZVryxJVQPJ", "senderPublicKey": "6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez", "proofs": [ "4rhyca3edskhpWsStZ683ZSHpBTiR8VvG88qVpJJpsKXtikMjs4rMvpcyjfEBECdK6SPKcDXVYF38uzoiQtPAFve" ], "script": "base64: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", "height": 2406103, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 6xpz7d37bqQjsrEKX1o1qRFQosubEveKhHDgGfnHE5Gc Next: GUA8BJSJetQQ6rKewFNnnRpDLZk9HbwXqfKbssR3tnVk Diff:
Old | New | Differences | |
---|---|---|---|
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(a) | |
7 | - | func call (b) = { | |
8 | - | let c = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(b))) | |
9 | - | let d = split(c, "_") | |
10 | - | let e = d[0] | |
11 | - | let f = d[1] | |
12 | - | let g = d[2] | |
13 | - | let h = d[3] | |
14 | - | [StringEntry("price", d[0]), StringEntry("time", d[1]), StringEntry("blockheight", d[2]), StringEntry("div", d[3])] | |
7 | + | func placeoption (b) = { | |
8 | + | let c = toBase58String(a.caller.bytes) | |
9 | + | let d = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), "oracle_status") | |
10 | + | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), "1m_contract_id") | |
11 | + | let f = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), "1m_contract_id") | |
12 | + | let g = split(f, "_") | |
13 | + | let h = g[0] | |
14 | + | if ((d == "Close")) | |
15 | + | then throw("Oracle is closed.Wait Until Oracle is Turned On.") | |
16 | + | else if ((b == "Call")) | |
17 | + | then [StringEntry(c, "Call"), StringEntry((c + "_price"), h)] | |
18 | + | else if ((b == "Put")) | |
19 | + | then [StringEntry(c, "Put"), StringEntry((c + "_price"), h)] | |
20 | + | else throw("You can Place only Either Call or Put") | |
15 | 21 | } | |
16 | 22 | ||
17 | 23 | ||
18 | - | @Verifier(i) | |
19 | - | func j () = sigVerify(i.bodyBytes, i.proofs[0], i.senderPublicKey) | |
24 | + | ||
25 | + | @Callable(a) | |
26 | + | func calldata (i) = { | |
27 | + | let f = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(i))) | |
28 | + | let g = split(f, "_") | |
29 | + | let h = g[0] | |
30 | + | let j = g[1] | |
31 | + | let k = g[2] | |
32 | + | let l = g[3] | |
33 | + | [StringEntry("price", g[0]), StringEntry("time", g[1]), StringEntry("blockheight", g[2]), StringEntry("div", g[3])] | |
34 | + | } | |
35 | + | ||
36 | + | ||
37 | + | @Verifier(m) | |
38 | + | func n () = sigVerify(m.bodyBytes, m.proofs[0], m.senderPublicKey) | |
20 | 39 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(a) | |
7 | - | func call (b) = { | |
8 | - | let c = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(b))) | |
9 | - | let d = split(c, "_") | |
10 | - | let e = d[0] | |
11 | - | let f = d[1] | |
12 | - | let g = d[2] | |
13 | - | let h = d[3] | |
14 | - | [StringEntry("price", d[0]), StringEntry("time", d[1]), StringEntry("blockheight", d[2]), StringEntry("div", d[3])] | |
7 | + | func placeoption (b) = { | |
8 | + | let c = toBase58String(a.caller.bytes) | |
9 | + | let d = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), "oracle_status") | |
10 | + | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), "1m_contract_id") | |
11 | + | let f = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), "1m_contract_id") | |
12 | + | let g = split(f, "_") | |
13 | + | let h = g[0] | |
14 | + | if ((d == "Close")) | |
15 | + | then throw("Oracle is closed.Wait Until Oracle is Turned On.") | |
16 | + | else if ((b == "Call")) | |
17 | + | then [StringEntry(c, "Call"), StringEntry((c + "_price"), h)] | |
18 | + | else if ((b == "Put")) | |
19 | + | then [StringEntry(c, "Put"), StringEntry((c + "_price"), h)] | |
20 | + | else throw("You can Place only Either Call or Put") | |
15 | 21 | } | |
16 | 22 | ||
17 | 23 | ||
18 | - | @Verifier(i) | |
19 | - | func j () = sigVerify(i.bodyBytes, i.proofs[0], i.senderPublicKey) | |
24 | + | ||
25 | + | @Callable(a) | |
26 | + | func calldata (i) = { | |
27 | + | let f = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(i))) | |
28 | + | let g = split(f, "_") | |
29 | + | let h = g[0] | |
30 | + | let j = g[1] | |
31 | + | let k = g[2] | |
32 | + | let l = g[3] | |
33 | + | [StringEntry("price", g[0]), StringEntry("time", g[1]), StringEntry("blockheight", g[2]), StringEntry("div", g[3])] | |
34 | + | } | |
35 | + | ||
36 | + | ||
37 | + | @Verifier(m) | |
38 | + | func n () = sigVerify(m.bodyBytes, m.proofs[0], m.senderPublicKey) | |
20 | 39 |
github/deemru/w8io/169f3d6 29.86 ms ◑![]()