tx · 96hCj5hdAgpcGi3nf45ST3H7owmuWevnf3qxjuq2K7au

3N4LH5XizMixv95sbA8KzKsWP79LBJ6EQ1K:  -0.05000000 Waves

2020.09.18 17:19 [1182842] smart account 3N4LH5XizMixv95sbA8KzKsWP79LBJ6EQ1K > SELF 0.00000000 Waves

{ "type": 13, "id": "96hCj5hdAgpcGi3nf45ST3H7owmuWevnf3qxjuq2K7au", "fee": 5000000, "feeAssetId": null, "timestamp": 1600438717861, "version": 2, "chainId": 84, "sender": "3N4LH5XizMixv95sbA8KzKsWP79LBJ6EQ1K", "senderPublicKey": "B1L9ADLhT3AgSCGBbDqFgvHGQg23J4vtF6qx38yTzi2V", "proofs": [ "2pfstFssq4MWY9mTjmAKarFarjoHvZi1TUnxKj68K5CZJRmwp3g33tFb5iNdCMAVV1Egsc26vDJ2dBPguGzuqPhz", "2mjXVCBmBEwQ6hELw1t6oQKx7tU4RfiDGtjMZVkHUfuDgLQ8FvyRi64Sx9orAxWuUBynEBb9VD69b323cCMCkcJV" ], "script": "base64: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", "height": 1182842, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 7vFAC1tXuLuy64Po7VnVpvcU6FMatZe9ogE9dp2bbLw3 Next: 8NC7xqrjmsnMGqJeN1wFXvEW6qepL2hH7MfquGkDYzAi Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let owner = base58'B1L9ADLhT3AgSCGBbDqFgvHGQg23J4vtF6qx38yTzi2V'
4+let True = 0
5+
6+let alicePubKey = base58'AQC4cqNzFb67Z2eYUSiv1nFtcsfEbtimY9iCQhsW1Tut'
7+
8+let bobPubKey = base58'B1L9ADLhT3AgSCGBbDqFgvHGQg23J4vtF6qx38yTzi2V'
9+
10+let cooperPubKey = base58'3AWsKp1X42XqcUCWsp8NXfV2W6fkXLZG5w4EwfgDkgtQ'
511
612
713 @Verifier(tx)
8-func verify () = match tx {
9- case d: SetScriptTransaction =>
10- sigVerify(tx.bodyBytes, tx.proofs[0], owner)
11- case t: TransferTransaction =>
12- true
13- case d: DataTransaction =>
14- true
15- case _ =>
16- false
17-}
14+func verify () = {
15+ let alice1 = sigVerify(tx.bodyBytes, tx.proofs[0], alicePubKey)
16+ let alice2 = sigVerify(tx.bodyBytes, tx.proofs[1], alicePubKey)
17+ let alice3 = sigVerify(tx.bodyBytes, tx.proofs[2], alicePubKey)
18+ let bob1 = sigVerify(tx.bodyBytes, tx.proofs[0], bobPubKey)
19+ let bob2 = sigVerify(tx.bodyBytes, tx.proofs[1], bobPubKey)
20+ let bob3 = sigVerify(tx.bodyBytes, tx.proofs[2], bobPubKey)
21+ let cooper1 = sigVerify(tx.bodyBytes, tx.proofs[0], cooperPubKey)
22+ let cooper2 = sigVerify(tx.bodyBytes, tx.proofs[1], cooperPubKey)
23+ let cooper3 = sigVerify(tx.bodyBytes, tx.proofs[2], cooperPubKey)
24+ let aliceAndBob = if (if (if (if (if (if (alice1)
25+ then bob2
26+ else false)
27+ then true
28+ else if (alice1)
29+ then bob3
30+ else false)
31+ then true
32+ else if (alice2)
33+ then bob1
34+ else false)
35+ then true
36+ else if (alice2)
37+ then bob3
38+ else false)
39+ then true
40+ else if (alice3)
41+ then bob1
42+ else false)
43+ then true
44+ else if (alice3)
45+ then bob2
46+ else false
47+ let aliceAndCooper = if (if (if (if (if (if (alice1)
48+ then cooper2
49+ else false)
50+ then true
51+ else if (alice1)
52+ then cooper3
53+ else false)
54+ then true
55+ else if (alice2)
56+ then cooper1
57+ else false)
58+ then true
59+ else if (alice2)
60+ then cooper3
61+ else false)
62+ then true
63+ else if (alice3)
64+ then cooper1
65+ else false)
66+ then true
67+ else if (alice3)
68+ then cooper2
69+ else false
70+ let bobAndCooper = if (if (if (if (if (if (cooper1)
71+ then bob2
72+ else false)
73+ then true
74+ else if (cooper1)
75+ then bob3
76+ else false)
77+ then true
78+ else if (cooper2)
79+ then bob1
80+ else false)
81+ then true
82+ else if (cooper2)
83+ then bob3
84+ else false)
85+ then true
86+ else if (cooper3)
87+ then bob1
88+ else false)
89+ then true
90+ else if (cooper3)
91+ then bob2
92+ else false
93+ match tx {
94+ case t: TransferTransaction =>
95+ true
96+ case d: DataTransaction =>
97+ true
98+ case _ =>
99+ if (if (aliceAndBob)
100+ then true
101+ else aliceAndCooper)
102+ then true
103+ else bobAndCooper
104+ }
105+ }
18106

github/deemru/w8io/6500d08 
34.37 ms