tx · 62SoLiSbkgG6LrGrzzZ52j2GzFjZkMV9uaR6U3MkStyz

3N9AtucmdwhyXxBKSPSfbJPHDFK6mVDpTny:  -0.01400000 Waves

2019.09.01 10:34 [656581] smart account 3N9AtucmdwhyXxBKSPSfbJPHDFK6mVDpTny > SELF 0.00000000 Waves

{ "type": 13, "id": "62SoLiSbkgG6LrGrzzZ52j2GzFjZkMV9uaR6U3MkStyz", "fee": 1400000, "feeAssetId": null, "timestamp": 1567323205866, "version": 1, "sender": "3N9AtucmdwhyXxBKSPSfbJPHDFK6mVDpTny", "senderPublicKey": "5rRMYG6R2BNvQFL9Ztxr4mLQL3XTvTYEpeLbta3nbmHs", "proofs": [ "3RhhBXA2y68KytXvKRwTGfLSbnBHaWkP4uHeunPULxfMqu3QrooknhNydrGo3a61PcjL8mgLeBqBcGtftfUkXg2L" ], "script": "base64:AAIDAAAAAAAAAAAAAAADAAAAAAtvd25lclB1YktleQEAAAAgSBe+oNQOMjMOf9TSCUtuoOQVE2pEm86+J/I8qij16CIAAAAADmFjY291bnQxUHViS2V5AQAAACA7aqfKcbRoYMmcx4P05igPMWS3zxczRBC/kNXHr1l0GAAAAAAOYWNjb3VudDNQdWJLZXkBAAAAICf9Pqr39NDANARVvfCAA1DGF9/QMyz4tsxyawsFvccuAAAAAAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAABm93bmVyMQkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAAC293bmVyUHViS2V5BAAAAAZvd25lcjIJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAABBQAAAAtvd25lclB1YktleQQAAAAGb3duZXIzCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAgUAAAALb3duZXJQdWJLZXkEAAAACWFjY291bnQxMQkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAADmFjY291bnQxUHViS2V5BAAAAAlhY2NvdW50MTIJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAABBQAAAA5hY2NvdW50MVB1YktleQQAAAAJYWNjb3VudDEzCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAgUAAAAOYWNjb3VudDFQdWJLZXkEAAAACWFjY291bnQzMQkAAfQAAAADCAUAAAACdHgAAAAJYm9keUJ5dGVzCQABkQAAAAIIBQAAAAJ0eAAAAAZwcm9vZnMAAAAAAAAAAAAFAAAADmFjY291bnQzUHViS2V5BAAAAAlhY2NvdW50MzIJAAH0AAAAAwgFAAAAAnR4AAAACWJvZHlCeXRlcwkAAZEAAAACCAUAAAACdHgAAAAGcHJvb2ZzAAAAAAAAAAABBQAAAA5hY2NvdW50M1B1YktleQQAAAAJYWNjb3VudDMzCQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAgUAAAAOYWNjb3VudDNQdWJLZXkEAAAAC293bmVyQW5kT25lAwMDAwMDBQAAAAZvd25lcjEFAAAACWFjY291bnQxMgcGAwUAAAAGb3duZXIxBQAAAAlhY2NvdW50MTMHBgMFAAAABm93bmVyMgUAAAAJYWNjb3VudDExBwYDBQAAAAZvd25lcjIFAAAACWFjY291bnQxMwcGAwUAAAAGb3duZXIzBQAAAAlhY2NvdW50MTEHBgMFAAAABm93bmVyMwUAAAAJYWNjb3VudDEyBwQAAAANb3duZXJBbmRUaHJlZQMDAwMDAwUAAAAGb3duZXIxBQAAAAlhY2NvdW50MzIHBgMFAAAABm93bmVyMQUAAAAJYWNjb3VudDMzBwYDBQAAAAZvd25lcjIFAAAACWFjY291bnQzMQcGAwUAAAAGb3duZXIyBQAAAAlhY2NvdW50MzMHBgMFAAAABm93bmVyMwUAAAAJYWNjb3VudDMxBwYDBQAAAAZvd25lcjMFAAAACWFjY291bnQzMgcEAAAAC29uZUFuZFRocmVlAwMDAwMDBQAAAAlhY2NvdW50MTEFAAAACWFjY291bnQzMgcGAwUAAAAJYWNjb3VudDExBQAAAAlhY2NvdW50MzMHBgMFAAAACWFjY291bnQxMgUAAAAJYWNjb3VudDMxBwYDBQAAAAlhY2NvdW50MTIFAAAACWFjY291bnQzMwcGAwUAAAAJYWNjb3VudDEzBQAAAAlhY2NvdW50MzEHBgMFAAAACWFjY291bnQxMwUAAAAJYWNjb3VudDMyBwQAAAAHJG1hdGNoMAUAAAACdHgDAwUAAAALb3duZXJBbmRPbmUGBQAAAA1vd25lckFuZFRocmVlBgUAAAALb25lQW5kVGhyZWUf0oA4", "chainId": 84, "height": 656581, "spentComplexity": 0 } View: original | compacted Prev: 98fgpxyQadvZF3mDJ1Q15PFcptAEDLFZ1W9x3di2mjy Next: J3gmkPbgsayGUGFo2LkMpSeAf1FyQTCnhPi2Q5VNMhUx Diff:
OldNewDifferences
33 {-# CONTENT_TYPE DAPP #-}
44 let ownerPubKey = base58'5rRMYG6R2BNvQFL9Ztxr4mLQL3XTvTYEpeLbta3nbmHs'
55
6+let account1PubKey = base58'4zwP5vTDkMxUjVVgGcPk6u4K9fHroRKF6VKACAWsJQdD'
7+
8+let account3PubKey = base58'3h6sXhTtfLedgnipsHp1VSJ8FapFXuvzYz83LcNQSdZf'
9+
610
711 @Verifier(tx)
8-func verify () = match tx {
9- case d: SetScriptTransaction =>
10- sigVerify(tx.bodyBytes, tx.proofs[0], ownerPubKey)
11- case d: DataTransaction =>
12- true
13- case _ =>
14- false
15-}
12+func verify () = {
13+ let owner1 = sigVerify(tx.bodyBytes, tx.proofs[0], ownerPubKey)
14+ let owner2 = sigVerify(tx.bodyBytes, tx.proofs[1], ownerPubKey)
15+ let owner3 = sigVerify(tx.bodyBytes, tx.proofs[2], ownerPubKey)
16+ let account11 = sigVerify(tx.bodyBytes, tx.proofs[0], account1PubKey)
17+ let account12 = sigVerify(tx.bodyBytes, tx.proofs[1], account1PubKey)
18+ let account13 = sigVerify(tx.bodyBytes, tx.proofs[2], account1PubKey)
19+ let account31 = sigVerify(tx.bodyBytes, tx.proofs[0], account3PubKey)
20+ let account32 = sigVerify(tx.bodyBytes, tx.proofs[1], account3PubKey)
21+ let account33 = sigVerify(tx.bodyBytes, tx.proofs[2], account3PubKey)
22+ let ownerAndOne = if (if (if (if (if (if (owner1)
23+ then account12
24+ else false)
25+ then true
26+ else if (owner1)
27+ then account13
28+ else false)
29+ then true
30+ else if (owner2)
31+ then account11
32+ else false)
33+ then true
34+ else if (owner2)
35+ then account13
36+ else false)
37+ then true
38+ else if (owner3)
39+ then account11
40+ else false)
41+ then true
42+ else if (owner3)
43+ then account12
44+ else false
45+ let ownerAndThree = if (if (if (if (if (if (owner1)
46+ then account32
47+ else false)
48+ then true
49+ else if (owner1)
50+ then account33
51+ else false)
52+ then true
53+ else if (owner2)
54+ then account31
55+ else false)
56+ then true
57+ else if (owner2)
58+ then account33
59+ else false)
60+ then true
61+ else if (owner3)
62+ then account31
63+ else false)
64+ then true
65+ else if (owner3)
66+ then account32
67+ else false
68+ let oneAndThree = if (if (if (if (if (if (account11)
69+ then account32
70+ else false)
71+ then true
72+ else if (account11)
73+ then account33
74+ else false)
75+ then true
76+ else if (account12)
77+ then account31
78+ else false)
79+ then true
80+ else if (account12)
81+ then account33
82+ else false)
83+ then true
84+ else if (account13)
85+ then account31
86+ else false)
87+ then true
88+ else if (account13)
89+ then account32
90+ else false
91+ match tx {
92+ case _ =>
93+ if (if (ownerAndOne)
94+ then true
95+ else ownerAndThree)
96+ then true
97+ else oneAndThree
98+ }
99+ }
16100
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let ownerPubKey = base58'5rRMYG6R2BNvQFL9Ztxr4mLQL3XTvTYEpeLbta3nbmHs'
55
6+let account1PubKey = base58'4zwP5vTDkMxUjVVgGcPk6u4K9fHroRKF6VKACAWsJQdD'
7+
8+let account3PubKey = base58'3h6sXhTtfLedgnipsHp1VSJ8FapFXuvzYz83LcNQSdZf'
9+
610
711 @Verifier(tx)
8-func verify () = match tx {
9- case d: SetScriptTransaction =>
10- sigVerify(tx.bodyBytes, tx.proofs[0], ownerPubKey)
11- case d: DataTransaction =>
12- true
13- case _ =>
14- false
15-}
12+func verify () = {
13+ let owner1 = sigVerify(tx.bodyBytes, tx.proofs[0], ownerPubKey)
14+ let owner2 = sigVerify(tx.bodyBytes, tx.proofs[1], ownerPubKey)
15+ let owner3 = sigVerify(tx.bodyBytes, tx.proofs[2], ownerPubKey)
16+ let account11 = sigVerify(tx.bodyBytes, tx.proofs[0], account1PubKey)
17+ let account12 = sigVerify(tx.bodyBytes, tx.proofs[1], account1PubKey)
18+ let account13 = sigVerify(tx.bodyBytes, tx.proofs[2], account1PubKey)
19+ let account31 = sigVerify(tx.bodyBytes, tx.proofs[0], account3PubKey)
20+ let account32 = sigVerify(tx.bodyBytes, tx.proofs[1], account3PubKey)
21+ let account33 = sigVerify(tx.bodyBytes, tx.proofs[2], account3PubKey)
22+ let ownerAndOne = if (if (if (if (if (if (owner1)
23+ then account12
24+ else false)
25+ then true
26+ else if (owner1)
27+ then account13
28+ else false)
29+ then true
30+ else if (owner2)
31+ then account11
32+ else false)
33+ then true
34+ else if (owner2)
35+ then account13
36+ else false)
37+ then true
38+ else if (owner3)
39+ then account11
40+ else false)
41+ then true
42+ else if (owner3)
43+ then account12
44+ else false
45+ let ownerAndThree = if (if (if (if (if (if (owner1)
46+ then account32
47+ else false)
48+ then true
49+ else if (owner1)
50+ then account33
51+ else false)
52+ then true
53+ else if (owner2)
54+ then account31
55+ else false)
56+ then true
57+ else if (owner2)
58+ then account33
59+ else false)
60+ then true
61+ else if (owner3)
62+ then account31
63+ else false)
64+ then true
65+ else if (owner3)
66+ then account32
67+ else false
68+ let oneAndThree = if (if (if (if (if (if (account11)
69+ then account32
70+ else false)
71+ then true
72+ else if (account11)
73+ then account33
74+ else false)
75+ then true
76+ else if (account12)
77+ then account31
78+ else false)
79+ then true
80+ else if (account12)
81+ then account33
82+ else false)
83+ then true
84+ else if (account13)
85+ then account31
86+ else false)
87+ then true
88+ else if (account13)
89+ then account32
90+ else false
91+ match tx {
92+ case _ =>
93+ if (if (ownerAndOne)
94+ then true
95+ else ownerAndThree)
96+ then true
97+ else oneAndThree
98+ }
99+ }
16100

github/deemru/w8io/026f985 
34.25 ms