tx · 7jgSdEE1AWDQrBxi6KrsYNRvHPtd9qx7ratvUZLmff8p

3N3AeA5FWm7EHheHoik8BBEA3GXXJosnVY8:  -0.01000000 Waves

2019.10.07 13:40 [709248] smart account 3N3AeA5FWm7EHheHoik8BBEA3GXXJosnVY8 > SELF 0.00000000 Waves

{ "type": 13, "id": "7jgSdEE1AWDQrBxi6KrsYNRvHPtd9qx7ratvUZLmff8p", "fee": 1000000, "feeAssetId": null, "timestamp": 1570444763927, "version": 1, "sender": "3N3AeA5FWm7EHheHoik8BBEA3GXXJosnVY8", "senderPublicKey": "87US7E5SdpUB7rbkzLmEUKfYg7uihzCvRzEKy1mCNNjq", "proofs": [ "4jugSpKC2zw8CjV5cvJqJkk6fayAQ9JPMJQiLYhoLKKoZAi8mMNFbfs69QwwbF3sZGur6kxMmF5vMXDjJh9Acsx9" ], "script": "base64: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", "chainId": 84, "height": 709248, "spentComplexity": 0 } View: original | compacted Prev: none Next: 2Ux5thrhHBmcJP51GNeJjJo1zUtjESf47BBrk15fSgVV Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let q1start = 190
5+
6+let q2start = 190
7+
8+let vig = 5
9+
10+let s = 10
11+
12+func coef (q,dif) = {
13+ let coef = ((q * (((-47 * dif) * dif) + 10000)) / 10000)
14+ coef
15+ }
16+
17+
18+func anothercoef (q,dif) = {
19+ let actualvig = ((vig * ((((-95 * dif) * dif) + (1877 * dif)) + 10000)) / 10000)
20+ let anothercoef = pow(((vig + 1000) - (100000 / q)), 0, -1, 0, 5, DOWN)
21+ if ((anothercoef > 270))
22+ then 270
23+ else anothercoef
24+ }
25+
26+
27+@Callable(contextObj)
28+func bet (event) = {
29+ let payment = match contextObj.payment {
30+ case p: AttachedPayment =>
31+ if ((100000000 > p.amount))
32+ then throw("low payment")
33+ else p
34+ case _ =>
35+ throw("Payment not attached")
36+ }
37+ let n = getIntegerValue(this, "n")
38+ let m = getIntegerValue(this, "m")
39+ let count = getIntegerValue(this, "count")
40+ let difold = (n - m)
41+ let event1amount = match getInteger(this, (toString(contextObj.caller) + "_event1amount")) {
42+ case u: Unit =>
43+ 0
44+ case i: Int =>
45+ i
46+ case _ =>
47+ throw()
48+ }
49+ let event2amount = match getInteger(this, (toString(contextObj.caller) + "_event2amount")) {
50+ case u: Unit =>
51+ 0
52+ case i: Int =>
53+ i
54+ case _ =>
55+ throw()
56+ }
57+ let dif = if ((event == 1))
58+ then (difold + 1)
59+ else (difold - 1)
60+ let q1 = if ((dif >= 0))
61+ then coef(q1start, dif)
62+ else anothercoef(q1start, dif)
63+ let q2 = if ((dif >= 0))
64+ then coef(q2start, dif)
65+ else anothercoef(q2start, dif)
66+ let q1next = if (((dif + 1) >= 0))
67+ then coef(q1start, (dif + 1))
68+ else anothercoef(q1start, (dif + 1))
69+ let q2next = if (((dif - 1) >= 0))
70+ then coef(q2start, (dif - 1))
71+ else anothercoef(q2start, (dif - 1))
72+ let nNew = (n + 1)
73+ let countNew = (count + 1)
74+ WriteSet([DataEntry((toString(contextObj.caller) + "_event1amount"), (event1amount + coef(q1start, (n - m)))), DataEntry((toString(countNew) + "_event"), event), DataEntry((toString(countNew) + "_qoef1"), q1), DataEntry((toString(countNew) + "_qoef2"), q2), DataEntry((toString(countNew) + "_bettor"), toString(contextObj.caller)), DataEntry("q1_next", q1next), DataEntry("q2_next", q2next), DataEntry("n", nNew), DataEntry("count", countNew)])
75+ }
76+
77+
78+
79+@Callable(contextObj)
80+func withdraw () = {
81+ let event1amount = match getInteger(this, (toString(contextObj.caller) + "_event1amount")) {
82+ case u: Unit =>
83+ 0
84+ case i: Int =>
85+ i
86+ case _ =>
87+ throw()
88+ }
89+ let event2amount = match getInteger(this, (toString(contextObj.caller) + "_event2amount")) {
90+ case u: Unit =>
91+ 0
92+ case i: Int =>
93+ i
94+ case _ =>
95+ throw()
96+ }
97+ let event1 = match getBoolean(this, "result_event_1") {
98+ case u: Unit =>
99+ false
100+ case b: Boolean =>
101+ b
102+ case _ =>
103+ throw()
104+ }
105+ let event2 = match getBoolean(this, "result_event_2") {
106+ case u: Unit =>
107+ false
108+ case b: Boolean =>
109+ b
110+ case _ =>
111+ throw()
112+ }
113+ if (event1)
114+ then ScriptResult(WriteSet([DataEntry((toString(contextObj.caller) + "_event1amount"), 0)]), TransferSet([ScriptTransfer(contextObj.caller, (event1amount * 1000000), unit)]))
115+ else if (event2)
116+ then ScriptResult(WriteSet([DataEntry((toString(contextObj.caller) + "_event2amount"), 0)]), TransferSet([ScriptTransfer(contextObj.caller, (event2amount * 1000000), unit)]))
117+ else throw("event did not happen or you have zero win")
118+ }
119+
120+

github/deemru/w8io/169f3d6 
22.10 ms