tx · DZ1gWwn7KTPKPLwwsBw5F2sk3kjhbZMReracdjcdsdeF

3Mxk2acCcf95Ri23vaFptSaVr1YcMbvpNp8:  -0.05000000 Waves

2023.07.18 16:28 [2671378] smart account 3Mxk2acCcf95Ri23vaFptSaVr1YcMbvpNp8 > SELF 0.00000000 Waves

{ "type": 13, "id": "DZ1gWwn7KTPKPLwwsBw5F2sk3kjhbZMReracdjcdsdeF", "fee": 5000000, "feeAssetId": null, "timestamp": 1689686928595, "version": 2, "chainId": 84, "sender": "3Mxk2acCcf95Ri23vaFptSaVr1YcMbvpNp8", "senderPublicKey": "EWZ5VwinZwKC1FD8dPSmREw9b5qVXBnUCpvnTdxeLyDN", "proofs": [ "PASZydDm3j6oXyDk5miKAKYc7tWcT8cmv8qN3vgrAU1F2q4Tf5ayTyfKSoCM3mXpwiTrkzkW5KbuGAzTEVZFJdD" ], "script": "base64:BgLDAggCEgMKAQgSBQoDAQgIIgxrZXlTd2FwQXNzZXQiD2dldFN3YXBBc3NldFN0ciIMZ2V0QXNzZXRJbmZvIgdhc3NldElkIgckbWF0Y2gwIgJpZCIIc3RyaW5nSWQiBGluZm8iBXdhdmVzIgp0b0RlY2ltYWxzIgdhbW91bnRBIglkZWNpbWFsc0EiCWRlY2ltYWxzQiIBaSIJX2Fzc2V0U3RyIgdfYW1vdW50IghfYWRkcmVzcyIDcG10Iglzd2FwQXNzZXQiCyR0MDExNDgxMjIyIg1wbXRTdHJBc3NldElkIgxwbXRBc3NldE5hbWUiC3BtdERlY2ltYWxzIgskdDAxMjI1MTMwMCIOc3dhcFN0ckFzc2V0SWQiDXN3YXBBc3NldE5hbWUiDHN3YXBEZWNpbWFscyIMYW1vdW50VG9TZW5kBAEBYQAJALkJAgkAzAgCAgIlcwkAzAgCAglzd2FwQXNzZXQFA25pbAICX18BAWIACQETdmFsdWVPckVycm9yTWVzc2FnZQIJAKIIAQkBAWEAAhJTd2FwIGFzc2V0IG5vdCBzZXQBAWMBAWQEAWUFAWQDCQABAgUBZQIKQnl0ZVZlY3RvcgQBZgUBZQQBZwkA2AQBBQFmBAFoCQETdmFsdWVPckVycm9yTWVzc2FnZQIJAOwHAQUBZgkArAICCQCsAgICBkFzc2V0IAUBZwIOIGRvZXNuJ3QgZXhpc3QJAJUKAwUBZwgFAWgEbmFtZQgFAWgIZGVjaW1hbHMDCQABAgUBZQIEVW5pdAQBaQUBZQkAlQoDAgVXQVZFUwIFV0FWRVMACAkAAgECC01hdGNoIGVycm9yAQFqAwFrAWwBbQMJAGYCBQFsBQFtCQBpAgUBawkAbAYACgAACQBlAgUBbAUBbQAAAAAFBUZMT09SAwkAZgIFAW0FAWwJAGgCBQFrCQBsBgAKAAAJAGUCBQFtBQFsAAAAAAUFRkxPT1IFAWsCAW4BCmluaXRpYWxpemUBAW8JAMwIAgkBC1N0cmluZ0VudHJ5AgkBAWEABQFvBQNuaWwBbgEEc3dhcAMBcAFvAXEEAXIJAJEDAggFAW4IcGF5bWVudHMAAAQBcwkA2QQBCQEBYgAEAXQJAQFjAQgFAXIHYXNzZXRJZAQBdQgFAXQCXzEEAXYIBQF0Al8yBAF3CAUBdAJfMwQBeAkBAWMBBQFzBAF5CAUBeAJfMQQBeggFAXgCXzIEAUEIBQF4Al8zBAFCCQEBagMIBQFyBmFtb3VudAUBdwUBQQkAlAoCCQDMCAIJAQ5TY3JpcHRUcmFuc2ZlcgMJARFAZXh0ck5hdGl2ZSgxMDYyKQEFAXEFAUIFAXMFA25pbAUBQgDR9hdP", "height": 2671378, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 6 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+func keySwapAsset () = makeString(["%s", "swapAsset"], "__")
5+
6+
7+func getSwapAssetStr () = valueOrErrorMessage(getString(keySwapAsset()), "Swap asset not set")
8+
9+
10+func getAssetInfo (assetId) = match assetId {
11+ case id: ByteVector =>
12+ let stringId = toBase58String(id)
13+ let info = valueOrErrorMessage(assetInfo(id), (("Asset " + stringId) + " doesn't exist"))
14+ $Tuple3(stringId, info.name, info.decimals)
15+ case waves: Unit =>
16+ $Tuple3("WAVES", "WAVES", 8)
17+ case _ =>
18+ throw("Match error")
19+}
20+
21+
22+func toDecimals (amountA,decimalsA,decimalsB) = if ((decimalsA > decimalsB))
23+ then (amountA / pow(10, 0, (decimalsA - decimalsB), 0, 0, FLOOR))
24+ else if ((decimalsB > decimalsA))
25+ then (amountA * pow(10, 0, (decimalsB - decimalsA), 0, 0, FLOOR))
26+ else amountA
27+
28+
29+@Callable(i)
30+func initialize (_assetStr) = [StringEntry(keySwapAsset(), _assetStr)]
31+
32+
33+
34+@Callable(i)
35+func swap (_amount,_assetStr,_address) = {
36+ let pmt = i.payments[0]
37+ let swapAsset = fromBase58String(getSwapAssetStr())
38+ let $t011481222 = getAssetInfo(pmt.assetId)
39+ let pmtStrAssetId = $t011481222._1
40+ let pmtAssetName = $t011481222._2
41+ let pmtDecimals = $t011481222._3
42+ let $t012251300 = getAssetInfo(swapAsset)
43+ let swapStrAssetId = $t012251300._1
44+ let swapAssetName = $t012251300._2
45+ let swapDecimals = $t012251300._3
46+ let amountToSend = toDecimals(pmt.amount, pmtDecimals, swapDecimals)
47+ $Tuple2([ScriptTransfer(addressFromStringValue(_address), amountToSend, swapAsset)], amountToSend)
48+ }
49+
50+

github/deemru/w8io/873ac7e 
18.30 ms