tx · DxK1tED6kmrUjyqn3xemmwpza1SJNzkbiVqLRFCSNK5y 3N7ZQDNskguAikFYpHDs3nSLEqZ1kcawW2w: -0.01000000 Waves 2020.08.02 18:50 [1114929] smart account 3N7ZQDNskguAikFYpHDs3nSLEqZ1kcawW2w > SELF 0.00000000 Waves
{ "type": 13, "id": "DxK1tED6kmrUjyqn3xemmwpza1SJNzkbiVqLRFCSNK5y", "fee": 1000000, "feeAssetId": null, "timestamp": 1596383509460, "version": 1, "sender": "3N7ZQDNskguAikFYpHDs3nSLEqZ1kcawW2w", "senderPublicKey": "9Q2WA38S5hRejUw8CCQ7qorks92Bg8C8Mbfqwj6mQZgV", "proofs": [ "3uL3BKQdpr2U3kCpoLtKBFbCqf9e1EMhs5QAFrPBRHCdCi9vqZYmDy5Eb5CWytPQtwPxTDzvkzX8nqV9GcDU7FS7" ], "script": "base64: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", "chainId": 84, "height": 1114929, "spentComplexity": 0 } View: original | compacted Prev: none Next: 93Suy4uY89dQApWJsPJtCag9kuaPkHv7633rR1ZouqjY Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 3 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | ||
5 | + | ||
6 | + | @Callable(i) | |
7 | + | func swapp (swappAssetId,id) = { | |
8 | + | let pmt = extract(i.payment) | |
9 | + | let pmtAmount = pmt.amount | |
10 | + | let assetid = fromBase58String(id) | |
11 | + | let swappassetid = fromBase58String(swappAssetId) | |
12 | + | let assetQuantity = match assetInfo(assetid) { | |
13 | + | case asset: Asset => | |
14 | + | asset.quantity | |
15 | + | case _ => | |
16 | + | throw("Can't find asset") | |
17 | + | } | |
18 | + | let wappQuantity = match assetInfo(swappassetid) { | |
19 | + | case asset: Asset => | |
20 | + | asset.quantity | |
21 | + | case _ => | |
22 | + | throw("Can't find asset") | |
23 | + | } | |
24 | + | let beforeRate = (wappQuantity / assetQuantity) | |
25 | + | if ((beforeRate > 1)) | |
26 | + | then { | |
27 | + | let sendAmount = (pmtAmount * 1) | |
28 | + | TransferSet([ScriptTransfer(i.caller, sendAmount, swappassetid)]) | |
29 | + | } | |
30 | + | else if ((1 > beforeRate)) | |
31 | + | then { | |
32 | + | let sendAmount = (pmtAmount * beforeRate) | |
33 | + | TransferSet([ScriptTransfer(i.caller, sendAmount, swappassetid)]) | |
34 | + | } | |
35 | + | else throw("Not SWAPP") | |
36 | + | } | |
37 | + | ||
38 | + | ||
39 | + | @Verifier(tx) | |
40 | + | func verify () = match tx { | |
41 | + | case dtx: DataTransaction => | |
42 | + | sigVerify(dtx.bodyBytes, dtx.proofs[0], dtx.senderPublicKey) | |
43 | + | case stx: SetScriptTransaction => | |
44 | + | sigVerify(stx.bodyBytes, stx.proofs[0], stx.senderPublicKey) | |
45 | + | case ttx: TransferTransaction => | |
46 | + | sigVerify(ttx.bodyBytes, ttx.proofs[0], ttx.senderPublicKey) | |
47 | + | case mtx: MassTransferTransaction => | |
48 | + | sigVerify(mtx.bodyBytes, mtx.proofs[0], mtx.senderPublicKey) | |
49 | + | case _ => | |
50 | + | false | |
51 | + | } | |
52 | + |
github/deemru/w8io/03bedc9 28.47 ms ◑