tx · 967ACe153KHiEZK8Uo6Kao3BAczh5EodB6tyf3uf4brf 3PCUJBpMXtqYKxMiDtKcTeEQcKukfMeoctR: -0.01400000 Waves 2021.10.07 12:55 [2800664] smart account 3PCUJBpMXtqYKxMiDtKcTeEQcKukfMeoctR > SELF 0.00000000 Waves
{ "type": 13, "id": "967ACe153KHiEZK8Uo6Kao3BAczh5EodB6tyf3uf4brf", "fee": 1400000, "feeAssetId": null, "timestamp": 1633600633612, "version": 2, "chainId": 87, "sender": "3PCUJBpMXtqYKxMiDtKcTeEQcKukfMeoctR", "senderPublicKey": "HkhM1YChRvLycTwNa1tmzYCRGFQsFjSmFwad9krdRUYo", "proofs": [ "4SqLQxMrrUahbmBos5EPai8SW4i3H6JWVx7e9DWCwiCdkPofmSJYCVxRu1GR5mt7RYGvZJrVFTHfUbnff9KBv3r4" ], "script": "base64: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", "height": 2800664, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4pxkA1sJcFLs8sfWoZWTLAaiqDHUgQNxMmSWtVY5zxHh Next: Gx8bdrWvwMTFU9rGfBs79yE7t1U4mJhGNyXpZGPgFvAJ Diff:
Old | New | Differences | |
---|---|---|---|
29 | 29 | let balance2Before = getBalance(pathAssets[1]) | |
30 | 30 | if ((balance2Before == balance2Before)) | |
31 | 31 | then { | |
32 | - | let i1 = invoke(pathContracts[0], "exchange", [ | |
32 | + | let i1 = invoke(pathContracts[0], "exchange", [1], [AttachedPayment(pathAssets[0], asset1Amount)]) | |
33 | 33 | if ((i1 == i1)) | |
34 | 34 | then { | |
35 | 35 | let balance2After = getBalance(pathAssets[1]) | |
39 | 39 | let balance3Before = getBalance(pathAssets[2]) | |
40 | 40 | if ((balance3Before == balance3Before)) | |
41 | 41 | then { | |
42 | - | let i2 = invoke(pathContracts[1], "exchange", [ | |
42 | + | let i2 = invoke(pathContracts[1], "exchange", [1], [AttachedPayment(pathAssets[1], asset2Amount)]) | |
43 | 43 | if ((i2 == i2)) | |
44 | 44 | then { | |
45 | 45 | let balance3After = getBalance(pathAssets[2]) |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let btcPathContracts = [Address(base58'3P8FVZgAJUAq32UEZtTw84qS4zLqEREiEiP'), Address(base58'3PNVFWopwCD9CgGXkpYWEY94oQ5XCAEXBmQ')] | |
5 | 5 | ||
6 | 6 | let btcPathTokens = [base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS', unit, base58'C1iWsKGqLwjHUndiQ7iXpdmPum9PeCDFfyXBdJJosDRS'] | |
7 | 7 | ||
8 | 8 | func getPath (assetId) = if ((assetId == base58'8LQW8f7P5d5PZM7GtZEBgaqRPGSzS3DfPuiXrURJ4AJS')) | |
9 | 9 | then $Tuple2(btcPathContracts, btcPathTokens) | |
10 | 10 | else throw("incorrect asset attached to payment") | |
11 | 11 | ||
12 | 12 | ||
13 | 13 | func getBalance (assetId) = match assetId { | |
14 | 14 | case x: Unit => | |
15 | 15 | wavesBalance(this).available | |
16 | 16 | case _ => | |
17 | 17 | assetBalance(this, value(assetId)) | |
18 | 18 | } | |
19 | 19 | ||
20 | 20 | ||
21 | 21 | @Callable(i) | |
22 | 22 | func buyEgg () = { | |
23 | 23 | let pmt = i.payments[0] | |
24 | 24 | let asset1Amount = pmt.amount | |
25 | 25 | let assetId = value(pmt.assetId) | |
26 | 26 | let $t0860910 = getPath(assetId) | |
27 | 27 | let pathContracts = $t0860910._1 | |
28 | 28 | let pathAssets = $t0860910._2 | |
29 | 29 | let balance2Before = getBalance(pathAssets[1]) | |
30 | 30 | if ((balance2Before == balance2Before)) | |
31 | 31 | then { | |
32 | - | let i1 = invoke(pathContracts[0], "exchange", [ | |
32 | + | let i1 = invoke(pathContracts[0], "exchange", [1], [AttachedPayment(pathAssets[0], asset1Amount)]) | |
33 | 33 | if ((i1 == i1)) | |
34 | 34 | then { | |
35 | 35 | let balance2After = getBalance(pathAssets[1]) | |
36 | 36 | if ((balance2After == balance2After)) | |
37 | 37 | then { | |
38 | 38 | let asset2Amount = (balance2After - balance2Before) | |
39 | 39 | let balance3Before = getBalance(pathAssets[2]) | |
40 | 40 | if ((balance3Before == balance3Before)) | |
41 | 41 | then { | |
42 | - | let i2 = invoke(pathContracts[1], "exchange", [ | |
42 | + | let i2 = invoke(pathContracts[1], "exchange", [1], [AttachedPayment(pathAssets[1], asset2Amount)]) | |
43 | 43 | if ((i2 == i2)) | |
44 | 44 | then { | |
45 | 45 | let balance3After = getBalance(pathAssets[2]) | |
46 | 46 | if ((balance3After == balance3After)) | |
47 | 47 | then { | |
48 | 48 | let asset3Amount = (balance3After - balance3Before) | |
49 | 49 | [ScriptTransfer(i.caller, asset3Amount, pathAssets[2])] | |
50 | 50 | } | |
51 | 51 | else throw("Strict value is not equal to itself.") | |
52 | 52 | } | |
53 | 53 | else throw("Strict value is not equal to itself.") | |
54 | 54 | } | |
55 | 55 | else throw("Strict value is not equal to itself.") | |
56 | 56 | } | |
57 | 57 | else throw("Strict value is not equal to itself.") | |
58 | 58 | } | |
59 | 59 | else throw("Strict value is not equal to itself.") | |
60 | 60 | } | |
61 | 61 | else throw("Strict value is not equal to itself.") | |
62 | 62 | } | |
63 | 63 | ||
64 | 64 | ||
65 | 65 | @Verifier(tx) | |
66 | 66 | func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey) | |
67 | 67 |
github/deemru/w8io/3ef1775 36.22 ms ◑