tx · 9Y32UXCVTYnXC9QvD3KvvEhb1FzJT8gD8X1usq3QG1o4

3MvDhPcMfuD7sdUCdBFpp1FUKDjkVUtv7x6:  -0.01000000 Waves

2019.02.15 16:32 [496231] smart account 3MvDhPcMfuD7sdUCdBFpp1FUKDjkVUtv7x6 > SELF 0.00000000 Waves

{ "type": 13, "id": "9Y32UXCVTYnXC9QvD3KvvEhb1FzJT8gD8X1usq3QG1o4", "fee": 1000000, "feeAssetId": null, "timestamp": 1550237533119, "version": 1, "sender": "3MvDhPcMfuD7sdUCdBFpp1FUKDjkVUtv7x6", "senderPublicKey": "5xbXRjzFZmA4VhG4aoUr93TTntiwsqqi6czmPBJjFPZ2", "proofs": [ "5UQfEx1ruSJbzR5qccqmDVfMhjnc9kPJcGgYATbtc2cTmJA88qcQqksjwH9Fnwh1Q86LT656T5Bo963jf5KqDMqy" ], "script": "base64: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", "chainId": 84, "height": 496231, "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 p1d = isDefined(getBinary(me, "p1m"))
165+ let p2d = isDefined(getBinary(me, "p2m"))
166+ let w = if (if ((timeout >= (height - extract(getInteger(me, "h")))))
167+ then true
168+ else if (p1d)
169+ then p2d
170+ else false)
171+ then if ((score > 0))
172+ then p1k
173+ else if ((score == 0))
174+ then base58'1'
175+ else p2k
176+ else if (!(p1d))
177+ then if (!(p2d))
178+ then base58'1'
179+ else p2k
180+ else p1k
181+ if (if (if ((w == getBinary(data.data, "w")))
182+ then !(isDefined(getBinary(me, "w")))
183+ else false)
184+ then if (sigVerify(data.bodyBytes, data.proofs[0], if ((size(w) == 1))
185+ then p1k
186+ else w))
187+ then true
188+ else sigVerify(data.bodyBytes, data.proofs[0], if ((size(w) == 1))
189+ then p2k
190+ else w)
191+ else false)
192+ then (size(data.data) == 2)
193+ else false
194+ }
195+ else if (if (if (if (if (!(isDefined(getBoolean(me, data.data[0].key))))
196+ then !(isDefined(getBoolean(me, data.data[1].key)))
197+ else false)
198+ then !(isDefined(getBoolean(me, data.data[2].key)))
199+ else false)
200+ then sigVerify(data.bodyBytes, data.proofs[0], fromBase58String(data.data[2].key))
201+ else false)
202+ then (size(data.data) == 3)
203+ else false)
204+ then match transactionById(extract(fromBase58String(data.data[0].key))) {
205+ case p2payment: TransferTransaction =>
206+ if (if (if (if (if ((p2payment.amount == (1 * wave)))
207+ then (p2payment.recipient == me)
208+ else false)
209+ then (p2payment.senderPublicKey != extract(getBinary(data.data, "p2k")))
210+ else false)
211+ then (p2payment.senderPublicKey != p1k)
212+ else false)
213+ then (p2payment.senderPublicKey == fromBase58String(data.data[2].key))
214+ else false)
215+ then !(isDefined(p2payment.assetId))
216+ else false
217+ case _ =>
218+ none
219+ }
220+ else false
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 = (196200000 - serviceCommission)
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 
21.83 ms