tx · 9KTapyJLaNDEyyvVz9Mv52MYtkDyMK41GLgnwmHAwytw

3Mwuu6do9zBghKKVshUFferCwepiQYcAeVE:  -0.01500000 Waves

2019.07.11 16:41 [581106] smart account 3Mwuu6do9zBghKKVshUFferCwepiQYcAeVE > SELF 0.00000000 Waves

{ "type": 13, "id": "9KTapyJLaNDEyyvVz9Mv52MYtkDyMK41GLgnwmHAwytw", "fee": 1500000, "feeAssetId": null, "timestamp": 1562852514598, "version": 1, "sender": "3Mwuu6do9zBghKKVshUFferCwepiQYcAeVE", "senderPublicKey": "8fdATo5z3B5EweA3kKoRgbJZhGa4JicyHHMkhBZTvNSf", "proofs": [ "3AcPQKDmrSupXzQoANiJ8i7sQDKi4Zry5k6Cji5naWvFA6o2j1UFf1snLjHdxqpcuvMAqpjqaoL9sr33JX5TiA4G" ], "script": "base64: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", "chainId": 84, "height": 581106, "spentComplexity": 0 } View: original | compacted Prev: CcXchEfWE3qYvCvYmF4xBxnCPssoKQfX9PSpQQaBQQR8 Next: DhFEayuE5j9FP4AxLqBrmaaC7dnDSpU8hPUecYz59b6m Diff:
OldNewDifferences
177177
178178
179179 @Verifier(Y)
180-func Z () = {
181- let v = Y
182- if ($isInstanceOf(v, "TransferTransaction"))
183- then {
184- let aa = v
185- let E = getInteger(this, "Reserved")
186- let C = {
187- let ab = E
188- if ($isInstanceOf(ab, "Int"))
189- then {
190- let F = ab
191- F
192- }
193- else 0
194- }
195- let ac = (wavesBalance(this) - C)
196- let ad = (ac >= aa.amount)
197- let ae = sigVerify(aa.bodyBytes, aa.proofs[0], aa.senderPublicKey)
198- if (ad)
199- then ae
200- else false
201- }
202- else if ($isInstanceOf(v, "SetScriptTransaction"))
203- then {
204- let af = v
205- sigVerify(af.bodyBytes, af.proofs[0], af.senderPublicKey)
206- }
207- else false
208- }
180+func Z () = true
209181
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 100000000
55
66 let b = (1 * a)
77
88 let c = (5 * a)
99
1010 let d = (10 * a)
1111
1212 let e = (25 * a)
1313
1414 let f = (100 * a)
1515
1616 let g = 5000000
1717
1818 let h = fromBase58String("A77qpVktzt1oAPyPfmKdPsDZGRPJzBrE3WTtuL1KxMYL")
1919
2020 let i = 1440
2121
2222 let j = "Accepted"
2323
2424 let k = "Win"
2525
2626 let l = "WinByTimeout"
2727
2828 let m = "Lose"
2929
3030 @Callable(n)
3131 func bet (o) = {
3232 let p = extract(n.payment)
3333 let q = toBase58String(n.transactionId)
3434 let r = height
3535 let s = {
3636 let t = {
3737 let u = getInteger(this, "GamesCounter")
3838 let v = u
3939 if ($isInstanceOf(v, "Int"))
4040 then {
4141 let w = v
4242 w
4343 }
4444 else 0
4545 }
4646 (t + 1)
4747 }
4848 let x = isDefined(p.assetId)
4949 let y = toBase58String(n.callerPublicKey)
5050 let z = if (if ((o == "1"))
5151 then true
5252 else (o == "2"))
5353 then o
5454 else throw("Player's choice is incorrect")
5555 let A = {
5656 let B = (p.amount - g)
5757 if (if (if (if (if ((B == b))
5858 then true
5959 else (B == c))
6060 then true
6161 else (B == d))
6262 then true
6363 else (B == e))
6464 then true
6565 else (B == f))
6666 then (B * 2)
6767 else throw("Payment amount is incorrect")
6868 }
6969 let C = {
7070 let D = {
7171 let E = getInteger(this, "Reserved")
7272 let v = E
7373 if ($isInstanceOf(v, "Int"))
7474 then {
7575 let F = v
7676 F
7777 }
7878 else 0
7979 }
8080 let G = (D + A)
8181 if ((wavesBalance(this) >= G))
8282 then {
8383 let H = G
8484 H
8585 }
8686 else throw("Bet was rejected. Insufficient funds on game account.")
8787 }
8888 if (x)
8989 then throw("You can make bet in Waves only")
9090 else {
9191 let I = ((((((((j + "_") + y) + "_") + z) + "_") + toString(A)) + "_") + toString(r))
9292 WriteSet([DataEntry("Reserved", C), DataEntry(q, I)])
9393 }
9494 }
9595
9696
9797
9898 @Callable(n)
9999 func withdraw (q,J) = {
100100 let K = {
101101 let L = getString(this, q)
102102 let F = {
103103 let v = L
104104 if ($isInstanceOf(v, "String"))
105105 then {
106106 let F = v
107107 F
108108 }
109109 else throw("GameId was not found")
110110 }
111111 split(F, "_")
112112 }
113113 let M = K[0]
114114 let N = {
115115 let F = K[1]
116116 addressFromPublicKey(fromBase58String(F))
117117 }
118118 let z = K[2]
119119 let O = {
120120 let P = rsaVerify(SHA256, toBytes(q), J, h)
121121 if (P)
122122 then {
123123 let Q = ((toInt(sha256(J)) % 99) + 1)
124124 if (if ((Q > 0))
125125 then (100 >= Q)
126126 else false)
127127 then Q
128128 else throw("Rsa integer is not in range")
129129 }
130130 else throw("Rsa Signature is invalid")
131131 }
132132 let r = {
133133 let F = K[4]
134134 parseIntValue(F)
135135 }
136136 let A = {
137137 let F = K[3]
138138 parseIntValue(F)
139139 }
140140 let G = {
141141 let E = getInteger(this, "Reserved")
142142 let R = {
143143 let v = E
144144 if ($isInstanceOf(v, "Int"))
145145 then {
146146 let F = v
147147 F
148148 }
149149 else 0
150150 }
151151 let S = (R - A)
152152 if ((S > 0))
153153 then S
154154 else throw("Reserved balance couldn't be less than 0")
155155 }
156156 let T = ((((((K[1] + "_") + K[2]) + "_") + K[3]) + "_") + K[4])
157157 let U = (i > (height - r))
158158 let V = (M == j)
159159 if (V)
160160 then if (U)
161161 then {
162162 let W = {
163163 let X = if ((48 > O))
164164 then "1"
165165 else if ((O > 52))
166166 then "2"
167167 else "3"
168168 (X == z)
169169 }
170170 if (W)
171171 then ScriptResult(WriteSet([DataEntry(q, ((((k + "_") + T) + "_") + toString(O))), DataEntry("Reserved", G)]), TransferSet([ScriptTransfer(N, A, unit)]))
172172 else WriteSet([DataEntry(q, ((((m + "_") + T) + "_") + toString(O))), DataEntry("Reserved", G)])
173173 }
174174 else throw("Game state is invalid")
175175 else ScriptResult(WriteSet([DataEntry(q, ((((l + "_") + T) + "_") + "00")), DataEntry("Reserved", G)]), TransferSet([ScriptTransfer(N, A, unit)]))
176176 }
177177
178178
179179 @Verifier(Y)
180-func Z () = {
181- let v = Y
182- if ($isInstanceOf(v, "TransferTransaction"))
183- then {
184- let aa = v
185- let E = getInteger(this, "Reserved")
186- let C = {
187- let ab = E
188- if ($isInstanceOf(ab, "Int"))
189- then {
190- let F = ab
191- F
192- }
193- else 0
194- }
195- let ac = (wavesBalance(this) - C)
196- let ad = (ac >= aa.amount)
197- let ae = sigVerify(aa.bodyBytes, aa.proofs[0], aa.senderPublicKey)
198- if (ad)
199- then ae
200- else false
201- }
202- else if ($isInstanceOf(v, "SetScriptTransaction"))
203- then {
204- let af = v
205- sigVerify(af.bodyBytes, af.proofs[0], af.senderPublicKey)
206- }
207- else false
208- }
180+func Z () = true
209181

github/deemru/w8io/c3f4982 
47.08 ms