2019.04.07 15:54 [1472070] smart asset 3PM28733jpYBiXj9wtF1TbiKSm93Zp5gS3F > SELF 0.00000000 ARide spam
{ "type": 15, "id": "5FHSxdaddYwqveECVh7p8mEKxrkzvxSh1e4aMuMNqDXx", "fee": 100000000, "feeAssetId": null, "timestamp": 1554641665764, "version": 1, "sender": "3PM28733jpYBiXj9wtF1TbiKSm93Zp5gS3F", "senderPublicKey": "C8eArnmqH5yKmHTM1mUcrDH4ooMTdVgDR2mWQUVhonaj", "proofs": [ "2n7pqjwocKQQ7yLkFMdENBST3gbm6gCRc7tokyUjYCSZFaV2DduMJe442wrDa1dYuYCqtd5DULubSBxhpBpXmyvE" ], "assetId": "BCf4TMj8DJnHpsxjKDs2RDRaZcTaMLdyHRAfJKzAV2Et", "script": "base64:AgQAAAABYQAAAAAAdzWUAAQAAAABYgAAAAAAAmJaAAQAAAABYwAAAAAAAmJaAAQAAAAGc3lzdGVtAgAAACxCZGdqNGRScmJZVUtZMzRad2oxQXBpMWJScjQxODlTRWhZQ2o5NTk1NzdWRgQAAAADYWR2AgAAACxDOGVBcm5tcUg1eUttSFRNMW1VY3JESDRvb01UZFZnRFIybVdRVVZob25hagQAAAAHJG1hdGNoMAUAAAACdHgDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAE0V4Y2hhbmdlVHJhbnNhY3Rpb24EAAAAAWUFAAAAByRtYXRjaDADAwkAAAAAAAACCQACWAAAAAEIBQAAAAFlAAAAD3NlbmRlclB1YmxpY0tleQUAAAAGc3lzdGVtBgkAAAAAAAACCQACWAAAAAEIBQAAAAFlAAAAD3NlbmRlclB1YmxpY0tleQUAAAADYWR2BgQAAAADYnV5CQAB9AAAAAMICAUAAAABZQAAAAhidXlPcmRlcgAAAAlib2R5Qnl0ZXMJAAGRAAAAAggIBQAAAAFlAAAACGJ1eU9yZGVyAAAABnByb29mcwAAAAAAAAAAAAgIBQAAAAFlAAAACGJ1eU9yZGVyAAAAD3NlbmRlclB1YmxpY0tleQQAAAAEc2VsbAkAAfQAAAADCAgFAAAAAWUAAAAJc2VsbE9yZGVyAAAACWJvZHlCeXRlcwkAAZEAAAACCAgFAAAAAWUAAAAJc2VsbE9yZGVyAAAABnByb29mcwAAAAAAAAAAAAgIBQAAAAFlAAAACXNlbGxPcmRlcgAAAA9zZW5kZXJQdWJsaWNLZXkDBQAAAARzZWxsAwkAAGYAAAACBQAAAAFhCAgFAAAAAWUAAAAJc2VsbE9yZGVyAAAABmFtb3VudAkAAAIAAAABAgAAABxNaW5pbWFsIHNlbGwgYW1vdW50IDIwIEFSaWRlAwkAAGYAAAACBQAAAAFiCAgFAAAAAWUAAAAJc2VsbE9yZGVyAAAABXByaWNlCQAAAgAAAAECAAAAF01pbmltYWwgcHJpY2UgMC40IHdhdmVzAwkBAAAAASEAAAABCQEAAAAJaXNEZWZpbmVkAAAAAQgICAUAAAABZQAAAAlzZWxsT3JkZXIAAAAJYXNzZXRQYWlyAAAACnByaWNlQXNzZXQGBwMFAAAAA2J1eQMJAABmAAAAAgUAAAABYwgIBQAAAAFlAAAACGJ1eU9yZGVyAAAABXByaWNlCQAAAgAAAAECAAAAGE1pbmltYWwgcHJpY2UgMC4wMSB3YXZlcwMJAQAAAAEhAAAAAQkBAAAACWlzRGVmaW5lZAAAAAEICAgFAAAAAWUAAAAIYnV5T3JkZXIAAAAJYXNzZXRQYWlyAAAACnByaWNlQXNzZXQGBwcHeG0Tjg==", "chainId": 87, "height": 1472070, "spentComplexity": 0 } View: original | compacted Prev: 3Pnxfi1y9oxVJuzTR2tD5DrzTywBeBLZMpxKtDAtZCo1 Next: none Diff:
Old | New | Differences | |
---|---|---|---|
3 | 3 | let a = 2000000000 | |
4 | 4 | let b = 40000000 | |
5 | 5 | let c = 40000000 | |
6 | + | let system = "Bdgj4dRrbYUKY34Zwj1Api1bRr4189SEhYCj959577VF" | |
7 | + | let adv = "C8eArnmqH5yKmHTM1mUcrDH4ooMTdVgDR2mWQUVhonaj" | |
6 | 8 | match tx { | |
7 | 9 | case e: ExchangeTransaction => | |
8 | - | let buy = sigVerify(e.buyOrder.bodyBytes, e.buyOrder.proofs[0], e.buyOrder.senderPublicKey) | |
9 | - | let sell = sigVerify(e.sellOrder.bodyBytes, e.sellOrder.proofs[0], e.sellOrder.senderPublicKey) | |
10 | - | if (sell) | |
11 | - | then if ((a > e.sellOrder.amount)) | |
12 | - | then throw("Minimal sell amount 20 ARide") | |
13 | - | else if ((b > e.sellOrder.price)) | |
14 | - | then throw("Minimal price 0.4 waves") | |
15 | - | else if (!(isDefined(e.sellOrder.assetPair.priceAsset))) | |
16 | - | then true | |
10 | + | if (if ((toBase58String(e.senderPublicKey) == system)) | |
11 | + | then true | |
12 | + | else (toBase58String(e.senderPublicKey) == adv)) | |
13 | + | then true | |
14 | + | else { | |
15 | + | let buy = sigVerify(e.buyOrder.bodyBytes, e.buyOrder.proofs[0], e.buyOrder.senderPublicKey) | |
16 | + | let sell = sigVerify(e.sellOrder.bodyBytes, e.sellOrder.proofs[0], e.sellOrder.senderPublicKey) | |
17 | + | if (sell) | |
18 | + | then if ((a > e.sellOrder.amount)) | |
19 | + | then throw("Minimal sell amount 20 ARide") | |
20 | + | else if ((b > e.sellOrder.price)) | |
21 | + | then throw("Minimal price 0.4 waves") | |
22 | + | else if (!(isDefined(e.sellOrder.assetPair.priceAsset))) | |
23 | + | then true | |
24 | + | else false | |
25 | + | else if (buy) | |
26 | + | then if ((c > e.buyOrder.price)) | |
27 | + | then throw("Minimal price 0.01 waves") | |
28 | + | else if (!(isDefined(e.buyOrder.assetPair.priceAsset))) | |
29 | + | then true | |
30 | + | else false | |
17 | 31 | else false | |
18 | - | else if (buy) | |
19 | - | then if ((c > e.buyOrder.price)) | |
20 | - | then throw("Minimal price 0.4 waves") | |
21 | - | else if (!(isDefined(e.buyOrder.assetPair.priceAsset))) | |
22 | - | then true | |
23 | - | else false | |
24 | - | else false | |
25 | - | case tx: ExchangeTransaction|SetAssetScriptTransaction|MassTransferTransaction|TransferTransaction => | |
26 | - | true | |
32 | + | } | |
27 | 33 | case _ => | |
28 | - | | |
34 | + | false | |
29 | 35 | } |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 2 #-} | |
2 | 2 | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | 3 | let a = 2000000000 | |
4 | 4 | let b = 40000000 | |
5 | 5 | let c = 40000000 | |
6 | + | let system = "Bdgj4dRrbYUKY34Zwj1Api1bRr4189SEhYCj959577VF" | |
7 | + | let adv = "C8eArnmqH5yKmHTM1mUcrDH4ooMTdVgDR2mWQUVhonaj" | |
6 | 8 | match tx { | |
7 | 9 | case e: ExchangeTransaction => | |
8 | - | let buy = sigVerify(e.buyOrder.bodyBytes, e.buyOrder.proofs[0], e.buyOrder.senderPublicKey) | |
9 | - | let sell = sigVerify(e.sellOrder.bodyBytes, e.sellOrder.proofs[0], e.sellOrder.senderPublicKey) | |
10 | - | if (sell) | |
11 | - | then if ((a > e.sellOrder.amount)) | |
12 | - | then throw("Minimal sell amount 20 ARide") | |
13 | - | else if ((b > e.sellOrder.price)) | |
14 | - | then throw("Minimal price 0.4 waves") | |
15 | - | else if (!(isDefined(e.sellOrder.assetPair.priceAsset))) | |
16 | - | then true | |
10 | + | if (if ((toBase58String(e.senderPublicKey) == system)) | |
11 | + | then true | |
12 | + | else (toBase58String(e.senderPublicKey) == adv)) | |
13 | + | then true | |
14 | + | else { | |
15 | + | let buy = sigVerify(e.buyOrder.bodyBytes, e.buyOrder.proofs[0], e.buyOrder.senderPublicKey) | |
16 | + | let sell = sigVerify(e.sellOrder.bodyBytes, e.sellOrder.proofs[0], e.sellOrder.senderPublicKey) | |
17 | + | if (sell) | |
18 | + | then if ((a > e.sellOrder.amount)) | |
19 | + | then throw("Minimal sell amount 20 ARide") | |
20 | + | else if ((b > e.sellOrder.price)) | |
21 | + | then throw("Minimal price 0.4 waves") | |
22 | + | else if (!(isDefined(e.sellOrder.assetPair.priceAsset))) | |
23 | + | then true | |
24 | + | else false | |
25 | + | else if (buy) | |
26 | + | then if ((c > e.buyOrder.price)) | |
27 | + | then throw("Minimal price 0.01 waves") | |
28 | + | else if (!(isDefined(e.buyOrder.assetPair.priceAsset))) | |
29 | + | then true | |
30 | + | else false | |
17 | 31 | else false | |
18 | - | else if (buy) | |
19 | - | then if ((c > e.buyOrder.price)) | |
20 | - | then throw("Minimal price 0.4 waves") | |
21 | - | else if (!(isDefined(e.buyOrder.assetPair.priceAsset))) | |
22 | - | then true | |
23 | - | else false | |
24 | - | else false | |
25 | - | case tx: ExchangeTransaction|SetAssetScriptTransaction|MassTransferTransaction|TransferTransaction => | |
26 | - | true | |
32 | + | } | |
27 | 33 | case _ => | |
28 | - | | |
34 | + | false | |
29 | 35 | } |
github/deemru/w8io/786bc32 71.38 ms ◑