tx · DdK46bkqFfeHn3a2D16R8bkEqHTMRZSe4CkjpXotRh1x

3Mwrp2qjU4mGuhz7LtQW9zgZNveSMaJpVjh:  -0.01000000 Waves

2019.06.22 11:58 [553014] smart account 3Mwrp2qjU4mGuhz7LtQW9zgZNveSMaJpVjh > SELF 0.00000000 Waves

{ "type": 13, "id": "DdK46bkqFfeHn3a2D16R8bkEqHTMRZSe4CkjpXotRh1x", "fee": 1000000, "feeAssetId": null, "timestamp": 1561193903078, "version": 1, "sender": "3Mwrp2qjU4mGuhz7LtQW9zgZNveSMaJpVjh", "senderPublicKey": "BPdgKmUQzY33CUMjBd4VCdJyvf5j1kqTdczhDG76H4bF", "proofs": [ "3k2HxVSP8hJQ8Kd5EJqSefch9VuKsT1nnPpajmvaPnspaV8y2xpDHvGcB35cxZRvpua5RAr2LoyF3KLE69f3LrB4" ], "script": "base64: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SWR4VHJhZGVQYWlyCQAAAgAAAAECAAAAM1RyeWluZyB0byBtYXRjaCBvcmRlcnMgZnJvbSBkaWZmZXJlbnQgdHJhZGluZyBwYWlycwMJAAAAAAAAAgkAAZEAAAACBQAAAAZvcmRlcjEFAAAADElkeE9yZGVyVHlwZQkAAZEAAAACBQAAAAZvcmRlcjIFAAAADElkeE9yZGVyVHlwZQkAAAIAAAABAgAAACdUcnlpbmcgdG8gbWF0Y2ggb3JkZXJzIG9mIHRoZSBzYW1lIHR5cGUEAAAADG9yZGVyMWlzU2VsbAkAAAAAAAACCQABkQAAAAIFAAAABm9yZGVyMQUAAAAMSWR4T3JkZXJUeXBlBQAAAARTRUxMBAAAAAlzZWxsT3JkZXIDBQAAAAxvcmRlcjFpc1NlbGwFAAAABm9yZGVyMQUAAAAGb3JkZXIyBAAAAAhidXlPcmRlcgMJAQAAAAEhAAAAAQUAAAAMb3JkZXIxaXNTZWxsBQAAAAZvcmRlcjEFAAAABm9yZGVyMgQAAAAJc2VsbFByaWNlCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgUAAAAJc2VsbE9yZGVyBQAAAAhJZHhQcmljZQQAAAAIYnV5UHJpY2UJAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACBQAAAAhidXlPcmRlcgUAAAAISWR4UHJpY2UEAAAAD3NlbGxPcmRlckFtb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACXNlbGxPcmRlcgUAAAAJSWR4QW1vdW50BAAAAA5idXlPcmRlckFtb3VudAkBAAAADXBhcnNlSW50VmFsdWUAAAABCQABkQAAAAIFAAAACGJ1eU9yZGVyBQAAAAlJZHhBbW91bnQDCQAAZgAAAAIFAAAACXNlbGxQcmljZQUAAAAIYnV5UHJpY2UJAAACAAAAAQIAAAAdT3JkZXJzIGFyZSBub3QgbWF0Y2ggYnkgcHJpY2UEAAAADWV4Y2hhbmdlUHJpY2UFAAAACXNlbGxQcmljZQQAAAALYW1vdW50QXNzZXQJAQAAABFhc3NldElkRnJvbVN0cmluZwAAAAEJAAGRAAAAAgUAAAAIYnV5T3JkZXIFAAAACklkeEFzc2V0SWQEAAAAE2Ftb3VudEFzc2V0RGVjaW1hbHMDCQAAAAAAAAIJAAGRAAAAAgUAAAAIYnV5T3JkZXIFAAAACklkeEFzc2V0SWQCAAAABVdBVkVTAAAAAAAAAAAICAkBAAAABXZhbHVlAAAAAQkAA+wAAAABCQEAAAAFdmFsdWUAAAABBQAAAAthbW91bnRBc3NldAAAAAhkZWNpbWFscwQAAAAJYnV5QW1vdW50CQAAaQAAAAIJAABoAAAAAgUAAAAOYnV5T3JkZXJBbW91bnQJAABsAAAABgAAAAAAAAAACgAAAAAAAAAAAAUAAAATYW1vdW50QXNzZXREZWNpbWFscwAAAAAAAAAAAAAAAAAAAAAAAAkBAAAAB0NlaWxpbmcAAAAABQAAAA1leGNoYW5nZVByaWNlBAAAAApzZWxsQW1vdW50BQAAAA9zZWxsT3JkZXJBbW91bnQEAAAAEWFtb3VudEFzc2V0QW1vdW50AwkAAGcAAAACBQAAAAlidXlBbW91bnQFAAAACnNlbGxBbW91bnQFAAAACnNlbGxBbW91bnQFAAAACWJ1eUFtb3VudAQAAAAQcHJpY2VBc3NldEFtb3VudAkAAGgAAAACBQAAABFhbW91bnRBc3NldEFtb3VudAUAAAANZXhjaGFuZ2VQcmljZQQAAAANdXBkYXRlZEJ1eVN0cgkBAAAAEkZvcm1hdE9yZGVyRGF0YVN0cgAAAAYJAAGRAAAAAgUAAAAIYnV5T3JkZXIFAAAADElkeFRyYWRlUGFpcgkAAZEAAAACBQAAAAhidXlPcmRlcgUAAAAJSWR4U2VuZGVyCQABkQAAAAIFAAAACGJ1eU9yZGVyBQAAAAxJZHhPcmRlclR5cGUFAAAACGJ1eVByaWNlCQAAZQAAAAIFAAAADmJ1eU9yZGVyQW1vdW50BQAAABBwcmljZUFzc2V0QW1vdW50CQABkQAAAAIFAAAACGJ1eU9yZGVyBQAAAApJZHhBc3NldElkBAAAAA51cGRhdGVkU2VsbFN0cgkBAAAAEkZvcm1hdE9yZGVyRGF0YVN0cgAAAAYJAAGRAAAAAgUAAAAJc2VsbE9yZGVyBQAAAAxJZHhUcmFkZVBhaXIJAAGRAAAAAgUAAAAJc2VsbE9yZGVyBQAAAAlJZHhTZW5kZXIJAAGRAAAAAgUAAAAJc2VsbE9yZGVyBQAAAAxJZHhPcmRlclR5cGUFAAAACXNlbGxQcmljZQkAAGUAAAACBQAAAA9zZWxsT3JkZXJBbW91bnQFAAAAEWFtb3VudEFzc2V0QW1vdW50CQABkQAAAAIFAAAACXNlbGxPcmRlcgUAAAAKSWR4QXNzZXRJZAkAAAIAAAABCQABLAAAAAIFAAAADXVwZGF0ZWRCdXlTdHIFAAAADnVwZGF0ZWRTZWxsU3RyAAAAAWkBAAAAEXJlZ2lzdGVyVHJhaWRQYWlyAAAAAwAAAAZhc3NldDEAAAAKcHJpY2VBc3NldAAAAAl0cmFpZFBhaXIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAZhc3NldDECAAAAAS8FAAAACnByaWNlQXNzZXQFAAAACXRyYWlkUGFpcgUAAAADbmlsAAAAAMY4eMI=", "chainId": 84, "height": 553014, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let a = 0
5+
6+let b = 1
7+
8+let c = 2
9+
10+let d = 3
11+
12+let e = 4
13+
14+let f = 5
15+
16+let g = "BUY"
17+
18+let h = "SELL"
19+
20+func i (j) = if ((size(j) > 0))
21+ then drop(j, 1)
22+ else j
23+
24+
25+func k (l) = {
26+ let m = size(l)
27+ if ((m == 0))
28+ then throw("Parameter size must be greater then 0")
29+ else if ((m > 99))
30+ then throw("Parameter size must be less then 100")
31+ else if ((10 > m))
32+ then (("0" + toString(m)) + l)
33+ else (toString(m) + l)
34+ }
35+
36+
37+func n (j) = {
38+ let m = size(j)
39+ if ((m > 0))
40+ then {
41+ let o = parseIntValue(take(j, 2))
42+ let p = take(drop(j, 2), o)
43+ let q = drop(j, (o + 2))
44+ let r = i(q)
45+[p, r]
46+ }
47+ else throw("Empty string was passed into parseNextAttribute func")
48+ }
49+
50+
51+func s (t,u,v,w,x,y) = {
52+ let z = ((((((((((k(t) + "_") + k(u)) + "_") + k(v)) + "_") + k(toString(w))) + "_") + k(toString(x))) + "_") + k(y))
53+ z
54+ }
55+
56+
57+func A (B) = {
58+ let C = n(B)
59+ let u = n(C[1])
60+ let v = n(u[1])
61+ let w = n(v[1])
62+ let x = n(w[1])
63+ let y = n(x[1])
64+[w[0], x[0], C[0], v[0], u[0], y[0]]
65+ }
66+
67+
68+func D (y) = if (if ((y == "WAVES"))
69+ then true
70+ else (y == ""))
71+ then unit
72+ else fromBase58String(y)
73+
74+
75+@Callable(E)
76+func order (y,w) = {
77+ let F = extract(E.payment)
78+ let G = if (isDefined(F.assetId))
79+ then toBase58String(value(F.assetId))
80+ else "WAVES"
81+ let H = getString(this, ((y + "/") + G))
82+ let I = getString(this, ((G + "/") + y))
83+ let t = if (isDefined(H))
84+ then value(H)
85+ else if (isDefined(I))
86+ then value(I)
87+ else throw("Traiding for that assets is not supported")
88+ let v = if (isDefined(H))
89+ then g
90+ else h
91+ let J = s(t, toBase58String(E.caller.bytes), v, w, F.amount, y)
92+ WriteSet([DataEntry(toBase58String(E.transactionId), J)])
93+ }
94+
95+
96+
97+@Callable(E)
98+func matchOrders (K,L) = {
99+ let M = getStringValue(this, K)
100+ let N = getStringValue(this, L)
101+ let O = A(M)
102+ let P = A(N)
103+ if ((O[c] != P[c]))
104+ then throw("Trying to match orders from different trading pairs")
105+ else if ((O[d] == P[d]))
106+ then throw("Trying to match orders of the same type")
107+ else {
108+ let Q = (O[d] == h)
109+ let R = if (Q)
110+ then O
111+ else P
112+ let S = if (!(Q))
113+ then O
114+ else P
115+ let T = parseIntValue(R[a])
116+ let U = parseIntValue(S[a])
117+ let V = parseIntValue(R[b])
118+ let W = parseIntValue(S[b])
119+ if ((T > U))
120+ then throw("Orders are not match by price")
121+ else {
122+ let X = T
123+ let Y = D(S[f])
124+ let Z = if ((S[f] == "WAVES"))
125+ then 8
126+ else value(assetInfo(value(Y))).decimals
127+ let aa = ((W * pow(10, 0, Z, 0, 0, Ceiling())) / X)
128+ let ab = V
129+ let ac = if ((aa >= ab))
130+ then ab
131+ else aa
132+ let ad = (ac * X)
133+ let ae = s(S[c], S[e], S[d], U, (W - ad), S[f])
134+ let af = s(R[c], R[e], R[d], T, (V - ac), R[f])
135+ throw((ae + af))
136+ }
137+ }
138+ }
139+
140+
141+
142+@Callable(E)
143+func registerTraidPair (ag,ah,t) = WriteSet([DataEntry(((ag + "/") + ah), t)])
144+
145+

github/deemru/w8io/03bedc9 
37.10 ms