tx · 7iBxHL8khf2ypaiaMh4zkyvYnMUtPSpGDxf5KzV15gS3 3MvTsZLYhU4bGijfdULLDAUEiZVryxJVQPJ: -0.01400000 Waves 2023.01.15 18:13 [2406226] smart account 3MvTsZLYhU4bGijfdULLDAUEiZVryxJVQPJ > SELF 0.00000000 Waves
{ "type": 13, "id": "7iBxHL8khf2ypaiaMh4zkyvYnMUtPSpGDxf5KzV15gS3", "fee": 1400000, "feeAssetId": null, "timestamp": 1673795647622, "version": 2, "chainId": 84, "sender": "3MvTsZLYhU4bGijfdULLDAUEiZVryxJVQPJ", "senderPublicKey": "6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez", "proofs": [ "4J2SBR3tb4HPFHt4mmLaZQfNMC1svSCb2hm1apNaMyfBre6GHgEVFyhvABej6VXqC8d42yK71Em8reCokYbmhCqc" ], "script": "base64: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", "height": 2406226, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 29AwsDPaMD4wpFVof2piAYVx8R1Rv9SLweG3VLCdVav9 Next: 4wo6k2X7BjJZ795zdtZ5NPnUdgYYMx8YpzU8ayA72pRe Diff:
Old | New | Differences | |
---|---|---|---|
44 | 44 | ||
45 | 45 | ||
46 | 46 | @Callable(a) | |
47 | - | func calldata (q) = { | |
48 | - | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(q))) | |
47 | + | func ClaimCall (q) = { | |
48 | + | let b = toBase58String(a.caller.bytes) | |
49 | + | let r = getStringValue(this, ((("Call_Start_End_" + b) + "_") + toString(q))) | |
50 | + | let s = split(r, "_") | |
51 | + | let t = s[0] | |
52 | + | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + t)) | |
53 | + | [DeleteEntry(((("Call_Start_End_" + b) + "_") + toString(q))), DeleteEntry(((("Call_" + b) + "_") + toString(q)))] | |
54 | + | } | |
55 | + | ||
56 | + | ||
57 | + | ||
58 | + | @Callable(a) | |
59 | + | func calldata (u) = { | |
60 | + | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(u))) | |
49 | 61 | let f = split(e, "_") | |
50 | 62 | let g = f[0] | |
51 | - | let | |
52 | - | let | |
53 | - | let | |
63 | + | let v = f[1] | |
64 | + | let w = f[2] | |
65 | + | let x = f[3] | |
54 | 66 | [StringEntry("price", f[0]), StringEntry("time", f[1]), StringEntry("blockheight", f[2]), StringEntry("div", f[3])] | |
55 | 67 | } | |
56 | 68 | ||
57 | 69 | ||
58 | - | @Verifier( | |
59 | - | func | |
70 | + | @Verifier(y) | |
71 | + | func z () = sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey) | |
60 | 72 |
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 | 7 | func placeoptionCall () = { | |
8 | 8 | let b = toBase58String(a.caller.bytes) | |
9 | 9 | let c = getStringValue(this, "oracle_status") | |
10 | 10 | let d = getIntegerValue(this, "1m_contract_id") | |
11 | 11 | let e = getStringValue(this, ("1m_btc_" + toString(d))) | |
12 | 12 | let f = split(e, "_") | |
13 | 13 | let g = f[0] | |
14 | 14 | let h = parseIntValue(f[2]) | |
15 | 15 | let i = (height - h) | |
16 | 16 | let j = (d + 15) | |
17 | 17 | let k = { | |
18 | 18 | let l = getInteger(this, "Total_Calls") | |
19 | 19 | if ($isInstanceOf(l, "Int")) | |
20 | 20 | then { | |
21 | 21 | let m = l | |
22 | 22 | m | |
23 | 23 | } | |
24 | 24 | else 0 | |
25 | 25 | } | |
26 | 26 | let n = (k + 1) | |
27 | 27 | let o = { | |
28 | 28 | let l = getInteger(this, (b + "_Total_Calls")) | |
29 | 29 | if ($isInstanceOf(l, "Int")) | |
30 | 30 | then { | |
31 | 31 | let m = l | |
32 | 32 | m | |
33 | 33 | } | |
34 | 34 | else 0 | |
35 | 35 | } | |
36 | 36 | let p = (o + 1) | |
37 | 37 | if ((i > 2)) | |
38 | 38 | then throw("Something Wrong with Oracle or Height is not matched.") | |
39 | 39 | else if ((c == "Close")) | |
40 | 40 | then throw("Oracle is closed. Wait Until Oracle is Turned On.") | |
41 | 41 | else [StringEntry(((("Call_" + b) + "_") + toString(p)), g), StringEntry(((("Call_Start_End_" + b) + "_") + toString(p)), ((toString(d) + "_") + toString(j))), IntegerEntry("Total_Calls", n), IntegerEntry((b + "_Total_Calls"), p)] | |
42 | 42 | } | |
43 | 43 | ||
44 | 44 | ||
45 | 45 | ||
46 | 46 | @Callable(a) | |
47 | - | func calldata (q) = { | |
48 | - | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(q))) | |
47 | + | func ClaimCall (q) = { | |
48 | + | let b = toBase58String(a.caller.bytes) | |
49 | + | let r = getStringValue(this, ((("Call_Start_End_" + b) + "_") + toString(q))) | |
50 | + | let s = split(r, "_") | |
51 | + | let t = s[0] | |
52 | + | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + t)) | |
53 | + | [DeleteEntry(((("Call_Start_End_" + b) + "_") + toString(q))), DeleteEntry(((("Call_" + b) + "_") + toString(q)))] | |
54 | + | } | |
55 | + | ||
56 | + | ||
57 | + | ||
58 | + | @Callable(a) | |
59 | + | func calldata (u) = { | |
60 | + | let e = getStringValue(addressFromPublicKey(base58'6hSe4di8vdVexXUoSJQ1unZB3n287fgHNBP7PberpTez'), ("1m_btc_" + toString(u))) | |
49 | 61 | let f = split(e, "_") | |
50 | 62 | let g = f[0] | |
51 | - | let | |
52 | - | let | |
53 | - | let | |
63 | + | let v = f[1] | |
64 | + | let w = f[2] | |
65 | + | let x = f[3] | |
54 | 66 | [StringEntry("price", f[0]), StringEntry("time", f[1]), StringEntry("blockheight", f[2]), StringEntry("div", f[3])] | |
55 | 67 | } | |
56 | 68 | ||
57 | 69 | ||
58 | - | @Verifier( | |
59 | - | func | |
70 | + | @Verifier(y) | |
71 | + | func z () = sigVerify(y.bodyBytes, y.proofs[0], y.senderPublicKey) | |
60 | 72 |
github/deemru/w8io/169f3d6 25.20 ms ◑