tx · GHjq6Tw2R3dS4SbaPh3KJEBfr21qkMP1pBf7DLqtJoVY

3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU:  -0.01400000 Waves

2022.06.06 17:07 [3150171] smart account 3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU > SELF 0.00000000 Waves

{ "type": 13, "id": "GHjq6Tw2R3dS4SbaPh3KJEBfr21qkMP1pBf7DLqtJoVY", "fee": 1400000, "feeAssetId": null, "timestamp": 1654524468359, "version": 2, "chainId": 87, "sender": "3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU", "senderPublicKey": "Dmn1fWHxpwN789LPfoMHFj7uSYKSsb5VFfyNQyQ629f9", "proofs": [ "4Q8dYSBWwNxmrBRtRZjHBCsC8nB23TBw9uKHirB7NWpYpVxZR9TpQH6qQVnKSqcMMqtxXwrVsDL8sWXrZVMkKnnA" ], "script": "base64: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", "height": 3150171, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 8vdeJbVcxbaCojfFUrcV8ySwhoKFbRM3jttVdttWCdtH Next: CcnoSNM36wXGfeXDEGp4YQ1kKDzFignUkCQpuaDb8rJY Diff:
OldNewDifferences
114114 let usdnBalanceBefore = getBalance(usdnId)
115115 if ((usdnBalanceBefore == usdnBalanceBefore))
116116 then {
117- let convertedFee = invoke(Address(fromBase58String(tryGetString((("static_asset_" + asset1Str) + "_puzzlePool")))), "swap", [usdnIdStr, 0], [AttachedPayment(asset1, feeAmount)])
118- if ((convertedFee == convertedFee))
119- then {
120- let usdnBalanceAfter = getBalance(usdnId)
121- if ((usdnBalanceAfter == usdnBalanceAfter))
122- then (usdnBalanceAfter - usdnBalanceBefore)
117+ let poolAddressStr = tryGetString((("static_asset_" + asset1Str) + "_puzzlePool"))
118+ if ((poolAddressStr == ""))
119+ then 0
120+ else {
121+ let convertedFee = invoke(addressFromStringValue(poolAddressStr), "swap", [usdnIdStr, 0], [AttachedPayment(asset1, feeAmount)])
122+ if ((convertedFee == convertedFee))
123+ then {
124+ let usdnBalanceAfter = getBalance(usdnId)
125+ if ((usdnBalanceAfter == usdnBalanceAfter))
126+ then (usdnBalanceAfter - usdnBalanceBefore)
127+ else throw("Strict value is not equal to itself.")
128+ }
123129 else throw("Strict value is not equal to itself.")
124130 }
125- else throw("Strict value is not equal to itself.")
126131 }
127132 else throw("Strict value is not equal to itself.")
128133 }
150155 func swapWithReferral (routesStr,minToReceive,refKey) = {
151156 func doSwap (amount0,swap) = {
152157 let swapLi = split(swap, ",")
153- let $t031553236 = $Tuple4(swapLi[0], swapLi[1], swapLi[2], swapLi[3])
154- let dApp = $t031553236._1
155- let dAppType = $t031553236._2
156- let t0Str = $t031553236._3
157- let t1Str = $t031553236._4
158+ let $t032493330 = $Tuple4(swapLi[0], swapLi[1], swapLi[2], swapLi[3])
159+ let dApp = $t032493330._1
160+ let dAppType = $t032493330._2
161+ let t0Str = $t032493330._3
162+ let t1Str = $t032493330._4
158163 let t0 = getAssetBytes(t0Str)
159164 let t1 = getAssetBytes(t1Str)
160165 let balanceBefore = getBalance(t1)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let usdnIdStr = "DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p"
55
66 let usdnId = base58'DG2xFkPdDwKUoBkzGAhQtLpSGzfXLiCYPEzeKH2Ad24p'
77
88 func tryGetString (key) = match getString(this, key) {
99 case b: String =>
1010 b
1111 case _ =>
1212 ""
1313 }
1414
1515
1616 func getAssetString (assetId) = match assetId {
1717 case b: ByteVector =>
1818 toBase58String(b)
1919 case _ =>
2020 "WAVES"
2121 }
2222
2323
2424 func getAssetBytes (assetIdStr) = if ((assetIdStr == "WAVES"))
2525 then unit
2626 else fromBase58String(assetIdStr)
2727
2828
2929 func getBalance (assetId) = match assetId {
3030 case x: Unit =>
3131 wavesBalance(this).available
3232 case _ =>
3333 assetBalance(this, value(assetId))
3434 }
3535
3636
3737 @Callable(i)
3838 func swap (routesStr,minToReceive) = {
3939 func doSwap (amount0,swap) = {
4040 let swapLi = split(swap, ",")
4141 let $t0906987 = $Tuple4(swapLi[0], swapLi[1], swapLi[2], swapLi[3])
4242 let dApp = $t0906987._1
4343 let dAppType = $t0906987._2
4444 let t0Str = $t0906987._3
4545 let t1Str = $t0906987._4
4646 let t0 = getAssetBytes(t0Str)
4747 let t1 = getAssetBytes(t1Str)
4848 let balanceBefore = getBalance(t1)
4949 if ((balanceBefore == balanceBefore))
5050 then {
5151 let i1 = if ((dAppType == "swopfi"))
5252 then invoke(Address(fromBase58String(dApp)), "exchange", [1], [AttachedPayment(t0, amount0)])
5353 else invoke(Address(fromBase58String(dApp)), "swap", [t1Str, 0], [AttachedPayment(t0, amount0)])
5454 if ((i1 == i1))
5555 then {
5656 let balanceAfter = getBalance(t1)
5757 if ((balanceAfter == balanceAfter))
5858 then (balanceAfter - balanceBefore)
5959 else throw("Strict value is not equal to itself.")
6060 }
6161 else throw("Strict value is not equal to itself.")
6262 }
6363 else throw("Strict value is not equal to itself.")
6464 }
6565
6666 func doRoute (accum,route) = {
6767 let amountIn = parseIntValue(split(route, "/")[0])
6868 let swaps = split(split(route, "/")[1], ";")
6969 let swapsResult = {
7070 let $l = swaps
7171 let $s = size($l)
7272 let $acc0 = amountIn
7373 func $f0_1 ($a,$i) = if (($i >= $s))
7474 then $a
7575 else doSwap($a, $l[$i])
7676
7777 func $f0_2 ($a,$i) = if (($i >= $s))
7878 then $a
7979 else throw("List size exceeds 3")
8080
8181 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
8282 }
8383 if ((swapsResult == swapsResult))
8484 then (accum + swapsResult)
8585 else throw("Strict value is not equal to itself.")
8686 }
8787
8888 let routes = split(routesStr, "|")
8989 let amountIn = parseIntValue(split(routes[0], "/")[0])
9090 let asset0Id = getAssetBytes(split(split(split(routes[0], "/")[1], ";")[0], ",")[2])
9191 let totalOut = {
9292 let $l = routes
9393 let $s = size($l)
9494 let $acc0 = 0
9595 func $f0_1 ($a,$i) = if (($i >= $s))
9696 then $a
9797 else doRoute($a, $l[$i])
9898
9999 func $f0_2 ($a,$i) = if (($i >= $s))
100100 then $a
101101 else throw("List size exceeds 5")
102102
103103 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
104104 }
105105 if ((totalOut == totalOut))
106106 then {
107107 let feeAmount = fraction(totalOut, 29, 10000)
108108 let cleanTotalAmount = (totalOut - feeAmount)
109109 let asset1Str = split(routesStr, ",")[(size(split(routesStr, ",")) - 1)]
110110 let asset1 = getAssetBytes(asset1Str)
111111 let usdnFee = if ((asset1 == usdnId))
112112 then feeAmount
113113 else {
114114 let usdnBalanceBefore = getBalance(usdnId)
115115 if ((usdnBalanceBefore == usdnBalanceBefore))
116116 then {
117- let convertedFee = invoke(Address(fromBase58String(tryGetString((("static_asset_" + asset1Str) + "_puzzlePool")))), "swap", [usdnIdStr, 0], [AttachedPayment(asset1, feeAmount)])
118- if ((convertedFee == convertedFee))
119- then {
120- let usdnBalanceAfter = getBalance(usdnId)
121- if ((usdnBalanceAfter == usdnBalanceAfter))
122- then (usdnBalanceAfter - usdnBalanceBefore)
117+ let poolAddressStr = tryGetString((("static_asset_" + asset1Str) + "_puzzlePool"))
118+ if ((poolAddressStr == ""))
119+ then 0
120+ else {
121+ let convertedFee = invoke(addressFromStringValue(poolAddressStr), "swap", [usdnIdStr, 0], [AttachedPayment(asset1, feeAmount)])
122+ if ((convertedFee == convertedFee))
123+ then {
124+ let usdnBalanceAfter = getBalance(usdnId)
125+ if ((usdnBalanceAfter == usdnBalanceAfter))
126+ then (usdnBalanceAfter - usdnBalanceBefore)
127+ else throw("Strict value is not equal to itself.")
128+ }
123129 else throw("Strict value is not equal to itself.")
124130 }
125- else throw("Strict value is not equal to itself.")
126131 }
127132 else throw("Strict value is not equal to itself.")
128133 }
129134 if ((usdnFee == usdnFee))
130135 then {
131136 let topUp = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(usdnId, usdnFee)])
132137 if ((topUp == topUp))
133138 then if ((minToReceive > cleanTotalAmount))
134139 then throw(("amount to receive is lower than expected one " + toString(cleanTotalAmount)))
135140 else if (if ((asset0Id != i.payments[0].assetId))
136141 then true
137142 else (amountIn > i.payments[0].amount))
138143 then throw("wrong asset attached as payment")
139144 else [ScriptTransfer(i.caller, cleanTotalAmount, asset1)]
140145 else throw("Strict value is not equal to itself.")
141146 }
142147 else throw("Strict value is not equal to itself.")
143148 }
144149 else throw("Strict value is not equal to itself.")
145150 }
146151
147152
148153
149154 @Callable(i)
150155 func swapWithReferral (routesStr,minToReceive,refKey) = {
151156 func doSwap (amount0,swap) = {
152157 let swapLi = split(swap, ",")
153- let $t031553236 = $Tuple4(swapLi[0], swapLi[1], swapLi[2], swapLi[3])
154- let dApp = $t031553236._1
155- let dAppType = $t031553236._2
156- let t0Str = $t031553236._3
157- let t1Str = $t031553236._4
158+ let $t032493330 = $Tuple4(swapLi[0], swapLi[1], swapLi[2], swapLi[3])
159+ let dApp = $t032493330._1
160+ let dAppType = $t032493330._2
161+ let t0Str = $t032493330._3
162+ let t1Str = $t032493330._4
158163 let t0 = getAssetBytes(t0Str)
159164 let t1 = getAssetBytes(t1Str)
160165 let balanceBefore = getBalance(t1)
161166 if ((balanceBefore == balanceBefore))
162167 then {
163168 let i1 = if ((dAppType == "swopfi"))
164169 then invoke(Address(fromBase58String(dApp)), "exchange", [1], [AttachedPayment(t0, amount0)])
165170 else invoke(Address(fromBase58String(dApp)), "swap", [t1Str, 0], [AttachedPayment(t0, amount0)])
166171 if ((i1 == i1))
167172 then {
168173 let balanceAfter = getBalance(t1)
169174 if ((balanceAfter == balanceAfter))
170175 then (balanceAfter - balanceBefore)
171176 else throw("Strict value is not equal to itself.")
172177 }
173178 else throw("Strict value is not equal to itself.")
174179 }
175180 else throw("Strict value is not equal to itself.")
176181 }
177182
178183 func doRoute (accum,route) = {
179184 let amountIn = parseIntValue(split(route, "/")[0])
180185 let swaps = split(split(route, "/")[1], ";")
181186 let swapsResult = {
182187 let $l = swaps
183188 let $s = size($l)
184189 let $acc0 = amountIn
185190 func $f0_1 ($a,$i) = if (($i >= $s))
186191 then $a
187192 else doSwap($a, $l[$i])
188193
189194 func $f0_2 ($a,$i) = if (($i >= $s))
190195 then $a
191196 else throw("List size exceeds 3")
192197
193198 $f0_2($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3)
194199 }
195200 if ((swapsResult == swapsResult))
196201 then (accum + swapsResult)
197202 else throw("Strict value is not equal to itself.")
198203 }
199204
200205 let routes = split(routesStr, "|")
201206 let amountIn = parseIntValue(split(routes[0], "/")[0])
202207 let asset0Id = getAssetBytes(split(split(split(routes[0], "/")[1], ";")[0], ",")[2])
203208 let totalOut = {
204209 let $l = routes
205210 let $s = size($l)
206211 let $acc0 = 0
207212 func $f0_1 ($a,$i) = if (($i >= $s))
208213 then $a
209214 else doRoute($a, $l[$i])
210215
211216 func $f0_2 ($a,$i) = if (($i >= $s))
212217 then $a
213218 else throw("List size exceeds 5")
214219
215220 $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5)
216221 }
217222 if ((totalOut == totalOut))
218223 then {
219224 let feeAmount = fraction(totalOut, 29, 10000)
220225 let cleanTotalAmount = (totalOut - feeAmount)
221226 let asset1Str = split(routesStr, ",")[(size(split(routesStr, ",")) - 1)]
222227 let asset1 = getAssetBytes(asset1Str)
223228 let usdnFee = if ((asset1 == usdnId))
224229 then feeAmount
225230 else {
226231 let usdnBalanceBefore = getBalance(usdnId)
227232 if ((usdnBalanceBefore == usdnBalanceBefore))
228233 then {
229234 let convertedFee = invoke(Address(fromBase58String(tryGetString((("static_asset_" + asset1Str) + "_puzzlePool")))), "swap", [usdnIdStr, 0], [AttachedPayment(asset1, feeAmount)])
230235 if ((convertedFee == convertedFee))
231236 then {
232237 let usdnBalanceAfter = getBalance(usdnId)
233238 if ((usdnBalanceAfter == usdnBalanceAfter))
234239 then (usdnBalanceAfter - usdnBalanceBefore)
235240 else throw("Strict value is not equal to itself.")
236241 }
237242 else throw("Strict value is not equal to itself.")
238243 }
239244 else throw("Strict value is not equal to itself.")
240245 }
241246 if ((usdnFee == usdnFee))
242247 then {
243248 let referralAddress = if ((refKey == "muna"))
244249 then Address(base58'3PGFHzVGT4NTigwCKP1NcwoXkodVZwvBuuU')
245250 else if ((refKey == "keeper"))
246251 then Address(base58'3PNgw6Db2TGUQbjnV7ekve6q126xBC1e7eM')
247252 else if ((refKey == "tci"))
248253 then Address(base58'3PNgw6Db2TGUQbjnV7ekve6q126xBC1e7eM')
249254 else Address(base58'3PQxXXiQXpWsjDwQLYxyuoPiaLnVHjJguFo')
250255 let refUsdnShare = fraction(usdnFee, 2, 10)
251256 let topUp = invoke(Address(base58'3PKUxbZaSYfsR7wu2HaAgiirHYwAMupDrYW'), "topUpReward", nil, [AttachedPayment(usdnId, (usdnFee - refUsdnShare))])
252257 if ((topUp == topUp))
253258 then if ((minToReceive > cleanTotalAmount))
254259 then throw(("amount to receive is lower than expected one " + toString(cleanTotalAmount)))
255260 else if (if ((asset0Id != i.payments[0].assetId))
256261 then true
257262 else (amountIn > i.payments[0].amount))
258263 then throw("wrong asset attached as payment")
259264 else [ScriptTransfer(i.caller, cleanTotalAmount, asset1), ScriptTransfer(referralAddress, refUsdnShare, usdnId)]
260265 else throw("Strict value is not equal to itself.")
261266 }
262267 else throw("Strict value is not equal to itself.")
263268 }
264269 else throw("Strict value is not equal to itself.")
265270 }
266271
267272
268273
269274 @Callable(i)
270275 func addTokenPuzzlePool (assetIdStr,poolAddressStr) = if ((i.caller != Address(base58'3P8qVX189qpoTJZQQQdKS9endHK5sxWsvrd')))
271276 then throw("admin only")
272277 else [StringEntry((("static_asset_" + assetIdStr) + "_puzzlePool"), poolAddressStr)]
273278
274279
275280 @Verifier(tx)
276281 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
277282

github/deemru/w8io/6500d08 
47.79 ms