tx · 7n2troJr2UBbqcxUrhxzZx9dhaVdBfFtpoksaevf69EE

3N2Z6EjzrzaCpD8ypDYLWDKe2PPVU8y9dJs:  -0.01400000 Waves

2019.09.08 04:56 [666478] smart account 3N2Z6EjzrzaCpD8ypDYLWDKe2PPVU8y9dJs > SELF 0.00000000 Waves

{ "type": 13, "id": "7n2troJr2UBbqcxUrhxzZx9dhaVdBfFtpoksaevf69EE", "fee": 1400000, "feeAssetId": null, "timestamp": 1567907785082, "version": 1, "sender": "3N2Z6EjzrzaCpD8ypDYLWDKe2PPVU8y9dJs", "senderPublicKey": "HSTmdhPrJF81ozDBaqVn8QVtV76oD7gzDfcHPQRdxdwW", "proofs": [ "3cCpNXTe1FCzGkWnsd18ff4hnyQcjNc7bCk3WrnacmaBXQ3vDJmgtaTWw8zbiHasPaTgA8DBirA82YzeTDeRL9Fh" ], "script": "base64:AAIDAAAAAAAAAAAAAAAPAAAAAAlXaW5TZXJ2ZXIJAQAAABxAZXh0clVzZXIoYWRkcmVzc0Zyb21TdHJpbmcpAAAAAQIAAAAjM045WG55UHBXeFlvaEtIN3o1ZEV1cThycG5vYnB5elByekUAAAAAB1dBVkVMRVQJAABoAAAAAgkAAGgAAAACAAAAAAAAAABkAAAAAAAAAAPoAAAAAAAAAAPoAAAAAApDT01NSVNTSU9OCQAAaQAAAAIJAABoAAAAAgAAAAAAAAAABQUAAAAHV0FWRUxFVAAAAAAAAAAD6AAAAAAOVGlja2V0c1BlcldhdmUAAAAAAAAAAGQAAAAAC0NVUlJFTlRHQU1FAgAAAA0kQ1VSUkVOVF9HQU1FAAAAAA9HQU1FU0NPVU5URVJLRVkCAAAACSRHQU1FX05VTQAAAAAKTEFTVFRJQ0tFVAIAAAAMJExBU1RfVElDS0VUAQAAAA5nZXRQbGF5ZXJzTGlzdAAAAAIAAAAGZ2FtZUlkAAAADWN1cnJlbnRQbGF5ZXIEAAAAEHBsYXllcnNQcmVzZW50ZWQJAQAAAAlpc0RlZmluZWQAAAABCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAGZ2FtZUlkAgAAAAhfcGxheWVycwMJAQAAAAEhAAAAAQUAAAAQcGxheWVyc1ByZXNlbnRlZAUAAAANY3VycmVudFBsYXllcgMJAQAAAAlpc0RlZmluZWQAAAABCQAEHQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAABmdhbWVJZAIAAAABXwUAAAANY3VycmVudFBsYXllcgIAAAAIX3RpY2tldHMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAGZ2FtZUlkAgAAAAhfcGxheWVycwkAASwAAAACCQABLAAAAAIJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgUAAAAGZ2FtZUlkAgAAAAhfcGxheWVycwIAAAABXwUAAAANY3VycmVudFBsYXllcgEAAAATRm9ybWF0R2FtZURhdGFQYXJhbQAAAAEAAAABcAQAAAABcwkAATEAAAABBQAAAAFwAwkAAAAAAAACBQAAAAFzAAAAAAAAAAAACQAAAgAAAAECAAAAJVBhcmFtZXRlciBzaXplIG11c3QgYmUgZ3JlYXRlciB0aGVuIDADCQAAZgAAAAIFAAAAAXMAAAAAAAAAAGMJAAACAAAAAQIAAAAkUGFyYW1ldGVyIHNpemUgbXVzdCBiZSBsZXNzIHRoZW4gMTAwAwkAAGYAAAACAAAAAAAAAAAKBQAAAAFzCQABLAAAAAIJAAEsAAAAAgIAAAABMAkAAaQAAAABBQAAAAFzBQAAAAFwCQABLAAAAAIJAAGkAAAAAQUAAAABcwUAAAABcAEAAAAVZ2V0T3JDcmVhdGVMYXN0VGlja2V0AAAAAAQAAAAVaXNMYXN0VGlja2V0UHJlc2VudGVkCQEAAAAJaXNEZWZpbmVkAAAAAQkABB0AAAACBQAAAAR0aGlzBQAAAApMQVNUVElDS0VUAwkBAAAAASEAAAABBQAAABVpc0xhc3RUaWNrZXRQcmVzZW50ZWQAAAAAAAAAAAAJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMFAAAACkxBU1RUSUNLRVQBAAAACmdldFRpY2tldHMAAAADAAAABmdhbWVJZAAAABBwbGF5ZXJBZGRyZXNzU3RyAAAACnBheW1lbnRBbXQEAAAACmxhc3RUaWNrZXQJAQAAABVnZXRPckNyZWF0ZUxhc3RUaWNrZXQAAAAABAAAAAx3YXZlc1BheW1lbnQJAABpAAAAAgUAAAAKcGF5bWVudEFtdAUAAAAHV0FWRUxFVAQAAAAOZmlyc3ROZXdUaWNrZXQJAABkAAAAAgUAAAAKbGFzdFRpY2tldAAAAAAAAAAAAQQAAAANbGFzdE5ld1RpY2tldAkAAGUAAAACCQAAZAAAAAIFAAAADmZpcnN0TmV3VGlja2V0CQAAaAAAAAIFAAAADHdhdmVzUGF5bWVudAUAAAAOVGlja2V0c1BlcldhdmUAAAAAAAAAAAEEAAAACm5ld1RpY2tldHMJAAEsAAAAAgkAASwAAAACCQEAAAATRm9ybWF0R2FtZURhdGFQYXJhbQAAAAEJAAGkAAAAAQUAAAAOZmlyc3ROZXdUaWNrZXQCAAAAAV8JAQAAABNGb3JtYXRHYW1lRGF0YVBhcmFtAAAAAQkAAaQAAAABBQAAAA1sYXN0TmV3VGlja2V0BAAAAAp0aWNrZXRzU3RyCQEAAAAJaXNEZWZpbmVkAAAAAQkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAZnYW1lSWQCAAAAAV8FAAAAEHBsYXllckFkZHJlc3NTdHICAAAACF90aWNrZXRzAwUAAAAKdGlja2V0c1N0cgQAAAAOY3VycmVudFRpY2tldHMJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAABmdhbWVJZAIAAAABXwUAAAAQcGxheWVyQWRkcmVzc1N0cgIAAAAIX3RpY2tldHMJAAEsAAAAAgkAASwAAAACBQAAAA5jdXJyZW50VGlja2V0cwIAAAABIAUAAAAKbmV3VGlja2V0cwUAAAAKbmV3VGlja2V0cwEAAAANZ2V0TGFzdFRpY2tldAAAAAEAAAAKcGF5bWVudEFtdAQAAAAKbGFzdFRpY2tldAkBAAAAFWdldE9yQ3JlYXRlTGFzdFRpY2tldAAAAAAEAAAADHdhdmVzUGF5bWVudAkAAGkAAAACBQAAAApwYXltZW50QW10BQAAAAdXQVZFTEVUCQAAZAAAAAIFAAAACmxhc3RUaWNrZXQJAABoAAAAAgUAAAAMd2F2ZXNQYXltZW50BQAAAA5UaWNrZXRzUGVyV2F2ZQEAAAAQSW5jcmVtZW50R2FtZU51bQAAAAIAAAAGZ2FtZUlkAAAABHR4SWQDCQAAAAAAAAIFAAAABmdhbWVJZAUAAAAEdHhJZAQAAAAHZ2FtZU51bQQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzBQAAAA9HQU1FU0NPVU5URVJLRVkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAADbnVtBQAAAAckbWF0Y2gwBQAAAANudW0AAAAAAAAAAAAJAAGkAAAAAQkAAGQAAAACBQAAAAdnYW1lTnVtAAAAAAAAAAABCQABpAAAAAEJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMFAAAAD0dBTUVTQ09VTlRFUktFWQEAAAAWZ2V0T3JDcmVhdGVDdXJyZW50R2FtZQAAAAEAAAAEdHhJZAQAAAAWaXNDdXJyZW50R2FtZVByZXNlbnRlZAkBAAAACWlzRGVmaW5lZAAAAAEJAAQdAAAAAgUAAAAEdGhpcwUAAAALQ1VSUkVOVEdBTUUDCQEAAAABIQAAAAEFAAAAFmlzQ3VycmVudEdhbWVQcmVzZW50ZWQFAAAABHR4SWQJAQAAABFAZXh0ck5hdGl2ZSgxMDUzKQAAAAIFAAAABHRoaXMFAAAAC0NVUlJFTlRHQU1FAQAAAA5nZXRDdXJyZW50R2FtZQAAAAEAAAAEdHhJZAQAAAAGZ2FtZUlkCQEAAAAWZ2V0T3JDcmVhdGVDdXJyZW50R2FtZQAAAAEFAAAABHR4SWQEAAAAEWdhbWVBbHJlYWR5UGxheWVkCQEAAAAJaXNEZWZpbmVkAAAAAQkABB0AAAACBQAAAAR0aGlzCQABLAAAAAIFAAAABmdhbWVJZAIAAAAHX3Jlc3VsdAMFAAAAEWdhbWVBbHJlYWR5UGxheWVkBQAAAAR0eElkBQAAAAZnYW1lSWQAAAABAAAAAWkBAAAAA2JldAAAAAAEAAAABHR4SWQJAAJYAAAAAQgFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAQAAAAGZ2FtZUlkCQEAAAAOZ2V0Q3VycmVudEdhbWUAAAABBQAAAAR0eElkBAAAAAZkYkRhdGEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAC0NVUlJFTlRHQU1FBQAAAAZnYW1lSWQFAAAAA25pbAkBAAAACFdyaXRlU2V0AAAAAQUAAAAGZGJEYXRhAAAAAEkpCUk=", "chainId": 84, "height": 666478, "spentComplexity": 0 } View: original | compacted Prev: 2tr2h2PdH4osh7f7y87w7zUjDEszabV6rLJ2ZLFXaEjW Next: CDDDYcTYzwbaa97Rc6LjApJ8rNGVX2WXdudi14eBLeuL Diff:
OldNewDifferences
105105 func bet () = {
106106 let C = toBase58String(K.transactionId)
107107 let i = I(C)
108- let D = B(i, C)
109- let L = extract(K.payment)
110- let s = L.amount
111- let M = isDefined(L.assetId)
112- let N = isDefined(L.assetId)
113- let O = toBase58String(K.callerPublicKey)
114- let P = addressFromPublicKey(fromBase58String(O))
115- if (M)
116- then throw("Bet amount must be in Waves")
117- else if (N)
118- then throw("Transaction's fee must be in Waves")
119- else {
120- let r = toString(P)
121- let Q = [DataEntry(e, i), DataEntry(f, D), DataEntry((((i + "_") + r) + "_tickets"), q(i, r, s)), DataEntry((i + "_players"), h(i, r)), DataEntry(g, A(s))]
122- let R = [ScriptTransfer(a, s, unit)]
123- ScriptResult(WriteSet(Q), TransferSet(R))
124- }
108+ let L = [DataEntry(e, i)]
109+ WriteSet(L)
125110 }
126111
127112
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = addressFromStringValue("3N9XnyPpWxYohKH7z5dEuq8rpnobpyzPrzE")
55
66 let b = ((100 * 1000) * 1000)
77
88 let c = ((5 * b) / 1000)
99
1010 let d = 100
1111
1212 let e = "$CURRENT_GAME"
1313
1414 let f = "$GAME_NUM"
1515
1616 let g = "$LAST_TICKET"
1717
1818 func h (i,j) = {
1919 let k = isDefined(getString(this, (i + "_players")))
2020 if (!(k))
2121 then j
2222 else if (isDefined(getString(this, (((i + "_") + j) + "_tickets"))))
2323 then getStringValue(this, (i + "_players"))
2424 else ((getStringValue(this, (i + "_players")) + "_") + j)
2525 }
2626
2727
2828 func l (m) = {
2929 let n = size(m)
3030 if ((n == 0))
3131 then throw("Parameter size must be greater then 0")
3232 else if ((n > 99))
3333 then throw("Parameter size must be less then 100")
3434 else if ((10 > n))
3535 then (("0" + toString(n)) + m)
3636 else (toString(n) + m)
3737 }
3838
3939
4040 func o () = {
4141 let p = isDefined(getString(this, g))
4242 if (!(p))
4343 then 0
4444 else getIntegerValue(this, g)
4545 }
4646
4747
4848 func q (i,r,s) = {
4949 let t = o()
5050 let u = (s / b)
5151 let v = (t + 1)
5252 let w = ((v + (u * d)) - 1)
5353 let x = ((l(toString(v)) + "_") + l(toString(w)))
5454 let y = isDefined(getString(this, (((i + "_") + r) + "_tickets")))
5555 if (y)
5656 then {
5757 let z = getStringValue(this, (((i + "_") + r) + "_tickets"))
5858 ((z + " ") + x)
5959 }
6060 else x
6161 }
6262
6363
6464 func A (s) = {
6565 let t = o()
6666 let u = (s / b)
6767 (t + (u * d))
6868 }
6969
7070
7171 func B (i,C) = if ((i == C))
7272 then {
7373 let D = {
7474 let E = getInteger(this, f)
7575 if ($isInstanceOf(E, "Int"))
7676 then {
7777 let F = E
7878 F
7979 }
8080 else 0
8181 }
8282 toString((D + 1))
8383 }
8484 else toString(getIntegerValue(this, f))
8585
8686
8787 func G (C) = {
8888 let H = isDefined(getString(this, e))
8989 if (!(H))
9090 then C
9191 else getStringValue(this, e)
9292 }
9393
9494
9595 func I (C) = {
9696 let i = G(C)
9797 let J = isDefined(getString(this, (i + "_result")))
9898 if (J)
9999 then C
100100 else i
101101 }
102102
103103
104104 @Callable(K)
105105 func bet () = {
106106 let C = toBase58String(K.transactionId)
107107 let i = I(C)
108- let D = B(i, C)
109- let L = extract(K.payment)
110- let s = L.amount
111- let M = isDefined(L.assetId)
112- let N = isDefined(L.assetId)
113- let O = toBase58String(K.callerPublicKey)
114- let P = addressFromPublicKey(fromBase58String(O))
115- if (M)
116- then throw("Bet amount must be in Waves")
117- else if (N)
118- then throw("Transaction's fee must be in Waves")
119- else {
120- let r = toString(P)
121- let Q = [DataEntry(e, i), DataEntry(f, D), DataEntry((((i + "_") + r) + "_tickets"), q(i, r, s)), DataEntry((i + "_players"), h(i, r)), DataEntry(g, A(s))]
122- let R = [ScriptTransfer(a, s, unit)]
123- ScriptResult(WriteSet(Q), TransferSet(R))
124- }
108+ let L = [DataEntry(e, i)]
109+ WriteSet(L)
125110 }
126111
127112

github/deemru/w8io/169f3d6 
25.18 ms