tx · 6iYvH1BPFGVf3X4CqqVHZ2rhUschBwPvF1RM53es62x5

3MyUmfTWZRV7EbegHTi7fj5GBiPYH5bej5p:  -0.05500000 Waves

2019.07.07 21:42 [575554] smart account 3MyUmfTWZRV7EbegHTi7fj5GBiPYH5bej5p > SELF 0.00000000 Waves

{ "type": 13, "id": "6iYvH1BPFGVf3X4CqqVHZ2rhUschBwPvF1RM53es62x5", "fee": 5500000, "feeAssetId": null, "timestamp": 1562524970498, "version": 1, "sender": "3MyUmfTWZRV7EbegHTi7fj5GBiPYH5bej5p", "senderPublicKey": "8NBR8d8WcxZ9n1kFPn3RMjdbYMD9iBLZUS6mA6ApjAUL", "proofs": [ "FUD6CwAHqp2zFRevKWqCsBb1ekERmbZWqLjUcvesrM7FENqBqDz8Ufi4556Ni7mv2GNp8fppy7nJ6kj9HCoz5QT", "5QPepeUau2PGV3cQ7JwxXRiZXerc7bsfAtTEny1Hca3B3e2HrBBgJMLydAFgGudDJnPBTfvvDWYDzHqiWUyMTk9Q" ], "script": "base64:AAIDAAAAAAAAAAAAAAADAAAAAAthbGljZVB1YktleQEAAAAgbW7Ib3QwfdONZKUkOIC93hDlhyHxyg2jMe+4nlYjF1UAAAAACWJvYlB1YktleQEAAAAgtvnwVxldMhuMSyExbprIMHZdw2inzthq2Vu00TyPo3QAAAAADGNvb3BlclB1YktleQEAAAAgEXAoW9fqofUzpxsOvGUPZ7VJFQlflGBCVbS4s3JeC04AAAAAAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAGYWxpY2UxCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAUAAAALYWxpY2VQdWJLZXkEAAAABmFsaWNlMgkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAEFAAAAC2FsaWNlUHViS2V5BAAAAAZhbGljZTMJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAACBQAAAAthbGljZVB1YktleQQAAAAEYm9iMQkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAACWJvYlB1YktleQQAAAAEYm9iMgkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAEFAAAACWJvYlB1YktleQQAAAAEYm9iMwkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAIFAAAACWJvYlB1YktleQQAAAAHY29vcGVyMQkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAADGNvb3BlclB1YktleQQAAAAHY29vcGVyMgkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAEFAAAADGNvb3BlclB1YktleQQAAAAHY29vcGVyMwkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAIFAAAADGNvb3BlclB1YktleQQAAAALYWxpY2VBbmRCb2IDAwMDAwMFAAAABmFsaWNlMQUAAAAEYm9iMgcGAwUAAAAGYWxpY2UxBQAAAARib2IzBwYDBQAAAAZhbGljZTIFAAAABGJvYjEHBgMFAAAABmFsaWNlMgUAAAAEYm9iMwcGAwUAAAAGYWxpY2UzBQAAAARib2IxBwYDBQAAAAZhbGljZTMFAAAABGJvYjIHBAAAAA5hbGljZUFuZENvb3BlcgMDAwMDAwUAAAAGYWxpY2UxBQAAAAdjb29wZXIyBwYDBQAAAAZhbGljZTEFAAAAB2Nvb3BlcjMHBgMFAAAABmFsaWNlMgUAAAAHY29vcGVyMQcGAwUAAAAGYWxpY2UyBQAAAAdjb29wZXIzBwYDBQAAAAZhbGljZTMFAAAAB2Nvb3BlcjEHBgMFAAAABmFsaWNlMwUAAAAHY29vcGVyMgcEAAAADGJvYkFuZENvb3BlcgMDAwMDAwUAAAAEYm9iMQUAAAAHY29vcGVyMgcGAwUAAAAEYm9iMQUAAAAHY29vcGVyMwcGAwUAAAAEYm9iMgUAAAAHY29vcGVyMQcGAwUAAAAEYm9iMgUAAAAHY29vcGVyMwcGAwUAAAAEYm9iMwUAAAAHY29vcGVyMQcGAwUAAAAEYm9iMwUAAAAHY29vcGVyMgcEAAAAByRtYXRjaDAFAAAAAnR4AwMFAAAAC2FsaWNlQW5kQm9iBgUAAAAOYWxpY2VBbmRDb29wZXIGBQAAAAxib2JBbmRDb29wZXIPg6rw", "chainId": 84, "height": 575554, "spentComplexity": 0 } View: original | compacted Prev: DoA1ctSzPpaUccTdVeB9BpkDNQMjP5ArRdvNZP6rv4UL Next: none Full:
OldNewDifferences
1-{-# STDLIB_VERSION 2 #-}
2-{-# CONTENT_TYPE EXPRESSION #-}
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
34 let alicePubKey = base58'8NBR8d8WcxZ9n1kFPn3RMjdbYMD9iBLZUS6mA6ApjAUL'
5+
46 let bobPubKey = base58'DKGFPozLrsiR8NM4NJzqQaBYC8NyGYjuw2hDYicQVjco'
5-let cooperPubKey = base58'BVqYXrapgJP9atQccdBPAgJPwHDKkh6A8'
6-let aliceSigned = if (sigVerify(tx.bodyBytes, tx.proofs[0], alicePubKey))
7- then 1
8- else 0
9-let bobSigned = if (sigVerify(tx.bodyBytes, tx.proofs[1], bobPubKey))
10- then 1
11- else 0
12-let cooperSigned = if (sigVerify(tx.bodyBytes, tx.proofs[2], cooperPubKey))
13- then 1
14- else 0
15-(((aliceSigned + bobSigned) + cooperSigned) >= 2)
7+
8+let cooperPubKey = base58'2B58Az3mftGkJ9bUro7GXuUpECFXTZ4eCHPtmg9KmTT3'
9+
10+
11+@Verifier(tx)
12+func verify () = {
13+ let alice1 = sigVerify(tx.bodyBytes, tx.proofs[0], alicePubKey)
14+ let alice2 = sigVerify(tx.bodyBytes, tx.proofs[1], alicePubKey)
15+ let alice3 = sigVerify(tx.bodyBytes, tx.proofs[2], alicePubKey)
16+ let bob1 = sigVerify(tx.bodyBytes, tx.proofs[0], bobPubKey)
17+ let bob2 = sigVerify(tx.bodyBytes, tx.proofs[1], bobPubKey)
18+ let bob3 = sigVerify(tx.bodyBytes, tx.proofs[2], bobPubKey)
19+ let cooper1 = sigVerify(tx.bodyBytes, tx.proofs[0], cooperPubKey)
20+ let cooper2 = sigVerify(tx.bodyBytes, tx.proofs[1], cooperPubKey)
21+ let cooper3 = sigVerify(tx.bodyBytes, tx.proofs[2], cooperPubKey)
22+ let aliceAndBob = if (if (if (if (if (if (alice1)
23+ then bob2
24+ else false)
25+ then true
26+ else if (alice1)
27+ then bob3
28+ else false)
29+ then true
30+ else if (alice2)
31+ then bob1
32+ else false)
33+ then true
34+ else if (alice2)
35+ then bob3
36+ else false)
37+ then true
38+ else if (alice3)
39+ then bob1
40+ else false)
41+ then true
42+ else if (alice3)
43+ then bob2
44+ else false
45+ let aliceAndCooper = if (if (if (if (if (if (alice1)
46+ then cooper2
47+ else false)
48+ then true
49+ else if (alice1)
50+ then cooper3
51+ else false)
52+ then true
53+ else if (alice2)
54+ then cooper1
55+ else false)
56+ then true
57+ else if (alice2)
58+ then cooper3
59+ else false)
60+ then true
61+ else if (alice3)
62+ then cooper1
63+ else false)
64+ then true
65+ else if (alice3)
66+ then cooper2
67+ else false
68+ let bobAndCooper = if (if (if (if (if (if (bob1)
69+ then cooper2
70+ else false)
71+ then true
72+ else if (bob1)
73+ then cooper3
74+ else false)
75+ then true
76+ else if (bob2)
77+ then cooper1
78+ else false)
79+ then true
80+ else if (bob2)
81+ then cooper3
82+ else false)
83+ then true
84+ else if (bob3)
85+ then cooper1
86+ else false)
87+ then true
88+ else if (bob3)
89+ then cooper2
90+ else false
91+ match tx {
92+ case _ =>
93+ if (if (aliceAndBob)
94+ then true
95+ else aliceAndCooper)
96+ then true
97+ else bobAndCooper
98+ }
99+ }
100+

github/deemru/w8io/026f985 
21.85 ms