tx · E9K8M7KeZ2xZ9DLpZBrZHq5cygVAmtNXsJgVPkfNx88A

3N2tusqAtDctK8iSTXS6F9rimmftmSuwLUX:  -0.05000000 Waves

2019.10.29 15:37 [741438] smart account 3N2tusqAtDctK8iSTXS6F9rimmftmSuwLUX > SELF 0.00000000 Waves

{ "type": 13, "id": "E9K8M7KeZ2xZ9DLpZBrZHq5cygVAmtNXsJgVPkfNx88A", "fee": 5000000, "feeAssetId": null, "timestamp": 1572352661583, "version": 1, "sender": "3N2tusqAtDctK8iSTXS6F9rimmftmSuwLUX", "senderPublicKey": "ACfUG5PwG2GssMuyEwVEhkYAbbbP1geSHR8XoNxLyu6V", "proofs": [ "3yPDDoWdpq7ePYfh3DRXqeA3aSQoxVjJb3FxMaAQbYQsAiR3SCrpNhLX1ykqrmFbPAQjwCThdsY7eUzdoE1NapdA" ], "script": "base64:AAIDAAAAAAAAAAwIARIDCgEIEgMKAQgAAAAiAAAAAAlSU0FQVUJMSUMJAAJbAAAAAQIAAAGPYmFzZTY0Ok1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBZzRkQVI2WGJCREFTOWhyL0VqM2RKdjZGZmM0NjZ4L21PR01XVTNsckFCczNxYThCSG11Skdua2ZicEVmMnZBd1lUT1dQdnZ6Zk0xME9CYmZsb1N5cTNjOU1LdnlUZTFsdUJMR3FXNHZaVVhJeXZTZ3oxbGl5VVZlZklReTNkeUY5amJlVFpiQzBiYmNULzdPM0RFTCswMXo2QStyRENhY1NaMGxHb2xTUTZBbmhMeHpJa1ZwT1FKYnJCbUMreCtadVpQQ01Xekp5bmQ1YWVPbjdqYWovbWtSVnl4ZTZnLzBPaFd6NE5paVpYZXVNUkIrOG1LeTBmV0QvVWxJbFpXSHNBUzJabXJrWEtxakxxMC8wd3I4SUxKa3pualNxZG5JNUliamczdVFyai80QU4raTlyMjhhUTczL1prUHRZNVNidzBBT2lBQkJ1N2dIbXE5YXlWeFpRSURBUUFCAAAAAA9HQU1FU0NPVU5URVJLRVkCAAAACSRHQU1FX05VTQAAAAAEV0JFVAEAAAAgD5uLrFpvaCc5H1Jt+IyA7GJAqs11k4f4jn5gjTii4MkAAAAAC0ZFRVdBVkVTQkVUAAAAAAAAAAAEAAAAAAlGRUVNQ0FGRUUAAAAAAAAAAAIAAAAAB1dBVkVMRVQAAAAAAAX14QAAAAAADlNUQVRFU1VCTUlUVEVEAgAAAAlTVUJNSVRURUQAAAAADVNUQVRFQUNDRVBURUQCAAAACEFDQ0VQVEVEAAAAAA1TVEFURUZJTklTSEVEAgAAAAhGSU5JU0hFRAAAAAANU1RBVEVDQU5DRUxFRAIAAAAIQ0FOQ0VMRUQAAAAAB0NPSU5SRUQCAAAAA1JFRAAAAAAIQ09JTkJMVUUCAAAABEJMVUUAAAAAC0JFVE1JTldBVkVTCQAAaQAAAAIJAABoAAAAAgAAAAAAAAAAAQUAAAAHV0FWRUxFVAAAAAAAAAAAAgAAAAAKQkVUTUlOV0JFVAkAAGgAAAACAAAAAAAAAABkBQAAAAdXQVZFTEVUAAAAAAxJZHhHYW1lU3RhdGUAAAAAAAAA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aGlzBQAAAAZnYW1lSWQEAAAAB3BheW1lbnQJAQAAAAdleHRyYWN0AAAAAQgFAAAAAWkAAAAHcGF5bWVudAQAAAAKZmVlQXNzZXRJZAkBAAAACWlzRGVmaW5lZAAAAAEIBQAAAAFpAAAACmZlZUFzc2V0SWQDAwkBAAAAAiE9AAAAAggFAAAAB3BheW1lbnQAAAAHYXNzZXRJZAkAA+wAAAABAQAAAAQTq9kzCQEAAAACIT0AAAACCAUAAAAHcGF5bWVudAAAAAdhc3NldElkBQAAAARXQkVUBwkAAAIAAAABAgAAADFQYXltZW50IHNob3VsZCBiZSBpbiBXYmV0IG9yIFdhdmVzLiBHYW1lIGFib3J0ZWQuAwUAAAAKZmVlQXNzZXRJZAkAAAIAAAABAgAAADFUcmFuc2FjdGlvbidzIGZlZSBtdXN0IGJlIGluIFdhdmVzLiBHYW1lIGFib3J0ZWQuAwUAAAAKZ2FtZUlkVXNlZAkAAAIAAAABAgAAADFQYXNzZWQgZ2FtZUlkIGhhZCBiZWVuIHVzZWQgYmVmb3JlLiBHYW1lIGFib3J0ZWQuBAAAAApuZXdHYW1lTnVtCQEAAAAQSW5jcmVtZW50R2FtZU51bQAAAAAEAAAAD3BsYXllckFQdWJLZXk1OAkAAlgAAAABCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkEAAAAB3BheVR5cGUJAQAAAAtwYXltZW50VHlwZQAAAAEFAAAAB3BheW1lbnQEAAAABndpbkFtdAkBAAAAGlZhbGlkYXRlQmV0QW5kRGVmaW5lV2luQW10AAAAAwgFAAAAB3BheW1lbnQAAAAGYW1vdW50BQAAAAZwYUNvaW4FAAAAB3BheVR5cGUEAAAAC2dhbWVEYXRhU3RyCQEAAAARRm9ybWF0R2FtZURhdGFTdHIAAAAJBQAAAA5TVEFURVNVQk1JVFRFRAUAAAAGcGFDb2luBQAAAA9wbGF5ZXJBUHViS2V5NTgFAAAAB3BheVR5cGUIBQAAAAdwYXltZW50AAAABmFtb3VudAUAAAAGd2luQW10AgAAAAACAAAAAAIAAAAACQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAPR0FNRVNDT1VOVEVSS0VZBQAAAApuZXdHYW1lTnVtCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACBQAAAAZnYW1lSWQFAAAAC2dhbWVEYXRhU3RyBQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEFAAAAA25pbAAAAAFpAQAAABNjYW5jZWxDb2luQ2hhbGxlbmdlAAAAAQAAAAZnYW1lSWQEAAAADGdhbWVEYXRhTGlzdAkBAAAAE0V4dHJhY3RHYW1lRGF0YUxpc3QAAAABBQAAAAZnYW1lSWQJAAACAAAAAQIAAAAGYXNkYXNkAAAAAHY19PI=", "chainId": 84, "height": 741438, "spentComplexity": 0 } View: original | compacted Prev: HSXCuSBoqLK2amHT72gN7Lt2UARLmaLP1hiD74hHfEXW Next: CBf5MMqUGzr2W74fyEG1D7ERGR6V8RST6qRAejNtfMCb Diff:
OldNewDifferences
146146
147147
148148 func am (an) = {
149- let ao = {
150- let z = getString(this, an)
151- if ($isInstanceOf(z, "String"))
152- then {
153- let ap = z
154- ap
155- }
156- else throw(("Couldn't find game by " + an))
157- }
158- ah(ao)
149+ let ao = getStringValue(this, an)
150+ throw(ao)
159151 }
160152
161153
162-func aq (ar,as,J) = if (if ((as != k))
163- then (as != l)
154+func ap (aq,ar,J) = if (if ((ar != k))
155+ then (ar != l)
164156 else false)
165157 then throw("Invalid play, change your bet to RED or BLUE coin. Game aborted.")
166158 else if (if ((J == "WBET"))
167- then (n > ar)
159+ then (n > aq)
168160 else false)
169161 then throw(("The minimum bet on Wbet is " + toString((n / f))))
170162 else if (if ((J == "WAVES"))
171- then (m > ar)
163+ then (m > aq)
172164 else false)
173165 then throw(("The minimum bet on Waves is " + toString((m / f))))
174- else (((ar * 2) * (100 - (d + e))) / 100)
166+ else (((aq * 2) * (100 - (d + e))) / 100)
175167
176168
177-@Callable(at)
169+@Callable(as)
178170 func playCoin (aj) = {
179- let an = toBase58String(at.transactionId)
180- let au = isDefined(getString(this, an))
181- let K = extract(at.payment)
182- let av = isDefined(at.feeAssetId)
171+ let an = toBase58String(as.transactionId)
172+ let at = isDefined(getString(this, an))
173+ let K = extract(as.payment)
174+ let au = isDefined(as.feeAssetId)
183175 if (if ((K.assetId != assetInfo(base58'WAVES')))
184176 then (K.assetId != c)
185177 else false)
186178 then throw("Payment should be in Wbet or Waves. Game aborted.")
187- else if (av)
179+ else if (au)
188180 then throw("Transaction's fee must be in Waves. Game aborted.")
189- else if (au)
181+ else if (at)
190182 then throw("Passed gameId had been used before. Game aborted.")
191183 else {
192- let aw = x()
193- let S = toBase58String(at.callerPublicKey)
184+ let av = x()
185+ let S = toBase58String(as.callerPublicKey)
194186 let T = J(K)
195- let V = aq(K.amount, aj, T)
196- let ax = P(g, aj, S, T, K.amount, V, "", "", "")
197- ScriptResult(WriteSet([DataEntry(b, aw), DataEntry(an, ax)]), TransferSet(nil))
187+ let V = ap(K.amount, aj, T)
188+ let aw = P(g, aj, S, T, K.amount, V, "", "", "")
189+ ScriptResult(WriteSet([DataEntry(b, av), DataEntry(an, aw)]), TransferSet(nil))
198190 }
199191 }
200192
201193
202194
203-@Callable(at)
204-func acceptCoinChallenge (an,ay) = {
205- let az = am(an)
206- let Q = az[o]
207- let aj = az[p]
208- let ak = az[q]
209- let T = az[r]
210- let al = parseIntValue(az[s])
211- let V = parseIntValue(az[t])
212- let K = extract(at.payment)
213- let av = isDefined(at.feeAssetId)
214- let aA = toBase58String(at.callerPublicKey)
215- let aB = J(K)
216- if (if ((K.assetId != assetInfo(base58'WAVES')))
217- then (K.assetId != c)
218- else false)
219- then throw("Payment should be in Wbet or Waves. Game aborted.")
220- else if (av)
221- then throw("Transaction's fee must be in Waves. Game aborted.")
222- else if ((ak == aA))
223- then throw("You can't accept a challenge created by yourself. Game aborted.")
224- else if ((T != aB))
225- then throw("Payment must be made in the same currency token as the bet, WBET/WBET or WAVES/WAVES. Game aborted.")
226- else if ((al != K.amount))
227- then throw("Payout must be equal to the challenger bet amount. Game aborted.")
228- else if ((Q != g))
229- then throw("Invalid game state for passed gameId. Game aborted.")
230- else {
231- let I = B(at, 100, 0)
232- let Y = if ((I > 50))
233- then k
234- else l
235- let aC = if ((aj == k))
236- then l
237- else k
238- let aD = P(h, aj, ak, T, al, V, aC, aA, Y)
239- ScriptResult(WriteSet([DataEntry(an, aD)]), TransferSet(nil))
240- }
241- }
242-
243-
244-
245-@Callable(at)
195+@Callable(as)
246196 func cancelCoinChallenge (an) = {
247- let az = am(an)
197+ let ax = am(an)
248198 throw("asdasd")
249199 }
250200
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = fromBase64String("base64:MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAg4dAR6XbBDAS9hr/Ej3dJv6Ffc466x/mOGMWU3lrABs3qa8BHmuJGnkfbpEf2vAwYTOWPvvzfM10OBbfloSyq3c9MKvyTe1luBLGqW4vZUXIyvSgz1liyUVefIQy3dyF9jbeTZbC0bbcT/7O3DEL+01z6A+rDCacSZ0lGolSQ6AnhLxzIkVpOQJbrBmC+x+ZuZPCMWzJynd5aeOn7jaj/mkRVyxe6g/0OhWz4NiiZXeuMRB+8mKy0fWD/UlIlZWHsAS2ZmrkXKqjLq0/0wr8ILJkznjSqdnI5Ibjg3uQrj/4AN+i9r28aQ73/ZkPtY5Sbw0AOiABBu7gHmq9ayVxZQIDAQAB")
55
66 let b = "$GAME_NUM"
77
88 let c = base58'23vgV9p9pD83A7CFbsDEc4zjanep7UeFo4ZRS6oGorhv'
99
1010 let d = 4
1111
1212 let e = 2
1313
1414 let f = 100000000
1515
1616 let g = "SUBMITTED"
1717
1818 let h = "ACCEPTED"
1919
2020 let i = "FINISHED"
2121
2222 let j = "CANCELED"
2323
2424 let k = "RED"
2525
2626 let l = "BLUE"
2727
2828 let m = ((1 * f) / 2)
2929
3030 let n = (100 * f)
3131
3232 let o = 0
3333
3434 let p = 1
3535
3636 let q = 2
3737
3838 let r = 3
3939
4040 let s = 4
4141
4242 let t = 5
4343
4444 let u = 6
4545
4646 let v = 7
4747
4848 let w = 8
4949
5050 func x () = {
5151 let y = {
5252 let z = getInteger(this, b)
5353 if ($isInstanceOf(z, "Int"))
5454 then {
5555 let A = z
5656 A
5757 }
5858 else 0
5959 }
6060 (y + 1)
6161 }
6262
6363
6464 func B (C,D,E) = {
6565 let F = {
6666 let z = getBinary(this, "lastPlay")
6767 if ($isInstanceOf(z, "ByteVector"))
6868 then {
6969 let G = z
7070 G
7171 }
7272 else if ($isInstanceOf(z, "Unit"))
7373 then {
7474 let H = z
7575 base58'2ee4oFDYriWJ9EMeR'
7676 }
7777 else throw()
7878 }
7979 let I = (((((F + C.transactionId) + C.callerPublicKey) + lastBlock.generationSignature) + toBytes(lastBlock.timestamp)) + toBytes(lastBlock.height))
8080 (((toInt(sha256(I)) % 1000) % ((D - E) + 1)) + 1)
8181 }
8282
8383
8484 func J (K) = if ((K.assetId == c))
8585 then "WBET"
8686 else "WAVES"
8787
8888
8989 func L (M) = if ((M == "WBET"))
9090 then c
9191 else unit
9292
9393
9494 func N (O) = {
9595 let G = size(O)
9696 if ((G == 0))
9797 then throw("Parameter size must be greater then 0")
9898 else if ((G > 99))
9999 then throw("Parameter size must be less then 100")
100100 else if ((10 > G))
101101 then (("0" + toString(G)) + O)
102102 else (toString(G) + O)
103103 }
104104
105105
106106 func P (Q,R,S,T,U,V,W,X,Y) = {
107107 let Z = ((((((((((N(Q) + "_") + N(R)) + "_") + N(S)) + "_") + N(T)) + "_") + N(toString(U))) + "_") + N(toString(V)))
108108 if (if (if ((W == ""))
109109 then true
110110 else (X == ""))
111111 then true
112112 else (Y == ""))
113113 then Z
114114 else ((((((Z + "_") + N(W)) + "_") + N(X)) + "_") + N(Y))
115115 }
116116
117117
118118 func aa (ab) = if ((size(ab) > 0))
119119 then drop(ab, 1)
120120 else ab
121121
122122
123123 func ac (ab) = {
124124 let G = size(ab)
125125 if ((G > 0))
126126 then {
127127 let ad = parseIntValue(take(ab, 2))
128128 let ae = take(drop(ab, 2), ad)
129129 let af = drop(ab, (ad + 2))
130130 let ag = aa(af)
131131 [ae, ag]
132132 }
133133 else throw("Empty string was passed into parseNextAttribute func")
134134 }
135135
136136
137137 func ah (ai) = {
138138 let Q = ac(ai)
139139 let aj = ac(Q[1])
140140 let ak = ac(aj[1])
141141 let T = ac(ak[1])
142142 let al = ac(T[1])
143143 let V = ac(al[1])
144144 [Q[0], aj[0], ak[0], T[0], al[0], V[0]]
145145 }
146146
147147
148148 func am (an) = {
149- let ao = {
150- let z = getString(this, an)
151- if ($isInstanceOf(z, "String"))
152- then {
153- let ap = z
154- ap
155- }
156- else throw(("Couldn't find game by " + an))
157- }
158- ah(ao)
149+ let ao = getStringValue(this, an)
150+ throw(ao)
159151 }
160152
161153
162-func aq (ar,as,J) = if (if ((as != k))
163- then (as != l)
154+func ap (aq,ar,J) = if (if ((ar != k))
155+ then (ar != l)
164156 else false)
165157 then throw("Invalid play, change your bet to RED or BLUE coin. Game aborted.")
166158 else if (if ((J == "WBET"))
167- then (n > ar)
159+ then (n > aq)
168160 else false)
169161 then throw(("The minimum bet on Wbet is " + toString((n / f))))
170162 else if (if ((J == "WAVES"))
171- then (m > ar)
163+ then (m > aq)
172164 else false)
173165 then throw(("The minimum bet on Waves is " + toString((m / f))))
174- else (((ar * 2) * (100 - (d + e))) / 100)
166+ else (((aq * 2) * (100 - (d + e))) / 100)
175167
176168
177-@Callable(at)
169+@Callable(as)
178170 func playCoin (aj) = {
179- let an = toBase58String(at.transactionId)
180- let au = isDefined(getString(this, an))
181- let K = extract(at.payment)
182- let av = isDefined(at.feeAssetId)
171+ let an = toBase58String(as.transactionId)
172+ let at = isDefined(getString(this, an))
173+ let K = extract(as.payment)
174+ let au = isDefined(as.feeAssetId)
183175 if (if ((K.assetId != assetInfo(base58'WAVES')))
184176 then (K.assetId != c)
185177 else false)
186178 then throw("Payment should be in Wbet or Waves. Game aborted.")
187- else if (av)
179+ else if (au)
188180 then throw("Transaction's fee must be in Waves. Game aborted.")
189- else if (au)
181+ else if (at)
190182 then throw("Passed gameId had been used before. Game aborted.")
191183 else {
192- let aw = x()
193- let S = toBase58String(at.callerPublicKey)
184+ let av = x()
185+ let S = toBase58String(as.callerPublicKey)
194186 let T = J(K)
195- let V = aq(K.amount, aj, T)
196- let ax = P(g, aj, S, T, K.amount, V, "", "", "")
197- ScriptResult(WriteSet([DataEntry(b, aw), DataEntry(an, ax)]), TransferSet(nil))
187+ let V = ap(K.amount, aj, T)
188+ let aw = P(g, aj, S, T, K.amount, V, "", "", "")
189+ ScriptResult(WriteSet([DataEntry(b, av), DataEntry(an, aw)]), TransferSet(nil))
198190 }
199191 }
200192
201193
202194
203-@Callable(at)
204-func acceptCoinChallenge (an,ay) = {
205- let az = am(an)
206- let Q = az[o]
207- let aj = az[p]
208- let ak = az[q]
209- let T = az[r]
210- let al = parseIntValue(az[s])
211- let V = parseIntValue(az[t])
212- let K = extract(at.payment)
213- let av = isDefined(at.feeAssetId)
214- let aA = toBase58String(at.callerPublicKey)
215- let aB = J(K)
216- if (if ((K.assetId != assetInfo(base58'WAVES')))
217- then (K.assetId != c)
218- else false)
219- then throw("Payment should be in Wbet or Waves. Game aborted.")
220- else if (av)
221- then throw("Transaction's fee must be in Waves. Game aborted.")
222- else if ((ak == aA))
223- then throw("You can't accept a challenge created by yourself. Game aborted.")
224- else if ((T != aB))
225- then throw("Payment must be made in the same currency token as the bet, WBET/WBET or WAVES/WAVES. Game aborted.")
226- else if ((al != K.amount))
227- then throw("Payout must be equal to the challenger bet amount. Game aborted.")
228- else if ((Q != g))
229- then throw("Invalid game state for passed gameId. Game aborted.")
230- else {
231- let I = B(at, 100, 0)
232- let Y = if ((I > 50))
233- then k
234- else l
235- let aC = if ((aj == k))
236- then l
237- else k
238- let aD = P(h, aj, ak, T, al, V, aC, aA, Y)
239- ScriptResult(WriteSet([DataEntry(an, aD)]), TransferSet(nil))
240- }
241- }
242-
243-
244-
245-@Callable(at)
195+@Callable(as)
246196 func cancelCoinChallenge (an) = {
247- let az = am(an)
197+ let ax = am(an)
248198 throw("asdasd")
249199 }
250200
251201

github/deemru/w8io/026f985 
36.88 ms