tx · GicYCky62vVn2d5DVWPsS7Vpv9RY5kWDWFBXojgcbKYW

3MpRDrT92zK6yWJh47UdA8mRDH7f2F3CSzH:  -0.01400000 Waves

2021.05.25 18:18 [1541348] smart account 3MpRDrT92zK6yWJh47UdA8mRDH7f2F3CSzH > SELF 0.00000000 Waves

{ "type": 13, "id": "GicYCky62vVn2d5DVWPsS7Vpv9RY5kWDWFBXojgcbKYW", "fee": 1400000, "feeAssetId": null, "timestamp": 1621955943387, "version": 2, "chainId": 84, "sender": "3MpRDrT92zK6yWJh47UdA8mRDH7f2F3CSzH", "senderPublicKey": "6it1s6XyHkFTbzgCJPXSeHjyLYixDHy6hJgzzfbntDGB", "proofs": [ "5kWYfsejELvZMVYgahijjk3TLAU84SLyf5fPqyaNPs5MMXYpzYWsTH48CXKGscbpzuLboKwpNu5NAyaoXUsW8wxP" ], "script": "base64:AAIEAAAAAAAAAAcIAhIDCgEIAAAABAAAAAAGbWlkaUlkAQAAACAGLtZERQwp0mc9GkII6TL8MrO9FCVbUZ4Q1IdRUGKaigAAAAAFZGF0dW0IBQAAAAlsYXN0QmxvY2sAAAAJdGltZXN0YW1wAAAAAAZhbU1pZGkAAAAAAAAAAAABAAAAC2lzUGF5bWVudE9rAAAAAQAAAAFpAwkAAAAAAAACCQABkAAAAAEIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAACQAAAgAAAAECAAAAFFBheW1lbnQgbm90IGF0dGFjaGVkBAAAAAFwCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAAckbWF0Y2gwCAUAAAABcAAAAAdhc3NldElkCQAAZwAAAAIAAAAbSOtX4AAIBQAAAAFwAAAABmFtb3VudAAAAAEAAAABaQEAAAAHYnV5bWlkaQAAAAEAAAAJdGhlU3RyaW5nBAAAAARjb2VmAwkAAGYAAAACAAAAAXm6kfwABQAAAAVkYXR1bQAAAAAAAADqYAMJAABmAAAAAgAAAAF5ygUQAAUAAAAFZGF0dW0AAAAAAAAAXcADCQAAZgAAAAIAAAABedl4JAAFAAAABWRhdHVtAAAAAAAAAFIIAwkAAGYAAAACAAAAAXno6zgABQAAAAVkYXR1bQAAAAAAAABGUAMJAABmAAAAAgAAAAF5+F5MAAUAAAAFZGF0dW0AAAAAAAAAOpgDCQAAZgAAAAIAAAABegfRYAAFAAAABWRhdHVtAAAAAAAAAC7gAwkAAGYAAAACAAAAAXoXRHQABQAAAAVkYXR1bQAAAAAAAAAjKAMJAABmAAAAAgAAAAF6JreIAAUAAAAFZGF0dW0AAAAAAAAAF3ADCQAAZgAAAAIAAAABejYqnAAFAAAABWRhdHVtAAAAAAAAAAu4CQAAAgAAAAECAAAAD1NvcnJ5IElDTyBlbmRlZAMJAQAAAAtpc1BheW1lbnRPawAAAAEFAAAAAWkEAAAAAnBwCQABkQAAAAIIBQAAAAFpAAAACHBheW1lbnRzAAAAAAAAAAAABAAAAARhbW50CAUAAAACcHAAAAAGYW1vdW50BAAAAAhlbEFtb3VudAkAAGgAAAACCQAAaQAAAAIFAAAABGFtbnQAAAAAAAX14QAJAABoAAAAAgUAAAAEY29lZgAAAAAAAAAnEAQAAAAJb2tBZGRyZXNzCQEAAAARQGV4dHJOYXRpdmUoMTA2MikAAAABBQAAAAl0aGVTdHJpbmcEAAAABHRzdHIJAAQlAAAAAQgFAAAAAWkAAAAGY2FsbGVyBAAAAAlyZWZBbW91bnQDCQAAAAAAAAIFAAAACXRoZVN0cmluZwIAAAADYW55AAAAAAAAAAAAAwkAAAAAAAACBQAAAAl0aGVTdHJpbmcFAAAABHRzdHIAAAAAAAAAAAAJAABpAAAAAgUAAAAIZWxBbW91bnQAAAAAAAAAAAoDCQAAAAAAAAIFAAAACXRoZVN0cmluZwIAAAADYW55CQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAIZWxBbW91bnQFAAAABm1pZGlJZAUAAAADbmlsCQAETAAAAAIJAQAAAA5TY3JpcHRUcmFuc2ZlcgAAAAMIBQAAAAFpAAAABmNhbGxlcgUAAAAIZWxBbW91bnQFAAAABm1pZGlJZAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADBQAAAAlva0FkZHJlc3MFAAAACXJlZkFtb3VudAUAAAAGbWlkaUlkBQAAAANuaWwJAAACAAAAAQIAAAAdV3JvbmcgcGF5bWVudCBhbW91bnQgb3IgYXNzZXQAAAAA6ny+Cw==", "height": 1541348, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: J31SvotDRjyYKZbrwRogRAJzoTGm35uh7eSR3r2R8NNo Next: HJMobteXoavaiDrKa51SKzLWsQsvEPWRC4FFnf7jKEkB Diff:
OldNewDifferences
1919
2020
2121 @Callable(i)
22-func buymidi (what) = {
23- let coef = if ((1621814400000 > datum))
22+func buymidi (theString) = {
23+ let coef = if ((1622332800000 > datum))
2424 then 60000
25- else if ((1622073600000 > datum))
26- then 30000
27- else if ((1622332800000 > datum))
28- then 27000
29- else if ((1622592000000 > datum))
30- then 24000
31- else if ((1622851200000 > datum))
32- then 21000
33- else if ((1623110400000 > datum))
34- then 18000
35- else if ((1623369600000 > datum))
36- then 15000
37- else if ((1623628800000 > datum))
38- then 12000
39- else if ((1624147200000 > datum))
40- then 9000
41- else if ((1624406400000 > datum))
42- then 6000
43- else throw("Sorry ICO ended")
25+ else if ((1622592000000 > datum))
26+ then 24000
27+ else if ((1622851200000 > datum))
28+ then 21000
29+ else if ((1623110400000 > datum))
30+ then 18000
31+ else if ((1623369600000 > datum))
32+ then 15000
33+ else if ((1623628800000 > datum))
34+ then 12000
35+ else if ((1623888000000 > datum))
36+ then 9000
37+ else if ((1624147200000 > datum))
38+ then 6000
39+ else if ((1624406400000 > datum))
40+ then 3000
41+ else throw("Sorry ICO ended")
4442 if (isPaymentOk(i))
4543 then {
4644 let pp = i.payments[0]
4745 let amnt = pp.amount
4846 let elAmount = ((amnt / 100000000) * (coef * 10000))
49-[ScriptTransfer(i.caller, elAmount, midiId)]
47+ let okAddress = addressFromStringValue(theString)
48+ let tstr = toString(i.caller)
49+ let refAmount = if ((theString == "any"))
50+ then 0
51+ else if ((theString == tstr))
52+ then 0
53+ else (elAmount / 10)
54+ if ((theString == "any"))
55+ then [ScriptTransfer(i.caller, elAmount, midiId)]
56+ else [ScriptTransfer(i.caller, elAmount, midiId), ScriptTransfer(okAddress, refAmount, midiId)]
5057 }
5158 else throw("Wrong payment amount or asset")
5259 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let midiId = base58'R8sQUmwwAENBL6B5ejGztDh3RzJ3MbKRqK7GtspFxKT'
55
66 let datum = lastBlock.timestamp
77
88 let amMidi = 0
99
1010 func isPaymentOk (i) = if ((size(i.payments) == 0))
1111 then throw("Payment not attached")
1212 else {
1313 let p = i.payments[0]
1414 match p.assetId {
1515 case _ =>
1616 (30000000000000 >= p.amount)
1717 }
1818 }
1919
2020
2121 @Callable(i)
22-func buymidi (what) = {
23- let coef = if ((1621814400000 > datum))
22+func buymidi (theString) = {
23+ let coef = if ((1622332800000 > datum))
2424 then 60000
25- else if ((1622073600000 > datum))
26- then 30000
27- else if ((1622332800000 > datum))
28- then 27000
29- else if ((1622592000000 > datum))
30- then 24000
31- else if ((1622851200000 > datum))
32- then 21000
33- else if ((1623110400000 > datum))
34- then 18000
35- else if ((1623369600000 > datum))
36- then 15000
37- else if ((1623628800000 > datum))
38- then 12000
39- else if ((1624147200000 > datum))
40- then 9000
41- else if ((1624406400000 > datum))
42- then 6000
43- else throw("Sorry ICO ended")
25+ else if ((1622592000000 > datum))
26+ then 24000
27+ else if ((1622851200000 > datum))
28+ then 21000
29+ else if ((1623110400000 > datum))
30+ then 18000
31+ else if ((1623369600000 > datum))
32+ then 15000
33+ else if ((1623628800000 > datum))
34+ then 12000
35+ else if ((1623888000000 > datum))
36+ then 9000
37+ else if ((1624147200000 > datum))
38+ then 6000
39+ else if ((1624406400000 > datum))
40+ then 3000
41+ else throw("Sorry ICO ended")
4442 if (isPaymentOk(i))
4543 then {
4644 let pp = i.payments[0]
4745 let amnt = pp.amount
4846 let elAmount = ((amnt / 100000000) * (coef * 10000))
49-[ScriptTransfer(i.caller, elAmount, midiId)]
47+ let okAddress = addressFromStringValue(theString)
48+ let tstr = toString(i.caller)
49+ let refAmount = if ((theString == "any"))
50+ then 0
51+ else if ((theString == tstr))
52+ then 0
53+ else (elAmount / 10)
54+ if ((theString == "any"))
55+ then [ScriptTransfer(i.caller, elAmount, midiId)]
56+ else [ScriptTransfer(i.caller, elAmount, midiId), ScriptTransfer(okAddress, refAmount, midiId)]
5057 }
5158 else throw("Wrong payment amount or asset")
5259 }
5360
5461

github/deemru/w8io/03bedc9 
48.01 ms