tx · FcN6ne2fanrLTuE9KJm4Fxfcf6oK2wtq2qdTN5ynD5yV

3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL:  -0.01000000 Waves

2021.08.15 13:16 [1659340] smart account 3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL > SELF 0.00000000 Waves

{ "type": 13, "id": "FcN6ne2fanrLTuE9KJm4Fxfcf6oK2wtq2qdTN5ynD5yV", "fee": 1000000, "feeAssetId": null, "timestamp": 1629022658598, "version": 2, "chainId": 84, "sender": "3N6qtbZbSPVcvJ1pk87e9ahdsZTjHN8e5mL", "senderPublicKey": "EYAKsFBespqQveBrfmX29rsehBJrSwQ3B6yN4ADyw8Kx", "proofs": [ "3VqRmmvaPMnpUiCWAUP8ieHGgeo9z3w4bshXR6y22zrJFyiGBP7MXqcHyFUYbC7WM272hds9WANTpNDFiExFoPFE" ], "script": "base64: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", "height": 1659340, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 3Qma41qeDQ4dTtb3mvTmfuSN4tmLYExGQEprt2vGgKz5 Next: AvuZwm1y1KSTjuX7DCuzXLk9B1a7RL6QBsyJwos9UjyA Diff:
OldNewDifferences
44
55
66 @Callable(i)
7-func routingTrade (exchangers,args,assetToUserSend,minAmountToReceive) = {
8- let $t0628703 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
9- let pmtAmount = $t0628703._1
10- let pmtAssetId = $t0628703._2
7+func routingTrade (exchangers,args,assetsToPay,assetToUserSend,minAmountToReceive) = {
118 let routingSize = size(exchangers)
12- func exchangeFold (accumulated,exchanger) = if ((routingSize > accumulated))
9+ func exchangeFold (accumulated,exchanger) = if ((accumulated == 0))
1310 then {
1411 let exchangerAddress = addressFromStringValue(exchanger)
15- let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
16- if ((inv == inv))
17- then (accumulated + 1)
18- else throw("Strict value is not equal to itself.")
12+ let $t09321006 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
13+ let pmtAmount = $t09321006._1
14+ let pmtAssetId = $t09321006._2
15+ if ((assetsToPay[0] != pmtAssetId))
16+ then throw("Incorrect payment and assetsToPay array")
17+ else {
18+ let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
19+ if ((inv == inv))
20+ then (accumulated + 1)
21+ else throw("Strict value is not equal to itself.")
22+ }
1923 }
20- else accumulated
24+ else if (if ((accumulated > 0))
25+ then (routingSize > accumulated)
26+ else false)
27+ then {
28+ let exchangerAddress = addressFromStringValue(exchanger)
29+ let pmtAssetId = assetsToPay[accumulated]
30+ let pmtAmount = assetBalance(this, pmtAssetId)
31+ let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
32+ if ((inv == inv))
33+ then (accumulated + 1)
34+ else throw("Strict value is not equal to itself.")
35+ }
36+ else accumulated
2137
2238 let routing = {
23- let $list11911227 = exchangers
24- let $size11911227 = size($list11911227)
25- let $acc011911227 = 0
26- if (($size11911227 == 0))
27- then $acc011911227
39+ let $list17551791 = exchangers
40+ let $size17551791 = size($list17551791)
41+ let $acc017551791 = 0
42+ if (($size17551791 == 0))
43+ then $acc017551791
2844 else {
29- let $acc111911227 = exchangeFold($acc011911227, $list11911227[0])
30- if (($size11911227 == 1))
31- then $acc111911227
45+ let $acc117551791 = exchangeFold($acc017551791, $list17551791[0])
46+ if (($size17551791 == 1))
47+ then $acc117551791
3248 else {
33- let $acc211911227 = exchangeFold($acc111911227, $list11911227[1])
34- if (($size11911227 == 2))
35- then $acc211911227
49+ let $acc217551791 = exchangeFold($acc117551791, $list17551791[1])
50+ if (($size17551791 == 2))
51+ then $acc217551791
3652 else {
37- let $acc311911227 = exchangeFold($acc211911227, $list11911227[2])
38- if (($size11911227 == 3))
39- then $acc311911227
53+ let $acc317551791 = exchangeFold($acc217551791, $list17551791[2])
54+ if (($size17551791 == 3))
55+ then $acc317551791
4056 else {
41- let $acc411911227 = exchangeFold($acc311911227, $list11911227[3])
42- if (($size11911227 == 4))
43- then $acc411911227
57+ let $acc417551791 = exchangeFold($acc317551791, $list17551791[3])
58+ if (($size17551791 == 4))
59+ then $acc417551791
4460 else {
45- let $acc511911227 = exchangeFold($acc411911227, $list11911227[4])
46- if (($size11911227 == 5))
47- then $acc511911227
61+ let $acc517551791 = exchangeFold($acc417551791, $list17551791[4])
62+ if (($size17551791 == 5))
63+ then $acc517551791
4864 else {
49- let $acc611911227 = exchangeFold($acc511911227, $list11911227[5])
65+ let $acc617551791 = exchangeFold($acc517551791, $list17551791[5])
5066 throw("List size exceed 5")
5167 }
5268 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44
55
66 @Callable(i)
7-func routingTrade (exchangers,args,assetToUserSend,minAmountToReceive) = {
8- let $t0628703 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
9- let pmtAmount = $t0628703._1
10- let pmtAssetId = $t0628703._2
7+func routingTrade (exchangers,args,assetsToPay,assetToUserSend,minAmountToReceive) = {
118 let routingSize = size(exchangers)
12- func exchangeFold (accumulated,exchanger) = if ((routingSize > accumulated))
9+ func exchangeFold (accumulated,exchanger) = if ((accumulated == 0))
1310 then {
1411 let exchangerAddress = addressFromStringValue(exchanger)
15- let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
16- if ((inv == inv))
17- then (accumulated + 1)
18- else throw("Strict value is not equal to itself.")
12+ let $t09321006 = $Tuple2(i.payments[0].amount, i.payments[0].assetId)
13+ let pmtAmount = $t09321006._1
14+ let pmtAssetId = $t09321006._2
15+ if ((assetsToPay[0] != pmtAssetId))
16+ then throw("Incorrect payment and assetsToPay array")
17+ else {
18+ let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
19+ if ((inv == inv))
20+ then (accumulated + 1)
21+ else throw("Strict value is not equal to itself.")
22+ }
1923 }
20- else accumulated
24+ else if (if ((accumulated > 0))
25+ then (routingSize > accumulated)
26+ else false)
27+ then {
28+ let exchangerAddress = addressFromStringValue(exchanger)
29+ let pmtAssetId = assetsToPay[accumulated]
30+ let pmtAmount = assetBalance(this, pmtAssetId)
31+ let inv = invoke(exchangerAddress, "exchange", [args[accumulated]], [AttachedPayment(pmtAssetId, pmtAmount)])
32+ if ((inv == inv))
33+ then (accumulated + 1)
34+ else throw("Strict value is not equal to itself.")
35+ }
36+ else accumulated
2137
2238 let routing = {
23- let $list11911227 = exchangers
24- let $size11911227 = size($list11911227)
25- let $acc011911227 = 0
26- if (($size11911227 == 0))
27- then $acc011911227
39+ let $list17551791 = exchangers
40+ let $size17551791 = size($list17551791)
41+ let $acc017551791 = 0
42+ if (($size17551791 == 0))
43+ then $acc017551791
2844 else {
29- let $acc111911227 = exchangeFold($acc011911227, $list11911227[0])
30- if (($size11911227 == 1))
31- then $acc111911227
45+ let $acc117551791 = exchangeFold($acc017551791, $list17551791[0])
46+ if (($size17551791 == 1))
47+ then $acc117551791
3248 else {
33- let $acc211911227 = exchangeFold($acc111911227, $list11911227[1])
34- if (($size11911227 == 2))
35- then $acc211911227
49+ let $acc217551791 = exchangeFold($acc117551791, $list17551791[1])
50+ if (($size17551791 == 2))
51+ then $acc217551791
3652 else {
37- let $acc311911227 = exchangeFold($acc211911227, $list11911227[2])
38- if (($size11911227 == 3))
39- then $acc311911227
53+ let $acc317551791 = exchangeFold($acc217551791, $list17551791[2])
54+ if (($size17551791 == 3))
55+ then $acc317551791
4056 else {
41- let $acc411911227 = exchangeFold($acc311911227, $list11911227[3])
42- if (($size11911227 == 4))
43- then $acc411911227
57+ let $acc417551791 = exchangeFold($acc317551791, $list17551791[3])
58+ if (($size17551791 == 4))
59+ then $acc417551791
4460 else {
45- let $acc511911227 = exchangeFold($acc411911227, $list11911227[4])
46- if (($size11911227 == 5))
47- then $acc511911227
61+ let $acc517551791 = exchangeFold($acc417551791, $list17551791[4])
62+ if (($size17551791 == 5))
63+ then $acc517551791
4864 else {
49- let $acc611911227 = exchangeFold($acc511911227, $list11911227[5])
65+ let $acc617551791 = exchangeFold($acc517551791, $list17551791[5])
5066 throw("List size exceed 5")
5167 }
5268 }
5369 }
5470 }
5571 }
5672 }
5773 }
5874 if ((routing == routingSize))
5975 then if (true)
6076 then throw("1")
6177 else {
6278 let ammountToRecieve = assetBalance(this, assetToUserSend)
6379 [ScriptTransfer(i.caller, ammountToRecieve, assetToUserSend)]
6480 }
6581 else nil
6682 }
6783
6884

github/deemru/w8io/873ac7e 
34.26 ms