tx · EscHs6AWF6rvDo7aACrWNECJQCDUqTJMaevusfx2D6G3

3N2FodsKP7M3AQ3k3XHbMggtKaeiJEv36gk:  -0.01400000 Waves

2023.05.21 16:44 [2587813] smart account 3N2FodsKP7M3AQ3k3XHbMggtKaeiJEv36gk > SELF 0.00000000 Waves

{ "type": 13, "id": "EscHs6AWF6rvDo7aACrWNECJQCDUqTJMaevusfx2D6G3", "fee": 1400000, "feeAssetId": null, "timestamp": 1684676657737, "version": 2, "chainId": 84, "sender": "3N2FodsKP7M3AQ3k3XHbMggtKaeiJEv36gk", "senderPublicKey": "78Bt5i3ukexi4JyJKXa9f3aGmpTT1t79wSaBXNy68zWU", "proofs": [ "61nZdrEcBomBHNDapK52AF4AYM78UQJucwJNtRGngVm4iMUCMSgRm8MRGHUc28YF7ZUDYuhKBFcn76EUKzdg1Sdk" ], "script": "base64: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", "height": 2587813, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Cdtezr6paPDE9B5Hv9b2GW7PZDFzg8KUcHUz27EcB5GQ Next: 6QNfnCLv4x7c8c7m6z9ekvFC1J3swGEjjoBks6obDG9c Diff:
OldNewDifferences
127127 then if ((p.payments[0].amount == getIntegerValue(((e(f, g) + toBase58String(p.caller.bytes)) + "_received"))))
128128 then if ((p.payments[1].amount == ((p.payments[0].amount / getIntegerValue("fee")) * 100)))
129129 then [DeleteEntry((e(f, g) + toBase58String(p.caller.bytes))), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_price")), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_height")), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_received")), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_asset")), ScriptTransfer(Address(p.caller.bytes), getIntegerValue((e(f, g) + toBase58String(p.caller.bytes))), o(getStringValue((e(f, g) + "_asset2"))))]
130- else throw("Invalid Amount Fee Payment.")
130+ else throw(("Invalid Amount Fee Payment. Try " + toString(((p.payments[0].amount / getIntegerValue("fee")) * 100))))
131131 else throw(("Invalid Amount. Try " + toString(getIntegerValue(((e(f, g) + toBase58String(p.caller.bytes)) + "_received")))))
132132 else throw("Invalid payment asset. Use the first asset of the pair")
133133 else throw("You do not have a Guaranteed swap for this pair. Create a new Swap.")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "Only admin can call this function"
55
66 func b (c) = {
77 let d = toBase58String(c)
88 if (isDefined(getString("admin")))
99 then if (if ((d == getStringValue("admin")))
1010 then true
1111 else (d == toBase58String(this.bytes)))
1212 then true
1313 else false
1414 else if ((d == toBase58String(this.bytes)))
1515 then true
1616 else false
1717 }
1818
1919
2020 func e (f,g) = if (isDefined(getBoolean(((f + "_") + g))))
2121 then ((f + "_") + g)
2222 else if (isDefined(getBoolean(((g + "_") + f))))
2323 then ((g + "_") + f)
2424 else ""
2525
2626
2727 func h (f,g) = {
2828 let i = {
2929 let j = e(f, g)
3030 if ($isInstanceOf(j, "String"))
3131 then {
3232 let d = j
3333 if ((d == ""))
3434 then false
3535 else true
3636 }
3737 else false
3838 }
3939 i
4040 }
4141
4242
4343 func k (l) = {
4444 let m = {
4545 let j = l
4646 if ($isInstanceOf(j, "ByteVector"))
4747 then {
4848 let n = j
4949 toBase58String(n)
5050 }
5151 else "WAVES"
5252 }
5353 m
5454 }
5555
5656
5757 func o (l) = if ((l == "WAVES"))
5858 then unit
5959 else fromBase58String(l)
6060
6161
6262 @Callable(p)
6363 func addAdmin (c) = if (b(p.caller.bytes))
6464 then [StringEntry("admin", c)]
6565 else throw(a)
6666
6767
6868
6969 @Callable(p)
7070 func setOracle (c) = if (b(p.caller.bytes))
7171 then [StringEntry("oracle", c)]
7272 else throw(a)
7373
7474
7575
7676 @Callable(p)
7777 func addPair (f,g) = if (b(p.caller.bytes))
7878 then if (h(f, g))
7979 then throw("This pair has been previously added")
8080 else [BooleanEntry(((f + "_") + g), true)]
8181 else throw(a)
8282
8383
8484
8585 @Callable(p)
8686 func feeSwap (q) = if (b(p.caller.bytes))
8787 then [IntegerEntry("fee", q)]
8888 else throw(a)
8989
9090
9191
9292 @Callable(p)
9393 func Swap (f,g,r) = {
9494 let s = {
9595 let j = p.payments[0].assetId
9696 if ($isInstanceOf(j, "Unit"))
9797 then {
9898 let t = j
9999 pow(10, 0, 8, 0, 0, HALFUP)
100100 }
101101 else if ($isInstanceOf(j, "ByteVector"))
102102 then {
103103 let i = j
104104 pow(10, 0, 8, 0, 0, HALFUP)
105105 }
106106 else throw("Match error")
107107 }
108108 if (h(f, g))
109109 then if (!(isDefined(getInteger((e(f, g) + toBase58String(p.caller.bytes))))))
110110 then if ((k(p.payments[0].assetId) == getStringValue((e(f, g) + "_asset2"))))
111111 then if ((r == getIntegerValue((e(f, g) + "_price"))))
112112 then if ((getIntegerValue((e(f, g) + "_total")) > ((p.payments[0].amount * s) / r)))
113113 then [ScriptTransfer(Address(p.caller.bytes), ((p.payments[0].amount * s) / r), o(getStringValue((e(f, g) + "_asset1")))), IntegerEntry((e(f, g) + toBase58String(p.caller.bytes)), p.payments[0].amount), IntegerEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_price"), r), IntegerEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_height"), height), IntegerEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_received"), ((p.payments[0].amount * s) / r)), StringEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_asset"), k(p.payments[0].assetId)), IntegerEntry((e(f, g) + "_total"), (getIntegerValue((e(f, g) + "_total")) - ((p.payments[0].amount * s) / r)))]
114114 else throw("Amount above that available for Swap. Try decreasing the value.")
115115 else throw("Invalid price.")
116116 else throw("Invalid payment asset. Use the second asset of the pair")
117117 else throw("You already have a Guaranteed Swap made before, cancel the previous one or withdraw the current one to create a new Swap.")
118118 else throw("Invalid Pair.")
119119 }
120120
121121
122122
123123 @Callable(p)
124124 func Withdraw (f,g) = if (h(f, g))
125125 then if (isDefined(getInteger((e(f, g) + toBase58String(p.caller.bytes)))))
126126 then if ((k(p.payments[0].assetId) == getStringValue((e(f, g) + "_asset1"))))
127127 then if ((p.payments[0].amount == getIntegerValue(((e(f, g) + toBase58String(p.caller.bytes)) + "_received"))))
128128 then if ((p.payments[1].amount == ((p.payments[0].amount / getIntegerValue("fee")) * 100)))
129129 then [DeleteEntry((e(f, g) + toBase58String(p.caller.bytes))), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_price")), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_height")), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_received")), DeleteEntry(((e(f, g) + toBase58String(p.caller.bytes)) + "_asset")), ScriptTransfer(Address(p.caller.bytes), getIntegerValue((e(f, g) + toBase58String(p.caller.bytes))), o(getStringValue((e(f, g) + "_asset2"))))]
130- else throw("Invalid Amount Fee Payment.")
130+ else throw(("Invalid Amount Fee Payment. Try " + toString(((p.payments[0].amount / getIntegerValue("fee")) * 100))))
131131 else throw(("Invalid Amount. Try " + toString(getIntegerValue(((e(f, g) + toBase58String(p.caller.bytes)) + "_received")))))
132132 else throw("Invalid payment asset. Use the first asset of the pair")
133133 else throw("You do not have a Guaranteed swap for this pair. Create a new Swap.")
134134 else throw("Invalid Pair.")
135135
136136
137137
138138 @Callable(p)
139139 func depositOracle (u,v,r) = {
140140 let w = {
141141 let j = getString("oracle")
142142 if ($isInstanceOf(j, "String"))
143143 then {
144144 let x = j
145145 x
146146 }
147147 else throw("Oracle is not defined. Please contact the admin.")
148148 }
149149 let y = k(p.payments[0].assetId)
150150 let m = {
151151 let j = getInteger(((((u + "_") + v) + "_") + y))
152152 if ($isInstanceOf(j, "Int"))
153153 then {
154154 let x = j
155155 x
156156 }
157157 else 0
158158 }
159159 let z = {
160160 let j = getInteger((((u + "_") + v) + "_total"))
161161 if ($isInstanceOf(j, "Int"))
162162 then {
163163 let A = j
164164 (A + p.payments[0].amount)
165165 }
166166 else p.payments[0].amount
167167 }
168168 if ((toBase58String(p.caller.bytes) == w))
169169 then [IntegerEntry(((((u + "_") + v) + "_") + y), (m + p.payments[0].amount)), IntegerEntry((((u + "_") + v) + "_price"), r), BooleanEntry(((u + "_") + v), true), StringEntry((((u + "_") + v) + "_asset1"), u), StringEntry((((u + "_") + v) + "_asset2"), v), IntegerEntry((((u + "_") + v) + "_total"), z)]
170170 else throw(a)
171171 }
172172
173173
174174 @Verifier(B)
175175 func C () = sigVerify(B.bodyBytes, B.proofs[0], B.senderPublicKey)
176176

github/deemru/w8io/169f3d6 
39.59 ms