tx · 4Q3wRLhXjRqqjnPXQZZzEDwJHSqmvZZSTT2SAV6pVGHk

3N4Lz2iWoYPd82cxU6vMMa8cZ9BCcPCaaXu:  -0.00200000 Waves

2022.07.21 05:03 [2148893] smart account 3N4Lz2iWoYPd82cxU6vMMa8cZ9BCcPCaaXu > SELF 0.00000000 Waves

{ "type": 13, "id": "4Q3wRLhXjRqqjnPXQZZzEDwJHSqmvZZSTT2SAV6pVGHk", "fee": 200000, "feeAssetId": null, "timestamp": 1658369050656, "version": 2, "chainId": 84, "sender": "3N4Lz2iWoYPd82cxU6vMMa8cZ9BCcPCaaXu", "senderPublicKey": "5sUTyr8zPCCZHgVwgBgFhQA8Q26w2V1dnitx3izrEJ1B", "proofs": [ "2pLW7uv6o32gRUbd77rt3wP8xoSGsHiykXn3hawXvMvTzjMmCkijkEALGv64nnQNQG7RpTkfbUGwNyeTHfchW4UW" ], "script": "base64:AAIFAAAAAAAAAAcIAhIDCgEIAAAABQAAAAADU0VQAgAAAAJfXwAAAAAFTVVMVDYAAAAAAAAPQkAAAAAABU1VTFQ4AAAAAAAF9eEAAAAAAApXQVZFU0lEU1RSAgAAAAVXQVZFUwAAAAAHV0FWRVNJRAkAAlkAAAABBQAAAApXQVZFU0lEU1RSAAAAAQAAAAFpAQAAABVkaXN0cmlidXRlTWluZXJSZXdhcmQAAAABAAAAFGJlbmlmaWNhcnlBZGRyZXNzU3RyAwkBAAAAAiE9AAAAAgkAAZAAAAABCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAQkAAAIAAAABAgAAACBleGFjdCAxIHBheW1lbnQgbXVzdCBiZSBhdHRhY2hlZAMJAQAAAAIhPQAAAAIIBQAAAAFpAAAABmNhbGxlcggFAAAAAWkAAAAMb3JpZ2luQ2FsbGVyCQAAAgAAAAECAAAAImRhcHAgdG8gZGFwcCBjYWxscyBhcmUgbm90IGFsbG93ZWQEAAAAA3BtdAkAAZEAAAACCAUAAAABaQAAAAhwYXltZW50cwAAAAAAAAAAAAQAAAAIbWluZWRBbXQIBQAAAANwbXQAAAAGYW1vdW50BAAAAApwbXRBc3NldElkCQEAAAALdmFsdWVPckVsc2UAAAACCAUAAAADcG10AAAAB2Fzc2V0SWQFAAAAB1dBVkVTSUQEAAAABmZlZUFtdAgFAAAAAWkAAAADZmVlBAAAAApmZWVBc3NldElkCQEAAAALdmFsdWVPckVsc2UAAAACCAUAAAABaQAAAApmZWVBc3NldElkBQAAAAdXQVZFU0lEAwkBAAAAAiE9AAAAAgUAAAAKcG10QXNzZXRJZAUAAAAHV0FWRVNJRAkAAAIAAAABAgAAACFvbmx5IFdhdmVzIGNhbiBiZSB1c2VkIGluIHBheW1lbnQDCQEAAAACIT0AAAACBQAAAApmZWVBc3NldElkBQAAAAdXQVZFU0lECQAAAgAAAAECAAAAHm9ubHkgV2F2ZXMgY2FuIGJlIHVzZWQgaW4gZmVlcwMJAQAAAAIhPQAAAAIFAAAABmZlZUFtdAkAAGkAAAACCQAAaAAAAAIAAAAAAAAAAAUFAAAABU1VTFQ4AAAAAAAAAAPoCQAAAgAAAAECAAAAIGZlZSBhbW91bnQgY291bGRuJ3QgZXhjZWVkIDAuMDA1BAAAAA9uZXV0cmlub0FkZHJlc3MJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAECAAAAIzNONEx6MmlXb1lQZDgyY3hVNnZNTWE4Y1o5QkNjUENhYVh1BAAAAAxtaW5lckFkZHJlc3MIBQAAAAFpAAAABmNhbGxlcgQAAAARYmVuaWZpY2FyeUFkZHJlc3MJAQAAABFAZXh0ck5hdGl2ZSgxMDYyKQAAAAEFAAAAFGJlbmlmaWNhcnlBZGRyZXNzU3RyBAAAAAxwcm90b2NvbFBhcnQAAAAAAAAOfvAEAAAADmJlbmlmaWNhcnlQYXJ0AAAAAAAAAMNQBAAAABBhdmFpbGFibGVCYWxhbmNlCQAAZQAAAAIICQAD7wAAAAEFAAAADG1pbmVyQWRkcmVzcwAAAAlhdmFpbGFibGUFAAAABmZlZUFtdAMJAABmAAAAAgUAAAAQYXZhaWxhYmxlQmFsYW5jZQAAAAAAAAAAAAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgIAAAAEYWxsIAkAAaQAAAABBQAAABBhdmFpbGFibGVCYWxhbmNlAgAAAEEgV2F2ZWxldHMgZnJvbSB0aGUgTm9kZSBiYWxhbmNlIG11c3QgYmUgYXR0YWNoZWQgaW50byB0aGUgcGF5bWVudAQAAAANYmVuaWZpY2FyeUFtdAkAAGsAAAADBQAAAAhtaW5lZEFtdAUAAAAOYmVuaWZpY2FyeVBhcnQFAAAABU1VTFQ2BAAAAAtwcm90b2NvbEFtdAkAAGUAAAACBQAAAAhtaW5lZEFtdAUAAAANYmVuaWZpY2FyeUFtdAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAABFiZW5pZmljYXJ5QWRkcmVzcwUAAAANYmVuaWZpY2FyeUFtdAUAAAAEdW5pdAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAA9uZXV0cmlub0FkZHJlc3MFAAAAC3Byb3RvY29sQW10BQAAAAR1bml0BQAAAANuaWwAAAAA5Y8tYg==", "height": 2148893, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HYBSYnWEJq72HCHHPNLHST3VVffMpiUq9CUfp3NrzpHi Next: 7K1J7gUZPBbpzBbEGy56Z8NfszGiZEJifiaGXzM5WeJT Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 5 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let SEP = "__"
5+
6+let MULT6 = 1000000
7+
8+let MULT8 = 100000000
9+
10+let WAVESIDSTR = "WAVES"
11+
12+let WAVESID = fromBase58String(WAVESIDSTR)
13+
14+@Callable(i)
15+func distributeMinerReward (benificaryAddressStr) = if ((size(i.payments) != 1))
16+ then throw("exact 1 payment must be attached")
17+ else if ((i.caller != i.originCaller))
18+ then throw("dapp to dapp calls are not allowed")
19+ else {
20+ let pmt = i.payments[0]
21+ let minedAmt = pmt.amount
22+ let pmtAssetId = valueOrElse(pmt.assetId, WAVESID)
23+ let feeAmt = i.fee
24+ let feeAssetId = valueOrElse(i.feeAssetId, WAVESID)
25+ if ((pmtAssetId != WAVESID))
26+ then throw("only Waves can be used in payment")
27+ else if ((feeAssetId != WAVESID))
28+ then throw("only Waves can be used in fees")
29+ else if ((feeAmt != ((5 * MULT8) / 1000)))
30+ then throw("fee amount couldn't exceed 0.005")
31+ else {
32+ let neutrinoAddress = addressFromStringValue("3N4Lz2iWoYPd82cxU6vMMa8cZ9BCcPCaaXu")
33+ let minerAddress = i.caller
34+ let benificaryAddress = addressFromStringValue(benificaryAddressStr)
35+ let protocolPart = 950000
36+ let benificaryPart = 50000
37+ let availableBalance = (wavesBalance(minerAddress).available - feeAmt)
38+ if ((availableBalance > 0))
39+ then throw((("all " + toString(availableBalance)) + " Wavelets from the Node balance must be attached into the payment"))
40+ else {
41+ let benificaryAmt = fraction(minedAmt, benificaryPart, MULT6)
42+ let protocolAmt = (minedAmt - benificaryAmt)
43+[ScriptTransfer(benificaryAddress, benificaryAmt, unit), ScriptTransfer(neutrinoAddress, protocolAmt, unit)]
44+ }
45+ }
46+ }
47+
48+

github/deemru/w8io/169f3d6 
49.14 ms