tx · 4i3PtcTvq4xBAJFJaQ5oqT2q3DvMcbnJAq8yhSNVYPJV

3PBeerh759eA1eGFuw77RowaZfZNohzJzvz:  -0.01400000 Waves

2022.12.14 22:13 [3425856] smart account 3PBeerh759eA1eGFuw77RowaZfZNohzJzvz > SELF 0.00000000 Waves

{ "type": 13, "id": "4i3PtcTvq4xBAJFJaQ5oqT2q3DvMcbnJAq8yhSNVYPJV", "fee": 1400000, "feeAssetId": null, "timestamp": 1671045223283, "version": 2, "chainId": 87, "sender": "3PBeerh759eA1eGFuw77RowaZfZNohzJzvz", "senderPublicKey": "Fw5NUe1f5xvDWNgCRm1CuYRnJGm2JqeSjqEBioaPvwaR", "proofs": [ "4BquB9CkDwnVGCLp5MzhruzxmBUfgFYoJAkGPYmtiwf3RBfb1YofkuQMbuak5fSsUpGxyNyZ9hbVfaCcUT3Ywejw" ], "script": "base64:AAIFAAAAAAAAACQIAhIICgYIAQgICAgSCQoHCAgICAgIARILCgkICAgICAgICAEAAAAHAAAAAApydWxlcl90ZXN0AgAAACxCZ3hwQ200d3hiVzhTS0xQS1puZjRLVTJENlpVMjlvdjhNZ1pya2FTQXFwWQAAAAAFcnVsZXICAAAALDd6TlVKQlZvUE1CQ1JzdFAzUjFBdnhoeHJONTFTUWtuNUJNaTJpSjljaUFkAAAAAAZydWxlcjICAAAALDlmZTY3ZXd6eHRhTG96ZVBaMlUzU0c3MVpRRnlHTEFYV21tbUhSRXBGZU1DAAAAAAZydWxlcjMCAAAALEZlTVg2aFFhUktzTHNraTc3eFZISERHUmtqOVZ1SnptUDJNQUNiQVdEakRLAQAAAA5nZXRBc3NldFN0cmluZwAAAAEAAAAHYXNzZXRJZAQAAAAHJG1hdGNoMAUAAAAHYXNzZXRJZAMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAKQnl0ZVZlY3RvcgQAAAABYgUAAAAHJG1hdGNoMAkAAlgAAAABBQAAAAFiAgAAAAVXQVZFUwEAAAANZ2V0QXNzZXRCeXRlcwAAAAEAAAAHYXNzZXRJZAMJAAAAAAAAAgUAAAAHYXNzZXRJZAIAAAAFV0FWRVMFAAAABHVuaXQJAAJZAAAAAQUAAAAHYXNzZXRJZAEAAAAJbXlCYWxhbmNlAAAAAQAAAAdhc3NldElkBAAAAAckbWF0Y2gwBQAAAAdhc3NldElkAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAApCeXRlVmVjdG9yBAAAAAFiBQAAAAckbWF0Y2gwCQAD8AAAAAIFAAAABHRoaXMFAAAAAWIICQAD7wAAAAEFAAAABHRoaXMAAAAJYXZhaWxhYmxlAAAAAwAAAAFpAQAAAARmYWtlAAAABgAAAARhX2luAAAABmFtb3VudAAAAAVhX291dAAAAAJwbwAAAAVwb190eQAAAA53eF9scF9hc3NldF9pZAQAAAAHYXNzZXRJbgkBAAAADWdldEFzc2V0Qnl0ZXMAAAABBQAAAARhX2luBAAAAAhhbW91bnRJbgUAAAAGYW1vdW50BAAAAAJsYgAAAAAAAAAAAAQAAAAUYW1vdW50X2JlZl9hc3NldF9vdXQJAQAAAAlteUJhbGFuY2UAAAABCQEAAAAN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", "height": 3425856, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 38wsMdHn6PygYpT9KUenxUzFqG44n3TqdpHtoAeeCLbr Next: ATPdn6CJfjwumfF2Ho4Yw7cUeGk83RbrCdzLyDEFPtii Diff:
OldNewDifferences
3434 func fake (a_in,amount,a_out,po,po_ty,wx_lp_asset_id) = {
3535 let assetIn = getAssetBytes(a_in)
3636 let amountIn = amount
37+ let lb = 0
3738 let amount_bef_asset_out = myBalance(getAssetBytes(a_out))
3839 if ((amount_bef_asset_out == amount_bef_asset_out))
3940 then {
4849 let wx_lp_asset = getAssetBytes(wx_lp_asset_id)
4950 let lpBalance = myBalance(wx_lp_asset)
5051 if ((lpBalance == lpBalance))
51- then invoke(Address(fromBase58String(po)), "getOneTkn", [a_out, 1], [AttachedPayment(wx_lp_asset, lpBalance)])
52+ then throw(toString(lpBalance))
5253 else throw("Strict value is not equal to itself.")
5354 }
5455 else throw("Strict value is not equal to itself.")
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let ruler_test = "BgxpCm4wxbW8SKLPKZnf4KU2D6ZU29ov8MgZrkaSAqpY"
55
66 let ruler = "7zNUJBVoPMBCRstP3R1AvxhxrN51SQkn5BMi2iJ9ciAd"
77
88 let ruler2 = "9fe67ewzxtaLozePZ2U3SG71ZQFyGLAXWmmmHREpFeMC"
99
1010 let ruler3 = "FeMX6hQaRKsLski77xVHHDGRkj9VuJzmP2MACbAWDjDK"
1111
1212 func getAssetString (assetId) = match assetId {
1313 case b: ByteVector =>
1414 toBase58String(b)
1515 case _ =>
1616 "WAVES"
1717 }
1818
1919
2020 func getAssetBytes (assetId) = if ((assetId == "WAVES"))
2121 then unit
2222 else fromBase58String(assetId)
2323
2424
2525 func myBalance (assetId) = match assetId {
2626 case b: ByteVector =>
2727 assetBalance(this, b)
2828 case _ =>
2929 wavesBalance(this).available
3030 }
3131
3232
3333 @Callable(i)
3434 func fake (a_in,amount,a_out,po,po_ty,wx_lp_asset_id) = {
3535 let assetIn = getAssetBytes(a_in)
3636 let amountIn = amount
37+ let lb = 0
3738 let amount_bef_asset_out = myBalance(getAssetBytes(a_out))
3839 if ((amount_bef_asset_out == amount_bef_asset_out))
3940 then {
4041 let entry1 = if ((po_ty == "p"))
4142 then invoke(Address(fromBase58String(po)), "swap", [a_out, 1], [AttachedPayment(assetIn, amountIn)])
4243 else if ((po_ty == "s"))
4344 then invoke(Address(fromBase58String(po)), "exchange", [1], [AttachedPayment(assetIn, amountIn)])
4445 else {
4546 let put = invoke(Address(fromBase58String(po)), "putOneTkn", [1, false], [AttachedPayment(assetIn, amountIn)])
4647 if ((put == put))
4748 then {
4849 let wx_lp_asset = getAssetBytes(wx_lp_asset_id)
4950 let lpBalance = myBalance(wx_lp_asset)
5051 if ((lpBalance == lpBalance))
51- then invoke(Address(fromBase58String(po)), "getOneTkn", [a_out, 1], [AttachedPayment(wx_lp_asset, lpBalance)])
52+ then throw(toString(lpBalance))
5253 else throw("Strict value is not equal to itself.")
5354 }
5455 else throw("Strict value is not equal to itself.")
5556 }
5657 if ((entry1 == entry1))
5758 then {
5859 let lp_balance_debug = if ((wx_lp_asset_id != ""))
5960 then myBalance(getAssetBytes(wx_lp_asset_id))
6061 else 0
6162 if ((lp_balance_debug == lp_balance_debug))
6263 then {
6364 let amount_after_asset_out = myBalance(getAssetBytes(a_out))
6465 if ((amount_after_asset_out == amount_after_asset_out))
6566 then {
6667 let resu = (amount_after_asset_out - amount_bef_asset_out)
6768 throw(((toString(resu) + "*") + toString(lp_balance_debug)))
6869 }
6970 else throw("Strict value is not equal to itself.")
7071 }
7172 else throw("Strict value is not equal to itself.")
7273 }
7374 else throw("Strict value is not equal to itself.")
7475 }
7576 else throw("Strict value is not equal to itself.")
7677 }
7778
7879
7980
8081 @Callable(i)
8182 func trade (a,ao,p1,p1t,p2,p2t,min) = {
8283 let callerPbk = toBase58String(i.callerPublicKey)
8384 if (if (if ((callerPbk != ruler))
8485 then (callerPbk != ruler2)
8586 else false)
8687 then (callerPbk != ruler3)
8788 else false)
8889 then throw("No-no-no")
8990 else {
9091 let pmt = i.payments[0]
9192 let assetIn = value(pmt.assetId)
9293 let amountIn = value(pmt.amount)
9394 let amount_bef_asset1 = myBalance(getAssetBytes(a))
9495 if ((amount_bef_asset1 == amount_bef_asset1))
9596 then {
9697 let entry1 = if ((p1t == "p"))
9798 then invoke(Address(fromBase58String(p1)), "swap", [a, 1], [AttachedPayment(assetIn, amountIn)])
9899 else invoke(Address(fromBase58String(p1)), "exchange", [1], [AttachedPayment(assetIn, amountIn)])
99100 if ((entry1 == entry1))
100101 then {
101102 let nb = (myBalance(getAssetBytes(a)) - amount_bef_asset1)
102103 if ((nb == nb))
103104 then {
104105 let amount_bef_base_asset = myBalance(getAssetBytes(ao))
105106 if ((amount_bef_base_asset == amount_bef_base_asset))
106107 then {
107108 let entry2 = if ((p2t == "p"))
108109 then invoke(Address(fromBase58String(p2)), "swap", [ao, 1], [AttachedPayment(getAssetBytes(a), nb)])
109110 else invoke(Address(fromBase58String(p2)), "exchange", [1], [AttachedPayment(getAssetBytes(a), nb)])
110111 if ((entry2 == entry2))
111112 then {
112113 let nb2 = (myBalance(getAssetBytes(ao)) - amount_bef_base_asset)
113114 if ((nb2 == nb2))
114115 then if ((nb2 > min))
115116 then [ScriptTransfer(i.caller, nb2, getAssetBytes(ao))]
116117 else throw(((((((("Ooops, in: " + toString(amountIn)) + "1: ") + toString(nb)) + ", out: ") + toString(nb2)) + ", min: ") + toString(min)))
117118 else throw("Strict value is not equal to itself.")
118119 }
119120 else throw("Strict value is not equal to itself.")
120121 }
121122 else throw("Strict value is not equal to itself.")
122123 }
123124 else throw("Strict value is not equal to itself.")
124125 }
125126 else throw("Strict value is not equal to itself.")
126127 }
127128 else throw("Strict value is not equal to itself.")
128129 }
129130 }
130131
131132
132133
133134 @Callable(i)
134135 func triptrade (a,a2,p1,p1t,p2,p2t,p3,p3t,min) = {
135136 let callerPbk = toBase58String(i.callerPublicKey)
136137 if (if (if ((callerPbk != ruler))
137138 then (callerPbk != ruler2)
138139 else false)
139140 then (callerPbk != ruler3)
140141 else false)
141142 then throw("No-no-no")
142143 else {
143144 let pmt = i.payments[0]
144145 let assetIn = value(pmt.assetId)
145146 let amountIn = value(pmt.amount)
146147 let amount_bef_asset1 = myBalance(getAssetBytes(a))
147148 if ((amount_bef_asset1 == amount_bef_asset1))
148149 then {
149150 let entry1 = if ((p1t == "p"))
150151 then invoke(Address(fromBase58String(p1)), "swap", [a, 1], [AttachedPayment(assetIn, amountIn)])
151152 else invoke(Address(fromBase58String(p1)), "exchange", [1], [AttachedPayment(assetIn, amountIn)])
152153 if ((entry1 == entry1))
153154 then {
154155 let nb = (myBalance(getAssetBytes(a)) - amount_bef_asset1)
155156 if ((nb == nb))
156157 then {
157158 let amount_bef_asset2 = myBalance(getAssetBytes(a2))
158159 if ((amount_bef_asset2 == amount_bef_asset2))
159160 then {
160161 let entry2 = if ((p2t == "p"))
161162 then invoke(Address(fromBase58String(p2)), "swap", [a2, 1], [AttachedPayment(getAssetBytes(a), nb)])
162163 else invoke(Address(fromBase58String(p2)), "exchange", [1], [AttachedPayment(getAssetBytes(a), nb)])
163164 if ((entry2 == entry2))
164165 then {
165166 let amount_bef_base_asset = myBalance(assetIn)
166167 if ((amount_bef_base_asset == amount_bef_base_asset))
167168 then {
168169 let nb2 = (myBalance(getAssetBytes(a2)) - amount_bef_asset2)
169170 if ((nb2 == nb2))
170171 then {
171172 let entry3 = if ((p3t == "p"))
172173 then invoke(Address(fromBase58String(p3)), "swap", [getAssetString(assetIn), 1], [AttachedPayment(getAssetBytes(a2), nb2)])
173174 else invoke(Address(fromBase58String(p3)), "exchange", [1], [AttachedPayment(getAssetBytes(a2), nb2)])
174175 if ((entry3 == entry3))
175176 then {
176177 let nb3 = (myBalance(assetIn) - amount_bef_base_asset)
177178 if ((nb3 == nb3))
178179 then if ((nb3 > min))
179180 then [ScriptTransfer(i.caller, nb3, assetIn)]
180181 else throw(((((((((("Ooops, in: " + toString(amountIn)) + ", 1: ") + toString(nb)) + ", 2: ") + toString(nb2)) + ", out: ") + toString(nb3)) + ", min: ") + toString(min)))
181182 else throw("Strict value is not equal to itself.")
182183 }
183184 else throw("Strict value is not equal to itself.")
184185 }
185186 else throw("Strict value is not equal to itself.")
186187 }
187188 else throw("Strict value is not equal to itself.")
188189 }
189190 else throw("Strict value is not equal to itself.")
190191 }
191192 else throw("Strict value is not equal to itself.")
192193 }
193194 else throw("Strict value is not equal to itself.")
194195 }
195196 else throw("Strict value is not equal to itself.")
196197 }
197198 else throw("Strict value is not equal to itself.")
198199 }
199200 }
200201
201202
202203 @Verifier(tx)
203204 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
204205

github/deemru/w8io/3ef1775 
47.61 ms