tx · HdfL7MTVpRJvRmQycAYyfmAKefZbQev4hPGvX4SvRMVM

3N3LWiYdT9n8o6ecwFZGy6MCehhq6sLUFFL:  -0.01400000 Waves

2019.07.16 15:47 [588400] smart account 3N3LWiYdT9n8o6ecwFZGy6MCehhq6sLUFFL > SELF 0.00000000 Waves

{ "type": 13, "id": "HdfL7MTVpRJvRmQycAYyfmAKefZbQev4hPGvX4SvRMVM", "fee": 1400000, "feeAssetId": null, "timestamp": 1563281317443, "version": 1, "sender": "3N3LWiYdT9n8o6ecwFZGy6MCehhq6sLUFFL", "senderPublicKey": "3RTmBp69DqXiohzMXcmVU1pMFssmztWoibFARiKrgTr7", "proofs": [ "3AjSuTiKPhvdhg7BC1tfrFpYRFHDoKtZJ5DJGcwN9xsRx1n4wyNjf2HXf4WQeojiNqqq2HrGEZzrsJ4QhT2Cr6wV" ], "script": "base64:AAIDAAAAAAAAAAAAAAACAAAAAAhJZFRva2VuQQEAAAAgnRVvdKvGL2hq2sNhnu09hyaOGV75Lrx4DW47syLUT28AAAAACElkVG9rZW5CBQAAAAR1bml0AAAAAQAAAApjb250ZXh0T2JqAQAAAAhleGNoYW5nZQAAAAAEAAAAB2Ftb3VudEEJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAB2Ftb3VudEEEAAAAB2Ftb3VudEIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMCAAAAB2Ftb3VudEIEAAAAB3BheW1lbnQEAAAAByRtYXRjaDAIBQAAAApjb250ZXh0T2JqAAAAB3BheW1lbnQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAD0F0dGFjaGVkUGF5bWVudAQAAAABcAUAAAAHJG1hdGNoMAUAAAABcAkAAAIAAAABAgAAABRQYXltZW50IG5vdCBhdHRhY2hlZAQAAAAPYXNzZXRJZFJlY2VpdmVkCAUAAAAHcGF5bWVudAAAAAdhc3NldElkBAAAABJ0b2tlblJlY2VpdmVBbW91bnQIBQAAAAdwYXltZW50AAAABmFtb3VudAMJAAAAAAAAAgUAAAAPYXNzZXRJZFJlY2VpdmVkBQAAAAhJZFRva2VuQQQAAAAPdG9rZW5TZW5kQW1vdW50CQAAawAAAAMFAAAAB2Ftb3VudEEFAAAAEnRva2VuUmVjZWl2ZUFtb3VudAkAAGQAAAACBQAAABJ0b2tlblJlY2VpdmVBbW91bnQFAAAAB2Ftb3VudEIEAAAAC2Fzc2V0SWRTZW50BQAAAAR1bml0CQEAAAAMU2NyaXB0UmVzdWx0AAAAAgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAHYW1vdW50QgkAAGQAAAACBQAAAAdhbW91bnRCBQAAABJ0b2tlblJlY2VpdmVBbW91bnQJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAB2Ftb3VudEEJAABlAAAAAgUAAAAHYW1vdW50QQUAAAAPdG9rZW5TZW5kQW1vdW50BQAAAANuaWwJAQAAAAtUcmFuc2ZlclNldAAAAAEJAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAACmNvbnRleHRPYmoAAAAGY2FsbGVyBQAAAA90b2tlblNlbmRBbW91bnQFAAAAC2Fzc2V0SWRTZW50BQAAAANuaWwDCQAAAAAAAAIFAAAAD2Fzc2V0SWRSZWNlaXZlZAUAAAAISWRUb2tlbkIEAAAAD3Rva2VuU2VuZEFtb3VudAkAAGsAAAADBQAAAAdhbW91bnRCBQAAABJ0b2tlblJlY2VpdmVBbW91bnQJAABkAAAAAgUAAAASdG9rZW5SZWNlaXZlQW1vdW50BQAAAAdhbW91bnRBBAAAAAthc3NldElkU2VudAUAAAAISWRUb2tlbkEJAQAAAAxTY3JpcHRSZXN1bHQAAAACCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAdhbW91bnRCCQAAZQAAAAIFAAAAB2Ftb3VudEIFAAAAD3Rva2VuU2VuZEFtb3VudAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgIAAAAHYW1vdW50QQkAAGQAAAACBQAAAAdhbW91bnRBBQAAABJ0b2tlblJlY2VpdmVBbW91bnQFAAAAA25pbAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAAKY29udGV4dE9iagAAAAZjYWxsZXIFAAAAD3Rva2VuU2VuZEFtb3VudAUAAAALYXNzZXRJZFNlbnQFAAAAA25pbAkAAAIAAAABAgAAABRBc3NldCBpcyBub3QgYWxsb3dlZAAAAABBFPfg", "chainId": 84, "height": 588400, "spentComplexity": 0 } View: original | compacted Prev: Gy8pHbC6HXFUvWnn7zysW9QnxCKkzKncDXortGZYSCMK Next: DZir4QPMzTsnknedvq6VHKfKfcYFBim7Uzx5ruV5WyqZ Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let IdTokenA = base58'GhAFhXzwCYfvcXQ3GHFaQFnCzAuYCT156qFqiYyzfkzv'
4+let IdTokenA = base58'BaBy2y5tGsuQZPMM7JHU89zmahR7yybXaVMXpnZ589An'
55
66 let IdTokenB = unit
77
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let IdTokenA = base58'GhAFhXzwCYfvcXQ3GHFaQFnCzAuYCT156qFqiYyzfkzv'
4+let IdTokenA = base58'BaBy2y5tGsuQZPMM7JHU89zmahR7yybXaVMXpnZ589An'
55
66 let IdTokenB = unit
77
88 @Callable(contextObj)
99 func exchange () = {
1010 let amountA = getIntegerValue(this, "amountA")
1111 let amountB = getIntegerValue(this, "amountB")
1212 let payment = match contextObj.payment {
1313 case p: AttachedPayment =>
1414 p
1515 case _ =>
1616 throw("Payment not attached")
1717 }
1818 let assetIdReceived = payment.assetId
1919 let tokenReceiveAmount = payment.amount
2020 if ((assetIdReceived == IdTokenA))
2121 then {
2222 let tokenSendAmount = fraction(amountA, tokenReceiveAmount, (tokenReceiveAmount + amountB))
2323 let assetIdSent = unit
2424 ScriptResult(WriteSet([DataEntry("amountB", (amountB + tokenReceiveAmount)), DataEntry("amountA", (amountA - tokenSendAmount))]), TransferSet([ScriptTransfer(contextObj.caller, tokenSendAmount, assetIdSent)]))
2525 }
2626 else if ((assetIdReceived == IdTokenB))
2727 then {
2828 let tokenSendAmount = fraction(amountB, tokenReceiveAmount, (tokenReceiveAmount + amountA))
2929 let assetIdSent = IdTokenA
3030 ScriptResult(WriteSet([DataEntry("amountB", (amountB - tokenSendAmount)), DataEntry("amountA", (amountA + tokenReceiveAmount))]), TransferSet([ScriptTransfer(contextObj.caller, tokenSendAmount, assetIdSent)]))
3131 }
3232 else throw("Asset is not allowed")
3333 }
3434
3535

github/deemru/w8io/873ac7e 
24.39 ms