tx · 3RSuSX2HnzPk9WDn8is6wWyhe6fPwMcxBZvWSQF8mABE

3N61RYWc9QuqKUwLvowpZZLpgUnqpQSFwLq:  -0.01000000 Waves

2024.03.04 12:38 [3003087] smart account 3N61RYWc9QuqKUwLvowpZZLpgUnqpQSFwLq > SELF 0.00000000 Waves

{ "type": 13, "id": "3RSuSX2HnzPk9WDn8is6wWyhe6fPwMcxBZvWSQF8mABE", "fee": 1000000, "feeAssetId": null, "timestamp": 1709545177245, "version": 2, "chainId": 84, "sender": "3N61RYWc9QuqKUwLvowpZZLpgUnqpQSFwLq", "senderPublicKey": "HdwFH8HPYu3HG27yK6bszu1CdR4uik4HgzyTimeSfcYf", "proofs": [ "2HN2kJY9rJLznqptAGo64KhmfeF1QGjAYfeLbaF3ZutwNPAPzHixYpmo8g6rxzEKfAUnvvkvhA12y88acMBp66J8" ], "script": "base64:BgIJCAISABIDCgEIEQAQYW1vdW50QXNzZXRJZEtleQINYW1vdW50QXNzZXRJZAAPcHJpY2VBc3NldElkS2V5AgxwcmljZUFzc2V0SWQACmZlZVJhdGVLZXkCB2ZlZVJhdGUBCmdldEFzc2V0SWQBDWFzc2V0SWRTdHJpbmcDCQAAAgUNYXNzZXRJZFN0cmluZwIFV0FWRVMFBHVuaXQJANkEAQUNYXNzZXRJZFN0cmluZwEPZ2V0QXNzZXRCYWxhbmNlAQdhc3NldElkBAckbWF0Y2gwBQdhc3NldElkAwkAAQIFByRtYXRjaDACCkJ5dGVWZWN0b3IEAmlkBQckbWF0Y2gwCQDwBwIFBHRoaXMFAmlkCAkA7wcBBQR0aGlzCWF2YWlsYWJsZQATYW1vdW50QXNzZXRJZFN0cmluZwkBEUBleHRyTmF0aXZlKDEwNTMpAgUEdGhpcwUQYW1vdW50QXNzZXRJZEtleQANYW1vdW50QXNzZXRJZAkBCmdldEFzc2V0SWQBBRNhbW91bnRBc3NldElkU3RyaW5nABJhbW91bnRBc3NldEJhbGFuY2UJAQ9nZXRBc3NldEJhbGFuY2UBBQ1hbW91bnRBc3NldElkABJwcmljZUFzc2V0SWRTdHJpbmcJARFAZXh0ck5hdGl2ZSgxMDUzKQIFBHRoaXMFD3ByaWNlQXNzZXRJZEtleQAMcHJpY2VBc3NldElkCQEKZ2V0QXNzZXRJZAEFEnByaWNlQXNzZXRJZFN0cmluZwARcHJpY2VBc3NldEJhbGFuY2UJAQ9nZXRBc3NldEJhbGFuY2UBBQxwcmljZUFzc2V0SWQABlNDQUxFOACAwtcvAAdmZWVSYXRlCQELdmFsdWVPckVsc2UCCQCaCAIFBHRoaXMFCmZlZVJhdGVLZXkAwIQ9AQdhbW1DYWxjAwlpbml0QW1CYWwJaW5pdFByQmFsDXBheW1lbnRBbW91bnQECG5ld1ByQmFsCQBkAgUJaW5pdFByQmFsBQ1wYXltZW50QW1vdW50BAhuZXdBbUJhbAkAZQIFCWluaXRBbUJhbAkAawMFCWluaXRBbUJhbAUJaW5pdFByQmFsBQhuZXdQckJhbAQKc2VuZEFtb3VudAkAZQIFCWluaXRBbUJhbAUIbmV3QW1CYWwEBG5ld0sJAGgCBQhuZXdBbUJhbAUIbmV3UHJCYWwEBG9sZEsJAGgCBQlpbml0QW1CYWwFCWluaXRQckJhbAkAmQoHBQpzZW5kQW1vdW50BQlpbml0QW1CYWwFCWluaXRQckJhbAUEb2xkSwUIbmV3QW1CYWwFCG5ld1ByQmFsBQRuZXdLARFjYWxjUmF3U2VuZEFtb3VudAMFYW1CYWwFcHJCYWwNcGF5bWVudEFtb3VudAQLJHQwMTUzNDE3MDUJAQdhbW1DYWxjAwUFYW1CYWwFBXByQmFsBQ1wYXltZW50QW1vdW50BApzZW5kQW1vdW50CAULJHQwMTUzNDE3MDUCXzEECWluaXRBbUJhbAgFCyR0MDE1MzQxNzA1Al8yBAlpbml0UHJCYWwIBQskdDAxNTM0MTcwNQJfMwQEb2xkSwgFCyR0MDE1MzQxNzA1Al80BAhuZXdBbUJhbAgFCyR0MDE1MzQxNzA1Al81BAhuZXdQckJhbAgFCyR0MDE1MzQxNzA1Al82BARuZXdLCAULJHQwMTUzNDE3MDUCXzcFCnNlbmRBbW91bnQBDmNhbGNTZW5kQW1vdW50Ag5wYXltZW50QXNzZXRJZA1wYXltZW50QW1vdW50BAskdDAxODA2MTk1OAMJAAACBQ5wYXltZW50QXNzZXRJZAUNYW1vdW50QXNzZXRJZAkAlAoCBQxwcmljZUFzc2V0SWQFDWFtb3VudEFzc2V0SWQJAJQKAgUNYW1vdW50QXNzZXRJZAUMcHJpY2VBc3NldElkBAlhbUFzc2V0SWQIBQskdDAxODA2MTk1OAJfMQQJcHJBc3NldElkCAULJHQwMTgwNjE5NTgCXzIECWluaXRBbUJhbAkBD2dldEFzc2V0QmFsYW5jZQEFCWFtQXNzZXRJZAQJaW5pdFByQmFsCQBlAgkBD2dldEFzc2V0QmFsYW5jZQEFCXByQXNzZXRJZAUNcGF5bWVudEFtb3VudAQNcmF3U2VuZEFtb3VudAkBEWNhbGNSYXdTZW5kQW1vdW50AwUJaW5pdEFtQmFsBQlpbml0UHJCYWwFDXBheW1lbnRBbW91bnQECWZlZUFtb3VudAkAawMFDXJhd1NlbmRBbW91bnQFB2ZlZVJhdGUFBlNDQUxFOAQKc2VuZEFtb3VudAkAZQIFDXJhd1NlbmRBbW91bnQFCWZlZUFtb3VudAQNdXNlclJlYWxQcmljZQMJAAACBQ5wYXltZW50QXNzZXRJZAUNYW1vdW50QXNzZXRJZAkAawMFCnNlbmRBbW91bnQFBlNDQUxFOAUNcGF5bWVudEFtb3VudAkAawMFDXBheW1lbnRBbW91bnQFBlNDQUxFOAUKc2VuZEFtb3VudAkAlgoEBQpzZW5kQW1vdW50BQlmZWVBbW91bnQFCWFtQXNzZXRJZAUNdXNlclJlYWxQcmljZQEMc3dhcEludGVybmFsAgdhZGRyZXNzAWkEBmNoZWNrcwkAzAgCAwkAZgIJAJADAQgFAWkIcGF5bWVudHMAAAYJAAIBAhhzaG91bGQgYmUgd2l0aCAxIHBheW1lbnQJAMwIAgMDCQAAAggJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBQ1hbW91bnRBc3NldElkBgkAAAIICQCRAwIIBQFpCHBheW1lbnRzAAAHYXNzZXRJZAUMcHJpY2VBc3NldElkBgkAAgEJALkJAgkAzAgCAhtwYXltZW50IGFzc2V0SWQgc2hvdWxkIGJlICgJAMwIAgUTYW1vdW50QXNzZXRJZFN0cmluZwkAzAgCAgYpIG9yICgJAMwIAgUScHJpY2VBc3NldElkU3RyaW5nCQDMCAICASkFA25pbAIBIAUDbmlsAwkAAAIFBmNoZWNrcwUGY2hlY2tzBA5wYXltZW50QXNzZXRJZAgJAJEDAggFAWkIcGF5bWVudHMAAAdhc3NldElkBA1wYXltZW50QW1vdW50CAkAkQMCCAUBaQhwYXltZW50cwAABmFtb3VudAQLJHQwMjk1NTMwNTgJAQ5jYWxjU2VuZEFtb3VudAIFDnBheW1lbnRBc3NldElkBQ1wYXltZW50QW1vdW50BApzZW5kQW1vdW50CAULJHQwMjk1NTMwNTgCXzEECWZlZUFtb3VudAgFCyR0MDI5NTUzMDU4Al8yBAtzZW5kQXNzZXRJZAgFCyR0MDI5NTUzMDU4Al8zBA11c2VyUmVhbFByaWNlCAULJHQwMjk1NTMwNTgCXzQEC3NlbmRBY3Rpb25zAwkBAiE9AgUJZmVlQW1vdW50AAAJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwUHYWRkcmVzcwUKc2VuZEFtb3VudAULc2VuZEFzc2V0SWQFA25pbAkAAgECEWFtb3VudCBpcyB0b28gbG93CQCUCgIFC3NlbmRBY3Rpb25zCQCWCgQFCnNlbmRBbW91bnQFCWZlZUFtb3VudAULc2VuZEFzc2V0SWQFDXVzZXJSZWFsUHJpY2UJAAIBAiRTdHJpY3QgdmFsdWUgaXMgbm90IGVxdWFsIHRvIGl0c2VsZi4CAWkBBHN3YXAACQEMc3dhcEludGVybmFsAggFAWkGY2FsbGVyBQFpAWkBB3N3YXBGb3IBB2FkZHJlc3MJAQxzd2FwSW50ZXJuYWwCCQERQGV4dHJOYXRpdmUoMTA2MikBBQdhZGRyZXNzBQFpAJM5OXc=", "height": 3003087, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 47XFd1viawS1782AFAiqcsWBSXUdtELv9ixndhRCcyCj Next: 6KYVAw5XzxsofqQhM5rsfFRR6im2PGwTENNmbNiZmJiA Diff:
OldNewDifferences
4040 let q = valueOrElse(getInteger(this, c), 1000000)
4141
4242 func r (s,t,u) = {
43- let v = (s - fraction(s, t, (t + u)))
44- let w = (s - v)
45- let x = (t + u)
46- let y = (w * x)
43+ let v = (t + u)
44+ let w = (s - fraction(s, t, v))
45+ let x = (s - w)
46+ let y = (w * v)
4747 let z = (s * t)
48- $Tuple7(v, s, t, z, w, x, y)
48+ $Tuple7(x, s, t, z, w, v, y)
4949 }
5050
5151
52-func A (s,t,u) = {
53- let v = (s - fraction(s, t, (t + u)))
54- let w = (s - v)
55- let x = (t + u)
56- v
52+func A (B,C,u) = {
53+ let D = r(B, C, u)
54+ let x = D._1
55+ let s = D._2
56+ let t = D._3
57+ let z = D._4
58+ let w = D._5
59+ let v = D._6
60+ let y = D._7
61+ x
5762 }
5863
5964
60-func B (C,u) = {
61- let D = if ((C == k))
65+func E (F,u) = {
66+ let G = if ((F == k))
6267 then $Tuple2(n, k)
6368 else $Tuple2(k, n)
64- let E = D._1
65- let F = D._2
66- let s = f(E)
67- let t = (f(F) - u)
68- let G = A(s, t, u)
69- let H = fraction(G, q, p)
70- let v = (G - H)
71- let I = if ((C == k))
72- then fraction(v, p, u)
73- else fraction(u, p, v)
74- $Tuple4(v, H, E, I)
69+ let H = G._1
70+ let I = G._2
71+ let s = f(H)
72+ let t = (f(I) - u)
73+ let J = A(s, t, u)
74+ let K = fraction(J, q, p)
75+ let x = (J - K)
76+ let L = if ((F == k))
77+ then fraction(x, p, u)
78+ else fraction(u, p, x)
79+ $Tuple4(x, K, H, L)
7580 }
7681
7782
78-func J (K,L) = {
79- let M = [if ((size(L.payments) > 0))
83+func M (N,O) = {
84+ let P = [if ((size(O.payments) > 0))
8085 then true
81- else throw("should be with 1 payment"), if (if ((L.payments[0].assetId == k))
86+ else throw("should be with 1 payment"), if (if ((O.payments[0].assetId == k))
8287 then true
83- else (L.payments[0].assetId == n))
88+ else (O.payments[0].assetId == n))
8489 then true
8590 else throw(makeString(["payment assetId should be (", j, ") or (", m, ")"], " "))]
86- if ((M == M))
91+ if ((P == P))
8792 then {
88- let C = L.payments[0].assetId
89- let u = L.payments[0].amount
90- let N = B(C, u)
91- let v = N._1
92- let H = N._2
93- let O = N._3
94- let I = N._4
95- let P = if ((H != 0))
96- then [ScriptTransfer(K, v, O)]
93+ let F = O.payments[0].assetId
94+ let u = O.payments[0].amount
95+ let Q = E(F, u)
96+ let x = Q._1
97+ let K = Q._2
98+ let R = Q._3
99+ let L = Q._4
100+ let S = if ((K != 0))
101+ then [ScriptTransfer(N, x, R)]
97102 else throw("amount is too low")
98- $Tuple2(P, $Tuple4(v, H, O, I))
103+ $Tuple2(S, $Tuple4(x, K, R, L))
99104 }
100105 else throw("Strict value is not equal to itself.")
101106 }
102107
103108
104-@Callable(L)
105-func swap () = J(L.caller, L)
109+@Callable(O)
110+func swap () = M(O.caller, O)
106111
107112
108113
109-@Callable(L)
110-func swapFor (K) = J(addressFromStringValue(K), L)
114+@Callable(O)
115+func swapFor (N) = M(addressFromStringValue(N), O)
111116
112117
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "amountAssetId"
55
66 let b = "priceAssetId"
77
88 let c = "feeRate"
99
1010 func d (e) = if ((e == "WAVES"))
1111 then unit
1212 else fromBase58String(e)
1313
1414
1515 func f (g) = {
1616 let h = g
1717 if ($isInstanceOf(h, "ByteVector"))
1818 then {
1919 let i = h
2020 assetBalance(this, i)
2121 }
2222 else wavesBalance(this).available
2323 }
2424
2525
2626 let j = getStringValue(this, a)
2727
2828 let k = d(j)
2929
3030 let l = f(k)
3131
3232 let m = getStringValue(this, b)
3333
3434 let n = d(m)
3535
3636 let o = f(n)
3737
3838 let p = 100000000
3939
4040 let q = valueOrElse(getInteger(this, c), 1000000)
4141
4242 func r (s,t,u) = {
43- let v = (s - fraction(s, t, (t + u)))
44- let w = (s - v)
45- let x = (t + u)
46- let y = (w * x)
43+ let v = (t + u)
44+ let w = (s - fraction(s, t, v))
45+ let x = (s - w)
46+ let y = (w * v)
4747 let z = (s * t)
48- $Tuple7(v, s, t, z, w, x, y)
48+ $Tuple7(x, s, t, z, w, v, y)
4949 }
5050
5151
52-func A (s,t,u) = {
53- let v = (s - fraction(s, t, (t + u)))
54- let w = (s - v)
55- let x = (t + u)
56- v
52+func A (B,C,u) = {
53+ let D = r(B, C, u)
54+ let x = D._1
55+ let s = D._2
56+ let t = D._3
57+ let z = D._4
58+ let w = D._5
59+ let v = D._6
60+ let y = D._7
61+ x
5762 }
5863
5964
60-func B (C,u) = {
61- let D = if ((C == k))
65+func E (F,u) = {
66+ let G = if ((F == k))
6267 then $Tuple2(n, k)
6368 else $Tuple2(k, n)
64- let E = D._1
65- let F = D._2
66- let s = f(E)
67- let t = (f(F) - u)
68- let G = A(s, t, u)
69- let H = fraction(G, q, p)
70- let v = (G - H)
71- let I = if ((C == k))
72- then fraction(v, p, u)
73- else fraction(u, p, v)
74- $Tuple4(v, H, E, I)
69+ let H = G._1
70+ let I = G._2
71+ let s = f(H)
72+ let t = (f(I) - u)
73+ let J = A(s, t, u)
74+ let K = fraction(J, q, p)
75+ let x = (J - K)
76+ let L = if ((F == k))
77+ then fraction(x, p, u)
78+ else fraction(u, p, x)
79+ $Tuple4(x, K, H, L)
7580 }
7681
7782
78-func J (K,L) = {
79- let M = [if ((size(L.payments) > 0))
83+func M (N,O) = {
84+ let P = [if ((size(O.payments) > 0))
8085 then true
81- else throw("should be with 1 payment"), if (if ((L.payments[0].assetId == k))
86+ else throw("should be with 1 payment"), if (if ((O.payments[0].assetId == k))
8287 then true
83- else (L.payments[0].assetId == n))
88+ else (O.payments[0].assetId == n))
8489 then true
8590 else throw(makeString(["payment assetId should be (", j, ") or (", m, ")"], " "))]
86- if ((M == M))
91+ if ((P == P))
8792 then {
88- let C = L.payments[0].assetId
89- let u = L.payments[0].amount
90- let N = B(C, u)
91- let v = N._1
92- let H = N._2
93- let O = N._3
94- let I = N._4
95- let P = if ((H != 0))
96- then [ScriptTransfer(K, v, O)]
93+ let F = O.payments[0].assetId
94+ let u = O.payments[0].amount
95+ let Q = E(F, u)
96+ let x = Q._1
97+ let K = Q._2
98+ let R = Q._3
99+ let L = Q._4
100+ let S = if ((K != 0))
101+ then [ScriptTransfer(N, x, R)]
97102 else throw("amount is too low")
98- $Tuple2(P, $Tuple4(v, H, O, I))
103+ $Tuple2(S, $Tuple4(x, K, R, L))
99104 }
100105 else throw("Strict value is not equal to itself.")
101106 }
102107
103108
104-@Callable(L)
105-func swap () = J(L.caller, L)
109+@Callable(O)
110+func swap () = M(O.caller, O)
106111
107112
108113
109-@Callable(L)
110-func swapFor (K) = J(addressFromStringValue(K), L)
114+@Callable(O)
115+func swapFor (N) = M(addressFromStringValue(N), O)
111116
112117

github/deemru/w8io/c3f4982 
31.97 ms