tx · JA5saJFBVNuAGoJHRad8fm7AAGGVwiPTJCDbJs6axHct

3MyewNpvp22jvzpxx2qxM2HFTowsqUEPo5w:  -1.00400000 Waves

2019.02.11 22:50 [490931] smart asset 3MyewNpvp22jvzpxx2qxM2HFTowsqUEPo5w > SELF 0.00000000 mytest1

{ "type": 15, "id": "JA5saJFBVNuAGoJHRad8fm7AAGGVwiPTJCDbJs6axHct", "fee": 100400000, "feeAssetId": null, "timestamp": 1549914707536, "version": 1, "sender": "3MyewNpvp22jvzpxx2qxM2HFTowsqUEPo5w", "senderPublicKey": "5NKM8mtxgaEeB89FzmujLBdJrJXkYBkftRoTffUS53f", "proofs": [ "4N4S3tybhcRW4QhnLpfXAJdre2qJGJK7AkWDUQY5VesrQDGETmabQZrcnhYmdE9GcuL3gHqZQpJzDD8ZHWKNhGdn", "3J3UqYzwPFiQ4SzPFWUiQLCDZihf6MeEkn1XSPDMnY4vXYfudzCKGwn19C2CEvsbx3sKn9NFrCHNF4iFeT82KCfd", "5hBtAMwhz2gvZTMn34icpefBPEAPTAKYXXweZBG2KNHMpLNuUUFfX6xxEdnh2RFWaHcLQ8h21A2exzrEMj9mzJeM", "5XrN15j2y5CbXMXfkck1yah1y46deDYRxMLxS5uNTHprG7rN5SwKkbkbSsBuHYXiwbWop9Vxv5H8uzK1ZPQkivtC" ], "assetId": "FivmKRkvFdVhSHBtxQ1UFj4EmbAd87pk2hKenwnbdwsK", "script": "base64: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", "chainId": 84, "height": 490931, "spentComplexity": 0 } View: original | compacted Prev: CBEBfrKr3CNyvi7JKyAjffgGkVyaX34CyhVVgUxWdCwA Next: CAEtwt5ZoDXBsLrTSYrFnyqyX77wBNU53GcrjersMhsb Diff:
OldNewDifferences
44 let sender = toBase58String(addressFromPublicKey(tx.senderPublicKey).bytes)
55 let isFrozen = extract(getBoolean(issuer, "TokenFrozen"))
66 let isOnBlacklist = isDefined(getBoolean(issuer, sender))
7+let MinWavesPrice = extract(getInteger(issuer, "MinWavesPrice"))
8+let MinBtcPrice = extract(getInteger(issuer, "MinBtcPrice"))
9+let MinEthPrice = extract(getInteger(issuer, "MinEthPrice"))
710 if ((issuer == tx.sender))
811 then match tx {
12+ case e: ExchangeTransaction =>
13+ if (!(isDefined(e.sellOrder.assetPair.priceAsset)))
14+ then if ((e.sellOrder.price >= MinWavesPrice))
15+ then true
16+ else {
17+ let WAVerrStr = ((("Minimal WAVES price = " + toString((MinWavesPrice / 100000000))) + ".") + toString((MinWavesPrice % 100000000)))
18+ throw(WAVerrStr)
19+ }
20+ else if ((e.sellOrder.assetPair.priceAsset == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'))
21+ then if ((e.sellOrder.price >= MinBtcPrice))
22+ then true
23+ else {
24+ let BTCerrStr = ((("Minimal BTC price = " + toString((MinBtcPrice / 100000000))) + ".") + toString((MinBtcPrice % 100000000)))
25+ throw(BTCerrStr)
26+ }
27+ else if ((e.sellOrder.assetPair.priceAsset == base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'))
28+ then if ((e.sellOrder.price >= MinEthPrice))
29+ then true
30+ else {
31+ let ETHerrStr = ((("Minimal ETH price = " + toString((MinEthPrice / 100000000))) + ".") + toString((MinEthPrice % 100000000)))
32+ throw(ETHerrStr)
33+ }
34+ else throw("Only WAVES, BTC and ETH pairs allowed")
935 case _ =>
1036 true
1137 }
2349 false
2450 }
2551 else match tx {
52+ case e: ExchangeTransaction =>
53+ if (!(isDefined(e.sellOrder.assetPair.priceAsset)))
54+ then if ((e.sellOrder.price >= MinWavesPrice))
55+ then true
56+ else {
57+ let WAVerrStr = ((("Minimal WAVES price = " + toString((MinWavesPrice / 100000000))) + ".") + toString((MinWavesPrice % 100000000)))
58+ throw(WAVerrStr)
59+ }
60+ else if ((e.sellOrder.assetPair.priceAsset == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'))
61+ then if ((e.sellOrder.price >= MinBtcPrice))
62+ then true
63+ else {
64+ let BTCerrStr = ((("Minimal BTC price = " + toString((MinBtcPrice / 100000000))) + ".") + toString((MinBtcPrice % 100000000)))
65+ throw(BTCerrStr)
66+ }
67+ else if ((e.sellOrder.assetPair.priceAsset == base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'))
68+ then if ((e.sellOrder.price >= MinEthPrice))
69+ then true
70+ else {
71+ let ETHerrStr = ((("Minimal ETH price = " + toString((MinEthPrice / 100000000))) + ".") + toString((MinEthPrice % 100000000)))
72+ throw(ETHerrStr)
73+ }
74+ else throw("Only WAVES, BTC and ETH pairs allowed")
2675 case b: BurnTransaction =>
2776 false
2877 case s: SetAssetScriptTransaction =>
3483 }
3584 }
3685 else match tx {
86+ case e: ExchangeTransaction =>
87+ if (!(isDefined(e.sellOrder.assetPair.priceAsset)))
88+ then if ((e.sellOrder.price >= MinWavesPrice))
89+ then true
90+ else {
91+ let WAVerrStr = ((("Minimal WAVES price = " + toString((MinWavesPrice / 100000000))) + ".") + toString((MinWavesPrice % 100000000)))
92+ throw(WAVerrStr)
93+ }
94+ else if ((e.sellOrder.assetPair.priceAsset == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'))
95+ then if ((e.sellOrder.price >= MinBtcPrice))
96+ then true
97+ else {
98+ let BTCerrStr = ((("Minimal BTC price = " + toString((MinBtcPrice / 100000000))) + ".") + toString((MinBtcPrice % 100000000)))
99+ throw(BTCerrStr)
100+ }
101+ else if ((e.sellOrder.assetPair.priceAsset == base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'))
102+ then if ((e.sellOrder.price >= MinEthPrice))
103+ then true
104+ else {
105+ let ETHerrStr = ((("Minimal ETH price = " + toString((MinEthPrice / 100000000))) + ".") + toString((MinEthPrice % 100000000)))
106+ throw(ETHerrStr)
107+ }
108+ else throw("Only WAVES, BTC and ETH pairs allowed")
37109 case b: BurnTransaction =>
38110 false
39111 case s: SetAssetScriptTransaction =>
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 1 #-}
22 {-# CONTENT_TYPE EXPRESSION #-}
33 let issuer = Address(base58'3MyewNpvp22jvzpxx2qxM2HFTowsqUEPo5w')
44 let sender = toBase58String(addressFromPublicKey(tx.senderPublicKey).bytes)
55 let isFrozen = extract(getBoolean(issuer, "TokenFrozen"))
66 let isOnBlacklist = isDefined(getBoolean(issuer, sender))
7+let MinWavesPrice = extract(getInteger(issuer, "MinWavesPrice"))
8+let MinBtcPrice = extract(getInteger(issuer, "MinBtcPrice"))
9+let MinEthPrice = extract(getInteger(issuer, "MinEthPrice"))
710 if ((issuer == tx.sender))
811 then match tx {
12+ case e: ExchangeTransaction =>
13+ if (!(isDefined(e.sellOrder.assetPair.priceAsset)))
14+ then if ((e.sellOrder.price >= MinWavesPrice))
15+ then true
16+ else {
17+ let WAVerrStr = ((("Minimal WAVES price = " + toString((MinWavesPrice / 100000000))) + ".") + toString((MinWavesPrice % 100000000)))
18+ throw(WAVerrStr)
19+ }
20+ else if ((e.sellOrder.assetPair.priceAsset == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'))
21+ then if ((e.sellOrder.price >= MinBtcPrice))
22+ then true
23+ else {
24+ let BTCerrStr = ((("Minimal BTC price = " + toString((MinBtcPrice / 100000000))) + ".") + toString((MinBtcPrice % 100000000)))
25+ throw(BTCerrStr)
26+ }
27+ else if ((e.sellOrder.assetPair.priceAsset == base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'))
28+ then if ((e.sellOrder.price >= MinEthPrice))
29+ then true
30+ else {
31+ let ETHerrStr = ((("Minimal ETH price = " + toString((MinEthPrice / 100000000))) + ".") + toString((MinEthPrice % 100000000)))
32+ throw(ETHerrStr)
33+ }
34+ else throw("Only WAVES, BTC and ETH pairs allowed")
935 case _ =>
1036 true
1137 }
1238 else if (isFrozen)
1339 then match tx {
1440 case _ =>
1541 false
1642 }
1743 else if (isOnBlacklist)
1844 then {
1945 let isBlocked = extract(getBoolean(issuer, sender))
2046 if (isBlocked)
2147 then match tx {
2248 case _ =>
2349 false
2450 }
2551 else match tx {
52+ case e: ExchangeTransaction =>
53+ if (!(isDefined(e.sellOrder.assetPair.priceAsset)))
54+ then if ((e.sellOrder.price >= MinWavesPrice))
55+ then true
56+ else {
57+ let WAVerrStr = ((("Minimal WAVES price = " + toString((MinWavesPrice / 100000000))) + ".") + toString((MinWavesPrice % 100000000)))
58+ throw(WAVerrStr)
59+ }
60+ else if ((e.sellOrder.assetPair.priceAsset == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'))
61+ then if ((e.sellOrder.price >= MinBtcPrice))
62+ then true
63+ else {
64+ let BTCerrStr = ((("Minimal BTC price = " + toString((MinBtcPrice / 100000000))) + ".") + toString((MinBtcPrice % 100000000)))
65+ throw(BTCerrStr)
66+ }
67+ else if ((e.sellOrder.assetPair.priceAsset == base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'))
68+ then if ((e.sellOrder.price >= MinEthPrice))
69+ then true
70+ else {
71+ let ETHerrStr = ((("Minimal ETH price = " + toString((MinEthPrice / 100000000))) + ".") + toString((MinEthPrice % 100000000)))
72+ throw(ETHerrStr)
73+ }
74+ else throw("Only WAVES, BTC and ETH pairs allowed")
2675 case b: BurnTransaction =>
2776 false
2877 case s: SetAssetScriptTransaction =>
2978 false
3079 case r: ReissueTransaction =>
3180 false
3281 case _ =>
3382 true
3483 }
3584 }
3685 else match tx {
86+ case e: ExchangeTransaction =>
87+ if (!(isDefined(e.sellOrder.assetPair.priceAsset)))
88+ then if ((e.sellOrder.price >= MinWavesPrice))
89+ then true
90+ else {
91+ let WAVerrStr = ((("Minimal WAVES price = " + toString((MinWavesPrice / 100000000))) + ".") + toString((MinWavesPrice % 100000000)))
92+ throw(WAVerrStr)
93+ }
94+ else if ((e.sellOrder.assetPair.priceAsset == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS'))
95+ then if ((e.sellOrder.price >= MinBtcPrice))
96+ then true
97+ else {
98+ let BTCerrStr = ((("Minimal BTC price = " + toString((MinBtcPrice / 100000000))) + ".") + toString((MinBtcPrice % 100000000)))
99+ throw(BTCerrStr)
100+ }
101+ else if ((e.sellOrder.assetPair.priceAsset == base58'474jTeYx2r2Va35794tCScAXWJG9hU2HcgxzMowaZUnu'))
102+ then if ((e.sellOrder.price >= MinEthPrice))
103+ then true
104+ else {
105+ let ETHerrStr = ((("Minimal ETH price = " + toString((MinEthPrice / 100000000))) + ".") + toString((MinEthPrice % 100000000)))
106+ throw(ETHerrStr)
107+ }
108+ else throw("Only WAVES, BTC and ETH pairs allowed")
37109 case b: BurnTransaction =>
38110 false
39111 case s: SetAssetScriptTransaction =>
40112 false
41113 case r: ReissueTransaction =>
42114 false
43115 case _ =>
44116 true
45117 }

github/deemru/w8io/026f985 
23.76 ms