tx · 3vaq6DDtiEi3KmR3cUeBf33CxsEFBV6ZjcdqoiHMd8EM

3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL:  -0.01000000 Waves

2021.09.12 19:48 [1700097] smart account 3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL > SELF 0.00000000 Waves

{ "type": 13, "id": "3vaq6DDtiEi3KmR3cUeBf33CxsEFBV6ZjcdqoiHMd8EM", "fee": 1000000, "feeAssetId": null, "timestamp": 1631465357827, "version": 2, "chainId": 84, "sender": "3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL", "senderPublicKey": "EYAKsFBespqQveBrfmX29rsehBJrSwQ3B6yN4ADyw8Kx", "proofs": [ "3aqTqW13LceQciQEcxEXdcgGVJMqGREdcAoTQEJUiG6cw1FXc4Qe3uWcxP9enXya59cDdA7zeRkwJgiyQ374NHTj" ], "script": "base64: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AAACAAAABGZsYXQEAAAACWludmFyaWFudAkBAAAADWludmFyaWFudENhbGMAAAACBQAAAA1kQXBwMVRva2VuUGF5BQAAAA1kQXBwMVRva2VuR2V0BAAAABNtaW5BbW91bnRUb1JlY2VpdmUxCQABkQAAAAIFAAAABWFyZ3MyAAAAAAAAAAAABAAAAAxpbnZhcmlhbnROZXcJAQAAAA1pbnZhcmlhbnRDYWxjAAAAAgkAAGQAAAACBQAAAA1kQXBwMVRva2VuUGF5BQAAAAlwbXRBbW91bnQJAABlAAAAAgUAAAANZEFwcDFUb2tlbkdldAkAAZEAAAACBQAAAAVhcmdzMgAAAAAAAAAAAAMJAABnAAAAAgUAAAAMaW52YXJpYW50TmV3BQAAAAlpbnZhcmlhbnQFAAAAE21pbkFtb3VudFRvUmVjZWl2ZTEJAAACAAAAAQIAAAAnRmxhdCBjb250cmFjdDogaW52YXJpYW50TmV3IDwgaW52YXJpYW50CQAAAgAAAAECAAAAF0luY29ycmVjdCBleGNoYW5nZSB0eXBlBAAAABRnZXRGcm9tMlRyYWRlV2l0aEZlZQMJAAAAAAAAAgkAAZEAAAACBQAAAA5leGNoYW5nZXJzVHlwZQAAAAAAAAAAAQIAAAAEY3BtbQQAAAANZ2V0RnJvbTJUcmFkZQkAAGsAAAADBQAAAA1kQXBwMlRva2VuR2V0BQAAABRnZXRGcm9tMVRyYWRlV2l0aEZlZQkAAGQAAAACBQAAABRnZXRGcm9tMVRyYWRlV2l0aEZlZQUAAAANZEFwcDJUb2tlblBheQkAAGsAAAADBQAAAA1nZXRGcm9tMlRyYWRlCQAAZQAAAAIFAAAAGGNvbW1pc3Npb25TY2FsZURlbGltaXRlcgUAAAAKY29tbWlzc2lvbgUAAAAYY29tbWlzc2lvblNjYWxlRGVsaW1pdGVyAwkAAAAAAAACCQABkQAAAAIFAAAADmV4Y2hhbmdlcnNUeXBlAAAAAAAAAAABAgAAAARmbGF0BAAAAAlpbnZhcmlhbnQJAQAAAA1pbnZhcmlhbnRDYWxjAAAAAgUAAAANZEFwcDJUb2tlblBheQUAAAANZEFwcDJUb2tlbkdldAQAAAATbWluQW1vdW50VG9SZWNlaXZlMgkAAZEAAAACBQAAAAVhcmdzMgAAAAAAAAAAAQQAAAAMaW52YXJpYW50TmV3CQEAAAANaW52YXJpYW50Q2FsYwAAAAIJAABkAAAAAgUAAAANZEFwcDJUb2tlblBheQUAAAAUZ2V0RnJvbTFUcmFkZVdpdGhGZWUJAABlAAAAAgUAAAANZEFwcDJUb2tlbkdldAUAAAATbWluQW1vdW50VG9SZWNlaXZlMgMJAABnAAAAAgUAAAAMaW52YXJpYW50TmV3BQAAAAlpbnZhcmlhbnQFAAAAE21pbkFtb3VudFRvUmVjZWl2ZTIJAAACAAAAAQIAAAAnRmxhdCBjb250cmFjdDogaW52YXJpYW50TmV3IDwgaW52YXJpYW50CQAAAgAAAAECAAAAF0luY29ycmVjdCBleGNoYW5nZSB0eXBlAwYJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAGkAAAAAQUAAAAUZ2V0RnJvbTJUcmFkZVdpdGhGZWUCAAAAASAJAAGkAAAAAQUAAAASbWluQW1vdW50VG9SZWNlaXZlAwkAAGcAAAACBQAAABRnZXRGcm9tMlRyYWRlV2l0aEZlZQUAAAASbWluQW1vdW50VG9SZWNlaXZlBgcAAAABAAAAAWkBAAAADHJvdXRpbmdUcmFkZQAAAAcAAAAKZXhjaGFuZ2VycwAAAA5leGNoYW5nZXJzVHlwZQAAAAVhcmdzMQAAAAVhcmdzMgAAABFyb3V0aW5nQXNzZXRzS2V5cwAAAA5yZWNlaXZlQXNzZXRJZAAAABJtaW5BbW91bnRUb1JlY2VpdmUEAAAACyR0MDM4NDczOTIxCQAFFAAAAAIICQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAAAAAABmFtb3VudAgJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAAAAAHYXNzZXRJZAQAAAAJcG10QW1vdW50CAUAAAALJHQwMzg0NzM5MjEAAAACXzEEAAAACnBtdEFzc2V0SWQIBQAAAAskdDAzODQ3MzkyMQAAAAJfMgMJAQAAAAEhAAAAAQkBAAAAD2NoZWNrUG9zc2liaWx0eQAAAAcFAAAACXBtdEFtb3VudAUAAAASbWluQW1vdW50VG9SZWNlaXZlBQAAAApleGNoYW5nZXJzBQAAAA5leGNoYW5nZXJzVHlwZQUAAAARcm91dGluZ0Fzc2V0c0tleXMFAAAABWFyZ3MxBQAAAAVhcmdzMgkAAAIAAAABAgAAACZDaGVjayB0cmFuc2FjdGlvbiBwb3NzaWJpbHR5OiBkZWNsaW5lZAQAAAALcm91dGluZ1NpemUJAAGQAAAAAQUAAAAKZXhjaGFuZ2VycwoBAAAADGV4Y2hhbmdlRm9sZAAAAAIAAAALYWNjdW11bGF0ZWQAAAAJZXhjaGFuZ2VyBAAAAAskdDA0MjIwNDI4MwUAAAALYWNjdW11bGF0ZWQEAAAAD2V4Y2hhbmdlQ291bnRlcggFAAAACyR0MDQyMjA0MjgzAAAAAl8xBAAAAA5hbW91bnRzV2l0aEZlZQgFAAAACyR0MDQyMjA0MjgzAAAAAl8yBAAAAAxhc3NldHNJZFNlbmQIBQAAAAskdDA0MjIwNDI4MwAAAAJfMwMJAAAAAAAAAgUAAAAPZXhjaGFuZ2VDb3VudGVyAAAAAAAAAAAABAAAABBleGNoYW5nZXJBZGRyZXNzCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABBQAAAAlleGNoYW5nZXIEAAAAA2ludgMJAAAAAAAAAgkAAZEAAAACBQAAAA5leGNoYW5nZXJzVHlwZQUAAAAPZXhjaGFuZ2VDb3VudGVyAgAAAARjcG1tCQAD/AAAAAQFAAAAEGV4Y2hhbmdlckFkZHJlc3MCAAAACGV4Y2hhbmdlCQAETAAAAAIJAAGRAAAAAgUAAAAFYXJnczEFAAAAD2V4Y2hhbmdlQ291bnRlcgUAAAADbmlsCQAETAAAAAIJAQAAAA9BdHRhY2hlZFBheW1lbnQAAAACBQAAAApwbXRBc3NldElkBQAAAAlwbXRBbW91bnQFAAAAA25pbAMJAAAAAAAAAgkAAZEAAAACBQAAAA5leGNoYW5nZXJzVHlwZQUAAAAPZXhjaGFuZ2VDb3VudGVyAgAAAARmbGF0CQAD/AAAAAQFAAAAEGV4Y2hhbmdlckFkZHJlc3MCAAAACGV4Y2hhbmdlCQAETAAAAAIJAAGRAAAAAgUAAAAFYXJnczEFAAAAD2V4Y2hhbmdlQ291bnRlcgkABEwAAAACCQABkQAAAAIFAAAABWFyZ3MyBQAAAA9leGNoYW5nZUNvdW50ZXIFAAAAA25pbAkABEwAAAACCQEAAAAPQXR0YWNoZWRQYXltZW50AAAAAgUAAAAKcG10QXNzZXRJZAUAAAAJcG10QW1vdW50BQAAAANuaWwJAAACAAAAAQIAAAAXSW5jb3JyZWN0IGV4Y2hhbmdlIHR5cGUDCQAAAAAAAAIFAAAAA2ludgUAAAADaW52BAAAAAckbWF0Y2gwBQAAAANpbnYDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAEShJbnQsIEJ5dGVWZWN0b3IpBAAAAANpbnYFAAAAByRtYXRjaDAEAAAACyR0MDQ5Nzk1MDE3BQAAAANpbnYEAAAADWFtb3VudFdpdGhGZWUIBQAAAAskdDA0OTc5NTAxNwAAAAJfMQQAAAALYXNzZXRJZFNlbmQIBQAAAAskdDA0OTc5NTAxNwAAAAJfMgkABRUAAAADCQAAZAAAAAIFAAAAD2V4Y2hhbmdlQ291bnRlcgAAAAAAAAAAAQUAAAANYW1vdW50V2l0aEZlZQUAAAALYXNzZXRJZFNlbmQJAAACAAAAAQIAAABASW5jb3JyZWN0IGludm9rZSByZXN1bHQ6IGV4cGVjdGVkIGFtb3VudFdpdGhGZWUgYW5kIGFzc2V0c0lkU2VuZAkAAAIAAAABAgAAACRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4DAwkAAGYAAAACBQAAAA9leGNoYW5nZUNvdW50ZXIAAAAAAAAAAAAJAABmAAAAAgUAAAALcm91dGluZ1NpemUFAAAAD2V4Y2hhbmdlQ291bnRlcgcEAAAAEGV4Y2hhbmdlckFkZHJlc3MJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAACWV4Y2hhbmdlcgQAAAALJHQwNTM2MzU0MjkJAAUUAAAAAgUAAAAMYXNzZXRzSWRTZW5kBQAAAA5hbW91bnRzV2l0aEZlZQQAAAAOcG10QXNzZXRJZFJvdXQIBQAAAAskdDA1MzYzNTQyOQAAAAJfMQQAAAANcG10QW1vdW50Um91dAgFAAAACyR0MDUzNjM1NDI5AAAAAl8yBAAAAANpbnYDCQAAAAAAAAIJAAGRAAAAAgUAAAAOZXhjaGFuZ2Vyc1R5cGUFAAAAD2V4Y2hhbmdlQ291bnRlcgIAAAAEY3BtbQkAA/wAAAAEBQAAABBleGNoYW5nZXJBZGRyZXNzAgAAAAhleGNoYW5nZQkABEwAAAACCQABkQAAAAIFAAAABWFyZ3MxBQAAAA9leGNoYW5nZUNvdW50ZXIFAAAAA25pbAkABEwAAAACCQEAAAAPQXR0YWNoZWRQYXltZW50AAAAAgUAAAAOcG10QXNzZXRJZFJvdXQFAAAADXBtdEFtb3VudFJvdXQFAAAAA25pbAMJAAAAAAAAAgkAAZEAAAACBQAAAA5leGNoYW5nZXJzVHlwZQUAAAAPZXhjaGFuZ2VDb3VudGVyAgAAAARmbGF0CQAD/AAAAAQFAAAAEGV4Y2hhbmdlckFkZHJlc3MCAAAACGV4Y2hhbmdlCQAETAAAAAIJAAGRAAAAAgUAAAAFYXJnczEFAAAAD2V4Y2hhbmdlQ291bnRlcgkABEwAAAACCQABkQAAAAIFAAAABWFyZ3MyBQAAAA9leGNoYW5nZUNvdW50ZXIFAAAAA25pbAkABEwAAAACCQEAAAAPQXR0YWNoZWRQYXltZW50AAAAAgUAAAAOcG10QXNzZXRJZFJvdXQFAAAADXBtdEFtb3VudFJvdXQFAAAAA25pbAkAAAIAAAABAgAAABdJbmNvcnJlY3QgZXhjaGFuZ2UgdHlwZQMJAAAAAAAAAgUAAAADaW52BQAAAANpbnYEAAAAByRtYXRjaDAFAAAAA2ludgMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAARKEludCwgQnl0ZVZlY3RvcikEAAAAA2ludgUAAAAHJG1hdGNoMAQAAAALJHQwNjAzNDYwNzIFAAAAA2ludgQAAAANYW1vdW50V2l0aEZlZQgFAAAACyR0MDYwMzQ2MDcyAAAAAl8xBAAAAAthc3NldElkU2VuZAgFAAAACyR0MDYwMzQ2MDcyAAAAAl8yCQAFFQAAAAMJAABkAAAAAgUAAAAPZXhjaGFuZ2VDb3VudGVyAAAAAAAAAAABBQAAAA1hbW91bnRXaXRoRmVlBQAAAAthc3NldElkU2VuZAkAAAIAAAABAgAAAEBJbmNvcnJlY3QgaW52b2tlIHJlc3VsdDogZXhwZWN0ZWQgYW1vdW50V2l0aEZlZSBhbmQgYXNzZXRzSWRTZW5kCQAAAgAAAAECAAAAJFN0cmljdCB2YWx1ZSBpcyBub3QgZXF1YWwgdG8gaXRzZWxmLgUAAAALYWNjdW11bGF0ZWQEAAAACyR0MDYzMTA2NDExBAAAAA0kbGlzdDYzNjI2NDExBQAAAApleGNoYW5nZXJzBAAAAA0kc2l6ZTYzNjI2NDExCQABkAAAAAEFAAAADSRsaXN0NjM2MjY0MTEEAAAADSRhY2MwNjM2MjY0MTEJAAUVAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTYzNjI2NDExAAAAAAAAAAAABQAAAA0kYWNjMDYzNjI2NDExBAAAAA0kYWNjMTYzNjI2NDExCQEAAAAMZXhjaGFuZ2VGb2xkAAAAAgUAAAANJGFjYzA2MzYyNjQxMQkAAZEAAAACBQAAAA0kbGlzdDYzNjI2NDExAAAAAAAAAAAAAwkAAAAAAAACBQAAAA0kc2l6ZTYzNjI2NDExAAAAAAAAAAABBQAAAA0kYWNjMTYzNjI2NDExBAAAAA0kYWNjMjYzNjI2NDExCQEAAAAMZXhjaGFuZ2VGb2xkAAAAAgUAAAANJGFjYzE2MzYyNjQxMQkAAZEAAAACBQAAAA0kbGlzdDYzNjI2NDExAAAAAAAAAAABAwkAAAAAAAACBQAAAA0kc2l6ZTYzNjI2NDExAAAAAAAAAAACBQAAAA0kYWNjMjYzNjI2NDExBAAAAA0kYWNjMzYzNjI2NDExCQEAAAAMZXhjaGFuZ2VGb2xkAAAAAgUAAAANJGFjYzI2MzYyNjQxMQkAAZEAAAACBQAAAA0kbGlzdDYzNjI2NDExAAAAAAAAAAACAwkAAAAAAAACBQAAAA0kc2l6ZTYzNjI2NDExAAAAAAAAAAADBQAAAA0kYWNjMzYzNjI2NDExBAAAAA0kYWNjNDYzNjI2NDExCQEAAAAMZXhjaGFuZ2VGb2xkAAAAAgUAAAANJGFjYzM2MzYyNjQxMQkAAZEAAAACBQAAAA0kbGlzdDYzNjI2NDExAAAAAAAAAAADCQAAAgAAAAECAAAAEkxpc3Qgc2l6ZSBleGNlZWQgMwQAAAAPZXhjaGFuZ2VDb3VudGVyCAUAAAALJHQwNjMxMDY0MTEAAAACXzEEAAAADmFtb3VudHNXaXRoRmVlCAUAAAALJHQwNjMxMDY0MTEAAAACXzIEAAAADGFzc2V0c0lkU2VuZAgFAAAACyR0MDYzMTA2NDExAAAAAl8zBAAAAA9hbW91bnRUb1JlY2lldmUJAAPwAAAAAgUAAAAEdGhpcwUAAAAOcmVjZWl2ZUFzc2V0SWQDAwkAAAAAAAACBQAAAA9leGNoYW5nZUNvdW50ZXIFAAAAC3JvdXRpbmdTaXplCQAAZwAAAAIFAAAAD2Ftb3VudFRvUmVjaWV2ZQUAAAASbWluQW1vdW50VG9SZWNlaXZlBwkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAAD2Ftb3VudFRvUmVjaWV2ZQUAAAAOcmVjZWl2ZUFzc2V0SWQFAAAAA25pbAkAAAIAAAABAgAAAD5yb3V0aW5nICE9IHJvdXRpbmdTaXplIG9yIGFtb3VudFRvUmVjaWV2ZSA8IG1pbkFtb3VudFRvUmVjZWl2ZQAAAACCW+Wz", "height": 1700097, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: J1oT2zq5ecigcLuuSDfcrV2XmV7y8ewebrBc1cUtPv1m Next: BLpFyCWpUHFNyuwHprZGidX7x6yHV8xhUR8mVANTeTAF Diff:
OldNewDifferences
3737 else if ((p[0] == "flat"))
3838 then {
3939 let B = j(v, w)
40- let C = j((v + m), (w - s[0]))
41-s[0]
40+ let C = s[0]
41+ let D = j((v + m), (w - s[0]))
42+ if ((D >= B))
43+ then C
44+ else throw("Flat contract: invariantNew < invariant")
4245 }
4346 else throw("Incorrect exchange type")
44- let D = if ((p[1] == "cpmm"))
47+ let E = if ((p[1] == "cpmm"))
4548 then {
46- let E = fraction(y, z, (z + x))
47- fraction(E, (u - t), u)
49+ let F = fraction(y, z, (z + x))
50+ fraction(F, (u - t), u)
4851 }
4952 else if ((p[1] == "flat"))
5053 then {
5154 let B = j(x, y)
52- let C = j((x + z), (y - s[1]))
53-s[1]
55+ let G = s[1]
56+ let D = j((x + z), (y - G))
57+ if ((D >= B))
58+ then G
59+ else throw("Flat contract: invariantNew < invariant")
5460 }
5561 else throw("Incorrect exchange type")
5662 if (true)
57- then throw(((toString(D) + " ") + toString(n)))
58- else if ((D >= n))
63+ then throw(((toString(E) + " ") + toString(n)))
64+ else if ((E >= n))
5965 then true
6066 else false
6167 }
6268
6369
64-@Callable(F)
65-func routingTrade (o,p,r,s,q,G,n) = {
66- let H = $Tuple2(F.payments[0].amount, F.payments[0].assetId)
67- let m = H._1
68- let I = H._2
70+@Callable(H)
71+func routingTrade (o,p,r,s,q,I,n) = {
72+ let J = $Tuple2(H.payments[0].amount, H.payments[0].assetId)
73+ let m = J._1
74+ let K = J._2
6975 if (!(l(m, n, o, p, q, r, s)))
7076 then throw("Check transaction possibilty: declined")
7177 else {
72- let J = size(o)
73- func K (L,M) = {
74- let N = L
75- let O = N._1
76- let P = N._2
77- let Q = N._3
78- if ((O == 0))
78+ let L = size(o)
79+ func M (N,O) = {
80+ let P = N
81+ let Q = P._1
82+ let R = P._2
83+ let S = P._3
84+ if ((Q == 0))
7985 then {
80- let R = addressFromStringValue(M)
81- let S = if ((p[O] == "cpmm"))
82- then invoke(R, "exchange", [r[O]], [AttachedPayment(I, m)])
83- else if ((p[O] == "flat"))
84- then invoke(R, "exchange", [r[O], s[O]], [AttachedPayment(I, m)])
86+ let T = addressFromStringValue(O)
87+ let U = if ((p[Q] == "cpmm"))
88+ then invoke(T, "exchange", [r[Q]], [AttachedPayment(K, m)])
89+ else if ((p[Q] == "flat"))
90+ then invoke(T, "exchange", [r[Q], s[Q]], [AttachedPayment(K, m)])
8591 else throw("Incorrect exchange type")
86- if ((S == S))
92+ if ((U == U))
8793 then {
88- let T = S
89- if ($isInstanceOf(T, "(Int, ByteVector)"))
94+ let V = U
95+ if ($isInstanceOf(V, "(Int, ByteVector)"))
9096 then {
91- let S = T
92- let U = S
93- let V = U._1
94- let W = U._2
95- $Tuple3((O + 1), V, W)
97+ let U = V
98+ let W = U
99+ let X = W._1
100+ let Y = W._2
101+ $Tuple3((Q + 1), X, Y)
96102 }
97103 else throw("Incorrect invoke result: expected amountWithFee and assetsIdSend")
98104 }
99105 else throw("Strict value is not equal to itself.")
100106 }
101- else if (if ((O > 0))
102- then (J > O)
107+ else if (if ((Q > 0))
108+ then (L > Q)
103109 else false)
104110 then {
105- let R = addressFromStringValue(M)
106- let X = $Tuple2(Q, P)
107- let Y = X._1
108- let Z = X._2
109- let S = if ((p[O] == "cpmm"))
110- then invoke(R, "exchange", [r[O]], [AttachedPayment(Y, Z)])
111- else if ((p[O] == "flat"))
112- then invoke(R, "exchange", [r[O], s[O]], [AttachedPayment(Y, Z)])
111+ let T = addressFromStringValue(O)
112+ let Z = $Tuple2(S, R)
113+ let aa = Z._1
114+ let ab = Z._2
115+ let U = if ((p[Q] == "cpmm"))
116+ then invoke(T, "exchange", [r[Q]], [AttachedPayment(aa, ab)])
117+ else if ((p[Q] == "flat"))
118+ then invoke(T, "exchange", [r[Q], s[Q]], [AttachedPayment(aa, ab)])
113119 else throw("Incorrect exchange type")
114- if ((S == S))
120+ if ((U == U))
115121 then {
116- let T = S
117- if ($isInstanceOf(T, "(Int, ByteVector)"))
122+ let V = U
123+ if ($isInstanceOf(V, "(Int, ByteVector)"))
118124 then {
119- let S = T
120- let aa = S
121- let V = aa._1
122- let W = aa._2
123- $Tuple3((O + 1), V, W)
125+ let U = V
126+ let ac = U
127+ let X = ac._1
128+ let Y = ac._2
129+ $Tuple3((Q + 1), X, Y)
124130 }
125131 else throw("Incorrect invoke result: expected amountWithFee and assetsIdSend")
126132 }
127133 else throw("Strict value is not equal to itself.")
128134 }
129- else L
135+ else N
130136 }
131137
132- let ab = {
133- let ac = o
134- let ad = size(ac)
135- let ae = $Tuple3(0, 0, base58'')
136- if ((ad == 0))
137- then ae
138+ let ad = {
139+ let ae = o
140+ let af = size(ae)
141+ let ag = $Tuple3(0, 0, base58'')
142+ if ((af == 0))
143+ then ag
138144 else {
139- let af = K(ae, ac[0])
140- if ((ad == 1))
141- then af
145+ let ah = M(ag, ae[0])
146+ if ((af == 1))
147+ then ah
142148 else {
143- let ag = K(af, ac[1])
144- if ((ad == 2))
145- then ag
149+ let ai = M(ah, ae[1])
150+ if ((af == 2))
151+ then ai
146152 else {
147- let ah = K(ag, ac[2])
148- if ((ad == 3))
149- then ah
153+ let aj = M(ai, ae[2])
154+ if ((af == 3))
155+ then aj
150156 else {
151- let ai = K(ah, ac[3])
157+ let ak = M(aj, ae[3])
152158 throw("List size exceed 3")
153159 }
154160 }
155161 }
156162 }
157163 }
158- let O = ab._1
159- let P = ab._2
160- let Q = ab._3
161- let aj = assetBalance(this, G)
162- if (if ((O == J))
163- then (aj >= n)
164+ let Q = ad._1
165+ let R = ad._2
166+ let S = ad._3
167+ let al = assetBalance(this, I)
168+ if (if ((Q == L))
169+ then (al >= n)
164170 else false)
165- then [ScriptTransfer(F.caller, aj, G)]
171+ then [ScriptTransfer(H.caller, al, I)]
166172 else throw("routing != routingSize or amountToRecieve < minAmountToReceive")
167173 }
168174 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = 8
55
66 let b = 100000000
77
88 let c = 1000000000000
99
1010 let d = 50
1111
1212 let e = 2
1313
1414 let f = 46000000
1515
1616 func g (h,i) = (((fraction(c, h, i) + fraction(c, i, h)) / 2) / 10000)
1717
1818
1919 func j (h,i) = {
2020 let k = g(h, i)
2121 (fraction((h + i), b, pow(k, a, d, e, a, CEILING)) + (2 * fraction(pow(fraction(h, i, b), 0, 5, 1, (a / 2), DOWN), pow((k - f), a, d, e, a, DOWN), b)))
2222 }
2323
2424
2525 func l (m,n,o,p,q,r,s) = {
2626 let t = 3000
2727 let u = 1000000
2828 let v = getIntegerValue(addressFromStringValue(o[0]), q[0])
2929 let w = getIntegerValue(addressFromStringValue(o[0]), q[1])
3030 let x = getIntegerValue(addressFromStringValue(o[1]), q[2])
3131 let y = getIntegerValue(addressFromStringValue(o[1]), q[3])
3232 let z = if ((p[0] == "cpmm"))
3333 then {
3434 let A = fraction(w, m, (m + v))
3535 fraction(A, (u - t), u)
3636 }
3737 else if ((p[0] == "flat"))
3838 then {
3939 let B = j(v, w)
40- let C = j((v + m), (w - s[0]))
41-s[0]
40+ let C = s[0]
41+ let D = j((v + m), (w - s[0]))
42+ if ((D >= B))
43+ then C
44+ else throw("Flat contract: invariantNew < invariant")
4245 }
4346 else throw("Incorrect exchange type")
44- let D = if ((p[1] == "cpmm"))
47+ let E = if ((p[1] == "cpmm"))
4548 then {
46- let E = fraction(y, z, (z + x))
47- fraction(E, (u - t), u)
49+ let F = fraction(y, z, (z + x))
50+ fraction(F, (u - t), u)
4851 }
4952 else if ((p[1] == "flat"))
5053 then {
5154 let B = j(x, y)
52- let C = j((x + z), (y - s[1]))
53-s[1]
55+ let G = s[1]
56+ let D = j((x + z), (y - G))
57+ if ((D >= B))
58+ then G
59+ else throw("Flat contract: invariantNew < invariant")
5460 }
5561 else throw("Incorrect exchange type")
5662 if (true)
57- then throw(((toString(D) + " ") + toString(n)))
58- else if ((D >= n))
63+ then throw(((toString(E) + " ") + toString(n)))
64+ else if ((E >= n))
5965 then true
6066 else false
6167 }
6268
6369
64-@Callable(F)
65-func routingTrade (o,p,r,s,q,G,n) = {
66- let H = $Tuple2(F.payments[0].amount, F.payments[0].assetId)
67- let m = H._1
68- let I = H._2
70+@Callable(H)
71+func routingTrade (o,p,r,s,q,I,n) = {
72+ let J = $Tuple2(H.payments[0].amount, H.payments[0].assetId)
73+ let m = J._1
74+ let K = J._2
6975 if (!(l(m, n, o, p, q, r, s)))
7076 then throw("Check transaction possibilty: declined")
7177 else {
72- let J = size(o)
73- func K (L,M) = {
74- let N = L
75- let O = N._1
76- let P = N._2
77- let Q = N._3
78- if ((O == 0))
78+ let L = size(o)
79+ func M (N,O) = {
80+ let P = N
81+ let Q = P._1
82+ let R = P._2
83+ let S = P._3
84+ if ((Q == 0))
7985 then {
80- let R = addressFromStringValue(M)
81- let S = if ((p[O] == "cpmm"))
82- then invoke(R, "exchange", [r[O]], [AttachedPayment(I, m)])
83- else if ((p[O] == "flat"))
84- then invoke(R, "exchange", [r[O], s[O]], [AttachedPayment(I, m)])
86+ let T = addressFromStringValue(O)
87+ let U = if ((p[Q] == "cpmm"))
88+ then invoke(T, "exchange", [r[Q]], [AttachedPayment(K, m)])
89+ else if ((p[Q] == "flat"))
90+ then invoke(T, "exchange", [r[Q], s[Q]], [AttachedPayment(K, m)])
8591 else throw("Incorrect exchange type")
86- if ((S == S))
92+ if ((U == U))
8793 then {
88- let T = S
89- if ($isInstanceOf(T, "(Int, ByteVector)"))
94+ let V = U
95+ if ($isInstanceOf(V, "(Int, ByteVector)"))
9096 then {
91- let S = T
92- let U = S
93- let V = U._1
94- let W = U._2
95- $Tuple3((O + 1), V, W)
97+ let U = V
98+ let W = U
99+ let X = W._1
100+ let Y = W._2
101+ $Tuple3((Q + 1), X, Y)
96102 }
97103 else throw("Incorrect invoke result: expected amountWithFee and assetsIdSend")
98104 }
99105 else throw("Strict value is not equal to itself.")
100106 }
101- else if (if ((O > 0))
102- then (J > O)
107+ else if (if ((Q > 0))
108+ then (L > Q)
103109 else false)
104110 then {
105- let R = addressFromStringValue(M)
106- let X = $Tuple2(Q, P)
107- let Y = X._1
108- let Z = X._2
109- let S = if ((p[O] == "cpmm"))
110- then invoke(R, "exchange", [r[O]], [AttachedPayment(Y, Z)])
111- else if ((p[O] == "flat"))
112- then invoke(R, "exchange", [r[O], s[O]], [AttachedPayment(Y, Z)])
111+ let T = addressFromStringValue(O)
112+ let Z = $Tuple2(S, R)
113+ let aa = Z._1
114+ let ab = Z._2
115+ let U = if ((p[Q] == "cpmm"))
116+ then invoke(T, "exchange", [r[Q]], [AttachedPayment(aa, ab)])
117+ else if ((p[Q] == "flat"))
118+ then invoke(T, "exchange", [r[Q], s[Q]], [AttachedPayment(aa, ab)])
113119 else throw("Incorrect exchange type")
114- if ((S == S))
120+ if ((U == U))
115121 then {
116- let T = S
117- if ($isInstanceOf(T, "(Int, ByteVector)"))
122+ let V = U
123+ if ($isInstanceOf(V, "(Int, ByteVector)"))
118124 then {
119- let S = T
120- let aa = S
121- let V = aa._1
122- let W = aa._2
123- $Tuple3((O + 1), V, W)
125+ let U = V
126+ let ac = U
127+ let X = ac._1
128+ let Y = ac._2
129+ $Tuple3((Q + 1), X, Y)
124130 }
125131 else throw("Incorrect invoke result: expected amountWithFee and assetsIdSend")
126132 }
127133 else throw("Strict value is not equal to itself.")
128134 }
129- else L
135+ else N
130136 }
131137
132- let ab = {
133- let ac = o
134- let ad = size(ac)
135- let ae = $Tuple3(0, 0, base58'')
136- if ((ad == 0))
137- then ae
138+ let ad = {
139+ let ae = o
140+ let af = size(ae)
141+ let ag = $Tuple3(0, 0, base58'')
142+ if ((af == 0))
143+ then ag
138144 else {
139- let af = K(ae, ac[0])
140- if ((ad == 1))
141- then af
145+ let ah = M(ag, ae[0])
146+ if ((af == 1))
147+ then ah
142148 else {
143- let ag = K(af, ac[1])
144- if ((ad == 2))
145- then ag
149+ let ai = M(ah, ae[1])
150+ if ((af == 2))
151+ then ai
146152 else {
147- let ah = K(ag, ac[2])
148- if ((ad == 3))
149- then ah
153+ let aj = M(ai, ae[2])
154+ if ((af == 3))
155+ then aj
150156 else {
151- let ai = K(ah, ac[3])
157+ let ak = M(aj, ae[3])
152158 throw("List size exceed 3")
153159 }
154160 }
155161 }
156162 }
157163 }
158- let O = ab._1
159- let P = ab._2
160- let Q = ab._3
161- let aj = assetBalance(this, G)
162- if (if ((O == J))
163- then (aj >= n)
164+ let Q = ad._1
165+ let R = ad._2
166+ let S = ad._3
167+ let al = assetBalance(this, I)
168+ if (if ((Q == L))
169+ then (al >= n)
164170 else false)
165- then [ScriptTransfer(F.caller, aj, G)]
171+ then [ScriptTransfer(H.caller, al, I)]
166172 else throw("routing != routingSize or amountToRecieve < minAmountToReceive")
167173 }
168174 }
169175
170176

github/deemru/w8io/03bedc9 
66.30 ms