tx · BrKrVmpTfSSzPPTYTtLnSGUyqJ7th8nSn4VMT5ctKDRm
3MsxAJrS5TnsHQMaFdAzfKsq3bcEZVDs1sc: -1.00000000 Waves
2019.03.14 18:57 [535999] smart asset 3MsxAJrS5TnsHQMaFdAzfKsq3bcEZVDs1sc > SELF 0.00000000 oooo
{
"type": 15,
"id": "BrKrVmpTfSSzPPTYTtLnSGUyqJ7th8nSn4VMT5ctKDRm",
"fee": 100000000,
"feeAssetId": null,
"timestamp": 1552579067268,
"version": 1,
"sender": "3MsxAJrS5TnsHQMaFdAzfKsq3bcEZVDs1sc",
"senderPublicKey": "WHFZL2seDzc4cgHEy5jT7LStt5xpqztVfB58Vxhhi8T",
"proofs": [
"2LZvs8P9kZ2kJeokkj8zT5PrbeAtBcRn1XVxYvg1MzQTRockmH5K9dDKq7hCxHrrm4UgqsU7G9GgaSz9AX1qYjda"
],
"assetId": "6QXK7NxXhJtzvABLDKmzYH3V9NfedLAEjSb4Cnvk43wv",
"script": "base64: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",
"chainId": 84,
"height": 535999,
"spentComplexity": 0
}
View: original | compacted
Prev: Hwq7uyB9wnCjsun1RJizDxuC82L8mnmYcDYAhqHXGQbj
Next: none
Diff:
Old | New | | Differences |
---|
8 | 8 | | let val = 9000000 |
---|
9 | 9 | | let ASigned = "WHFZL2seDzc4cgHEy5jT7LStt5xpqztVfB58Vxhhi8T" |
---|
10 | 10 | | match tx { |
---|
| 11 | + | case e: ExchangeTransaction => |
---|
| 12 | + | if ((toBase58String(e.senderPublicKey) == ASigned)) |
---|
| 13 | + | then true |
---|
| 14 | + | else { |
---|
| 15 | + | let days = ((height - startHeight) / interval) |
---|
| 16 | + | if (if (if ((e.price >= (startPrice * (1 + (days * days))))) |
---|
| 17 | + | then !(isDefined(e.sellOrder.assetPair.priceAsset)) |
---|
| 18 | + | else throw("999")) |
---|
| 19 | + | then (exp >= (e.sellOrder.expiration - e.sellOrder.timestamp)) |
---|
| 20 | + | else throw("111")) |
---|
| 21 | + | then (exp >= (e.buyOrder.expiration - e.buyOrder.timestamp)) |
---|
| 22 | + | else throw("100") |
---|
| 23 | + | } |
---|
11 | 24 | | case t: ExchangeTransaction => |
---|
12 | 25 | | if ((toBase58String(t.sellOrder.senderPublicKey) == ASigned)) |
---|
13 | 26 | | then true |
---|
|
20 | 33 | | then true |
---|
21 | 34 | | else throw("price => 0.09") |
---|
22 | 35 | | else throw("make buy => 369") |
---|
23 | | - | } |
---|
24 | | - | case e: ExchangeTransaction => |
---|
25 | | - | if ((toBase58String(e.senderPublicKey) == ASigned)) |
---|
26 | | - | then true |
---|
27 | | - | else { |
---|
28 | | - | let days = ((height - startHeight) / interval) |
---|
29 | | - | if (if (if ((e.price >= (startPrice * (1 + (days * days))))) |
---|
30 | | - | then !(isDefined(e.sellOrder.assetPair.priceAsset)) |
---|
31 | | - | else throw("999")) |
---|
32 | | - | then (exp >= (e.sellOrder.expiration - e.sellOrder.timestamp)) |
---|
33 | | - | else throw("111")) |
---|
34 | | - | then (exp >= (e.buyOrder.expiration - e.buyOrder.timestamp)) |
---|
35 | | - | else throw("100") |
---|
36 | 36 | | } |
---|
37 | 37 | | case t: TransferTransaction => |
---|
38 | 38 | | if ((toBase58String(t.senderPublicKey) == ASigned)) |
---|
Full:
Old | New | | Differences |
---|
1 | 1 | | {-# STDLIB_VERSION 1 #-} |
---|
2 | 2 | | {-# CONTENT_TYPE EXPRESSION #-} |
---|
3 | 3 | | let startHeight = 535804 |
---|
4 | 4 | | let startPrice = 9000000 |
---|
5 | 5 | | let interval = (24 * 60) |
---|
6 | 6 | | let exp = ((100 * 60) * 1000) |
---|
7 | 7 | | let pass = 89900000000 |
---|
8 | 8 | | let val = 9000000 |
---|
9 | 9 | | let ASigned = "WHFZL2seDzc4cgHEy5jT7LStt5xpqztVfB58Vxhhi8T" |
---|
10 | 10 | | match tx { |
---|
| 11 | + | case e: ExchangeTransaction => |
---|
| 12 | + | if ((toBase58String(e.senderPublicKey) == ASigned)) |
---|
| 13 | + | then true |
---|
| 14 | + | else { |
---|
| 15 | + | let days = ((height - startHeight) / interval) |
---|
| 16 | + | if (if (if ((e.price >= (startPrice * (1 + (days * days))))) |
---|
| 17 | + | then !(isDefined(e.sellOrder.assetPair.priceAsset)) |
---|
| 18 | + | else throw("999")) |
---|
| 19 | + | then (exp >= (e.sellOrder.expiration - e.sellOrder.timestamp)) |
---|
| 20 | + | else throw("111")) |
---|
| 21 | + | then (exp >= (e.buyOrder.expiration - e.buyOrder.timestamp)) |
---|
| 22 | + | else throw("100") |
---|
| 23 | + | } |
---|
11 | 24 | | case t: ExchangeTransaction => |
---|
12 | 25 | | if ((toBase58String(t.sellOrder.senderPublicKey) == ASigned)) |
---|
13 | 26 | | then true |
---|
14 | 27 | | else { |
---|
15 | 28 | | let buy = sigVerify(t.buyOrder.bodyBytes, t.buyOrder.proofs[0], t.buyOrder.senderPublicKey) |
---|
16 | 29 | | if (buy) |
---|
17 | 30 | | then true |
---|
18 | 31 | | else if ((t.amount >= pass)) |
---|
19 | 32 | | then if ((t.price > val)) |
---|
20 | 33 | | then true |
---|
21 | 34 | | else throw("price => 0.09") |
---|
22 | 35 | | else throw("make buy => 369") |
---|
23 | | - | } |
---|
24 | | - | case e: ExchangeTransaction => |
---|
25 | | - | if ((toBase58String(e.senderPublicKey) == ASigned)) |
---|
26 | | - | then true |
---|
27 | | - | else { |
---|
28 | | - | let days = ((height - startHeight) / interval) |
---|
29 | | - | if (if (if ((e.price >= (startPrice * (1 + (days * days))))) |
---|
30 | | - | then !(isDefined(e.sellOrder.assetPair.priceAsset)) |
---|
31 | | - | else throw("999")) |
---|
32 | | - | then (exp >= (e.sellOrder.expiration - e.sellOrder.timestamp)) |
---|
33 | | - | else throw("111")) |
---|
34 | | - | then (exp >= (e.buyOrder.expiration - e.buyOrder.timestamp)) |
---|
35 | | - | else throw("100") |
---|
36 | 36 | | } |
---|
37 | 37 | | case t: TransferTransaction => |
---|
38 | 38 | | if ((toBase58String(t.senderPublicKey) == ASigned)) |
---|
39 | 39 | | then true |
---|
40 | 40 | | else false |
---|
41 | 41 | | case t: ReissueTransaction => |
---|
42 | 42 | | if ((toBase58String(t.senderPublicKey) == ASigned)) |
---|
43 | 43 | | then true |
---|
44 | 44 | | else false |
---|
45 | 45 | | case t: BurnTransaction => |
---|
46 | 46 | | if ((toBase58String(t.senderPublicKey) == ASigned)) |
---|
47 | 47 | | then true |
---|
48 | 48 | | else false |
---|
49 | 49 | | case t: MassTransferTransaction => |
---|
50 | 50 | | if ((toBase58String(t.senderPublicKey) == ASigned)) |
---|
51 | 51 | | then true |
---|
52 | 52 | | else false |
---|
53 | 53 | | case t: SetAssetScriptTransaction => |
---|
54 | 54 | | if ((toBase58String(t.senderPublicKey) == ASigned)) |
---|
55 | 55 | | then true |
---|
56 | 56 | | else false |
---|
57 | 57 | | case _ => |
---|
58 | 58 | | throw("Transaction is not allowed by token-script") |
---|
59 | 59 | | } |
---|