tx · CcnoSNM36wXGfeXDEGp4YQ1kKDzFignUkCQpuaDb8rJY

3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU:  -0.01500000 Waves

2022.06.20 14:50 [3170281] smart account 3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU > SELF 0.00000000 Waves

{ "type": 13, "id": "CcnoSNM36wXGfeXDEGp4YQ1kKDzFignUkCQpuaDb8rJY", "fee": 1500000, "feeAssetId": null, "timestamp": 1655725858647, "version": 2, "chainId": 87, "sender": "3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU", "senderPublicKey": "Dmn1fWHxpwN789LPfoMHFj7uSYKSsb5VFfyNQyQ629f9", "proofs": [ "3hh7Hj58ZggPDCGHTS2HdhGGojMJSkw7uUsPUPdKyRHr8YWYgsYiKJ1fPNtAt5VfL5yZi3i7jwnjv2JU6JkD1EwP" ], "script": "base64:AAIFAAAAAAAAABUIAhIECgIIARIFCgMIAQgSBAoCCAgAAAAGAAAAAAl1c2RuSWRTdHICAAAALERHMnhGa1BkRHdLVW9Ca3pHQWhRdExwU0d6ZlhMaUNZUEV6ZUtIMkFkMjRwAAAAAAZ1c2RuSWQBAAAAILYmKcME9c5TkaQOS3UkL2SMUbH6369UKb1I0h0qsqrRAQAAAAx0cnlHZXRTdHJpbmcAAAABAAAAA2tleQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAAR0aGlzBQAAAANrZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYgUAAAAHJG1hdGNoMAUAAAABYgIAAAAAAQAAAA5nZXRBc3NldFN0cmluZwAAAAEAAAAHYXNzZXRJZAQAAAAHJG1hdGNoMAUAAAAHYXNzZXRJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAKQnl0ZVZlY3RvcgQAAAABYgUAAAAHJG1hdGNoMAkAAlgAAAABBQAAAAFiAgAAAAVXQVZFUwEAAAANZ2V0QXNzZXRCeXRlcwAAAAEAAAAKYXNzZXRJZFN0cgMJAAAAAAAAAgUAAAAKYXNzZXRJZFN0cgIAAAAFV0FWRVMFAAAABHVuaXQJAAJZAAAAAQUAAAAKYXNzZXRJZFN0cgEAAAAKZ2V0QmFsYW5jZQAAAAEAAAAHYXNzZXRJZAQAAAAHJG1hdGNoMAUAAAAHYXNzZXRJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAEVW5pdAQAAAABeAUAAAAHJG1hdGNoMAgJAAPvAAAAAQUAAAAEdGhpcwAAAAlhdmFpbGFibGUJAAPwAAAAAgUAAAAEdGhpcwkBAAAABXZhbHVlAAAAAQUAAAAHYXNzZXRJZAAAAAMAAAABaQEAAAAEc3dhcAAAAAIAAAAJcm91dGVzU3RyAAAADG1pblRvUmVjZWl2ZQQAAAAIYmFsYW5jZTAJAABlAAAAAgkBAAAACmdldEJhbGFuY2UAAAABCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAdhc3NldElkCAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAAAAAZhbW91bnQKAQAAAAZkb1N3YXAAAAACAAAAB2Ftb3VudDAAAAAEc3dhcAQAAAAGc3dhcExpCQAEtQAAAAIFAAAABHN3YXACAAAAASwEAAAACiR0MDk4MTEwNjIJAAUWAAAABAkAAZEAAAACBQAAAAZzd2FwTGkAAAAAAAAAAAAJAAGRAAAAAgUAAAAGc3dhcExpAAAAAAAAAAABCQABkQAAAAIFAAAABnN3YXBMaQAAAAAAAAAAAgkAAZEAAAACBQAAAAZzd2FwTGkAAAAAAAAAAAMEAAAABGRBcHAIBQAAAAokdDA5ODExMDYyAAAAAl8xBAAAAAhkQXBwVHlwZQgFAAAACiR0MDk4MTEwNjIAAAACXzIEAAAABXQwU3RyCAUAAAAKJHQwOTgxMTA2MgAAAAJfMwQAAAAFdDFTdHIIBQAAAAokdDA5ODExMDYyAAAAAl80BAAAAAJ0MAkBAAAADWdldEFzc2V0Qnl0ZXMAAAABBQAAAAV0MFN0cgQAAAACdDEJAQAAAA1nZXRBc3NldEJ5dGVzAAAAAQUAAAAFdDFTdHIEAAAADWJhbGFuY2VCZWZvcmUJAQAAAApnZXRCYWxhbmNlAAAAAQUAAAACdDEDCQAAAAAAAAIFAAAADWJhbGFuY2VCZWZvcmUFAAAADWJhbGFuY2VCZWZvcmUEAAAAAmkxAwkAAAAAAAACBQAAAAhkQXBwVHlwZQIAAAAGc3dvcGZpCQAD/AAAAAQJAQAAAAdBZGRyZXNzAAAAAQkAAlkAAAABBQAAAARkQXBwAgAAAAhleGNoYW5nZQkABEwAAAACAAAAAAAAAAABBQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAAAnQwBQAAAAdhbW91bnQwBQAAAANuaWwJAAP8AAAABAkBAAAAB0FkZHJlc3MAAAABCQACWQAAAAEFAAAABGRBcHACAAAABHN3YXAJAARMAAAAAgUAAAAFdDFTdHIJAARMAAAAAgAAAAAAAAAAAAUAAAADbmlsCQAETAAAAAIJAQAAAA9BdHRhY2hlZFBheW1lbnQAAAACBQAAAAJ0MAUAAAAHYW1vdW50MAUAAAADbmlsAwkAAAAAAAACBQAAAAJpMQUAAAACaTEEAAAADGJhbGFuY2VBZnRlcgkBAAAACmdldEJhbGFuY2UAAAABBQAAAAJ0MQMJAAAAAAAAAgUAAAAMYmFsYW5jZUFmdGVyBQAAAAxiYWxhbmNlQWZ0ZXIJAABlAAAAAgUAAAAMYmFsYW5jZUFmdGVyBQAAAA1iYWxhbmNlQmVmb3JlCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCgEAAAAHZG9Sb3V0ZQAAAAIAAAAFYWNjdW0AAAAFcm91dGUEAAAACGFtb3VudEluCQEAAAANcGFyc2VJbnRWYWx1ZQAAAAEJAAGRAAAAAgkABLUAAAACBQAAAAVyb3V0ZQIAAAABLwAAAAAAAAAAAAQAAAAFc3dhcHMJAAS1AAAAAgkAAZEAAAACCQAEtQAAAAIFAAAABXJvdXRlAgAAAAEvAAAAAAAAAAABAgAAAAE7BAAAAAtzd2Fwc1Jlc3VsdAoAAAAAAiRsBQAAAAVzd2FwcwoAAAAAAiRzCQABkAAAAAEFAAAAAiRsCgAAAAAFJGFjYzAFAAAACGFtb3VudEluCgEAAAAFJGYwXzEAAAACAAAAAiRhAAAAAiRpAwkAAGcAAAACBQAAAAIkaQUAAAACJHMFAAAAAiRhCQEAAAAGZG9Td2FwAAAAAgUAAAACJGEJAAGRAAAAAgUAAAACJGwFAAAAAiRpCgEAAAAFJGYwXzIAAAACAAAAAiRhAAAAAiRpAwkAAGcAAAACBQAAAAIkaQUAAAACJHMFAAAAAiRhCQAAAgAAAAECAAAAE0xpc3Qgc2l6ZSBleGNlZWRzIDMJAQAAAAUkZjBfMgAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIJAQAAAAUkZjBfMQAAAAIFAAAABSRhY2MwAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAACAAAAAAAAAAADAwkAAAAAAAACBQAAAAtzd2Fwc1Jlc3VsdAUAAAALc3dhcHNSZXN1bHQJAABkAAAAAgUAAAAFYWNjdW0FAAAAC3N3YXBzUmVzdWx0CQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgQAAAAGcm91dGVzCQAEtQAAAAIFAAAACXJvdXRlc1N0cgIAAAABfAQAAAAIYW1vdW50SW4JAQAAAA1wYXJzZUludFZhbHVlAAAAAQkAAZEAAAACCQAEtQAAAAIJAAGRAAAAAgUAAAAGcm91dGVzAAAAAAAAAAAAAgAAAAEvAAAAAAAAAAAABAAAAAhhc3NldDBJZAkBAAAADWdldEFzc2V0Qnl0ZXMAAAABCQABkQAAAAIJAAS1AAAAAgkAAZEAAAACCQAEtQAAAAIJAAGRAAAAAgkABLUAAAACCQABkQAAAAIFAAAABnJvdXRlcwAAAAAAAAAAAAIAAAABLwAAAAAAAAAAAQIAAAABOwAAAAAAAAAAAAIAAAABLAAAAAAAAAAAAgQAAAAIdG90YWxPdXQKAAAAAAIkbAUAAAAGcm91dGVzCgAAAAACJHMJAAGQAAAAAQUAAAACJGwKAAAAAAUkYWNjMAAAAAAAAAAAAAoBAAAABSRmMF8xAAAAAgAAAAIkYQAAAAIkaQMJAABnAAAAAgUAAAACJGkFAAAAAiRzBQAAAAIkYQkBAAAAB2RvUm91dGUAAAACBQAAAAIkYQkAAZEAAAACBQAAAAIkbAUAAAACJGkKAQAAAAUkZjBfMgAAAAIAAAACJGEAAAACJGkDCQAAZwAAAAIFAAAAAiRpBQAAAAIkcwUAAAACJGEJAAACAAAAAQIAAAATTGlzdCBzaXplIGV4Y2VlZHMgNQkBAAAABSRmMF8yAAAAAgkBAAAABSRmMF8xAAAAAgkBAAAABSRmMF8xAAAAAgkBAAAABSRmMF8xAAAAAgkBAAAABSRmMF8xAAAAAgkBAAAABSRmMF8xAAAAAgUAAAAFJGFjYzAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAIAAAAAAAAAAAMAAAAAAAAAAAQAAAAAAAAAAAUDCQAAAAAAAAIFAAAACHRvdGFsT3V0BQAAAAh0b3RhbE91dAQAAAAJZmVlQW1vdW50CQAAawAAAAMFAAAACHRvdGFsT3V0AAAAAAAAAAAdAAAAAAAAACcQBAAAABBjbGVhblRvdGFsQW1vdW50CQAAZQAAAAIFAAAACHRvdGFsT3V0BQAAAAlmZWVBbW91bnQEAAAACWFzc2V0MVN0cgkAAZEAAAACCQAEtQAAAAIFAAAACXJvdXRlc1N0cgIAAAABLAkAAGUAAAACCQABkAAAAAEJAAS1AAAAAgUAAAAJcm91dGVzU3RyAgAAAAEsAAAAAAAAAAABBAAAAAZhc3NldDEJAQAAAA1nZXRBc3NldEJ5dGVzAAAAAQUAAAAJYXNzZXQxU3RyBAAAAAd1c2RuRmVlAwkAAAAAAAACBQAAAAZhc3NldDEFAAAABnVzZG5JZAUAAAAJZmVlQW1vdW50BAAAABF1c2RuQmFsYW5jZUJlZm9yZQkBAAAACmdldEJhbGFuY2UAAAABBQAAAAZ1c2RuSWQDCQAAAAAAAAIFAAAAEXVzZG5CYWxhbmNlQmVmb3JlBQAAABF1c2RuQmFsYW5jZUJlZm9yZQQAAAAOcG9vbEFkZHJlc3NTdHIJAQAAAAx0cnlHZXRTdHJpbmcAAAABCQABLAAAAAIJAAEsAAAAAgIAAAANc3RhdGljX2Fzc2V0XwUAAAAJYXNzZXQxU3RyAgAAAAtfcHV6emxlUG9vbAMJAAAAAAAAAgUAAAAOcG9vbEFkZHJlc3NTdHICAAAAAAAAAAAAAAAAAAQAAAAMY29udmVydGVkRmVlCQAD/AAAAAQJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAADnBvb2xBZGRyZXNzU3RyAgAAAARzd2FwCQAETAAAAAIFAAAACXVzZG5JZFN0cgkABEwAAAACAAAAAAAAAAAABQAAAANuaWwJAARMAAAAAgkBAAAAD0F0dGFjaGVkUGF5bWVudAAAAAIFAAAABmFzc2V0MQUAAAAJZmVlQW1vdW50BQAAAANuaWwDCQAAAAAAAAIFAAAADGNvbnZlcnRlZEZlZQUAAAAMY29udmVydGVkRmVlBAAAABB1c2RuQmFsYW5jZUFmdGVyCQEAAAAKZ2V0QmFsYW5jZQAAAAEFAAAABnVzZG5JZAMJAAAAAAAAAgUAAAAQdXNkbkJhbGFuY2VBZnRlcgUAAAAQdXNkbkJhbGFuY2VBZnRlcgkAAGUAAAACBQAAABB1c2RuQmFsYW5jZUFmdGVyBQAAABF1c2RuQmFsYW5jZUJlZm9yZQkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4JAAACAAAAAQIAAAAkU3RyaWN0IHZhbHVlIGlzIG5vdCBlcXVhbCB0byBpdHNlbGYuCQAA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", "height": 3170281, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: GHjq6Tw2R3dS4SbaPh3KJEBfr21qkMP1pBf7DLqtJoVY Next: CW4kicyPj4c5BN1JpveurJE4L2EHnKZJFd9ZkbtSvJaf Diff:
OldNewDifferences
4545
4646 @Callable(m)
4747 func swap (n,o) = {
48- func p (q,r) = {
49- let s = split(r, ",")
50- let t = $Tuple4(s[0], s[1], s[2], s[3])
51- let u = t._1
52- let v = t._2
53- let w = t._3
54- let x = t._4
55- let y = i(w)
48+ let p = (k(m.payments[0].assetId) - m.payments[0].amount)
49+ func q (r,s) = {
50+ let t = split(s, ",")
51+ let u = $Tuple4(t[0], t[1], t[2], t[3])
52+ let v = u._1
53+ let w = u._2
54+ let x = u._3
55+ let y = u._4
5656 let z = i(x)
57- let A = k(z)
58- if ((A == A))
57+ let A = i(y)
58+ let B = k(A)
59+ if ((B == B))
5960 then {
60- let B = if ((v == "swopfi"))
61- then invoke(Address(fromBase58String(u)), "exchange", [1], [AttachedPayment(y, q)])
62- else invoke(Address(fromBase58String(u)), "swap", [x, 0], [AttachedPayment(y, q)])
63- if ((B == B))
61+ let C = if ((w == "swopfi"))
62+ then invoke(Address(fromBase58String(v)), "exchange", [1], [AttachedPayment(z, r)])
63+ else invoke(Address(fromBase58String(v)), "swap", [y, 0], [AttachedPayment(z, r)])
64+ if ((C == C))
6465 then {
65- let C = k(z)
66- if ((C == C))
67- then (C - A)
66+ let D = k(A)
67+ if ((D == D))
68+ then (D - B)
6869 else throw("Strict value is not equal to itself.")
6970 }
7071 else throw("Strict value is not equal to itself.")
7273 else throw("Strict value is not equal to itself.")
7374 }
7475
75- func D (E,F) = {
76- let G = parseIntValue(split(F, "/")[0])
77- let H = split(split(F, "/")[1], ";")
78- let I = {
79- let J = H
80- let K = size(J)
81- let L = G
82- func M (N,O) = if ((O >= K))
83- then N
84- else p(N, J[O])
76+ func E (F,G) = {
77+ let H = parseIntValue(split(G, "/")[0])
78+ let I = split(split(G, "/")[1], ";")
79+ let J = {
80+ let K = I
81+ let L = size(K)
82+ let M = H
83+ func N (O,P) = if ((P >= L))
84+ then O
85+ else q(O, K[P])
8586
86- func P (N,O) = if ((O >= K))
87- then N
87+ func Q (O,P) = if ((P >= L))
88+ then O
8889 else throw("List size exceeds 3")
8990
90- P(M(M(M(L, 0), 1), 2), 3)
91+ Q(N(N(N(M, 0), 1), 2), 3)
9192 }
92- if ((I == I))
93- then (E + I)
93+ if ((J == J))
94+ then (F + J)
9495 else throw("Strict value is not equal to itself.")
9596 }
9697
97- let Q = split(n, "|")
98- let G = parseIntValue(split(Q[0], "/")[0])
99- let R = i(split(split(split(Q[0], "/")[1], ";")[0], ",")[2])
100- let S = {
101- let J = Q
102- let K = size(J)
103- let L = 0
104- func M (N,O) = if ((O >= K))
105- then N
106- else D(N, J[O])
98+ let R = split(n, "|")
99+ let H = parseIntValue(split(R[0], "/")[0])
100+ let S = i(split(split(split(R[0], "/")[1], ";")[0], ",")[2])
101+ let T = {
102+ let K = R
103+ let L = size(K)
104+ let M = 0
105+ func N (O,P) = if ((P >= L))
106+ then O
107+ else E(O, K[P])
107108
108- func P (N,O) = if ((O >= K))
109- then N
109+ func Q (O,P) = if ((P >= L))
110+ then O
110111 else throw("List size exceeds 5")
111112
112- P(M(M(M(M(M(L, 0), 1), 2), 3), 4), 5)
113+ Q(N(N(N(N(N(M, 0), 1), 2), 3), 4), 5)
113114 }
114- if ((S == S))
115+ if ((T == T))
115116 then {
116- let T = fraction(S, 29, 10000)
117- let U = (S - T)
118- let V = split(n, ",")[(size(split(n, ",")) - 1)]
119- let W = i(V)
120- let X = if ((W == b))
121- then T
117+ let U = fraction(T, 29, 10000)
118+ let V = (T - U)
119+ let W = split(n, ",")[(size(split(n, ",")) - 1)]
120+ let X = i(W)
121+ let Y = if ((X == b))
122+ then U
122123 else {
123- let Y = k(b)
124- if ((Y == Y))
124+ let Z = k(b)
125+ if ((Z == Z))
125126 then {
126- let Z = c((("static_asset_" + V) + "_puzzlePool"))
127- if ((Z == ""))
127+ let aa = c((("static_asset_" + W) + "_puzzlePool"))
128+ if ((aa == ""))
128129 then 0
129130 else {
130- let aa = invoke(addressFromStringValue(Z), "swap", [a, 0], [AttachedPayment(W, T)])
131- if ((aa == aa))
131+ let ab = invoke(addressFromStringValue(aa), "swap", [a, 0], [AttachedPayment(X, U)])
132+ if ((ab == ab))
132133 then {
133- let ab = k(b)
134- if ((ab == ab))
135- then (ab - Y)
134+ let ac = k(b)
135+ if ((ac == ac))
136+ then (ac - Z)
136137 else throw("Strict value is not equal to itself.")
137138 }
138139 else throw("Strict value is not equal to itself.")
140141 }
141142 else throw("Strict value is not equal to itself.")
142143 }
143- if ((X == X))
144+ if ((Y == Y))
144145 then {
145- let ac = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, X)])
146- if ((ac == ac))
147- then if ((o > U))
148- then throw(("amount to receive is lower than expected one " + toString(U)))
149- else if (if ((R != m.payments[0].assetId))
146+ let ad = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, Y)])
147+ if ((ad == ad))
148+ then if ((o > V))
149+ then throw(("amount to receive is lower than expected one " + toString(V)))
150+ else if (if ((S != m.payments[0].assetId))
150151 then true
151- else (G > m.payments[0].amount))
152+ else (H > m.payments[0].amount))
152153 then throw("wrong asset attached as payment")
153- else [ScriptTransfer(m.caller, U, W)]
154+ else [ScriptTransfer(m.caller, V, X), ScriptTransfer(m.caller, (k(m.payments[0].assetId) - p), S)]
154155 else throw("Strict value is not equal to itself.")
155156 }
156157 else throw("Strict value is not equal to itself.")
161162
162163
163164 @Callable(m)
164-func swapWithReferral (n,o,ad) = {
165- func p (q,r) = {
166- let s = split(r, ",")
167- let ae = $Tuple4(s[0], s[1], s[2], s[3])
168- let u = ae._1
169- let v = ae._2
170- let w = ae._3
171- let x = ae._4
172- let y = i(w)
165+func swapWithReferral (n,o,ae) = {
166+ let p = (k(m.payments[0].assetId) - m.payments[0].amount)
167+ func q (r,s) = {
168+ let t = split(s, ",")
169+ let af = $Tuple4(t[0], t[1], t[2], t[3])
170+ let v = af._1
171+ let w = af._2
172+ let x = af._3
173+ let y = af._4
173174 let z = i(x)
174- let A = k(z)
175- if ((A == A))
175+ let A = i(y)
176+ let B = k(A)
177+ if ((B == B))
176178 then {
177- let B = if ((v == "swopfi"))
178- then invoke(Address(fromBase58String(u)), "exchange", [1], [AttachedPayment(y, q)])
179- else invoke(Address(fromBase58String(u)), "swap", [x, 0], [AttachedPayment(y, q)])
180- if ((B == B))
179+ let C = if ((w == "swopfi"))
180+ then invoke(Address(fromBase58String(v)), "exchange", [1], [AttachedPayment(z, r)])
181+ else invoke(Address(fromBase58String(v)), "swap", [y, 0], [AttachedPayment(z, r)])
182+ if ((C == C))
181183 then {
182- let C = k(z)
183- if ((C == C))
184- then (C - A)
184+ let D = k(A)
185+ if ((D == D))
186+ then (D - B)
185187 else throw("Strict value is not equal to itself.")
186188 }
187189 else throw("Strict value is not equal to itself.")
189191 else throw("Strict value is not equal to itself.")
190192 }
191193
192- func D (E,F) = {
193- let G = parseIntValue(split(F, "/")[0])
194- let H = split(split(F, "/")[1], ";")
195- let I = {
196- let J = H
197- let K = size(J)
198- let L = G
199- func M (N,O) = if ((O >= K))
200- then N
201- else p(N, J[O])
194+ func E (F,G) = {
195+ let H = parseIntValue(split(G, "/")[0])
196+ let I = split(split(G, "/")[1], ";")
197+ let J = {
198+ let K = I
199+ let L = size(K)
200+ let M = H
201+ func N (O,P) = if ((P >= L))
202+ then O
203+ else q(O, K[P])
202204
203- func P (N,O) = if ((O >= K))
204- then N
205+ func Q (O,P) = if ((P >= L))
206+ then O
205207 else throw("List size exceeds 3")
206208
207- P(M(M(M(L, 0), 1), 2), 3)
209+ Q(N(N(N(M, 0), 1), 2), 3)
208210 }
209- if ((I == I))
210- then (E + I)
211+ if ((J == J))
212+ then (F + J)
211213 else throw("Strict value is not equal to itself.")
212214 }
213215
214- let Q = split(n, "|")
215- let G = parseIntValue(split(Q[0], "/")[0])
216- let R = i(split(split(split(Q[0], "/")[1], ";")[0], ",")[2])
217- let S = {
218- let J = Q
219- let K = size(J)
220- let L = 0
221- func M (N,O) = if ((O >= K))
222- then N
223- else D(N, J[O])
216+ let R = split(n, "|")
217+ let H = parseIntValue(split(R[0], "/")[0])
218+ let S = i(split(split(split(R[0], "/")[1], ";")[0], ",")[2])
219+ let T = {
220+ let K = R
221+ let L = size(K)
222+ let M = 0
223+ func N (O,P) = if ((P >= L))
224+ then O
225+ else E(O, K[P])
224226
225- func P (N,O) = if ((O >= K))
226- then N
227+ func Q (O,P) = if ((P >= L))
228+ then O
227229 else throw("List size exceeds 5")
228230
229- P(M(M(M(M(M(L, 0), 1), 2), 3), 4), 5)
231+ Q(N(N(N(N(N(M, 0), 1), 2), 3), 4), 5)
230232 }
231- if ((S == S))
233+ if ((T == T))
232234 then {
233- let T = fraction(S, 29, 10000)
234- let U = (S - T)
235- let V = split(n, ",")[(size(split(n, ",")) - 1)]
236- let W = i(V)
237- let X = if ((W == b))
238- then T
235+ let U = fraction(T, 29, 10000)
236+ let V = (T - U)
237+ let W = split(n, ",")[(size(split(n, ",")) - 1)]
238+ let X = i(W)
239+ let Y = if ((X == b))
240+ then U
239241 else {
240- let Y = k(b)
241- if ((Y == Y))
242+ let Z = k(b)
243+ if ((Z == Z))
242244 then {
243- let aa = invoke(Address(fromBase58String(c((("static_asset_" + V) + "_puzzlePool")))), "swap", [a, 0], [AttachedPayment(W, T)])
244- if ((aa == aa))
245+ let ab = invoke(Address(fromBase58String(c((("static_asset_" + W) + "_puzzlePool")))), "swap", [a, 0], [AttachedPayment(X, U)])
246+ if ((ab == ab))
245247 then {
246- let ab = k(b)
247- if ((ab == ab))
248- then (ab - Y)
248+ let ac = k(b)
249+ if ((ac == ac))
250+ then (ac - Z)
249251 else throw("Strict value is not equal to itself.")
250252 }
251253 else throw("Strict value is not equal to itself.")
252254 }
253255 else throw("Strict value is not equal to itself.")
254256 }
255- if ((X == X))
257+ if ((Y == Y))
256258 then {
257- let af = if ((ad == "muna"))
259+ let ag = if ((ae == "muna"))
258260 then Address(base58'3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU')
259- else if ((ad == "keeper"))
261+ else if ((ae == "keeper"))
260262 then Address(base58'3PNgw6Db2TGUQbjnV7ekve6q126xBC1e7eM')
261- else if ((ad == "tci"))
263+ else if ((ae == "tci"))
262264 then Address(base58'3PNgw6Db2TGUQbjnV7ekve6q126xBC1e7eM')
263265 else Address(base58'3PQxXXiQXpWsjDwQLYxyuoPiaLnVHjJguFo')
264- let ag = fraction(X, 2, 10)
265- let ac = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, (X - ag))])
266- if ((ac == ac))
267- then if ((o > U))
268- then throw(("amount to receive is lower than expected one " + toString(U)))
269- else if (if ((R != m.payments[0].assetId))
266+ let ah = fraction(Y, 2, 10)
267+ let ad = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, (Y - ah))])
268+ if ((ad == ad))
269+ then if ((o > V))
270+ then throw(("amount to receive is lower than expected one " + toString(V)))
271+ else if (if ((S != m.payments[0].assetId))
270272 then true
271- else (G > m.payments[0].amount))
273+ else (H > m.payments[0].amount))
272274 then throw("wrong asset attached as payment")
273- else [ScriptTransfer(m.caller, U, W), ScriptTransfer(af, ag, b)]
275+ else [ScriptTransfer(m.caller, V, X), ScriptTransfer(ag, ah, b), ScriptTransfer(m.caller, (k(m.payments[0].assetId) - p), S)]
274276 else throw("Strict value is not equal to itself.")
275277 }
276278 else throw("Strict value is not equal to itself.")
281283
282284
283285 @Callable(m)
284-func addTokenPuzzlePool (j,Z) = if ((m.caller != Address(base58'3P8qVX189qpoTJZQQQdKS9endHK5sxWsvrd')))
286+func addTokenPuzzlePool (j,aa) = if ((m.caller != Address(base58'3P8qVX189qpoTJZQQQdKS9endHK5sxWsvrd')))
285287 then throw("admin only")
286- else [StringEntry((("static_asset_" + j) + "_puzzlePool"), Z)]
288+ else [StringEntry((("static_asset_" + j) + "_puzzlePool"), aa)]
287289
288290
289-@Verifier(ah)
290-func ai () = sigVerify(ah.bodyBytes, ah.proofs[0], ah.senderPublicKey)
291+@Verifier(ai)
292+func aj () = sigVerify(ai.bodyBytes, ai.proofs[0], ai.senderPublicKey)
291293
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"
55
66 let b = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
77
88 func c (d) = {
99 let e = getString(this, d)
1010 if ($isInstanceOf(e, "String"))
1111 then {
1212 let f = e
1313 f
1414 }
1515 else ""
1616 }
1717
1818
1919 func g (h) = {
2020 let e = h
2121 if ($isInstanceOf(e, "ByteVector"))
2222 then {
2323 let f = e
2424 toBase58String(f)
2525 }
2626 else "WAVES"
2727 }
2828
2929
3030 func i (j) = if ((j == "WAVES"))
3131 then unit
3232 else fromBase58String(j)
3333
3434
3535 func k (h) = {
3636 let e = h
3737 if ($isInstanceOf(e, "Unit"))
3838 then {
3939 let l = e
4040 wavesBalance(this).available
4141 }
4242 else assetBalance(this, value(h))
4343 }
4444
4545
4646 @Callable(m)
4747 func swap (n,o) = {
48- func p (q,r) = {
49- let s = split(r, ",")
50- let t = $Tuple4(s[0], s[1], s[2], s[3])
51- let u = t._1
52- let v = t._2
53- let w = t._3
54- let x = t._4
55- let y = i(w)
48+ let p = (k(m.payments[0].assetId) - m.payments[0].amount)
49+ func q (r,s) = {
50+ let t = split(s, ",")
51+ let u = $Tuple4(t[0], t[1], t[2], t[3])
52+ let v = u._1
53+ let w = u._2
54+ let x = u._3
55+ let y = u._4
5656 let z = i(x)
57- let A = k(z)
58- if ((A == A))
57+ let A = i(y)
58+ let B = k(A)
59+ if ((B == B))
5960 then {
60- let B = if ((v == "swopfi"))
61- then invoke(Address(fromBase58String(u)), "exchange", [1], [AttachedPayment(y, q)])
62- else invoke(Address(fromBase58String(u)), "swap", [x, 0], [AttachedPayment(y, q)])
63- if ((B == B))
61+ let C = if ((w == "swopfi"))
62+ then invoke(Address(fromBase58String(v)), "exchange", [1], [AttachedPayment(z, r)])
63+ else invoke(Address(fromBase58String(v)), "swap", [y, 0], [AttachedPayment(z, r)])
64+ if ((C == C))
6465 then {
65- let C = k(z)
66- if ((C == C))
67- then (C - A)
66+ let D = k(A)
67+ if ((D == D))
68+ then (D - B)
6869 else throw("Strict value is not equal to itself.")
6970 }
7071 else throw("Strict value is not equal to itself.")
7172 }
7273 else throw("Strict value is not equal to itself.")
7374 }
7475
75- func D (E,F) = {
76- let G = parseIntValue(split(F, "/")[0])
77- let H = split(split(F, "/")[1], ";")
78- let I = {
79- let J = H
80- let K = size(J)
81- let L = G
82- func M (N,O) = if ((O >= K))
83- then N
84- else p(N, J[O])
76+ func E (F,G) = {
77+ let H = parseIntValue(split(G, "/")[0])
78+ let I = split(split(G, "/")[1], ";")
79+ let J = {
80+ let K = I
81+ let L = size(K)
82+ let M = H
83+ func N (O,P) = if ((P >= L))
84+ then O
85+ else q(O, K[P])
8586
86- func P (N,O) = if ((O >= K))
87- then N
87+ func Q (O,P) = if ((P >= L))
88+ then O
8889 else throw("List size exceeds 3")
8990
90- P(M(M(M(L, 0), 1), 2), 3)
91+ Q(N(N(N(M, 0), 1), 2), 3)
9192 }
92- if ((I == I))
93- then (E + I)
93+ if ((J == J))
94+ then (F + J)
9495 else throw("Strict value is not equal to itself.")
9596 }
9697
97- let Q = split(n, "|")
98- let G = parseIntValue(split(Q[0], "/")[0])
99- let R = i(split(split(split(Q[0], "/")[1], ";")[0], ",")[2])
100- let S = {
101- let J = Q
102- let K = size(J)
103- let L = 0
104- func M (N,O) = if ((O >= K))
105- then N
106- else D(N, J[O])
98+ let R = split(n, "|")
99+ let H = parseIntValue(split(R[0], "/")[0])
100+ let S = i(split(split(split(R[0], "/")[1], ";")[0], ",")[2])
101+ let T = {
102+ let K = R
103+ let L = size(K)
104+ let M = 0
105+ func N (O,P) = if ((P >= L))
106+ then O
107+ else E(O, K[P])
107108
108- func P (N,O) = if ((O >= K))
109- then N
109+ func Q (O,P) = if ((P >= L))
110+ then O
110111 else throw("List size exceeds 5")
111112
112- P(M(M(M(M(M(L, 0), 1), 2), 3), 4), 5)
113+ Q(N(N(N(N(N(M, 0), 1), 2), 3), 4), 5)
113114 }
114- if ((S == S))
115+ if ((T == T))
115116 then {
116- let T = fraction(S, 29, 10000)
117- let U = (S - T)
118- let V = split(n, ",")[(size(split(n, ",")) - 1)]
119- let W = i(V)
120- let X = if ((W == b))
121- then T
117+ let U = fraction(T, 29, 10000)
118+ let V = (T - U)
119+ let W = split(n, ",")[(size(split(n, ",")) - 1)]
120+ let X = i(W)
121+ let Y = if ((X == b))
122+ then U
122123 else {
123- let Y = k(b)
124- if ((Y == Y))
124+ let Z = k(b)
125+ if ((Z == Z))
125126 then {
126- let Z = c((("static_asset_" + V) + "_puzzlePool"))
127- if ((Z == ""))
127+ let aa = c((("static_asset_" + W) + "_puzzlePool"))
128+ if ((aa == ""))
128129 then 0
129130 else {
130- let aa = invoke(addressFromStringValue(Z), "swap", [a, 0], [AttachedPayment(W, T)])
131- if ((aa == aa))
131+ let ab = invoke(addressFromStringValue(aa), "swap", [a, 0], [AttachedPayment(X, U)])
132+ if ((ab == ab))
132133 then {
133- let ab = k(b)
134- if ((ab == ab))
135- then (ab - Y)
134+ let ac = k(b)
135+ if ((ac == ac))
136+ then (ac - Z)
136137 else throw("Strict value is not equal to itself.")
137138 }
138139 else throw("Strict value is not equal to itself.")
139140 }
140141 }
141142 else throw("Strict value is not equal to itself.")
142143 }
143- if ((X == X))
144+ if ((Y == Y))
144145 then {
145- let ac = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, X)])
146- if ((ac == ac))
147- then if ((o > U))
148- then throw(("amount to receive is lower than expected one " + toString(U)))
149- else if (if ((R != m.payments[0].assetId))
146+ let ad = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, Y)])
147+ if ((ad == ad))
148+ then if ((o > V))
149+ then throw(("amount to receive is lower than expected one " + toString(V)))
150+ else if (if ((S != m.payments[0].assetId))
150151 then true
151- else (G > m.payments[0].amount))
152+ else (H > m.payments[0].amount))
152153 then throw("wrong asset attached as payment")
153- else [ScriptTransfer(m.caller, U, W)]
154+ else [ScriptTransfer(m.caller, V, X), ScriptTransfer(m.caller, (k(m.payments[0].assetId) - p), S)]
154155 else throw("Strict value is not equal to itself.")
155156 }
156157 else throw("Strict value is not equal to itself.")
157158 }
158159 else throw("Strict value is not equal to itself.")
159160 }
160161
161162
162163
163164 @Callable(m)
164-func swapWithReferral (n,o,ad) = {
165- func p (q,r) = {
166- let s = split(r, ",")
167- let ae = $Tuple4(s[0], s[1], s[2], s[3])
168- let u = ae._1
169- let v = ae._2
170- let w = ae._3
171- let x = ae._4
172- let y = i(w)
165+func swapWithReferral (n,o,ae) = {
166+ let p = (k(m.payments[0].assetId) - m.payments[0].amount)
167+ func q (r,s) = {
168+ let t = split(s, ",")
169+ let af = $Tuple4(t[0], t[1], t[2], t[3])
170+ let v = af._1
171+ let w = af._2
172+ let x = af._3
173+ let y = af._4
173174 let z = i(x)
174- let A = k(z)
175- if ((A == A))
175+ let A = i(y)
176+ let B = k(A)
177+ if ((B == B))
176178 then {
177- let B = if ((v == "swopfi"))
178- then invoke(Address(fromBase58String(u)), "exchange", [1], [AttachedPayment(y, q)])
179- else invoke(Address(fromBase58String(u)), "swap", [x, 0], [AttachedPayment(y, q)])
180- if ((B == B))
179+ let C = if ((w == "swopfi"))
180+ then invoke(Address(fromBase58String(v)), "exchange", [1], [AttachedPayment(z, r)])
181+ else invoke(Address(fromBase58String(v)), "swap", [y, 0], [AttachedPayment(z, r)])
182+ if ((C == C))
181183 then {
182- let C = k(z)
183- if ((C == C))
184- then (C - A)
184+ let D = k(A)
185+ if ((D == D))
186+ then (D - B)
185187 else throw("Strict value is not equal to itself.")
186188 }
187189 else throw("Strict value is not equal to itself.")
188190 }
189191 else throw("Strict value is not equal to itself.")
190192 }
191193
192- func D (E,F) = {
193- let G = parseIntValue(split(F, "/")[0])
194- let H = split(split(F, "/")[1], ";")
195- let I = {
196- let J = H
197- let K = size(J)
198- let L = G
199- func M (N,O) = if ((O >= K))
200- then N
201- else p(N, J[O])
194+ func E (F,G) = {
195+ let H = parseIntValue(split(G, "/")[0])
196+ let I = split(split(G, "/")[1], ";")
197+ let J = {
198+ let K = I
199+ let L = size(K)
200+ let M = H
201+ func N (O,P) = if ((P >= L))
202+ then O
203+ else q(O, K[P])
202204
203- func P (N,O) = if ((O >= K))
204- then N
205+ func Q (O,P) = if ((P >= L))
206+ then O
205207 else throw("List size exceeds 3")
206208
207- P(M(M(M(L, 0), 1), 2), 3)
209+ Q(N(N(N(M, 0), 1), 2), 3)
208210 }
209- if ((I == I))
210- then (E + I)
211+ if ((J == J))
212+ then (F + J)
211213 else throw("Strict value is not equal to itself.")
212214 }
213215
214- let Q = split(n, "|")
215- let G = parseIntValue(split(Q[0], "/")[0])
216- let R = i(split(split(split(Q[0], "/")[1], ";")[0], ",")[2])
217- let S = {
218- let J = Q
219- let K = size(J)
220- let L = 0
221- func M (N,O) = if ((O >= K))
222- then N
223- else D(N, J[O])
216+ let R = split(n, "|")
217+ let H = parseIntValue(split(R[0], "/")[0])
218+ let S = i(split(split(split(R[0], "/")[1], ";")[0], ",")[2])
219+ let T = {
220+ let K = R
221+ let L = size(K)
222+ let M = 0
223+ func N (O,P) = if ((P >= L))
224+ then O
225+ else E(O, K[P])
224226
225- func P (N,O) = if ((O >= K))
226- then N
227+ func Q (O,P) = if ((P >= L))
228+ then O
227229 else throw("List size exceeds 5")
228230
229- P(M(M(M(M(M(L, 0), 1), 2), 3), 4), 5)
231+ Q(N(N(N(N(N(M, 0), 1), 2), 3), 4), 5)
230232 }
231- if ((S == S))
233+ if ((T == T))
232234 then {
233- let T = fraction(S, 29, 10000)
234- let U = (S - T)
235- let V = split(n, ",")[(size(split(n, ",")) - 1)]
236- let W = i(V)
237- let X = if ((W == b))
238- then T
235+ let U = fraction(T, 29, 10000)
236+ let V = (T - U)
237+ let W = split(n, ",")[(size(split(n, ",")) - 1)]
238+ let X = i(W)
239+ let Y = if ((X == b))
240+ then U
239241 else {
240- let Y = k(b)
241- if ((Y == Y))
242+ let Z = k(b)
243+ if ((Z == Z))
242244 then {
243- let aa = invoke(Address(fromBase58String(c((("static_asset_" + V) + "_puzzlePool")))), "swap", [a, 0], [AttachedPayment(W, T)])
244- if ((aa == aa))
245+ let ab = invoke(Address(fromBase58String(c((("static_asset_" + W) + "_puzzlePool")))), "swap", [a, 0], [AttachedPayment(X, U)])
246+ if ((ab == ab))
245247 then {
246- let ab = k(b)
247- if ((ab == ab))
248- then (ab - Y)
248+ let ac = k(b)
249+ if ((ac == ac))
250+ then (ac - Z)
249251 else throw("Strict value is not equal to itself.")
250252 }
251253 else throw("Strict value is not equal to itself.")
252254 }
253255 else throw("Strict value is not equal to itself.")
254256 }
255- if ((X == X))
257+ if ((Y == Y))
256258 then {
257- let af = if ((ad == "muna"))
259+ let ag = if ((ae == "muna"))
258260 then Address(base58'3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU')
259- else if ((ad == "keeper"))
261+ else if ((ae == "keeper"))
260262 then Address(base58'3PNgw6Db2TGUQbjnV7ekve6q126xBC1e7eM')
261- else if ((ad == "tci"))
263+ else if ((ae == "tci"))
262264 then Address(base58'3PNgw6Db2TGUQbjnV7ekve6q126xBC1e7eM')
263265 else Address(base58'3PQxXXiQXpWsjDwQLYxyuoPiaLnVHjJguFo')
264- let ag = fraction(X, 2, 10)
265- let ac = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, (X - ag))])
266- if ((ac == ac))
267- then if ((o > U))
268- then throw(("amount to receive is lower than expected one " + toString(U)))
269- else if (if ((R != m.payments[0].assetId))
266+ let ah = fraction(Y, 2, 10)
267+ let ad = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(b, (Y - ah))])
268+ if ((ad == ad))
269+ then if ((o > V))
270+ then throw(("amount to receive is lower than expected one " + toString(V)))
271+ else if (if ((S != m.payments[0].assetId))
270272 then true
271- else (G > m.payments[0].amount))
273+ else (H > m.payments[0].amount))
272274 then throw("wrong asset attached as payment")
273- else [ScriptTransfer(m.caller, U, W), ScriptTransfer(af, ag, b)]
275+ else [ScriptTransfer(m.caller, V, X), ScriptTransfer(ag, ah, b), ScriptTransfer(m.caller, (k(m.payments[0].assetId) - p), S)]
274276 else throw("Strict value is not equal to itself.")
275277 }
276278 else throw("Strict value is not equal to itself.")
277279 }
278280 else throw("Strict value is not equal to itself.")
279281 }
280282
281283
282284
283285 @Callable(m)
284-func addTokenPuzzlePool (j,Z) = if ((m.caller != Address(base58'3P8qVX189qpoTJZQQQdKS9endHK5sxWsvrd')))
286+func addTokenPuzzlePool (j,aa) = if ((m.caller != Address(base58'3P8qVX189qpoTJZQQQdKS9endHK5sxWsvrd')))
285287 then throw("admin only")
286- else [StringEntry((("static_asset_" + j) + "_puzzlePool"), Z)]
288+ else [StringEntry((("static_asset_" + j) + "_puzzlePool"), aa)]
287289
288290
289-@Verifier(ah)
290-func ai () = sigVerify(ah.bodyBytes, ah.proofs[0], ah.senderPublicKey)
291+@Verifier(ai)
292+func aj () = sigVerify(ai.bodyBytes, ai.proofs[0], ai.senderPublicKey)
291293

github/deemru/w8io/6500d08 
109.71 ms