tx · 66YLns4LDwoN8iMoQbPWjL6u31M6479oLBp4feEqMUq9

3NBXt2p1FYjzvGfw49jrJLmZmjmexLEsvJY:  -0.01000000 Waves

2019.02.14 20:28 [495004] smart account 3NBXt2p1FYjzvGfw49jrJLmZmjmexLEsvJY > SELF 0.00000000 Waves

{ "type": 13, "id": "66YLns4LDwoN8iMoQbPWjL6u31M6479oLBp4feEqMUq9", "fee": 1000000, "feeAssetId": null, "timestamp": 1550165283779, "version": 1, "sender": "3NBXt2p1FYjzvGfw49jrJLmZmjmexLEsvJY", "senderPublicKey": "ELagHU3tHRL4UpeQThn3kiWpKTjRYD7qvNKb6jU5jERD", "proofs": [ "cqniebph194JcujdenmNuD4edF2WP4Vwxh6Ye81xtLCkVBWnQG2vxF2R1oG1BvtnftNGabST49dHEb7ZbgUCJ2f" ], "script": "base64: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", "chainId": 84, "height": 495004, "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(getBinary(data.data, "w")))
111+ then {
112+ let p1moves = take(extract(getBinary(me, "p1m")), 3)
113+ let p2moves = take(extract(getBinary(me, "p2m")), 3)
114+ let p1m1 = take(p1moves, 1)
115+ let p2m1 = take(p2moves, 1)
116+ let p1m2 = takeRightBytes(take(p1moves, 2), 1)
117+ let p2m2 = takeRightBytes(take(p2moves, 2), 1)
118+ let p1m3 = takeRightBytes(p1moves, 1)
119+ let p2m3 = takeRightBytes(p2moves, 1)
120+ let score = (((if (if (if (if ((p1m1 == rock))
121+ then (p2m1 == scissors)
122+ else false)
123+ then true
124+ else if ((p1m1 == paper))
125+ then (p2m1 == rock)
126+ else false)
127+ then true
128+ else if ((p1m1 == scissors))
129+ then (p2m1 == paper)
130+ else false)
131+ then 1
132+ else if ((p1m1 == p2m1))
133+ then 0
134+ else -1) + (if (if (if (if ((p1m2 == rock))
135+ then (p2m2 == scissors)
136+ else false)
137+ then true
138+ else if ((p1m2 == paper))
139+ then (p2m2 == rock)
140+ else false)
141+ then true
142+ else if ((p1m2 == scissors))
143+ then (p2m2 == paper)
144+ else false)
145+ then 1
146+ else if ((p1m2 == p2m2))
147+ then 0
148+ else -1)) + (if (if (if (if ((p1m3 == rock))
149+ then (p2m3 == scissors)
150+ else false)
151+ then true
152+ else if ((p1m3 == paper))
153+ then (p2m3 == rock)
154+ else false)
155+ then true
156+ else if ((p1m3 == scissors))
157+ then (p2m3 == paper)
158+ else false)
159+ then 1
160+ else if ((p1m3 == p2m3))
161+ then 0
162+ else -1))
163+ let p2k = extract(getBinary(me, "p2k"))
164+ let w = if (((height - extract(getInteger(me, "h"))) > timeout))
165+ then if (if (!(isDefined(getBinary(me, "p1m"))))
166+ then !(isDefined(getBinary(me, "p1m")))
167+ else false)
168+ then base58'1'
169+ else if (!(isDefined(getBinary(me, "p1m"))))
170+ then extract(getBinary(me, "p2k"))
171+ else p1k
172+ else if ((score > 0))
173+ then p1k
174+ else if ((score == 0))
175+ then base58'1'
176+ else p2k
177+ if (if (if (if ((w == getBinary(data.data, "w")))
178+ then !(isDefined(getBinary(me, "w")))
179+ else false)
180+ then !(isDefined(getBoolean(me, data.data[1].key)))
181+ else false)
182+ then if (sigVerify(data.bodyBytes, data.proofs[0], if ((size(w) == 1))
183+ then p1k
184+ else w))
185+ then true
186+ else sigVerify(data.bodyBytes, data.proofs[0], if ((size(w) == 1))
187+ then p2k
188+ else w)
189+ else false)
190+ then (size(data.data) == 2)
191+ else false
192+ }
193+ else if (if (if (if (if (!(isDefined(getBoolean(me, data.data[0].key))))
194+ then !(isDefined(getBoolean(me, data.data[1].key)))
195+ else false)
196+ then !(isDefined(getBoolean(me, data.data[2].key)))
197+ else false)
198+ then sigVerify(data.bodyBytes, data.proofs[0], fromBase58String(data.data[2].key))
199+ else false)
200+ then (size(data.data) == 3)
201+ else false)
202+ then match transactionById(extract(fromBase58String(data.data[0].key))) {
203+ case p2payment: TransferTransaction =>
204+ if (if (if (if (if ((p2payment.amount == (1 * wave)))
205+ then (p2payment.recipient == me)
206+ else false)
207+ then (p2payment.senderPublicKey != extract(getBinary(data.data, "p2k")))
208+ else false)
209+ then (p2payment.senderPublicKey != p1k)
210+ else false)
211+ then (p2payment.senderPublicKey == fromBase58String(data.data[2].key))
212+ else false)
213+ then !(isDefined(p2payment.assetId))
214+ else false
215+ case _ =>
216+ none
217+ }
218+ else false
219+ if ((data.fee == 500000))
220+ then dataValid
221+ else false
222+ case cashback: TransferTransaction =>
223+ if (isDefined(getBoolean(me, toBase58String(cashback.id))))
224+ then ((((1 * wave) - cashback.fee) - 500000) >= cashback.amount)
225+ else false
226+ case payout: MassTransferTransaction =>
227+ let pt = payout.transfers
228+ let w = extract(getBinary(me, "w"))
229+ let p1 = addressFromPublicKey(p1k)
230+ let noWinner = (size(w) == 1)
231+ let winner = if (!(noWinner))
232+ then addressFromPublicKey(w)
233+ else p1
234+ let looser = if ((p1 == winner))
235+ then addressFromPublicKey(extract(getBinary(me, "p2k")))
236+ else p1
237+ let prizePool = ((wavesBalance(me) - serviceCommission) - payout.fee)
238+ if (if (if (if (if (if (if ((pt[1].recipient == winner))
239+ then (pt[1].amount == (if (noWinner)
240+ then (prizePool / 2)
241+ else prizePool))
242+ else false)
243+ then (pt[2].recipient == looser)
244+ else false)
245+ then (pt[2].amount == (if (noWinner)
246+ then (prizePool / 2)
247+ else 0))
248+ else false)
249+ then (payout.fee == 700000)
250+ else false)
251+ then (pt[0].recipient == serviceAddress)
252+ else false)
253+ then (pt[0].amount == serviceCommission)
254+ else false)
255+ then isDefined(getBoolean(me, toBase58String(payout.id)))
256+ else false
257+ case _ =>
258+ false
259+}

github/deemru/w8io/3ef1775 
36.93 ms