tx · Aj5Dm2P5oh9SmaaxMZZ9Kterkj3yg81mN64PqjwpxY6e

3MtXcGuHHv2nULfBMCLN1BWtzfqKL8Sobr6:  -0.01000000 Waves

2019.02.14 18:29 [494900] smart account 3MtXcGuHHv2nULfBMCLN1BWtzfqKL8Sobr6 > SELF 0.00000000 Waves

{ "type": 13, "id": "Aj5Dm2P5oh9SmaaxMZZ9Kterkj3yg81mN64PqjwpxY6e", "fee": 1000000, "feeAssetId": null, "timestamp": 1550158314702, "version": 1, "sender": "3MtXcGuHHv2nULfBMCLN1BWtzfqKL8Sobr6", "senderPublicKey": "CaKALhd2hRzs7NN2tnKPSKrk5aVV9Z97PjZCoKKcG14f", "proofs": [ "4rYNcQ6ieVcKs67pvkASxtgp1F7EKYzB2D14FeiANqEKutjquSjiX9Dbcs9PuFqHxqDiXXa6oGt5Th3Xz5cNPLKp" ], "script": "base64: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", "chainId": 84, "height": 494900, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 1 #-}
2+{-# CONTENT_TYPE EXPRESSION #-}
3+let me = tx.sender
4+let wave = 100000000
5+let bet = (1 * wave)
6+let serviceAddress = addressFromString("3N7oF5J5m9BwBFCmVJZWr3AEH3u4c6CLoB9")
7+let serviceCommission = (bet / 200)
8+let rock = base58'1'
9+let paper = base58'2'
10+let scissors = base58'3'
11+let none = throw("")
12+let timeout = 15
13+let p1MoveHash = extract(getBinary(me, "p1mh"))
14+let matchKey = extract(getBinary(me, "mk"))
15+let p1k = extract(getBinary(me, "p1k"))
16+match tx {
17+ case data: DataTransaction =>
18+ let dataValid = if (isDefined(getBinary(data.data, "p2p")))
19+ then {
20+ let h = extract(getInteger(data.data, "h"))
21+ if (if (if (if (if ((size(data.data) == 4))
22+ then ((height + 1) >= h)
23+ else false)
24+ then (h >= (height - 1))
25+ else false)
26+ then !(isDefined(getBinary(me, "p2p")))
27+ else false)
28+ then (size(extract(getBinary(data.data, "p2mh"))) == 32)
29+ else false)
30+ then match transactionById(extract(getBinary(data.data, "p2p"))) {
31+ case p2payment: TransferTransaction =>
32+ if (if (if (if ((p2payment.amount == (1 * wave)))
33+ then (p2payment.recipient == me)
34+ else false)
35+ then (p2payment.senderPublicKey == extract(getBinary(data.data, "p2k")))
36+ else false)
37+ then (p2payment.senderPublicKey != p1k)
38+ else false)
39+ then !(isDefined(p2payment.assetId))
40+ else false
41+ case _ =>
42+ none
43+ }
44+ else false
45+ }
46+ else if (isDefined(getBinary(data.data, "p1m")))
47+ then {
48+ let p1moves = take(extract(getBinary(data.data, "p1m")), 3)
49+ let p1m1 = take(p1moves, 1)
50+ let p1m2 = takeRightBytes(take(p1moves, 2), 1)
51+ let p1m3 = takeRightBytes(p1moves, 1)
52+ let err1 = if (if (if (if ((p1m1 != rock))
53+ then (p1m1 != scissors)
54+ else false)
55+ then (p1m1 != paper)
56+ else false)
57+ then true
58+ else if (if ((p1m2 != rock))
59+ then (p1m2 != scissors)
60+ else false)
61+ then (p1m2 != paper)
62+ else false)
63+ then true
64+ else if (if ((p1m3 != rock))
65+ then (p1m3 != scissors)
66+ else false)
67+ then (p1m3 != paper)
68+ else false
69+ if (if (if (if ((wavesBalance(me) >= bet))
70+ then !(err1)
71+ else false)
72+ then !(isDefined(getBinary(me, "p1m")))
73+ else false)
74+ then (size(data.data) == 1)
75+ else false)
76+ then (sha256(extract(getBinary(data.data, "p1m"))) == extract(getBinary(me, "p1mh")))
77+ else false
78+ }
79+ else if (isDefined(getBinary(data.data, "p2m")))
80+ then {
81+ let p2moves = take(extract(getBinary(data.data, "p2m")), 3)
82+ let p2m1 = take(p2moves, 1)
83+ let p2m2 = takeRightBytes(take(p2moves, 2), 1)
84+ let p2m3 = takeRightBytes(p2moves, 1)
85+ let err2 = if (if (if (if ((p2m1 != rock))
86+ then (p2m1 != scissors)
87+ else false)
88+ then (p2m1 != paper)
89+ else false)
90+ then true
91+ else if (if ((p2m2 != rock))
92+ then (p2m2 != scissors)
93+ else false)
94+ then (p2m2 != paper)
95+ else false)
96+ then true
97+ else if (if ((p2m3 != rock))
98+ then (p2m3 != scissors)
99+ else false)
100+ then (p2m3 != paper)
101+ else false
102+ if (if (if (!(err2))
103+ then !(isDefined(getBinary(me, "p2m")))
104+ else false)
105+ then (size(data.data) == 1)
106+ else false)
107+ then (sha256(extract(getBinary(data.data, "p2m"))) == extract(getBinary(me, "p2mh")))
108+ else false
109+ }
110+ else if (isDefined(getBoolean(me, data.data[0].key)))
111+ then if (if (if (if (if (!(isDefined(getBoolean(me, data.data[0].key))))
112+ then !(isDefined(getBoolean(me, data.data[1].key)))
113+ else false)
114+ then !(isDefined(getBoolean(me, data.data[2].key)))
115+ else false)
116+ then sigVerify(data.bodyBytes, data.proofs[0], fromBase58String(data.data[2].key))
117+ else false)
118+ then (size(data.data) == 3)
119+ else false)
120+ then match transactionById(extract(fromBase58String(data.data[0].key))) {
121+ case p2payment: TransferTransaction =>
122+ if (if (if (if (if ((p2payment.amount == (1 * wave)))
123+ then (p2payment.recipient == me)
124+ else false)
125+ then (p2payment.senderPublicKey != extract(getBinary(data.data, "p2k")))
126+ else false)
127+ then (p2payment.senderPublicKey != p1k)
128+ else false)
129+ then (p2payment.senderPublicKey == fromBase58String(data.data[2].key))
130+ else false)
131+ then !(isDefined(p2payment.assetId))
132+ else false
133+ case _ =>
134+ none
135+ }
136+ else false
137+ else if (isDefined(getBinary(data.data, "w")))
138+ then {
139+ let p1moves = take(extract(getBinary(me, "p1m")), 3)
140+ let p2moves = take(extract(getBinary(me, "p2m")), 3)
141+ let p1m1 = take(p1moves, 1)
142+ let p2m1 = take(p2moves, 1)
143+ let p1m2 = takeRightBytes(take(p1moves, 2), 1)
144+ let p2m2 = takeRightBytes(take(p2moves, 2), 1)
145+ let p1m3 = takeRightBytes(p1moves, 1)
146+ let p2m3 = takeRightBytes(p2moves, 1)
147+ let score = (((if (if (if (if ((p1m1 == rock))
148+ then (p2m1 == scissors)
149+ else false)
150+ then true
151+ else if ((p1m1 == paper))
152+ then (p2m1 == rock)
153+ else false)
154+ then true
155+ else if ((p1m1 == scissors))
156+ then (p2m1 == paper)
157+ else false)
158+ then 1
159+ else if ((p1m1 == p2m1))
160+ then 0
161+ else -1) + (if (if (if (if ((p1m2 == rock))
162+ then (p2m2 == scissors)
163+ else false)
164+ then true
165+ else if ((p1m2 == paper))
166+ then (p2m2 == rock)
167+ else false)
168+ then true
169+ else if ((p1m2 == scissors))
170+ then (p2m2 == paper)
171+ else false)
172+ then 1
173+ else if ((p1m2 == p2m2))
174+ then 0
175+ else -1)) + (if (if (if (if ((p1m3 == rock))
176+ then (p2m3 == scissors)
177+ else false)
178+ then true
179+ else if ((p1m3 == paper))
180+ then (p2m3 == rock)
181+ else false)
182+ then true
183+ else if ((p1m3 == scissors))
184+ then (p2m3 == paper)
185+ else false)
186+ then 1
187+ else if ((p1m3 == p2m3))
188+ then 0
189+ else -1))
190+ let p2k = extract(getBinary(me, "p2k"))
191+ let w = if (((height - extract(getInteger(me, "h"))) > timeout))
192+ then if (if (!(isDefined(getBinary(me, "p1m"))))
193+ then !(isDefined(getBinary(me, "p1m")))
194+ else false)
195+ then base58'1'
196+ else if (!(isDefined(getBinary(me, "p1m"))))
197+ then extract(getBinary(me, "p2k"))
198+ else p1k
199+ else if ((score > 0))
200+ then p1k
201+ else if ((score == 0))
202+ then base58'1'
203+ else p2k
204+ if (if (if (if ((w == getBinary(data.data, "w")))
205+ then !(isDefined(getBinary(me, "w")))
206+ else false)
207+ then !(isDefined(getBoolean(me, data.data[1].key)))
208+ else false)
209+ then if (sigVerify(data.bodyBytes, data.proofs[0], if ((size(w) == 1))
210+ then p1k
211+ else w))
212+ then true
213+ else sigVerify(data.bodyBytes, data.proofs[0], if ((size(w) == 1))
214+ then p2k
215+ else w)
216+ else false)
217+ then (size(data.data) == 2)
218+ else false
219+ }
220+ else none
221+ if ((data.fee == 500000))
222+ then dataValid
223+ else false
224+ case cashback: TransferTransaction =>
225+ if (isDefined(getBoolean(me, toBase58String(cashback.id))))
226+ then ((((1 * wave) - cashback.fee) - 500000) >= cashback.amount)
227+ else false
228+ case payout: MassTransferTransaction =>
229+ let pt = payout.transfers
230+ let w = extract(getBinary(me, "w"))
231+ let p1 = addressFromPublicKey(p1k)
232+ let noWinner = (size(w) == 1)
233+ let winner = if (!(noWinner))
234+ then addressFromPublicKey(w)
235+ else p1
236+ let looser = if ((p1 == winner))
237+ then addressFromPublicKey(extract(getBinary(me, "p2k")))
238+ else p1
239+ let prizePool = ((wavesBalance(me) - serviceCommission) - payout.fee)
240+ if (if (if (if (if (if (if ((pt[1].recipient == winner))
241+ then (pt[1].amount == (if (noWinner)
242+ then (prizePool / 2)
243+ else prizePool))
244+ else false)
245+ then (pt[2].recipient == looser)
246+ else false)
247+ then (pt[2].amount == (if (noWinner)
248+ then (prizePool / 2)
249+ else 0))
250+ else false)
251+ then (payout.fee == 700000)
252+ else false)
253+ then (pt[0].recipient == serviceAddress)
254+ else false)
255+ then (pt[0].amount == serviceCommission)
256+ else false)
257+ then isDefined(getBoolean(me, toBase58String(payout.id)))
258+ else false
259+ case _ =>
260+ false
261+}

github/deemru/w8io/026f985 
24.16 ms