tx · DiHpzbsLz7oTXy9SvbszCogEzXLyVvTYUrx8KDq3YyXH

3N2xqkdTrWSis1QWQnpyeJyL95qjkUyP7Ve:  -0.01400000 Waves

2021.09.14 08:00 [1702271] smart account 3N2xqkdTrWSis1QWQnpyeJyL95qjkUyP7Ve > SELF 0.00000000 Waves

{ "type": 13, "id": "DiHpzbsLz7oTXy9SvbszCogEzXLyVvTYUrx8KDq3YyXH", "fee": 1400000, "feeAssetId": null, "timestamp": 1631595635312, "version": 2, "chainId": 84, "sender": "3N2xqkdTrWSis1QWQnpyeJyL95qjkUyP7Ve", "senderPublicKey": "GixVPmDAUorToWCPYCpBKvBFRBc7qtQSXhL8zWJsfnVN", "proofs": [ "3BZLL36Cj8XriXMAsWwwt3oad1pjjvz1mofTbhELYgghGQyvSnmzvwTuyiXyqm3AB2uN6yStaCC6JQPhoLq2NUYR" ], "script": "base64:AAIEAAAAAAAAAAkIAhIDCgEBEgAAAAACAAAAAApNRENBc3NldElEAQAAACDw+pZ8I6S1gLtz/lhk6hmcqMAiL6CmemymHtjpH9G2wAAAAAALVVNETkFzc2V0SUQBAAAAIFvDtlHjzQ4rRBwVsoNZgb+PxfGh9JbQKOsL87KqrvmdAAAAAgAAAAFpAQAAAAdEZXBvc2l0AAAAAQAAAARkYXlzBAAAAANwbXQDCQAAAAAAAAIJAAGQAAAAAQgFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAAACAAAAAQIAAABHTm8gcGF5bWVudCBhdHRhY2hlZCwgUGxlYXNlIEF0dGFjaCBNREMgVG9rZW4gYXMgcGVyIFRJRVIgaW4gcGF5bWVudFsxXS4EAAAACmN1cnJlbnRLZXkJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwQAAAAPbWF4aW11bWxvY2tkYXlzAAAAAAAAAABaBAAAAApsb2Nrc3RhdHVzAgAAAAZMT0NLRUQEAAAABFVMU1QAAAAAdGpSh/8EAAAABFVMR1QAAAAA6NSlD/8EAAAABFVMRFQAAAAA6NSlEAAEAAAABm9uZWRheQAAAAAAAAAFoAQAAAAMYWN0dWFsYmxvY2tzCQAAaAAAAAIFAAAABm9uZWRheQUAAAAEZGF5cwQAAAAPdG90YWxsb2NrYmxvY2tzCQAAZAAAAAIFAAAABmhlaWdodAUAAAAMYWN0dWFsYmxvY2tzBAAAAAVUaWVyMQAAAAAAAAACtwQAAAAMVGllcjFyZXdhcmRzCQAAawAAAAMJAABrAAAAAwUAAAAFVGllcjEIBQAAAANwbXQAAAAGYW1vdW50CQAAbAAAAAYAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAlVQBQAAAAxhY3R1YWxibG9ja3MJAABsAAAABgAAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAAAAAUAAAACVVAEAAAADFRpZXIycmV3YXJkcwkAAGsAAAADCQAAawAAAAMJAABoAAAAAgUAAAAFVGllcjEAAAAAAAAAAAIIBQAAAANwbXQAAAAGYW1vdW50CQAAbAAAAAYAAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAlVQBQAAAAxhY3R1YWxibG9ja3MJAABsAAAABgAAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAAAAAUAAAACVVAEAAAADFRpZXIzcmV3YXJkcwkAAGsAAAADCQAAawAAAAMJAABpAAAAAgkAAGgAAAACBQAAAAVUaWVyMQAAAAAAAAAAGQAAAAAAAAAACggFAAAAA3BtdAAAAAZhbW91bnQJAABsAAAABgAAAAAAAAAACgAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAUAAAACVVAFAAAADGFjdHVhbGJsb2NrcwkAAGwAAAAGAAAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAAAAAAAAAABQAAAAJVUAQAAAAQY3VycmVudE1EQ0Ftb3VudAQAAAAHJG1hdGNoMAkABBoAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAEkRlcG9zaXRfQW1vdW50X09mXwUAAAAKY3VycmVudEtleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAADSW50BAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAAAAAAAAAAAABAAAAAxuZXdNRENBbW91bnQJAABkAAAAAgUAAAAQY3VycmVudE1EQ0Ftb3VudAgFAAAAA3BtdAAAAAZhbW91bnQDCQEAAAACIT0AAAACCAUAAAADcG10AAAAB2Fzc2V0SWQFAAAACk1EQ0Fzc2V0SUQJAAACAAAAAQkAASwAAAACCQABLAAAAAICAAAAKEluY29ycmVjdCBhc3NldCBhdHRhY2hlZCwgcGxlYXNlIGF0dGFjaCAJAAJYAAAAAQUAAAAKTURDQXNzZXRJRAIAAAAGIG9ubHkuAwkAAGcAAAACAAAAAAAAAAAGBQAAAARkYXlzCQAAAgAAAAECAAAAJ0Nob29zZSBMb2NraW5nIGRheXMgaW4gYmV0d2VlbiA3IHRvIDkwLgMJAABmAAAAAgUAAAAEZGF5cwUAAAAPbWF4aW11bWxvY2tkYXlzCQAAAgAAAAECAAAATVlvdSBFbnRlcmVkIGRheXMgZ3JlYXRlciB0aGFuIDkwIHBsZWFzZSBFbnRlciBuby4gb2YgZGF5cyBpbiBiZXR3ZWVuIDcgdG8gOTAuAwkAAGYAAAACAAAAAAA7msoACAUAAAADcG10AAAABmFtb3VudAkAAAIAAAABAgAAADhQbGVhc2UgQXR0YWNoIG1pbmltdW0gMTAsMDAwIE1EQyBUbyBBY2hpZXZlIFNJTFZFUiBUSUVSLgMJAABnAAAAAgUAAAAEVUxTVAgFAAAAA3BtdAAAAAZhbW91bnQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAAhUaWVyX09mXwUAAAAKY3VycmVudEtleQIAAAAGU0lMVkVSCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEkRlcG9zaXRfaGVpZ2h0X09mXwUAAAAKY3VycmVudEtleQUAAAAGaGVpZ2h0CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEkRlcG9zaXRfQW1vdW50X09mXwUAAAAKY3VycmVudEtleQUAAAAMbmV3TURDQW1vdW50CQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAFVRvdGFsX0xvY2tfQmxvY2tzX09mXwUAAAAKY3VycmVudEtleQUAAAAPdG90YWxsb2NrYmxvY2tzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAAPTG9ja19TdGF0dXNfT2ZfBQAAAApjdXJyZW50S2V5BQAAAApsb2Nrc3RhdHVzCQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAC1Jld2FyZHNfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAxUaWVyMXJld2FyZHMFAAAAA25pbAMJAABnAAAAAgUAAAAEVUxHVAgFAAAAA3BtdAAAAAZhbW91bnQJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAAhUaWVyX09mXwUAAAAKY3VycmVudEtleQIAAAAER09MRAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABJEZXBvc2l0X2hlaWdodF9PZl8FAAAACmN1cnJlbnRLZXkFAAAABmhlaWdodAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABJEZXBvc2l0X0Ftb3VudF9PZl8FAAAACmN1cnJlbnRLZXkFAAAADG5ld01EQ0Ftb3VudAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABVUb3RhbF9Mb2NrX0Jsb2Nrc19PZl8FAAAACmN1cnJlbnRLZXkFAAAAD3RvdGFsbG9ja2Jsb2NrcwkABEwAAAACCQEAAAALU3RyaW5nRW50cnkAAAACCQABLAAAAAICAAAAD0xvY2tfU3RhdHVzX09mXwUAAAAKY3VycmVudEtleQUAAAAKbG9ja3N0YXR1cwkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAAAtSZXdhcmRzX09mXwUAAAAKY3VycmVudEtleQUAAAAMVGllcjJyZXdhcmRzBQAAAANuaWwDCQAAZwAAAAIIBQAAAANwbXQAAAAGYW1vdW50BQAAAARVTERUCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAAIVGllcl9PZl8FAAAACmN1cnJlbnRLZXkCAAAAB0RJQU1PTkQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAASRGVwb3NpdF9oZWlnaHRfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAZoZWlnaHQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAASRGVwb3NpdF9BbW91bnRfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAxuZXdNRENBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAVVG90YWxfTG9ja19CbG9ja3NfT2ZfBQAAAApjdXJyZW50S2V5BQAAAA90b3RhbGxvY2tibG9ja3MJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAA9Mb2NrX1N0YXR1c19PZl8FAAAACmN1cnJlbnRLZXkFAAAACmxvY2tzdGF0dXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAALUmV3YXJkc19PZl8FAAAACmN1cnJlbnRLZXkFAAAADFRpZXIzcmV3YXJkcwUAAAADbmlsCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAAIVGllcl9PZl8FAAAACmN1cnJlbnRLZXkCAAAAB0RJQU1PTkQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAASRGVwb3NpdF9oZWlnaHRfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAZoZWlnaHQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAASRGVwb3NpdF9BbW91bnRfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAxuZXdNRENBbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAVVG90YWxfTG9ja19CbG9ja3NfT2ZfBQAAAApjdXJyZW50S2V5BQAAAA90b3RhbGxvY2tibG9ja3MJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgkAASwAAAACAgAAAA9Mb2NrX1N0YXR1c19PZl8FAAAACmN1cnJlbnRLZXkFAAAACmxvY2tzdGF0dXMJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAALUmV3YXJkc19PZl8FAAAACmN1cnJlbnRLZXkFAAAADFRpZXIzcmV3YXJkcwUAAAADbmlsAAAAAWkBAAAACFdpdGhkcmF3AAAAAAQAAAAKY3VycmVudEtleQkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzBAAAABFjaGVja2RlcG9zaXR2YWx1ZQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJEZXBvc2l0X0Ftb3VudF9PZl8FAAAACmN1cnJlbnRLZXkDCQAAZgAAAAIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAAVVG90YWxfTG9ja19CbG9ja3NfT2ZfBQAAAApjdXJyZW50S2V5BQAAAAZoZWlnaHQJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAFWW91ciAJAAGkAAAAAQkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABJEZXBvc2l0X0Ftb3VudF9PZl8FAAAACmN1cnJlbnRLZXkCAAAAYiBNREMgYXJlIFVuZGVyIExvY2suIENvbnNpZGVyIGxhc3QgNSBkaWdpdHMgYXMgdmFsdWUgYWZ0ZXIgRGVjaW1hbHMuIFRva2VuIHdpbGwgYmUgVW5sb2NrZWQgYWZ0ZXIgCQABpAAAAAEJAABlAAAAAgkBAAAAEUBleHRyTmF0aXZlKDEwNTApAAAAAgUAAAAEdGhpcwkAASwAAAACAgAAABVUb3RhbF9Mb2NrX0Jsb2Nrc19PZl8FAAAACmN1cnJlbnRLZXkFAAAABmhlaWdodAMJAAAAAAAAAgUAAAARY2hlY2tkZXBvc2l0dmFsdWUAAAAAAAAAAAAJAAACAAAAAQIAAAAmWW91IEhhdmUgQWxyZWFkeSBXaXRoZHJhdyB5b3VyIEFtb3VudC4JAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyCQEAAAARQGV4dHJOYXRpdmUoMTA1MCkAAAACBQAAAAR0aGlzCQABLAAAAAICAAAAEkRlcG9zaXRfQW1vdW50X09mXwUAAAAKY3VycmVudEtleQUAAAAKTURDQXNzZXRJRAkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAALUmV3YXJkc19PZl8FAAAACmN1cnJlbnRLZXkFAAAAC1VTRE5Bc3NldElECQAETAAAAAIJAQAAAAxJbnRlZ2VyRW50cnkAAAACCQABLAAAAAICAAAAEkRlcG9zaXRfaGVpZ2h0X09mXwUAAAAKY3VycmVudEtleQAAAAAAAAAAAAkABEwAAAACCQEAAAAMSW50ZWdlckVudHJ5AAAAAgkAASwAAAACAgAAABJEZXBvc2l0X0Ftb3VudF9PZl8FAAAACmN1cnJlbnRLZXkAAAAAAAAAAAAJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAAVVG90YWxfTG9ja19CbG9ja3NfT2ZfBQAAAApjdXJyZW50S2V5AAAAAAAAAAAACQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIJAAEsAAAAAgIAAAAPTG9ja19TdGF0dXNfT2ZfBQAAAApjdXJyZW50S2V5AgAAAAZVTkxPQ0sJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgIAAAALUmV3YXJkc19PZl8FAAAACmN1cnJlbnRLZXkAAAAAAAAAAAAFAAAAA25pbAAAAAEAAAACdHgBAAAABnZlcmlmeQAAAAAEAAAAByRtYXRjaDAFAAAAAnR4CQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tlecX/qCY=", "height": 1702271, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: n7grXtsyMKWtLDeYYeTqM6NjrX5vbd6QHdVJLBvAom4 Next: none Diff:
OldNewDifferences
2323 let Tier1rewards = fraction(fraction(Tier1, pmt.amount, pow(10, 0, 5, 0, 0, UP)), actualblocks, pow(10, 0, 6, 0, 0, UP))
2424 let Tier2rewards = fraction(fraction((Tier1 * 2), pmt.amount, pow(10, 0, 5, 0, 0, UP)), actualblocks, pow(10, 0, 6, 0, 0, UP))
2525 let Tier3rewards = fraction(fraction(((Tier1 * 25) / 10), pmt.amount, pow(10, 0, 5, 0, 0, UP)), actualblocks, pow(10, 0, 6, 0, 0, UP))
26+ let currentMDCAmount = match getInteger(this, ("Deposit_Amount_Of_" + currentKey)) {
27+ case a: Int =>
28+ a
29+ case _ =>
30+ 0
31+ }
32+ let newMDCAmount = (currentMDCAmount + pmt.amount)
2633 if ((pmt.assetId != MDCAssetID))
2734 then throw((("Incorrect asset attached, please attach " + toBase58String(MDCAssetID)) + " only."))
2835 else if ((6 >= days))
3239 else if ((1000000000 > pmt.amount))
3340 then throw("Please Attach minimum 10,000 MDC To Achieve SILVER TIER.")
3441 else if ((ULST >= pmt.amount))
35- then [StringEntry(("Tier_Of_" + currentKey), "SILVER"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier1rewards)]
42+ then [StringEntry(("Tier_Of_" + currentKey), "SILVER"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier1rewards)]
3643 else if ((ULGT >= pmt.amount))
37- then [StringEntry(("Tier_Of_" + currentKey), "GOLD"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier2rewards)]
44+ then [StringEntry(("Tier_Of_" + currentKey), "GOLD"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier2rewards)]
3845 else if ((pmt.amount >= ULDT))
39- then [StringEntry(("Tier_Of_" + currentKey), "DIAMOND"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier3rewards)]
40- else [{
41- let Tier4 = 20
42- IntegerEntry(("Deposit_height_Of_" + currentKey), height)
43- }, IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus)]
46+ then [StringEntry(("Tier_Of_" + currentKey), "DIAMOND"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier3rewards)]
47+ else [StringEntry(("Tier_Of_" + currentKey), "DIAMOND"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier3rewards)]
4448 }
4549
4650
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let MDCAssetID = base58'HDgUBQhx8vJY2uUmQPtqzEu6C32Ktx4jAD37aprLKV9Z'
55
66 let USDNAssetID = base58'7BDByxoPpx8gjNfkuBi8h1zBTtg9PrxLvYv3q613CES8'
77
88 @Callable(i)
99 func Deposit (days) = {
1010 let pmt = if ((size(i.payments) == 1))
1111 then i.payments[0]
1212 else throw("No payment attached, Please Attach MDC Token as per TIER in payment[1].")
1313 let currentKey = toBase58String(i.caller.bytes)
1414 let maximumlockdays = 90
1515 let lockstatus = "LOCKED"
1616 let ULST = 499999999999
1717 let ULGT = 999999999999
1818 let ULDT = 1000000000000
1919 let oneday = 1440
2020 let actualblocks = (oneday * days)
2121 let totallockblocks = (height + actualblocks)
2222 let Tier1 = 695
2323 let Tier1rewards = fraction(fraction(Tier1, pmt.amount, pow(10, 0, 5, 0, 0, UP)), actualblocks, pow(10, 0, 6, 0, 0, UP))
2424 let Tier2rewards = fraction(fraction((Tier1 * 2), pmt.amount, pow(10, 0, 5, 0, 0, UP)), actualblocks, pow(10, 0, 6, 0, 0, UP))
2525 let Tier3rewards = fraction(fraction(((Tier1 * 25) / 10), pmt.amount, pow(10, 0, 5, 0, 0, UP)), actualblocks, pow(10, 0, 6, 0, 0, UP))
26+ let currentMDCAmount = match getInteger(this, ("Deposit_Amount_Of_" + currentKey)) {
27+ case a: Int =>
28+ a
29+ case _ =>
30+ 0
31+ }
32+ let newMDCAmount = (currentMDCAmount + pmt.amount)
2633 if ((pmt.assetId != MDCAssetID))
2734 then throw((("Incorrect asset attached, please attach " + toBase58String(MDCAssetID)) + " only."))
2835 else if ((6 >= days))
2936 then throw("Choose Locking days in between 7 to 90.")
3037 else if ((days > maximumlockdays))
3138 then throw("You Entered days greater than 90 please Enter no. of days in between 7 to 90.")
3239 else if ((1000000000 > pmt.amount))
3340 then throw("Please Attach minimum 10,000 MDC To Achieve SILVER TIER.")
3441 else if ((ULST >= pmt.amount))
35- then [StringEntry(("Tier_Of_" + currentKey), "SILVER"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier1rewards)]
42+ then [StringEntry(("Tier_Of_" + currentKey), "SILVER"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier1rewards)]
3643 else if ((ULGT >= pmt.amount))
37- then [StringEntry(("Tier_Of_" + currentKey), "GOLD"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier2rewards)]
44+ then [StringEntry(("Tier_Of_" + currentKey), "GOLD"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier2rewards)]
3845 else if ((pmt.amount >= ULDT))
39- then [StringEntry(("Tier_Of_" + currentKey), "DIAMOND"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier3rewards)]
40- else [{
41- let Tier4 = 20
42- IntegerEntry(("Deposit_height_Of_" + currentKey), height)
43- }, IntegerEntry(("Deposit_Amount_Of_" + currentKey), pmt.amount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus)]
46+ then [StringEntry(("Tier_Of_" + currentKey), "DIAMOND"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier3rewards)]
47+ else [StringEntry(("Tier_Of_" + currentKey), "DIAMOND"), IntegerEntry(("Deposit_height_Of_" + currentKey), height), IntegerEntry(("Deposit_Amount_Of_" + currentKey), newMDCAmount), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), totallockblocks), StringEntry(("Lock_Status_Of_" + currentKey), lockstatus), IntegerEntry(("Rewards_Of_" + currentKey), Tier3rewards)]
4448 }
4549
4650
4751
4852 @Callable(i)
4953 func Withdraw () = {
5054 let currentKey = toBase58String(i.caller.bytes)
5155 let checkdepositvalue = getIntegerValue(this, ("Deposit_Amount_Of_" + currentKey))
5256 if ((getIntegerValue(this, ("Total_Lock_Blocks_Of_" + currentKey)) > height))
5357 then throw(((("Your " + toString(getIntegerValue(this, ("Deposit_Amount_Of_" + currentKey)))) + " MDC are Under Lock. Consider last 5 digits as value after Decimals. Token will be Unlocked after ") + toString((getIntegerValue(this, ("Total_Lock_Blocks_Of_" + currentKey)) - height))))
5458 else if ((checkdepositvalue == 0))
5559 then throw("You Have Already Withdraw your Amount.")
5660 else [ScriptTransfer(i.caller, getIntegerValue(this, ("Deposit_Amount_Of_" + currentKey)), MDCAssetID), ScriptTransfer(i.caller, getIntegerValue(this, ("Rewards_Of_" + currentKey)), USDNAssetID), IntegerEntry(("Deposit_height_Of_" + currentKey), 0), IntegerEntry(("Deposit_Amount_Of_" + currentKey), 0), IntegerEntry(("Total_Lock_Blocks_Of_" + currentKey), 0), StringEntry(("Lock_Status_Of_" + currentKey), "UNLOCK"), IntegerEntry(("Rewards_Of_" + currentKey), 0)]
5761 }
5862
5963
6064 @Verifier(tx)
6165 func verify () = match tx {
6266 case _ =>
6367 sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
6468 }
6569

github/deemru/w8io/026f985 
31.97 ms